我有段程序如下,就是用Printer 来控制打印机打印,
  with Printer do
  begin
    BeginDoc;
    Canvas.TextOut(0,0,'a');
    EndDoc;
  end;
我在一台HP LaserJet 5000LE打印出来的'a'在纸张的左上角,但用一台STAR NX-600 打印出来的'a'跑到了纸张的中部了,是不是因为打印机的分辨率不一样呢?如果是请问要怎么处理才能让不同的打印打出来的效果都是一样的呢?
谢谢了!

解决方案 »

  1.   

    http://www.wave12.com/web/SigCon.asp?bCate=41&sCateName=%B9%A6%C4%DC%BD%E9%C9%DC&ID=143&CateName=wsChart4.5(DLL)
      

  2.   

    你说的问题,感觉应该和打印机“默认设置”有关,>>用一台STAR NX-600 打印出来的'a'跑到了纸张的中部了,
    检查页边距 这些参数
      

  3.   

    分辨率不同导致的。
    你可以这样试一下,用个600dpi的激光或喷墨打印机。在600dpi下打一张,然后通过打印机首选项设置,改成300dpi后再打一张,2张的位置是完全不同的。