Preview 可以在 macOS 上壓縮 PDF,但驅動其「縮減檔案大小」篩選器的同一套 JPG 重新編碼邏輯,也能在任何現代瀏覽器分頁中執行,無需上傳文件。macOS 的 Preview 應用程式會套用 Quartz 篩選器,以較低的品質重新編碼內嵌的點陣影像,這正是文字密集的 PDF 常常無法縮小的原因——只有圖片資料會被處理,頁面結構、字型或文字串流則不會動到。基於瀏覽器的 Compress PDF 工具在 Windows、Linux、ChromeOS 或任何其他未安裝 Preview 的平台上,採用了相同的概念。它在本機載入檔案,逐步檢查每頁的影像物件,並僅以平衡的品質與 1400 像素的最大尺寸重新編碼符合條件的 JPEG 串流。由於資料完全不會離開瀏覽器分頁,因此除了能在任何作業系統上運作、並在下載前提供一份誠實的容量報告之外,整體操作流程與 Preview「開啟、壓縮、儲存」的節奏完全一致。這樣的組合——Preview 的概念,加上任何瀏覽器的可及性——正是任何搜尋了 Preview 風格工作流程、卻需要在其他地方執行的人,務實的答案。

Preview 在壓縮 PDF 時實際改變了什麼
macOS 的 Preview 提供單一指令來縮小 PDF:檔案 > 匯出,然後從 Quartz 篩選器彈出選單中選擇 縮小檔案大小。實際運作時,該篩選器會以較低的品質設定重新編寫文件內嵌的點陣影像、刪除少量中繼資料,並以相同的檔名將結果存回磁碟。頁數、頁面幾何、字型、連結與文字串流不會被重寫,這正是純文字 PDF 在 Preview 中通常無法縮小的原因——檔案中沒有可重新編碼的內嵌點陣影像。
該篩選器同樣沒有目標大小的概念,也沒有無損選項,因此取捨是永久性的:你必須犧牲部分影像品質,以換取 Quartz 所產生的位元組縮減。理解這項界線很重要,因為每個有範圍限制的瀏覽器型壓縮器都遵循相同的原則:在不重新繪製頁面的前提下,只有內嵌的點陣影像能夠縮小,文件其餘部分在結構上則保持完整。
一套鏡像 Preview 處理方式的瀏覽器替代方案
如果你使用的作業系統不是 OS X,或者你單純不想繞道透過 Preview 來處理,同樣的概念可以在任何現代瀏覽器分頁中,透過一個本機執行的 Compress PDF 工具來執行。你開啟網頁、從本機挑選一個 PDF,該工具便會使用 JavaScript PDF 函式庫逐步處理檔案內的影像物件,僅以平衡的品質與 1400 像素的最大尺寸重新編碼符合條件的 JPEG 串流,並在顯示下載連結前回報壓縮前後的容量。來源檔案永遠不會被上傳,不需要任何帳號,且頁數與文字層會與原本完全一致。
對於特別搜尋 Preview 風格工作流程的讀者來說,這是最接近的可攜等效方案:在本機開啟檔案、觀察它縮小、再儲存。如果你想要更廣泛的逐步說明,關於如何在瀏覽器中輕鬆壓縮 PDF的指南涵蓋了相同的內容,並提供更多細節。
如何改用瀏覽器壓縮 PDF,而不依賴 Preview
- 在目前的瀏覽器分頁中開啟 Compress PDF 網頁。Chrome、Edge、Safari 與 Firefox 都支援底層的檔案 API。
- 點擊檔案選擇器,從本機磁碟挑選一個 PDF。此工具一次僅接受單一檔案,並強制限制 25 MB 的大小上限。
- 選擇 Compress PDF 動作並靜候工具枚舉檔案中的內嵌影像物件,然後重新編碼符合條件的 JPEG 串流。一切都在目前的分頁中執行——不會上傳任何資料。
- 查看結果旁顯示的輸入與輸出大小。如果新檔案較小,便會出現下載按鈕。若沒有任何符合條件的影像縮小,工具會誠實回報「未縮小」結果,且不會提供下載。
- 點擊下載以儲存已驗證的 PDF。此工具會在同一頁面內,以 PDF 檢視器重新開啟輸出檔,之後才會顯示連結,因此格式錯誤的結果絕不會被呈現為成功。
- 開啟下載的檔案,與原始檔並列比較,並在確認輸出內容正確無誤前,先保留原始檔。
此工具被允許變更的內嵌影像
此工具刻意比一般用途的 PDF 最佳化工具更為嚴格。它只會重新編碼未遮罩、且使用 DeviceRGB 或 DeviceGray 色彩資料、並未帶有異常解碼參數的 JPEG 影像。其餘所有內容——JPX 與 JPEG 2000 串流、CMYK 影像、索引色彩空間、遮罩影像、ImageMask 物件,以及任何帶有非標準解碼陣列的影像——皆保持不動。這並非猜測:工具會在處理任何內容前先檢查 PDF 串流字典,並跳過不在允許清單中的項目,而非強行替換。
對於每張符合條件的影像,其最長邊會縮小至 1400 像素,並以 0.70 的 JPEG 品質重新編碼。接著會將候選項目與原始串流逐位元組進行比對;只要候選項目實際上沒有變小,就會保留原始串流。這就是此工具能夠承諾誠實容量報告的原因:只有在確認較小的影像,才會在相同的間接參照下被替換入 PDF 結構中。
為何文字密集的 PDF 常常拒絕縮小
僅包含文字層、向量圖形與字型的 PDF,沒有可供工具重新編碼的 JPEG 影像物件,因此輸出大小將等於輸入大小——工具會回報此結果,而非提供下載。對於任何內嵌影像已經過高度壓縮,或儲存於工具無法安全重寫之格式(例如 JPEG 2000、CMYK 掃描檔、遮罩影像,或帶有解碼參數的影像)的 PDF,情況同樣如此。
Preview 的行為也是如此:它是內嵌點陣圖的重新編碼器,而非一般用途的串流最佳化工具。務實的建議是:對於掃描或照片密集、可接受在視覺上略為縮小的本機文件,使用此瀏覽器工具;當你需要任意串流壓縮、歸檔符合性,或保證無損輸出時,則改用桌面工具。
下載前的安全限制與驗證
由於一切都在瀏覽器分頁中進行,因此設有四項硬性上限以維持操作範圍:一次僅處理一個 PDF、25 MB 的檔案大小上限、至多 80 個符合條件的影像物件,以及所有解碼影像合計不超過 100 百萬像素。任何超過上述任一限制的 PDF 都會在事前遭到拒絕,而非被靜默截斷,因此工具絕不會在無法完整處理的檔案上假裝成功。
完成重寫後,工具會儲存新的 PDF,在同一頁面內以 PDF 檢視器重新開啟,然後才會顯示下載連結。這道驗證步驟正是防止格式錯誤的結果被當作成功的關鍵——若輸出檔無法重新開啟,或頁數已經偏移,工具便會拒絕顯示下載選項。Canvas toBlob API 是產生每張候選 JPEG 的底層機制,而 PDF.js 則負責重新開啟與驗證的步驟;兩者都在同一個分頁內執行,不會將任何位元組傳送到伺服器。
Preview 與此工具不足的情境
如果你需要特定的目標檔案大小、任意串流壓縮、歸檔符合性,或 PDF/A 驗證,那麼 Preview 與這個有範圍限制的瀏覽器工具都不適合。Preview 完全不接受目標大小,瀏覽器工具同樣不會承諾任何特定結果——它只會回報 JPG 重新編碼實際達成的成果。桌面最佳化工具可以重寫內容串流、縮減字型取樣,並產生 PDF/A 設定檔,這已超出瀏覽器內重新編碼器的範疇。下表摘要了每個選項適合的位置,方便你在開始前挑選合適的工具。
| 使用情境 | macOS 上的 Preview | 瀏覽器版 Compress PDF | 桌面最佳化工具 |
|---|---|---|---|
| 照片或掃描密集的 PDF,單一檔案,25 MB 以下 | 可用,會降低影像品質 | 可用,會重新編碼符合條件的 JPG | 可用,可能增加額外負擔 |
| 無內嵌影像的純文字 PDF | 通常無法縮減 | 誠實回報「未縮小」結果 | 可透過串流調整縮減 |
| CMYK、遮罩或 JPEG 2000 影像 | 仍會重新編碼,可能失真 | 安全跳過 | 可完整控制地處理 |
| 需要特定目標檔案大小 | 不支援 | 不支援 | 通常支援 |
| 歸檔或印刷用的符合性 | 不保證 | 不保證 | Ghostscript 或 Acrobat Pro 等工具可用 |
| 跨平台且無 macOS | 無法使用 | 在任何現代瀏覽器皆可運作 | 視工具而定 |
對於常見的「我想要這份掃描 PDF 的較小複本,卻不想把它傳送到任何地方」任務,瀏覽器工具涵蓋了與 Preview 篩選器相同的範圍,而且只要有現代瀏覽器便能在任何地方執行。