Jasperreport 生成 PDF之省纸模式

省纸模式顾名思义就是节省纸张,使用 Jasper 去生成 PDF 的时候如果进行分组打印的时候,一页 A4 纸只会打印一组数据。这种情况下,如果每组数据特别少,只有几行,一页 A4 纸张根本用不了,就会另起一页继续打印,这样下来就会造成纸张的浪费。基于这种场景的需求,提出了省纸模式。省纸模式下会自动进行分组数据的合并,使一页纸张尽可能放 多组数据。这种方式下 Jasper 会通过算法计算,如果下一组数据能够放在上一组数据之后,就会在上一组数据后面追加;如果通过计算发现下一组放不下就会另起一页。

⚠️需要注意:如果Jasper 不是分组生成 PDF,那么自然就没有所谓的省纸模式了~

下面介绍下如何进行省纸模式打印 PDF,前提条件是你已经掌握了分组打印。我们在编辑器打开jrxml 文件:

1.首先选中文件名称,在属性选项中将"忽略页码 "属性取消勾选;
2.其次选中 group header,在属性选项中勾选 reprint header on each page 和 keep together;同时取消勾选 start new page;并将 split type 设置成 stretch;

3.同理将group footer按照步骤 2 进行同样设置即可;

4.最后将 page footer 属性中的 split type 设置成 stretch;

最后则可以进行验证了,最后效果由于数据安全就不进行展示了~

相关推荐
学IT的周星星9 分钟前
java常见面试题
java·开发语言
shoubepatien21 分钟前
JAVA -- 12
java·后端·intellij-idea
Mr.朱鹏22 分钟前
大模型入门学习路径(Java开发者版)上
java·开发语言·spring boot·spring·大模型·llm·transformer
古月฿28 分钟前
大学生素质测评系统设计与实现
java·vue.js·redis·mysql·spring·毕业设计
一雨方知深秋28 分钟前
程序流程控制
java·for循环·while循环·if分支·switch分支·dowhile循环·嵌套循环
cike_y33 分钟前
JSP标签&JSTL标签&EL表达式
java·开发语言·jsp
秃然想通35 分钟前
Java继承详解:从零开始理解“父子关系”编程
java·开发语言
嘻嘻嘻开心37 分钟前
List集合接口
java·开发语言·list
源码获取_wx:Fegn089538 分钟前
基于springboot + vue物业管理系统
java·开发语言·vue.js·spring boot·后端·spring·课程设计
cike_y44 分钟前
JavaWeb-JDBC&事务回滚
java·开发语言·javaweb