Metodo Bitmap::LockBits (gdiplusheaders.h)
Il metodo Bitmap::LockBits blocca una parte rettangolare di questa bitmap e fornisce un buffer temporaneo che è possibile usare per leggere o scrivere dati pixel in un formato specificato. Tutti i dati pixel scritti nel buffer vengono copiati nell'oggetto Bitmap quando si chiama Bitmap::UnlockBits.
Sintassi
Status LockBits(
[in] const Rect *rect,
[in] UINT flags,
[in] PixelFormat format,
[in, out] BitmapData *lockedBitmapData
);
Parametri
[in] rect
Tipo: const Rect*
Puntatore a un rettangolo che specifica la parte della bitmap da bloccare.
[in] flags
Tipo: UINT
Set di flag che specificano se la parte bloccata della bitmap è disponibile per la lettura o per la scrittura e se il chiamante ha già allocato un buffer. I singoli flag sono definiti nell'enumerazione ImageLockMode .
[in] format
Tipo: PixelFormat
Intero che specifica il formato dei dati pixel nel buffer temporaneo. Il formato pixel del buffer temporaneo non deve corrispondere al formato pixel di questo oggetto Bitmap . Le costanti e il tipo di dati PixelFormat che rappresentano vari formati di pixel sono definiti in Gdipluspixelformats.h. Per altre informazioni sulle costanti di formato pixel, vedere Costanti formato pixel immagine. GDI+ versione 1.0 non supporta l'elaborazione di immagini a 16 bit per canale, pertanto non è consigliabile impostare questo parametro su PixelFormat48bppRGB, PixelFormat64bppARGB o PixelFormat64bppPARGB.
[in, out] lockedBitmapData
Tipo: BitmapData*
Puntatore a un oggetto BitmapData . Se il flag ImageLockModeUserInputBuf del parametro flags viene cancellato, lockedBitmapData funge solo da parametro di output. In tal caso, il membro dati Scan0 dell'oggetto BitmapData riceve un puntatore a un buffer temporaneo, che viene riempito con i valori dei pixel richiesti. Gli altri membri dati dell'oggetto BitmapData ricevono attributi (larghezza, altezza, formato e stride) dei dati pixel nel buffer temporaneo. Se i dati pixel vengono archiviati in basso verso l'alto, il membro dati Stride è negativo. Se i dati pixel vengono archiviati dall'alto verso il basso, il membro dati Stride è positivo. Se il flag ImageLockModeUserInputBuf del parametro flags è impostato, lockedBitmapData funge da parametro di input (ed eventualmente come parametro di output). In tal caso, il chiamante deve allocare un buffer per i dati pixel che verranno letti o scritti. Il chiamante deve anche creare un oggetto BitmapData , impostare il membro dati Scan0 dell'oggetto BitmapData sull'indirizzo del buffer e impostare gli altri membri dati dell'oggetto BitmapData per specificare gli attributi (larghezza, altezza, formato e stride) del buffer.
Valore restituito
Tipo: Stato
Se il metodo ha esito positivo, restituisce Ok, che è un elemento dell'enumerazione Status .
Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .
Requisiti
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdiplusheaders.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |