使用CImage类 显示图片

在不适用openCv的一种时候,使用CImage显示图片数据,并且直接嵌入DC框中。

使用CImage 在pic控件里显示图片

void CMyCalLawsDlg::MyShowImage( CImage Image, UINT ID )
{
    CBitmap m_bmp;
    BITMAP bm;
    m_bmp.Attach(Image);
    m_bmp.GetObject(sizeof(BITMAP),&bm);
    //bm.bmWidth中保存图片的宽度
    //bm.bmHeight中保存图片的高度
    int ImageHeight =bm.bmHeight;
    int ImageWidth  =bm.bmWidth;

    CDC* pDC = GetDlgItem( ID ) ->GetDC();        // 获得显示控件的 DC wishchin
    HDC hDC = pDC ->GetSafeHdc();                // 获取 HDC(设备句柄) 来进行绘图操作
    Image.Draw(pDC->m_hDC,0,0,ImageWidth,ImageHeight);
    m_bmp.Detach();

}

调用实例:

 string  FileName.Format("E:\\SignSample\\Sample (%d).bmp",i);

        image.Load(FileName);
        int width =image.GetWidth();
        int height=image.GetHeight();
        MyShowImage(image,IDC_SHOWPIC);

posted @ 2013-07-17 12:42  wishchin  阅读(483)  评论(0编辑  收藏  举报