AutoFitTableColumns
ページレイアウト、表
説明
スタイル付きテーブルセルのコンテンツを測定し、要求されたテーブル幅を正確に埋める幅を各列に割り当てます
構文
Delphi
Function TPDFlib.AutoFitTableColumns(TableID: Integer; TotalWidth, MinColumnWidth, MaxColumnWidth: Double): Integer;ActiveX
Function PDFlib::AutoFitTableColumns(TableID As Long, TotalWidth As Double, MinColumnWidth As Double, MaxColumnWidth As Double) As LongDLL
int DLAutoFitTableColumns(int InstanceID, int TableID, double TotalWidth, double MinColumnWidth, double MaxColumnWidth);パラメータ
| TableID | CreateTable が返すハンドル |
|---|---|
| TotalWidth | 現在の座標系ですべての列に配分する正確な総幅 |
| MinColumnWidth | すべての列に適用される正の絶対最小値 |
| MaxColumnWidth | すべての列に適用され、MinColumnWidth 以上である厳密な最大値 |
戻り値
幅が割り当てられた場合は 1、不明なテーブル、非有限値、無効な境界、または実現不能な総幅の場合は 0 を返します
備考
セルテキストは、テーブル描画に使用するものと同じ HTML フォント、インラインスタイル、テキストサイズ、色、水平パディングで測定されます
単一列セルが最初に優先幅を確立し、続いて次第に幅の広い結合セルが列スパン全体に制約を追加します
優先幅が TotalWidth を超える場合、列は MinColumnWidth に向かって比例縮小されます。余った幅は MaxColumnWidth に達していない列へ分配されます
拒否された呼び出しはアトミックで、既存のすべての列幅を保持します
例
TableID:= PDF.CreateTable(20, 3);
PDF.SetTableCellContent(TableID, 1, 1, 'Item');
PDF.SetTableCellContent(TableID, 1, 2, 'Description');
PDF.SetTableCellContent(TableID, 1, 3, 'Amount');
if PDF.AutoFitTableColumns(TableID, 495, 60, 300)= 1 then
PDF.DrawTableRows(TableID, 50, 780, 700, 1, 0);関連項目
CreateTable、SetTableColumnWidth、MergeTableCells、DrawTableRows