我有张nWidth*nHeight的图片,我开一个nWidth*nHeight*3的数组,然后将颜色一个一个计算出来填进数组。
我先用dc.SetPixel()将每个像素画上去。然后我创建一个Bitmap的对象,将图像数据加到Bitmap中。但我用Bitmap来显示图像和刚才dc.SetPixel()显示的图像颜色不一样。如下图:下面那张使用Bitmap。请教各位大牛,为什么会出现这种情况,怎么让Bitmap显示图片也正常?
我先用dc.SetPixel()将每个像素画上去。然后我创建一个Bitmap的对象,将图像数据加到Bitmap中。但我用Bitmap来显示图像和刚才dc.SetPixel()显示的图像颜色不一样。如下图:下面那张使用Bitmap。请教各位大牛,为什么会出现这种情况,怎么让Bitmap显示图片也正常?
BITMAPINFO BitmapInfo;
memset(&BitmapInfo,0,sizeof(BitmapInfo));
BitmapInfo.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
BitmapInfo.bmiHeader.biWidth = Resolution_Width;
BitmapInfo.bmiHeader.biHeight = -Resolution_Height;
BitmapInfo.bmiHeader.biPlanes = 1;
BitmapInfo.bmiHeader.biBitCount = 24; Bitmap image(&BitmapInfo, (void *)pDoc->m_Picture);
有一个的 rgb和bgr 反了