我正在尝试在c#中编写一个快速透明度类。 如何将PNG透明化为GDI32以将其与alphaBlend一起使用?
我试图通过getHbitmap / selectObject直接放置它,试图用临时DC上的setPixel绘制它,但都无济于事。
答案 0 :(得分:2)
在我发现的结果中(对于一个不眠之夜),最简单的获得GDI32的透明度是在GetHbitmap()中设置Color.Black。像这样:
using (Bitmap tBMP = new Bitmap(@"myBitmap.png"))
{
BMPObject = tBMP.GetHbitmap(Color.Black);
sz = tBMP.Size;
}
除了黑色之外的任何其他颜色都会给出透明区域的意外颜色。 现在我对结果非常满意:在c#中快速进行alpha混合。