Funzione DrawDibBegin (vfw.h)
La funzione DrawDib modifica i parametri di un controller di dominio DrawDib o inizializza un nuovo controller di dominio DrawDib.
Sintassi
BOOL VFWAPI DrawDibBegin(
HDRAWDIB hdd,
HDC hdc,
int dxDst,
int dyDst,
LPBITMAPINFOHEADER lpbi,
int dxSrc,
int dySrc,
UINT wFlags
);
Parametri
hdd
Handle in un controller di dominio DrawDib.
hdc
Gestire un controller di dominio per il disegno. Questo parametro è facoltativo e,
dxDst
Larghezza, in MM_TEXT unità client, del rettangolo di destinazione.
dyDst
Altezza, in MM_TEXT unità client, del rettangolo di destinazione.
lpbi
Puntatore a una struttura BITMAPINFOHEADER contenente il formato dell'immagine. La tabella dei colori per DIB segue il formato dell'immagine e il membro biHeight deve essere un valore positivo.
dxSrc
Larghezza, in pixel, del rettangolo di origine.
dySrc
Altezza, in pixel, del rettangolo di origine.
wFlags
Flag applicabili per la funzione. I valori seguenti sono definiti.
Valore | Significato |
---|---|
DDF_ANIMATE | Consente l'animazione della tavolozza. Se questo valore è presente, DrawDib riserva il maggior numero possibile di voci impostando PC_RESERVED nelle voci della matrice palPalEntry della struttura LOGPALETTE e la tavolozza può essere animata usando la funzione DrawDibChangePalette . Se l'applicazione usa la funzione DrawDibBegin con la funzione DrawDibDraw, impostare questo valore con DrawDibBegin anziché DrawDibDraw. |
DDF_BACKGROUNDPAL | Realizza la tavolozza utilizzata per il disegno come attività di sfondo, lasciando la tavolozza corrente usata per la visualizzazione invariata. Questo valore è a vicenda esclusivo di DDF_SAME_HDC. |
DDF_BUFFER | Causa che DrawDib tenti di usare un buffer fuori schermo in modo che DDF_UPDATE può essere usato. Ciò disabilita la decompressione e il disegno direttamente sullo schermo. Se DrawDib non è in grado di creare un buffer fuori schermo, decompresse o disegnare direttamente sullo schermo. Per altre informazioni, vedere i valori DDF_UPDATE e DDF_DONTDRAW descritti per DrawDibDraw. |
DDF_DONTDRAW | L'immagine corrente non viene disegnata, ma viene decompressa. DDF_UPDATE può essere usato in un secondo momento per disegnare l'immagine. Questo flag sostituisce il flag di DDF_PREROLL . |
DDF_FULLSCREEN | Non supportato. |
DDF_HALFTONE | Sempre dithers the DIB a una tavolozza standard indipendentemente dalla tavolozza del DIB. Se l'applicazione usa DrawDibBegin con DrawDibDraw, impostare questo valore con DrawDibBegin anziché DrawDibDraw. |
DDF_JUSTDRAWIT | Disegna l'immagine usando GDI. Impedisce le funzioni DrawDib da decompressione, estensione o dithering dell'immagine. Questo strips DrawDib delle funzionalità che lo differenziano dalla funzione StretchDIBits . |
DDF_SAME_DRAW | Usare i parametri di disegno correnti per DrawDibDraw. Usare questo valore solo se lpbi, dxDest, dyDest, dxSrc e dySrc non sono stati modificati dopo l'uso di DrawDibDraw o DrawDibBegin. Questo flag sostituisce i flag di DDF_SAME_DIB e DDF_SAME_SIZE . |
DDF_SAME_HDC | Usare l'handle DC corrente e la tavolozza attualmente associata al controller di dominio. |
DDF_UPDATE | L'ultima bitmap memorizzata nel buffer deve essere ridisegnata. Se il disegno ha esito negativo con questo valore, un'immagine memorizzata nel buffer non è disponibile e deve essere specificata una nuova immagine prima che la visualizzazione possa essere aggiornata. |
Valore restituito
Restituisce TRUE se ha esito positivo o FALSE in caso contrario.
Commenti
Questa funzione prepara a disegnare un DIB specificato da lpbi al controller di dominio. L'immagine viene estesa alle dimensioni specificate da dxDest e dyDest. Se dxDest e dyDest sono impostati su −1, il valore DIB viene disegnato su una scala 1:1 senza estendere.
È possibile aggiornare i flag di un controller di dominio DrawDib ripubblicando DrawDibBegin, specificando i nuovi flag e modificando almeno una delle impostazioni seguenti: dxDest, dyDest, lpbi, dxSrc o dySrc.
Se i parametri di DrawDibBegin non sono stati modificati, le chiamate successive alla funzione non hanno alcun effetto.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | vfw.h |
Libreria | Vfw32.lib |
DLL | Msvfw32.dll |