在各種情況下,您可能需要將一組圖像轉換為 PDF 文件。例如,您可能希望將相冊中的所有圖像插入到單個 PDF 文件中。另一方面,您可能需要從掃描文檔的圖像生成 PDF。為了執行圖像到 PDF 的轉換,本文介紹瞭如何使用 Java 從多個圖像生成 PDF。

用於圖像到 PDF 轉換的 Java API

Aspose.PDF for Java 是一個功能強大的 API,提供基本和高級 PDF 操作功能。它可以讓您生成新的 PDF 文件並非常輕鬆地修改現有文件。您可以下載 API 的 JAR 或使用以下 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 文檔。

使用 Java 從圖像生成 PDF

現在讓我們看看如何使用 Aspose.PDF for Java 實現上述每個步驟。

以下代碼示例顯示瞭如何使用 Java 從圖像生成 PDF 文件。

// 實例化文檔對象
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 的更多信息。

也可以看看