在各种情况下,您都需要将两个或多个 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 文件的路径给 concatenate 方法。以下是执行此操作的步骤。
- 创建 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 文件。您可以使用 documentation 了解有关 Java PDF Merger 库的更多信息。