使用Java PDFBox将希伯来语写成PDF

时间:2012-12-26 10:04:43

标签: java pdf unicode encoding pdfbox

我正在使用 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 ) );

任何形式的帮助都将受到赞赏。

1 个答案:

答案 0 :(得分:1)

对我来说,解决方案是切换到iText
它们完成了有关在PDF中编码Unicode字母和RTL支持的所有艰苦工作。
我想如果一个库的某些问题太难了,那么可能还有另一个库可以做得更好。