Book — 페이지별 포맷이 다른 문서
Book — 페이지별 포맷이 다른 문서
Book 클래스는 페이지마다 서로 다른 페이지 포맷과 페이지 페인터를 가질 수 있는 문서의 표현을 제공해요. 이 클래스는 Pageable 인터페이스를 사용해 PrinterJob과 상호작용해요.
본문
public class Book extends Object implements Pageable
Book은 각 페이지를 Printable과 PageFormat 쌍으로 관리해요. 페이지별로 다른 용지 방향·크기나 다른 페인터를 쓸 수 있어 복잡한 문서를 인쇄할 때 유용해요.
생성자
Book()— 새롭고 빈Book을 만들어요.
주요 메서드
getNumberOfPages()— 이Book의 페이지 수를 반환해요.getPageFormat(int pageIndex)—pageIndex로 지정한 페이지의PageFormat을 반환해요. 인덱스가 범위를 벗어나면IndexOutOfBoundsException을 던져요.getPrintable(int pageIndex)— 지정한 페이지의Printable을 반환해요.append(Printable painter, PageFormat page)—Book끝에 페이지를 추가해요. 이 페이지는 문서의 다음 페이지가 돼요.append(Printable painter, PageFormat page, int numPages)— 같은 페인터·포맷으로 여러 페이지를 추가해요.setPage(int pageNum, Printable painter, PageFormat page)— 지정한 인덱스의 페이지를 재설정해요.
Book book = new Book();
book.append(printable, pageFormat);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(book);
job.print();