Funzione EngCreatePalette (winddi.h)
La funzione EngCreatePalette invia una richiesta a GDI per creare una tavolozza RGB.
Sintassi
ENGAPI HPALETTE EngCreatePalette(
[in] ULONG iMode,
[in] ULONG cColors,
[in] ULONG *pulColors,
[in] FLONG flRed,
[in] FLONG flGreen,
[in] FLONG flBlue
);
Parametri
[in] iMode
Specifica la modalità di definizione della tavolozza. Questo parametro può essere uno dei valori seguenti:
Valore | Significato |
---|---|
PAL_BITFIELDS | La tavolozza è definita dai parametri flRed, flGreen e flBlue . |
PAL_BGR | Il dispositivo accetta direttamente i colori RGB, con B (blu) come byte meno significativo. |
PAL_CMYK | Il dispositivo accetta direttamente i colori CMYK, con C (ciano) come byte meno significativo. |
PAL_INDEXED | Una matrice di colori RGB viene fornita con cColors e pulColors. |
PAL_RGB | Il dispositivo accetta direttamente i colori RGB, con R (rosso) come byte meno significativo. |
[in] cColors
Se il parametro iMode è PAL_INDEXED, cColors specifica il numero di colori forniti nella matrice a cui punta pulColors. In caso contrario, questo parametro deve essere zero.
[in] pulColors
Puntatore all'inizio di una matrice di valori ULONG se iMode è PAL_INDEXED. I 3 byte bassi di ogni ULONG definiscono i colori RGB nella tavolozza.
[in] flRed
Se il parametro iMode è PAL_BITFIELDS, i parametri flRed, flGreen e flBlue sono maschere che mostrano quali bit corrispondono a rosso, verde e blu. Ogni maschera deve essere costituita da bit contigui e non deve sovrapporsi ad altre maschere. Tutte le combinazioni di campi di bit sono supportate da GDI.
[in] flGreen
Se il parametro iMode è PAL_BITFIELDS, i parametri flRed, flGreen e flBlue sono maschere che mostrano quali bit corrispondono a rosso, verde e blu. Ogni maschera deve essere costituita da bit contigui e non deve sovrapporsi ad altre maschere. Tutte le combinazioni di campi di bit sono supportate da GDI.
[in] flBlue
Se il parametro iMode è PAL_BITFIELDS, i parametri flRed, flGreen e flBlue sono maschere che mostrano quali bit corrispondono a rosso, verde e blu. Ogni maschera deve essere costituita da bit contigui e non deve sovrapporsi ad altre maschere. Tutte le combinazioni di campi di bit sono supportate da GDI.
Valore restituito
Il valore restituito è un handle per la nuova tavolozza se la funzione ha esito positivo. In caso contrario, è zero e viene registrato un codice di errore.
Commenti
Il driver può associare la nuova tavolozza a un dispositivo restituendo un puntatore alla tavolozza nella struttura DEVINFO .
Una tavolozza PAL_INDEXED associata al dispositivo deve avere la prima voce di indice impostata su nero (rosso = 0, verde = 0, blu = 0) e l'ultima voce impostata su bianco (255, 255, 255). Tutte le altre voci devono essere impostate in modo che le voci i cui indici siano complementari tra loro abbiano colori che contrastano notevolmente. Ad esempio, se la voce 0x9 di una tavolozza di 16 voci è impostata su verde puro (0,255,0), la voce 0x6 (=~0x9) deve essere impostata su un colore che contrasta bene con il verde, ad esempio viola scuro (128,0,128). L'impostazione delle voci in questo modo consente alle operazioni raster XOR di comportarsi ragionevolmente. È consigliabile eliminare la tavolozza quando non è più necessaria usando EngDeletePalette.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows 2000 e versioni successive dei sistemi operativi Windows. |
Piattaforma di destinazione | Universale |
Intestazione | winddi.h (include Winddi.h) |
Libreria | Win32k.lib |
DLL | Win32k.sys |