THotPDF.BeginDoc メソッド

 

THotPDF.BeginDoc

THotPDF

 

トップへ  前へ  次へ

新しいドキュメントを作成します

 

Delphi 構文:

procedure BeginDoc ( Initial: boolean = false );

 

C++ 構文:

void __fastcall BeginDoc ( bool Initial = false );

 

説明

BeginDoc は新しい PDF ドキュメントを開始し、最初のページを作成します。通常の使用では、既定のパラメーター値で BeginDoc を呼び出してから CurrentPage に描画します

1 つの THotPDF インスタンスは、ドキュメントを続けて何度でも書き出せます。EndDoc がファイルを書き込んだ後、そのドキュメントに登録されていたすべてのもの、画像、フォント、フォームフィールド、アウトライン、ドキュメント JavaScript、名前付きデスティネーション、ページラベル、ICC プロファイル、出力インテント、その他のリソースを破棄します。書き込まれたドキュメントのページとオブジェクトはメモリに残るため、ValidatePDFUA2Structure のような検査は EndDoc の後も機能し続け、次の BeginDoc がそれらを解放します。したがって、次のドキュメントはクリーンな状態で始まり、前のファイルの内容が流れ込むことはありません

FileName、Version、Compression、PDFACompliance、Author、Title などのプロパティは、ページレイヤー、フォントフォールバックチェーン、可変フォントの軸の選択とともに、次のドキュメントでも値が保持されます。EndDoc の後、次の BeginDoc より前に登録したもの、たとえば AddPDFAOutputIntent で追加した出力インテントや Names 経由で追加したスクリプトは、次のドキュメントに属します。書き込まれたドキュメントの CurrentPageNumber、PagesCount、レイアウト診断も、次の BeginDoc まで読み取り可能なままです

EndDoc は UserPassword と OwnerPassword をクリアします。ActivateProtection が有効のままの場合は、次の BeginDoc の前にパスワードを再設定してください。設定しない場合、BeginDoc は空のパスワードで保護されたドキュメントを書く代わりに例外を発生させます。あるドキュメントの機能が PDF バージョンを自動的に引き上げた場合(たとえば出力インテントのために PDF 1.4 へ)、EndDoc はそれを Version プロパティの値に戻します

 

コード例


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