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

Java API для преобразования изображения в PDF

Aspose.PDF for Java — это мощный API, предоставляющий как базовые, так и расширенные функции работы с PDF. Он позволяет создавать новые 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>21.2</version>
</dependency>

Шаги для создания PDF из изображений

Ниже приведены шаги, которые мы выполним, чтобы создать файл PDF из изображений в этой статье.

  • Сначала создайте новый PDF-документ.
  • Получить список имен файлов изображений в массиве.
  • Для каждого файла изображения в списке выполните следующие действия:
    • Добавьте новую страницу в документ PDF и задайте ее свойства.
    • Загрузите каждый файл изображения в файловый поток из списка.
    • Добавьте изображение в коллекцию абзацев страницы.
  • Наконец, сохраните документ PDF.

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

Давайте теперь посмотрим, как реализовать каждый из вышеупомянутых шагов, используя Aspose.PDF для Java.

  • Создайте экземпляр класса Document.

  • Получите список имен файлов изображений в массиве, используя класс java.io.File.

  • Для каждого файла изображения в списке выполните следующие действия:

  • Наконец, сохраните документ PDF с помощью метода Document.save(String).

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

// Создание экземпляра объекта документа
Document doc = new Document();

// Доступ к файлам изображений в папке
String imageDir = "D:/Images/";
File file = new File(imageDir);
String[] fileList = file.list();

for (String fileName : fileList) {
	// Добавить страницу в коллекцию страниц документа
	Page page = doc.getPages().add();

	// Загрузите исходный файл изображения в объект Stream
	java.io.FileInputStream fs = new java.io.FileInputStream(imageDir + fileName);

	// Установите поля, чтобы изображение соответствовало размеру и т. д.
	page.getPageInfo().getMargin().setBottom(0);
	page.getPageInfo().getMargin().setTop(0);
	page.getPageInfo().getMargin().setLeft(0);
	page.getPageInfo().getMargin().setRight(0);
	page.setCropBox(new com.aspose.pdf.Rectangle(0, 0, 400, 400));

	// Создайте объект изображения
	Image image1 = new Image();

	// Добавьте изображение в коллекцию абзацев раздела
	page.getParagraphs().add(image1);

	// Установите поток файла изображения
	image1.setImageStream(fs);
}

// Сохраните полученный файл PDF
doc.save("document.pdf");

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

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

Вывод

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

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