
在各種情況下,您會遇到將兩個或多個 PDF 文檔合併為一個文件的需要。例如,PDF 合併允許您合併相似類型的文檔。此外,您可以將多個 PDF 合併為一個 PDF,然後再在線共享或發送給其他人。在本文中,我將演示如何自動化此功能並使用 Java 以編程方式合併多個 PDF 文件。
用於合併 PDF 文件的 Java API
Aspose.PDF for Java 是一個功能豐富的 PDF API,可讓您在幾行代碼內輕鬆合併多個 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>20.5</version>
<classifier>jdk17</classifier>
</dependency>
在 Java 中將兩個 PDF 文件合併為一個 PDF
讓我們首先檢查僅合併兩個 PDF 文件的簡單場景,這可以在幾個步驟內實現。
- 創建 PdfFileEditor 類的實例。
- 使用 PdfFileEditor.concatenate(String firstInputFile, String secInputFile, String outputFile) 方法合併 PDF 文件。
以下代碼示例顯示瞭如何使用 Java 將兩個 PDF 文件合併為一個 PDF。
// 創建 PDF 編輯器
PdfFileEditor fileEditor = new PdfFileEditor();
// 合併兩個 PDF 文件
fileEditor.concatenate("file1.pdf", "file2.pdf", "merged-pdf.pdf");
使用 Java 合併多個 PDF 文件
在前面的示例中,我們僅將兩個 PDF 文件合併為一個 PDF。但是,有時您需要合併兩個以上的 PDF 文件。在這種情況下,您可以將數組傳遞給 PDF 文件的路徑以連接方法。以下是執行此操作的步驟。
- 創建 PdfFileEditor 類的實例。
- 將 PDF 文件的路徑放入字符串數組中。
- 使用 PdfFileEditor.concatenate(String[] inputFiles, String outputFile) 方法合併 PDF 文件。
以下代碼示例顯示瞭如何使用 Java 將多個 PDF 文件合併為一個 PDF。
// 創建 PdfFileEditor 對象
PdfFileEditor fileEditor = new PdfFileEditor();
String[] files = new String[] { "file1.pdf", "file2.pdf", "pdf3.pdf" };
// 合併多個 PDF 文件
fileEditor.concatenate(files, "merged-pdf.pdf");
在 Java 中使用 InputStream 合併 PDF 文件
如果您正在處理 InputStream 形式的 PDF 文件,您可以直接傳遞 InputStream 對象並將合併的 PDF 作為 OutputStream 對象獲取。以下是合併加載到 InputStream 對像中的 PDF 文件的步驟。
- 創建 PdfFileEditor 類的實例。
- 將 PDF 文件加載到 InputStream 對像中。
- 使用 PdfFileEditor.concatenate(InputStream firstInputStream, InputStream secInputStream, OutputStream outputStream) 方法合併 PDF。
以下代碼示例顯示如何使用 Java 中的 InputStream 對象合併 PDF 文件。
// 創建 PdfFileEditor 對象
PdfFileEditor fileEditor = new PdfFileEditor();
// 第一個 PDF 文件
InputStream stream1 = new FileInputStream("file1.pdf");
// 第二個 PDF 文件
InputStream stream2 = new FileInputStream("file2.pdf");
// 合併 PDF 的 OutputStream
OutputStream outstream = new FileOutputStream("merged.pdf");
// 合併 PDF 文件
fileEditor.concatenate(stream1, stream2, outstream);
結論
在本文中,您學習瞭如何使用 Java 以編程方式合併 PDF 文件。代碼示例和分步指南顯示瞭如何使用物理路徑或 InputStream 對象合併兩個或兩個以上的 PDF 文件。您可以使用 文檔 了解有關 Java PDF Merger 庫的更多信息。