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;

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

相关推荐
新手小袁_J20 分钟前
JDK11下载安装和配置超详细过程
java·spring cloud·jdk·maven·mybatis·jdk11
呆呆小雅20 分钟前
C#关键字volatile
java·redis·c#
Monly2121 分钟前
Java(若依):修改Tomcat的版本
java·开发语言·tomcat
Ttang2323 分钟前
Tomcat原理(6)——tomcat完整实现
java·tomcat
钱多多_qdd34 分钟前
spring cache源码解析(四)——从@EnableCaching开始来阅读源码
java·spring boot·spring
waicsdn_haha36 分钟前
Java/JDK下载、安装及环境配置超详细教程【Windows10、macOS和Linux图文详解】
java·运维·服务器·开发语言·windows·后端·jdk
Q_19284999061 小时前
基于Spring Boot的摄影器材租赁回收系统
java·spring boot·后端
Code_流苏1 小时前
VSCode搭建Java开发环境 2024保姆级安装教程(Java环境搭建+VSCode安装+运行测试+背景图设置)
java·ide·vscode·搭建·java开发环境
禁默2 小时前
深入浅出:AWT的基本组件及其应用
java·开发语言·界面编程
Cachel wood2 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架