我有这样的代码:
printer:=TPrinter.Create;
printer.beginDoc
   printer.canvas.strechDraw(...);
   ...............
printer.endDoc;
为什么在打印机没连上时会死机呢?还有时打不出图形来,请问为什么呀?

解决方案 »

  1.   

    这是以前我写的,能正常运行,你参考一下 ,打印的时候最好捕捉一下异常,以免发生不可预知的错误 
      try
        Printer.BeginDoc;
        Printer.Canvas.CopyRect(DestRect,BmpImage.Canvas,SourceRect);
        Printer.EndDoc;
      except
        Printer.Abort;
        Raise;
      end;
      

  2.   

    printer对象不用创建。直接用就是了。