수색…


비고

스타일 사이를 전환해야하는 문서를 만드는 일은 종종 iText 5에서 지루한 경향이 있습니다. 많은 Chunk 객체를 만들어야하고 스타일을 모든 새 Chunk 직접 적용하거나 생성하는 사이에 항상 균형을 Chunk Chunk 를 생성하는 도우미 메서드.

우리가 iText 7에서 수정 한 것 :

이제 방법을 연결할 수 있습니다. setFont() , setFontSize() , addStyle() 및 기타 메서드는 모두 호출 된 객체를 반환합니다. 다른 스타일과 관련된 Paragraph 을 한 줄에 추가 할 수 있습니다.

document.add(
    new Paragraph()
        .add("In this example, named ")
        .add(new Text("HelloWorldStyles").addStyle(style))
        .add(", we experiment with some text in ")
        .add(new Text("code style").addStyle(style))
        .add("."));

Style 객체를 사용하여 addStyle() 메서드를 사용하여 다양한 속성 (글꼴, 글꼴 색상, 배경색, 글꼴 크기 등)을 한 번에 적용 할 수 있습니다.

더 알고 싶으십니까?

iText 7 : Building Blocks 튜토리얼의 1 장인 PdfFont 클래스 소개를 읽으십시오. 무료 전자 책을 받으십시오!

HelloWorldStyles.java (iText 5)

이 iText 5 예제에서는 동일한 문서에서 서로 다른 스타일을 전환해야합니다.

여기에 이미지 설명을 입력하십시오.

iText 5에서이 작업을 수행하는 가장 좋은 방법은 자주 사용해야하는 스타일로 Chunk 를 생성하는 편리한 방법을 만드는 것입니다. createBgChunk() 메소드를 참조하십시오.

public Chunk createBgChunk(String s, Font font) {
    Chunk chunk = new Chunk(s, font);
    chunk.setBackground(BaseColor.LIGHT_GRAY);
    return chunk;
}

이제 PDF를 만드는 코드에서이 메서드를 사용할 수 있습니다.

public void createPdf(String dest)
throws DocumentException, IOException {
    Document document = new Document();
    PdfWriter.getInstance(document, new FileOutputStream(dest));
    document.open();
    Font code = new Font(FontFamily.COURIER, 12, Font.NORMAL, BaseColor.RED);
    Paragraph p = new Paragraph("In this example, named ");
    p.add(createBgChunk("HelloWorldStyles", code));
    p.add(", we experiment with some text in ");
    p.add(createBgChunk("code style", code));
    p.add(".");
    document.add(p);
    document.close();
}

출처 : developers.itextpdf.com

HelloWorldStyles.java (iText 7)

이 iText 7 예제에서는 동일한 문서에서 서로 다른 스타일을 전환해야합니다.

여기에 이미지 설명을 입력하십시오.

iText 7에서 이것을 달성하는 가장 좋은 방법은 Style 객체를 만들고 그 StyleText 객체에 적용하는 것입니다.

public void createPdf(String dest) throws IOException {
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfFont code = PdfFontFactory.createFont(FontConstants.COURIER);
    Style style = new Style()
        .setFont(code)
        .setFontSize(12)
        .setFontColor(Color.RED)
        .setBackgroundColor(Color.LIGHT_GRAY);
    try (Document document = new Document(pdf)) {
        document.add(
            new Paragraph()
                .add("In this example, named ")
                .add(new Text("HelloWorldStyles").addStyle(style))
                .add(", we experiment with some text in ")
                .add(new Text("code style").addStyle(style))
                .add("."));
    }
}

출처 : developers.itextpdf.comiText 7 : Building Blocks 튜토리얼.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow