PDF в изображение Java

Формат PDF доминирует в мире цифровых документов благодаря своей кроссплатформенной поддержке. Однако в некоторых случаях вам необходимо преобразовать файлы PDF в файлы других форматов. В таких случаях в этой статье рассказывается, как конвертировать PDF-файлы в популярные форматы изображений. В частности, вы узнаете, как конвертировать PDF в изображения PNG, JPEG, BMP и TIFF с помощью Java.

Java конвертер PDF в изображение API

В этой статье мы будем использовать Aspose.PDF for Java, который предназначен для создания новых, а также управления существующими файлами PDF. API обеспечивает высокоточное преобразование файлов PDF в различные форматы документов и изображений. Вы можете либо скачать JAR API, либо установить его, используя следующие конфигурации Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.12</version>
    <classifier>jdk17</classifier>
</dependency>

Преобразование файла PDF в изображение PNG с помощью Java

При преобразовании PDF в PNG каждая страница файла PDF преобразуется в отдельное изображение PNG. Таким образом, вы можете конвертировать одну страницу, все страницы или определенные страницы PDF в соответствии с вашим сценарием. Ниже приведены шаги для преобразования файла PDF в PNG с помощью Java.

  • Загрузите файл PDF с помощью класса Document.
  • Пролистайте страницы в файле PDF, используя метод Document.getPages().
  • Создайте объект OutputStream для каждого изображения PNG.
  • Создайте экземпляр класса Resolution, чтобы задать разрешение визуализируемых изображений.
  • Создайте объект класса PngDevice и инициализируйте его объектом Resolution.
  • Используйте метод PngDevice.process(Document.getPages().get_Item(Index), OutputStream) для преобразования страницы PDF в изображение PNG.
  • Закройте файловый поток.

В следующем примере кода показано, как преобразовать изображение PDF в PNG с помощью Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.Pdf-for-Java.
// Открыть документ
Document pdfDocument = new Document("input.pdf");

// Перебрать все страницы файла PDF
for (int pageCount = 1; pageCount <= pdfDocument.getPages().size(); pageCount++) {
	// Создайте объект потока, чтобы сохранить выходное изображение
	java.io.OutputStream imageStream = new java.io.FileOutputStream("Converted_Image" + pageCount + ".png");

	// Создать объект разрешения
	Resolution resolution = new Resolution(300);
	// Создайте объект PngDevice с определенным разрешением
	PngDevice pngDevice = new PngDevice(resolution);
	// Преобразование определенной страницы и сохранение изображения в поток
	pngDevice.process(pdfDocument.getPages().get_Item(pageCount), imageStream);

	// Закрыть поток
	imageStream.close();
}

Преобразование файла PDF в изображение JPEG с использованием Java

Ниже приведены шаги для преобразования страниц в файле PDF в изображения JPEG с использованием Java.

  • Загрузите файл PDF с помощью класса Document.
  • Пролистайте страницы в PDF, используя метод Document.getPages().
  • Создайте объект OutputStream для каждого изображения JPEG.
  • Создайте экземпляр класса Resolution, чтобы задать разрешение визуализируемых изображений.
  • Создайте объект класса JpegDevice и инициализируйте его объектом Resolution.
  • Используйте метод JpegDevice.process(Document.getPages().get_Item(Index), OutputStream) для преобразования страницы PDF в изображение JPEG.
  • Закройте файловый поток.

В следующем примере кода показано, как преобразовать страницы PDF в изображения JPEG с помощью Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.Pdf-for-Java.
// Открыть документ
 Document pdfDocument = new  Document("input.pdf");

// Перебрать все страницы файла PDF
for (int pageCount = 1; pageCount <= pdfDocument.getPages().size(); pageCount++)
{
    // Создайте объект потока, чтобы сохранить выходное изображение
    java.io.OutputStream imageStream = new java.io.FileOutputStream("Converted_Image" + pageCount + ".jpg");


    // Создать объект разрешения
     Resolution resolution = new  Resolution(300);
    // Создайте объект JpegDevice, где второй аргумент указывает качество результирующего изображения.
     JpegDevice jpegDevice = new  JpegDevice(resolution, 100);
    // Преобразование определенной страницы и сохранение изображения в поток
    jpegDevice.process(pdfDocument.getPages().get_Item(pageCount), imageStream);

    // Закрыть поток
    imageStream.close();
}

Преобразование изображений PDF в BMP с использованием Java

Ниже приведены шаги для преобразования PDF в BMP на Java.

  • Используйте класс Document для загрузки файла PDF.
  • Перебирайте страницы PDF, используя метод Document.getPages().
  • Создайте объект OutputStream для каждого изображения BMP.
  • Создайте экземпляр класса Resolution, чтобы задать разрешение визуализируемых изображений.
  • Создайте объект класса BmpDevice и инициализируйте его объектом Resolution.
  • Используйте метод BmpDevice.process(Document.getPages().get_Item(Index), OutputStream) для преобразования страницы PDF в изображение BMP.
  • Закройте файловый поток.

В следующем примере кода показано, как выполнить преобразование изображения PDF в BMP на Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.Pdf-for-Java.
// Открыть документ
Document pdfDocument = new Document("input.pdf");

// Перебрать все страницы файла PDF
for (int pageCount = 1; pageCount <= pdfDocument.getPages().size(); pageCount++) {
	// Создайте объект потока, чтобы сохранить выходное изображение
	java.io.OutputStream imageStream = new java.io.FileOutputStream("Converted_Image" + pageCount + ".bmp");

	// Создать объект разрешения
	Resolution resolution = new Resolution(300);
	// Создайте объект BmpDevice с определенным разрешением
	BmpDevice bmpDevice = new BmpDevice(resolution);
	// Преобразование определенной страницы и сохранение изображения в поток
	bmpDevice.process(pdfDocument.getPages().get_Item(pageCount), imageStream);

	// Закрыть поток
	imageStream.close();
}

Преобразование PDF в TIFF с использованием Java

В отличие от вышеупомянутых форматов растровых изображений, TIFF является многостраничным форматом изображения. Таким образом, вы можете конвертировать PDF-файл в TIFF сразу, не перебирая каждую страницу. С другой стороны, вы также можете указать диапазон страниц PDF для преобразования в TIFF. Ниже приведены шаги для преобразования файла PDF в TIFF с помощью Java.

  • Используйте класс Document для загрузки файла PDF.
  • Создайте объект OutputStream для изображения TIFF.
  • Создайте экземпляр класса Resolution, чтобы задать разрешение визуализируемых изображений.
  • Используйте класс TiffSettings для установки дополнительных параметров, таких как тип сжатия, глубина цвета и т. д.
  • Создайте объект класса TiffDevice и инициализируйте его с помощью объекта Resolution.
  • Используйте метод TiffDevice.process(Document, OutputStream) (или другие методы перегрузки для указания диапазона страниц) для преобразования PDF в TIFF.
  • Закройте файловый поток.

В следующем примере кода показано, как преобразовать файл PDF в изображение TIFF с помощью Java.

// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.Pdf-for-Java.
// Открыть документ
Document pdfDocument = new Document("input.pdf");
// Создайте объект потока, чтобы сохранить выходное изображение
java.io.OutputStream imageStream = new java.io.FileOutputStream("Converted_Image.tiff");

// Создать объект разрешения
Resolution resolution = new Resolution(300);
// создать экземпляр объекта TiffSettings
TiffSettings tiffSettings = new TiffSettings();
// установить сжатие результирующего изображения TIFF
tiffSettings.setCompression(CompressionType.CCITT4);
// установить глубину цвета для результирующего изображения
tiffSettings.setDepth(ColorDepth.Format8bpp);
// пропускать пустые страницы при рендеринге PDF в TIFF
tiffSettings.setSkipBlankPages(true);

// Создайте объект TiffDevice с определенным разрешением
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);
// Конвертируйте определенную страницу (Страница 1) и сохраните изображение в поток
tiffDevice.process(pdfDocument, 1, 1, imageStream);
// Закрыть поток
imageStream.close();

Получите бесплатную лицензию API

Вы можете бесплатно попробовать API без ограничений по оценке. Получить бесплатную временную лицензию сейчас.

Вывод

В этой статье вы узнали, как конвертировать файлы PDF в форматы изображений с помощью Java. В шагах и примерах кода показано, как выполнить преобразование PDF в PNG, PDF в JPEG, PDF в BMP и PDF в TIFF. Вы можете узнать больше о Java PDF API, используя документацию.

Смотрите также

Информация: Используя конвертер Aspose JPG в PPT или PNG в PPT, вы можете создавать презентации PowerPoint из простых изображений.