使用 Java 對比兩個PDF文檔之間的差異

不論是在團隊寫作還是在個人工作中,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 文檔。
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("比較1.pdf");
    }
}

比較結果:

使用 Java 對比 PDF 文檔的指定頁面

初始化 PdfComparer 之後,還可以使用 PdfComparer.getOptions().setPageRanges() 方法限制用於對比的 PDF 頁面範圍。步驟和代碼如下:

  • 創建兩個 PdfDocument 類的對象。
  • 使用 PdfDocument.loadFromFile() 方法加載兩個 PDF 文檔。
  • 創建 PdfComparer 類的對象。
  • 使用 PdfComparer.getOptions().setPageRanges() 方法設置要對比的頁面範圍。
  • 使用 PdfComparer.compare() 方法比較兩個文檔,並將結果保存爲新的 PDF 文檔。
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("比較2.pdf");
    }
}

比較結果

 

以上示例可以看出用 Spire.PDF for Java 對比 PDF 文檔的操作十分簡單,僅需幾行代碼就能快速找出文檔之間的差異。要了解該Java庫支持的其他功能,可前往 Spire.PDF for Java 教程查看。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章