Extraer Imágenes de PDF
Contents
[
Hide
]
Cada página en un documento PDF contiene recursos (imágenes, formularios y fuentes). Podemos acceder a estos recursos llamando al método getResources. La clase Resources contiene XImageCollection y podemos obtener la lista de imágenes llamando al método getImages.
Por lo tanto, para extraer una imagen de la página, necesitamos obtener una referencia a la página, luego a los recursos de la página y finalmente a la colección de imágenes.
Podemos extraer una imagen en particular, por ejemplo, por índice.
El índice de la imagen devuelve un objeto XImage. Este objeto proporciona un método Save que se puede usar para guardar la imagen extraída. El siguiente fragmento de código muestra cómo extraer imágenes de un archivo PDF.
public void extractImage () {
// Abrir documento
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();
// Extraer una imagen en particular
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());
// Guardar imagen de salida
xImage.save(outputImage, ImageType.getJpeg());
outputImage.close();
} catch (java.io.IOException e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.
}