Extrair Imagens do PDF
Contents
[
Hide
]
Cada página no documento PDF contém recursos (imagens, formulários e fontes). Podemos acessar esses recursos chamando o método getResources. A classe Resources contém XImageCollection e podemos obter a lista de imagens chamando o método getImages.
Assim, para extrair a imagem de uma página, precisamos obter referência à página, em seguida aos recursos da página e por último à coleção de imagens. Podemos extrair uma imagem específica, por exemplo, pelo índice.
O índice da imagem retorna um objeto XImage. Este objeto fornece um método Save que pode ser usado para salvar a imagem extraída. O trecho de código a seguir mostra como extrair imagens de um arquivo PDF.
public static void Extract_Images(){
// O caminho para o diretório de documentos.
String _dataDir = "/home/admin1/pdf-examples/Samples/";
String filePath = _dataDir + "ExtractImages.pdf";
// Carregar documento 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();
// Extrair uma imagem específica
com.aspose.pdf.XImage xImage = xImageCollection.get_Item(1);
try {
java.io.FileOutputStream outputImage = new java.io.FileOutputStream(_dataDir + "output.jpg");
// Salvar imagem de saída
xImage.save(outputImage);
outputImage.close();
} catch (java.io.FileNotFoundException e) {
// TODO: tratar exceção
e.printStackTrace();
} catch (java.io.IOException e) {
// TODO: tratar exceção
e.printStackTrace();
}
}