PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
  • Use in prefix syntax
  • Drawing with opacity
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
Indicates that the drawing functions that will be used are intended for the specified Image control.
Remark: <Image variable>.StartDrawing initializes all the parameters required to create a drawing for a given element.
Example
// Start drawing in the "IMG_ImageDrawing" control
ResDrawing = IMG_ImageDrawing.StartDrawing()
// Drawings performed in the "IMG_ImageDrawing" control
...
// End of drawing in the "IMG_ImageDrawing" control
IMG_Image1.StartDrawing()
IMG_Image1.Font("Arial", 12, iNormal, 0)
IMG_Image1.DrawText(4, 0, "I'm writing in an Image control!")
Syntax
<Result> = <Image variable>.StartDrawing([<Options>])
<Result>: Boolean
  • True if the drawing was initialized,
  • False otherwise.
<Image variable>: Image variable
<Options>: Optional Integer constant (or combination of constants)
Drawing options:
dGridlinesOpacityThe drawing is displayed over gridlines in order to highlight the transparent or semi-transparent sections of the drawing. The gridlines are not saved in the image.
dNoEraseDoes not erase the drawing in the variable.
dOnChartUsed to draw in a variable in which a chart has already been drawn. In this case, the chart drawing is not erased.
dWithOpacityAllows managing opacity in the different drawing functions used with the variable. Used for example to create a PNG drawing with an Alpha channel.

No drawing option is used if this parameter is not specified.
Remarks

Use in prefix syntax

  • <Image variable>.StartDrawing must be called before the other drawing functions. <Image variable>.StartDrawing makes it possible to define the drawing options used in the Image control.
  • * When drawing in an Image control:
    • the drawing functions operate on a copy ("bitmap") of image. You can use the drawing functions of Windows (via API or CallDLL32) but these Windows functions must use the DC (Device Context) returned by <Image variable>.StartDrawing.
    • <Image>.EndDrawing and <Image variable>.StartDrawing must not be called in the same process. The drawing will not be displayed if <Image>.EndDrawing and <Image variable>.StartDrawing are called in the same process: it will be automatically erased.
Reports and Queries

Drawing with opacity

By creating a drawing that supports opacity, you can easily save PNG images with an Alpha channel.
To save a PNG drawing with an Alpha channel:
  1. Use the <Image variable>.StartDrawing function. This function is used to define, if necessary, the element onto which the drawing functions will be applied as well as the drawing mode. The dWithOpacity constant is used to indicate that the drawing will manage the opacity. The dGridlinesOpacity constant is used to display gridlines underneath the different drawing areas.
  2. Configure the opacity of your drawings with the following functions:
    <Image>.BackgroundDeclares the background color and its opacity for the next drawings.
    <Image>.DrawPointDeclares the color of the points and their opacity for the next drawings.
    <Image>.PenDeclares the color of the lines and their opacity for the next drawings.

    Remark: <Image>.PixelOpacity is used to find out the opacity of a point.
  3. Use <Image>.SavePNG to save your drawing in PNG format with alpha channel (opacity).
Limit: In "Management of opacity" mode, <Image>.DrawText is limited to the use of True Type fonts.
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
Component: wd270pnt.dll
Minimum version required
  • Version 24
This page is also available for…
Comments
Click [Add] to post a comment