안녕하세요? 델파이를 시작한지 3일된 사람입니다.
도저히 저의 실력으로는 해결을 할 수가 없어서 도움을 청합니다.
부디 답변을 해 주시길...
다름이 아니라, 현재 폼에 그려진 내용을 출력을 하고자 합니다.
폼의 Canvas에 라인을 하나 그리고 그 그림을 프린터로 출력을 하고자 하는데요.
아래 소스에서 무엇이 잘못되었나요?
만약, 방법 자체가 완전히 잘못되었다면 현재 폼이나 기타 다른 컴포넌트의 Canvas에 그려진 내용을 출력하는 방법이 어떤 것이 있을까요??? 도와 주시면 감사하겠습니다.
[ 아래 소스는 버튼 이벤트를 받아서 Canvas의 내용을 출력한다고 짠(???) 것입니다 ]
procedure TForm1.Button1Click(Sender: TObject);
var
destRect, sourceRect : TRect;
begin
Printer.PrinterIndex := 1;
Printer.BeginDoc;
with Printer.Canvas do
begin
destRect := Rect(Form1.Left, Form1.Top, Form1.Left + Form1.Width, Form1.Top + Form1.Height );
sourceRect := Rect(Form1.Left, Form1.Top, Form1.Left + Form1.Width, Form1.Top + Form1.Height );
Canvas.MoveTo(100, 200);
Canvas.LineTo(300, 400);
Printer.Canvas.CopyRect( destRect, Form1.Canvas, sourceRect );
end;
Printer.EndDoc;
end;