Problema de VISUAL C++ al convertir iconos PNG a BMP
Por ejemplo, la función TransparentBlt convierte un color del mapa de bits especificado en transparente. La desventaja de alimentar uno es que todos los colores de este mapa de bits se convertirán en un esqueleto transparente.
El segundo método consiste en crear una plantilla negra. Las partes en blanco y negro deben combinarse con la imagen original y las partes negras deben extraerse. La desventaja es que es demasiado engorroso y debe crear un recurso de mapa de bits adicional. ¡Esto es lo que hace la función MaskBlt!
La fórmula de cálculo para el color translúcido es:
Valor del color del píxel translúcido = opacidad del píxel X de la imagen original + píxel X de la imagen de fondo (100% - opacidad)
Puede utilizar Getbitmapbit para leer datos de mapa de bits para su funcionamiento.
En realidad, existe una función AlphaBlend lista para usar para la translucidez, pero debe configurar la estructura BLENDFUNCTION y blendop en AC_SRC_OVER.
Lo anterior es el conocimiento básico que aprendí mientras creaba juegos.
¡Espero que se pueda adoptar!