PDFium Component Docs

Gecachte layoutnodes

Component: TPdf  ·  Unit: FPdfLayout

Syntax

procedure TPdfLayoutDocument.AddCachedNode(Node: TPdfLayoutCachedNode; Height: Single = 0; Width: Single = 0);

Measurement cache

BuildPlan cachet het volledig gemeten plan op basis van paginabeperkingen, iteminhoud, lettertype, stijl, bronidentiteit, gereserveerde paginacijfers en TPdfLayoutMeasurer.CacheIdentity

Een overeenkomende aanroep keert terug zonder tekst opnieuw te meten en rapporteert het resultaat via CacheHitCount; gewijzigde inhoud levert CacheMissCount op en vervangt de snapshot

Roep InvalidateCache aan om de opgeslagen snapshot vrij te geven, of wanneer een eigen meetimplementatie één identiteit houdt maar van gedrag verandert

Lazy nodes

Leid af van TPdfLayoutCachedNode en override BuildContent om de nodelayout pas bij de eerste plaatsing aan te maken

Een basisknooppunt kan ook rechtstreeks via Content gevuld worden

De aanroeper is eigenaar van elk knooppunt en moet dit in leven houden totdat GenerateLayout terugkeert

Native reuse

De eerste plaatsing rendert één private single-pagelayout en maakt één aan de bestemming gebonden XObject aan met FPDF_NewXObjectFromPage

Elke herhaalde plaatsing maakt een lichtgewicht Form-object van datzelfde XObject, terwijl ReusedXObjectCount de vermeden template-builds rapporteert

Safety

Node-inhoud moet op één pagina passen waarvan de afmetingen overeenkomen met die van de node-constructor

Recursieve nodeverwijzingen worden afgewezen en de buitenste append-transactie rolt alle door de aanroep gemaakte pagina's terug

Roep Invalidate aan om een lazy node met een override opnieuw te bouwen nadat de externe invoer ervan veranderd is

See Also

GenerateLayout, CreateXObjectFromPage