THotPDF.BeginDoc Metodo

THotPDF.BeginDoc

THotPDF

InizioPrecedenteSuccessivo

Crea un nuovo documento

Sintassi Delphi:

procedure BeginDoc ( Initial: boolean = false );

Sintassi C++:

void __fastcall BeginDoc ( bool Initial = false );

Descrizione

BeginDoc avvia un nuovo documento PDF e crea la prima pagina. Nell'uso normale, chiamare BeginDoc con il valore predefinito del parametro e poi disegnare su CurrentPage

Un'istanza di THotPDF può scrivere un numero qualsiasi di documenti, uno dopo l'altro. EndDoc scrive il file e poi rilascia tutto ciò che era stato registrato per esso: immagini, font, campi modulo, outline, JavaScript di documento, destinazioni con nome, etichette di pagina, profili ICC, output intent e le altre risorse. Le pagine e gli oggetti del documento scritto restano in memoria, così i controlli come ValidatePDFUA2Structure continuano a funzionare dopo EndDoc, finché il BeginDoc successivo non li libera. Il documento successivo parte quindi pulito, e nessun contenuto del file precedente vi arriva

Proprietà come FileName, Version, Compression, PDFACompliance, Author e Title conservano i loro valori per il documento successivo, insieme ai livelli di pagina, alle catene di font fallback e alle selezioni di assi dei font variabili. Tutto ciò che viene registrato dopo EndDoc e prima del BeginDoc successivo, per esempio un output intent aggiunto con AddPDFAOutputIntent o uno script aggiunto tramite Names, appartiene al documento successivo. Anche CurrentPageNumber, PagesCount e le diagnostiche di layout del documento scritto restano leggibili fino al BeginDoc successivo

EndDoc cancella UserPassword e OwnerPassword. Quando ActivateProtection è ancora attivo, impostare di nuovo le password prima del BeginDoc successivo; altrimenti BeginDoc solleva un'eccezione invece di scrivere un documento protetto da password vuote. Quando una funzionalità di un documento ha alzato automaticamente la versione PDF (per esempio a PDF 1.4 per un output intent), EndDoc la riporta al valore della proprietà Version

Esempio di codice


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;

Vedi anche: EndDoc