有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我的希伯来语文本在iText中是左对齐的

我使用下面的代码在iText中生成希伯来文文本

它工作得很好(创建希伯来文字体,并使文本从右向左流动),但文本是左对齐的,而不是右对齐的

有人能帮我把它弄对吗?请注意,我试图使多栏文本右对齐,使段落右对齐,但没有效果

谢谢

static Color darkBlue = new Color(0x2F, 0x36, 0x99);
BaseFont unicode = BaseFont.createFont("c:/windows/fonts/arial.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font fontDarkBlueHebrew = new Font(unicode, 12, Font.NORMAL,darkBlue);

MultiColumnText mct=new MultiColumnText();
mct.addSimpleColumn(36, PageSize.A4.width()-36);
mct.setRunDirection(PdfWriter.RUN_DIRECTION_RTL);
mct.setAlignment(Element.ALIGN_RIGHT);

Paragraph section1a = new Paragraph("כותרת 1",fontDarkBlueHebrew );
section1a.setAlignment(Element.ALIGN_RIGHT);            
mct.addElement(section1a);

Paragraph section1b = new Paragraph("הטקסט שלע",fontDarkBlueHebrew);
section1b.setAlignment(Element.ALIGN_RIGHT);  
mct.addElement(section1b);

document.add(mct);

共 (1) 个答案

  1. # 1 楼答案

    这是故意的。当改变书写方向时,一切都是颠倒的:左变右,右变左。所以你需要Element.ALIGN_LEFT而不是Element.ALIGN_RIGHT