java 用itext设置pdf纸张大小操作

做快递面单打印模板,快递要求纸张大小100 x 150mm。

pagesize.a4=595 x 842

a4尺寸=210mm×297mm

故设置纸张大小:

补充:解决itext生成pdf文件过大的问题

为itext生成的pdf文件瘦身。

原来生成pdf文件,即使是纯文本内容,无论内容再如何少,文件体积总是在7m多,导致传输速度很慢。经排查,是在pdf生成的时候,选用了第三方中文字体造成的。

原生成pdf代码中,有如下语句:

这种情况下,itext会将字体ttf文件一同打包进pdf文件中,造成文件很大。

解决方法

是把这句改写为:

同时,需要引入itext-asian,使用maven:

这样,原来7m多的文件,现在只有100k左右了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

相关推荐:

如何在Python中对NumPy数组进行转置与轴换位操作?

NumPy数组转置与轴换位本质相同但接口语义不同:.T仅适用于二维数组的简单转置,三维及以上会完全反转轴序;精确控制需用np.transpose()、np.swapaxes()或np.moveaxis()。 NumPy数组的转置和轴换位本质是同一类操作,但接口不同、语义侧重不同:用.T或np.tra...

如何高效实现可配置窗口大小的移动平均滤波器

本文介绍如何用numpy和pandas实现灵活、高效的移动平均函数,支持任意窗口大小配置,避免硬编码索引,显著提升性能与可维护性。 本文介绍如何用numpy和pandas实现灵活、高效的移动平均函数,支持任意窗口大小配置,避免硬编码索引,显著提升性能与可维护性。 在信号处理、时间序列分析和数据平滑任...

Python怎么给导出的Excel文件设置单元格样式_使用xlsxwriter或openpyxl

xlsxwriter必须预定义格式对象再写入,不支持事后补加样式;openpyxl可先写后设样式,但需注意批量赋值和合并单元格的样式同步问题。 用xlsxwriter设置单元格样式必须先创建格式对象 直接对已写入的单元格“补加”样式在xlsxwriter中不可行——它只支持“边写边设”,所有样式必须...