您打開一個 PDF,刪除幾頁,刪除一些圖像,然後儲存。文件應該更小。您剛剛刪除了內容。但當你檢查檔案大小時,它已經變大了。編輯前 2 兆位元組的文檔,刪除後現在為 2.3 兆位元組。這種違反直覺的行為並不是錯誤。這是 PDF 格式管理增量變更方式的結果,幾乎每個 PDF 編輯器都會發生這種情況,包括最著名的桌面應用程式。了解原因不僅可以解釋文件不斷增長的奧秘,還可以解釋如何防止文件發生這種情況。

PDF 編輯器如何儲存變更:增量更新與完全重寫
選擇比你想像的更重要。
當您編輯和儲存 PDF 時,應用程式有兩個選項將變更寫入磁碟。第一種方法稱為增量保存,將修改的物件附加到現有文件的末尾,而不更改原始內容。原始頁面、圖像和文字原樣保留在文件中。新物件透過稱為交叉引用表的機制引用並覆寫舊物件。第二種方法稱為完全重寫或另存為,將整個文檔讀入內存,應用所有更改,並從頭開始寫入一個全新的文件,丟棄不再引用的任何數據。
出於效能原因,大多數 PDF 編輯器預設採用增量保存。將幾千位元組的變更附加到文件末尾只需要幾分之一秒的時間。從頭開始重寫 50 MB 檔案所需的時間明顯更長,尤其是在機械硬碟或網路共用上。增量保存的使用者體驗更好:保存幾乎立即發生,並且由於原始資料從未被修改,因此中斷寫入導致損壞的風險較低。代價是刪除的內容實際上並沒有被刪除。它在交叉引用表中被標記為未使用,但實際上仍然存在於文件中(Adobe,“PDF 參考:增量更新和文件結構”,2023)。
嘗試編輯 PDF
無需安裝。直接在您的瀏覽器中工作。
多個編輯會話中孤立資料的累積
每次開啟 PDF、進行變更並執行增量儲存時,都會在檔案末端新增新的修改層。經過十次編輯會話後,檔案包含原始內容加上十層變更。其中一些變化可能是矛盾的。在會話三中新增並在會話七中刪除的影像會佔用檔案兩次空間:一次用於添加,一次用於刪除指令。刪除操作不會恢復新增操作所使用的空間。它僅告訴 PDF 閱讀器在渲染文件時忽略該圖像。
即使可見內容正在縮小,孤立資料的累積也會隨著每次保存而增加文件。從 PDF 中刪除大圖像並增量保存會從渲染輸出中刪除該圖像,但會添加數千位元組的元資料來記錄刪除操作。影像資料本身保留在檔案中,未引用但消耗空間。經過許多編輯週期,最初為 1 兆位元組的文件可能會成長到 3 或 4 兆位元組,其中一半大小由不再對可見文件產生影響的資料組成。
內容刪除後仍存在的隱藏資料類型
除了明顯的孤立影像和頁面之外,在增量保存期間還會累積幾種類型的隱藏資料。嵌入字體是一個主要貢獻者。當您編輯 PDF 中的文字並更改字體時,原始字體子集通常會保留在文件中,即使沒有可見文字仍在使用它。使用三種不同字體重新格式化三次的文件可能包含所有三個字體子集,每個子集消耗數百千位元組。 PDF 閱讀器僅使用最近引用的子集,但舊的子集仍保留在檔案資料中。
元資料和文件屬性遵循相同的模式。每次增量保存都可以更新修改日期並向文件的元資料流新增條目。較舊的元資料條目不會被刪除。頁面標籤、內部連結的命名目的地和書籤結構等文件開銷元素也可能在多個保存中累積重複或過時的條目。累積效應是,經過多次編輯和保存的 PDF 中隱藏資料的負擔越來越重,而這些資料在目前版本的文件中毫無用處。
如何在編輯後恢復文件大小
累積孤立資料的解決方案是對 PDF 執行完全重寫,大多數應用程式將其稱為「另存為」、「最佳化」或「減小檔案大小」。完全重寫讀取文件的目前狀態,包括所有增量更新,解析最終可見內容,並僅將該內容寫入新文件。孤立的圖像、未使用的字體、過時的元資料和過時的交叉引用條目都將被丟棄,因為它們沒有被最終文件狀態引用。產生的文件通常比原始文件小,尤其是在編輯過程中刪除了重要內容的情況下。
WukongPDF 的編輯 PDF 工具可有效處理您的文檔,並使用PDF 文件大小 壓縮功能進行後續編輯,可在一次操作中去除累積的孤立資料。編輯和儲存的最佳化組合可確保您與其他人共用的文件僅包含顯示文件目前版本所需的資料。對於經常編輯的文檔,在共享、存檔或上傳之前將完全重寫作為最終保存例程的一部分,可以防止文件大小在整個文檔生命週期中累積。
控制 PDF 大小的預防措施
如果您經常編輯 PDF,例如每週報告範本或協作審查的文檔,請安排定期完全重寫,而不是完全依賴增量保存。每月一次或每十次編輯會話後,使用「另存為」或等效的最佳化功能來產生乾淨的副本。保留原始版本,直到驗證優化副本正確開啟並按預期顯示所有內容,然後用最佳化版本取代原始版本。這種做法使檔案大小易於管理,而不會犧牲活動編輯會話期間快速增量保存的便利性。
對於將長期存檔的文檔,請執行完全重寫作為存檔前的最後一步。存檔的文件在再次開啟之前可能會保存數年,而在主動編輯期間方便的增量更新結構在長期儲存期間會成為一種負擔。內部結構簡單的乾淨文件不太可能遇到未來 PDF 閱讀器的相容性問題,並且儲存和備份的規模較小。歸檔前保存優化副本所需的幾秒鐘對於文件的長期健康來說是一項值得的投資。
識別文件大小的增長何時表明存在更深層的問題
雖然編輯後 PDF 文件大小增加的大多數情況是由增量保存和孤立數據解釋的,但在一次小編輯後急劇增大的文件可能表明存在不同的問題。增加一句話文字註解不應使檔案大小增加數兆位元組。如果您看到這種模式,則 PDF 可能包含結構損壞,導致儲存操作無意中複製文件的大部分內容。在這些情況下,使用「另存為」功能進行完全重寫不僅是清理步驟,而且是必要的修復。如果優化後的文件明顯較小,則原始文件已累積了大量隱藏數據,而這些數據永遠不會透過正常的增量保存來回收。
專業工作中經常使用 PDF 的使用者應該了解其典型文件的合理文件大小是多少。兩頁純文字 PDF 的大小應低於 100 KB。包含嵌入影像的 20 頁文件可能有 2 到 5 兆位元組。當文件的內容類型明顯超出這些標準時,就值得進行調查。該文件可能包含多年增量保存的孤立資料。一次PDF優化通常可以將此類文件減少百分之五十或更多,恢復儲存空間並提高開啟、共享或上傳文件時的效能。
文件大小不斷增長的現象給我們上了一課,讓我們了解 PDF 的幕後工作原理。看似簡單的文檔格式其實是一個複雜的容器,每次編輯都可以累積隱藏的歷史記錄。了解這一點有助於解釋其他看似難以解釋的 PDF 行為:為什麼顯示四個頁面的 PDF 可以包含六個頁面的數據,為什麼今天修改的文件可能顯示三年前的創建日期,以及為什麼兩個看起來相同的 PDF 可以具有截然不同的文件大小。增量保存機制不是缺陷。這是一種設計權衡,優先考慮編輯速度和資料安全而不是儲存效率,並且知道這種權衡的存在可以讓您透過定期完全重寫來有意地管理它,從而使您的文件保持簡潔、乾淨並發揮最佳性能。
下次當您從 PDF 中刪除內容並觀察文件大小增加而不是減少時,您將確切地知道發生了什麼。您編輯的孤立資料已附加到文件中,完全重寫會將其清除。曾經令人困惑的技術謎題變成了日常維護任務。
嘗試編輯 PDF
無需安裝。直接在您的瀏覽器中工作。
