我想创建一个包含英语和希伯来语的pdf文档,我可以使用BaseFont unicode = BaseFont.createFont("c:/windows/fonts/arialuni.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
看到希伯来字母
但我反过来看他们。我希望能够在rtl模式下显示希伯来字符串,并且英文字符串将保持在ltr模式。
怎么办呢?有一个英语和希伯来语的例子吗? (或任何其他rtl语言)。
感谢提前。
答案 0 :(得分:0)
您应该能够通过ColumnText实例绘制文本并获得完整的BiDi支持。您只需要setRunDirection
到PdfWriter.RUN_DIRECTION_DEFAULT
以外的其他内容。
使用具有非默认运行方向的较长版本,您可以使用ColumnText.showTextAligned()
获得相同的效果:
ColumnText.showTextAligned(contentByte, Element.ALIGN_LEFT, myParagraph, x, y, rotation,
PdfWriter.RUN_DIRECTION_LTR, 0);
这会将LTR设置为默认方向,并激活BIDI处理。在ColumnText
内,RUN_DIRECTION_DEFAULT
与RUN_DIRECTION_NO_BIDI
相同。