[]
        
(Showing Draft Content)

PDF 페이지 구조

Page 섹션

PdfDocument에서는 각 페이지가 세 가지 섹션으로 나뉩니다: 헤더, 본문, 푸터. 이 각 섹션은 텍스트와 그래픽을 그릴 수 있는 고유의 메서드를 가진 그리기 영역을 나타내며, 이는 PdfPageArea 클래스에 의해 표현됩니다.


pdf-structure


그리기 영역은 서로 독립적이지 않아서, 하나의 영역에서 이루어진 그리기가 다른 영역에 영향을 미칠 수 있습니다. 각 그리기 영역은 고유의 좌표 시스템을 가지며, (0, 0) 좌표는 왼쪽 상단 모서리를 나타냅니다.


PdfDocument 클래스 인스턴스는 본문 섹션을 나타내며, 그들의 header 와 footer 속성은 각각 헤더와 푸터 섹션을 나타냅니다.


import * as wijmo from '@mescius/wijmo';
import * as wjPdf from '@mescius/wijmo.pdf';

var doc = new wjPdf.PdfDocument();

doc.header.drawText("header");
doc.drawText("body");
doc.footer.drawText("footer");

//To hide footer or header set the area's height property to 0:
var doc = new wjPdf.PdfDocument({
    header: { height: 0 },
    footer: { height: 0 }
});

Page 설정

초기화 중에, PdfDocument 의 생성자에 pageSettings 객체를 전달하여 페이지 설정(레이아웃, 크기, 여백 등)을 정의할 수 있습니다.


레이아웃(layout)은 페이지의 방향을 결정합니다. 세로 방향(Portrait) 또는 가로 방향(Landscape) 중 하나를 선택할 수 있습니다.

크기(size)는 페이지의 크기를 결정합니다. 미리 정의된 크기와 사용자 정의 크기 모두 지원됩니다.

여백(margins)은 페이지의 여백을 결정합니다.


예제:

var doc = new wjPdf.PdfDocument({
    pageSettings: {
        layout: wjPdf.PdfPageOrientation.Portrait,
        size: wjPdf.PdfPageSize.Letter,
        margins: {
            left: 72,
            top: 72,
            right: 72,
            bottom: 72
        }
    }
});


이 설정들은 이미 생성된 페이지에 대해서는 런타임 중에 변경할 수 없습니다.


pageSettings 속성을 사용하여 자동으로 추가될 페이지에 대한 설정을 제공하거나, addPage 메서드를 호출하여 페이지를 추가할 수 있습니다. currentPageSettings 속성은 현재 페이지의 설정을 가져오는 데 사용됩니다.


doc.addPage(doc.currentPageSettings);