【问题标题】:Using PDFBox to write unicode strings to a PDF使用 PDFBox 将 unicode 字符串写入 PDF
【发布时间】:2015-04-18 09:14:23
【问题描述】:

我想使用 Apache PDFBox 1.8.8 创建一个包含 unicode 字符的 PDF,但我对支持和不支持的内容感到困惑。

here 发布的答案表明这是一个已在主干上修复的错误。

here 发布的另一个答案建议我必须自己进行翻译。

另一个(较旧的)答案here 讨论了嵌入字体。

请有人澄清一下。另外,如果它是现在修复的错误,有人可以告诉我 PDFBox 的下一个版本可能是什么时候。

谢谢。

【问题讨论】:

  • 您自己用第一个链接回答了这个问题。在此处获取预发布 2.0 版本:pdfbox.apache.org/downloads.html#scm
  • 你什么时候会发布2.0?
  • 讨论了发布时间表,但我不想做出承诺。我们都是从事日常工作的志愿者。我建议测试 2.0 版本,它比例如 API 更稳定。渲染。
  • 感谢@TilmanHausherr 提供的信息。

标签: java pdf unicode pdfbox


【解决方案1】:

基本上您链接到的所有答案都是正确的。您必须记住它们分别指的是哪个 PDFBox 版本。

关于this answer

在 2.0.0 之前的版本(直到当前的 1.8.8)中,文本绘制操作非常有限,甚至不支持这些版本生成的字体对象用作编码的完整 WinAnsi 编码。

关于this answer

目前的 2.0.0-SNAPSHOT 开发状态有了很大的改善。这意味着文本绘制操作的限制已被消除,它们正确地对文本进行编码,并且使用的字体被正确地编码和嵌入。同时,这些改进的早期实现中的错误大多已得到修复。

关于this answer

无论使用哪个 PDFBox 版本,此答案都需要牢记:特定字体不一定支持整个 Unicode 代码点范围。如果您使用的字体不包含字符的字形定义,您可以根据需要进行编码,您的字符将无法正确绘制。这尤其涉及到每个 PDF 查看器必须支持的标准 14 种字体:它们只需要支持来自少数拉丁风格编码的字符,到目前为止还不是完整的 Unicode 集。

【讨论】:

  • 感谢@mkl 的澄清。
猜你喜欢
  • 2014-10-20
  • 2011-07-22
  • 2012-10-27
  • 2017-08-11
  • 2018-11-05
  • 1970-01-01
  • 1970-01-01
  • 2019-09-04
  • 1970-01-01
相关资源
最近更新 更多