freeimage.h

FreeImage_CreateICCProfile

DLL_API FIICCPROFILE *DLL_CALLCONV FreeImage_CreateICCProfile(FIBITMAP *dib, void
*data, long size);

Crea un nuevo bloque FIICCPROFILE a partir de los datos de perfil ICC leído previamente desde un fichero o construido mediante un sistema de manipulación de color. Los datos de perfil son adjuntados al mapa de bits. La función devuelve un puntero a la estructura FIICCPROFILE creada.

// this code assumes there is a bitmap loaded and
// present in a variable called ‘bitmap’
DWORD size = _filelength(fileno(hProfile));
// read profile data from file and zero-terminate
if (size && (data = (void *)malloc(size + 1))) {
    size = fread(data, 1, size, hProfile);
    *(data + size) = 0;
    // attach retrieved profile data to bitmap
    FIICCPROFILE *profile = FreeImage_CreateICCProfile (bitmap, data, size);
    free (data);
}