求教:预览打印的时候,如何实现“打印偏移”设置?有偿解答

jackyzhuxmn 2011-09-26 09:41:20
我们之前是用fastreport来做报表的,实现了在打印时,设置“打印偏移”来解决套打的问题。如下图

http://user.qzone.qq.com/33678579/infocenter


但是现在新系统,我们换用“水晶报表”来设计报表,不知道该怎么实现“打印偏移”了,这下麻烦了,请问哪位高手知道,帮帮忙(有偿的),QQ:33678579.
...全文
427 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
山东蓝鸟贵薪 2011-09-26
  • 打赏
  • 举报
回复
fastreport
是DELPHI中的控件
阿泰 2011-09-26
  • 打赏
  • 举报
回复
水晶报表可以通过设置页边距的方式来控制页面内容的偏移

参考代码

CrystalReport1 report = new CrystalReport1(); //Report为你自己的报表名
PageMargins margins;
margins = Report.PrintOptions.PageMargins;
margins.bottomMargin = 250;
margins.leftMargin = 350;
margins.rightMargin = 350;
margins.topMargin = 350;
// Apply the page margins.
Report.PrintOptions.ApplyPageMargins(margins);

// Select the printer.
string printerName = "\\\\局域网机器名\\打印机名(例如HP 2100)"; //本地打印机直接指定名称
Report.PrintOptions.PrinterName = printerName; //指定打印机名称
Report.PrintOptions.PaperSize = PaperSize.PaperA4; //指定纸张尺寸

report.PrintToPrinter(1, true, 1, 4);


打印相关的参数的说明:

PrintOptions类,提供用于设置报表打印选项的属性和方法。

PrintOptions成员:
PageContentHeight---Int32,获取页面内容的高度
PageContentWidth---Int32,获取页面内容的宽度
PageMargins---获取报表的边距
PageOrientation---获取或设置打印机纸张方向
Pagesize---获取或设置当前打印机纸张的大小
PrinterName---字符串,获取或设置报表所使用的打印机名称

ReportDocument.PrintToPrinter方法
public virtual void PrintToPrinter( int nCopies, bool collated, int startPageN, int endPageN )
nCopies 指明要打印的分数
collated 指明是否逐份打印
startPageN 指明要打印的第一页
endPageN 指明要打印的最后一页

jackyzhuxmn 2011-09-26
  • 打赏
  • 举报
回复
没有人会吗?

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧