【问题标题】:Using Java PDFBox to write Hebrew into PDF使用 Java PDFBox 将希伯来语写入 PDF
【发布时间】:2012-12-11 21:59:51
【问题描述】:

我正在使用 PDFBox 将文本写入 PDF。
当我写英语时,它工作得非常好,但是当我尝试写希伯来语时,我会胡言乱语。

我尝试了各种解决方案,但似乎没有任何效果。 我尝试了以下线程中描述的所有内容:FirstSecondThird

以上所有解决方案都使用 iText。我需要用 PDFBox 以某种方式管理它。

我确实看到可以使用 DictionaryEncoding,但我不明白。 我尝试使用它,但它不适用于希伯来语(写了从 1488 年到 1514 年的所有希伯来语字母)。

COSDictionary cosDic = new COSDictionary();

cosDic.setString( COSName.getPDFName("alef"), "1488" ); // First Hebrew letter
.
.
.
cosDic.setString( COSName.getPDFName("tav"), "1514" ); // Last Hebrew letter

font.setEncoding( new DictionaryEncoding( cosDic ) );

我们将不胜感激。

【问题讨论】:

  • 从那以后,pdfbox 有了许多改进,所以现在很可能应该可以绘制希伯来字母了。但我认为还没有明确的 RTL 支持,所以你必须自己反转字形的顺序。话虽如此,如果您对这个问题不再感兴趣,您应该删除它。

标签: java pdf unicode encoding pdfbox


【解决方案1】:

我的解决方案是切换到iText
所有关于在 PDF 中编码 Unicode 字母和 RTL 支持的辛勤工作都是由他们完成的。
我想如果一个库太难了,可能还有另一个库可以做得更好。

【讨论】:

    猜你喜欢
    • 2023-03-23
    • 1970-01-01
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    • 2019-01-07
    • 1970-01-01
    • 2021-08-13
    相关资源
    最近更新 更多