c++ gdi+ pBitmap->From 根据资源id加载图片
时间: 2024-03-08 12:49:25 浏览: 185
在 C++ 中使用 GDI+ 加载图片,可以使用 pBitmap 类的 From 方法。下面是一个简单的示例代码,通过资源 ID 加载图片:
```cpp
#include <Windows.h>
#include <gdiplus.h>
#pragma comment(lib, "gdiplus.lib")
using namespace Gdiplus;
int main()
{
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
HINSTANCE hInstance = GetModuleHandle(NULL);
HRSRC hResource = FindResource(hInstance, MAKEINTRESOURCE(IDB_BITMAP1), RT_BITMAP);
DWORD imageSize = SizeofResource(hInstance, hResource);
HGLOBAL hGlobaImage = LoadResource(hInstance, hResource);
LPVOID pImage = LockResource(hGlobaImage);
Bitmap* pBitmap = Bitmap::FromMemory((BYTE*)pImage, imageSize);
// do something with the loaded bitmap
delete pBitmap;
UnlockResource(hGlobaImage);
FreeResource(hGlobaImage);
GdiplusShutdown(gdiplusToken);
return 0;
}
```
其中,IDB_BITMAP1 是资源 ID,RT_BITMAP 是资源类型。在加载完图片后,可以通过 Bitmap 类来操作图片。在使用完后,需要释放 Bitmap 对象的内存。
阅读全文