This method removes "red eye" from images by converting reddish colors within the selected area to another specified color.

[Visual Basic]   [ Boolean = ]imagekitcontrolname.Effect.RedEyeRemoval(x As Long, y As Long, Points As Long, Red As Integer, Green As Integer, Blue As Integer, Error As Integer)
[Visual C++]     [ BOOL = ]imagekitcontrolname.GetEffect().RedEyeRemoval(long *x, long *y, long Points, short Red, short Green, short Blue, short Error)
[VB.NET]   [ Boolean = ]imagekitcontrolname.Effect.RedEyeRemoval(ByRef x As Integer, ByRef y As Integer, Points As Integer, Red As Short, Green As Short, Blue As Short, Error As Short)
[C#.NET]   [ bool = ]imagekitcontrolname.Effect.RedEyeRemoval(ref int x, ref int y, int Points, short Red, short Green, short Blue, short Error)

Parameters

Name Explanation
x An array of x coordinate values defining points of a polygonal area on the image. (in pixels) * (see Note below)
y An array of y coordinate values defining points of a polygonal area on the image. (in pixels) * (see Note below)
Points The number of points defining the polygonal area on the image.
Red Sets the red component for the specified color after the red eye removal (from 0 to 255)
Green Sets the green component for the specified color after the red eye removal (from 0 to 255)
Blue Sets the blue component for the specified color after the red eye removal (from 0 to 255)
Error Sets a margin of error for converting colors within the selected area. Any colors falling outside this margin of error will be converted to the color specifed by the Red, Green, and Blue parameters. (from 0 to 255)
* NOTE for retrieving array values:
In Visual Basic, if the array is defined as Dim x(0 To 2) As Long, then the arguments are returned in x(0).
In Visual C++, pass the pointer to the first element in the array.
In VB.NET, the arguments are returned in x(0).
In C#.NET, the arguments are returned in x[0].

Return Value

Returns True (nonzero) if successful, otherwise returns False (0).

Explanation

The RedEyeRemoval method removes "red eye" from images by converting colors within the selected area to another specified color. The Error parameter sets a margin of error for colors within the selected area. Any color whose red value falls outside this margin of error will be converted to the color specifed by the Red, Green and Blue parameters. As the Error parameter value increases only colors closer to pure red will be converted. As the Error parameter decreases, a wider and wider range of "reddish" colors will be converted.

To execute the RedEyeRemoval method, set the image handle of the image in the ImageHandle property or the Layer(LayerNo).ImageHandle property. The RedEyeRemoval method supports 16, 24, and 32 bit images.

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

  1. To use a mask image, set the SelectMode property to 0. Set the mask image handle in the MaskImageHandle property
  2. To process the total image, set the SelectMode property to 1
  3. To process the polygonal area on the image, set the SelectMode property to 2. Select the polygon by setting the appropriate coordinate values for the points of the polygon in two arrays, one array for the x coordinate values and one array for the y coordinate values. The pass these arrays to the x and y arguments of the RedEyeRemoval method. The number of points defining the polygon must be 3 or more
  4. To process an elliptical area on the image, set the SelectMode property to 3. 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 values other than 2 (ikEffectPolygon), please set dummy arrays in the x and y parameters and set the Points parameter to 0.
When the SelectMode property is set to 2 or 3, the appropriate value must be set in the InOut property. 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.

For scripting languages and other programs that require variant types, or when using VB.NET or C#.NET in 64 bit builds, please refer to the RedEyeRemovalVariant method.

The ImageKit10 ActiveX is a product created by Newtone Corporation