Easyx图形库函数功能扩展(3)-显示半透明位图
#pragma comment( lib, "MSIMG32.LIB")// 引用该库才能使用 AlphaBlend 函数
void TransparentImage(IMAGE* dstimg, int x, int y, IMAGE* srcimg, int value)
{
HDC dstDC = GetImageHDC(dstimg);
HDC srcDC = GetImageHDC(srcimg);
int w = srcimg->getwidth();
int h = srcimg->getheight();
// 结构体的第三个成员表示额外的透明度,0 表示全透明,255 表示不透明。
BLENDFUNCTION bf = { AC_SRC_OVER, 0, (BYTE)value, AC_SRC_ALPHA };
// 使用 Windows GDI 函数实现半透明位图
AlphaBlend(dstDC, x, y, w, h, srcDC, 0, 0, w, h, bf);
}

浙公网安备 33010602011771号