Cache Infrastructure

HotPDF tillhandahåller minnescache med övre gräns plus beständiga cachar för återanvändbara typsnittsdelmängder och renderade sidor

Viktad minnes-cache

THPDFWeightedCache i HPDFCache äger TObject -värden, indexerar dem med AnsiString, och kastar ut de minst nyligen använda värdena tills deras sammanlagda vikt ryms i MaxBytes

Innehållsnycklar

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

Båda funktionerna returnerar samma hexadecimala SHA-256-nyckel med gemener för samma innehåll

HPDFCacheKeyOfStream hashar utan att allokera en andra bytearray i full storlek, läser sökbara strömmar från position noll och återställer deras ursprungliga position

Decoder-cache för laddade typsnitt

Varje THotPDF instans behåller framgångsrikt parsade decodrar för laddade typsnitt i en dokumentomfattande viktad LRU-cache

Shardad decoder-cache för laddade bilder

Varje THotPDF instans samordnar återanvändning av dekodning av laddade bilder via 16 oberoende låsta metadatashards

ICC-transformcache

HPDFICC delar kompletta källa-till-sRGB-transformer via en trådsäker viktad LRU-cache på 64 MiB, inklusive korrektur- och utdataprofiler när sådana är konfigurerade

Beständig typsnittsdelmängds-cache

Ställ in THotPDF.FontSubsetCacheFolder för att aktivera återanvändbara TrueType- och OpenType-delmängdsresultat medan EnableFontSubsetting är aktiv

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

Beständig cache för renderade sidor

Ställ in THotPDF.RenderCacheFolder för att aktivera disknivån som används efter cachen för renderade sidor i minnet

Ägandeskap

Relaterade API:er