ImageEn, unit iegdiplus




function AdvancedDrawShape(X, Y, W, H : Integer;
                           // Shape Props
                           Shape: TIEShape;
                           ShapeModifier: Integer = 0;
                           ShapeAngle: Integer = 0;
                           // Border Props
                           BorderColor: TColor = clBlack;
                           BorderWidth: Integer = 1;
                           BorderOpacity: Double = 1.0;
                           // Fill Props
                           FillColor: TColor = clWhite;
                           FillColor2: TColor = clBlue;
                           FillGradient: TIEGDIPlusGradient = gpgNone;
                           FillOpacity: Double = 1.0;
                           // Other
                           UsePreferedAR: Boolean = False;
                           AntiAlias: Boolean = True;
                           CalculateOnly: Boolean = False
                           ): TSize;


Draw one of ImageEn's 100 built-in vector shapes.


General Properties
Parameter Description
X, Y The starting point of the shape
W, H The size of the shape (maximum size only if UsePreferedAR is true)

Shape Properties
Parameter Description
Shape The shape to draw
ShapeModifier Optional modifier value to change the shape style (see ShapeModifier
ShapeAngle The rotation of the shape (in degrees counter-clockwise, i.e. 90 rotates left)
BorderColor The color of the shape border (or clNone for no border)
BorderWidth The width of the shape border
BorderOpacity Specifies the opacity of the border (from 0.0 to 1.0)
FillColor The color of the shape (or clNone for no fill)
FillColor2 The color of the secondary fill (if the shape fill has a gradient)
FillGradient The direction of the gradient for the shape fill (from FillColor to FillColor2). gpgNone specifies no gradient
FillOpacity Specifies the opacity of the shape fill (from 0.0 to 1.0)

Other Parameters
UsePreferedAR Some shapes look better when output at their designed aspect ratio. Enable this to enforce it
AntiAlias True uses best quality drawing. False disables anti-aliasing
CalculateOnly If true, the text is not drawn, just the output size returned as the result

Result is the size of the entire draw in pixels


Demo  Demos\ImageEditing\EveryMethod\EveryMethod.dpr


// Draw an arrow
ImageEnView1.IEBitmap.IECanvas.AdvancedDrawShape( 50, 50, 150, 150,
                                                  iesShootingArrowSE, 0, 0, // Shape Props
                                                  clBlack, 2, 1.0, // Border Props
                                                  clYellow, clRed, gpgVertical, 1.0, // Fill Props
                                                  True );

See Also

- Ellipse
- Pie
- Rectangle
- RoundRect
- AdvancedDrawAngle
- AdvancedDrawLine
- AdvancedDrawPolyline
- AdvancedDrawText