PDF 文档的比较功能能够帮助用户实现高效的文档管理。通过比较 PDF 文档,用户可以轻松识别文档内容的差异,对文档有更全面的了解,从而更方便地对文档内容进行修改和整合。本文将介绍如何使用 Spire.PDF for Java 通过 Java 程序比较 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.4.2</version>
</dependency>
</dependencies>
将用于比较的两个 PDF 文档的示例:
比较两个 PDF 文档
Spire.PDF for Java 提供了 PdfComparer 类来表示 PDF 文档比较器。用户可以使用两个 PdfDocument 类对象创建 PdfComparer 类的对象,从而创建对两个文档进行比较的比较器。创建好 PdfComparer 类的对象后,用户可使用 PdfComparer.compare(String fileName) 方法对两个文档进行比较,并将比较结果保存到新的 PDF 文件。
生成的比较结果 PDF 文档左右会两边分别显示两个原始文档,删除的项目用红色显示在左边,添加的项目用黄色显示在右边。
比较两个 PDF 文档的详细操作步骤如下:
- 创建两个 PdfDocument 类对象,并使用 PdfDocument.loadFromFile() 方法加载两个 PDF 文档。
- 用这两个文档创建一个 PdfComparer 类的对象。
- 使用 PdfComparer.compare() 方法比较两个文档,并将比较结果保存为新的PDF文档。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.comparison.PdfComparer;
public class ComparePDF {
public static void main(String[] args) {
//创建一个PdfDocument类对象并加载一个PDF文档
PdfDocument pdf1 = new PdfDocument();
pdf1.loadFromFile("示例1.pdf");
//创建另一个PdfDocument类对象并加载另一个PDF文档
PdfDocument pdf2 = new PdfDocument();
pdf2.loadFromFile("示例2.pdf");
//创建一个PdfComparer类的对象
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
//比较两个PDF 档并将比较结果保存到一个新文档中
comparer.compare("比较结果.pdf");
}
}
比较两个 PDF 文档的指定页面范围
在对文档进行比较之前,还可以使用 PdfComparer.getOptions().setPageRanges() 方法来限制要比较的页面范围。具体操作步骤如下:
- 创建两个 PdfDocument 类的对象,并使用 PdfDocument.loadFromFile() 方法载入两个 PDF 文档。
- 用这两个文档创建一个 PdfComparer 类的对象。
- 使用 PdfComparer.getOptions().setPageRanges() 方法设置要比较的页面范围。
- 使用 PdfComparer.compare() 方法比较两个文档,并将结果保存为新的 PDF 文档。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.comparison.PdfComparer;
public class ComparePDFPageRange {
public static void main(String[] args) {
//创建一个PdfDocument类的对象并加载一个PDF文档
PdfDocument pdf1 = new PdfDocument();
pdf1.loadFromFile("示例1.pdf");
//创建另一个PdfDocument类的对象并加载另一个PDF文档
PdfDocument pdf2 = new PdfDocument();
pdf2.loadFromFile("示例2.pdf");
//创建一个PdfComparer类的对象
PdfComparer comparer = new PdfComparer(pdf1, pdf2);
//设置要比较的页面范围
comparer.getOptions().setPageRanges(1, 1, 1, 1);
//比较这两个PDF文档并将比较结果保存到一个新文档中
comparer.compare("比较结果.pdf");
}
}
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。