Función EngTransparentBlt (winddi.h)
La función EngTransparentBlt proporciona funcionalidades de transferencia de bloques de bits con transparencia.
Sintaxis
ENGAPI BOOL EngTransparentBlt(
[in] SURFOBJ *psoDst,
[in] SURFOBJ *psoSrc,
[in, optional] CLIPOBJ *pco,
[in, optional] XLATEOBJ *pxlo,
[in] RECTL *prclDst,
[in] RECTL *prclSrc,
[in] ULONG TransColor,
[in] ULONG bCalledFromBitBlt
);
Parámetros
[in] psoDst
Puntero a la estructura SURFOBJ que identifica la superficie de destino en la que se va a dibujar.
[in] psoSrc
Puntero a la estructura SURFOBJ que identifica la superficie de origen de la transferencia de bloques de bits.
[in, optional] pco
Puntero a una estructura CLIPOBJ . Las rutinas de servicio CLIPOBJ_Xxx se proporcionan para enumerar la región del clip como un conjunto de rectángulos. Esta enumeración limita el área del destino que se modifica. Siempre que sea posible, GDI simplifica el recorte implicado.
[in, optional] pxlo
Puntero a una estructura XLATEOBJ que indica cómo se deben traducir los índices de color de origen para escribir en la superficie de destino.
[in] prclDst
Puntero a una estructura RECTL que define el área rectangular que se va a modificar. Este rectángulo se especifica en el sistema de coordenadas de la superficie de destino y se define mediante dos puntos: superior izquierda e inferior derecha. El rectángulo es exclusivo de la parte inferior derecha; es decir, sus bordes inferiores y derecho no forman parte de la transferencia de bloques de bits. Los dos puntos que definen el rectángulo siempre están bien ordenados.
El controlador nunca debe llamar a EngTransparentBlt con un rectángulo de destino vacío.
[in] prclSrc
Puntero a una estructura RECTL que define el área rectangular que se va a copiar. Este rectángulo se especifica en el sistema de coordenadas de la superficie de origen y se define mediante dos puntos: superior izquierda e inferior derecha. Los dos puntos que definen el rectángulo siempre están bien ordenados.
El rectángulo de origen nunca superará los límites de la superficie de origen, por lo que nunca superará la superficie de origen.
Este rectángulo se asigna al rectángulo de destino definido por prclDst. El controlador nunca debe llamar a EngTransparentBlt con un rectángulo de origen vacío.
[in] TransColor
Especifica el color físico transparente, en el formato de la superficie de origen. Se trata de un valor de índice de color que se ha traducido a la paleta de la superficie de origen. Para más información, vea la sección Comentarios.
[in] bCalledFromBitBlt
Reservado. Este parámetro debe establecerse en cero.
Valor devuelto
EngTransparentBlt devuelve TRUE cuando se realiza correctamente. De lo contrario, devuelve FALSE.
Comentarios
El controlador debe llamar a EngTransparentBlt si ha enganchado DrvTransparentBlt y se le llama para hacer algo que no admita.
La transferencia de bloques de bits con transparencia se admite entre dos superficies administradas por dispositivos o entre una superficie administrada por el dispositivo y un mapa de bits de formato estándar administrado por GDI. Actualmente, GDI solo admite superficies de origen BMF_4BPP y BMF_8BPP.
Los píxeles de la superficie de origen que coinciden con el color transparente especificado por iTransparentColor no se copian. Para obtener una explicación detallada de los blts transparentes, consulte Copia de mapas de bits.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows. |
Plataforma de destino | Universal |
Encabezado | winddi.h (incluya Winddi.h) |
Library | Win32k.lib |
Archivo DLL | Win32k.sys |