La struttura BITMAPINFO ha la seguente forma:
typedef struct {tagBITMAPI&NFO
nbsp; BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors [1];
} BITMAPINFO
La struttura BITMAPINFO definisce le dimensioni e le informazioni sul colore per device-independent bitmap Windows (DIB).
Membri
bmiHeader
Specifica una struttura BITMAPINFOHEADER che contiene informazioni sulle dimensioni e colori formato di device-independent bitmap.
bmiColors
Specifica una matrice di tipi di dati RGBQUAD o DWORD che definiscono i colori della bitmap.
Commenti
Device-independent bitmap è costituito da due parti distinte: una struttura BITMAPINFO che descrive le dimensioni e colori della bitmap e una matrice di byte che definiscono i pixel dell'immagine bitmap. I bit della matrice sono imballati insieme, ma ogni linea di scansione deve essere imbottita con zeri a finire su un lungo confine. Se l'altezza è positivo, l'origine della bitmap è l'angolo inferiore sinistro. Se l'altezza è negativo, l'origine corrisponde all'angolo superiore sinistro.
Il membro biBitCount della struttura BITMAPINFOHEADER determina il numero di bit che definiscono ogni pixel e il massimo numero di colori della bitmap. Questo membro può essere uno dei seguenti valori:
Il membro biClrUsed della struttura BITMAPINFOHEADER specifica il numero di indici di colore nella tabella di colore che vengono effettivamente utilizzati da bitmap. Se il membro biClrUsed è impostato a zero, la bitmap viene utilizzato il numero massimo di colori corrispondente al valore del membro biBitCount.
I colori della tabella bmiColors dovrebbero apparire in ordine di importanza. In alternativa, per le funzioni che utilizzano DIB, il membro bmiColors può essere una matrice di interi senza segno a 16 bit che specificano gli indici nella tavolozza logica attualmente realizzata, anziché i valori RGB espliciti. In questo caso, un'applicazione che utilizza l'immagine bitmap necessario chiamare le funzioni Windows DIB ( CreateDIBitmap, CreateDIBPatternBrush, e CreateDIBSection) con il parametro iUsage impostato su DIB_PAL_COLORS.
Se la bitmap è una bitmap imballata (cioè, una bitmap in cui la bitmap matrice immediatamente segue l'intestazione BITMAPINFO e cui viene fatto riferimento da un unico puntatore), il membro biClrUsed deve essere impostato su un numero pari quando si utilizza la modalità DIB_PAL_COLORS modo la matrice di bitmap DIB inizia su un confine DWORD.
&Notanbsp; Il membro bmiColors non dovrebbe contenere gli indici tavolozza se la bitmap deve essere memorizzato in un file o trasferiti ad un'altra applicazione. A meno che l'applicazione ha l'uso esclusivo e controllo della bitmap, la tabella dei colori bitmap dovrebbe contenere valori RGB espliciti.
Vedere a&nchenbsp;CBrush::CreateDIBPatternBrush