Función CreateDIBitmap (wingdi.h)
La función CreateDIBitmap crea un mapa de bits compatible (DDB) a partir de una DIB y, opcionalmente, establece los bits de mapa de bits.
Sintaxis
HBITMAP CreateDIBitmap(
[in] HDC hdc,
[in] const BITMAPINFOHEADER *pbmih,
[in] DWORD flInit,
[in] const VOID *pjBits,
[in] const BITMAPINFO *pbmi,
[in] UINT iUsage
);
Parámetros
[in] hdc
Identificador de un contexto de dispositivo.
[in] pbmih
Puntero a una estructura de encabezado de información de mapa de bits, BITMAPV5HEADER.
Si fdwInit es CBM_INIT, la función usa la estructura del encabezado de información de mapa de bits para obtener el ancho y alto deseados del mapa de bits, así como otra información. Tenga en cuenta que un valor positivo para el alto indica una DIB de abajo arriba mientras que un valor negativo para la altura indica una DIB de arriba abajo. Llamar a CreateDIBitmap con fdwInit como CBM_INIT equivale a llamar a la función CreateCompatibleBitmap para crear una DDB en el formato del dispositivo y, a continuación, llamar a la función SetDIBits para traducir los bits DIB a DDB.
[in] flInit
Especifica cómo inicializa el sistema los bits de mapa de bits. Se define el siguiente valor.
Si fdwInit es cero, el sistema no inicializa los bits de mapa de bits.
[in] pjBits
Puntero a una matriz de bytes que contiene los datos iniciales del mapa de bits. El formato de los datos depende del miembro biBitCount de la estructura BITMAPINFO a la que apunta el parámetro lpbmi .
[in] pbmi
Puntero a una estructura BITMAPINFO que describe las dimensiones y el formato de color de la matriz a la que apunta el parámetro lpbInit .
[in] iUsage
Especifica si el miembro rgbColors de la estructura BITMAPINFO se inicializó y, si es así, si el color corporal contiene valores explícitos rojo, verde, azul (RGB) o índices de paleta. El parámetro fuUsage debe ser uno de los valores siguientes.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es un identificador para el mapa de bits compatible.
Si la función no se realiza correctamente, el valor devuelto es NULL.
Comentarios
La DDB que se crea será la profundidad de bits que tenga el controlador de dominio de referencia. Para crear un mapa de bits con una profundidad de bits diferente, use CreateDIBSection.
Para que un dispositivo alcance una velocidad óptima de dibujo de mapa de bits, especifique fdwInit como CBM_INIT. A continuación, use la misma DIB de profundidad de color que el modo de vídeo. Cuando el vídeo se ejecute de 4 o 8 bpp, use DIB_PAL_COLORS.
Ya no se admite la marca CBM_CREATDIB para el parámetro fdwInit .
Cuando ya no necesite el mapa de bits, llame a la función DeleteObject para eliminarlo.
ICM: No se realiza ninguna administración de colores. El contenido del mapa de bits resultante no coincide con el color después de crear el mapa de bits.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wingdi.h (incluye Windows.h) |
Library | Gdi32.lib |
Archivo DLL | Gdi32.dll |