首页  »   VC/MFC

MFC 图片变换二进制

网友分享于:2013-07-04  浏览:297次
MFC 图片转换二进制
各位大侠,我想把本地的张图片用二进制方法读出来,保存在数组了,求各位赐教,最好有源代码,小弟新手~~~谢谢

------解决方案--------------------
二进制方法读出来?
没明白
------解决方案--------------------
如果是文件直接fopen()以"rb"方式打开,然后读到内存就是;
关键是要解析文件头及分析相关数据格式,如果不是bmp,最好用现成的库。
------解决方案--------------------
你的意思是读取图片像素数据?那得看是什么格式图片 然后根据文件结构来读
------解决方案--------------------
HBITMAP img;

//图像像素数组
unsigned char *px;

//要打开的图像文件名字
CString filename = "1.bmp";

//这里的x,y是图像的长和宽,你看下图像是几乘几的然后改下就可以
img = (HBITMAP)LoadImage(NULL,filename,IMAGE_BITMAP,x,y,LR_LOADFROMFILE); 

GetObject(bmp,sizeof(BITMAP),&bm);
px = new unsigned char[bm.bmHeight*bm.bmWidthBytes];
GetBitmapBits(bmp,bm.bmHeight*bm.bmWidthBytes,px);

然后看看px中的数据,是不是已经把图像的像素数据提取出来啦!
当然,楼上提到的用fopen的方法也可行,但是你还需要再血补下图像格式的知识咯!

相关解决方案

最新解决方案