CloneComponent

Partes de documentos, dados variáveis, edição de documentos

Descrição

Método abstrato de TPDFlibDynamicComponent que devolve uma cópia independente do chamador do componente, incluindo todo o estado de paginação mutável

Sintaxe

Function TPDFlibDynamicComponent.CloneComponent:
  TPDFlibDynamicComponent; Virtual; Abstract;

Observações

As substituições têm de copiar todos os campos que Compose muta, porque a sessão compõe num clone de trabalho e só consolida esse clone depois de o respetivo Form XObject ser validado e colocado A sessão depende do clone em vários pontos:

AttachComponent clona duas vezes para as instantâneas inicial e atual, ComposeNextLayout clona uma vez por tentativa para o componente de trabalho, e CloneCurrentComponent clona a instantânea consolidada para inspeção O chamador de

CloneComponent é proprietário da instância devolvida e liberta-a independentemente do componente de origem Um resultado

Nil é tratado pela sessão como uma falha de clonagem, que então rejeita a operação de origem sem alterar o estado guardado

Exemplo

function TNumberedPagesComponent.CloneComponent:
  TPDFlibDynamicComponent;
begin
  Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;

Valores devolvidos

Nova instânciaUma cópia independente cujas chamadas Compose posteriores não podem afetar o componente de origem
NilA substituição não conseguiu produzir uma cópia; a sessão rejeita AttachComponent e as tentativas de composição que dependem do clone

Consulte também

TPDFlibDynamicComponent, TPDFlibDynamicComponentSession, Compose, CloneCurrentComponent, AttachComponent