gpt4 book ai didi

delphi - 如何在 D-7 中绘制 Canvas 的旋转部分?

转载 作者:行者123 更新时间:2023-12-03 10:42:26 25 4
gpt4 key购买 nike

我正在 A3 打印机 Canvas 上画一些东西。

是否可以复制 Canvas 的一部分和
在 Canvas 的另一部分绘制旋转(180 度)?

谢谢!

最佳答案

就像 Sertac 已经评论过的一样,使用 SetWorldTransform :

procedure TForm1.Button1Click(Sender: TObject);
var
XForm: TXForm;
begin
if PrintDialog1.Execute then
with Printer do
begin
BeginDoc;
SetGraphicsMode(Canvas.Handle, GM_ADVANCED);
PrintTo(Canvas);
XForm.eM11 := Cos(DegToRad(180));
XForm.eM12 := Sin(DegToRad(180));
XForm.eM21 := -Sin(DegToRad(180));
XForm.eM22 := Cos(DegToRad(180));
XForm.eDx := PageWidth;
XForm.eDy := PageHeight;
SetWorldTransform(Canvas.Handle, XForm);
PrintTo(Canvas);
EndDoc;
end;
end;

procedure TForm1.PrintTo(ACanvas: TCanvas);
begin
with ACanvas do
begin
Font.Size := 180;
TextOut(0, 0, 'Test text');
Pen.Width := 40;
MoveTo(0, 0);
LineTo(3000, 3000);
end;
end;

enter image description here

关于delphi - 如何在 D-7 中绘制 Canvas 的旋转部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6910496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com