Função DrawDibDraw (vfw.h)
A função DrawDibDraw desenha um DIB para a tela.
Sintaxe
BOOL VFWAPI DrawDibDraw(
HDRAWDIB hdd,
HDC hdc,
int xDst,
int yDst,
int dxDst,
int dyDst,
LPBITMAPINFOHEADER lpbi,
LPVOID lpBits,
int xSrc,
int ySrc,
int dxSrc,
int dySrc,
UINT wFlags
);
Parâmetros
hdd
Manipule para um DC DrawDib.
hdc
Manipule para o DC.
xDst
A coordenada x, em MM_TEXT coordenadas do cliente, do canto superior esquerdo do retângulo de destino.
yDst
A coordenada y, em MM_TEXT coordenadas do cliente, do canto superior esquerdo do retângulo de destino.
dxDst
Largura, em MM_TEXT coordenadas do cliente, do retângulo de destino. Se dxDst for −1, a largura do bitmap será usada.
dyDst
Altura, em MM_TEXT coordenadas do cliente, do retângulo de destino. Se dyDst for −1, a altura do bitmap será usada.
lpbi
Ponteiro para a estrutura BITMAPINFOHEADER que contém o formato de imagem. A tabela de cores do DIB dentro de BITMAPINFOHEADER segue o formato e o membro biHeight deve ser um valor positivo; DrawDibDraw não desenhará DIBs invertidos.
lpBits
Ponteiro para o buffer que contém os bits de bitmap.
xSrc
A coordenada x, em pixels, do canto superior esquerdo do retângulo de origem. As coordenadas (0,0) representam o canto superior esquerdo do bitmap.
ySrc
A coordenada y, em pixels, do canto superior esquerdo do retângulo de origem. As coordenadas (0,0) representam o canto superior esquerdo do bitmap.
dxSrc
Largura, em pixels, do retângulo de origem.
dySrc
Altura, em pixels, do retângulo de origem.
wFlags
Sinalizadores aplicáveis para desenho. Os valores a seguir são definidos.
Valor | Significado |
---|---|
DDF_BACKGROUNDPAL | Percebe a paleta usada para desenhar em segundo plano, deixando a paleta real usada para exibição inalterada. Esse valor só será válido se DDF_SAME_HDC não estiver definido. |
DDF_DONTDRAW | A imagem atual é descompactada, mas não desenhada. Esse sinalizador substitui o sinalizador DDF_PREROLL . |
DDF_FULLSCREEN | Sem suporte. |
DDF_HALFTONE | Sempre dithers o DIB para uma paleta padrão, independentemente da paleta do DIB. Se o aplicativo usar a função DrawDibBegin , defina esse valor em DrawDibBegin em vez de em DrawDibDraw. |
DDF_HURRYUP | Os dados não precisam ser desenhados (ou seja, podem ser descartados) e DDF_UPDATE não serão usados para recuperar essas informações. DrawDib verifica esse valor somente se for necessário criar o próximo quadro; caso contrário, o valor será ignorado. Esse valor geralmente é usado para sincronizar vídeo e áudio. Ao sincronizar dados, os aplicativos devem enviar a imagem com esse valor caso o driver precise armazenar o quadro em buffer para descompactar os quadros subsequentes. |
DDF_NOTKEYFRAME | Os dados DIB não são um quadro-chave. |
DDF_SAME_HDC | Use o identificador dc atual e a paleta atualmente associada ao DC. |
DDF_SAME_DRAW | Use os parâmetros de desenho atuais para DrawDibDraw. Use esse valor somente se lpbi, dxDst, dyDst, dxSrc e dySrc não tiverem sido alterados desde o uso de DrawDibDraw ou DrawDibBegin. DrawDibDraw normalmente verifica os parâmetros e, se eles foram alterados, DrawDibBegin prepara o DRAWDib DC para desenho. Esse sinalizador substitui os sinalizadores DDF_SAME_DIB e DDF_SAME_SIZE . |
DDF_UPDATE | O último bitmap em buffer deve ser redesenhado. Se o desenho falhar com esse valor, uma imagem em buffer não estará disponível e uma nova imagem precisará ser especificada antes que a exibição possa ser atualizada. |
Valor retornado
Retornará TRUE se tiver êxito ou FALSE caso contrário.
Comentários
DDF_DONTDRAW faz com que DrawDibDraw descompacte, mas não exiba uma imagem. Uma chamada subsequente para DrawDibDraw especificando DDF_UPDATE exibe a imagem.
Se o DC DrawDib não tiver um buffer fora da tela especificado, especificar DDF_DONTDRAW fará com que o quadro seja desenhado para a tela imediatamente. Chamadas subsequentes para DrawDibDraw especificando DDF_UPDATE falha.
Embora sejam definidos em momentos diferentes, DDF_UPDATE e DDF_DONTDRAW podem ser usados juntos para criar imagens compostas fora da tela. Quando a imagem fora da tela for concluída, você poderá exibir a imagem chamando DrawDibDraw.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | vfw.h |
Biblioteca | Vfw32.lib |
DLL | Msvfw32.dll |