公司要更新的新的收费凭证,是B5纸大小的,使用代码打印,代码如下.
收费凭证.SetDataSource(dt2);
收费凭证.OpenSubreport("frm收费凭证管理2014-缴费清单.rpt").SetDataSource(ds报表数据源.Tables["打印清单"]);
收费凭证.OpenSubreport("frm收费凭证管理2014-缴费明细.rpt").SetDataSource(dt3);
收费凭证.PrintOptions.PrinterName = strDefaultPrinter;
收费凭证.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Portrait;
收费凭证.PrintOptions.PaperSource = CrystalDecisions.Shared.PaperSource.FormSource;
System.Drawing.Printing.PaperSize ps = new System.Drawing.Printing.PaperSize("Your", 257, 182);
ps.RawKind = 257;
收费凭证.PrintOptions.PaperSize = (CrystalDecisions.Shared.PaperSize)ps.RawKind;
PageMargins page = new PageMargins();
page.bottomMargin = 50;
page.leftMargin = 100;
page.rightMargin = 50;
page.topMargin = 50;
收费凭证.PrintOptions.ApplyPageMargins(page);
收费凭证.PrintToPrinter(1, true, 1, 1);
我不知道是不是我纸张大小定义不对,还是代码错误,总之打印出来的报表大小只有200x160左右,就是说完全对应不了收费凭证的打印模版,B5大小应该是257x182,但是大小不对,报表数据还被限制成那样,有的数据甚至被盖住显示不出来,求大神解决,报表的打印机设置我都设置成B5大小,但是还是这样,菜鸟求助。。。。。
以下是报表截图

------解决思路----------------------
如果是用针式打印机打印,必须设置为”横向“,否则真是乱~~~
自定义纸张,大小:25.72*18.2cm,也就是B5横向尺寸,打印时选这个