ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Controls, pages and windows / Drawing functions
  • Coordinates
  • How to retrieve the components of the color?
  • Using the drawing functions
  • dPixelColor, Zoom and automatic scrollbars
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Identifies the color of a pixel:
  • in an Image control,
  • in a variable of type Image.
  • WINDEV in a variable of type WDPic (on the background layer),
  • WINDEV in a variable of type picLayer.
Linux Caution: A specific configuration is required to use this function in Linux. For more details, see The drawings.
// Identify the color of the pixel (15, 25)
// in the Image control named "IMG_Drawing"
ResColor = dPixelColor(IMG_ImageDrawing, 15, 25)
Syntax
<Result> = dPixelColor([<Image>, ] <X-coordinate> , <Y-coordinate>)
<Result>: Integer
Color of the specified pixel in RGB format.
Caution: the value returned may differ according to the display configuration (resolution, ...).
<Image>: Optional control name or optional Image, WDPic or picLayer variable
WindowsLinuxJavaUser code (UMC) Image to use. The image can correspond to:
  • the name of an Image control.
  • the name of a variable of type Image.
  • WINDEV the name of a variable of type WDPic. Only the background layer will be handled.
  • WINDEV the name of a variable of type picLayer.
If this parameter is not specified, the image handled by dStartDrawing will be used.
This parameter is not available in a report. To specify the image to use, dStartDrawing must be used before the call to dPixelColor.
<X-coordinate>: Integer
Horizontal position of pixel to use.
<Y-coordinate>: Integer
Vertical position of pixel to use.
Remarks

Coordinates

Coordinates are given in pixels with respect to the upper-left corner of the image (coordinates: (0.0)).
To retrieve the position of a mouse click in an Image control, use MouseXPos and MouseYPos.

How to retrieve the components of the color?

To retrieve the components of the color returned by dPixelColor:
  • To get the red component, use RGBRed (or perform a division modulo 256 of <Result>),
  • To get the green component, use RGBGreen (or perform a division modulo 256 of <Result>/256),
  • To get the blue component, use RGBBlue (or perform a division modulo 256 of <Result>/256/256).

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.
  • 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.
WINDEVWindowsUser code (UMC)

dPixelColor, Zoom and automatic scrollbars

The "Automatic scrollbars and zoom" option, available on Image controls, is incompatible with dPixelColor. If this option is used on the Image control, dPixelColor freezes the image. The zoom and the scrollbars are also frozen.
Component: wd290obj.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 01/18/2024

Send a report | Local help