2

次のコードを使用して、iText でヘブライ語のテキストを生成しています。

これはうまく機能します (ヘブライ フォントを作成し、テキストを右から左にフローさせます) が、テキストは右揃えではなく左揃えになります。

右揃えにするのを手伝ってくれる人はいますか? MultiColumnText を右揃えにし、段落を右揃えにしようとしたが、役に立たなかったことに注意してください。

ありがとう

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);
4

1 に答える 1

3

これは仕様によるものです。書き込み方向を変更すると、すべてが逆になります。左が右になり、右が左になります。Element.ALIGN_LEFTしたがって、代わりにが必要ですElement.ALIGN_RIGHT

于 2013-04-12T10:22:57.243 に答える