解决一纸多页–.NET web报表打印问题
卡片式报表在实际业务中很常见,比如员工信息卡、胸卡、名片等,这类报表的共同特征是:每一页报表的面积都非常小,打印的时候需要在一张纸上布局多页,页与页之间有一定的空隙,便于裁剪等。
这种报表最直接的想法,就是根据纸张大小和卡片大小,计算出每张纸可以布局的行数和列数,然后展现打印。可是一般来说,用户会要求可以配置每张纸布局的行数和列数,这就要求给用户提供配置页面,然后根据用户的配置动态计算出卡片间隙,最后展现打印。
不过事情还没完,即使是卡片式报表,也会有标题,对于卡片式报表的标题,存在两种可能:一种是随卡片一起,每个卡片都带有标题;另一种是一张纸显示一次标题,而且还要居中,每个卡片不再另行显示标题。
对于这种标题的处理,就有点罗嗦了,首先要提供配置选项让用户选择每张卡片都带标题还是每张打印纸显示一次标题;其次对于每打印纸的情况,需要先把标题拎出来单独布局,剩余的数据区的内容进行卡片式布局,整个计算还挺麻烦的。
博计报表做为一个.net报表工具,不仅可以方便地进行复杂报表的设计,而且在打印方面提供了非常灵活和强大的功能,可以方便地进行卡片式布局及各种分页打印。
实现步骤
1、设计报表;
2、定义打印属性。
效果演示


引自:.NET报表知识库
相关文章:中国报表漫谈 ; 报表工具制表能力的探讨 ; 类Excel设计器的基本标准 ; 多源关联分片介绍
其他相关内容:面向普及的报表工具 ; RAQSOFT ; 用多源关联分片设计.NET报表 ;web报表研究 ;研究BI报表设计
浏览次数:0 ; 发布日期:2009/03/08