三頁的文件沒有道理是 40 MB,但這種事天天發生。有用的問題不是「怎麼壓縮」,而是「裡面裝了什麼」——因為正確的解法完全取決於五件事裡出錯的是哪一件。
這是最常見的原因,而且差距很大。你把一張現代手機拍的照片放進文件,它是 4000 像素寬、好幾 MB。頁面上只顯示 10 公分寬,以印刷品質來說大概需要 1200 像素——但 PDF 把 4000 像素全部存了進去。
四張這樣的照片,你就有了一個 30 MB 的檔案,而它看得見的內容其實 2 MB 就裝得下。判斷方式:一份有照片的文件,檔案大小大約等於原始圖片加總。
掃描檔不是「含有文字的文件」,是「含有文字照片的文件」,一頁一張。每一頁都背著一張整頁大的圖,這就是為什麼 20 頁的掃描檔比 20 頁的文字 PDF 大得多。
測試只要兩秒:試著選取一個字。如果游標抓不到任何文字,那每一頁都是圖。600 dpi 的彩色掃描是極端案例;同一份文件用 300 dpi 灰階掃,常常只有十分之一大,而且完全讀得清楚。
PDF 會內嵌字型,讓文件在哪裡看起來都一樣——那正是這個格式存在的意義。但一套完整的中日韓字型光自己就可能好幾 MB,而一份用了四種字體的文件就會嵌四套。
子集化——只嵌入實際用到的字——可以解決大部分問題,而且現在多數匯出器預設就會做。如果你的不會,徵兆就是:內容明明很少,檔案卻大得莫名其妙。
PDF 支援增量更新:編輯後儲存時,新資料可以直接接在後面,而不是重寫整個檔案。這樣做二十次,檔案就背著二十層,包括已經看不見的內容。
這就是為什麼你每次加註解,PDF 都會變大,就算視覺上什麼都沒增加。**另存成一個新的 PDF**,而不是覆蓋舊檔,就會把歷史丟掉。
頁首的一個標誌,被一個認不出「這是同一張圖」的工具分別放在四十頁上,就可能被存四十次。做得好的匯出器會去重;不是每個都會,而由多份文件合併而成的檔案是常見的犯人。
壓縮之前,先弄清楚你面對的是什麼:
檢視 PDF 的內部結構可以看到頁數、圖片數和字型是怎麼分佈的,很快就能定案。
圖片是主因,所以:放進文件之前先降低解析度,或是壓縮做好的 PDF——那會把圖片用合理的解析度重新編碼。這是唯一一個經常能砍掉八成以上的解法。
掃描檔的話,如果紙本還在,用 300 dpi 灰階重掃。紙本不在了,壓縮 PDF 會把頁面圖片重新編碼,效果是一樣的。
歷史和重複資源,就重新匯出成新檔,不要原地儲存。
有一件事不要做:**同一份 PDF 反覆壓縮。**每壓一次都是在重新編碼已經失真的圖,而文字部分大小完全沒變——所以你損失了畫質卻沒換到多少空間。從你手上最好的版本壓一次就好。