1、文本 标签:{{text}} 数据模型: String :文本 TextRenderData :有样式的文本 HyperlinkTextRenderData :超链接和锚点文本 Object :调用 toString() 方法转化为文本 word模板: 代码示例: publicstaticvoidmain(String[] args) {try{/*文本*/Map<String, Object> map =newHashMap<>(); map.put("name","...
poi-tl深知“所见即所得”的道理,文本的样式继承模板标签的样式,即如果模板标签{{title}}是蓝色微软雅黑加粗四号字体,则替换后的文本也是蓝色微软雅黑加粗四号字体。 “所见即所得”也体现在图片上,如果模板中是一个长200宽300布局样式为衬于文字下方的占位图片,那么替换后的图片样式也保持不变。 4.3. Data-Mode...
4.1 列表的标签如下: 4.2 支持数据类型 4.3 列表数据填充方式如下 四、验证 1、准备模板 2、准备测试代码 3、生成效果 一、前言 1、什么是poi-tl poi-tl是一个基于Apache POI的Word模板引擎,也是一个免费开源的Java类库。同类型的FreeMarker或Velocity基于文本模板和数据生成新的html页面或配置文件。而poi tl是一...
image.png 模板标签 {{?sections}}{{/sections}} 区块对标签 引用标签 : 在图或者图表中添加标签,可直接操作图或者图表数据 2、不足之处 image.png 针对不同的桥型,各个部位下的部件都不相同,所以使用easy-poi需要针对不同的桥梁编辑多个不同的模板 在各个部件位置上的图片,表格,文本数据不能使用一个标签来...
在POI-TL中,循环标签(Loop Tag)用于在模板中循环生成内容。 使用循环标签的方法如下: 1.在模板文件中,使用{%for items as item%}开始一个循环标签,并以{%endfor%}结束。 例如,在Word模板中,可以将循环标签放置在表格中的一个单元格中,以便循环生成表格行。 ``` {% for items as item %} ${item.val...
poi-tl的功能是很强大的,它内置了判断、循环、图片、Loop表格行、Loop表格列等多种标签。当内置标签不完全适用的时候,还可以通过插件机制来对生成过程进行逻辑定制。 poi-tl的实现原理大致上是先将Word模板文件解析为POI模型对象,然后再识别标签标记,将其转换为自定义的MetaTemplate结构去执行。无论是模板引擎内部的...
poi-tl模板遵循“所见即所得”的设计,模板和标签的样式会被完全保留。 Data-model:数据 数据类似于哈希或者字典,可以是Map结构(key是标签名称): Map<String, Object> data = new HashMap<>(); data.put("name", "Sayi"); data.put("start_time", "2019-08-04"); ...
我们选择poi-tl,但是他的图片标签是一个字段对应一张图片,我们扩展一个字段多张图片显示处理。 首先增加依赖,这个对poi的版本有要求,请阅读官方文档。 <dependency> <groupId>com.deepoove</groupId> <artifactId>poi-tl</artifactId> <version>1.9.1</version> ...
poi-tl是一种"logic-less"模板引擎,没有复杂的控制结构和变量赋值,只有标签,一些标签可以被替换为文本、图片、表格等,一些标签会隐藏某些文档内容,而另一些标签则会将一系列文档内容循环渲染。 "Powerful" constructs like variable assignment or conditional statements make it easy to modify the look of an appli...
poi-tl模板遵循“所见即所得”的设计,模板和标签的样式会被完全保留。 Data-model:数据 数据类似于哈希或者字典,可以是Map结构(key是标签名称): Mapdata =newHashMap<>(); data.put("name","Sayi"); data.put("start_time","2019-08-04"); ...