在各種情況下,您可能需要將一組圖像轉換為 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 實現上述每個步驟。
創建 Document 類的實例。
使用 java.io.File 類獲取數組中圖像文件名的列表。
對於列表中的每個圖像文件,執行以下操作:
使用 Document.getPages().add() 方法向 PDF 文檔添加一個新的 Page 並設置頁面的屬性。
將圖像文件加載到 FileInputStream 對像中。
使用 Page.getParagraphs().add(Image) 方法向頁面添加新的 Image。
使用 Image.setImageStream(FileInputStream) 方法設置圖像流。
最後,使用 Document.save(String) 方法保存 PDF 文檔。
以下代碼示例顯示瞭如何使用 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 的更多信息。