Извлечение PDF-изображений

Как извлечь PDF-изображения с помощью Cloud Java

Мы регулярно используем файлы PDF, поскольку они обеспечивают потрясающую поддержку текста и изображений. После того, как эти элементы были помещены в документ, макет файла сохраняется независимо от того, какую платформу вы используете для их просмотра. Но у нас может возникнуть потребность в извлечении изображений PDF. Это можно сделать с помощью приложения для просмотра PDF, но вам нужно вручную просматривать каждую страницу и сохранять каждое изображение отдельно. Кроме того, в другом сценарии, если у вас есть PDF-файл на основе изображения и вам нужно выполнить распознавание PDF, то сначала вам нужно извлечь все изображения, а затем выполнить операцию распознавания. Это становится очень трудным, когда у вас большой набор документов, но программное решение может быть надежным и быстрым решением. Итак, в этой статье мы собираемся изучить варианты извлечения изображений из PDF с помощью Java Cloud SDK.

API преобразования PDF в JPG

Чтобы конвертировать PDF в JPG или JPG в PDF в Java-приложении, Aspose.PDF Cloud SDK для Java — прекрасный выбор. В то же время он также позволяет извлекать изображения из PDF, извлекать текст из PDF, извлекать вложения из PDF, а также предоставляет множество опций для работы с PDF. Итак, чтобы реализовать функцию сохранения изображений PDF в приложении Java, сначала нам нужно добавить ссылку на Cloud SDK в наш проект. Поэтому, пожалуйста, добавьте следующие детали в pom.xml проекта типа сборки 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>

После добавления ссылки на SDK и отсутствия существующей учетной записи в Aspose Cloud создайте бесплатную учетную запись, используя действующий адрес электронной почты. Затем войдите в систему, используя только что созданную учетную запись, и найдите/создайте идентификатор клиента и секрет клиента на Cloud Dashboard. Эти данные необходимы для аутентификации в следующих разделах.

Извлечение изображений PDF в Java

Пожалуйста, следуйте инструкциям ниже, чтобы извлечь изображения из PDF, и после завершения операции изображения будут сохранены в отдельной папке в облачном хранилище.

  • Сначала нам нужно создать объект PdfApi, указав ClientID и Client secret в качестве аргументов.
  • Во-вторых, загрузите входной файл PDF, используя экземпляр файла.
  • Загрузите исходный PDF-файл в облачное хранилище, используя метод uploadFile(…)
  • Мы также собираемся использовать необязательный параметр для установки сведений о высоте и ширине извлеченных изображений.
  • Наконец, вызовите метод putImagesExtractAsJpeg(…), который принимает входное имя PDF, номер страницы для извлечения изображений, размеры извлеченных изображений и имя папки в облачном хранилище для сохранения извлеченных изображений.
try
    {
    // Получите ClientID и ClientSecret с https://dashboard.aspose.cloud/
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
	  
    // создать экземпляр PdfApi
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);

    // имя исходного PDF-документа
    String inputFile = "marketing.pdf";

    // прочитать содержимое входного файла PDF
    File file = new File("//Users//"+inputFile);
	    
    // загрузить PDF в облачное хранилище
    pdfApi.uploadFile("input.pdf", file, null);

    // Страница PDF для извлечения изображений
    int pageNumber =1;

    // ширина извлеченных изображений
    int width = 600;
    // высота извлеченных изображений
    int height = 800;
	    
    // папка для сохранения извлеченных изображений
    String folderName = "NewFolder";
	       
    // Извлекайте изображения PDF и сохраняйте в облачном хранилище
    pdfApi.putImagesExtractAsJpeg(inputFile, pageNumber, width, height, null, null, folderName);
	    
    // распечатать сообщение об успешном завершении
    System.out.println("PDF images Successsuly extracted !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }
Предварительный просмотр изображений извлечения PDF

Image1:- Предварительный просмотр изображений извлечения PDF

Образец PDF-файла, использованного в приведенном выше примере, можно загрузить с input.pdf.

Сохранение изображений PDF с помощью команд cURL

Теперь мы собираемся вызвать API для извлечения изображений PDF с помощью команд cURL. Теперь в качестве предварительного условия для этого подхода сначала нам нужно сгенерировать токен доступа JWT (на основе учетных данных клиента) при выполнении следующей команды.

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"

Получив токен JWT, выполните следующую команду, чтобы сохранить изображения PDF в отдельной папке в облачном хранилище.

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>"

Заключение

Прочитав эту статью, вы узнали о простом, но надежном подходе к извлечению изображений PDF с помощью фрагмента кода Java, а также с помощью команд cURL. Как мы заметили, мы получаем возможность извлекать изображения с указанной страницы файла PDF и обеспечиваем больший контроль над процессом извлечения. Продукт Документация обогащен множеством замечательных тем, дополнительно объясняющих возможности этого API.

Кроме того, поскольку все наши Cloud SDK публикуются под лицензией MIT, вы можете загрузить полный исходный код с GitHub и изменить его в соответствии со своими требованиями. В случае возникновения каких-либо проблем вы можете обратиться к нам для быстрого решения через бесплатный форум поддержки продукта.

Статьи по Теме

Пожалуйста, перейдите по следующим ссылкам, чтобы узнать больше о: