THotPDF.BeginDoc-Methode

 

THotPDF.BeginDoc

THotPDF

 

Oben  Zurück  Weiter

Erstellt ein neues Dokument

 

Delphi-Syntax:

procedure BeginDoc ( Initial: boolean = false );

 

C++-Syntax:

void __fastcall BeginDoc ( bool Initial = false );

 

Beschreibung

BeginDoc startet ein neues PDF-Dokument und erstellt die erste Seite. Rufen Sie BeginDoc im Normalfall mit dem Standardparameterwert auf und zeichnen Sie anschließend auf CurrentPage

Eine THotPDF-Instanz kann beliebig viele Dokumente nacheinander schreiben. EndDoc schreibt die Datei und verwirft anschließend alles, was für sie registriert wurde: Bilder, Fonts, Formularfelder, Outlines, Dokument-JavaScript, Named Destinations, Page Labels, ICC-Profile, Output Intents und die übrigen Ressourcen. Die Seiten und Objekte des geschriebenen Dokuments bleiben im Speicher, sodass Prüfungen wie ValidatePDFUA2Structure auch nach EndDoc noch funktionieren, bis das nächste BeginDoc sie freigibt. Das nächste Dokument startet dadurch sauber, und kein Inhalt der vorherigen Datei gelangt hinein

Eigenschaften wie FileName, Version, Compression, PDFACompliance, Author und Title behalten ihre Werte für das nächste Dokument, zusammen mit Seiten-Layern, Font-Fallback-Ketten und der Auswahl der Variable-Font-Achsen. Alles, was nach EndDoc und vor dem nächsten BeginDoc registriert wird, zum Beispiel ein mit AddPDFAOutputIntent hinzugefügter Output Intent oder ein über Names hinzugefügtes Skript, gehört zum nächsten Dokument. CurrentPageNumber, PagesCount und die Layout-Diagnose des geschriebenen Dokuments bleiben bis zum nächsten BeginDoc ebenfalls lesbar

EndDoc setzt UserPassword und OwnerPassword zurück. Wenn ActivateProtection noch aktiviert ist, setzen Sie die Passwörter vor dem nächsten BeginDoc erneut; andernfalls löst BeginDoc eine Exception aus, statt ein Dokument zu schreiben, das durch leere Passwörter geschützt ist. Hat ein Feature eines Dokuments die PDF-Version automatisch erhöht (zum Beispiel auf PDF 1.4 für einen Output Intent), setzt EndDoc sie wieder auf den Wert der Eigenschaft Version zurück

 

Code Example


HPDF := THotPDF.Create( nil );
try
  HPDF.FileName := '.\Output.pdf';
  HPDF.BeginDoc;   // Start PDF document creation
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Hello World!' );
  HPDF.EndDoc;     // Finish and save PDF document

  HPDF.FileName := '.\Second.pdf';
  HPDF.BeginDoc;   // Same instance, new independent document
  HPDF.CurrentPage.TextOut( 100, 100, 0, 'Second document' );
  HPDF.EndDoc;
finally
  HPDF.Free;
end;

 

See also: EndDoc