新Visual C++应用开发与实践 教学课件 刘乃琦_ VC 第4章 图形设备接口.pptVIP

  • 1
  • 0
  • 约 23页
  • 2015-11-19 发布于广东
  • 举报

新Visual C++应用开发与实践 教学课件 刘乃琦_ VC 第4章 图形设备接口.ppt

4.1.1 画笔CPen 2.StretchBlt 该函数复制源设备上下文的内容到目标设备上下文中。与BitBlt方法不同的是,StretchBlt方法能够延伸或收缩位图以适应目标区域的大小。 语法格式如下: BOOL StretchBlt( int x, int y, int nWidth, int nHeight, CDC* pSrcDC, int xSrc, int ySrc, int nSrcWidth, int nSrcHeight, DWORD dwRop ); x:目标矩形区域的左上角x轴坐标点。 y:目标矩形区域的左上角y轴坐标点。 nWidth:在目标设备中绘制位图的宽度。 nHeight:在目标设备中绘制位图的高度。 pSrcDC:源设备上下文对象指针。 xSrc:源设备上下文的起点x轴坐标,函数从该起点复制位图到目标设备。 ySrc:源设备上下文的起点y轴坐标,函数从该起点复制位图到目标设备。 nSrcWidth:需要复制的位图宽度。 nSrcHeight:需要复制的位图高度。 dwRop:光栅操作代码。 在开发程序时,通常需要从磁盘中动态加载一幅图像到窗口中。用户可以使用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 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: 本章要求: 第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

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档