freeimage.h

FreeImage_ConvertFromRawBits

1 4 8 16 24 32

DLL_API FIBITMAP *DLL_CALLCONV FreeImage_ConvertFromRawBits(BYTE *bits, int width, int
height, int pitch, unsigned bpp, unsigned red_mask, unsigned green_mask, unsigned
blue_mask, BOOL topdown FI_DEFAULT(FALSE));

Convierte un mapa de bits crudo (raw) almacenado en memoria a FIBITMAP. Los parámetros en esta función se usan para describir el mapa de bits crudo. El primer parámetro es un puntero al comienzo de los bits en crudo. Los parámetros width y height describen el tamaño del mapa de bits. El parámetro pitch define la anchura total de una scanline en el mapa de bits fuente, incluyendo bytes de relleno que se hayan podido aplicar. El parámetro bpp indica a FreeImage qué profundidad de bits tiene el mapa de bits. Los parámetros red_mask, green_mask y blue_mask indican a FreeImage el diseño de los componentes de bits de color del mapa de bits. El último parámetro, topdown, indica que se almacenae primero el pixel superior izquierdo cuando es TRUE o el inferior izquierdo cuando es FALSE.

Cuando el mapa de bits de entrada usa un relleno de 32-bit, se puede calcular el pitch usando la siguiente fórmula:

int pitch = ((((bpp * width) + 31) / 32) * 4);