2013-04-11 3 views
2

다음 코드를 사용하여 iText에서 히브리어 텍스트를 생성하고 있습니다.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); 

답변

3

이것은 의도적으로 설계된 동작입니다. 쓰기 방향을 변경할 때 모든 것이 바뀝니다. 왼쪽이 오른쪽 및 오른쪽이됩니다. 따라서 Element.ALIGN_RIGHT 대신 Element.ALIGN_LEFT이 필요합니다.

+0

놀라워요! 정말 고맙습니다! – gordon613

+1

(완성을 위해 Element.ALIGN_LEFT를 단락에 적용하고 MultiColumnText에 적용하지 않아야합니다.) – gordon613

+0

(그리고 나는 책의 팬입니다 - iText IN ACTION) – gordon613

관련 문제