This function returns the number of bytes needed to store an array of pixels.
Declaration:
Copy Code | |
---|---|
AT_ERRCOUNT ACCUAPI IG_DIB_pixel_array_size_get( HIGEAR hIGear, AT_DIMENSION length, AT_MODE format, LPAT_DIMENSION lpSize ); |
Arguments:
hIGear | HIGEAR handle of image containing pixel data. |
length | Number of pixels for which to calculate array size. |
format | IG_PIXEL_UNPACKED - All bit depths are unpacked (at least one byte per pixel). IG_PIXEL_PACKED - In legacy mode: 1 and 4 bit images are packed (8 or 2 pixels per byte). In new mode: Only 1 bit images are packed (8 pixels per byte). |
lpSize | Returned array size in bytes. |
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 Professional.
Sample:
Pixel Access
Example:
Copy Code | |
---|---|
/* Get # of bytes needed to store half a row */ AT_ERRCOUNT nErrcount; /* Number of errors on stack */ HIGEAR hImage; /* Handle of image */ AT_DIMENSION w, h; /* Width and height of image */ AT_DIMENSION nBytes; /* Size of pixel array in bytes */ nErrcount = IG_image_dimensions_get(hImage, &w, &h, NULL); nErrcount = IG_DIB_pixel_array_size_get(hImage, w / 2, IG_PIXEL_UNPACKED, &nBytes); |
Remarks:
This can be used to allocate storage for use with pixel access functions. This function is similar to IG_DIB_raster_size_get(), but it lets you specify the number of pixels instead of using the number of pixels in an entire raster.