
PDF 是支持文本、图形和许多其他元素的最著名的文件格式之一。它受欢迎的原因之一是它的便携性。在某些情况下,您可能需要将大型 PDF 文件拆分为多个文件。为了以编程方式解决这个问题,本文讨论了如何在 Java 中拆分 PDF 文件的不同方法。
用于拆分 PDF 文件的 Java API
GroupDocs.Merger 提供了合并和拆分许多不同文件格式的文件的解决方案。我们将使用它的 Java API 以不同的方式分割 PDF 文件。从 下载部分 下载 JAR 文件,或者仅在您的 Java 应用程序中使用最新的存储库和依赖项 Maven 配置。
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-merger</artifactId>
<version>21.9</version>
</dependency>
在 Java 中将 PDF 文件拆分为多页文件
以下步骤指导如何将 PDF 文件拆分为多页文件:
- 使用 Merger 类加载 PDF 文件。
- 定义输出文件格式。
- 使用 SplitOptions 定义页面间隔。
- 使用 split() 方法根据定义的间隔拆分加载的 PDF。
以下代码示例展示了如何在 Java 中将 PDF 文件拆分为多页文件。
/*
* Split PDF files into multiple page files in Java
*/
// 加载 PDF 文件
Merger merger = new Merger("path/document.pdf");
// 定义输出文件格式
String filePathOut = "path/splitPDF_{0}.{1}";
// 定义拆分间隔和拆分模式
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 }, SplitMode.Interval);
// 根据给定的间隔拆分 PDF
merger.split(splitOptions);
在 Java 中将 PDF 文件拆分为多个单页文件
以下步骤指导您如何拆分 PDF 以将页面提取为多个单页文件:
- 使用 Merger 类加载 PDF 文件。
- 定义输出文件格式。
- 使用 SplitOptions 定义准确的页码。
- 使用 split() 方法根据定义的页面拆分加载的 PDF。
以下代码示例展示了如何在 Java 中将 PDF 文件拆分为多个单页文件。
/*
* Split PDF file into Single Page files in Java
*/
// 加载 PDF 文件
Merger merger = new Merger("path/document.pdf");
// 定义输出文件格式
String filePathOut = "path/splitPDF_{0}.{1}";
// 定义要提取为单页文档的页面
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });
// 根据拆分选项拆分 PDF
merger.split(splitOptions);
在 Java 中按范围从 PDF 文件中提取页面
以下步骤指导如何通过根据给定范围拆分从 PDF 中提取页面:
- 使用 Merger 类加载 PDF 文件。
- 定义输出文件格式。
- 使用 SplitOptions 提供页面范围。
- 使用 split() 方法根据定义的范围分割加载的 PDF。
以下代码片段显示了如何通过在 Java 中提供范围来拆分 PDF 和提取页面。
/*
* Split PDF file by Given Range into Single Page files in Java
*/
// 加载 PDF 文件
Merger merger = new Merger("path/document.pdf");
// 定义输出文件格式
String filePathOut = "path/splitPDF_{0}.{1}";
// 定义范围以提取为单页文档
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);
// 根据拆分选项拆分 PDF
merger.split(splitOptions);
使用 Java 中的偶数/奇数过滤器从 PDF 文件中提取页面
以下步骤指导如何通过拆分从 PDF 文件中提取给定范围内的偶数/奇数页:
- 使用 Merger 类加载 PDF 文件。
- 定义输出文件格式。
- 使用 SplitOptions 提供页面范围。
- 使用 RangeMode 应用偶数、奇数或所有页面过滤器。
- 使用 split() 方法根据定义的过滤器拆分加载的 PDF。
以下代码片段显示了如何使用 Java 提取 PDF 文件定义范围内的所有奇数/偶数页。
/*
* Split PDF file by Given Range & Filter (Even/Odd Pages) into Single Page files in Java
*/
// 加载 PDF 文件
Merger merger = new Merger("path/document.pdf");
// 定义输出文件格式
String filePathOut = "path/splitPDF_{0}.{1}";
// 定义范围和过滤器以将给定范围内的所有奇数页提取为单页文档
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, (Integer)RangeMode.OddPages);
// 根据拆分选项拆分 PDF
merger.split(splitOptions);
代码更改摘要
上述场景中唯一不同的是创建 SplitOptions 的方式。您可以根据代码中的要求使用以下配置。
- 对于多页文件 - 使用间隔:[1,2]、[3,4,5]、[6,7]、[8,9,10]。
new SplitOptions(outputFile, new int[] { 3, 6, 8 }, SplitMode.Interval)
- 单个页面:[3]、[6]、[8]
new SplitOptions(outputFile, new int[] { 3, 6, 8 });
- 提取范围内的页面:[3]、[4]、[5]
new SplitOptions(outputFile, 3, 5);
- 带过滤器的范围:[3]、[5]、[7]
new SplitOptions(outputFile, 3, 7, (Integer)RangeMode.OddPages);
获取免费 API 许可证
您可以 获得免费的临时许可证 以便在没有评估限制的情况下使用 API。
结论
总而言之,您已经学习了在 Java 中拆分 PDF 文件的不同方法。首先,我们将 PDF 文件拆分为多页文档以及多个单页文档。然后我们一一提取给定范围内PDF文件的所有页面和偶数/奇数页。现在您应该有信心使用 GroupDocs.Merger API 构建自己的 PDF 拆分器 Java 应用程序。
要了解有关 API 的更多信息,请访问 文档。如有疑问,请通过 论坛 联系我们。