AutoFitTableColumns
Rozvržení stránek, tabulky
Popis
Změří stylovaný obsah buněk tabulky a přiřadí každému sloupci šířku, která přesně zaplní požadovanou šířku tabulky
Syntaxe
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);Parametry
| TableID | Popisovač vrácený funkcí CreateTable |
|---|---|
| TotalWidth | Přesná celková šířka k rozdělení mezi všechny sloupce v aktuální soustavě souřadnic |
| MinColumnWidth | Pozitivní pevné minimum aplikované na každý sloupec |
| MaxColumnWidth | Tvrdé maximum aplikované na každý sloupec a ne menší než MinColumnWidth |
Návratové hodnoty
Vrací 1, když jsou přiřazeny šířky, nebo 0 pro neznámou tabulku, nefinitní hodnoty, neplatné meze nebo nerealizovatelnou celkovou šířku
Poznámky
Text buňky se měří stejnými HTML fonty, inline styly, velikostmi textu, barvami a vodorovným odsazením, jaké používá kreslení tabulek
Jednosloupcové buňky nejprve stanoví preferované šířky, následují postupně širší sloučené buňky, které přidávají omezení napříč svými sloupcovými rozpětími
Když preferované šířky přesáhnou TotalWidth, sloupce se proporcionalně smrsknou směrem k MinColumnWidth; volná šířka se rozdělí mezi sloupce, které nedosáhly MaxColumnWidth
Odmítnuté volání je atomické a zachovává každou stávající šířku sloupce
Příklad
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);Viz také
CreateTable, SetTableColumnWidth, MergeTableCells, DrawTableRows