Extrair imagens em PDF

Como extrair imagens PDF usando o Cloud Java

Usamos regularmente arquivos PDF, pois eles fornecem um suporte incrível para conteúdo de texto e imagem. Uma vez que esses elementos tenham sido colocados dentro do documento, o layout do arquivo é preservado, não importa qual plataforma você use para visualizá-los. Porém, podemos ter a necessidade de extrair imagens em PDF. Isso pode ser feito usando o aplicativo visualizador de PDF, mas você precisa percorrer manualmente cada página e salvar individualmente cada imagem. Além disso, em outro cenário, se você tiver um PDF baseado em imagem e precisar executar o PDF OCR, primeiro será necessário extrair todas as imagens e, em seguida, executar a operação de OCR. Isso fica muito difícil quando você tem um grande conjunto de documentos, mas uma solução programática pode ser uma solução confiável e rápida. Então, neste artigo, vamos explorar as opções para extrair imagens de PDF usando Java Cloud SDK

API de conversão de PDF para JPG

Para converter PDF para JPG ou JPG para PDF no aplicativo Java, Aspose.PDF Cloud SDK for Java é uma escolha incrível. Ao mesmo tempo, também permite extrair imagens de PDF, extrair texto de PDF, extrair anexos de PDF, além de fornecer uma infinidade de opções para manipulação de PDF. Portanto, para implementar o recurso de salvar imagens em PDF no aplicativo Java, primeiro precisamos adicionar a referência Cloud SDK em nosso projeto. Portanto, adicione os seguintes detalhes em pom.xml do projeto de tipo de compilação maven.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.11.0</version>
    </dependency>
</dependencies>

Depois que a referência do SDK for adicionada e você não tiver nenhuma conta existente no Aspose Cloud, crie uma conta gratuita usando um endereço de e-mail válido. Em seguida, faça o login usando a conta recém-criada e procure/crie o ID do cliente e o segredo do cliente em Cloud Dashboard. Esses detalhes são necessários para fins de autenticação nas seções a seguir.

Extrair imagens PDF em Java

Siga as etapas abaixo para extrair as imagens do PDF e, assim que a operação for concluída, as imagens serão armazenadas em uma pasta separada no armazenamento em nuvem.

  • Primeiro, precisamos criar um objeto PdfApi enquanto fornecemos ClientID e Client secret como argumentos
  • Em segundo lugar, carregue o arquivo PDF de entrada usando a instância de arquivo
  • Carregue o PDF de entrada para o armazenamento em nuvem usando o método uploadFile(…)
  • Também vamos usar um parâmetro opcional para definir detalhes de altura e largura para imagens extraídas
  • Por fim, chame o método putImagesExtractAsJpeg(…) que leva o nome do PDF de entrada, PageNumber para extrair imagens, dimensões de imagens extraídas e o nome da pasta no armazenamento em nuvem para salvar imagens extraídas
try
    {
    // Obtenha ClientID e ClientSecret em https://dashboard.aspose.cloud/
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
	  
    // criar uma instância de PdfApi
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);

    // nome do documento PDF de entrada
    String inputFile = "marketing.pdf";

    // leia o conteúdo do arquivo PDF de entrada
    File file = new File("//Users//"+inputFile);
	    
    // carregar PDF para armazenamento em nuvem
    pdfApi.uploadFile("input.pdf", file, null);

    // Página de PDF para extrair imagens
    int pageNumber =1;

    // largura para imagens extraídas
    int width = 600;
    // altura das imagens extraídas
    int height = 800;
	    
    // pasta para salvar as imagens extraídas
    String folderName = "NewFolder";
	       
    // Extraia imagens PDF e salve no Cloud Storage
    pdfApi.putImagesExtractAsJpeg(inputFile, pageNumber, width, height, null, null, folderName);
	    
    // imprimir mensagem de sucesso
    System.out.println("PDF images Successsuly extracted !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }
Extrair visualização de imagens em PDF

Image1:- Extraia a visualização das imagens em PDF

O arquivo PDF de amostra usado no exemplo acima pode ser baixado em input.pdf.

Salvar imagens PDF usando comandos cURL

Agora vamos chamar a API para extração de imagens PDF usando comandos cURL. Agora, como pré-requisito para essa abordagem, primeiro precisamos gerar um token de acesso JWT (com base nas credenciais do cliente) enquanto executamos o seguinte comando.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Assim que tivermos o token JWT, execute o seguinte comando para salvar as imagens PDF em uma pasta separada no armazenamento em nuvem.

curl -X PUT "https://api.aspose.cloud/v3.0/pdf/input_file.pdf/pages/1/images/extract/jpeg?width=0&height=0&destFolder=NewFolder" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Conclusão

Depois de ler este artigo, você aprendeu uma abordagem simples, mas confiável, para extrair imagens PDF usando o trecho de código Java, bem como por meio de comandos cURL. Como notamos, conseguimos extrair imagens de uma página específica do arquivo PDF e fornecemos mais controle sobre o processo de extração. A Documentação do produto é enriquecida com uma variedade de tópicos incríveis que explicam ainda mais os recursos dessa API.

Além disso, como todos os nossos Cloud SDKs são publicados sob a licença MIT, você pode fazer o download do código-fonte completo do GitHub e modificá-lo de acordo com seus requisitos. Em caso de problemas, considere entrar em contato conosco para uma resolução rápida por meio do [fórum de suporte ao produto] gratuito 9.

Artigos relacionados

Por favor, visite os links a seguir para saber mais sobre: