我现在已经得到位图文件头BITMAPHEADER biHeader和位图数据unsigned char* bufRgb
请问如何将其存为一位图,有源码请发一份给我,谢谢
[email protected]
请问如何将其存为一位图,有源码请发一份给我,谢谢
[email protected]
解决方案 »
- 孙鑫视频中的聊天室应用程序代码,不知哪里没写对,在VS中调试出错
- SetWindowsHookEx怎么挂钩一个进程的所有线程?
- vector删除时崩溃 请问是不是vector内部分配内存的错误 应该怎样解决?
- 透明算法的深入研究.
- 快速翻转二维数组,有好的算法吗(内详)?
- 菜鸟问题,在线等待,为什么在console工程中不能编译win32的程序?
- 高分求助、讨论,帮帮我吧-确定本机安装了哪些微软产品
- 请高手回答一个32位位图转成24位位图的问题?以前知道有人做成过。请帮帮忙!
- 做c/s模式的程序,数据库是oracle。完成后怎么把oracle数据库的驱动打包(只要dsn)
- 为啥EnumWindows经常找不到进程窗口?
- 關於擴展標準控件的問題.
- 如何通过WINDOWS API获取本机计算机名称和IP地址?
{
CBmpDoc* pDoc = GetDocument();
BYTE * pBuffer,* temp;
CFile bmp;
bmp.Open ("*.bmp",CFile::modeRead)
bmp.Read (&(pDoc->bmpHeader_Source),14);
bmp.Read (&(pDoc->infoHeader_Source),40);
bmp.Seek(pDoc->bmpHeader_Source.bfOffBits ,CFile::begin);
pBuffer = new BYTE[pDoc->bmpHeader_Source .bfSize - pDoc->bmpHeader_Source .bfOffBits ];
bmp.Read (pBuffer,
pDoc->bmpHeader_Source .bfSize - pDoc->bmpHeader_Source .bfOffBits );
temp = pBuffer;
bmp.Close (); bmpInfo.bmiHeader = pDoc->infoHeader_Source ;
CClientDC dc(this);/////建立客户区
int x ,y;
int r,g,b;
for(y=239 ;y>=0;y--)
for( x = 0;x<320;x++)
{
r = * temp;
g = * (temp + 1);
b = * (temp + 2);
temp = temp + 3;
pDoc->bmpRGB [x][y][0] = r;
pDoc->bmpRGB [x][y][1] = g;
pDoc->bmpRGB [x][y][2] = b;
pDoc->bmpSource [x][y] = (r+ g+ b)/3;
dc.SetPixel (x+100,y+100,
RGB(pDoc->bmpRGB [x][y][0],
pDoc->bmpRGB [x][y][1],
pDoc->bmpRGB [x][y][2]));
}
}