PC SOFT

WINDEVWEBDEV AND WINDEV MOBILE
ONLINE HELP

Home | Sign in | English UK
  • Anti-aliasing
  • Using the drawing functions
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Changes the drawing mode used by the drawing functions (dLine, dRectangle, ...). The change is applied to the element being drawn. This element can be:
  • an Image control,
  • Versions 17 and later
    WINDEVWindowsLinuxUser code (UMC) an Image variable.
    New in version 17
    WINDEVWindowsLinuxUser code (UMC) an Image variable.
    WINDEVWindowsLinuxUser code (UMC) an Image variable.
    in an Image variable.
  • Versions 25 and later
    WINDEV in a WDPic variable (on the background layer),
    New in version 25
    WINDEV in a WDPic variable (on the background layer),
    WINDEV in a WDPic variable (on the background layer),
  • Versions 25 and later
    WINDEV in a picLayer variable.
    New in version 25
    WINDEV in a picLayer variable.
    WINDEV in a picLayer variable.
Example
WINDEVJavaUser code (UMC)
// Initialize the drawing in an Image control
dStartDrawing(IMG_Drawing)
 
// Draws a rectangle and erases it
dChangeMode(drawXOR)
// Displays the rectangle (in XOR mode)
dRectangle(0, 0, 100, 100)
Multitask(10)
// Erases the rectangle
dRectangle(0, 0, 100, 100)
WINDEVJavaUser code (UMC)
// Draws a rectangle in an Image control and erases it
dChangeMode(IMG_Drawing, drawXOR)
// Displays the rectangle (in XOR mode)
dRectangle(IMG_Drawing, 0, 0, 100, 100)
Multitask(10)
// Erases the rectangle
dRectangle(IMG_Drawing, 0, 0, 100, 100)
Syntax
dChangeMode([<Image>, ] <New mode>)
<Image>: Optional control name or optional Image, WDPic or picLayer variable
Versions 24 and later
WindowsLinuxJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • the name of an Image variable.
  • Versions 25 and later
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    New in version 25
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
  • Versions 25 and later
    WINDEV the name of a picLayer variable.
    New in version 25
    WINDEV the name of a picLayer variable.
    WINDEV the name of a picLayer variable.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
New in version 24
WindowsLinuxJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • the name of an Image variable.
  • Versions 25 and later
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    New in version 25
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
  • Versions 25 and later
    WINDEV the name of a picLayer variable.
    New in version 25
    WINDEV the name of a picLayer variable.
    WINDEV the name of a picLayer variable.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
WindowsLinuxJavaUser code (UMC) Image to use. This image can correspond to:
  • the name of an Image control.
  • the name of an Image variable.
  • Versions 25 and later
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    New in version 25
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
    WINDEV the name of a WDPic variable. Only the background layer will be handled.
  • Versions 25 and later
    WINDEV the name of a picLayer variable.
    New in version 25
    WINDEV the name of a picLayer variable.
    WINDEV the name of a picLayer variable.
If this parameter is not specified, it is necessary to define the drawing destination with dStartDrawing.
<New mode>: Integer constant
Mode for drawing in the image:
drawAntiAliasingUses the GDI+ and/or the features of the video card to draw the lines and the circles without jagged effects. This drawing mode is slower but the results are better than with the standard mode.
Java Constant not available.
drawDefaultStandard colors.
drawXORColors applied via an "exclusive or" operation with the background. Erases a drawing if this option is used twice.
CAUTION: This drawing mode is not compatible with the management of opacity (the drawing is not erased anymore).
Caution:
  • The drawing in XOR mode is available for the Image controls only. The drawing in XOR mode is not available for the Image variables.
  • The drawXOR constant cannot be combined with the drawAntiAliasing constant.
Remarks
WINDEVWindowsJavaUser code (UMC)

Anti-aliasing

The anti-aliasing consists in drawing the lines and the circles without jagged effects. This feature requires the GDI+ framework (which means the WINDEV framework).
Versions 16 and later
Java Anti-aliasing is now available for Java applications.
New in version 16
Java Anti-aliasing is now available for Java applications.
Java Anti-aliasing is now available for Java applications.
Example:
Limits:
  • dChord is not supported in this mode.
  • To avoid the jagged edges, the colors and the lines of elements are smoothed out. Some drawing functions can have an unexpected behavior because the specified colors are no longer found. For example, if a borderline color is specified for dFill, this color is not found: the entire area is filled up.
  • In the case of a drawing with anti-aliasing, dPolygon and dSlice have the following behavior. The outline is drawn above the inside of the polygon: therefore, the line is partly combined with the inside of the polygon. If the line is very thick, it will be displayed in two colors.
  • See GDI+ framework for more details on the use of GDI+.

Using the drawing functions

The drawing functions can be used according to 2 methods:
  • Method 1: Using dStartDrawing
    • dStartDrawing must be called before any other drawing function. dStartDrawing is used to define the element (Image control or variable) to which the drawing functions will be applied.
    • When drawing on an Image control:
      • The drawing functions operate on a copy ("bitmap") of the image. You can use the drawing functions of Windows (via API or CallDLL32) but these functions must use the DC (Device Context) returned by dStartDrawing.
      • dEndDrawing and dStartDrawing must not be called in the same process.
        The drawing will not be displayed if dEndDrawing and dStartDrawing are called in the same process: it will be automatically erased.
  • Versions 24 and later
    WindowsLinuxJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. dStartDrawing becomes useless. This function must be deleted.
    Versions 25 and later
    Java This syntax is now available.
    New in version 25
    Java This syntax is now available.
    Java This syntax is now available.
    New in version 24
    WindowsLinuxJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. dStartDrawing becomes useless. This function must be deleted.
    Versions 25 and later
    Java This syntax is now available.
    New in version 25
    Java This syntax is now available.
    Java This syntax is now available.
    WindowsLinuxJavaUser code (UMC) Method 2: indicating the drawing target directly in the syntax (via a parameter)
    The <Image> parameter is used to specify directly the target of the drawing. dStartDrawing becomes useless. This function must be deleted.
    Versions 25 and later
    Java This syntax is now available.
    New in version 25
    Java This syntax is now available.
    Java This syntax is now available.
Related Examples:
The drawing functions Unit examples (WINDEV): The drawing functions
[ + ] Using the main drawing functions of WINDEV to:
- Initialize an Image control for drawing
- Draw simple shapes
- Write a text into a drawing
- Change the color in a drawing
Business / UI classification : Neutral code
Component : wd250pnt.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment