通过将 PDF 页面拆分为单独的文件,可以获得更小的 PDF 文档,其中包含从原始文件中提取的一页或几页。 拆分文件包含的信息更少,自然也更小,更易于在 Internet 上共享。 在本文中,您将学习如何使用 Spire.PDF for Java 在 Java 中将 PDF 拆分为单页 PDF,以及按页面范围拆分 PDF。
安装 Spire.PDF for Java
首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作为依赖项。JAR 文件可以从此链接下载。如果您使用 Maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而在应用程序中导入 JAR 文件。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>11.2.3</version>
</dependency>
</dependencies>
将 PDF 拆分为单页 PDF
Spire.PDF for Java 提供的 split() 方法可将多页 PDF 文档分成多个单页文件。 以下是详细步骤。
- 创建一个 PdfDcoument 对象。
- 使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
- 使用 PdfDocument.split(string destFilePattern, int startNumber) 方法将文档拆分为单页 PDF。
- Java
import com.spire.pdf.PdfDocument;
public class SplitPdfByEachPage {
public static void main(String[] args) {
//指定输入文件路径
String inputFile = "九寨沟简介.pdf";
//指定输出目录
String outputDirectory = "C:\\Users\\Tina\\Desktop\\Spire.PDF for java\\";
//创建一个PdfDocument对象
PdfDocument doc = new PdfDocument();
//加载PDF文件
doc.loadFromFile(inputFile);
//将 PDF 拆分为单页 PDF
doc.split(outputDirectory + "output-{0}.pdf", 1);
}
按页面范围拆分 PDF
Spire.PDF for Java 没有提供直接的方法来按页面范围拆分 PDF 文档。为此,我们新建两个或更多 PDF 文档,并将源文档中的选定页面或页面范围导入其中。以下是详细步骤。
- 在初始化 PdfDocument 对象时加载 PDF 源文件。
- 创建两个额外的 PdfDocument 对象。
- 使用 PdfDocument.insertPage() 方法将源文件的第一页导入到第一个文档。
- 使用 PdfDocument.insertPageRange() 方法将剩余页面从源文件导入到第二个文档。
- 使用 PdfDocument.saveToFile() 方法将两个文档保存为单独的 PDF 文件。
- Java
import com.spire.pdf.PdfDocument;
public class SplitPdfByPageRange {
public static void main(String[] args) {
//指定输入文件路径
String inputFile = "九寨沟简介.pdf";
//指定输出目录
String outputDirectory = "C:\\Users\\Tina\\Desktop\\Spire.PDF for java\\";
;
//在初始化 PdfDocument 对象时加载源 PDF 文件
PdfDocument sourceDoc = new PdfDocument(inputFile);
//创建两个额外的 PdfDocument对象
PdfDocument newDoc_1 = new PdfDocument();
PdfDocument newDoc_2 = new PdfDocument();
//将源文件的第一页插入到第一个文档中
newDoc_1.insertPage(sourceDoc, 0);
//将源文件的其余页面插入第二个文档
newDoc_2.insertPageRange(sourceDoc, 1, sourceDoc.getPages().getCount() - 1);
//将两个文档另存为 PDF 文件
newDoc_1.saveToFile(outputDirectory + "output-1.pdf");
newDoc_2.saveToFile(outputDirectory + "output-2.pdf");
}
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。