TPDFlibTableExporter

Tables

説明

TPDFlibTableExporter は任意の TDataSet(FireDAC のメモリテーブル、ClientDataSet、クエリー結果など)を順にたどり、フィールドとレコードを写し取る PDFlibPas テーブルとして描画します

エクスポーターは Table API(CreateTable、SetTableCellContent、DrawTableRows)の上に構築され、ヘッダーのスタイル、ゼブラ縞、自動的なページ継続を追加します

データセット抽象だけに依存するため、メインライブラリと一緒にコンパイルでき、特定のデータセットエンジンを持ち込みません。DataSetExport デモはメモリテーブルで動かします

構文

Delphi

TPDFlibTableExporter = Class(TObject)
  Public
    Constructor Create(APDF: TPDFlib);
    Function ExportDataSet(ADataSet: TDataSet;
      Const AOptions: TPDFlibTableExportOptions): Boolean;
    Property OnFieldFilter: TPDFlibTableFieldEvent Read FOnFieldFilter Write FOnFieldFilter;
  End;

メソッド

Createエクスポーターを、対象ドキュメントを所有する TPDFlib インスタンスに結び付けます
ExportDataSet指定オプションでデータセットを現在のドキュメントへ描画します。ドキュメントには既に 1 ページ以上必要で、成功すると True が返ります

パラメータ

OnFieldFilter各フィールドのレイアウト前に発火するイベントです。TPDFlibTableFieldSpec を Include := False にして返せば、バイナリ blob や内部キーのようなフィールドを除外できます

備考

データ型がバイナリ blob のフィールドは自動的に除外されます。セルに入れられるテキスト表現がないためです

ドキュメントはミリメートルと左上原点に設定しておく前提です。PDFlibExportDataSet はこの設定を自分で行います

関連項目

PDFlibExportDataSet, DefaultTableExportOptions, TPDFlibTableExportOptions, TPDFlibTableFieldSpec, CreateTable