procedure ConfigureSystemFontProvider(const Provider: IPdfSystemFontProvider; const Policy: TPdfSystemFontPolicy);
Installeert een procesbrede lettertypetoewijzer van de applicatie via de native systeemlettertype-callbackinterface van PDFium
Roep dit aan vóór de eerste LoadLibrary of vóór het openen van enig TPdf-document
Aanroepen terwijl PDFium is geladen verhoogt EPdfError, zodat native lettertypehandles nooit langer kunnen bestaan dan hun providerconfiguratie
IPdfSystemFontProvider.ResolveFont ontvangt de gevraagde face, weight, cursieve status, charset en pitch family
Geef True terug met een facenaam, een volledige TrueType-, TrueType Collection- of OpenType-byte-array, charset en optionele TTC-index
De provider kan op PDFium-workerthreads draaien en moet thread-safe zijn
Excepties worden afgevangen op de native callbackgrens en tellen als mislukte providerresponsen
TPdfSystemFontPolicy.Default staat native fallback en face-substitutie toe, beperkt elk aangeleverd lettertype tot 64 MiB en bewaart tot 32 aanvraagresultaten in een begrensde LRU-cache
Zet AllowDefaultFallback op False wanneer elke beslissing over ontbrekende lettertypen door de applicatie moet worden genomen
Zet AllowFaceSubstitution op False om een respons af te wijzen waarvan de facenaam afwijkt van de gevraagde naam
Een MaxCacheEntries van nul schakelt aanvraagcaching uit
ConfigureSystemFontCacheGovernor kan bewaarde lettertypebytes bovendien onder een gedeeld budget over caches plaatsen
GetSystemFontProviderStatistics geeft een TPdfSystemFontStatistics-momentopname terug met Configured, Installed, MapRequests, CacheHits, ProviderHits, DefaultFallbackHits, RejectedProviderResponses, FailedRequests, FontDataRequests, ActiveHandles, CachedFonts, CachedFontBytes en CacheEvictions
De momentopname kan veilig worden opgevraagd terwijl PDFium aan het renderen is
Roep UnloadLibrary aan vóór ClearSystemFontProvider
Wissen zet de provider, het beleid, de cache en de statistieken terug
Aanroepen terwijl PDFium geladen blijft verhoogt EPdfError
var
Policy: TPdfSystemFontPolicy;
begin
UnloadLibrary;
Policy := TPdfSystemFontPolicy.Default;
Policy.AllowDefaultFallback := False;
ConfigureSystemFontProvider(MyFontProvider, Policy);
LoadLibrary;
end;