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;

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

相关推荐
想ai抽几秒前
深入starrocks-怎样实现多列联合统计信息
java·数据库·数据仓库
星光一影19 分钟前
Java版小区物业管理系统/业主端/物业端/管理端/支持公众号、小程序、app
java·大数据·小程序
xiguolangzi38 分钟前
springBoot3 国际化项目实战
java
AresXue1 小时前
推广一下自己刚撸的 IDEA 插件—Bean Copy 助手
java
会跑的葫芦怪1 小时前
RabbitMQ全面详解:从核心概念到企业级应用
java·分布式·rabbitmq
尤老师FPGA1 小时前
使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第三十二讲)
android·java·ui
战族狼魂1 小时前
基于python+Java的二手车与奔驰销量数据可视化平台
java·数据库·python
paj1234567892 小时前
elasticsearch-8.12.2集群部署
java·elasticsearch
1candobetter2 小时前
JAVA后端开发——软件分层架构中的“管道井”原则
java·开发语言·架构
SEO-狼术2 小时前
Find Text Fast in Any PDF Document
pdf