ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Controls, pages and windows / Drawing functions
  • Anti-aliasing
  • Using the drawing functions
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
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,
  • in a variable of type Image.
Example
AndroidiPhone/iPadIOS WidgetMac Catalyst
// Initialise le dessin dans un champ Image
dStartDrawing(IMG_Dessin)

// Dessine un rectangle puis l'efface
dChangeMode(drawXOR)
// Affiche le rectangle (en mode XOR)
dRectangle(0, 0, 100, 100)
Multitask(10)
// Efface le rectangle
dRectangle(0, 0, 100, 100)
AndroidiPhone/iPadIOS WidgetMac Catalyst
// Dessine un rectangle dans un champ Image puis l'efface
dChangeMode(IMG_Dessin, drawXOR)
// Affiche le rectangle (en mode XOR)
dRectangle(IMG_Dessin, 0, 0, 100, 100)
Multitask(10)
// Efface le rectangle
dRectangle(IMG_Dessin, 0, 0, 100, 100)
Syntax
dChangeMode([<Image>, ] <New mode>)
<Image>: Optional control name or optional Image, WDPic or picLayer variable
AndroidiPhone/iPadIOS WidgetMac Catalyst Image to use. This image can correspond to:
  • the name of an Image control.
  • the name of a variable of type Image.
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.
drawDefaultStandard colors.
drawXORColors applied via an "exclusive or" operation with the background. Erases a drawing if this option is used twice.
WARNING: This drawing mode is not compatible with opacity management (the drawing no longer fades)..
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
AndroidiPhone/iPadIOS WidgetMac Catalyst

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). 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 you specify a border color for the dFill function, this color is not retrieved: the entire area is filled.
  • For a drawing with anti-aliasing, dPolygon and dSlice have the following behavior. The contour is drawn on top of the polygon's interior: the line is therefore partly combined with the polygon's interior. If the line is very thick, it will be displayed in two colors.
  • For more details on the use of GDI+, see GDI+ framework.

Using the drawing functions

The drawing functions can be used according to 2 methods:
  • Method 1: Using the dDrawingStartfunction
    • 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.
        If function dEndDrawing is called in the same process as function dStartDrawing, the drawing will not appear: it will be automatically deleted.
  • AndroidiPhone/iPadIOS WidgetMac Catalyst Method 2: specify design destination directly in syntax (via parameter)
    The <Image> parameter is used to specify directly the target of the drawing. dStartDrawing becomes useless. This function must be deleted.
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: wd300pnt.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 05/30/2025

Send a report | Local help