图像数据储存问题
void TForm1::camGetPlay()
{
BYTE* camdata = NULL;
int CamWidth, CamHeight, PixFormat;
int i1 = 0;
getCamData(&camdata,&CamWidth,&CamHeight,&PixFormat); //读取相机的数据 camdata是dll里面函数取得的RGB数据
m_bmp->PixelFormat = pf24bit;
if(PixFormat ==1) //相机是黑白相机
{
for(int j = 0; j <m_bmp->Height;j++)
{
BYTE *ptr = (BYTE *)m_bmp->ScanLine[j];
i1 = 0;
for(int i = 0; i<m_bmp->Width*3; i+=3)
{
ptr[i+2] = camdata[CamWidth*j+i1];
ptr[i+1] = camdata[CamWidth*j+i1];
ptr[i] = camdata[CamWidth*j+i1];
i1++;
}
}
}
else //相机是彩色相机
{
for(int j = 0; j <m_bmp->Height;j++)
{
BYTE *ptr = (BYTE *)m_bmp->ScanLine[j];
i1=0;
for(int i = 0; i<m_bmp->Width*3; i+=3)
{
ptr[i] = camdata[CamWidth*j+i1];
ptr[i+1] = camdata[CamWidth*j+i1+1];
ptr[i+2] = camdata[CamWidth*j+i1+2];
i1++;
}
}
}
}
我想实现的功能时,不能的相机可以显示出黑白或者彩色的图片。
1、请大神帮忙看下,上面的代码对不对啊?可以详细解释下代码更好
2、用BCB怎么把转换好的图片显示出来?