Función EngCreatePalette (winddi.h)

La función EngCreatePalette envía una solicitud a GDI para crear una paleta RGB.

Sintaxis

ENGAPI HPALETTE EngCreatePalette(
  [in] ULONG iMode,
  [in] ULONG cColors,
  [in] ULONG *pulColors,
  [in] FLONG flRed,
  [in] FLONG flGreen,
  [in] FLONG flBlue
);

Parámetros

[in] iMode

Especifica cómo se definirá la paleta. Este parámetro puede ser uno de los valores siguientes:

Valor Significado
PAL_BITFIELDS La paleta se define mediante los parámetros flRed, flGreen y flBlue .
PAL_BGR El dispositivo acepta colores RGB directamente, con B (azul) como el byte menos significativo.
PAL_CMYK El dispositivo acepta los colores CMYK directamente, con C (cian) como el byte menos significativo.
PAL_INDEXED Una matriz de colores RGB se proporciona con cColors y pulColors.
PAL_RGB El dispositivo acepta colores RGB directamente, con R (rojo) como el byte menos significativo.

[in] cColors

Si el parámetro iMode es PAL_INDEXED, cColors especifica el número de colores proporcionados en la matriz a la que apunta pulColors. De lo contrario, este parámetro debe ser cero.

[in] pulColors

Puntero al principio de una matriz de valores de ULONG si iMode es PAL_INDEXED. Los 3 bytes de orden bajo de cada ULONG definen los colores RGB en la paleta.

[in] flRed

Si el parámetro iMode es PAL_BITFIELDS, los parámetros flRed, flGreen y flBlue son máscaras que muestran qué bits corresponden a rojo, verde y azul. Cada máscara debe constar de bits contiguos y no debe superponerse a otras máscaras. GDI admite todas las combinaciones de campos de bits.

[in] flGreen

Si el parámetro iMode es PAL_BITFIELDS, los parámetros flRed, flGreen y flBlue son máscaras que muestran qué bits corresponden a rojo, verde y azul. Cada máscara debe constar de bits contiguos y no debe superponerse a otras máscaras. GDI admite todas las combinaciones de campos de bits.

[in] flBlue

Si el parámetro iMode es PAL_BITFIELDS, los parámetros flRed, flGreen y flBlue son máscaras que muestran qué bits corresponden a rojo, verde y azul. Cada máscara debe constar de bits contiguos y no debe superponerse a otras máscaras. GDI admite todas las combinaciones de campos de bits.

Valor devuelto

El valor devuelto es un identificador de la nueva paleta si la función se ejecuta correctamente. De lo contrario, es cero y se registra un código de error.

Comentarios

El controlador puede asociar la nueva paleta a un dispositivo devolviendo un puntero a la paleta en la estructura DEVINFO .

Una paleta de PAL_INDEXED asociada al dispositivo debe tener su primera entrada de índice establecida en negro (rojo = 0, verde = 0, azul = 0) y su última entrada establecida en blanco (255, 255, 255, 255). Todas las demás entradas deben establecerse para que las entradas cuyos índices sean complementos entre sí tengan colores que contrasten en gran medida. Por ejemplo, si la entrada 0x9 de una paleta de 16 entradas se establece en verde puro (0,255,0), la entrada 0x6 (=~0x9) debe establecerse en un color que contrasta bien con el verde, como el púrpura oscuro (128.0.128). Establecer entradas de esta manera permite que las operaciones de ráster XOR se comporten razonablemente. Debe eliminar la paleta cuando ya no la necesite mediante EngDeletePalette.

Requisitos

Requisito Value
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

DEVINFO

DrvSetPalette

EngDeletePalette