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

Confira também

Funções DrawDib