2014-09-15 3 views
0

사용시 난 FontBase 적절한 폰트를 적용하지만, 다음과 같이 또한 텍스트 개의 수평 병렬 라인을 추가 한 바와 같이 본 FontBase 텍스트 두 수평 병렬 추가 이유 :어떻게 적용이 iText 5.5.2

enter image description here

여기에 코드입니다 :

BaseFont bf_frs = BaseFont.createFont("assets/fonts/Far_Talat.ttf", BaseFont.IDENTITY_H, true); 
    LanguageProcessor lp = new ArabicLigaturizer(); 
    Font F_far = new Font(bf_frs, 18, Font.DEFAULTSIZE, BaseColor.BLACK); 

    String para1 = "نمونه های بتن آزمایشگاهی اخذ شده در محل به قرار ذیل میباشد"; 
    Paragraph paragraph_part_1 = new Paragraph(); 
    paragraph_part_1.add(new Phrase(lp.process(para1), F_far)); 
    paragraph_part_1.setAlignment(Element.ALIGN_RIGHT); 
    document.add(paragraph_part_1); 

TTF 파일은 표준 언어는 페르시아어이며 아랍어와 매우 가깝습니다.

그래서 어떻게이 두 줄을 생략하십시오.

감사합니다 ..

+0

iText는 이러한 행을 추가하지 않으므로 글꼴의 글리프의 일부일 수 있습니다. 우리가 스스로 테스트 할 수 있도록 Far_Talat.ttf 파일을 공유 할 수 있습니까? 나는 이런 종류의 행동을 본 적이 없다. –

+0

http://www.4shared.com/file/25dHl3ONba/far_dastnevis.html – SDG69

+0

http://www.4shared.com/file/XQsN4A6Ice/Far_Talat.html – SDG69

답변

2

변경 Font.NORMALFont.DEFAULTSIZE.

또한 ArabicLigaturizer을 직접 사용하면 안됩니다. PdfPTablePdfPCell과 같은 RunDirection의 요소를 사용해보세요. 이 요소는 PdfWriter.RUN_DIRECTION_RTL을 지원합니다.

+0

문제가 해결되었습니다. 감사합니다. 난 당신이 권장대로 DEFAULTSIZE를 NORMAL로 바꿨습니다. – SDG69

0

그냥 글꼴을 변경하십시오. 글꼴에을 기본값으로 지정합니다. NORMAL 그리고 잘 가야합니다.

그의 추천을 위해 "VahidN"에게 감사드립니다.