PDFium Delphi Component Docs

GeneratePagedLayout Método

Componente: TPdf  ·  Unidades: PDFium, FPdfLayout

Syntax

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

Description

Mede e pagina o layout enquanto serializa cada comando no armazenamento posicionável de propriedade ou referenciado por PagedPlan

Após a medição, o método materializa um array de comandos de página por vez, emite essa página pelas mesmas APIs nativas de objetos de página do PDFium usadas por GenerateLayout, faz o flush, libera o array local e segue para a próxima página

Storage and cache

Use um TFileStream, TMemoryStream ou TPdfRandomAccessStore dedicado; o stream deve oferecer suporte a seek, leitura, gravação, redimensionamento e uso exclusivo pelo tempo de vida do plano paginado

MaxCommandCount, MaxStorageBytes, MaxPageCommands e MaxSourceCount rejeitam planos excessivos, enquanto MaxCachedPages limita o cache LRU interno e pode ser zero

CommandCount, StorageByteCount, os contadores de cache e a ocupação de pico expõem comportamento mensurável

Result

Plan.Commands é vazio por design; as configurações de página, a contagem de páginas, os elementos semânticos, as contagens de conteúdo, as medições e os totais de referências estáveis de página permanecem disponíveis

PagedPlan.MaterializePage pode restaurar uma página completa mais tarde, incluindo o corpo mais os segmentos de cabeçalho e rodapé gravados separadamente

Limitations and safety

Este método gera um layout sem tag; use GenerateTaggedLayout quando forem exigidos um plano de comandos completo em memória e o pós-processamento da árvore de estrutura

O PDFium retém o documento autorado e suas páginas nativas até o save ou close, de modo que esta API limita a materialização de comandos de alto nível e não a memória do documento PDFium

Qualquer PDF de origem referenciado ou TPdfLayoutCachedNode deve sobreviver à geração e à materialização posterior, e destinos assinados exigem autorização explícita

Falha de medição ou de emissão redefine o armazenamento de comandos incompleto e desfaz toda página acrescentada pela chamada

See Also

GenerateLayout, GenerateTaggedLayout, FPdfLayout, Armazenamento de trabalho de acesso aleatório