MFC-Cimage类
CImage类,类本身封装了GDI+的使用环境,所以无需我们手动设置,简化了我们的操作
CBitmap 类只能处理BMP格式的图片,非常受限。
CImage可以处理JPGE GIF BMP PNG多种格式图片,扩展了图片处理功能 且能与CBitmap 进行转换
CImage是VC.NET中定义的一种MFC/ATL共享类,也是ATL的一种工具类,它提供增强型的(DDB和DIB)位图支持,可以装入、显示、转换和保存多种格式的图像文件,包括BMP、GIF、JPG、PNG、TIF等。CImage是一个独立的类,没有基类
CImage nImage; nImage.Load(_T("D:\\bb\\tu\\li1.jpg")); //载入文件图像 HBITMAP hBitmap = nImage.Detach(); //转换成HBITMAP //位图与CImage对象相分离【分离后nImage就不包含位图了】
mypicture.SetBitmap(hBitmap); //在picture控件中显示
CBitmap bmp; bmp.DeleteObject();
bmp.Attach(hBitmap); // HBITMAP转换为CBitmap对象 //将一个位图与Clmage对象相连接
CImage nImage; nImage.Load(_T("D:\\bb\\tu\\li1.jpg")); //载入文件图像 int height = nImage.GetHeight();//获取当前图像的高度 int width = nImage.GetWidth();//获取当前图像的宽度 HWND hWnd = GetSafeHwnd(); HDC hdc = ::GetDC(hWnd); BOOL b= nImage.Draw(hdc, 10, 10, width, height, 0, 0, width, height);//在窗口中画图像 /* 参数1:HDC 设备上下文的句柄 参数2:x坐标,逻辑单位,目标矩形的左上角 参数3:y坐标,逻辑单位,目标矩形的左上角 参数4:宽度,逻辑单位,目标矩形 参数5:高度,逻辑单位,目标矩形 参数6:x坐标,逻辑单位,源矩形的左上角 参数7:y坐标,逻辑单位,源矩形的左上角 参数8:宽度,在逻辑单位,源矩形 参数9:高度,在逻辑单位,源矩形 返回值:如果成功,则不为 0;否则为 0 */ int npix = nImage.GetBPP();//获取每像素位数的值
加载资源位图
hins = AfxGetInstanceHandle();
nImage.LoadFromResource(hins,IDB_BITMAP1);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
2020-07-25 多个.C文件--项目
2020-07-25 C--静态变量和静态函数static
2020-07-25 C--全局变量
2020-07-25 C--联合体union