Funzione SetDIBits (wingdi.h)
La funzione SetDIBits imposta i pixel in una bitmap compatibile (DDB) usando i dati di colore trovati nel DIB specificato.
Sintassi
int SetDIBits(
[in] HDC hdc,
[in] HBITMAP hbm,
[in] UINT start,
[in] UINT cLines,
[in] const VOID *lpBits,
[in] const BITMAPINFO *lpbmi,
[in] UINT ColorUse
);
Parametri
[in] hdc
Handle per un contesto di dispositivo.
[in] hbm
Handle per la bitmap compatibile (DDB) che deve essere modificata usando i dati di colore dal DIB specificato.
[in] start
Riga di analisi iniziale per i dati di colore indipendenti dal dispositivo nella matrice a cui punta il parametro lpvBits .
[in] cLines
Numero di righe di analisi trovate nella matrice contenente dati di colore indipendenti dal dispositivo.
[in] lpBits
Puntatore ai dati dei colori DIB archiviati come matrice di byte. Il formato dei valori bitmap dipende dal membro biBitCount della struttura BITMAPINFO a cui punta il parametro lpbmi .
[in] lpbmi
Puntatore a una struttura BITMAPINFO che contiene informazioni sul DIB.
[in] ColorUse
Indica se il membro bmiColors della struttura BITMAPINFO è stato fornito e, in tal caso, se bmiColors contiene valori rossi, verdi, blu (RGB) o indici della tavolozza. Il parametro fuColorUse deve essere uno dei valori seguenti.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è il numero di righe di analisi copiate.
Se la funzione ha esito negativo, il valore restituito è zero.
Questo può essere il valore seguente.
Codice restituito | Descrizione |
---|---|
|
Uno o più parametri di input non sono validi. |
Commenti
La velocità di disegno bitmap ottimale viene ottenuta quando i bit bitmap sono indici nella tavolozza di sistema.
Le applicazioni possono recuperare i colori e gli indici del riquadro di sistema chiamando la funzione GetSystemPaletteEntries . Dopo aver recuperato i colori e gli indici, l'applicazione può creare il DIB. Per altre informazioni, vedere Tavolozza sistema.
Il contesto del dispositivo identificato dal parametro hdc viene usato solo se la costante DIB_PAL_COLORS è impostata per il parametro fuColorUse ; in caso contrario, viene ignorato.
La bitmap identificata dal parametro hbmp non deve essere selezionata in un contesto del dispositivo quando l'applicazione chiama questa funzione.
Le righe di analisi devono essere allineate su una DWORD , ad eccezione delle bitmap compresse da RLE.
L'origine per i DIB in basso è l'angolo inferiore sinistro della bitmap; l'origine per i DIB in alto verso il basso è l'angolo superiore sinistro della bitmap.
ICM: La gestione dei colori viene eseguita se la gestione dei colori è stata abilitata con una chiamata a SetICMMode con il parametro iEnableICM impostato su ICM_ON. Se la bitmap specificata da lpbmi ha un BITMAPV4HEADER che specifica i membri gamma ed endpoint o un BITMAPV5HEADER che specifica i membri gamma ed endpoint o i membri profileData e profileSize, la chiamata considera i pixel della bitmap come espressi nello spazio colori descritto dai membri, anziché nello spazio colore del contesto del dispositivo.
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 |