aj510106 发表于 2017-10-25 15:28:10

请问关于A5打印

您好,我们之前用A4纸打印正常,现在由于业务要求,我们需要改成A5纸打印
我期望的打印效果是这样的,如果高度超过就自动换页

但是实际打印出来的效果是这样

报表模板外观已设置为21*14.8,即a5纸张的大小

打印机也设置成A5,但是不管设置成纵向还是横向,打印出来都是上面照片中的效果。
请问该如何解决?我使用的ar版本是ar9.谢谢。
报表模板附件在此

KearneyKang 发表于 2017-10-25 16:37:10

您好!A5的纸张相对于A4长宽都变小了,所以原来在你A$纸上打印正常的报表模板,就存在打印不完全的现象,因为纸张大小不够。你需要重新调整下您的报表使它适合A5纸张的大小就可以了。

aj510106 发表于 2017-10-25 17:29:54

KearneyKang 发表于 2017-10-25 16:37
您好!A5的纸张相对于A4长宽都变小了,所以原来在你A$纸上打印正常的报表模板,就存在打印不完全的现象,因 ...

您好,我已经在报表模板上设置为a5大小了,上传的附件就是设置后的。
打印出来就是附图的效果。

A4的短边和A5的长边是一样的
原来是21*29.7
我需要打印成21*14.8的效果
不知道怎么设置才可以显示正常。
请指教。

aj510106 发表于 2017-10-25 17:44:12

本帖最后由 aj510106 于 2017-10-25 17:52 编辑

可能我描述得不清楚
我的纸张是这样放进去的

打印出来的方向和我期望的偏了90度

我不管设置纵向还是横向,打印出来都是这个方向




aj510106 发表于 2017-10-25 17:45:53

可能我描述得不清楚
我的纸张是这样放进去的


打印出来的方向和我期望的偏了90度
我不管在打印机首选项设置纵向还是横向,打印出来都是这个方向

aj510106 发表于 2017-10-25 18:10:26

KearneyKang 发表于 2017-10-25 16:37
您好!A5的纸张相对于A4长宽都变小了,所以原来在你A$纸上打印正常的报表模板,就存在打印不完全的现象,因 ...

我需要打印成这样

KearneyKang 发表于 2017-10-25 18:25:26

您好,我知道您想实现的最终目的。
单独设置报表纸张的横向纵向只能控制报表设计或者显示时的样子,也就是预览的效果。跟打印出现是否旋转没有影响。这个设置不能影响打印机的打印。所以可能需要你去设置下打印机本身的横向或者纵向的打印

aj510106 发表于 2017-10-26 10:42:51

KearneyKang 发表于 2017-10-25 18:25
您好,我知道您想实现的最终目的。
单独设置报表纸张的横向纵向只能控制报表设计或者显示时的样子,也就是 ...

您好,我就是设置的本地打印机配置纵向还是横向都试过了,打印出来,都是竖着的,也就是表格朝左右排,而不是朝下。
望指教



KearneyKang 发表于 2017-10-26 11:49:53

您的打印是在是在什么平台下的额,看看可不可以在程序中去设置打印纸张的长宽
如下:
GrapeCity.ActiveReports.SectionReport sectionreport = new GrapeCity.ActiveReports.SectionReport();
                  sectionreport.LoadLayout(fullPath);
                  sectionreport.DataSource = dtSource;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Bottom = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Left = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Right = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Top = 0;
                  sectionreport.Document.Printer.PaperKind = PaperKind.Custom;
                  sectionreport.Document.Printer.PaperSize.RawKind = 0;
                  sectionreport.Document.Printer.PaperSize.Width = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout").Attributes["PrintWidth"].Value) / 14.4);
                  sectionreport.Document.Printer.PaperSize.Height = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout//Sections//Section").Attributes["Height"].Value) / 14.4);
                  sectionreport.PrintWidth = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout").Attributes["PrintWidth"].Value) / 14.4);
                  sectionreport.Run();

KearneyKang 发表于 2017-10-26 11:49:54

您的打印是在是在什么平台下的额,看看可不可以在程序中去设置打印纸张的长宽
如下:
GrapeCity.ActiveReports.SectionReport sectionreport = new GrapeCity.ActiveReports.SectionReport();
                  sectionreport.LoadLayout(fullPath);
                  sectionreport.DataSource = dtSource;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Bottom = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Left = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Right = 0;
                  sectionreport.Document.Printer.DefaultPageSettings.Margins.Top = 0;
                  sectionreport.Document.Printer.PaperKind = PaperKind.Custom;
                  sectionreport.Document.Printer.PaperSize.RawKind = 0;
                  sectionreport.Document.Printer.PaperSize.Width = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout").Attributes["PrintWidth"].Value) / 14.4);
                  sectionreport.Document.Printer.PaperSize.Height = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout//Sections//Section").Attributes["Height"].Value) / 14.4);
                  sectionreport.PrintWidth = (int)(Convert.ToDouble(documentxml.SelectSingleNode("ActiveReportsLayout").Attributes["PrintWidth"].Value) / 14.4);
                  sectionreport.Run();
页: [1]
查看完整版本: 请问关于A5打印