- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.1.1 画笔CPen 在开发程序时,通常需要从磁盘中动态加载一幅图像到窗口中。用户可以使用LoadImage函数来从磁盘加载图像文件。 语法格式如下: HANDLE LoadImage( HINSTANCE hinst, LPCTSTR lpszName, UINT uType, int cxDesired, int cyDesired, UINT fuLoad ); hinst:表示包含图像的实例句柄,可以为NULL。 lpszName:表示图像的资源名称,如果从磁盘中加载,该参数表示图像的名称,包含完整路径。 uType:表示加载的图像类型。为IMAGE_BITMAP时,表示加载位图;为IMAGE_CURSOR时,表示加载鼠标指针;为IMAGE_ICON时,表示加载图标。 cxDesired:表示图标或鼠标指针的宽度,如果加载的是位图,则该参数必须为0。 cyDesired:表示图标或鼠标指针的高度,如果加载的是位图,则该参数必须为0。 fuLoad:表示加载类型,如果为LR_LOADFROMFILE,表示从磁盘文件中加载位图。 返回值:函数返回加载的图像资源句柄 4.3.2 从磁盘中加载图像到窗口中 (1)GDI是个抽象的概念,其实GDI接口是微软公司提供的一组绘图函数,通常称之为GDI函数 (2)画笔(CPen)用于在设备环境中绘制直线、曲线和多边形边框 (3)画刷(CBrush)用于填充诸如多边形、椭圆和路径等图形内部区域。 (4)设备环境(Device Contexts)是包含颜色、大小等属性的对象。GDI函数需要参照设备环境的数据结构,将其映射到相应的物理设备上,并且提供正确的输入/输出指令 (5)字体CFont用于创建DC类使用的字体。 (6)在设备上下文CDC类中提供了TextOut方法用于在指定的坐标处输出文本。 (7)BitBlt函数用于从源设备中复制位图到目标设备中 (8)StretchBlt该函数复制源设备上下文的内容到目标设备上下文中。与BitBlt方法不同的是,StretchBlt方法能够延伸或收缩位图以适应目标区域的大小。 知识点提炼 4-1 图像的缩放应该用哪一函数实现。 4-2 说明使用Rgn对象合并两个区域的方法。 4-3 怎样从资源中加载位图,怎样从磁盘文件加载位图。 4-4 怎样获取位图的实际宽度和高度。 4-5 怎样实现位图的绽放。 习题 Logo Logo Logo Logo Logo Logo Logo Logo Logo Logo 本章要求: 第4章 图形设备接口 设备环境DC 图形设备接口:Cpen、CBrush、Cbitmap、CRgn、CFont、CPalette. 文本字体、颜色的控制 位图显示 1.2.1 画笔CPen 1.2.2 画刷CBrush 1.2.3 位图CBitmap 1.2.4 区域CRgn 4.1.5 字体CFont 4.1.6 设备环境CDC 4.1.7 调色板CPalette 4.1 GDI对象 画笔(CPen)用于在设备环境中绘制直线、曲线和多边形边框。其主要方法如表所示。 获取EXTLOGPEN结构 GetExtLogPen 获取LOGPEN结构 GetLogPen 返回连接到CPen对象上的HPEN句柄 HPEN 用HPEN句柄返回一个CPen对象的指针 FromHandle 通过LOGPEN结构来创建一支画笔 CreatePenIndirect 用指定的风格、宽度和画刷属性创建一个逻辑装饰画笔或几何画笔 CreatePen 构造函数,构造一个CPen对象 CPen 描 述 方 法 画刷(CBrush)用于填充诸如多边形、椭圆和路径等图形内部区域。其主要方法如表所示。 4.1.2 画刷CBrush 通过颜色创建画刷 CreateSysColorBrush 通过位图创建画刷 CreateDIBPatternBrush 通过颜色模板创建画刷 CreatePatternBrush 通过LOGBRUSH结构创建画刷 CreateBrushIndirect 创建虚体画刷 CreateHatchBrush 创建实体画刷 CreateSolidBrush 描 述 方 法 位图是常用的图像存储格式。它实际是一种位矩阵,每一个显示像素都对应于其中的一个或多个位。可以利用位图来表示图像,也可以利用它来创建画刷。在利用位图创建画刷时必须用SelectObject()将其选入设备环境后才可使用,结束时需调用DeleteObject()将其删除。 位图CBitmap类的主要方法 4.1.3 位图CBitmap 建立一个映
您可能关注的文档
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第1章C#与VisualStudio2005.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第2章变量与表达式.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第3章流程控制与函数.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第4章数组、集合与字符串.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第5章面向对象编程基础.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第6章Windows应用程序设计.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第7章数据库访问.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第8章文件处理和绘图基础.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 1第9章Web应用程序设计基础.ppt
- Visual C#程序设计应用教程 教学课件 作者 郭力子 第1章C#与VisualStudio2005.ppt
- Visual C++应用开发与实践 教学课件 作者 刘乃琦VC 第5章 多线程.ppt
- Visual C++应用开发与实践 教学课件 作者 刘乃琦VC 第6章 套接字编程.ppt
- Visual C++应用开发与实践 教学课件 作者 刘乃琦VC 第7章 数据库操作技术.ppt
- Visual C++应用开发与实践 教学课件 作者 刘乃琦VC 第8章 综合案例商品销售管理系统.ppt
- Visual C++应用开发与实践 教学课件 作者 刘乃琦VC 第9章 课程设计网络五子棋.ppt
- Visual Forpro数据库设计与应用 教学课件 作者 安晓飞 10VFP第1讲.ppt
- Visual Forpro数据库设计与应用 教学课件 作者 安晓飞 10VFP第2讲.ppt
- Visual Forpro数据库设计与应用 教学课件 作者 安晓飞 10VFP第3讲.ppt
- Visual Forpro数据库设计与应用 教学课件 作者 安晓飞 10VFP第4讲.ppt
- Visual Forpro数据库设计与应用 教学课件 作者 安晓飞 10VFP第5讲.ppt
文档评论(0)