注意:此存儲庫按原樣提供,程式碼尚未積極開發。如果您希望改進它,我們將不勝感激:請進行更改並提交拉取請求,我很樂意合併它或幫助您完成它。但是,請不要期望獲得任何類型的支持,包括功能請求或修復的實現。如果您不是開發人員和/或不願意親自動手,那麼這個工具可能不適合您。
diff-pdf 是一個用於直觀比較兩個 PDF 的工具。
它需要兩個 PDF 檔案作為參數。預設情況下,它的唯一輸出是回傳碼,如果沒有差異,則為 0;如果兩個 PDF 不同,則為 1。如果給定--output-diff
選項,它會產生一個 PDF 文件,其中差異以視覺方式突出顯示:
$ diff-pdf --output-diff=diff.pdf a.pdf b.pdf
另一個選擇是使用--view
參數在簡單的 GUI 中直觀地比較兩個檔案:
$ diff-pdf --view a.pdf b.pdf
這將打開一個窗口,您可以在其中查看文件頁面並放大詳細資訊。也可以使用 Ctrl-箭頭(MacOS 上的 Cmd-箭頭)相對移動兩個頁面。這對於識別僅翻譯的差異很有用。
請參閱$ diff-pdf --help
的輸出以取得完整的選項清單。
適用於 Windows 的工具的預編譯版本是作為最新版本的一部分以 ZIP 存檔形式提供,其中包含執行 diff-pdf 所需的所有內容。它可以在您將其解壓縮到的任何地方使用。
或者,如果您使用 Chocolatey,則可以使用下列命令在 Windows 上安裝 diff-pdf:
$ choco install diff-pdf
在 Mac 上,如果您使用 Homebrew,則可以使用它來安裝 diff-pdf:
$ brew install diff-pdf
在 Mac 上,如果您使用 Macports,則可以使用以下命令安裝 diff-pdf:
$ port install diff-pdf
在 Fedora 和 CentOS 8 上:
$ sudo dnf install diff-pdf
openSUSE 的預編譯版本可以從 openSUSE 建置服務下載。
建置系統使用 Automake,因此需要 Unix 或類別 Unix 環境(Cygwin 或 MSYS)。編譯按照通常的方式完成:
$ ./bootstrap
$ ./configure
$ make
$ make install
(請注意,只有在從版本控制系統檢查建置來源時,即當configure
和Makefile.in
檔案遺失時,才需要執行第一步,執行./bootstrap
腳本。)
至於依賴項,diff-pdf 需要以下函式庫:
$ sudo yum groupinstall "Development Tools"
$ sudo yum install wxGTK wxGTK-devel poppler-glib poppler-glib-devel
$ sudo apt-get install make automake g++
$ sudo apt-get install libpoppler-glib-dev poppler-utils libwxgtk3.2-dev
$ sudo apt-get install make automake g++
$ sudo apt-get install libpoppler-glib-dev poppler-utils libwxgtk3.0-gtk3-dev
安裝 Xcode 的命令列工具:
$ xcode-select --install
並安裝 Homebrew 或 MacPorts 來管理依賴項,然後:
$ brew install automake autoconf wxmac poppler cairo pkg-config
或者
$ sudo port install automake autoconf wxWidgets-3.0 poppler cairo pkgconfig
請注意,Windows 上需要更多的庫,而 Cairo 和 Poppler 使用的庫通常都不可用。在撰寫本文時,上述相依性的傳遞覆寫包括 fontconfig、freetype、glib、libpng、pixman、gettext、libiconv、libjpeg 和 zlib。
首先,您需要使用 MSYS2 環境和 C++ 編譯器安裝 MinGW。按照說明安裝 MSYS2。
安裝後,啟動 MSYS2 MinGW shell。它將打開一個終端機視窗;輸入cd /c/directory/with/diff-pdf
以前往包含 diff-pdf 來源的目錄。
您需要使用以下命令安裝 MSYS 通常不包含的其他 MSYS 元件:
$ pacman -Syu
$ pacman -S automake autoconf pkg-config make zip pactoys
$ pacboy -S gcc:p poppler:p wxWidgets:p
按照與上述 Unix 說明相同的方式建構 diff-pdf:
$ ./bootstrap # only if building from git repository
$ ./configure
$ make
若要建置所有 DLL 的 ZIP 存檔,請執行
$ make windows-dist
在 Unix 上,通常的make install
就足夠了。
在 Windows 上,不需要安裝,只需將檔案複製到某處即可。如果您按照上述說明建置它,所有必要的檔案將位於建立的 ZIP 檔案中。