注意报表的一个特别之处:在报表的底部有许多空白。为什么会有此情况呢?当一个报表生成时,FastReport使用用栏来填充空白之处,在每个栏显示完之后,空白部分就会减少。如果FastReport发现没有足够的空间显示下一个栏(栏的高度比报表页面剩余的高度大)就会生成一个新的页面,然后继续往下显示,直到数据显示完毕。
报表会包含的对象可能带有大文本,这也就是为什么栏的高度会非常大。因此,如果一个大的栏在页面上发现没有足够的空间供其显示时,它就会移动到下一页,于是前一页就留下了很多空白。见下图:
要限制纸张浪费,我们可以设置FastReport的一个特性,启用数据栏的“AllowSplit”属性,就会看到在报表的底部空白减少了:
数据栏是如何拆分的呢?在FastReport中,有一部分对象支持这种特性,他们是文本对象,线型对象及“RichEdit”对象。当FastReport碰到需要拆分的栏时,它按以下方式执行拆分操作:
A、 查找空间显示不可拆分的对象;
B、 对于可拆分的对象显示一部分(文本对象会显示整行);
C、 生成新的页面,然后继续显示对象;
D、 如果不可拆分对象没有足够空间显示,它会移动到下一页;在此对象下面的所有对象根据需要也会移动到下一页。
E、 按照以上方式生成数据ÿ
数据拆分
最新推荐文章于 2023-09-12 11:34:32 发布