极品分享

水晶报表的宽度调整方法(设计器、代码调整、rpt文件属性)

 经过个人反复研究后,特提出一下几点意见:

设计里修改方法:

    1、在“打印设置”对话框,选择“横向”选项以横向方向打印报表。

   2、在“页面设置”对话框,缩小上边距、下边距、左边距、右边距。

   3、纵向显示所有报表对象。

    (1) 将所有报表对象旋转270度,字段、文本、图片、页码等对象。

    右击报表对象,选择"格式化",进入"格式化编辑器对话框"。选择"公用"选项卡,在"文本旋转"下拉列表框选择 270。

    (2) 纵向拉长对象,确保纵向上可以容纳显示。

    (3) 所有的节都要拉长,以容纳对象。

    (4) 页标题放在右上角,页码放在左下角或右下角。

参考:

    1、“公用”选项卡(“格式设置编辑器”对话框)

    使用“公用”选项卡为所需字段设置如取消、水平对齐以及将对象保持在一起等属性。

    2、文本旋转

    该列表包括可用于所选字段的旋转选项。使用“文本旋转”选项垂直对齐报表上的字段和基于文本的对象。

 

代码控制方法:

   水晶报表的宽度是由打印的纸张或横向、竖向打印来决定的。

   你唯一能改的就是页边距来调整下,不过这个调整也调整不了多少的。

   修改页边距方法:

private   void   PrintReport(string   printerName)   
  {   
        PageMargins   margins;   
        //Mondify By LiFuyun
        //   获取   PageMargins   结构并设置   
        //   报表的边距。   
        margins   =   Report.PrintOptions.PageMargins;   
        margins.bottomMargin   =   350;   
        margins.leftMargin   =   350;   
        margins.rightMargin   =   350;   
        margins.topMargin   =   350;   
        //应用页边距。   
        Report.PrintOptions.ApplyPageMargins(margins);   
    
        //   选择打印机。   
        Report.PrintOptions.PrinterName   =   printerName;   
    
        //   打印报表。将   startPageN   和   endPageN   
        //   参数设置为   0   表示打印所有页。   
        Report.PrintToPrinter(1,   false,0,0);   
  }   

自带的方法:

   在你创建的.rpt文件上点击右键“报表”菜单上,单击“节专家”,突出显示“详细资料”,然后选择“多列格式化”,“节专家”中将添加一个“布局”选项卡。点击“布局”标签页就可以设置报表的宽度了。但是这是多列数据情况下设置。

   例如,如果“详细资料”节中有三个字段,占了四英寸宽的空间,那么应将列宽限定在四点五英寸之内,以便能够看到所有字段信息。

   设置希望在列中每条记录之间保留的“水平”和/或“垂直”间距。

   在“打印方向”区域中选择一个方向。

   如果正在格式化的报表包含分组,则选择“格式化带有多列的组”。

   单击“确定”。

   预览报表时将会看到只显示了第一列的字段标题。要显示第二列的字段标题,请插入一个文本对象。

   以上供个人收藏和大家分享,自己这些日子研究水晶报表头都炸了,还好网上资料能收集!所以我研究过的希望给大家一点灵感和发现,避免走弯路!有任何问题请联系我!

 

 

 

参数

nCopies
指明要打印的份数。
collated
指明是否逐份打印。
startPageN
指明要打印的第一页。
endPageN
指明要打印的最后一页。

备注

若要打印所有页,请将 startPageN 参数和 endPageN 参数设置为零。 

2013-04-24 1 /
NET学习
/
标签: 

评论回复

回到顶部