GDI+: jak dostat grafiku do bitmapy?

webhope

GDI+: jak dostat grafiku do bitmapy?
« kdy: 21. 05. 2014, 16:39:16 »
Zdravím
potřebuju nutně poradit s tímto protože už nevím kde hledat:
http://paste.ofcode.org/38JC636j5YqsmaktmXxPMWk

Ve Windows to udělá snímek okna a převede na GDI bitmapu (HBitmap). Tu pak převádím na bitmapu v GDI+:
Kód: [Vybrat]
GpBitmap* pBitmap;
int result = Gdiplus::DllExports::GdipCreateBitmapFromHBITMAP(HBitmap, 0, &pBitmap);
takže pBitmap obsahuje ten snímek okna. Pak provádím nějaké výpočty pro rotaci a pak je tam toto:
Kód: [Vybrat]
GpGraphics * pG;
// I create graphics from bitmap
result = Gdiplus::DllExports::GdipGetImageGraphicsContext(pBitmap, &pG);
Pak bych potřeboval provést nějaké úpravy (rotování obrázku), ale nejdříve se snažím přijít na to jak vlastně zkonvertovat tu grafiku z pG do bitmapy tak abych si to mohl uložit do souboru a prohlédnout. Protože výsledkem není obraz okna ale prázdný obrazový soubor.

Tímto kódem to tedy chci převést a uložit:
Kód: [Vybrat]
CLSID pngClsid;
GetEncoderClsid(L"image/png", &pngClsid);
GpBitmap* pBitmap2;
result = Gdiplus::DllExports::GdipCreateBitmapFromGraphics(60, 60, pG, &pBitmap2);
result = Gdiplus::DllExports::GdipSaveImageToFile(pBitmap2, L"justest.png", &pngClsid, NULL);
Nejsem si tak úplně jistý kde je chyba je to GdipGetImageGraphicsContext nebo GdipCreateBitmapFromGraphics?
Výsledkem result je 0 na všech řádcích během ladění.
« Poslední změna: 21. 05. 2014, 17:16:01 od Petr Krčmář »