将 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 文件的路径给 concatenate 方法。以下是执行此操作的步骤。

以下代码示例展示了如何使用 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 文件。您可以使用 documentation 了解有关 Java PDF Merger 库的更多信息。

也可以看看