PDF에서 이미지 추출

Contents
[ ]

PDF 문서의 각 페이지에는 리소스(이미지, 양식 및 글꼴)가 포함되어 있습니다. 우리는 getResources 메서드를 호출하여 이러한 리소스에 접근할 수 있습니다. Resources 클래스에는 XImageCollection이 포함되어 있으며, getImages 메서드를 호출하여 이미지 목록을 얻을 수 있습니다.

따라서 페이지에서 이미지를 추출하려면 페이지에 대한 참조, 페이지 리소스에 대한 참조, 마지막으로 이미지 컬렉션에 대한 참조를 얻어야 합니다. 특정 이미지는 예를 들어 인덱스를 통해 추출할 수 있습니다.

이미지의 인덱스는 XImage 객체를 반환합니다. 이 객체는 추출된 이미지를 저장하는 데 사용할 수 있는 Save 메서드를 제공합니다. 다음 코드 스니펫은 PDF 파일에서 이미지를 추출하는 방법을 보여줍니다.

public static void Extract_Images(){
    // 문서 디렉토리의 경로
    String _dataDir = "/home/admin1/pdf-examples/Samples/";
    String filePath = _dataDir + "ExtractImages.pdf";

    // PDF 문서 로드
    com.aspose.pdf.Document pdfDocument = new com.aspose.pdf.Document(filePath);

    com.aspose.pdf.Page page = pdfDocument.getPages().get_Item(1);
    com.aspose.pdf.XImageCollection xImageCollection = page.getResources().getImages();
    // 특정 이미지 추출
    com.aspose.pdf.XImage xImage = xImageCollection.get_Item(1);

    try {
        java.io.FileOutputStream outputImage = new java.io.FileOutputStream(_dataDir + "output.jpg");
        // 출력 이미지 저장
        xImage.save(outputImage);
        outputImage.close();
    } catch (java.io.FileNotFoundException e) {
        // TODO: 예외 처리
        e.printStackTrace();
    } catch (java.io.IOException e) {
        // TODO: 예외 처리
        e.printStackTrace();
    }
}