THotPDF 匯入資源的去重複處理

把頁面從一個或多個來源文件複製到同一個目的地時,重複使用等價的不可變資源

Delphi 語法

function GetImportedResourceDedupStatistics(
  out Statistics: THPDFImportedResourceDedupStatistics): boolean;
procedure ClearImportedResourceDedupCache;

說明

CopyPageFromDocument 與相關的圖形複製路徑,會為間接的 image、Form XObject、Pattern、內嵌字型程式、Font 與 ExtGState 資源建立標準化的 SHA-256 指紋。字典鍵先排序再雜湊,間接依賴會被解析,串流內容則在不改變其目前位置的前提下完成雜湊

快取屬於目的地文件,跨多次頁面複製與不同來源文件實例都持續可用。新文件或已載入的剖析圖形開始時,或圖形交易 commit 或 rollback 時,快取會自動清空

GetImportedResourceDedupStatistics 傳回快取資源數,外加快取命中與未命中次數。ClearImportedResourceDedupCache 會清掉條目與計數器,但不改動目的地文件裡已存在的物件

只有間接資源會被共用。頁面字典、註解、內容串流與任意可變字典仍會收到獨立副本

另請參閱 CopyPageFromDocument