Compartir a través de


Función DrawDibDraw (vfw.h)

La función DrawDibDraw dibuja una DIB en la pantalla.

Sintaxis

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

Identificador de un controlador DrawDib DC.

hdc

Identificador del controlador de dominio.

xDst

Coordenada x, en MM_TEXT coordenadas de cliente, de la esquina superior izquierda del rectángulo de destino.

yDst

Coordenada y, en MM_TEXT coordenadas de cliente, de la esquina superior izquierda del rectángulo de destino.

dxDst

Ancho, en MM_TEXT coordenadas de cliente, del rectángulo de destino. Si dxDst es −1, se utiliza el ancho del mapa de bits.

dyDst

Alto, en MM_TEXT coordenadas del cliente, del rectángulo de destino. Si dyDst es −1, se utiliza el alto del mapa de bits.

lpbi

Puntero a la estructura BITMAPINFOHEADER que contiene el formato de imagen. La tabla de colores para la DIB dentro de BITMAPINFOHEADER sigue el formato y el miembro biHeight debe ser un valor positivo; DrawDibDraw no dibujará DIB invertidos.

lpBits

Puntero al búfer que contiene los bits de mapa de bits.

xSrc

Coordenada x, en píxeles, de la esquina superior izquierda del rectángulo de origen. Las coordenadas (0,0) representan la esquina superior izquierda del mapa de bits.

ySrc

Coordenada y, en píxeles, de la esquina superior izquierda del rectángulo de origen. Las coordenadas (0,0) representan la esquina superior izquierda del mapa de bits.

dxSrc

Ancho, en píxeles, del rectángulo de origen.

dySrc

Alto, en píxeles, del rectángulo de origen.

wFlags

Marcas aplicables para dibujar. Se definen los valores siguientes.

Valor Significado
DDF_BACKGROUNDPAL Se da cuenta de la paleta utilizada para dibujar en segundo plano, dejando la paleta real usada para mostrar sin cambios. Este valor solo es válido si no se establece DDF_SAME_HDC.
DDF_DONTDRAW La imagen actual está descomprimida pero no dibujada. Esta marca sustituye a la marca de DDF_PREROLL .
DDF_FULLSCREEN No compatible.
DDF_HALFTONE Siempre dilate la DIB a una paleta estándar independientemente de la paleta del DIB. Si la aplicación usa la función DrawDibBegin , establezca este valor en DrawDibBegin en lugar de en DrawDibDraw.
DDF_HURRYUP Los datos no tienen que dibujarse (es decir, se pueden quitar) y DDF_UPDATE no se usarán para recuperar esta información. DrawDib comprueba este valor solo si es necesario compilar el siguiente marco; de lo contrario, se omite el valor. Este valor se suele usar para sincronizar el vídeo y el audio. Al sincronizar datos, las aplicaciones deben enviar la imagen con este valor en caso de que el controlador necesite almacenar en búfer el marco para descomprimir fotogramas posteriores.
DDF_NOTKEYFRAME Los datos DIB no son un fotograma clave.
DDF_SAME_HDC Use el controlador de dominio actual y la paleta asociadas actualmente al controlador de dominio.
DDF_SAME_DRAW Use los parámetros de dibujo actuales para DrawDibDraw. Use este valor solo si lpbi, dxDst, dyDst, dxSrc y dySrc no han cambiado desde el uso de DrawDibDraw o DrawDibBegin. DrawDibDraw normalmente comprueba los parámetros y, si han cambiado, DrawDibBegin prepara el controlador de dominio DrawDib para dibujar. Esta marca reemplaza las marcas DDF_SAME_DIB y DDF_SAME_SIZE .
DDF_UPDATE El último mapa de bits almacenado en búfer es volver a dibujar. Si se produce un error en el dibujo con este valor, no hay disponible una imagen almacenada en búfer y es necesario especificar una nueva imagen antes de que se pueda actualizar la pantalla.

Valor devuelto

Devuelve TRUE si es correcto o FALSE de lo contrario.

Comentarios

DDF_DONTDRAW hace que DrawDibDraw descomprima pero no muestre una imagen. Una llamada posterior a DrawDibDraw que especifica DDF_UPDATE muestra la imagen.

Si el controlador de dominio DrawDib no tiene especificado un búfer fuera de pantalla, especificar DDF_DONTDRAW hace que el fotograma se dibuje inmediatamente en la pantalla. Las llamadas posteriores a DrawDibDraw que especifican DDF_UPDATE producen un error.

Aunque se establecen en momentos diferentes, DDF_UPDATE y DDF_DONTDRAW se pueden usar conjuntamente para crear imágenes compuestas fuera de la pantalla. Una vez completada la imagen fuera de la pantalla, puede mostrar la imagen llamando a DrawDibDraw.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado vfw.h
Library Vfw32.lib
Archivo DLL Msvfw32.dll

Consulte también

Funciones DrawDib