PDFBOX生成非常大的PDF / A文件

时间:2018-01-22 08:11:08

标签: java pdfbox filesize pdfa

我正在尝试使用PDFBOX创建PDF / A文件并且文件生成已成功完成但生成的文件非常大... 有时500 MB甚至更多。 生成时有没有办法减小文件大小?

1 个答案:

答案 0 :(得分:3)

正如评论中所讨论的:特定字体的PDFont对象只应构造一次,并且可以在一个PDF的不同页面中重复使用。

字体应该是子集(即只嵌入使用过的字形),用于PDType0Font.load()

同样适用于PDXObjectImage对象,例如对于公司徽标:PDXObjectImage应创建一次,并在一个PDF的不同页面中重用。

不应在不同的PDF中使用PD对象。

TrueTypeFont个字体对象可以在多个文档中重用:

TrueTypeFont ttf = new TTFParser().parse(file);
PDFont font1 = PDType0Font.load(document1, ttf, true); // last parameter should be false if used for acroForm fields
PDFont font2 = PDType0Font.load(document2, ttf, true);
PDFont font3 = PDType0Font.load(document3, ttf, true);