其实说白了,为什么要控制纸张的大小?因为程序可能不需要那么大的纸,比如程序里面指定了到XXX就换行打印,那么为什么还要那多余的边?也就是说,自定义纸张的大小,从一般意义上说,要根据自己的程序里面换行位置而定。----这是指宽度。控制长度很简单,比如打印了多高之后,下达换页指令,就可以在自己想要的地方换页,也就是控制了纸张的长度。
当然这种设定是不标准的,并不提倡。

解决方案 »

  1.   

    说详细点吧。
    我现在正在做一个进销存管理软件。里面需要打印票据。大家都知道,这种票据的幅面是很小的(21cm*7.5cm)。如果不改变纸张大小,那么,每打一张票打印机就会走一页纸。这会造成很 大的不方便,而且也特别浪费纸张。希望大家能帮我解决这个问题!谢谢
      

  2.   

    据说要调用API,没试过, 
    关注!
      

  3.   

    设置 Printer.Height 和 Printer.Width
      

  4.   

    你在windows里设好自定义纸大小,然后
      printer.papersize=256
      

  5.   

    当然不能在“控制面板→打印机”里面设置,因为用户才不会给你去设置,而且这里设置的是打印机的默认纸张,会影响到其他程序的。在自己的程序里面设置上 Printer.ScaleMode = vbMillimeters, 再设置 Printer.Height 和 Printer.Width,这样就等效设置了 Printer.Papersize = 256