MySQL++ API を使用して MySQL データベースから画像を抽出しています。文字列の表現である mysqlpp::sql_mediumblob として画像を取得します。GDI+ を使用していくつかの画像を回転させたいのですが、このコンストラクターの使用方法がわかりません。
Image::Image(IStream*,BOOL) - Creates an Image object based on a stream.
ブロブに保持されている画像を使用します。前もって感謝します。
ここに記載されているとおり: 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 コンストラクターに渡します。