Windows程序设计阅读笔记(2)
2005-10-08 23:10
309 查看
设备内容是一个结构,它定义了一系列图形对象和与之相关联的属性,也包括影响输出的图形模式。图形对象包括:画线的笔、着色和填充的刷子、屏幕上复制或滚动的位图、定义各种可用色彩的调色板、为了裁剪和其他操作的区域、支持着色和绘画操作的路径。
关于设备内容设备独立是WINDOWS的首要特征。应用程序能够在各种设备上绘图。支持设备独立的软件包括在两个DLL中,一个是GDI.dll,被叫做图形设备接口(GDI),另一个叫做设备驱动,第二个DLL的名字依赖于具体的程序输出的设备,例如:如果应用程序在VGA的窗口上客户区域绘制,那么DLL是Vga.dll,如果是在Epson FX-80打印机上输出,那么是Epson9.dll。应用必须同志GDI来调用指定的设备驱动,一旦设备驱动被调动,那么就通知其准备绘画操作(例如选择先的颜色和宽度、刷子的模式和颜色、字体的类型、裁减区域等)。这些任务是和一个DC的创建和维护相关联的。一个设备内容(DC)是一个结构,它定义了一系列图形对象和与之相关联的属性,也包括影响输出的图形模式。图形对象包括:画线的笔、着色和填充的刷子、屏幕上复制或滚动的位图、定义各种可用色彩的调色板、为了裁剪和其他操作的区域、支持着色和绘画操作的路径。不像其他的结构,程序从不需要直接访问DC,而是通过调用各种函数来操作这个结构。图形对象与DC相关联的笔、刷子、位图、调色板、区域、路径都是图形对象,下面是图形对象的属性:
在程序创建DC的时候,系统自动生成一系列默认的对象(但没有位图和路径),程序可以通过调用GetCurrentObject和GetObject函数来检查默认对象。程序可以通过创建新的或选择对象到DC中来改变默认的对象。选择对象使用SelectObject。设置和获得当前刷子的颜色使用SetDCBrushColor和GetDCBrushColor。设置和获得当前笔的颜色使用SetDCPenColor和GetDCPenColor。
关于设备内容设备独立是WINDOWS的首要特征。应用程序能够在各种设备上绘图。支持设备独立的软件包括在两个DLL中,一个是GDI.dll,被叫做图形设备接口(GDI),另一个叫做设备驱动,第二个DLL的名字依赖于具体的程序输出的设备,例如:如果应用程序在VGA的窗口上客户区域绘制,那么DLL是Vga.dll,如果是在Epson FX-80打印机上输出,那么是Epson9.dll。应用必须同志GDI来调用指定的设备驱动,一旦设备驱动被调动,那么就通知其准备绘画操作(例如选择先的颜色和宽度、刷子的模式和颜色、字体的类型、裁减区域等)。这些任务是和一个DC的创建和维护相关联的。一个设备内容(DC)是一个结构,它定义了一系列图形对象和与之相关联的属性,也包括影响输出的图形模式。图形对象包括:画线的笔、着色和填充的刷子、屏幕上复制或滚动的位图、定义各种可用色彩的调色板、为了裁剪和其他操作的区域、支持着色和绘画操作的路径。不像其他的结构,程序从不需要直接访问DC,而是通过调用各种函数来操作这个结构。图形对象与DC相关联的笔、刷子、位图、调色板、区域、路径都是图形对象,下面是图形对象的属性:
图形对象 | 属性 |
位图 | 大小、字节;尺寸、像素;颜色格式;压缩模式 |
刷子 | 类型、颜色、模式、原点 |
调色板 | 颜色和大小(或颜色的数量) |
字体 | 字体名称、宽度、高度、重量、字符集 |
路径 | 形状 |
笔 | 类型、宽度、颜色 |
区域 | 位置和大小 |
相关文章推荐
- Windows程序设计阅读笔记(3)-设备内容类型
- Windows程序设计阅读笔记(4)-得到设备内容HANDLE
- Windows程序设计阅读笔记(1)
- [学习笔记]Windows程序设计:第二章 UNICODE
- 函数参数Windows程序设计_Chap01_起步_学习笔记
- Windows 程序设计 复习笔记(共 81 问)
- windows程序设计笔记:显示文字
- windows程序设计_第6章_键盘——学习笔记
- 【阅读笔记】JavaScript 高级程序设计(一)
- windows程序设计笔记6
- windows程序设计「BITMASK.C」范例分析笔记
- Windows 程序设计学习笔记(三):第一个窗口
- windows程序设计学习笔记--动态链接库
- windows程序设计学习笔记-图元文件
- Windows 程序设计3、4章笔记
- Windows程序设计 读书笔记 - 键盘。
- ASP.NET Ajax程序设计—阅读笔记
- JavaScript高级程序设计 阅读笔记(十四) js继承机制的实现
- JavaScript高级程序设计 阅读笔记(二十一) JavaScript中的XML
- JavaScript高级程序设计 阅读笔记(十五) 浏览器中的JavaScript