ImageGear for C and C++ on Windows v19.7 - Updated
IG_DIB_palette_pointer_get
API Reference Guide > Core Component API Reference > Core Component Functions Reference > DIB Functions > IG_DIB_palette_pointer_get

This function returns a pointer to the DIB's palette, if it is present; otherwise it returns NULL.

Declaration:

 
Copy Code
LPAT_RGBQUAD ACCUAPI IG_DIB_palette_pointer_get(
        HIGDIBINFO hDIB
);

Arguments:

Name Type Description
hDIB HIGDIBINFO DIB info handle.

Return Value:

Pointer to the DIB palette, if it is present; NULL - otherwise.

Supported Raster Image Formats:

All pixel formats supported by ImageGear for C and C++.

Sample:

Load Callback, Medical, MFC PDF Demo

Example:

 
Copy Code
AT_ERRCOUNT nErrcount;  /* Number of errors on stack */
HIGDIBINFO hDIB;        /* DIB info handle */
AT_INT nEntries;        /* Number of palette entries */
LPAT_RGBQUAD lpPalette; /* Pointer to palette data */
AT_INT i;               /* Index for palette loop */
/* Make a palette in which every color is GREEN */
nErrcount = IG_DIB_palette_alloc(hDIB);
nEntries = IG_DIB_palette_length_get(hDIB);
lpPalette = IG_DIB_palette_pointer_get(hDIB);
for (i = 0; i < nEntries; i++)
{
        lpPalette[i].rgbRed = lpPalette[i].rgbBlue = 0;
        lpPalette[i].rgbGreen = 255;
}

Remarks:

You can use this to get and set palette entries or the palette as a whole.