The AutoSelectImage method uses a specified color (RGB value), compares this value to pixels in the image and selects areas of the image that have that color. From this selection, the AutoSelectImage method creates a new image and mask image

[C++Builder]   [ bool = ]imagekitcontrolname->Effect->AutoSelectImage(const TPoint * Points, const int Points_Size, short Red, short Green, short Blue, short Mode, short Level)
[C++Builder]   [ bool = ]imagekitcontrolname->Effect->AutoSelectImage(short Red, short Green, short Blue, short Mode, short Level)
[Delphi]   [ Boolean = ]imagekitcontrolname.Effect.AutoSelectImage(const Points: array of TPoint; Red, Green, Blue, Mode, Level: Smallint)
[Delphi]   [ Boolean = ]imagekitcontrolname.Effect.AutoSelectImage(Red, Green, Blue, Mode, Level: Smallint)

Parameters

Name Explanation
Points An array of x, y coordinate values defining points of a polygonal area on the image. (in pixels)
In C++Builder, the size of the Points array is given by Points_Size - 1
Red Specifies the red value of the color that will be selected (From 0 to 255)
Green Specifies the green value of the color that will be selected (From 0 to 255)
Blue Specifies the blue value of the color that will be selected (From 0 to 255)
Mode Comparison mode (0:RGB, 1:CrCb, 2:Y)
Level Level of Allowance (From 0 to 255)

Return Value

Returns True if successful, otherwise returns False.

Explanation

The AutoSelectImage method uses a specified color (RGB value), and selects areas of the image that have that color. To execute the AutoSelectImage method, set the image handle of the image in the ImageHandle property or the Layer(LayerNo).ImageHandle property. The AutoSelectImage method supports 1, 4, 8, 16, 24, and 32 bit images.

Before executing the AutoSelectImage method, you must set the area on the image that will be affected. There are 3 ways to do this.

  1. To process the total image, set the SelectMode property to vikEffectAll.
  2. To process the polygonal area on the image, set the SelectMode property to vikEffectPolygon. Select the polygon area on the image by setting the appropriate coordinate values for the points of the polygon in the Points array. The number of points defining the polygon must be 3 or more
  3. To process an elliptical area on the image, set the SelectMode property to vikEffectEllipse. Select the ellipse by setting the appropriate values for the bounding rectangle in the RectLeft, RectTop, RectRight, and RectBottom properties

When the SelectMode property is set to vikEffectPolygon or vikEffectEllipse, the InOut property should be set. When the SelectMode property is set to values other than vikEffectPolygon, please set the Points parameter to a dummy array or to NULL.

The Mode parameter sets the type of color comparison used to select portions of the image. When the Mode parameter is other than 0 (i.e. CrCb or Y) then all RGB values are converted to YCrCb values and compared. The Level parameter controls the range of RGB values that will be selected. If the Level value is 0, then only those pixels that have the save RGB value as that specified in the Red, Green, and Blue parameters will be selected. As the Level parameter increases, the range of RGB values that will be selected increases. For example, if Level = 10 and Red, Green, and Blue = 100 respectively, then all pixels with an RGB value between (90,90,90) and (110,110,110) will be selected.

If successful the resulting raster image data is set in the LayerNo property (the ImageHandle property or the Layer(LayerNo).ImageHandle property. If unsuccessful, 0 is returned.

When the Caption, Message, and ButtonName properties are blank, the progress dialog box will not be displayed. When the progress dialog box is displayed, the percentage that the processing has completed will be shown in the dialog box.

Differences from the ImageKit 7/8/9/10 ActiveX

The parameters x, y have been changed to type TPoint
In Delphi, it is not necessary to pass the size of the array of x, y points.

The ImageKit10 VCL is a product created by Newtone Corporation