我用CBitmap加载了一个bmp文件,
然后,放到一个HDC中。
我又对HDC进行新的操作。
现在我想把它存成BMP文件,怎么存。
谢啦。

解决方案 »

  1.   

    //memdc要保存的dc
    // 保存文件
    CBitmap * pBmp=memDC.GetCurrentBitmap();
    HBITMAP hbmp=pBmp->operator HBITMAP();
    CPalette * pPal=memDC.GetCurrentPalette();
    HPALETTE hPal=pPal->operator HPALETTE();

    HDIB hDib=::BitmapToDIB(hbmp,hPal);

    filename = "aaa.bmp";//文件名
    CFile bmpFile;
    if(!bmpFile.Open(filename,CFile::modeCreate|CFile::modeWrite|CFile::typeBinary))
    {
    return;
    }
    if(::SaveDIB(hDib,bmpFile)==NULL)
    {
    return;
    }
    bmpFile.Close();
        GlobalFree(hDib);
    pBmp->DeleteObject();
    //头文件
    #include "dibapi.h"
      

  2.   

    http://www.fruitfruit.com/vc/graphics/savedc.txt