2016-06-08 1 views
1

Itext7을 평가 중입니다. 따라서 IText7이 새로 도입되었으며 테이블의 글꼴을 변경하고 싶습니다. 물론 폰트를 가지고 나면 테이블의 폰트를 변경하는 것은 쉽습니다. 그러나 폰트를 만드는 것은 어렵습니다. 간단한 예제를 찾았습니다. font = PdfFontFactory.createFont(FontConstants.TIMES_ITALIC, PdfEncodings.WINANSI); IText7에서 PdfFont 만들기

글꼴 크기, 가족 등을 제어하고 싶습니다. 이전 버전의 Itext에 대한 예제가 매우 직관적 인 것으로 나타났습니다. BaseFont helvetica = BaseFont.createFont(HELVETICA, CP1252, EMBEDDED); Font font = new Font(helvetica, 12, Font.NORMAL);

도움 주셔서 감사합니다.

답변

3

iText 7은 상당히 새롭습니다. 이 당신이 시작하는 데 iText 7: Jump-Start tutorial을하지만 우리는 여전히 Fortunatly

iText를 7의 특정 측면에 대한 많은 자습서를 작성해야합니다, 당신은 이미 두 번째 iText를 7 튜토리얼 iText 7: Building Blocks에서 처리 된 게시 한 질문. 필요한 정보는 Chapter 1: Introducing the PdfFont class입니다.

이 장을 읽으면 글꼴 크기가 PdfFont 클래스의 속성이 아니어야 함을 이해할 수 있습니다. 대신이 글꼴을 사용하는 개체 수준에서 글꼴 크기를 정의합니다. 예컨대

이 경우

Text title1 = new Text("The Strange Case of ").setFontSize(12); 
Text title2 = new Text("Dr. Jekyll and Mr. Hyde").setFontSize(16); 
Text author = new Text("Robert Louis Stevenson"); 
Paragraph p = new Paragraph().setFontSize(8) 
    .add(title1).add(title2).add(" by ").add(author); 
document.add(p); 

, "The Strange Case of " 12의 폰트 크기를 갖는다; "Dr. Jekyll and Mr. Hyde"의 글꼴 크기는 16입니다. " by ""Robert Louis Stevenson"의 글꼴 크기는 Paragraph 수준에서 정의되므로 8입니다. " by "의 글꼴 크기는 Paragraph의 글꼴 크기입니다. "Robert Louis Stevenson"에 대해 정의 된 글꼴 크기가 없습니다. 즉, Text 개체 이 속한 글꼴 크기가 상속 된 것을 의미합니다.

현재 2 장에서 작업 중입니다. Document 레벨에서 글꼴을 정의하여 iText 7이 Document의 기본 글꼴 크기를 변경할 수있게되었습니다. 이것은 iText 7의 많은 개선점 중 하나입니다.

관련 문제