zoukankan      html  css  js  c++  java
  • 如何在报表打印时,将多页合为一页

    在这篇文章中,我想讲解一下ReportPage对象的PrintOnPreviousPage属性。它是如何起作用的?如果你有一份两页的报表,可以在第二页设置该属性为true,然后,如果第一页留有空余空间,则第二页的对象将部分或全部被移动到第一页。这样,你可以在打印报表时节省纸张,或者只是简单地改善报表的外观(如果页面上的空白让报表看上去不协调的话)。这些对于一般报表页面都很有用。但是,如果你使用了UnlimitedHeight或UnlimitedWidth属性,则必须遵循一定的限制才能连接页面:

    • 页面必须启用UnlimitedHeight或UnlimitedWidth属性;
    • 如果两个页面都启用了UnlimitedHeight属性,则它们必须具有相同的宽度,否则启用UnlimitedWidth属性;
    • 对于你想要与前一个页面合并的页面,必须启用PrintOnPreviousPage属性。

    如果你不遵守这些限制,则页面将不会合并。合并不限数量的页面的功能从v2017.1.13开始可用。

    现在我们来练习一下。创建一个包含两个页面的报表:

    报表打印 页面合并

    和:

    报表打印 页面合并

    页面宽度都是21厘米。这两个页面都启用了UnlimitedHeight属性。对于第二页,启用PrintOnPreviousPage属性。运行报表:

    报表打印 页面合并

    可以看到页面合二为一了。现在,将其中一个页面的工作表宽度从21更改为22:

    报表打印 页面合并

    页面没有合并。

    现在,为这两个页面启用UnlimitedWidth属性:

    报表打印 页面合并

    页面再次合并了。第三页的要求与第二页的要求相同。如果我们禁用第二页的PrintOnPreviousPage属性,并在第三页启用。这将只合并第二和第三页:

    报表打印 页面合并

    就是这样,现在你可以使用PrintOnPreviousPage属性和“无限”页面,将有多页的报表合为一页。

  • 相关阅读:
    第一阶段大作业 文件上传格式
    第一阶段大作业 数据字典的修改
    设计模式 C++实现职责链模式 (顺便复习C++)
    Numpy学习
    2019版:第二章:(1)Redis 概述
    第一章:(6)Dubbo 与 SpringBoot 整合
    第一章:(5)Dubbo 监控中心
    2019版:第一章:(2)NOSQL 数据库
    2019版:第二章:(3)Redis 其他相关知识
    2019版:第一章:(1)技术发展
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/8349770.html
Copyright © 2011-2022 走看看