DecodeAllStreams
文件屬性、最佳化
描述
就地展開所選文件中每個單純的 FlateDecode 串流,讓儲存後的檔案帶有可讀的內容串流、中繼資料與結構
語法
Delphi
Function TPDFlib.DecodeAllStreams: Integer;傳回值
| 0 | 未選取文件,或沒有東西可展開。 |
|---|---|
| N | 已展開的串流數量。 |
備註
壓縮的物件串流會先具體化,成員才能在展開後保留。影像 XObject 維持原編碼(展開只會讓檔案暴增,可讀性毫無 gain);帶預測參數的串流、多重 filter 鏈與交叉參照串流也一樣。損毀的資料保持原狀,不會被截斷
搭配 SetObjectStreamMode(0) 讓所有物件都在頂層,結果就是一份完全展開的副本,diff 工具、鑑識審查與支援案例都能直接閱讀——正是 RecompressStreams 的反向操作。
範例
PDF.LoadFromFile('packed.pdf', '');
PDF.DecodeAllStreams;
PDF.SetObjectStreamMode(0);
PDF.SaveToFile('expanded.pdf');另見
RecompressStreams, SetObjectStreamMode, CompressContent, CheckDocumentStructure