Unity3D :使用富文本标签设置文本样式
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
使用富文本标签设置文本样式
您可以使用 USS 设置整个文本字符串的样式,但是如果您只想设置文本字符串的一个单词的样式怎么办?这对于 USS 来说很困难,但对于富文本标签来说很简单。
富文本标签是可以放置在文本字符串内的标签,用于设置标签之间文本的样式。
有关所有支持的标签,请参阅支持的标签。
注意:在当前版本中,文本字段不支持富文本标签。
富文本语法
富文本标记类似于 HTML 或 XML 标记,但语法不太严格。
简单标记可以只有其名称,而没有其他值或属性。例如,标签使文本加粗。<b>
某些标签具有其他值或属性,如下所示:
<tag="value">
<tag attribute="value">
例如:
<color=”red”>
:使文本变为红色<sprite index=3>
:从默认精灵资源中插入第四个精灵。
注: 在 UXML 文件中,必须对以下字符使用 HTML 代码:
<
:(<)
>
:(>)
"
:(")
下表列出了可能的属性值类型和示例值。
值类型 | 示例值 |
---|---|
小数 | 0.5 |
百分比 | 25% |
像素值 | 5px |
字体单位 | 1.5em |
十六进制颜色值 | #FFFFFF (RGB)(一 ) #FFFFFFFF #FF |
名字 | 两者都有效。<link=”ID”> <link=ID> |
标记范围和嵌套标记
标签具有定义其影响多少文本的范围。大多数情况下,添加到文本中指定点的标签会影响从该点开始的所有文本。
例如,如果将标签添加到文本的开头,则会影响整个文本块:。<color="red"><color="red">This text is red
如果在文本块的中间添加相同的标签,则它仅影响标签和块末尾之间的文本:。This text turns<color="red"> red
如果在文本块中多次使用同一标签,则最后一个标签将取代之前所有相同类型的标签:。<color="red">This text goes from red<color="green"> to green
您还可以使用结束标记来限制标记的范围,并在另一个标记中使用嵌套标记:<color=red>This text is <color=green>mostly </color>red
第一个标记的范围是整个文本块。第二个标记有一个结束标记,该标记将其范围限制为一个单词。<color><color>
嵌套标记时,无需按照启动标记的相同顺序关闭其作用域。
启用和禁用富文本标记
默认情况下启用富文本标记。
要禁用富文本标签,请执行以下操作之一:
- 在用户界面
生成器中,选择控件并清除检查员
窗。 - 在 UXML 中,将属性设置为 。
enable-rich-textfalse
由3D建模学习工作室整理翻译,转载请注明出处!