Función EngCreateBitmap (winddi.h)

La función EngCreateBitmap solicita que GDI cree y administre un mapa de bits.

Sintaxis

ENGAPI HBITMAP EngCreateBitmap(
       SIZEL sizl,
       LONG  lWidth,
  [in] ULONG iFormat,
  [in] FLONG fl,
  [in] PVOID pvBits
);

Parámetros

sizl

Especifica una estructura SIZEL cuyos miembros contienen el ancho y alto, en píxeles, del mapa de bits que se va a crear. Una estructura SIZEL es idéntica a una estructura SIZE .

Si pvBits no es NULL, este valor debe representar todos los píxeles visibles en el dispositivo, lo que permite que el dispositivo mantenga la memoria desactivada de la pantalla.

lWidth

Especifica el ancho de asignación del mapa de bits, que es el número de bytes que se deben agregar a un puntero para bajar una línea de examen.

[in] iFormat

Especifica el formato del mapa de bits en términos del número de bits de información de color por píxel que son necesarios. Este parámetro puede ser uno de los valores siguientes:

Valor Significado
BMF_1BPP Monocromático
BMF_4BPP 4 bits por píxel
BMF_8BPP 8 bits por píxel
BMF_16BPP 16 bits por píxel
BMF_24BPP 24 bits por píxel
BMF_32BPP 32 bits por píxel
BMF_4RLE 4 bits por píxel; longitud de ejecución codificada
BMF_8RLE 8 bits por píxel; longitud de ejecución codificada

[in] fl

Es una máscara de bits que especifica las propiedades sobre el mapa de bits que se va a crear. Este parámetro puede ser cero o cualquier combinación de los valores siguientes:

Value Significado
BMF_NOZEROINIT GDI no inicializará cero el mapa de bits al asignarlo. Esta marca solo se comprueba cuando pvBits es NULL.
BMF_TOPDOWN La primera línea de examen representa la parte superior del mapa de bits. Tenga en cuenta que los mapas de bits de formato estándar tienen la primera línea de examen en la parte inferior de forma predeterminada.
BMF_USERMEM GDI asignará la memoria para el mapa de bits de la memoria del usuario. De forma predeterminada, la memoria se asigna desde el espacio de direcciones del kernel. Esta marca solo se debe especificar cuando otros procesos no usen el mapa de bits que se va a crear. El controlador de impresora no puede pasar memoria de usuario a EngWritePrinter .

[in] pvBits

Puntero a la primera línea de examen del mapa de bits que se va a crear. Si este parámetro es NULL, GDI asigna el espacio de almacenamiento para los píxeles del mapa de bits. Si pvBits no es NULL, es un puntero al búfer del mapa de bits.

Valor devuelto

Si la función se completa correctamente, el valor devuelto es un identificador que identifica el mapa de bits creado. De lo contrario, el valor devuelto es 0. EngCreateBitmap no registra un código de error.

Comentarios

Opcionalmente, el controlador puede proporcionar almacenamiento para el mapa de bits.

El controlador debe asociar el mapa de bits creado como una superficie llamando a EngAssociateSurface antes de volver de DrvEnableSurface.

El mapa de bits se debe eliminar mediante EngDeleteSurface cuando ya no sea necesario.

Los controladores de visualización del búfer de fotogramas deben usar el parámetro pvBits , lo que permite que GDI haga la mayoría de los dibujos directamente en la pantalla.

Requisitos

   
Cliente mínimo compatible Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winddi.h (incluya Winddi.h)
Library Win32k.lib
Archivo DLL Win32k.sys

Consulte también

DrvCreateDeviceBitmap

EngAllocUserMem