VC保存当面某个区域的图片
void ViewReportDlg::CopyScreenToBitmap()
{
CDC *cdc = this->GetDC();
HDC wnd = cdc->GetSafeHdc();
//CClientDC dc(this); CRect rect;
BOOL showMsgTag; //是否要弹出”图像保存成功对话框"
this->GetClientRect(&rect); //获取画布大小 HBITMAP hbitmap = CreateCompatibleBitmap(wnd, rect.right-rect.left, rect. bottom-rect.top); //创建兼容位图 HDC hdc = CreateCompatibleDC(wnd); //创建兼容DC,以便将图像保存为不同的格式
HBITMAP hOldMap = (HBITMAP)SelectObject(hdc,hbitmap);
//将位图选入DC,并保存返回值
BitBlt(hdc,,,rect.right-rect.left,rect.bottom-rect.top,wnd,,,SRCCOPY); //将屏幕DC的图像复制到内存DC中
CImage image;//需要
image.Attach(hbitmap,CImage::DIBOR_DEFAULT); //image.Save(_T("c:\\B.jpg"));//如果文件后缀为.bmp,则保存为为bmp格式
//以下程序用于选择图片保存路径等信息
// 图像保存
HRESULT hResult = image.Save(_T("E:\\4444.bmp"));
if (FAILED(hResult))
MessageBox("保存图像文件失败!");
else
MessageBox("保存图像文件成功!");
image.Detach();
::SelectObject(hdc, hOldMap);//选入上次的返回值
::DeleteDC(hdc);
}
VC保存当面某个区域的图片的更多相关文章
- VC下加载多种格式图片的方法总结IPicture, CxImage, CImage(AtlImage), CPictureEx
尽管VC有提供相应的API和类来操作bmp位图.图标和(增强)元文件,但却不支持jpg.gif和png等格式的图片,而这几种格式却是常常要用到的.这里我给大家介绍两种办法来操作这些格式的图片. 1.用 ...
- SpringMVC 上传图片保存到服务器 同时更改图片名称保存至数据库
@RequestMapping(value = "/save.do", method = RequestMethod.POST) public String saveDriv ...
- Android DIY之路 (一) 指定区域多图片合成 放大 缩小 镜像 旋转 等(转)
惯例先看效果图 // 注意做类似这种模板功能时候 方位由后台数据提供,这里我们用假数据 4个点 或者xy 加区域来做示例 //一开始我们公司用的是透明盖住 操作图片 但发现 局限性较大.后来直接限定区 ...
- python实现图像加载与保存,窗口创建与销毁,图片常用属性,ROI,通道的分离与合并,对比度和亮度
目录: (一)图像加载与保存 (二)图像显示窗口创建与销毁 (三)图片的常用属性的获取 (四)生成指定大小的矩形区域(ROI) (五)图片颜色通道的分离与合并 (六)两张图片相加,改变对比度和亮度 ( ...
- OpenCV Cut Image via ROI 根据兴趣区域剪裁图片
我们在使用OpenCV时,有时候需要对现有图片剪裁,比如只需要一个小窗口中的内容,那么我们可以通过OpenCV的兴趣区域 Region of Interest (ROI) 来很轻易的实现,操作也很简单 ...
- VC++使用CImage PNG转BMP图片透明背景处理
PNG格式的图片是支持透明通道的,BMP格式的图片是没有透明通道的,所以当PNG格式的图片转换为BMP格式时,对于PNG图片的透明背景就需要进行特别的处理. VC++中的HBITMAP是支持透明色的, ...
- 使用JavaScript将当前页面保存成PDF,支持图片和文字的保存
前端开发的朋友们可能会遇到这个需求:将您负责开发的网页的全部内容,包括文字和图片,一起保存成一个PDF文件.如果采用屏幕截图的话,默认Windows操作系统的截图按钮无法完整截取超过一屏幕的屏幕内容. ...
- C#图片保存与读取,以及图片另存
照片的保存与读取 /// <summary> /// 图片转二进制 /// </summary> /// <param name="imgPhoto" ...
- 使用Python爬取微信公众号文章并保存为PDF文件(解决图片不显示的问题)
前言 第一次写博客,主要内容是爬取微信公众号的文章,将文章以PDF格式保存在本地. 爬取微信公众号文章(使用wechatsogou) 1.安装 pip install wechatsogou --up ...
随机推荐
- 解决:Redis:java.util.NoSuchElementException: Unable to validate object at
在Java使用Redis的过程中遇见了一个问题, redis.clients.jedis.exceptions.JedisConnectionException: Could not get a re ...
- eclipse中将项目发布到tomcat的root目录
在eclipse中,将项目直接部署在tomcat的root目录中,这样便可以直接ip:port访问项目: 项目右键->属性->web project settings
- LR录制Flex+Web,登录功能之登录密码出错的处理
在LR中录制好更改密码脚本,Controller中使用少量用户进行:单用户多迭代.多用户单迭代.多用户多迭代,运行正常,于是使用490Vuser+2iteration修改980个用户的密码,部分 Vu ...
- 渐变算法的 Java 实现
/** * 指定长度的渐变. * @param c0 起始颜色. * @param c1 结束颜色. * @param len 受限的渐变长度,为保证每一个颜色都不一样,会根据颜色找出长度最大值. * ...
- Ant 常用语法及选项
project 项目定义,一个ant文件就是一个 project,定义了项目名称,起始位置以及默认执行的 target. <project name="Easily" bas ...
- android SDK下载及中文API地址
中文API:http://wiki.eoeandroid.com/Android_API_Guides Android Dev Tools官网地址:www.androiddevtools.cn 收集整 ...
- CSS3学习之分享下transition属性
最近在网上看到很多transition写的效果,借鉴http://www.w3school.com.cn分享下代码, 1.语法:transition: property duration timing ...
- php实现递归的三种方式: 遍历文件夹实例
递归函数是我们常用到的一类函数,最基本的特点是函数自身调用自身,但必须在调用自身前有条件判断,否则无限无限调用下去.实现递归函数可以采取什么方式呢?本文列出了三种基本方式.理解其原来需要一定的基础知识 ...
- node.js 学习
http://www.cnblogs.com/haogj/category/612022.html
- 伪静态重写模块rewrite.dll及httpd.ini文件参考下载
伪静态重写模块rewrite.dll及httpd.ini文件参考下载 http://www.ledaokj.com/download/rewrite.rar 服务器端开启伪静态,可以查看以下文章< ...