富文本
GUI 元素文本和文本网格可运用多种格式和字号。GUIStyle、GUIText 和 TextMesh 类含有的富文本 (Rich Text) 设置可命令 Unity 查找文本内标记。这些标记不会显示出来,但会命令将字体样式变化应用到文本中。
标记格式
标记系统源于 HTML,但从严格意义上来讲,人们并未将标记设计为与标准 HTML 兼容。基本理念是为了在一对匹配的标记内添加一段文本:-
我们<b>不</b>觉得好笑
如上述示例所示,标记只是“尖括号”字符内的一块文本,< and >。标记内的文本表示其名称(本示例中为 b)。注意,标记末尾部分的名称与开头部分的名称相同,只是前者添加了斜线/字符。用户无法直接查看标记,但系统会将其编译为已添加文本的字体样式说明。上述示例中使用的 b 标记表示粗体显示“不”字,因此文本在屏幕上的显示效果为:-
我们不觉得好笑
添加标记的文本部分(包括添加文本的标记)称为元素。
嵌套元素
通过将一个元素“嵌套”至其他元素,则可将多个字体样式应用到文本部分
我们<b><i>一点都不</i></b>觉得好笑
i 标记表示应用斜体字体样式,此文本在屏幕上的效果为
我们一点都不觉得好笑
请注意结尾标记的顺序与开头标记相反。这是因为,当您考虑内部标记无需包含最外层元素时,这样处理更清楚明确
我们<b>真的<i>一点都</i>不</b>觉得好笑
将成为
我们真的一点都不觉得好笑
标记参数
有些标记会让文本生成简单的全有或全无效果,但有些标记可实现多种变化效果。例如,color 标记需要知道要应用的颜色。需要使用参数将此信息添加至标记:-
我们都<color=green>羡慕</color>得不得了
注意,结尾标记不包含参数值。有时候,可以用等号连接该值,但这不是必需的操作。
支持的标记
下表列出了 Unity 支持的所有字体样式标记。
b
用粗体渲染文本。
我们<b>不</b>觉得好笑
i
用斜体渲染文本。
<i>通常</i>,我们觉得不好笑
size
根据像素给定的参数值设置文本的字号。
<size=50>大部分</size>都未受到影响
color
根据参数值设置文本颜色。可在传统的 HTML 格式中指定文本颜色
#rrggbbaa
...这里的字母对应十六进制位数对,分别表示红色、绿色、蓝色和 alpha(透明)的颜色值。例如,如需将颜色设为完全不透明的蓝绿色,该标记应设为
<color=#00ffffff>...
另一种方法是使用颜色名称。这样更容易理解,但这通常会影响颜色的范围并始终默认为完全不透明。
<color=cyan>...
下表列出了可用的颜色名称。
颜色名称 | 十六进制值 | 样本 |
---|---|---|
浅绿色(即蓝绿色) | #00ffffff | ![]() |
黑色 | #000000ff | ![]() |
蓝色 | #0000ffff | ![]() |
褐色 | #a52a2aff | ![]() |
蓝绿色(即浅绿色) | #00ffffff | ![]() |
深蓝色 | #0000a0ff | ![]() |
艳粉色(即洋红色) | #ff00ffff | ![]() |
绿色 | #008000ff | ![]() |
灰色 | #808080ff | ![]() |
浅蓝色 | #add8e6ff | ![]() |
浅绿色 | #00ff00ff | ![]() |
洋红色(即艳粉色) | #ff00ffff | ![]() |
褐紫红色 | #800000ff | ![]() |
海军蓝 | #000080ff | ![]() |
橄榄色 | #008000ff | ![]() |
橙色 | #ffa500ff | ![]() |
紫色 | #800080ff | ![]() |
红色 | #ff0000ff | ![]() |
银色 | #c0c0c0ff | ![]() |
青色 | #008080ff | ![]() |
白色 | #ffffffff | ![]() |
黄色 | #ffff00ff | ![]() |
材质
材质只可用于文本网格,您可使用参数指定的材质渲染一块文本。如检视器中所示,值是文本网格材质数组中的指数。
我们对<material=2>纹理</material>很满意
矩形
矩形只可用于文本网格,可根据文本渲染图像。其使用参数指定用于图像的材质、以像素为单位设置图像高度和指示显示图像矩形区域的另外四个图像高度。与其他标记不同,矩形中未使用任何文本,因此其不含结尾标记 ? 初始标记末尾含斜杠字符,表示其为“自结束”标记。
<quad material=1 size=20 x=0.1 y=0.1 width=0.5 height=0.5 />
这将在渲染器的材质数组位置选择材质,并将图像高度设为 20 像素。图像的矩形区域从给定的 x 轴坐标、y 轴坐标、宽度和高度值开始,这些值是根据文本的未缩放宽度和高度确定的。
,