java - 在 iText 中保留嵌入字体

标签 java pdf fonts itext

我有一个java应用程序,它使用itext将pdf分成几个部分,然后将这些部分再次拼接在一起。原始 pdf 有许多不同类型的嵌入字体(所有非系统字体)。当我再次缝合 pdf 时,一些嵌入的字体丢失了。

例如,这是原始字体列表的剪辑: enter image description here

这是生成的 pdf 字体列表的剪辑: enter image description here

我正在使用 PdfWriter 和 PdfReader 将页面复制到新文档中,并使用 PdfContent 和 addTemplate()。

最佳答案

终于找到答案了!问题是 Pdf 的级别设置得太低:

writer.setPdfVersion(PdfWriter.VERSION_1_2);

我将其更改为:

writer.setPdfVersion(PdfWriter.VERSION_1_7);

现在所有字体都已正确嵌入。

我实际上忘记了那段代码在那里 - 我从我过去完成的一个项目中借用了它。

经验教训;)

我很想知道为什么会出现这种情况。

关于java - 在 iText 中保留嵌入字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5094217/

相关文章:

java - 为什么我的 Cassandra 准备语句摄取数据如此慢?

pdf - 为 PDF 添加白色边框(更改纸张格式)

css - 如何在 CSS 文件中调用 Google API 字体?

java - 执行器服务invokeAll

java - 干净地为很多类添加一些功能

java - 在 Java 中重新声明循环内的变量

java - 在 java 应用程序中运行 jar ( pdfbox )

objective-c - 解析pdf文件并转换

css - Materialise css - 字体混合内容警告

jquery - 当文本在 flash 或 jquery 谷歌地图上滚动时,固定 div 中的文本字体粗细会发生变化,为什么以及如何处理它?