raw转bmp

guojingguan 2012-05-17 09:13:58
void CRVGCaptureDlg::RawToBmp(CString bmpName)
{
CFile file1,file2;
BITMAPFILEHEADER fileHeader;
fileHeader.bfType=0x4d42;
fileHeader.bfSize=lHeight*lWidth*3+54;
fileHeader.bfReserved1=0;
fileHeader.bfReserved2=0;
fileHeader.bfOffBits=54;

BITMAPINFOHEADER infoHeader;
infoHeader.biSize=0x000028;
infoHeader.biWidth=lWidth;
infoHeader.biHeight=lHeight;
infoHeader.biPlanes=1;
infoHeader.biBitCount=24;
infoHeader.biCompression=0;
infoHeader.biSizeImage=lHeight*lWidth*3;
infoHeader.biXPelsPerMeter=0;
infoHeader.biYPelsPerMeter=0;
infoHeader.biClrUsed=0;
infoHeader.biClrImportant=0;
char rawbuffer[3000];
char bmpbuffer[512];
sprintf(rawbuffer,"%s","C:\\WINDOWS\\temp3.raw");
sprintf(bmpbuffer,bmpName);
file1.Open(bmpbuffer,CFile::modeWrite|CFile::typeBinary);
file1.Write((char *)&fileHeader,sizeof(BITMAPFILEHEADER));
file1.Write((char *)&infoHeader,sizeof(BITMAPINFOHEADER));
file2.Open(rawbuffer,CFile::modeRead|CFile::typeBinary);
static WORD buffer6[1052*1580];
file2.Read(buffer6,lHeight*lWidth);

file1.Close();
file2.Close();
}
void CRVGCaptureDlg::OnButton1()
{
char *bmpName="C:\\WINDOWS\\temp3.bmp";
AfxMessageBox("sss");
RawToBmp(bmpName);
AfxMessageBox("ss");


}

调试时 编译到 file1.Write((char *)&infoHeader,sizeof(BITMAPINFOHEADER));出错 提示
...全文
179 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
guojingguan 2012-05-20
  • 打赏
  • 举报
回复
有没有人 有没有人 哪位高手救救我
guojingguan 2012-05-17
  • 打赏
  • 举报
回复
多谢,不过转完的bmp里面没东西啊
Eleven 2012-05-17
  • 打赏
  • 举报
回复
file1.Open(bmpbuffer,CFile::modeWrite|CFile::typeBinary);

这个Open成功?返回TRUE?

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧