当前位置: 首页 > news >正文

第5章,[标签 Win32] :GDI 的其他方面的分类

专栏导航

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

回到目录

下一篇:无

本节前言

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

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

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

我们开始。

一. 本节内容

GDI 的其他方面就不太容易分类了,具体如下。

(一)映射模式(mapping mode)和转换(transform)

尽管在默认时是以像素为单位进行绘制的,但并不是别无选择。GDI 的映射模式允许以英寸(甚至是几分之一英寸)、毫米或者其他你所想要的任何单位进行绘制。除此之外,Windows NT 支持传统的 3×3 矩阵表示的世界坐标转换(world transform)。这用于倾斜和旋转图形对象。Windows 98 不支持世界坐标转换。而当前,大家使用的 Windows 系统,都属于 Windows NT 系统。无论是 Windows XP,还是 Win7,Win8,Win10,还是 Win11,都是属于 Windows NT 系统,它们都支持世界坐标转换。

(二)图元文件(metafile)

这个术语,也许你比较陌生。一个图元文件是以二进制形式存储的 GDI 命令的集合。图元文件主要用于通过剪贴板转换矢量图形绘制的表现形式。我们将在以后的某一章节讨论图元文件。

(三)区域(region)

区域是一个任意形状的封闭图形,通常可以表示为由一系列简单区域进行布尔运算后得到的结果。在 GDI 内部,可以使用一个从已知区域出发的一系列扫描线来定义一个复杂的区域。可以使用区域进行轮廓绘制、填充或者剪裁。

(四)路径(path)

路径是存储在 GDI 内部的直线和曲线的集合。可以用于绘制、填充和剪裁。路径还可以转换为区域。

(五)剪裁(clipping)

当绘图被限制在客户区的一个特定的空间位置时,就发生了剪裁。那个特定的空间位置可以是矩形或者非矩形,它通常被指定为一个区域或者一个路径。

(六)调色板(palettes)

仅在支持 256 种颜色时,才能使用自定义的调色板。Windows 仅保留其中的 20 种色彩以供系统使用。你可以改变其它 236 种色彩,这样就可以准确显示按位图形式存储的真实图像。我们将在以后的某一章节讲解调色板。

实际上,关于调色板的知识,它只能是作为一种讲解材料。因为,今天的显示器,基本上都已经是真彩色了,它不支持 256 种颜色的模式。在这种情况下,关于调色板的程序,有好多内容,它在现如今的Windows 系统中,是不能正常运行的。

然而,我们还是要去讲解调色板的知识。那是因为,尽管 PC 和 PC 端显示器不支持调色板,然而,在一些个嵌入式领域,仍然会用到调色板的支持。如果你去阅读与学习早期的程序源代码,很可能还会遇到使用调色板的代码。因此,我们出于知识完整性的考虑,我们依然会讲解调色板。

(七)打印机(printing)

尽管本章只讨论视频显示器,但在本章学到的所有知识几乎都可以应用于打印机。我们将在以后的某一章,来讲解打印机知识。

关于打印机,我认为,在 Windows API 章节中讲解的知识,它是一种原理性知识,是一种理论基础,而实用性不大。而当我们去学习 MFC,并在 MFC 中学习关于打印机的知识的时候,我们所接触到的,才会是具有实用性的知识的。

当你在 Windows API 章节中,学习到打印机章节时,你应该只需要学习代码与原理。当你在 MFC 章节中学习打印机知识时,就可以考虑着,使用你所编写的程序,来打印程序中的内容了。不要担心你没有物理打印机。在预算不足的情况下,你可以不去购买现实的物理打印机,只需要安装 WPS 办公软件就可以了。安装了 WPS 办公软件以后,当你使用 MFC 知识来编写打印机程序,并且启动打印时,WPS 软件的相关模块,就会启动一个模拟性质的打印机,并通过构建一个 PDF 文件,来模拟着打印成果。

学习 MFC 中的打印机知识的时候,我挺感谢金山软件公司的。多亏了有他们的 WPS 软件及其打印机模拟模块,我才能在买不起物理打印机的情况下,学习打印机程序。

关于打印机这一块,我也建议你好好学习。

结束语

本节知识不难,都是介绍性的知识。

某些地方,我在原版的佩措尔德教材内容的基础上,增添了自己的一点理解。

本节结束。

专栏导航

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

回到目录

下一篇:无

http://www.jsqmd.com/news/642772/

相关文章:

  • QML AnimatedImage 动画图像组件示例合集
  • Qwen3-Reranker-0.6B完整指南:支持多租户隔离的API网关集成方案
  • Qwen3.5-4B模型智能体(Agent)框架实践:自主任务规划与执行
  • SCI论文写作框架:从逻辑闭环到故事升华
  • GLM-OCR快速上手:VS Code远程开发环境配置GLM-OCR调试断点技巧
  • Vectorizer终极指南:5分钟掌握PNG/JPG到SVG的无损转换技巧
  • 2026年OpenClaw怎么集成?阿里云1分钟保姆级教程+大模型APIKey配置、Skill集成教程
  • Day05:C语言数组存储结构与字符串详解
  • AI的实验科学
  • MATLAB箱线图绘制全攻略:从数据导入到高级美化(附常见问题解决)
  • 2026年专业马鞍山二辊矫直辊/马鞍山七辊矫直辊精选推荐公司 - 品牌宣传支持者
  • hyperf 对接企业微信 将消息发送功能改造为异步,使用 HyperF AsyncQueue投递消息任务,失败后自动重试 3 次,超出重试次数后记录
  • 国内半导体盛会哪家好?2026年国内主流展会,助力企业高效参展 - 品牌2026
  • GPEN未来演进方向:从单张修复到视频流实时增强
  • 如何在5分钟内掌握iOS虚拟定位:iFakeLocation开源工具完全指南
  • tiktok最新V2滑块验证分析 /captcha/verifyV2
  • 2.15 sql基础查询(SELECT、FROM、字段别名、常量与表达式)
  • 国内半导体论坛哪家好?精选2026年高端行业论坛,把握产业发展新趋势 - 品牌2026
  • Fish Speech 1.5真实效果:俄语科技文献语音转述准确率实测报告
  • 2026年OpenClaw如何搭建?腾讯云2分钟喂奶级指南+大模型APIKey配置、Skill集成流程
  • 从仿真到实物:永磁同步电机参数辨识的误差分析与实战调优指南(以定子电阻和磁链为例)
  • 国际半导体展会推荐:链接全球资源,优选高规格国际专业展会 - 品牌2026
  • HarmonyOS 6实战::多组件嵌套场景下,自动化测试覆盖复杂交互实践
  • 2026年3月SMT纳米阶梯钢网公司推荐,精密激光切割加工/SMT纳米阶梯钢网,SMT纳米阶梯钢网源头厂家有哪些 - 品牌推荐师
  • 告别传统ChatUI!Nanbeige 4.1-3B Streamlit WebUI真实交互效果分享
  • HY-MT1.5-1.8B实测:轻量级模型如何实现高质量实时翻译?
  • 2026年3月评价好的北村机床源头厂家推荐,加工航空航天复杂结构件/3C 电子壳体高精加工,北村机床厂家怎么选择 - 品牌推荐师
  • 一文讲透数字化转型的十个关键概念:信息化、自动化、数据化、智能化、平台化……
  • 从I2C总线到电平转换:STM32开漏输出的3个实战应用与配置避坑指南
  • 深入大模型-36-learn-claude-code之第十一课Autonomous Agents自治智能体