GDI编程之 一、GDI相关概念
来源:互联网 发布:淘宝如何出售虚拟物品 编辑:程序博客网 时间:2024/06/05 18:04
一、GDI相关概念
1、GDI(Graphics Device Interface):图形设备接口,是一个应用程序与输出设备之间的中介。它提供了一套函数库,这些函数在不同的输出设备上输出图形和文字。一方面,GDI向应用程序提供一个与设备无关的编程环境,另一方面,它又以设备相关的格式和具体的设备打交道。
2、DC (Device Context):设备描述表(设备上下文),是一种Windows数据结构,包括了如线的宽度和颜色、刷子的样式和颜色、字体、剪裁区域等信息。用于表达显示器、打印机等设备。
DC的主要作用是进行绘图和输出文字,如绘制线条、形状和文本等,具体如dc.MoveTo(),dc.LineTo(),dc.Ellipse(),dc.FillRect(),dc.FillSolidRect(),dc.TextOut()等。
Win32下与HDC相关的函数有:GetDC(), BeginPaint()/EndPaint(),GetWindowDC()等
对应的MFC版本的类有:CDC, CPaintDC, CClientDC, CWindowDC等
3、GDI对象:DC定义了一组GDI对象,包括画笔,画刷,字体,位图,调色板,剪裁区域,路径层(Path)。他们有Win32和MFC两套实现版本,其对应关系如下:
Win32对象
MFC类
HPEN
CPen
HBRUSH
CBrush
HFONT
CFont
HBITMAP
CBitmap
HPALETTE
CPalette
HRGN
CRgn
4、DC与GDI对象之间的关系:GDI对象是通过DC发生作用的,要使用这些GDI对象,可以使用Win32函数SelectObject来将其选入DC中,如::SelectObject(hdc, hPen);
5、利用DC和GDI对象绘图的完整步骤为:
(1). 获取或者创建一个DC
(2). 获取或者创建一个GDI对象(Pen, Brush等)
(3). 使用dc.SelectObject函数把GDI对象选入DC
(4). 使用DC进行绘图或文字输出
(5). 恢复DC原来的GDI对象并删除刚新创建的GDI对象,如pen.DeleteObject()
(6). 释放或删除设备描述表DC
其中,(1)和(6),(2)和(4)是成对出现的。
- GDI编程之 一、GDI相关概念
- windows编程之GDI基础(一)
- C#--GDI编程:一
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI+编程基础(一)GDI+ Vs GDI
- GDI编程之 Bitmap
- hdu4946 Area of Mushroom
- Lucene Tutorials
- 微信二维码生成
- hdoj 4946 计算几何求凸包
- Prim算法
- GDI编程之 一、GDI相关概念
- Android面试过程描述
- 进制转换
- 【数论】HDU 4952 Number Transformation
- hdu1269 迷宫城堡
- c++学习笔记之变量
- 数据结构学习笔记:串
- 【强烈推荐】《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题
- 学习LUA--零星记录