【发布时间】:2010-09-25 00:25:00
【问题描述】:
当我使用 Bitmap::FromHBITMAP 函数创建一个新的 Gdiplus::Bitmap 时, 生成的位图是不透明的 - 原始 HBITMAP 的部分透明度没有被保留。
有没有办法从 HBITMAP 创建一个 Gdiplus::Bitmap,它会带来 alpha 通道数据?
【问题讨论】:
-
你确定 HBITMAP 有一个 alpha 通道开始吗?例如,您是否将其创建为具有 BI_RGB 和 32bpp 或其他方式的 DIB?
-
是的,它确实具有透明度。它使用 ::AlphaBlend() 函数绘制得很好。
-
(我在 C# 中使用 new Bitmap(string filename) 和在 .NET 位图对象上调用 GetHBitmap() 创建了它)