JobAttributes — 인쇄 작업의 속성 집합

JobAttributes — 인쇄 작업의 속성 집합

JobAttributes 클래스는 하나의 인쇄 작업(print job)을 제어하는 속성들을 담는 불변 컨테이너예요. 복사본 수, 기본 선택, 출력 대상, 인쇄 대화상자, 파일·프린터 이름, 페이지 범위, 다중 문서 처리(컬레이션 포함), 다중 페이지 배치(양면 인쇄 같은) 등을 관리해요.

출처: Java API Reference

본문

속성 이름은 가능하면 인터넷 인쇄 프로토콜(IPP) 1.1을 따르고, 값도 가능한 범위에서 부분적으로 호환돼요.

public final class JobAttributes extends Object implements Cloneable

내부 클래스 타입을 받는 메서드를 쓰려면 내부 클래스의 상수 필드 중 하나를 참조로 전달해요. 이 내부 클래스들은 공개 생성자가 없어서 클라이언트 코드가 새 인스턴스를 만들 수 없어요. 예를 들어 순수 자바 인쇄 대화상자를 쓰려면 이렇게 해요.

import java.awt.JobAttributes;

public class PureJavaPrintDialogExample {
    public void setPureJavaPrintDialog(JobAttributes jobAttributes) {
        jobAttributes.setDialog(JobAttributes.DialogType.COMMON);
    }
}

IPP 속성 중 속성이름-default 값을 지원하는 속성에는 대응하는 set속성이름ToDefault 메서드가 있어요.

생성자

  • JobAttributes() — 모든 속성에 기본값을 넣어 만든 예요. 대화상자는 DialogType.NATIVE, 최소 페이지 1, 최대 페이지 Integer.MAX_VALUE 등으로 초기화돼요.
  • JobAttributes(JobAttributes obj) — 주어진 인스턴스의 복사본을 만들어요.
  • JobAttributes(int copies, ...) — 모든 속성을 지정한 값으로 초기화해요. 조건이 어긋나면 IllegalArgumentException을 던져요.

페이지 범위는 오름차순으로 정렬되고 겹치지 않는 정수 배열들로 표현돼요. 겹치는 범위는 유효하지 않아요.

더 알아보기