抓图软件课程设计
《抓图软件课程设计》由会员分享,可在线阅读,更多相关《抓图软件课程设计(10页珍藏版)》请在毕设资料网上搜索。
1、屏幕截图软件设计 摘要 : 本文 阐述 VC+实现屏幕截图功能的原理和具体设计步骤, 所实现的这个抓图软件可以截取整个屏幕,截取指定的窗口,并将截取到的图像 以 bmp 文件形式 保存到指定的路径下 。技术重点 在鼠标在屏幕上的准确定位;如何获取抓图的窗口句柄;如何对抓到的图片进行保存的问题。技术难点在如何将所抓取的屏幕窗口保存为磁盘 BMP 文件形式。 关键词: 屏幕截图 ; BMP 位图 ; 设备环境( DC) 1 引言 在我们的日常上网活动当中比如看电影、玩游戏、做图等等会对一些画面 特别喜欢!但是却没有办法将这些画面以图片形 式保存下来,真是犹如 “水中月,镜中花”看 得到却得不到。由
2、于 QQ 的出现,曾改变了几亿人的交流生活方式,它的里面嵌入的任意截图功能,更是为人们的生活增添了无限的欢愉和快乐,通过截图自己可以将最喜欢的游戏画面,最喜欢的电影画面,以图片形式保存,可以及时的发给好友共享, 给 我们带来了 意想不到的帮助和惊喜。 另外系统的功能强大的截图软件在社会建设的各个领域都到了施展空间,为人们的工作生活创造了极大的方便,解决了许多棘手难题。 可以说呀抓图软件有很广阔的应用前景,虽然它不算是很庞大的系统软件,但是其它的大型的主流系统软件能 够嵌入抓图的功能,必将受到极大的欢迎和青睐。 所以在此次软件课程设计当中,我选择了用 VC 制作屏幕截图的软件,实现截取指定窗口,
3、整个屏幕的功能,并且将截取的图形以 BMP 文件形式存放在指定路径的磁盘当中。 本文将系统介绍截图软件的设计原理,设计步骤,设计方法,和运用的重点技术。 2 实现基本原理和运用相关技术 抓图软件基本原理就是把屏幕上所抓取的图像复制到内存中,并最后将 内存中的 图像 内容 以位图文件形式保存到磁盘当中。 在这此软件设计当中, 如果用户将鼠标左键按住不放,则开始抓取图片 ,此时 隐藏程序窗口,以免影响在抓取 时的“视野” ,接着 装入“ 魔法棒 ”鼠标,开始追踪鼠标的移动 ,然后 获得鼠标所在处的窗口句柄 , 取得屏幕的设备环境句柄,以便在屏幕的任何位置绘图 。接下来 建立一红色的画笔 , 得到鼠
4、标所在处的窗口的区域 , 在鼠标所在处的窗口四周画一红色的矩形,做为选定时的提醒 。当鼠标左键释放的时候 得到鼠标所在处的窗口的区域宽、高 ,然后 建立一个屏幕设备环境句柄 和 与屏幕设备环境句柄兼容、与鼠标所在处的窗口的区域等大的位图 , 把新位图选到内存设备描述表中 ,最后 把屏幕设备描述表拷贝到内存设备描述表中 , 终止鼠标捕获 , 恢复窗口显示模式 。那么最后要作的工 作就 是 写一个 位图保存函数将内存当中的窗口图片信息以位图形式保存到指定磁盘当中。在整个程序当中 要用到大量的函数: 比如 申请内存空间用于存放位图文件 GlobalAlloc(GHND,FileLength); 位图
5、文件读入所申请内存空间中 LoadFileToMemory( mpBitsSrc,mFileName); 在 OnPaint 等函数中用创建显示用位图 ; 用 CreateDIBitmap()创建显示用位图 ; 用 CreateCompatibleDC()创建兼容 DC, 用 SelectBitmap()选择显示位图 ; 用 BitBlt或 StretchBlt 等函数显示位图 ; 用 DeleteObject()删除所创建的位图 ;程序中还会用到许多关键函数在这里不在详细叙述,其功能用法可以参照 MSDN。 屏幕抓图程序的关键有两点:一是应该知道鼠标在屏幕上有准确位置;二是应该知道欲抓图的窗
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中设计图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 课程设计
