Función TransparentBlt (wingdi.h)

La función TransparentBlt realiza una transferencia de bloque de bits de los datos de color correspondientes a un rectángulo de píxeles del contexto de dispositivo de origen especificado en un contexto de dispositivo de destino.

Sintaxis

BOOL TransparentBlt(
  [in] HDC  hdcDest,
  [in] int  xoriginDest,
  [in] int  yoriginDest,
  [in] int  wDest,
  [in] int  hDest,
  [in] HDC  hdcSrc,
  [in] int  xoriginSrc,
  [in] int  yoriginSrc,
  [in] int  wSrc,
  [in] int  hSrc,
  [in] UINT crTransparent
);

Parámetros

[in] hdcDest

Controlar el contexto del dispositivo de destino.

[in] xoriginDest

Coordenada x, en unidades lógicas, de la esquina superior izquierda del rectángulo de destino.

[in] yoriginDest

Coordenada y, en unidades lógicas, de la esquina superior izquierda del rectángulo de destino.

[in] wDest

Ancho, en unidades lógicas, del rectángulo de destino.

[in] hDest

Alto, en unidades lógicas, del rectángulo de destino.

[in] hdcSrc

Identificador del contexto del dispositivo de origen.

[in] xoriginSrc

Coordenada x, en unidades lógicas, del rectángulo de origen.

[in] yoriginSrc

Coordenada y, en unidades lógicas, del rectángulo de origen.

[in] wSrc

Ancho, en unidades lógicas, del rectángulo de origen.

[in] hSrc

Alto, en unidades lógicas, del rectángulo de origen.

[in] crTransparent

Color RGB del mapa de bits de origen que se va a tratar como transparente.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es TRUE.

Si se produce un error en la función, el valor devuelto es FALSE.

Comentarios

La función TransparentBlt funciona con mapas de bits compatibles (DDB).

La función TransparentBlt admite todos los formatos de mapas de bits de origen. Sin embargo, para 32 mapas de bits bpp, simplemente copia el valor alfa. Use AlphaBlend para especificar mapas de bits por píxel de 32 bits con transparencia.

Si los rectángulos de origen y destino no tienen el mismo tamaño, el mapa de bits de origen se extiende para que coincida con el rectángulo de destino. Cuando se usa la función SetStretchBltMode , los modos iStretchMode de BLACKONWHITE y WHITEONBLACK se convierten en COLORONCOLOR para la función TransparentBlt .

El contexto del dispositivo de destino especifica el tipo de transformación para las coordenadas de destino. El contexto del dispositivo de origen especifica el tipo de transformación para las coordenadas de origen.

TransparentBlt no refleja un mapa de bits si el ancho o alto, del origen o el destino, es negativo.

Cuando se usa en un sistema de varios monitores, tanto hdcSrc como hdcDest deben hacer referencia al mismo dispositivo o se producirá un error en la función. Para transferir datos entre controladores de dominio para distintos dispositivos, convierta el mapa de bits de memoria en una DIB mediante una llamada a GetDIBits. Para mostrar la DIB en el segundo dispositivo, llame a SetDIBits o StretchDIBits.

Requisitos

Requisito Value
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 wingdi.h (incluye Windows.h)
Library Msimg32.lib
Archivo DLL Msimg32.dll

Consulte también

AlphaBlend

Funciones de mapa de bits

Información general sobre mapas de bits

GetDIBits

SetDIBits

SetStretchBltMode

StretchDIBits