[java] PDF 파일의 크기 변경하기(Java Apache PDFBox 사용)

PDF 파일은 다양한 목적으로 사용되는데, 때로는 파일의 크기를 조절해야 할 필요가 있을 수 있습니다. 이번 블로그 포스트에서는 Java Apache PDFBox 라이브러리를 사용하여 PDF 파일의 크기를 변경하는 방법에 대해 알아보겠습니다.

목차

PDFBox 라이브러리 소개

Apache PDFBox는 Java로 작성된 오픈 소스 라이브러리로, PDF 파일에 대한 다양한 작업을 수행할 수 있습니다. 크기 변경, 텍스트 추출, 이미지 삽입 등 다양한 기능을 제공합니다. 이번 예제에서는 PDF 파일의 크기를 변경하는 기능에 초점을 맞춰보겠습니다.

PDF 파일의 크기 변경하기

PDF 파일의 크기를 변경하기 위해서는 다음과 같은 단계를 따라야 합니다.

  1. PDF 파일을 읽어와서 PDDocument 객체를 생성합니다.
  2. PDPage 객체를 가져옵니다.
  3. PDRectangle 객체를 사용하여 페이지의 크기를 변경합니다.
  4. 변경된 PDF 파일을 저장합니다.

예제 코드

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.common.PDRectangle;

import java.io.File;
import java.io.IOException;

public class PdfResizeExample {

    public static void main(String[] args) {
        try {
            // PDF 파일을 읽어와서 PDDocument 객체 생성
            PDDocument document = PDDocument.load(new File("input.pdf"));

            // 첫 번째 페이지 가져오기
            PDPage firstPage = document.getPage(0);

            // 페이지 크기 변경하기 (A4로 변경)
            PDRectangle pageSize = new PDRectangle(PDRectangle.A4.getWidth(), PDRectangle.A4.getHeight());
            firstPage.setMediaBox(pageSize);

            // 변경된 PDF 파일 저장
            document.save(new File("output.pdf"));

            // 메모리 해제
            document.close();

            System.out.println("PDF 파일의 크기를 변경하였습니다.");

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예제 코드는 PDF 파일의 첫 번째 페이지의 크기를 A4로 변경하는 코드입니다. input.pdf 파일을 읽어와서 PDPage 객체를 가져온 후, PDRectangle 객체를 사용하여 페이지의 크기를 변경하고, 변경된 PDF 파일인 output.pdf로 저장합니다.

결론

이번에는 Java Apache PDFBox 라이브러리를 사용하여 PDF 파일의 크기를 변경하는 방법에 대해 알아보았습니다. PDF 파일을 다룰 때 유용한 라이브러리이니, 필요한 경우에 활용해보시기 바랍니다. 본 예제 코드와 함께 실제 PDF 파일을 대상으로 실험해보면 더욱 이해가 쉬울 것입니다.

더 많은 정보를 얻으려면 Apache PDFBox 공식 웹사이트를 참조하시기 바랍니다.