IText Unicode Ind字符未正确显示

时间:2013-09-19 07:18:40

标签: java itext

我正在使用Itext进行PDF生成。 我有马拉地语文本。 但Itext是生成没有雕文替换的文本。

例如:

文字应该是:ल्ल

但iText以PDF格式显示:लल

与...相同 文字应该是:क्ष्म

但iText以PDF格式显示:कष

我使用windows Sytem文件获取字体.e。 arial unicode字体。 而代码是

BaseFont base=BaseFont.createFont("c:/windows/fonts/ARIALUNI.ttf",BaseFont.IDENTITY_H, BaseFont.EMBEDDED);

我正在使用itext Version itext-5.4.3.jar。

请给我解决方案。我应该以什么方式处理。 谢谢

2 个答案:

答案 0 :(得分:3)

当你作为输入传递时,你需要用你的字符串添加unicode。孟加拉语或印地语的unicode是

\u0986\u09ae\u09bf \u0995\u09cb\u09a8 \u09aa\u09a5\u09c7
      \u0995\u09cd\u09b7\u09c0\u09b0\u09c7\u09b0 \u09b7\u09a8\u09cd\u09a1
      \u09aa\u09c1\u09a4\u09c1\u09b2 \u09b0\u09c1\u09aa\u09cb
      \u0997\u0999\u09cd\u0997\u09be \u098b\u09b7\u09bf

以下是Example

答案 1 :(得分:1)

我得到了解决方案...... 解决方案是IText 目前不支持(根据我的搜索)印度语如Marathi。 它的语言分析器还不完全成熟的语言。 由于它是开源的,我正在使用它。

现在,我已经转移到Apache FOP 1.1。 它支持indic Languages。但重要的是它是资源密集型的。换句话说,它比IText慢。

谢谢......