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 Long

DLL

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