PDFium Delphi Component Docs

GeneratePagedLayout metode

Komponent: TPdf  ·  Enheder: PDFium, FPdfLayout

Syntax

function GeneratePagedLayout(Layout: TPdfLayoutDocument; PagedPlan: TPdfLayoutPagedPlan; out Plan: TPdfLayoutPlan; AllowSignedDocument: Boolean = False): Boolean;

Description

Måler og paginerer layoutet, mens hver kommando serialiseres i den seekable storage, som PagedPlan ejer eller refererer til

Efter målingen materialiserer den ét side-kommandoarray ad gangen, udsender siden gennem de samme native PDFium page-object-API'er som GenerateLayout, flusher den, frigiver det lokale array og fortsætter med næste side

Storage and cache

Brug en dedikeret TFileStream, TMemoryStream eller TPdfRandomAccessStore; streamen skal understøtte seek, read, write, resize og eksklusiv brug i den pagede plans levetid

MaxCommandCount, MaxStorageBytes, MaxPageCommands og MaxSourceCount afviser excessive planer, mens MaxCachedPages afgrænser den interne LRU-cache og må være nul

CommandCount, StorageByteCount, cache-tællere og maksimal besættelse eksponerer målebar adfærd

Result

Plan.Commands er med vilje tom; sideindstillinger, sideantal, semantiske elementer, indholdsantal, målinger og stabile side-reference-totaler forbliver tilgængelige

PagedPlan.MaterializePage kan senere genskabe en komplet side, inklusive body plus separat skrevne header- og footer-segmenter

Limitations and safety

Denne metode genererer et untagged layout; brug GenerateTaggedLayout, når der kræves en komplet in-memory kommandoplan og efterbehandling af strukturtræet

PDFium beholder det autoredigerede dokument og dets native sider indtil save eller close, så dette API afgrænser materialisering af kommandoer på højt niveau, ikke PDFium-dokumenthukommelse

Enhver refereret kilde-PDF eller TPdfLayoutCachedNode skal overleve genereringen og senere materialisering, og signede destinationer kræver eksplicit autorisation

Fejl i måling eller udsendelse nulstiller ufuldstændig kommandolagring og ruller hver side, som kaldet tilføjede, tilbage

See Also

GenerateLayout, GenerateTaggedLayout, FPdfLayout, Random access working storage