- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第15章 uCGUI 抗锯齿
第15章 抗锯齿
直线近似由一系列位于显示器坐标的像素组成,因此它们会显示锯齿,除了那些接近于
水平或垂直线的直线。这种锯齿现象被称为图形失真。
抗锯齿是平滑的直线或曲线。它减少了锯齿现象,不完全是水平或垂直方向的任何直线
的阶梯现象。µC/GUI 支持不同的抗锯齿质量,抗锯齿字体和高分辨率坐标。
抗锯齿的支持是一个独立的软件项目,它不包括在µC/GUI 基本的软件包中。抗锯齿软件
位于子目录 GUI\AntiAlias 下。
µC/GUI 中文手册 第 1 页
第 15 章 抗锯齿
15.1 介绍
抗锯齿通过“混合”前景色和背景色来达到平滑曲线和斜线的效果。前景色和背景色之
间用到的阴影的数量越多,抗锯齿效果越佳(计算时间相应的也越长)。
抗锯齿的品质
抗锯齿的品质由函数 GUI_AA_SetFactor 设定。这在本章的后面部分介绍。对于在抗锯齿
和相应结果之间关系的概念,看一看所绘出的图片。
第一条直线在没有抗锯齿的情况下(抗锯齿系数为 1)绘出,第二条直线使用抗锯齿系数
2 绘出。这意思是从前景到背景的阴影数值为 2×2=4。下一条直线使用抗锯齿系数 3 绘出,
因此阴影数值为 3×3=9,以下类推。抗锯齿系数取 4 对于大多数应用来说应该是足够了,再
增大抗锯齿系数对于最终结果的影响并不显著,只会增加计算时间。
抗锯齿字体
支持两种类型的抗锯齿字体,低质量(2bpp)和高质量(4bpp)。当要使用它们的时候,
程序需要显示这些字体会自动连接。下表显示没有使用抗锯齿和使用两种抗饱锯齿字体分别
绘一个字符“C”的效果:
字体类型 黑色在白色上 白色在黑色上
标准
(无抗锯齿)
1 bpp
2 级阴影
第 2 页 µC/GUI 中文手册
第 15 章 抗锯齿
低质量
(抗锯齿)
2 bpp
4 级阴影
高质量
(抗锯齿)
4 bpp
16 级阴影
抗锯齿字体可以由µC/GUI 字体转换器建立。通常使用抗锯齿字体的目的是改善文字的外
观。虽然使用高质量抗锯齿的效果比低质量的抗锯齿更具视觉上的舒适性,但是相应的,它
也会占用更多的计算时间和消耗更多的内存。与非抗锯齿(1bpp)字体相比,低质量(2bpp)
字体消耗的内存是其两倍,而高质量(4bpp)字体消耗的内存是其 4 倍。
高分辨率座标
当使用抗锯齿进行一个项目绘制时,使用的座标与正常(非抗锯齿)的绘图函数的一样
的,这是默认模式。在函数参数中你不必考虑抗锯齿系数。例如,从(50, 100)到(100, 50)
绘一条抗锯齿直线,程序应当这样写:
GUI_AA_DrawLine(50, 100, 100, 50);
µC/GUI 的高分辨率特性让你使用由抗锯齿系数和显示屏尺寸所决定的虚拟区域。高分辨
率座标必须由函数 GUI_AA_EnableHiRes 启动,使用 GUI_AA_DisableHiRes函数进行显示。这
文档评论(0)