第5章,[标签 Win32] :GDI 的基本图形

专栏导航

上一篇:第5章,标签 Win32 :GDI 函数调用

回到目录

下一篇:第5章,标签 Win32 :GDI 的其他方面的分类

本节前言

对于本节所讲解的知识,有可能,你会需要时不时地参考本专栏的其它文章。真的遇到了需要参考之前的文章的知识点,请你自行查阅。

我呢,也会提到一部分的参考课节。但是呢,你不应该依赖于我的主动提及。最好呢,你自己能够多去了解和查看本专栏目录。

本节内容,来自于对佩措尔德原教材的大段抄录。

我们开始。

一. 本节内容

在屏幕上或者打印机上显示的图形类型可以分为几类,被称为 "基本图形"。

(一)线条和曲线

线条是任何矢量图形绘制系统的基础。GDI 支持直线、矩形、椭圆(包括特殊的椭圆,如圆形)、椭圆弧线(椭圆圆周上的部分曲线)和贝塞尔样条曲线,这些我都会在本章后面讨论。如果需要绘制一个不同类型的曲线,你可以把它绘制成折现(折现就是由一系列非常短的线条定义的曲线)。GDI 使用当前选入设备环境的画笔绘制线条。

(二)可被填充的封闭区域

当一系列的线条或者曲线构成一个封闭区域时,你可以使用当前 GDI 的画刷对象填充这个区域。这个画刷可以是纯色的,或者是使用某种填充模式(如一系列水平的、垂直的或者倾斜的图案),还可以是在水平或者垂直方向不停重复的位图图像。

(三)位图

位图是一个二维的伪数组,每一个元素都对应显示设备上的一个像素。位图是光栅图形的基础。位图通常用于在视频显示器或者打印机上显示复杂(通常是真实世界)的图像。位图也通常用于显示必须要快速绘制的小图像,例如图标、鼠标指针以及出现在应用程序工具栏里的按钮。GDI 支持两种类型的位图:旧式(现在仍然十分常用)的 "设备相关" 位图(它属于 GDI 对象)和新式(从 Windows 3.0 起)的 "设备无关" 位图(DIB)。DIB 可以存放在磁盘文件中。本章我们暂且不讨论位图,以后会有专门章节来讨论。

(四)文本

文本和几百年来的传统印刷术息息相关,而很多印刷工作者和其他评论者会把印刷术当成一种艺术而不是技术,所以相对于数学性来说,文本在计算机图形学中的处理更偏向于艺术性。正因为这个原因,文本通常是任何计算机图形系统中最复杂的部分,而且也是组重要的部分(因为阅读文本还是最首要的功能)。在所有 Windows 的数据结构中,用于定义 GDI 字体对象和获取字体信息的数据结构是最庞大的。GDI 从 Windows 3.1 开始支持 TrueType 字体,这种字体是以填充的轮廓线为基础的,某些 GDI 函数可以操控这些轮廓线。Windows 98 还继续支持旧式的给予位图的字体,因为它的兼容性较好,对内存需求也小。我们将在以后的某个章节中讨论字体。

专栏导航

上一篇:第5章,标签 Win32 :GDI 函数调用

回到目录

下一篇:第5章,标签 Win32 :GDI 的其他方面的分类

相关推荐
Lucis__15 分钟前
基于责任链模式的消息队列—异步处理流水线的最佳实践
linux·c++·消息队列·责任链模式·ipc
Jackson_GJH1 小时前
C++虚函数、虚继承、虚基类
c++·c++基础
码匠许师傅1 小时前
【C++三方组件】开篇总论:为什么需要以及如何选型?
开发语言·c++
h_a_o777oah1 小时前
【Games101】C++ 软光追:光线追踪的求交逻辑和 BVH 提效实现及代码实现细节
c++·计算机图形学·光线追踪·games101·bvh·求交算法·软件渲染
cvby2 小时前
C++11--右值引用和移动语义
开发语言·c++
xiangyun612 小时前
【408数据结构 03】线性表与顺序表:C++手写SeqList
开发语言·数据结构·c++
君科程序定做2 小时前
用 IDL 处理高分一号(GF-1 / GF-1B/C/D)数据
c语言·开发语言
StarDream-Online3 小时前
Windows 下 uv 安装与配置完全指南(含环境变量设置)
windows·uv
多弗朗皮卡丘3 小时前
数据结构6:队列
c语言·数据结构
xxxiugou1233 小时前
双指针解题秘籍:从入门到精通
c语言·数据结构·c++·算法