Java使用FreeMarker自动生成word文档(可遍历生成多张图片)

本文档介绍了如何使用Java结合FreeMarker模板引擎来动态生成包含多张图片的Word文档。通过设置模板,将图片转为base64编码并替换占位符,实现了遍历循环生成标题和图片的功能。文章详细讲解了每个步骤,包括模板的创建、XML到FTL的转换,以及代码实现过程。
摘要由CSDN通过智能技术生成

Java使用FreeMarker自动生成word文档(可遍历生成多张图片)

  1. 前言:最近项目中后台需要自动生成word文档,我以前也没做过,就百度了下,发现还是用freemarker生成word文档最快,但是试了网上的一些方法,都没成功,最后参考着多篇文章慢慢摸索最终成功了。在这记录一下。
  2. 需要实现的效果图
    在这里插入图片描述
  3. 首先,导入Jar包依赖
		<dependency>
			<groupId>org.freemarker</groupId>
			<artifactId>freemarker</artifactId>
			<version>2.3.28</version>
		</dependency>
  1. 制定模板

在这里插入图片描述
注意:这一步图片都先别用占位符,因为用占位符就不知道这是图片了(我这种方式我认为是这样的,因为我试过用图片先用占位符,发现一直生成不了图片)

  1. 将模板另存为xml
    在这里插入图片描述
    生成xml时,图片全部被转成base64了,这时候需要删除掉,用占位符${user.photo}
    在这里插入图片描述
    在这里插入图片描述
  2. 然后直接重命名,将文件格式改为ftl
  3. 接下来需要修改ftl,因为我需要遍历循环生成标题和图片(重点)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值