TGPGraphicsPath 由一系列圖形基元 (線段、貝茲曲線、弧、矩形、多邊形、字串) 組成,支援 StartFigure/CloseFigure 管理子圖形。DrawPath 描邊、FillPath 填充。拐點連接樣式 (SetLineJoin) 決定線條轉折處的外觀。
path := TGPGraphicsPath.Create;
path.StartFigure;
path.AddLine(MakePoint(11,11), MakePoint(222,111));
path.AddBezier(MakePoint(11,11), MakePoint(33,111), MakePoint(66,6), MakePoint(111,111));
path.CloseFigure;
g.DrawPath(p, path);
g.FillPath(sb, path);
path.AddLine(p1, p2);
path.AddLine(p2, p3); // 形成尖角
p.SetLineJoin(LineJoinBevel); // 斜角
g.DrawPath(p, path);
| Delphi | 微軟 | 外觀 |
|---|---|---|
| LineJoinBevel | Bevel | 斜角切平 |
| LineJoinMiter | Miter | 尖角延伸 (可能超過 MiterLimit 被切平) |
| LineJoinMiterClipped | MiterClipped | 尖角或斜角 (超過限制自動切平) |
| LineJoinRound | Round | 圓弧平滑連接 |
AddRectangle/AddEllipse/AddPolygon/AddPie/AddArc:基本圖形AddStringWiden:將路徑擴寬為填充區域 (描邊轉區域)Flatten:將曲線近似為線段GetPathData:取得點陣與類型陣列 (序列化/互操作)路徑是矢量圖形編輯器、CAD、字體輪廓提取的核心資料結構。