最近有学习OpenCV,需要将IplImage图像显示到MFC视图区,经过摸索,已经成功实现这个功能。
之前在网易有发过,但是代码格式难控制。还是这一类网站的博客好一些。重写一遍吧。
void CXXView::xDisplayImage(IplImage* img,HDC &hDC,CvRect &rDst,CvRect &rSrc)
{
int bpp=((img->depth)&255)*(img->nChannels);
BYTE buffer[sizeof(BITMAPINFOHEADER)+1024]={0};
BITMAPINFO* pbmi = (BITMAPINFO*)buffer;
BITMAPINFOHEADER* pbmih = &(pbmi->bmiHeader);
memset(pbmih,0,sizeof(BITMA