我现在已经为这个问题苦苦挣扎了几个小时,但我找不到出路,问题是:
我编写了一个程序,该程序使用 itext 版本 7(以及很多)以及一些统计数据生成一个 pdf 文件,直到这里一切都正确,但是当我的 pdf 应该包含一些阿拉伯字符串时,它们只是从左到右出现,不无论我尝试过什么(更改字体、使用通用编码、在表格单元格内制作字符串、使用画布……)我都无法让它们正常显示。这是我用来显示阿拉伯字符串的一段代码:
PdfFont fArabic=PdfFontFactory.createFont(ARABICFONT,PdfEncodings.IDENTITY_H, true);
final String ARABIC = "\u0627\u0644\u0633\u0644\u0627\u0645 \u0639\u0644\u064A\u0643\u0645";
document.add(new Paragraph(ARABIC).setFont(fArabic).setBaseDirection(BaseDirection.RIGHT_TO_LEFT));
注意:我认为 itext 5 版本也许可以解决它,但正如我所说,我无法撤消我编写的代码,特别是我有第三个统计库,而且项目已经晚了。我只想要一个使用 itext 的解决方案7 版本。