使用freemarker动态填充html并可转为图片

简介: 使用freemarker动态填充html并可转为图片

1. 引入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>


2. 模板html文件中将需要替换的地方使用占位符进行替换

  1. 使用占位符${}进行占位操作;
<div style="height: 17px;">
  <span style="height: 100%;
  line-height: 17px;">姓名:</span>
  <span style="height: 100%;
  line-height: 17px;">${name}</span>
</div>


3. 编写Util类

  1. 使用try (FileWriter writer = new FileWriter(targetHtmlPath)) { }来自动关闭流,避免手动释放;
  2. 将模板html文件放到starter目录下的resource里的templates包下即可;
public class GenHtmlUtil {
  public static void genNewHtml(String template, Map<String, Object> map, String targetHtmlPath) {
    try (FileWriter writer = new FileWriter(targetHtmlPath)) {
      Configuration configuration = new Configuration(Configuration.getVersion());
      String templatePath = GenHtmlUtil.class.getResource("/").getPath() + "templates";
      configuration.setDirectoryForTemplateLoading(new File(templatePath));
      Template t = configuration.getTemplate(template);
      String content = FreeMarkerTemplateUtils.processTemplateIntoString(t, map);
      writer.write(content);
      writer.flush();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

4. 调用Util

  1. 对第2步中使用${}进行占位的地方使用Map进行填充,并调用Util;
Map<String, Object> map = Maps.newHashMap();
map.put("name", name);
map.put("sex", sex);
map.put("age", age);
GenHtmlUtil.genNewHtml("template.html", map, "result.html");


然后就可在项目根目录下找到生成的名为"result.html"html文件啦。

那么如何将生成的html文件转为图片文件呢?

目录
相关文章
|
1月前
|
移动开发 JavaScript 前端开发
【Html.js——图片折叠效果】折叠手风琴(蓝桥杯真题-1763)【合集】
本项目实现了一个图片折叠手风琴效果,使用jQuery完成。主要包括以下部分: - **介绍**:任务是通过点击图片实现折叠和展开的效果。 - **准备**:内置初始代码,包含 `css/style.css`、`images/` 文件夹、`js/` 文件夹及 `index.html` 等文件。启动 Web Server 服务可运行项目。 - **目标**:完善 `index.js` 文件,使页面达到预期的折叠效果。 - **规定**:严格按步骤操作,保持默认文件结构不变,并在完成后保持 Web 服务正常访问状态。 - **通关代码**:使用 jQuery 实现点击事件,为选中元素添加 `act
42 19
|
3月前
利用html2canvas插件自定义生成名片信息并保存图片
这是一个利用html2canvas插件自定义生成名片信息并保存图片,自定义上传头像,自定义输入个人信息内容,自定义图片名称,并将生成的图片保存到本地
67 1
利用html2canvas插件自定义生成名片信息并保存图片
|
4月前
HTML图片
【10月更文挑战第4天】HTML图片。
49 2
|
5月前
|
前端开发
Twaver-HTML5基础学习(37)network导出图片并下载
本文介绍了如何在Twaver-HTML5中将network导出为图片并提供下载,主要通过将network转换为canvas对象,然后转换为base64编码的图片进行展示和下载。
59 5
|
5月前
|
前端开发 Windows
【前端web入门第一天】02 HTML图片标签 超链接标签 音频标签 视频标签
本文档详细介绍了HTML中的图片、超链接、音频和视频标签的使用方法。首先讲解了`&lt;img&gt;`标签的基本用法及其属性,包括如何使用相对路径和绝对路径。接着介绍了`&lt;a&gt;`标签,用于创建超链接,并展示了如何设置目标页面打开方式。最后,文档还涵盖了如何在网页中嵌入音频和视频文件,包括简化写法及常用属性。
85 13
|
6月前
在线将多张图片拼接起来图工具HTML源码
在线将多张图片拼接成一张图片,多图合一并导出下载。无需本地安装软件。 下载时,使用日期时间作为文件名,规避图片文件名相同造成的覆盖问题;也能省去一部覆盖确认操作 多语言支持
64 0
在线将多张图片拼接起来图工具HTML源码
|
6月前
|
Python
Python 下载 html 中的 图片
Python 下载 html 中的 图片
65 2
|
7月前
|
数据采集 缓存 自然语言处理
PHP将HTML标签转化为图片
通过这个方法,PHP后端能够实现将HTML内容转化为图片的功能。这种方式虽然牵涉到一些额外的安装和配置,但能够相对灵活且稳定地解冀转换需求,适用于需要在后端动态生成图片的场景。
280 1
|
7月前
|
移动开发 前端开发 JavaScript
基于 HTML5 和 Canvas 开发的在线图片编辑器
基于 HTML5 和 Canvas 开发的在线图片编辑器
133 0
|
7月前
动态粒子发射404网站HTML源码
动态粒子发射404网站HTML源码,粒子内容可以进行修改,默认是4,0数字还有一个页面不存在英文,可以自行修改,喜欢的朋友可以拿去使用,源码是html,记事本打开修改即可,鼠标双击可以运行
79 1

热门文章

最新文章