这是我的程序!大家帮我看看那里错了为什么出不来效果!谢谢啦 或有源程序吗发给我参考谢谢!
BITMAPINFOHEADER bmiHeader;
BYTE *m_Data;
CDC MemDC;
HBITMAP hBitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),
"D:\\aa.bmp",IMAGE_BITMAP,0,0,
LR_LOADFROMFILE|LR_CREATEDIBSECTION);
BITMAP bm;
GetObject(hBitmap, sizeof BITMAP, &bm);
MemDC.CreateCompatibleDC(NULL);
CBitmap Bitmap;
Bitmap.LoadBitmap("D:\\aa.bmp");
MemDC.SetTextColor(0);
MemDC.SelectObject(Bitmap);
MemDC.TextOut(0,0,"李勇");
Bitmap.Detach();
m_Data=new BYTE [bm.bmHeight*bm.bmWidth*3];
Bitmap.GetBitmapBits(bm.bmHeight*bm.bmWidth*3,m_Data);
BITMAPFILEHEADER bmfh;
bmfh.bfType=0x4d42;
bmfh.bfSize=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+81*18*3;
bmfh.bfReserved1=bmfh.bfReserved2=0;
bmfh.bfOffBits=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER);
BITMAPINFOHEADER bmih;
bmih.biWidth=81;
bmih.biHeight=18;
bmih.biPlanes=1;
bmih.biBitCount=24;
bmih.biCompression=BI_RGB;
bmih.biSizeImage=81*18*3;
bmih.biXPelsPerMeter=0;
bmih.biYPelsPerMeter=0;
bmih.biClrUsed=0;
bmih.biClrImportant=0;
bmih.biSize=sizeof(BITMAPINFOHEADER); CFile fp;
fp.Open("D:\\a.bmp",CFile::modeCreate | CFile::modeWrite | CFile::typeBinary);
fp.Write((LPSTR)&bmfh,sizeof(BITMAPFILEHEADER)); //写文件头
fp.Write((LPSTR)&bmih,sizeof(BITMAPINFOHEADER)); //写信息头
fp.Write(m_Data,81*18*3); DeleteObject(hBitmap);
CDialog::OnOK();
BITMAPINFOHEADER bmiHeader;
BYTE *m_Data;
CDC MemDC;
HBITMAP hBitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),
"D:\\aa.bmp",IMAGE_BITMAP,0,0,
LR_LOADFROMFILE|LR_CREATEDIBSECTION);
BITMAP bm;
GetObject(hBitmap, sizeof BITMAP, &bm);
MemDC.CreateCompatibleDC(NULL);
CBitmap Bitmap;
Bitmap.LoadBitmap("D:\\aa.bmp");
MemDC.SetTextColor(0);
MemDC.SelectObject(Bitmap);
MemDC.TextOut(0,0,"李勇");
Bitmap.Detach();
m_Data=new BYTE [bm.bmHeight*bm.bmWidth*3];
Bitmap.GetBitmapBits(bm.bmHeight*bm.bmWidth*3,m_Data);
BITMAPFILEHEADER bmfh;
bmfh.bfType=0x4d42;
bmfh.bfSize=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER)+81*18*3;
bmfh.bfReserved1=bmfh.bfReserved2=0;
bmfh.bfOffBits=sizeof(BITMAPFILEHEADER)+sizeof(BITMAPINFOHEADER);
BITMAPINFOHEADER bmih;
bmih.biWidth=81;
bmih.biHeight=18;
bmih.biPlanes=1;
bmih.biBitCount=24;
bmih.biCompression=BI_RGB;
bmih.biSizeImage=81*18*3;
bmih.biXPelsPerMeter=0;
bmih.biYPelsPerMeter=0;
bmih.biClrUsed=0;
bmih.biClrImportant=0;
bmih.biSize=sizeof(BITMAPINFOHEADER); CFile fp;
fp.Open("D:\\a.bmp",CFile::modeCreate | CFile::modeWrite | CFile::typeBinary);
fp.Write((LPSTR)&bmfh,sizeof(BITMAPFILEHEADER)); //写文件头
fp.Write((LPSTR)&bmih,sizeof(BITMAPINFOHEADER)); //写信息头
fp.Write(m_Data,81*18*3); DeleteObject(hBitmap);
CDialog::OnOK();
解决方案 »
- 自己用API做的文本编辑器如何实现复制粘贴以及用拖动鼠标选择文本
- 请教,怎么用MFC模板生成一个不需要Doc、Frame和View类的应用程序
- MFC如何用ADO连接数据库
- 我是新手.ICMP校验和的校验和函数看不懂,谁能详细跟我解释一下,通俗易懂一点.
- 累死了,一个通宵没搞定!!! 为啥我的COM组件ASP.NET一初始化就访问异常?
- 在Win2k上可以以服务形式运行的程序需要有什么必要条件
- 求助:关于AddNew()的问题
- 怎样使用Unix下的makefile文件编译成Windows下的可执行文件?
- 如何用浏览器打开目录g:\backup,搞定明天就好安心过年了!
- 网络编程中多个线程同时发起多个接受调用的问题
- UDP服务器 如何测试并发性能 请大家给方案
- 请问高手们,ocx中能再调用其他ocx吗?如何做?能否给个例子?
直接看这个得了!