关于使用绘制图标的问题(Gdiplus)

CPaintDC dc(this);
Gdiplus::Graphics g -= Gdiplus::Graphics::FromHDC(dc);

Gdiplus::Bitmap * bmp = Gdiplus::Bitmap::FromHICON(hIco);
g->DrawImage(bmp, 10, 10,32,32);

效果很差,有锯齿, (开启抗锯齿只对绘制线条有用,这这个图形没有用)

如果直接使用GDI里的DrawState来绘制,则效果好很多!

dc.DrawState(CPoint(10,10,),CSize(32,32),hIcon,DST_ICON,(HBRUSH)0);

我尝试了 g->GetHDC() 再用DrawState,一样是效果很差

不知大家有什么 好办法吗?