Извлечь изображения из PDF
Contents
[
Hide
]
Каждая страница PDF‑документа содержит ресурсы (изображения, формы и шрифты). Мы можем получить доступ к этим ресурсам, вызвав getResources метод. Class Ресурсы содержат XImageCollection и мы можем получить список изображений, вызвав getImages метод.
Таким образом, чтобы извлечь изображение со страницы, нам нужно получить ссылку на страницу, затем на ресурсы страницы и, наконец, на коллекцию изображений. Конкретное изображение мы можем извлечь, например, по индексу.
Индекс изображения возвращает XImage объект. Этот объект предоставляет Сохранить метод, который можно использовать для сохранения извлечённого изображения. Следующий фрагмент кода показывает, как извлекать изображения из PDF‑файла.
public void extractImage () {
// Open document
try {
document=new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
com.aspose.pdf.Page page=document.getPages().get_Item(1);
com.aspose.pdf.XImageCollection xImageCollection=page.getResources().getImages();
// Extract a particular image
com.aspose.pdf.XImage xImage=xImageCollection.get_Item(1);
File file=new File(fileStorage, "extracted-image.jpeg");
try {
java.io.FileOutputStream outputImage=new java.io.FileOutputStream(file.toString());
// Save output image
xImage.save(outputImage, ImageType.getJpeg());
outputImage.close();
} catch (java.io.IOException e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.
}