正如评论中所讨论的:特定字体的 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);
Run Code Online (Sandbox Code Playgroud)