PDF에서 이미지 추출
Contents
[
Hide
]
PDF 문서의 각 페이지는 리소스(이미지, 폼 및 폰트)를 포함하고 있습니다. 이러한 리소스에 액세스하기 위해 getResources 메서드를 호출할 수 있습니다. 클래스 Resources는 XImageCollection을 포함하고 있으며, getImages 메서드를 호출하여 이미지 목록을 얻을 수 있습니다.
따라서 페이지에서 이미지를 추출하기 위해, 페이지에 대한 참조를 얻고, 다음으로 페이지 리소스와 마지막으로 이미지 컬렉션에 대한 참조를 얻어야 합니다. 특정 이미지는 예를 들어 인덱스로 추출할 수 있습니다.
이미지의 인덱스는 XImage 객체를 반환합니다. This object provides a save method which can be used to save the extracted image. The following code snippet shows how to extract images from a PDF file.
// PDF 문서 로드
$document = new Document($inputFile);
// 문서의 첫 페이지 가져오기
$page = $document->getPages()->get_Item(1);
// 페이지의 이미지 컬렉션 가져오기
$xImageCollection = $page->getResources()->getImages();
// 컬렉션에서 첫 번째 이미지 가져오기
$xImage = $xImageCollection->get_Item(1);
// 이미지를 저장할 새로운 FileOutputStream 객체 생성
$outputImage = new java("java.io.FileOutputStream", $outputFile);
// 이미지를 출력 파일에 저장
$xImage->save($outputImage);
// 출력 이미지 파일 닫기
$outputImage->close();