[java] Apache PDFBox로 PDF 파일 읽기 및 쓰기

PDF 파일은 다양한 용도로 사용되는 인기있는 파일 형식입니다. Apache PDFBox는 Java로 작성된 오픈 소스 라이브러리로, PDF 파일을 읽고 쓸 수 있는 다양한 기능을 제공합니다. 이 블로그 포스트에서는 Apache PDFBox를 사용하여 Java 코드를 통해 PDF 파일을 읽고 쓰는 방법에 대해 알아보겠습니다.

의존성 추가

먼저, Apache PDFBox를 사용하기 위해 Maven 또는 Gradle과 같은 의존성 관리 도구를 통해 해당 라이브러리를 추가해야 합니다. Maven을 사용하는 경우 pom.xml 파일에 다음 의존성을 추가합니다:

<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.25</version>
</dependency>

Gradle을 사용하는 경우 build.gradle 파일에 다음 의존성을 추가합니다:

implementation 'org.apache.pdfbox:pdfbox:2.0.25'

의존성을 추가한 후 프로젝트를 다시 빌드해주세요.

PDF 파일 읽기

Apache PDFBox를 사용하여 PDF 파일을 읽는 것은 간단합니다. 먼저, PDDocument 클래스를 사용하여 PDF 문서를 로드합니다. 다음은 파일에서 문서를 로드하는 방법입니다:

import org.apache.pdfbox.pdmodel.PDDocument;

public class PdfReader {

    public static void main(String[] args) {
        try (PDDocument document = PDDocument.load(new File("example.pdf"))) {
            // 문서를 사용하는 코드 작성
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

PDDocument.load() 메서드를 사용하여 파일에서 PDF 문서를 로드하고, try-with-resources 문을 사용하여 자동으로 문서 리소스를 닫을 수 있습니다.

PDF 문서를 로드한 후, 이제 문서를 사용하여 원하는 작업을 수행할 수 있습니다. 예를 들어, 페이지 수를 가져오려면 다음과 같은 코드를 사용할 수 있습니다:

int pageCount = document.getNumberOfPages();
System.out.println("페이지 수: " + pageCount);

PDF 파일 쓰기

PDFBox를 사용하여 새로운 PDF 파일을 작성하는 것도 간단합니다. 먼저, PDDocument 클래스의 인스턴스를 만들고 페이지를 추가합니다. 다음은 새로운 PDF 파일을 작성하는 방법입니다:

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

public class PdfWriter {

    public static void main(String[] args) {
        try (PDDocument document = new PDDocument()) {
            // 새로운 페이지 추가
            PDPage page = new PDPage();
            document.addPage(page);

            // 문서를 사용하는 코드 작성

            // 파일로 저장
            document.save("output.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

PDDocument의 인스턴스를 만든 후, addPage() 메서드를 사용하여 새로운 페이지를 추가할 수 있습니다. 그런 다음 document.save() 메서드를 사용하여 PDF 파일로 저장할 수 있습니다.

결론

Apache PDFBox를 사용하면 Java에서 PDF 파일을 읽고 쓰는 작업을 쉽고 효율적으로 수행할 수 있습니다. 이 블로그 포스트에서는 Apache PDFBox를 사용하여 PDF 파일을 읽고 쓰는 방법에 대해 알아보았습니다. 더 많은 기능과 사용 예제를 확인하려면 Apache PDFBox 문서를 참조하십시오.