使用 PDF 的 Linux 使用者經常會遇到熟悉的挫折感:主導搜尋結果的壓縮工具和教學課程是為 Windows 和 macOS 編寫的,而 Linux 的命令列替代方案分散在不同的軟體包中,且文件不一致。在 Linux 上壓縮 PDF 完全可以使用免費的開源工具來實現,並且在許多情況下,Linux 命令列方法比其他平台上的圖形工具可以更好地控制壓縮參數。該過程包括為工作選擇正確的工具,並了解平衡檔案大小和視覺品質的壓縮選項。

使用 Ghostscript 進行命令列 PDF 壓縮
Ghostscript 是 Linux 上最強大、最廣泛使用的 PDF 處理工具,預先安裝在許多發行版上,並且可以透過每個套件管理器使用。它可以透過指定輸出解析度、影像壓縮設定和 PDF 相容性等級的命令列呼叫來壓縮 PDF。基本壓縮指令是 gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=compressed.pdf input.pdf。 PDFSETTINGS 參數控制四個預設值的壓縮級別,Ghostscript 將這些值解釋為特定的下採樣和編碼選擇。
螢幕預設透過將影像下取樣至 72 DPI 來產生最小的文件,僅適用於對列印品質要求不高的螢幕閱讀。此電子書預設將取樣率降低至 150 DPI,為在平板電腦和筆記型電腦上閱讀的文件提供合理的平衡。印表機將取樣率預設為 300 DPI,在保持列印品質的同時仍能實現有意義的壓縮。印前預設應用無損壓縮並保留專業列印的顏色配置文件,產生預設中最大的文件。對於 Linux 上的大多數PDF 壓縮 需求,電子書或印表機預設提供了正確的權衡。
嘗試壓縮 PDF
無需安裝。直接在您的瀏覽器中工作。
使用 ps2pdf 作為輕量級替代方案
ps2pdf 腳本是作為大多數 Linux 發行版上 Ghostscript 軟體包的一部分提供,為相同的底層功能提供了更簡單的命令列介面。運行 ps2pdf input.pdf output.pdf 套用一組預設的壓縮優化,無需任何參數配置。預設值相當於 Ghostscript 印表機預設,產生適合螢幕檢視和列印的檔案。當您不需要微調輸出時,這種零配置方法對於快速壓縮非常有用。
為了獲得更多控制,ps2pdf 透過命令列接受 Ghostscript 參數。執行 ps2pdf -dPDFSETTINGS=/ebook input.pdf output.pdf 將電子書預設傳遞給 Ghostscript。執行 ps2pdf -dPDFSETTINGS=/screen -dDownsampleColorImages=true -dColorImageResolution=100 input.pdf output.pdf 專門自訂彩色影像下取樣。這些自訂參數的減少 PDF 大小效果可能比任何預設都更積極,但在將自訂設定套用到批次之前,請務必在單一檔案上測試輸出。
使用 qpdf 進行結構壓縮
Ghostscript 和 ps2pdf 透過 PostScript 解譯器重新渲染 PDF 內容,即使在無損設定下也可以引入微妙的渲染變化。 Qpdf 採用不同的方法,對 PDF 檔案執行結構優化,而無需重新渲染頁面內容。指令 qpdf -- Linearize --object-streams=generate --recompress-flate input.pdf output.pdf 刪除冗餘對象,重新產生具有更好壓縮比的壓縮流,並重新組織檔案結構以提高讀取效率。 Qpdf 壓縮是真正無損的,頁面像素與原始像素相同。
Qpdf 對於已編輯多次的 PDF 特別有效,因為每次編輯會話都可能留下未使用的物件和次優的串流壓縮。在經過多輪編輯的 PDF 上執行 qpdf 通常會產生一個小 20% 到 30% 的文件,而不會更改可見內容。 qpdf 工具可透過所有主要 Linux 發行版上的套件管理器使用,並且處理檔案的速度比 Ghostscript 快得多,因為它完全跳過渲染步驟。對於PDF壓縮,必須確保原始像素的完美保真度,qpdf是首選工具。
編寫用於批量 PDF 壓縮的 Shell 腳本
從命令列壓縮單一 PDF 的速度很快。一次壓縮一個包含 50 個 PDF 的資料夾非常乏味。一個簡短的 shell 腳本將壓縮命令包裝在一個循環中,該循環處理目錄中的每個 PDF。基本腳本是一個 for 迴圈: for f in *.pdf;做 gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=“compressed_$f” “$f”;完畢。這將建立每個 PDF 的壓縮副本,並在檔案名稱中添加前綴,而原始檔案保持不變。
向腳本添加錯誤檢查以供生產使用。在嘗試壓縮之前檢查輸入檔案是否存在並且可讀。檢查輸出檔案是否已成功創建,並且壓縮後檔案大小是否非零。將每個檔案的原始檔案大小、壓縮檔案大小和壓縮率記錄到文字檔案中以供以後查看。編寫良好的批次壓縮腳本可以節省數小時的手動命令列工作,並準確記錄哪些檔案被壓縮、壓縮時間和壓縮程度。 WukongPDF 等工具透過瀏覽器介面為喜歡圖形工作流程的 Linux 使用者提供批次減少 PDF 大小 功能。
在 Linux GUI 中使用 PDF 壓縮
喜歡圖形介面而不是命令列的 Linux 用戶有多種 PDF 壓縮選項。 PDF Arranger 可透過大多數套件管理器使用,提供用於重新排序、刪除和旋轉 PDF 頁面的視覺化介面,其匯出功能包括對影像進行下取樣的壓縮選項。 Xournal++ 在筆記型電腦介面中開啟 PDF,並可以將帶有註解的文件匯出為壓縮 PDF。 LibreOffice Draw 可以開啟 PDF 並透過 PDF 匯出對話方塊套用壓縮設定匯出它們。
基於瀏覽器的 PDF 壓縮工具在 Linux、Windows 和 macOS 上的工作方式相同,因為它們在獨立於作業系統的瀏覽器中運作。開啟您喜歡的基於瀏覽器的工具,上傳 PDF,選擇壓縮級別,然後下載結果。這種與作業系統無關的方法在 Linux 上特別方便,因為它避免了安裝、設定和更新命令列工具或透過套件管理器尋找正確的壓縮實用程式的需求。
在 Linux 上驗證壓縮結果
壓縮 PDF 後,使用 Linux 原生工具驗證輸出品質。 pdfinfo 指令是 poppler-utils 套件的一部分,可顯示原始檔案和壓縮檔案的頁數、頁面大小和 PDF 版本,確認頁面結構完好無損。 ImageMagick 的識別命令可以將各個頁面提取為圖像並報告其像素尺寸,從而允許您檢查下採樣是否按預期降低了圖像解析度。
要進行視覺品質檢查,請在 Evince、Okular 或您首選的 Linux PDF 檢視器的兩個實例中並排開啟原始 PDF 和壓縮 PDF。將包含文字和圖像的頁面放大至至少 200%。比較文字邊緣的清晰度以及照片區域中是否存在 JPEG 壓縮偽影。如果壓縮版本顯示明顯的品質下降,請使用更高品質的預設或自訂 Ghostscript 參數重新運行壓縮,以提高下採樣解析度和 JPEG 品質閾值。
使用 ImageMagick 進行影像特定壓縮
當 PDF 檔案大小主要由一些大圖像主導時,透過 Ghostscript 壓縮整個 PDF 對於文字和向量部分可能有點過大。 ImageMagick 可以定位 PDF 中的特定影像。使用 pdfimages(poppler-utils 套件的一部分)提取超大影像。使用轉換命令單獨壓縮每個提取的圖像,並針對特定圖像類型調整品質和調整大小參數。然後使用 img2pdf 工具將壓縮影像重新組合成新的 PDF。
這種外科手術式的壓縮方法可以完全保留文字清晰度,因為文字圖層永遠不會重新渲染。僅修改了圖像。對於將清晰的向量文字與不必要的高解析度照片相結合的 PDF,檔案大小的減少可能會非常顯著。例如,在文字文件中嵌入 1200 DPI 照片的 PDF 可以透過僅將照片下採樣至 300 DPI 同時保持文字不變,將影像大小減少 80% 或更多。
對於在壓縮過程中喜歡圖形回饋的 Linux 用戶,PDF Compressor 是一款基於 GTK 的應用程序,可透過 Flathub 獲取,它為 Ghostscript 壓縮提供可視化介面,並可並排預覽原始輸出和壓縮輸出。它支援批次並保存壓縮設定檔以供重複使用。
對於在 Linux 上透過電子郵件分發的 PDF,命令 mutt 支援直接從命令列附加檔案。壓縮後,使用 ls -lh 驗證壓縮檔案大小,並確認其低於收件者電子郵件伺服器附件限制,對於大多數供應商來說通常為 25 MB。如果文件仍然太大,請考慮在發送之前使用 pdftk 或 qpdf 將 PDF 拆分為較小的部分。
poppler-utils 軟體套件可在所有 Linux 發行版上使用,其中包括 pdftoppm,可將 PDF 頁面轉換為影像格式。當您想要在重新組裝各個頁面之前將特定於圖像的壓縮工具套用到各個頁面時,這可以作為中間步驟很有用。
對於伺服器環境中的自動 PDF 壓縮,可以從 cron 作業或 systemd 計時器呼叫 Ghostscript 以按計劃處理傳入的 PDF。命令列方法使自動化變得簡單。
Linux 原生 PDF 壓縮工具與 shell 腳本的靈活性相結合,可以說是任何作業系統上最強大且可自訂的 PDF 壓縮環境。
這種靈活性和控制使得 Linux 的 PDF 壓縮方法值得經常處理大型文件集合的任何人學習。
嘗試壓縮 PDF
無需安裝。直接在您的瀏覽器中工作。
