[java] Apache PDFBox를 사용한 PDF 파일 내용 완전 삭제

Apache PDFBox는 Java로 작성된 오픈 소스 라이브러리로, PDF 파일을 조작하고 처리하는 데 사용됩니다. PDF 파일에서 내용을 삭제하는 방법에 대해 알아보겠습니다.

PDF 파일의 내용을 삭제하기 위해서는 다음의 단계를 따라야 합니다.

  1. PDF 파일을 로드합니다.
  2. 페이지를 가져옵니다.
  3. 페이지 내용을 삭제합니다.
  4. 수정된 PDF 파일을 저장합니다.
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;

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

public class DeletePDFContentExample {

    public static void main(String[] args) {
        try {
            // 1. PDF 파일을 로드합니다.
            File file = new File("sample.pdf");
            PDDocument document = PDDocument.load(file);

            // 2. 페이지를 가져옵니다.
            int pageNum = 1; // 삭제할 페이지 번호
            PDPage page = document.getPage(pageNum);

            // 3. 페이지 내용을 삭제합니다.
            page.setContents(null);

            // 4. 수정된 PDF 파일을 저장합니다.
            document.save("output.pdf");

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

            System.out.println("PDF 파일 내용 삭제 완료!");

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

위의 예제 코드는 PDF 파일의 첫 번째 페이지의 내용을 완전히 삭제하는 방법을 보여줍니다. sample.pdf 파일을 로드하고, 첫 번째 페이지를 가져온 후 내용을 삭제합니다. 수정된 PDF 파일은 output.pdf로 저장됩니다.

위의 코드는 Apache PDFBox 2.0.0 버전을 기준으로 작성되었습니다. PDF 파일의 내용을 삭제하기 전에 백업을 제대로 확인한 후 실행해야 합니다.

참고 자료