gdiplus构造来自字符串的图像

时间:2009-03-17 09:19:56

标签: c++ gdi+

我使用MySQL ++ API从MySQL数据库中提取图像。我得到的图像是mysqlpp :: sql_mediumblob,它是字符串的表示。现在我想使用GDI +旋转一些图片,但我不知道如何使用这个构造函数:

Image::Image(IStream*,BOOL) - Creates an Image object based on a stream.

保留在blob中的图像。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

如上所述:http://msdn.microsoft.com/en-us/library/aa378980(VS.85).aspx

HGLOBAL hMem = ::GlobalAlloc(GMEM_MOVEABLE,iSize);
if (!hMem)
    AfxThrowMemoryException();
LPVOID pImage = ::GlobalLock(hMem);
... // Fill memory pointed by pImage, reading it from MySQL
::GlobalUnlock(hMem);

// Convert internal data if there is any
CComPtr<IStream> spStream;
HRESULT hr = ::CreateStreamOnHGlobal(hMem,FALSE,&spStream);

然后将spStream传递给Gdiplus :: Image构造函数。