在QuickReport上计算真实的TQRMemo高度

时间:2018-10-02 12:39:40

标签: delphi quickreports

我在QuickReport上有几个不同字体的备忘录。现在,我想知道所有物体的最高点(在下面设置一些形状)。怎么样?如果我为每行和每行多行计算TextHeight计数(aMemo.ParentReport.TextHeight(aMemo.Font,'W')* aMemo.Lines.Count),则结果不正确-QuickReport打印行的高度和位置都很奇怪某些字体的形状太高或太低。

1 个答案:

答案 0 :(得分:0)

好,知道了。 TextHeight不能从QuickReport调用,而可以从Printer.Canvas调用。然后将其除以打印机的Y分辨率,再除以254,再除以96。结果将是舍入的,这是TQRMemo中文本的高度的真实值。从QuickReport打印之前,无法访问所有值。根据相同的属性(例如,通过TQuickRep.TextHeight方法进行打印),基于相同的属性返回不实数值是非常“聪明”的。