当前位置: 首页 > news >正文

poi-tl循环放图片+文字说明

这几天有个任务,服务端导出word要求从数据库取到多张图片,然后输出到word中,并且说明一共几张,当前是第几张。
网上翻了很久也没有找到示例,不过最终难题还是得到了攻克。
因为之前的代码是有一个导出的map,暂且叫resultMapresultMap中又有一个对象,这里暂且叫exportObj,我们要加的图片和文字说明都要加在这个exportObj里面。
怎么获取图片就不说了,各个系统肯定是不一样的,假设已经获取到了图片的url,然后后续代码如下:

// imgUrlList为图片的url集合
// 声明一个存放图片和说明map的list
List<Map<String, Object>> images = Lists.newArrayList();
// 遍历图片url
for (int i = 0; i < imgUrlList.size(); i++) {// 声明一个存放一对图片+说明的mapMap<String, Object> imageMap = Maps.newHashMap();// 图片放入map,图片类型自行修改imageMap.put("imageUrl", Pictures.ofUrl(imgUrlList.get(i), PictureType.PNG).center().fitSize().create());// 说明放入mapimageMap.put("text", "共" + imgUrlList.size() + "张图片,当前为第" + (i + 1) + "张");// map放入listimages.add(imageMap);
}
// list放入导出对象
exportObj.setImages(images);
// 导出对象放入最终的结果map
resultMap.put("exportObj", exportObj);
resultMap.put("otherData", ……);

代码这块就完成了,然后模板的配置如下:

{{?exportObj.images}}
{{@imageUrl}}
{{text}} 
{{/exportObj.images}}

这样就搞定了。


附上poi-tl的pom依赖:

<dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.10.0</version>
</dependency>
http://www.lryc.cn/news/428517.html

相关文章:

  • 数据结构之树的存储结构
  • Zotero 常用插件介绍
  • WebSocket协议解析
  • ES6 (一)——ES6 简介及环境搭建
  • HarmonyOS开发案例:列表场景实例-TaskPool
  • 谷歌浏览器如何隐藏书签
  • SQL - 视图
  • centos7环境升级默认的gcc 4.8.5到gcc 8.2.0, 并且升级glibc到glibc 2.28
  • FastHTML:使用 Python 彻底改变 Web 开发
  • 快速排序的深入优化探讨
  • c语言杂谈系列:模拟虚函数
  • 短视频推广App不再难!Xinstall来帮忙
  • 打靶记录13——doubletrouble
  • awk文本处理工具
  • 计算机毕业设计选题推荐-学院网站系统-Java/Python项目实战
  • Spring模块详解Ⅰ
  • C语言程序设计-练习篇
  • 【Oracle篇】统计信息和动态采样的深度剖析(第一篇,总共六篇)
  • 无源互调自动化测试软件应用案例分享:S参数和互调的高效测试
  • 【6大设计原则】精通设计模式之里氏代换原则:从理论到实践,掌握代码演化的黄金法则
  • 国内服务器安装Docker提示Failed to connect to download.docker.com port 443的解决方案
  • 前端开发攻略---彻底弄懂跨域解决方案
  • 【HeadFirst 设计模式】装饰者模式的C++实现
  • 大白话解释TCP的三次握手和四次挥手
  • asyncua模块实现OPC UA通讯
  • RabbitMQ的核心概念
  • 【vSphere 7/8】深入浅出 vSphere 证书 Ⅰ—— 初识和了解 vSphere证书
  • 【云备份】服务端模块-热点管理
  • call apply bind特性及手动实现
  • pygame开发课程系列(5): 游戏逻辑