用颜色初始化Gdiplus位图

时间:2018-01-10 18:24:38

标签: bitmap gdi+

我打算在位图中绘制pBmp。那部分工作正常。我想用(背景)颜色初始化这个位图。 这是我完成它的解决方法:

printf

必须有一个更好的方法与调色板等,但谷歌搜索一段时间后,我无法找到一个简洁的例子,以实现这一点。 有人有单行吗?

1 个答案:

答案 0 :(得分:0)

PixelFormat24bppRGB是24位位图,没有alpha通道。将PixelFormat32bppARGB用于带alpha通道的32位位图。

Gdiplus::Bitmap bmp(100, 100, Gdiplus::PixelFormat32bppARGB);

填写透明背景:

Gdiplus::Graphics *mem = Gdiplus::Graphics::FromImage(&bmp);
Gdiplus::SolidBrush brush_tr(Gdiplus::Color::Transparent);
mem->FillRectangle(&brush_tr, 0,0,100,100);

如果在HDC设备上下文

上打印,则应显示为空白
Gdiplus::Graphics g(hdc);
g.DrawImage(&bmp, 0, 0);