不论是在团队写作还是在个人工作中,PDF 文档往往会经过多次修订和更新。掌握 PDF 文档内容的变化对于管理文档有极大的帮助。通过对比 PDF 文档,用户可以快速找出文档增加、删除和修改的内容,更好地了解文档的演变过程,轻松地管理文档。本文将介绍如何
在 Java 程序中通过代码快速比较两个 PDF 文档并找出文档之间的内容差异

本文所使用的方法需要用到
Spire.PDF for Java
库,可点击
下载
后再手动将 Spire.Pdf.jar 引入程序中。

使用 Java 对比整个 PDF 文档

对比文档之前需要先将两个文档作为参数传递到
PdfComparer
类的构造函数创建对象,然后再使用
PdfComparer.compare(String fileName)
方法对比这两个 PDF 文档并将对比结果保存到第三个 PDF 文档。 对比结果文档将分两栏展示原文档,增加部分显示在左侧,删除部位显示在右侧。 步骤和代码如下:

  • 创建两个
    PdfDocument
    类的对象。
  • 使用
    PdfDocument.loadFromFile()
    方法加载两个 PDF 文档。
  • 创建
    PdfComparer
    类的对象。
  • 使用
    PdfComparer.compare()
    方法比较两个文档,并将结果保存为新的 PDF 文档。
importcom.spire.pdf.PdfDocument;importcom.spire.pdf.comparison.PdfComparer;public classComparePDF {public static voidmain(String[] args) {//创建PdfDocument对象并加载第一个PDF文档
        PdfDocument pdf1 = newPdfDocument();
pdf1.loadFromFile(
"文件1.pdf");//创建另一个PdfDocument对象并加载另一个PDF文档 PdfDocument pdf2 = newPdfDocument();
pdf2.loadFromFile(
"文件2.pdf");//创建PdfComparer对象 PdfComparer comparer = newPdfComparer(pdf1, pdf2);//比较两个PDF文档并将比较结果保存到新文档中 comparer.compare("比较1.pdf");
}
}

比较结果:

使用 Java 对比 PDF 文档的指定页面

初始化
PdfComparer
之后,还可以使用
PdfComparer.getOptions().setPageRanges()
方法限制用于对比的 PDF 页面范围。步骤和代码如下:

  • 创建两个
    PdfDocument
    类的对象。
  • 使用
    PdfDocument.loadFromFile()
    方法加载两个 PDF 文档。
  • 创建
    PdfComparer
    类的对象。
  • 使用
    PdfComparer.getOptions().setPageRanges()
    方法设置要对比的页面范围。
  • 使用
    PdfComparer.compare()
    方法比较两个文档,并将结果保存为新的 PDF 文档。
importcom.spire.pdf.PdfDocument;importcom.spire.pdf.comparison.PdfComparer;public classComparePDFPageRange {public static voidmain(String[] args) {//创建PdfDocument对象并加载第一个PDF文档
        PdfDocument pdf1 = newPdfDocument();
pdf1.loadFromFile(
"文件1.pdf");//创建另一个PdfDocument对象并加载另一个PDF文档 PdfDocument pdf2 = newPdfDocument();
pdf2.loadFromFile(
"文件2.pdf");//创建PdfComparer对象 PdfComparer comparer = newPdfComparer(pdf1, pdf2);//设置要比较的页面范围 comparer.getOptions().setPageRanges(1, 1, 1, 1);//比较两个PDF文档并将比较结果保存到新文档中 comparer.compare("比较2.pdf");
}
}

比较结果

以上示例可以看出用 Spire.PDF for Java 对比 PDF 文档的操作十分简单,仅需几行代码就能快速找出文档之间的差异。要了解该Java库支持的其他功能,可前往
Spire.PDF for Java 教程
查看。

标签: none

添加新评论