Image1.Canvas.CopyRect(Rect1,printer.Canvas,Rect2);
じゃ、だめなんですか?
印刷自体はされるので、printer.Canvasがないとは思えないんですが。
ヘルプは読まれましたか?
TPrinterのCanvasはほとんどの場合DrawやStretchDraw、CopyRectが使えないと書いてあります。
これはCanvas.Handleに割り当てられるものが通常のデバイスコンテキストではなく、
CreateICから得られる情報コンテキストと呼ばれるものだからです。
BeginDoc、EndDocの間はデバイスコンテキストが作成されるので可能ですが、
TPrinter.Canvasはあくまでもプリンタに指示を送るためのCanvasですので、
出力するイメージデータを再利用したい場合は、TPrinter.Canvasに直接描画せず、
中間のTBitmapを作成し、そこを経由して処理した方が良いかと思います。
ツイート | ![]() |