Compose
Layout da página, paginação, Form XObjects
Descrição
Método abstrato de TPDFlibDynamicComponent que desenha um fragmento do componente em coordenadas locais e informa seus limites usados e estado de continuação
Sintaxe
Function TPDFlibDynamicComponent.Compose(
Const Context: TPDFlibDynamicPageContext;
Out ComposeResult: TPDFlibDynamicPageResult): Integer;
Virtual; Abstract;
Parâmetros
Context.LibraryInstance | Instância TPDFlib anexada pela qual o fragmento deve desenhar |
|---|---|
Context.PageNumber | Número da página de destino, mesmo que a biblioteca selecione uma página temporária isolada enquanto o callback é executado |
Context.CompositionIndex | Número com base em um que o fragmento recebe ao ser confirmado |
Context.DestinationLeft, Context.DestinationTop | Posição do slot de destino repassada da chamada de composição |
Context.AvailableWidth, Context.AvailableHeight | Tamanho natural da tela do Form XObject circundante |
Registro de resultado
HasContent | True quando o fragmento desenhou conteúdo visível |
|---|---|
HasMoreContent | True quando o componente pode produzir outro fragmento |
UsedWidth, UsedHeight | Retângulo usado que começa na coordenada local zero e deve delimitar todo o conteúdo visível do componente |
Observações
Resultados de conteúdo exigem valores finitos e positivos de UsedWidth e UsedHeight dentro de AvailableWidth e AvailableHeight
Um resultado sem conteúdo só é válido quando HasMoreContent é False e ambas as dimensões usadas são zero
O callback pode usar APIs de desenho e de conteúdo, mas não deve mudar documentos, páginas ou contêineres de desenho aninhados
A sessão valida ComposeResult por meio de ValidComposeResult antes de qualquer decisão de colocação
Retornar zero rejeita a tentativa sem confirmar o estado do componente ou do destino; exceções lançadas se propagam depois que a sessão limpa o estado temporário
Valores retornados
1 | O resultado do fragmento é oferecido para validação e posicionamento |
|---|---|
0 | A tentativa é rejeitada e nenhum estado de componente ou destino muda |
Veja também
TPDFlibDynamicComponent, TPDFlibDynamicPageContext, TPDFlibDynamicPageResult, ValidComposeResult, ComposeNextLayout, CloneComponent