Delphi 查找使用eDocEngine生成的表的结尾
我们有几个报告使用将单独的表输出到PDF中,只要数据正确地放入单元格中,这些报告都可以正常工作 问题是,当数据包装时,它会更改行高,使表变大。这意味着当我们输出下一个表时,它会重叠并破坏报告输出。目前,我们使用了一些变通方法,比如测试字符串长度,看看是否将换行或向下一个表顶部添加一个常量,以便在顶部表稍微增长时添加一点空间 我希望能够在调用Delphi 查找使用eDocEngine生成的表的结尾,delphi,pdf-generation,Delphi,Pdf Generation,我们有几个报告使用将单独的表输出到PDF中,只要数据正确地放入单元格中,这些报告都可以正常工作 问题是,当数据包装时,它会更改行高,使表变大。这意味着当我们输出下一个表时,它会重叠并破坏报告输出。目前,我们使用了一些变通方法,比如测试字符串长度,看看是否将换行或向下一个表顶部添加一个常量,以便在顶部表稍微增长时添加一点空间 我希望能够在调用EndTable后获得表格的高度或底部,以便相应地调整后续表格 我们使用的是Delphi2007,eDocEngine 2.5 Type TExposePro
EndTable
后获得表格的高度或底部,以便相应地调整后续表格
我们使用的是Delphi2007,eDocEngine 2.5
Type TExposeProtectedeDocEngine = Class (TgtCustomDocumentEngine)
public
function GetTableBottom: Double;
function GetTableTop: Double;
Function GetTableHeight: Double;
End;
{ TExposeProtectedeDocEngine }
function TExposeProtectedeDocEngine.GetTableTop: Double;
begin
if Assigned(FTableItem) then
begin
Result := FTableItem.Y;
end
else
Result := 0;
end;
function TExposeProtectedeDocEngine.GetTableHeight: Double;
var
i: Integer;
begin
Result := 0;
if Assigned(FTableItem) then
begin
for i := 0 to FTableItem.RowHeights.Count - 1 do
Result := Result + Int64(FTableItem.RowHeights[i]);
end;
end;
function TExposeProtectedeDocEngine.GetTableBottom: Double;
begin
Result := GetTableHeight + GetTableTop;
end;
function GetPreviousTableBottom(Engine : TgtCustomDocumentEngine): Double;
begin
Result := TExposeProtectedeDocEngine(Engine).GetTableBottom;
end;