使用路径和几何笔

procedure TForm1.Button1Click(Sender: TObject);
var
  lb : TLogBrush;
begin
  lb.lbStyle := BS_SOLID;
  lb.lbColor := RGB(255, 0, 0);
  lb.lbHatch := 0;
  Form1.Canvas.Pen.Handle :=
    ExtCreatePen(PS_GEOMETRIC or
                 PS_INSIDEFRAME or
                 PS_ENDCAP_SQUARE or
                 PS_JOIN_BEVEL,
                 20,
                 lb,
                 0,
                 nil);
  BeginPath(Form1.Canvas.Handle);
  Form1.Canvas.MoveTo(100, 30);
  Form1.Canvas.LineTo(200, 100);
  Form1.Canvas.LineTo(300, 30);
  EndPath(Form1.Canvas.Handle);
  StrokePath(Form1.Canvas.Handle);
  Form1.Canvas.Pen.Width := 1;
end;
原文地址:https://www.cnblogs.com/yzryc/p/6374052.html