日期:2014-05-20  浏览次数:21373 次

reportviewer 打印 无法设置 自定义纸张大小?
我用vs2008开发,单据的.rdlc 文件的报表宽*高=20*5,pagesize宽*高=21*8,interactivesize宽*高=21*8,margins边距0,0,0,0
计算机上只有一个打印机,我在服务器属性自定义一个纸张是21*8,把它给这个打印机。
当我打reportviewer这个浏览报表的时候,预览是对的,但是打印出来实际的效果是不对的,它会按A4纸的格式打印。
我回头又看了一下reportviewer上的页面设置里,,它的纸张大小是letter,我改了一下,保存后,,打印还是老样子,我又进去看了一下,还是letter,也就是说根本保存不了。
咋了,,哪里有问题,请问怎么解决我这个问题??
------解决方案--------------------
打印机也要改
------解决方案--------------------
友情UP
------解决方案--------------------
打印机里已经选择自定义纸张了
------解决方案--------------------
建议设置好报表的长宽比例后导出PDF打印
------解决方案--------------------
你改成什么了?
------解决方案--------------------
打印机的问题,也许是你打印机的驱动不对,重新安装对应的驱动能行。
还有中方法就是使用打印机的A4出纸,但是你的报表设计的时候将下边距设置为 纸张高度-你的报表高度
但是打印机设置也很关键。
------解决方案--------------------
 foreach (PaperSize ps in pd.PrinterSettings.PaperSizes)
   {
           if (ps.PaperName == "bill")
            {
              pd.DefaultPageSettings.PaperSize = ps;
              break;
            }
   }

            
------解决方案--------------------
补充一下:

"bill"是在打印机中添加的自定义纸张,区分大小写

比对一致后,将用此纸张作为printdocument的打印纸张。。。
------解决方案--------------------
用它吧 MindFusion.Reporting
http://ufo-crackerx.blog.163.com/
------解决方案--------------------
我来学习的...
------解决方案--------------------
呵呵,这个问题和打印小票的办法应该相同吧!

自己写打印代码,别用自带的打印功能!

自己写代码的话,能够更好的控制打印样式,纸张尺寸等等!

具体请参考MSDN上那个"在不预览的情况下打印"的例子!



------解决方案--------------------
我也遇到了此类问题!
------解决方案--------------------
也是这个问题,快疯了,怎么解决的?
------解决方案--------------------
这个问题我也已经困扰很久了,不知道在vb2012是否解决,这个问题对微软应该不是问题,但是一直没有解决
------解决方案--------------------
用vb2010做了一个web打印(Rdlc),设置纸张
宽21cm 高9.6就是一个票据,但是输入数字后就变成横向打印了,我发现只要高度小于宽度就自己变为横向打印,有什么方法可以变为纵向打印,我用vb2012也是同样的问题。