freemarker 生成word,支持循环导出图片 WPS版本
痛点
还在为了大量的数据导出到word而烦恼么,还在为枯燥的工作的发愁么,今天让我们用工具的力量来提高生活质量
使用软件及网站
WPS
永远的神
格式化xml文档
XML格式化
千万别用 office 那个贼坑,转换成xml 还要调整格式,WPS开箱即用
第一步写代码
工程架构,我实现了一个完整的后端接口,用postman调用即可,去掉了数据库调用,实际开发按需求加即可,
http://localhost:8080/drm/report/download
效果图
1、代码解释
- 我们更改的就是这个generateMap() 方法,把需要填充的数据放入map中
- map可以放入对象、集合也可以放入单个值,如 String、Integer等
2、准备word模板文档,必须使用wps
,Office不好用
- 先在word文档中放入一张图片以便接下来修改循环条件使用
- 填充模板,语法类似 mybatis 中的格式 ,${s.xx}
- 对象就是第一步代码解释中 我们像 map 中放入的 key ,属性就是对象的字段,如下面这个Team 对象,调用时我们用${team.num}即可
- 表单循环原理一样
3、将word文档另存为xml文件
4、格式化xml文档
使用开头使用工具里面的网站即可
5、在需要循环展示的地方加代码
- 找到第一个需要循环的占位符,然后 找到他的父级标签
<w:tr>
在其上面加入<#list careers as career>
表示 循环遍历 careers,类比java 中的增加for遍历。 - 然后找到
<w:tr>
的结束标签 在其下方加入</#list>
, 或者根据 循环遍历中最后一个模板占位符锁定末尾
6、给图片加循环代码
- 在照片外面加上循环
<#list images as image>
结尾也需要加上</#list>
- 首先将那一大串的base64编码替换成 ${image.picture}
- 然后将
w:name
和<v:imagedata
中的内容替换成${image.picName}
- 将
<v:shape id
中的id 替换成${image.id}
7、将xml 文件另存为.ftl
文件
8、将ftl文件放入一个文件夹
配置 application.yml
- tmplPath 为模板存放文件夹
- autoFlowTmpl 为模板名
- port 启动端口号
server:port: 10086report:tmplPath: D:\\wordreportautoFlowTmpl: nbaNew.ftl
9、启动项目,并使用postman测试
- teamIds 随便输入一个值,实际业务场景会用到,测试环境不需要
10、查看生成的报告
通过查看日志,发现报告在系统临时目录,打开查看
项目已上传 github star点起来
freemarker 生成word,支持循环导出图片 WPS版本相关推荐
- 使用FreeMarker生成word文档(带图片),word转pdf,预览pdf,pdf下载工具类
一.下载或配置: 下载jar包 :freemaker的jar包下载 下载jar包 :aspose-words的jar包下载 或者配置maven依赖: pom.xml添加aspose的依赖包(maven ...
- java根据 freemarker 生成word文档包含图片和动态表格
需求 根据提供的模板样式,生成相对应的word文档,之前可以用xdoc生成,但是目前这个需求 是需要动态生成excel表格,有的单元格需要隐藏不展示,所以这边利用freemarker标签解析, 根据数 ...
- (详细)如何使用Freemarker生成Word文档中的文本、图片、表格、附件?
前言-Freemarker简单介绍 近期项目工作中需要编写大量格式相同但数据不同的Word文档,需要实现自动生成文档的效果,但是通过网上冲浪和官方文档搜索,相对来说,没有分类整理的文档,因此自己抽空简 ...
- 若依 springboot 使用freemarker生成word文件,并导出下载
目录 freemarker生成word文件并导出 一.环境准备 二.编写代码 1.实体类 2.mapper.xml文件 3.mapper.java文件 4.Service.java 5.Service ...
- spring使用freemarker生成word文档包含表格、图片(循环插入)
spring使用freemarker生成word文档包含表格.图片(循环插入) 效果图 因为测试数据是重复的,所以显示都是重复的数据,替换导入map中的数据可以显示不重复的数据. 操作步骤 1,创建一 ...
- java生成word(报告报表)含统计图表图片、循环表格,Spring Boot整合word生成
先给大家一个效果图: 左侧是word模板,右侧是生成后的word文档. 在工作中经常用到会有一些生成统计报告.请假等word的功能需求,小编之前做了一些报表的生成,使用过freemarker和poi, ...
- freemarker生成word 兼容wps/office/小程序打开
freemarker生成word 兼容wps/office/小程序打开 (服务器必须是windows) 一:目的:兼容wps/电脑端office/小程序打开 freemarker生成的word底层技术 ...
- 使用freemarker生成word文档(包含遍历多条数据、图片)
在做项目的过程中,有时候需要把数据生成word文档,常用的有POI.ITEXT等,在这篇文章中我们使用freemarker模板来生成我们想要的word文档. 首先我们需要使用office word来编 ...
- 用freemarker生成word文档,并插入图片
用freemarker生成word文档,并插入图片 最近需要做一个问卷功能,要求用户填写完问卷后,后台会生成一个word文档,将用户提交的数据插入到word中. 创建word模板 新建一个word文档 ...
- Freemarker生成word文件,打开后页眉和页脚图片不显示
Freemarker生成word文件,打开后页眉和页脚图片不显示 在我们开发过程中通常会把模板文件Ctrl+Alt+L格式化,方便处理.这样就造成word的标签格式产生多余的换行或者空白,但是word ...
最新文章
- python22期_python学习第22期
- Linux修改/etc/profile配置错误command is not found自救方法
- python一点基础都没有的怎么办-Python基础常见问题总结(一)
- BROCADE使用小技巧
- 网信办:网络音视频等平台不得诱导未成年人参与应援集资等活动
- jstack处理Java中CPU100%的思路流程
- 地图开发中用到的比例尺和分辨率
- 打游戏用什么蓝牙耳机好?英雄联盟手游推荐蓝牙耳机
- Java 生成水印图片
- 微信小程序实现微信APP上的扫一扫扫码跳到小程序对应的结果页面和签字等功能
- centos7.1 修改selinux相关机制后出现开机失败,报错faild to load selinux policy freezing
- Excel 如何排序与多关键字排序
- easyflash源码分析流程图
- epoll为什么这么快,epoll的实现原理
- Python标准库文件基本操作以及中文路径问题
- SK Innovation全球锂电战略布局揭秘
- AES加密/解密报错,Input length must be multiple of 16 when decrypting with padded cipher
- H264编码- 码率控制 RQ 模型参数推导过程以及JM代码分析
- 计算机组成原理第六章下半章知识总结
- 《计算广告》学习笔记(一)
热门文章
- ParticleEmitter旧粒子系统退役 2018新粒子系统
- pygame之surface
- adb路径不能包含2空格remote couldn‘t create file: Is a directory
- python3字符串详解速查,新手流泪,老手顿悟
- html中红色星号,使用CSS中的星号(*)通配符的总结
- mysql 1548_MySQL创建函数由于Error 1548失败
- Arduino servo库函数说明(舵机函数库)
- QML 全屏 输入法无法显示
- 无线电波是怎么产生的
- linux命令du -sh,du命令_Linux du 命令用法详解:显示每个文件和目录的磁盘使用空间...
一.下载或配置: 下载jar包 :freemaker的jar包下载 下载jar包 :aspose-words的jar包下载 或者配置maven依赖: pom.xml添加aspose的依赖包(maven ...
需求 根据提供的模板样式,生成相对应的word文档,之前可以用xdoc生成,但是目前这个需求 是需要动态生成excel表格,有的单元格需要隐藏不展示,所以这边利用freemarker标签解析, 根据数 ...
前言-Freemarker简单介绍 近期项目工作中需要编写大量格式相同但数据不同的Word文档,需要实现自动生成文档的效果,但是通过网上冲浪和官方文档搜索,相对来说,没有分类整理的文档,因此自己抽空简 ...
目录 freemarker生成word文件并导出 一.环境准备 二.编写代码 1.实体类 2.mapper.xml文件 3.mapper.java文件 4.Service.java 5.Service ...
spring使用freemarker生成word文档包含表格.图片(循环插入) 效果图 因为测试数据是重复的,所以显示都是重复的数据,替换导入map中的数据可以显示不重复的数据. 操作步骤 1,创建一 ...
先给大家一个效果图: 左侧是word模板,右侧是生成后的word文档. 在工作中经常用到会有一些生成统计报告.请假等word的功能需求,小编之前做了一些报表的生成,使用过freemarker和poi, ...
freemarker生成word 兼容wps/office/小程序打开 (服务器必须是windows) 一:目的:兼容wps/电脑端office/小程序打开 freemarker生成的word底层技术 ...
在做项目的过程中,有时候需要把数据生成word文档,常用的有POI.ITEXT等,在这篇文章中我们使用freemarker模板来生成我们想要的word文档. 首先我们需要使用office word来编 ...
用freemarker生成word文档,并插入图片 最近需要做一个问卷功能,要求用户填写完问卷后,后台会生成一个word文档,将用户提交的数据插入到word中. 创建word模板 新建一个word文档 ...
Freemarker生成word文件,打开后页眉和页脚图片不显示 在我们开发过程中通常会把模板文件Ctrl+Alt+L格式化,方便处理.这样就造成word的标签格式产生多余的换行或者空白,但是word ...