参考的原文地址:http://blog.csdn.net/aidy22/article/details/5009563
但是按照参考文章的方法显示的图像还是上下反转了180度,以下是自己在参考文的基础上修改的,可以正常显示
BOOL CCAPDlg::Convert24Image(BYTE *p32Img, BYTE *p24Img, DWORD dxSize32, DWORD dySize32)
{
if(p32Img != NULL && p24Img != NULL && dxSize32>0&& dySize32>0&& dxSize32%4==0)
{
BYTE *pTemp,*ptr;
pTemp = p32Img;
ptr = p24Img;
for (int j = dySize32-1; j >=0 ; j--)
{
for (int i = 0; i < int(dxSize32) ; i++)
{
unsigned char r = pTemp[dxSize32*j*4+i*4];
unsigned char g = pTemp[dxSize32*j*4+i*4+1];
unsigned char b = pTemp[dxSize32*j*4+i*4+2];
*(ptr++) = r;
*(ptr++) = g;
*(ptr++) = b;
}
}
}
else
{
return false;
}
return true;
}