Delphi-我需要将TPrinter画布传递给TBitmap画布

时间:2018-08-22 17:46:19

标签: delphi

因此,我在画布上填充了一个画布对象,它可以完美打印。现在,我需要将Printer.canvas中填充的同一画布保存到文件中。我知道我可以保存位图对象,并且我想我可以实例化位图并将其分配给打印机画布,但是可惜,它是只读的。这是带有错误的行。有人知道吗?

  bitmapAGuardar.Canvas := Printer.Canvas;

1 个答案:

答案 0 :(得分:4)

这不是操作方法,实际上您的要求无法完成。

编写一个接收画布作为其参数的函数。让该功能执行必要的绘图。当您需要打印到打印机时,调用传递打印机画布的函数。当需要保存到位图时,调用传递位图画布的函数。

您可能需要考虑以下事实:打印机的画布​​分辨率将远远大于您想要的位图分辨率。