gpt4 book ai didi

c++ - 无法从 GDI+ Bitmap::GetHBITMAP 获取的 HBITMAP 创建单色位图

转载 作者:行者123 更新时间:2023-11-30 18:07:28 28 4
gpt4 key购买 nike

我无法使用 SetBkColor() > BitBlt[SRCCOPY] 创建 24BPP 彩色图像的单色蒙版。面具最终变成完全黑色。仅当我使用 LoadImage() 来获取 HBITMAP 时,整个事情才有效。

Bitmap img(L"Ball.bmp");
HBITMAP hBM;
img.GetHBITMAP(Color::White, &hBM);
//hBM = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCE(IDB_BALL));
.
.
SelectObject(hDCSrc, hBM);
SetBkColor(RGB(0xFF, 0xFF, oxFF));
BitBlt(hDCMem, 0, 0, img.GetWidth(), img.GetHeight(), hDCSrc, 0, 0, SRCCOPY);

//hDCMem is copletely black; but OK when using LoadImage() instead

其他有同样问题的人建议使用 Graphics::GetHDC 并使用此 DC 执行所需操作作为解决方法。但为什么它没有发挥应有的作用。

即使这个解决方法也不起作用。请帮忙:(

最佳答案

关于c++ - 无法从 GDI+ Bitmap::GetHBITMAP 获取的 HBITMAP 创建单色位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4575439/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com