1.利用freemarker生成word文档,首先需要创建word文档模板(即.doc文档),需要用户填写的值可以使用${string}代替,
然后将doc另存为后缀为xml格式
再将保存后的month_2.xml后缀名改为.ftl. 在将word转化为xml占位符被分离,如果手动删除会很麻烦,最后我的解决方法是
我就把 ${fangyuan001}写到 空白的txt 里面 再直接txt里面的 ${fangyuan001} 复制粘贴到word的对应位置,就没有被分离了。
此方法的解决原址:https://blog.csdn.net/fangyuandoit/article/details/89455964
2.在项目的pom.xml文件中导入
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
</dependency>
3.再将model.ftl放置在springboot项目的resource目录下
4.生成文档
生成图片注意:
1.不能再doc上直接删除图片
2.打开ftl的文件在加入了图片占位的地方,会看到一片base64编码后的代码,把base64替换成${image},也就是Map<String, Object>中key,值必须要处理成base64;
代码如:<w:binData w:name="wordml://1.png" xml:space="preserve">${image}</w:binData>