CDC类在它的成员函数中封装了全部的Windows图形API,这些成员函数包括:

  • 画点的函数
  • 画线的函数
  • 画形状的函数
  • 填充和翻转形状的函数
  • 滚动屏幕的函数
  • 绘制文本的函数
  • 绘制位图和图表的函数
  1. 画点:像素点的绘制不过是改变单个像素点的颜
  • SetPixel():试图用指定的颜色画一个像素,返回绘制时使用的颜色。
  • SetPixelV():与上面基本相同,但不用返回绘制时使用的颜色,因而速度更快

2.画线:即改变屏幕上一系列像素点的颜色。

  • MoveTo():开始画线、弧和多边形时,把光标移动到一个初始位置
  • LineTo():画一条从初始位置到另个点的直线
  • Arc():画一段弧
  • ArcTo():画一段弧,并更新初始位置
  • AngleArc():画一条线,然后画一条弧,并更新初始位置
  • PolyDraw():画一系列线段和Bezier样条
  • PolyLine():画一系列线段
  • PolyPolyLine():画多个系列线段

3.画形状:这里的形状是一系列封闭线条

  • Rectangle():画一个矩形
  • Pie()画一个饼状楔形
  • RoundRect():画一个圆角矩形
  • Draw3dRect():画一个三围矩形
  • Polygon()画一个矩形的边缘
  • PolyPolygon():创建一个或多个多边形
  • DrawFrameControl():画一个框架控件
  • Elipse():画一个椭圆

4.形状填充和翻转:填充和翻转改变一个形状内的所有像素点颜色

  • FillRect():填充一个矩形
  • FillSolidRect():用一种单色填充一个矩形
  • InvertRect():反转一个矩形的颜色
  • ExtFloodFill():用当前画刷填充一个区域,提供比FloodFill()函数更多的灵活性
  • FrameRect():画一个矩形的边框

5.滚动:通过滚动可移动屏幕周围像素的颜色

  • ScrollDC():左右上下移动屏幕图像

6.绘制文本:我们可能认为文本是打印的,不是画的。但在一个图形用户界面中,甚至一个文本字符都是由像素构成的一幅图。

  • TextOut():在一个指定的位置输出一个字符串
  • ExtTextOut():在一个矩形区域内输出一个字符串
  • Tabble TextOut():在基于该函数传输的一个表,在指定位置输出一个字符串,并将字符串中的任何制表符转化为空格DrawText()在指定的矩形区域内绘制文本,但比TextOut()有更多的选项,如把文本居中和显示多行文本

7.绘制位图和图标:一个位图和图标是指由大量像素组成的阵列所形成的图像。在绘制位图时,通常只是把像素阵列复制到视频内存中。图表是一种具有特定意义的计算机图形,它具有透明色的能力,也就是说,当我们把一个图标绘制在屏幕上时,它的每一个像素的颜色都可被屏幕上原有的颜色代替。

  • DrawIcon():在指定的位置画一个图标
  • BitBlt():再从指定的设备环境中复制一个位图,通常是从磁盘中装入或在内存中创建