>>881
GDI+ 使うとこんなに簡単。

Gdiplus::Bitmap* bitmap = new Gdiplus::Bitmap(100,100);
Gdiplus::Graphics* gr = Gdiplus::Graphics::FromImage(bitmap);
// gr に何か描く
delete gr;
CLSID pngClsid;
Gdiplus::GetEncoderClsid(L"image/bmp", &pngClsid);
bitmap->Save(L"test.bmp", &pngClsid, NULL);
delete bitmap;

jpeg でも png でも一箇所変えるだけ。