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);

매개변수

TableIDCreateTable에서 반환된 핸들
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