[java] 자바 스윙 컴포넌트에서 문서를 인쇄하는 방법을 알려주세요.
import java.awt.*;
import java.awt.print.*;

public class PrintExample implements Printable {

    @Override
    public int print(Graphics g, PageFormat pf, int pageIndex) throws PrinterException {
        if (pageIndex > 0) {
            return NO_SUCH_PAGE;
        }

        // 문서를 그리는 코드 작성
        Graphics2D g2d = (Graphics2D) g;
        g2d.translate(pf.getImageableX(), pf.getImageableY());
        g.drawString("인쇄할 내용", 100, 100);

        return PAGE_EXISTS;
    }

    public static void main(String[] args) {
        PrinterJob job = PrinterJob.getPrinterJob();
        job.setPrintable(new PrintExample());

        if (job.printDialog()) {
            try {
                job.print();
            } catch (PrinterException e) {
                e.printStackTrace();
            }
        }
    }
}

이 예제에서는 Printable 인터페이스를 구현하여 문서를 그리는 로직을 작성했습니다. 또한, PrinterJob 클래스를 사용하여 프린터 대화상자를 표시하고 문서를 인쇄할 수 있도록 설정했습니다.

이 예제를 실행하면 사용자가 프린터를 선택하고 인쇄 설정을 조정한 후 문서를 인쇄할 수 있습니다.

더 많은 정보를 원하시면 Java Printing API 문서를 참고하실 수 있습니다.