THotPDF deduplicering av importerade resurser

Återanvänder likvärdiga oföränderliga resurser medan sidor kopieras från ett eller flera källdokument till samma mål

Delphi-syntax

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

Beskrivning

CopyPageFromDocument och relaterade grafkopieringsvägar skapar kanoniska SHA-256-fingeravtryck för indirekta bild-, Form XObject-, Pattern-, inbäddade teckensnittsprogram-, Font- och ExtGState-resurser. Ordboksnycklar ordnas före hashning, indirekta beroenden löses upp, och ströminnehåll hashas utan att dess aktuella position ändras

Cacheminnet tillhör måldokumentet och förblir tillgängligt mellan sidkopior och över olika källdokumentinstanser. Det töms automatiskt när ett nytt dokument eller en ny inläst parsegraf börjar, eller när en graftransaktion committas eller rullas tillbaka

GetImportedResourceDedupStatistics returnerar antalet cachade resurser plus cachesökträffar och -missar. ClearImportedResourceDedupCache tömer både posterna och räknarna utan att ändra objekt som redan finns i måldokumentet

Endast indirekta resurser delas. Sidordlistor, anteckningar, innehållsströmmar och godtyckliga föränderliga ordlistor fortsätter att få oberoende kopior

Se även CopyPageFromDocument