2

我已经尝试了我所知道的一切,但仍然无法让 ≥ 和 ≤ 字符显示在我的由 Flying Saucer 的 iTextRenderer 从 xHTML 生成的 PDF 中。当然,它们在我的浏览器中显示为 HTML。我尝试了不同的 xml 编码类型、文档类型,并使用十进制和十六进制值而不是快捷方式名称。尽管如此,没有显示错误,但我在字符应该存在的地方得到了一个空格。

有没有人使用带有 ≤ 和 ≥ 特殊符号的 iTextRenderer 成功地将 xhtml 转换为 pdf,如果是,如何?

解决方案:好的,我解决了这个问题。事实证明,我确实需要使用以下 Java 代码行将 Verdana 字体嵌入到 PDF 中:

renderer.getFontResolver().addFont("/Library/Fonts/Verdana.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Bold.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Italic.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Bold Italic.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
4

1 回答 1

2

解决方案:好的,我解决了这个问题。事实证明,我确实需要使用以下 Java 代码行将 Verdana 字体嵌入到 PDF 中:

renderer.getFontResolver().addFont("/Library/Fonts/Verdana.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Bold.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Italic.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont("/Library/Fonts/Verdana Bold Italic.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
于 2012-09-19T17:51:47.157 回答