打印机驱动用LQ1600K,在win98下用A5纸张,页边距均为0,报表正常显示,但同样的源程序在win2000或win2003下却提示报表在纵向上不适合纸张,打印机驱动和纸张也一样,实在不明白。

解决方案 »

  1.   

    w98执行可以自定义(在程序中实现)w2000
    我这里的报表使用active report作的打印是连续走纸我是这么解决的
      在打印机的文件--服务器属性:  添加自定义纸型
      在打印机的属性设置中:            
            常规:打印首选项--纸张/质量:牵引送纸
                              高级--纸张大小:自定义得纸型
            高级:打印机的默认设置中相应的也要修改
            设备设置:牵引送纸:自定义得纸型
      看看打印机的各项属性,都改对就可以了
      

  2.   

    如果式程序控制好像就得用API我用查过一篇文章,但是也没有实现
      

  3.   

    http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q180/6/45.asp&NoWebContent=1
      

  4.   

    多谢帮助,但现在我可以确定要打印的报表用A5是合适的,只是在Win2000下好像系统又有另外一个边距在起作用,难道只有用自定义纸张了吗?
      

  5.   

    A5应该属于标准纸,你查看一下1600K的可选纸型里是否有A5纸型,有的话,呵呵,查一下A5纸的PaperSize编号.然后看你用什么工具了?应该是Printer吧,就将Printer.Papersize=11呵,刚查了一下,A5在2K下是11
      

  6.   

    设置成A5是没有问题,关键是报错提示报表超长了,但在windows98下却正常。
      

  7.   

    报表超长?
    是不是你打印的Current超过了边界呢?