VC2005中将Picture控件显示图片保存为BMP,JPG等格式
1.在stdafx.h头文件中加入
#include <atlimage.h>
2.保存图片
方法一:
HBITMAP hBitmap = NULL;
//创建位图段
BITMAPINFO bmi;
LPBYTE pBits;
ZeroMemory(&bmi,sizeof(bmi));
//m_bmpShow为Picture Control控件变量名称
CDC *pShowDC = m_bmpShow.GetDC(); //获取Picture Control控件的宽度和高度
//CRect m_rcShow
m_bmpShow.GetWindowRect(&m_rcShow); bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
bmi.bmiHeader.biWidth = m_rcShow.Width();
bmi.bmiHeader.biHeight = m_rcShow.Height();
bmi.bmiHeader.biPlanes = 1;
bmi.bmiHeader.biBitCount = 24;
bmi.bmiHeader.biCompression = BI_RGB;
hBitmap = CreateDIBSection(pShowDC->m_hDC,&bmi,DIB_RGB_COLORS,(void **)&pBits,0,0);
//创建兼容dc并选择位图段
CDC dcMem;
dcMem.CreateCompatibleDC(pShowDC);
dcMem.SelectObject(hBitmap);
dcMem.BitBlt(0,0,m_rcShow.Width(),m_rcShow.Height(),pShowDC,0,0,SRCCOPY);
m_bmpShow.ReleaseDC(pShowDC);
if( hBitmap )
{
CImage img;
img.Attach(hBitmap);
img.Save(_T("f:\\1.bmp"));
img.Save(_T("f:\\1.jpg"));
//其它文件格式同理
DeleteObject(hBitmap);
AfxMessageBox(_T("OK!!"));
}
方法二:
//m_bmpShow为Picture Control控件变量名称
CDC *pdc = m_bmpShow.GetDC();
CImage imag;
//获取Picture Control控件的宽度和高度
CRect rcClient;
m_bmpShow.GetWindowRect(&rcClient);
imag.Create(rcClient.Width(),rcClient.Height(),32); ::BitBlt(imag.GetDC(),0,0,rcClient.Width(),rcClient.Height(),pdc->m_hDC,0,0,SRCCOPY); imag.Save(_T("f:\\2.bmp"));
imag.Save(_T("f:\\21.jpg"));
ReleaseDC(pdc);
imag.ReleaseDC();
AfxMessageBox(_T("OK!"));
参考:http://blog.sina.com.cn/s/blog_56e19aa70100c59k.html
http://blog.sina.com.cn/s/blog_56e19aa70100c5a0.html
VC2005中将Picture控件显示图片保存为BMP,JPG等格式的更多相关文章
- 让DELPHI自带的richedit控件显示图片
让DELPHI自带的richedit控件显示图片 unit RichEx; { 2005-03-04 LiChengbin Added: Insert bitmap or gif into RichE ...
- GridView控件显示图片
与图片的二进制数据库存储和显示 1.将图片以二进制存入数据库 2.读取二进制图片在页面显示 3.设置Image控件显示从数据库中读出的二进制图片 4.GridView中ImageField以URL方式 ...
- Android:ImageView控件显示图片
1)android显示图片可以使用imageView来呈现,而且也可以通过ImageButton来实现给button添加图片. 2)在创建一个ImageView后,显示图片绑定元素是:android: ...
- winform下picturebox控件显示图片问题
viewData_pictureBox.SizeMode=PictureBoxSizeMode.StretchImage;图片会自动按照比例缩放来完全显示在你的PictureBox中.
- 不受路径限制的 HALCON开发环境, 并且初始化两个Picture控件;
知识储备: http://bbs.csdn.net/topics/391829463 关于 添加第三方库的方式 http://www.ihalcon.com/read-3730.html VS ...
- Winform中Picture控件图片的拖拽显示
注解:最近做了一个小工具,在Winform中对Picture控件有一个需求,可以通过鼠标从外部拖拽图片到控件的上,释放鼠标,显示图片! 首先你需要对你的整个Fom窗口的AllowDrop设置Ture ...
- VS2010/MFC常用控件:图片控件Picture Control
图片控件Picture Control 本节主要讲一种简单实用的控件,图片控件Picture Control.我们可以在界面某个位置放入图片控件,显示图片以美化界面. 图片控件简介 图片控件和前面讲到 ...
- MFC 对话框Picture Control(图片控件)中静态和动态显示Bmp图片
版权声明:本文为博主原创文章,转载请注明CSDN博客源地址! 共同学习,一起进步~ https://blog.csdn.net/Eastmount/article/details/26404733 ...
- VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)
上一节中鸡啄米讲的是滚动条控件,本节主要讲一种简单实用的控件,图片控件Picture Control.我们可以在界面某个位置放入图片控件,显示图片以美化界面. 图片控件简介 图片控件和前面讲到的静态文 ...
随机推荐
- php token 生成
php token的生成 接口特点汇总: 1.因为是非开放性的,所以所有的接口都是封闭的,只对公司内部的产品有效: 2.因为是非开放性的,所以OAuth那套协议是行不通的,因为没有中间用户的授权过 ...
- [Papers]Finding Advertising Keywords on Web Pages
参考资料: Finding Advertising Keywords on Web Pages ,Wen-tau Yih,Joshua Goodman, Vitor R. Carvalho
- 前端之CSS样式
一.CSS 1.什么是CSS 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的 ...
- Flume+Kafka+storm的连接整合
Flume-ng Flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统. Flume的文档可以看http://flume.apache.org/FlumeUserGuide.html ...
- Go reflect反射
Go语言中的反射非常强大,可以对string, int, struct, func...进行反射,使用起来也比较简单. 示例1:反射函数 package main import ( "fmt ...
- ubuntu 下使用vi时方向键乱码,退格键不能使用
ubuntu 下使用vi时方向键乱码,退格键不能使用的解决方法 问题表现:Ubuntu下,初始使用vi,编辑模式下使用方向键的时候,并不会使光标移动,而是在命令行中出现A B C D 之类的字母,并且 ...
- 深入Struts2的过滤器FilterDispatcher--中文乱码及字符编码过滤器
引用 前几天在论坛上看到一篇帖子,是关于Struts2.0中文乱码的,楼主采用的是spring的字符编码过滤器(CharacterEncodingFilter)统一编码为GBK,前台提交表单数据到Ac ...
- mongodb,redis简单学习
2.mongodb安装配置简单学习 配置好数据库路径就可以mongo命令执行交互操作了:先将服务器开起来:在开个cmd执行交互操作 ...
- 剑指Offer——字符串的排序
Question 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入描 ...
- 按F12 IE浏览器的开发工具打不开解决方法
在电脑的任务栏中选中开发人员工具窗体右击,出现以下页面: 点击移动菜单项,然后用键盘的上下左右键移动,直到开发人员工具的最小化窗体出现: