This function sets the pixel, at the location pointed to by lpPixel, into the image bitmap of image hIGear at coordinates (nXpos, nYpos).
Declaration:
|
Copy Code
|
AT_ERRCOUNT ACCUAPI IG_DIB_pixel_set (
HIGEAR hIGear,
AT_PIXPOS nXpos,
AT_PIXPOS nYpos,
const LPAT_PIXEL lpPixel
);
|
Arguments:
Name |
Type |
Description |
hIGear |
HIGEAR |
HIGEAR handle of an image. |
nXpos |
AT_PIXPOS |
X offset (in pixels) from beginning of raster line. First pixel on line is pixel number 0. |
nYpos |
AT_PIXPOS |
Raster line number. 0 is top line. |
pPixel |
const LPAT_PIXEL |
Far pointer to byte containing pixel, or to a 3-byte area if a 24-bit pixel. |
Return Value:
Returns the number of ImageGear errors that occurred during this function call. If there are no errors, the return value is IGE_SUCCESS.
Supported Raster Image Formats:
All pixel formats supported by ImageGear for C and C++.
Sample:
Pixel Access
Example:
|
Copy Code
|
HIGEAR hIGear;/* HIGEAR handle of image */
AT_PIXEL cPixelValue[3];/* 3 bytes in case 24-bit image */
/* Set upper-leftmost pixel in image, to max pixel value: */
cPixelValue[0] = cPixelValue[1] = cPixelValue[2] = 255;
IG_DIB_pixel_set ( hIGear, 0, 0, &cPixelValue[0] );
|
Remarks:
The pixel is assumed to have the same number of Bits Per Pixel as the image, and if it is 1 or 4 bits, it is assumed to be right justified (that is, in the least significant bits) at location lpPixel. If the image is 24-bit, 3 bytes are transferred. Normally, these bytes will be in the order of Blue-Green-Red (unless the order of the image bitmap bytes has been changed by a call such as IG_IP_swap_red_blue()).
ImageGear's pixel access functions consider the coordinates (0,0) to refer to the upper left-hand corner of the bitmap data. They do not follow the DIB's orientation, which considers (0,0) to refer to the lower left-hand corner of the bitmap.
If the image you are modifying is 1-bit, you must convert the image from run-end encoded to a standard DIB, before you can set pixel values. Please see the section
Accessing Image Pixels for details.