您的位置:首页 > 其它

ARGB32位转化为RGB24位的函数(修改版)

2012-08-13 11:05 423 查看
参考的原文地址:/article/9023721.html

但是按照参考文章的方法显示的图像还是上下反转了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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: