Cache Infrastructure

HotPDF poskytuje ohraničené cachovanie v pamäti plus perzistentné vyrovnávacie pamäti pre opakovane použiteľné podmnožiny fontov a vyrenderované strany

Váhová pamäťová vyrovnávacia pamäť

THPDFWeightedCache v HPDFCache vlastní hodnoty TObject, indexuje ich podľa AnsiString a vyháňa najdlhšie nepoužité hodnoty, kým ich kombinovaná váha sa nezmestí do MaxBytes

Kľúče obsahu

function HPDFCacheKeyOfBytes(const Bytes: TBytes): AnsiString;
function HPDFCacheKeyOfStream(Stream: TStream): AnsiString;

Obidve funkcie vracajú pre ten istý obsah ten istý malými písmenami zapísaný hexadecimálny kľúč SHA-256

HPDFCacheKeyOfStream hašuje bez alokácie druhého poľa bajtov v plnej veľkosti, číta vyhľadávateľné streamy od pozície nula a obnoví ich pôvodnú pozíciu

Cache dekodérov načítaných fontov

Každá inštancia THotPDF uchováva úspešne parsované dekodéry načítaných fontov v váženej LRU cache s rozsahom dokumentu

Shardovaná cache dekódovania načítaných obrázkov

Každá inštancia THotPDF koordinuje znovupoužitie dekódovania načítaných obrázkov cez 16 nezávisle uzamknutých shardov metaúdajov

Cache ICC transformácií

HPDFICC zdieľa kompletné transformácie zdroj-sRGB cez bezpečnú pre vlákna váženú LRU cache 64 MiB, vrátane proof a výstupných profilov, keď sú nastavené

Perzistentná cache podmnožín fontov

THotPDF.FontSubsetCacheFolder nastavte na zapnutie opakovane použiteľných výsledkov podmnožín TrueType a OpenType, kým je aktívne EnableFontSubsetting

PDF.EnableFontSubsetting := True;
PDF.FontSubsetCacheFolder := 'C:\ProgramData\MyApp\HotPDF\FontSubsets';
PDF.FontSubsetCacheMaxBytes := 256 * 1024 * 1024;

Perzistentná cache vyrenderovaných stránok

THotPDF.RenderCacheFolder nastavte na zapnutie diskovej vrstvy používanej za vyrovnávacou pamäťou vyrenderovaných stránok v pamäti

Vlastníctvo

Súvisiace API