Funzione CreateDIBitmap (wingdi.h)
La funzione CreateDIBitmap crea una bitmap compatibile (DDB) da un DIB e, facoltativamente, imposta i bit bitmap.
Sintassi
HBITMAP CreateDIBitmap(
[in] HDC hdc,
[in] const BITMAPINFOHEADER *pbmih,
[in] DWORD flInit,
[in] const VOID *pjBits,
[in] const BITMAPINFO *pbmi,
[in] UINT iUsage
);
Parametri
[in] hdc
Handle per un contesto di dispositivo.
[in] pbmih
Puntatore a una struttura di intestazione di informazioni bitmap , BITMAPV5HEADER.
Se fdwInit è CBM_INIT, la funzione usa la struttura di intestazione delle informazioni bitmap per ottenere la larghezza e l'altezza desiderate della bitmap, nonché altre informazioni. Si noti che un valore positivo per l'altezza indica un DIB inferiore mentre un valore negativo per l'altezza indica un DIB dall'alto verso il basso. La chiamata a CreateDIBitmap con fdwInit come CBM_INIT equivale a chiamare la funzione CreateCompatibleBitmap per creare un DDB nel formato del dispositivo e quindi chiamare la funzione SetDIBits per convertire i bit DIB nel DDB.
[in] flInit
Specifica il modo in cui il sistema inizializza i bit bitmap. Viene definito il valore seguente.
Se fdwInit è zero, il sistema non inizializza i bit bitmap.
[in] pjBits
Puntatore a una matrice di byte contenente i dati bitmap iniziali. Il formato dei dati dipende dal membro biBitCount della struttura BITMAPINFO a cui punta il parametro lpbmi .
[in] pbmi
Puntatore a una struttura BITMAPINFO che descrive le dimensioni e il formato di colore della matrice a cui punta il parametro lpbInit .
[in] iUsage
Specifica se il membro bmiColors della struttura BITMAPINFO è stato inizializzato e, in tal caso, se bmiColors contiene valori espliciti rosso, verde, blu (RGB) o indici della tavolozza. Il parametro fuUsage deve essere uno dei valori seguenti.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è un handle per la bitmap compatibile.
Se la funzione ha esito negativo, il valore restituito è NULL.
Commenti
Il DDB creato sarà la profondità di bit del controller di dominio di riferimento. Per creare una bitmap con profondità di bit diversa, usare CreateDIBSection.
Affinché un dispositivo raggiunga una velocità di disegno bitmap ottimale, specificare fdwInit come CBM_INIT. Usare quindi lo stesso DIB della profondità dei colori della modalità video. Quando il video è in esecuzione 4 o 8 bpp, usare DIB_PAL_COLORS.
Il flag CBM_CREATDIB per il parametro fdwInit non è più supportato.
Quando la bitmap non è più necessaria, chiamare la funzione DeleteObject per eliminarla.
ICM: Non viene eseguita alcuna gestione dei colori. Il contenuto della bitmap risultante non corrisponde al colore dopo la creazione della bitmap.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wingdi.h (include Windows.h) |
Libreria | Gdi32.lib |
DLL | Gdi32.dll |