//閉合曲線
var
g: TGPGraphics;
p: TGPPen;
sb: TGPSolidBrush;
pts: array[0..4] of TGPPoint;
begin
g := TGPGraphics.Create(Canvas.Handle);
sb := TGPSolidBrush.Create(MakeColor(255,255,255));
p := TGPPen.Create(MakeColor(255,0,0),4);
pts[0].X := 77; pts[0].Y := 44;
pts[1].X := 66; pts[1].Y := 111;
pts[2].X := 88; pts[2].Y := 222;
pts[3].X := 111; pts[3].Y := 88;
pts[4].X := 222; pts[4].Y := 66;
g.DrawClosedCurve(p, PGPPoint(@pts), Length(pts), 2.5);
{參數 4 是曲度, 可選, 默認 0.5}
g.FillClosedCurve(sb, PGPPoint(@pts), Length(pts), FillModeAlternate, 2.5);
{既然是閉合的就可以填充, 參數 4 是填充模式, 另一個可選值是: FillModeWinding}
p.Free;
sb.Free;
g.Free;
end;