Compose

Seitenlayout, Paginierung, Form XObjects

Beschreibung

Abstrakte Methode von TPDFlibDynamicComponent, die ein Fragment der Komponente in lokalen Koordinaten zeichnet und ihre verwendeten Grenzen und ihren Fortsetzungszustand meldet

Syntax

Function TPDFlibDynamicComponent.Compose(
  Const Context: TPDFlibDynamicPageContext;
  Out ComposeResult: TPDFlibDynamicPageResult): Integer;
  Virtual; Abstract;

Parameter

Context.LibraryInstanceAngehängte TPDFlib-Instanz, über die das Fragment zeichnen soll
Context.PageNumberZielseitennummer, obwohl die Bibliothek während des Callbacks eine isolierte temporäre Seite auswählt
Context.CompositionIndex1-basierte Nummer, die das Fragment bei der Übernahme erhält
Context.DestinationLeft, Context.DestinationTopVom Compose-Aufruf durchgereichte Position des Zielslots
Context.AvailableWidth, Context.AvailableHeightNatürliche Leinwandgröße des umgebenden Form XObject

Ergebnisdatensatz

HasContentTrue, wenn das Fragment sichtbaren Inhalt gezeichnet hat
HasMoreContentTrue, wenn die Komponente ein weiteres Fragment erzeugen kann
UsedWidth, UsedHeightVerwendetes Rechteck, das bei der lokalen Koordinate null beginnt und sämtlichen sichtbaren Komponenteninhalt begrenzen soll

Anmerkungen

Inhaltsergebnisse erfordern endliche positive Werte UsedWidth und UsedHeight innerhalb von AvailableWidth und AvailableHeight Ein Ergebnis ohne Inhalt ist nur gültig, wenn

Ein Ergebnis ohne Inhalt ist nur gültig, wenn HasMoreContent False ist und beide verwendeten Abmessungen null sind

Der Callback darf Zeichen- und Inhalts-APIs verwenden, darf aber keine Dokumente, Seiten oder verschachtelte Zeichencontainer ändern

Die Sitzung validiert ComposeResult über ValidComposeResult, bevor irgendeine Platzierungsentscheidung fällt

Null zurückzugeben lehnt den Versuch ab, ohne Komponenten- oder Zielzustand zu bestätigen; ausgelöste Ausnahmen pflanzen sich fort, nachdem die Sitzung den temporären Zustand aufgeräumt hat

Rückgabewerte

1Das Fragmentergebnis wird zur Validierung und Platzierung vorgelegt
0Der Versuch wird abgelehnt, und es ändert sich kein Komponenten- oder Zielzustand

Siehe auch

TPDFlibDynamicComponent, TPDFlibDynamicPageContext, TPDFlibDynamicPageResult, ValidComposeResult, ComposeNextLayout, CloneComponent