function InflatePath(const path: TPathD; delta: Double; joinStyle: TJoinStyle = jsAuto; endStyle: TEndStyle = esPolygon; miterLimit: double = 2.0): TPathsD;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | uses Img32, Img32 . Fmt . PNG, Img32 . vector, Img32 . Draw, Img32 . Clipper2; ... var img: TImage32; path: TPathD; paths: TPathsD; begin img . SetSize( 256 , 256 ); rec := img . Bounds; Windows . InflateRect(rec, - 50 ,- 50 ); //draw a gradient filled star path := Star(PointD( 128 , 128 ), 50 , 100 , 7 ); radGradRend := TRadialGradientRenderer . Create; radGradRend . SetParameters(rec, clFuchsia32, clYellow32); DrawPolygon(img, path, frNonZero, radGradRend); radGradRend . Free; DrawLine(img, path, 1 , clBlack32, esPolygon); //draw a dashed outline of the star paths := InflatePath(path, 7 , jsRound, esPolygon); DrawDashedLine(img, paths, [ 4 , 4 ], 0 , 1 , clBlack32, esPolygon); img . SaveToFile( 'star.png' ); img . Free; end ; |
Copyright ©2010-2023 Angus Johnson - Image32 4.8 - Help file built on 16 Apr 2025