ComposeNext

Diseño de página, paginación, Form XObjects

Descripción

Compone un fragmento dinámico con estado en una ranura de página de destino usando la política de maquetación predeterminada e informa de la colocación final

Sintaxis

Function TPDFlibDynamicComponentSession.ComposeNext(Page: Integer;
  Left, Top, Width, Height: Double;
  Out Placement: TPDFlibDynamicPagePlacement): Integer;

Parámetros

PageNúmero de página de destino existente basado en 1
Left, TopPosición de destino superior izquierda en las unidades actuales del documento
Width, HeightTamaño finito y positivo de la ranura de destino, que también se convierte en el tamaño del lienzo natural
PlacementRegistro de colocación emitido que describe el fragmento confirmado

Observaciones

La llamada construye sus opciones a través de CreateLayoutOptions(Width, Height) y reenvía a ComposeNextLayout, así que hereda el manejo de desbordamiento dopReject, la alineación dhaLeft y dvaTop, la paginación dppAllowSplit y ningún mínimo de espacio de flujo

El rectángulo usado debe caber en la ranura, porque la política de desbordamiento por defecto rechaza en vez de recortar o escalar

ComposeNextLayout para el comportamiento completo de colocación, reintento y transformación

Ejemplo

repeat
  Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
    Placement);
  if Status = PDF_DYNAMIC_COMPONENT_MORE then
    PageNumber := PDF.NewPage;
until Status <> PDF_DYNAMIC_COMPONENT_MORE;

Valores devueltos

PDF_DYNAMIC_COMPONENT_ERRORLa validación de entrada, retrollamada, geometría, desbordamiento o colocación falló sin confirmar estado
PDF_DYNAMIC_COMPONENT_MOREEl fragmento se confirmó y queda más contenido
PDF_DYNAMIC_COMPONENT_COMPLETEEl fragmento completó la sesión o la sesión ya estaba completa
PDF_DYNAMIC_COMPONENT_RETRYLa política de paginación o de espacio de flujo aplazó la prueba no confirmada a otra ranura

Véase también

ComposeNextLayout, CreateLayoutOptions, TPDFlibDynamicComponentSession, Compose, Completed, CompositionCount