When working with DigitalPaint automation, specific properties, as well as the background color, can be set or retrieved using the following functions:
The LEADTOOLS DigitalPaint tools let you manipulate the following:
Each set of characteristics given above has several properties that can be set. This lets the user fine tune the output. These properties can be set using the LAutomation::SetPaintProperty function. To retrieve the current settings for the properties, use the LAutomation::GetPaintProperty function. Below is an example showing how to manipulate the Shape properties:
/* this example shows how to change the paint shape properties */L_INT SetPaintShapePropsTest ( LAutomation * pAutomation ){if ( SUCCESS == pAutomation->IsValid() ) /* check the validity of the automation handle */{PAINTSHAPE shape ;/* set the paint shape group properties */pAutomation->GetPaintProperty ( PAINT_GROUP_SHAPE, &shape ) ;/* make some changes to the required properties */if (PAINT_SHAPE_BORDER_STYLE_SOLID == shape.nBorderStyle ){/* set the desired shape properties using the field masks */shape.nSize = sizeof ( PAINTSHAPE ) ;shape.dwMask = PSF_BORDERSTYLE |PSF_BORDERWIDTH |PSF_BORDERENDCAP;shape.nBorderStyle = PAINT_SHAPE_BORDER_STYLE_DOT ;shape.nBorderWidth = 10 ;shape.nBorderEndCap = PAINT_SHAPE_BORDER_ENDCAP_ROUND ;/*set the paint shape group properties */pAutomation->SetPaintProperty ( PAINT_GROUP_SHAPE, &shape ) ;}return SUCCESS ;}else{return FAILURE ;}}
For more examples showing the use of DigitalPaint automation, refer to Getting Started.
When the user cuts or deletes some region from a bitmap, an exposed area is left behind This area will be filled by the paint background color, set by the function LAutomation::SetPaintBkColor. To determine the current paint background color, call LAutomation::GetPaintBkColor. The example below shows how to retrieve and set the paint background color:
/* This example will make sure that the BK is not anything but black */L_INT StickToBlack (LAutomation * pAutomation){if ( SUCCESS == pAutomation->IsValid ( ) ) /* check the validity of the automation handle */{COLORREF crBkColor ;/* get the current paint automation color */crBkColor = pAutomation->GetPaintBkColor () ;if ( crBkColor != RGB ( 0, 0, 0 ) ) /* check if its not black */{/* set the paint automation background color */pAutomation->SetPaintBkColor (RGB(0, 0, 0 ) ) ;}return SUCCESS ;}else{return FAILURE ;}}