將 PDF 文件合併為單個 PDF

在各種情況下,您會遇到將兩個或多個 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 文件的簡單場景,這可以在幾個步驟內實現。

以下代碼示例顯示瞭如何使用 Java 將兩個 PDF 文件合併為一個 PDF。

// 創建 PDF 編輯器
PdfFileEditor fileEditor = new PdfFileEditor();
// 合併兩個 PDF 文件
fileEditor.concatenate("file1.pdf", "file2.pdf", "merged-pdf.pdf");

使用 Java 合併多個 PDF 文件

在前面的示例中,我們僅將兩個 PDF 文件合併為一個 PDF。但是,有時您需要合併兩個以上的 PDF 文件。在這種情況下,您可以將數組傳遞給 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 文件的步驟。

以下代碼示例顯示如何使用 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 庫的更多信息。

也可以看看