Windows 图形设备接口编程基础

需积分: 16 0 下载量 94 浏览量 更新于2024-08-24 收藏 911KB PPT 举报
C++图形设备接口及Windows绘图 本节我们将讨论C++图形设备接口及Windows绘图相关的知识点。 一、图形设备接口(Graphics Device Interface) 图形设备接口(Graphics Device Interface,简称GDI)是Windows操作系统中的一组提供给用户操纵图形设备的函数,负责系统与用户之间的信息交换。GDI是Windows系统的主要组成部分,通过将设备描述表(Device Context,简称DC)作为参数传递给GDI函数,就可以在DC对应的设备上绘图。 二、设备描述表(Device Context) 设备描述表(Device Context,简称DC)是具体物理设备的一个逻辑描述,通过设备描述表不同的Windows应用程序可以共享硬件资源。DC是GDI的核心组件,用于描述一个图形设备的逻辑描述。 三、坐标空间 在Windows绘图中,我们需要了解两种坐标空间:逻辑坐标和物理坐标。逻辑坐标是绘图函数使用的坐标系统,而物理坐标是鼠标等事件获取的坐标系统。 四、使用和删除画刷 在Windows绘图中,我们需要使用画刷来绘制图形。创建画刷后,必须将该画刷选入设备环 境,才可以使用。使用SelectObject函数可以将画刷选入设备环境,而DeleteObject函数可以删除画刷。 五、映像模式 映像模式是Windows绘图中的一种坐标系统,通过映像模式可以在一个统一的逻辑坐标系统中进行绘图,而不用考虑设备的物理坐标系统。Windows支持8种映像模式,包括MM_TEXT、MM_LOENGLISH、MM_HIENGLISH、MM_LOMETRIC、MM_HIMETRIC、MM_TWIPS和MM_ISOTROPIC等。 六、使用SetMapMode函数 SetMapMode函数可以设置映像模式,例如,使用SetMapMode(hdc,MM_LOENGLISH)可以将映像模式设置为MM_LOENGLISH。通过设置映像模式,可以在不同的设备上绘图。 七、设备无关性 Windows操作系统是设备无关的操作系统,当一个Windows应用程序在屏幕或打印机上绘制文本或图形时,不像DOS程序那样直接画在硬件上,而是画在一个称为设备描述表的逻辑设备上。再由系统把逻辑设备上的图像映射到实际的物理设备上,如显示器打印机等。 八、Windows应用程序和DC、GDI及硬件之间的关系 Windows应用程序、设备描述表、图形设备接口和物理硬件之间存在着紧密的关系。Windows应用程序可以通过GDI函数和设备描述表来访问物理硬件资源,从而实现图形绘制和输出。 本节我们讨论了C++图形设备接口及Windows绘图相关的知识点,包括图形设备接口、设备描述表、坐标空间、使用和删除画刷、映像模式、使用SetMapMode函数、设备无关性和Windows应用程序和DC、GDI及硬件之间的关系等。