AttachComponent

Dokumentteile, variable Daten, Dokumentbearbeitung

Beschreibung

Ersetzt die anfänglichen und aktuellen Komponenten-Snapshots einer TPDFlibDynamicComponentSession durch frische Klone einer dem Aufrufer gehörenden Komponente und löscht den gesamten Fortschrittszustand

Syntax

Function TPDFlibDynamicComponentSession.AttachComponent(
  AComponent: TPDFlibDynamicComponent): Integer;

Parameter

AComponentDem Aufrufer gehörende Komponente, deren CloneComponent sowohl den neuen anfänglichen als auch den neuen aktuellen Snapshot liefert

Anmerkungen

Beide Klone werden erzeugt, bevor ein gespeicherter Snapshot freigegeben wird, sodass ein CloneComponent, das Nil zurückgibt, die vorherige Komponente, den Kompositionszähler, das Abschlussflag und den Wiederholungszustand unangetastet lässt Bei Erfolg gibt die Sitzung ihre alten Snapshots frei, speichert das neue Paar und setzt

CompositionCount auf null sowie Completed, KeepTogetherRetryPending, LastRetryReason und LastRequiredSlotHeight zurück Die Sitzung übernimmt nie das Eigentum an

AComponent

AttachComponent; gespeichert werden nur die Klone, sodass der Aufrufer die übergebene Instanz unabhängig behält und freigibt Der Sitzungskonstruktor ruft Nil auf, sodass eine mit einer

Beispiel

Replacement := TNumberedPagesComponent.Create(1, 5);
try
  if Session.AttachComponent(Replacement) = 1 then
    Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
      Placement);
finally
  Replacement.Free;
end;

Rückgabewerte

1Beide Klone wurden erzeugt und als neue anfängliche und aktuelle Snapshots übernommen, wobei der gesamte Fortschrittszustand gelöscht wurde
0AComponent ist Nil, oder einer der CloneComponent-Aufrufe gab Nil zurück; die vorherigen Snapshots und der Zustand bleiben erhalten

Siehe auch

TPDFlibDynamicComponentSession, TPDFlibDynamicComponent, CloneComponent, CloneCurrentComponent, ComposeNextLayout