Awesome
uHyperText
扩展uGUI,支持富文本解析,动画表情以及位移动画等功能
此插件扩展了uGUI Text的富文本格式,支持uGUI的富文本格式的基础上,还增加了以下独有的格式:
#R-表示后面的字体为红色(red)
#G-表示后面的字体为绿色(green)
#B-表示后面的字体为蓝色(blue)
#K-表示后面的字体为黑色(blank)
#Y-表示后面的字体为黄色(yellow)
#W-表示后面的字体为白色(white)
#b-表示后面的字体为闪烁(blink)
#c + 六个数字或者A-F字母-自定义颜色。例如:c008000=暗绿色
#u + 文字 + #u-文字有下划线。
#n-所有文字颜色为初始值。
#g-恢复所有设置为默认设置
#r-文字换行。
##-等于一个#号。
#[name]自定义颜色名
#d字体风格(1 -正常 2粗体 3 斜体 4 粗体+斜体)
#e删除线
#m动态删除线
#f换字体
#r换行
#u下划线
#t动态下划线
#l动态效果速度(动态删除线和动态下划线)
#s字号大小
#w更改当前行的对齐模式 1 左对齐 2 中间对齐 3 右对齐
#x水平偏移多少像素
#y 垂直偏移多少像素
#z 同行上垂直偏移多少像素
#h显示的文本{超链接参数}#h 此格式为超链接,点击超链接时,可获得链接的参数。
注意,要接收到控件的事件参数,请添加组件SymbolTextEvent组件,并注册回调!
以下语法格式类HTML标签式语法,支持以下标签:
一:<sprite n=A w=B h=C b=D c=E t=F x=偏移动画 y=偏移动画>
此格式可在当前位置显示一个精灵,
A 为精灵的名
B 为当前精灵的宽度,可选,默认值为精灵的实际宽度
C 为当前精灵的高度,默认值为精灵的实际高度
D 表示是否闪烁,可参值为0或1
E 表示当前精灵的颜色,可接颜色RGB值或已定义好的颜色名称,格式为:
c =#RGB和c=ColorName,颜色名可在ColorConst.Set中添加。
这此为已添加好的颜色名称。
F表示当前显示的大小与原始大小需等比缩放,1值表示按宽度缩放 2值表示按高度缩放,0表示不强制要求等比缩放。
二、<pos v=A t=B>
此格式可设置下面元素的绘制的起始位置,A值为具体的数值类型,B值为位置信息的格式0 表示绝对坐标 1表示相对坐标 2 表示自动匹配,也即此结点无用。
例如,
<pos v=0.5 t=1>在50%的位置开始绘制下一个元素。
<pos v=100 t=0>在x=100的位置开始绘制下一个元素。
三、<RectSprite xxx px=X轴坐标 py=Y轴坐标>
xxx内容与Sprite结点一致,此结点与Sprite区别在于,RectSprite必需指定绘制的位置,其他元素可环绕此区域显示,达到类似如下效果:
四、<hy t=A l=B fs=C ft=D fn=E fc=F fhc=G ul=H so=I>此格式为超链接的格式,以下是详细说明:
t=A -> A表示此超链接要显示的内容
l=B -> B表示此超链接的参数,在点击此超链接时,此内容会被传递给委托。
fs=C -> C表示此超链接的字号大小,C表示数字
ft=D ->D表示字体的格式,可选正常,粗体,斜体,粗+斜
fn=E ->E表示此字体的名称,字体名称可在委托当中设定,Tools.s_get_font,默认在此绑定:
fc=F ->F表示字体的颜色,颜色格式与sprite标签一致
fhc=G ->G表示鼠标悬浮在此超链接上时,字体的颜色,颜色格式与sprite标签一致
ul=H -> H表示此超链接是否有下划线1 有 0无
so=I -> I表示此超链接是否有删除线1 有 0无
四、<color=XXX>格式,此为设置颜色结点,颜色格式与前文一致
五、</color>恢复颜色为初始值。
六、<b>开始加粗显示
七、</b>结束加粗显示
八、<i>开始倾斜显示
九、</i>结束倾斜显示
十、<size=A>设置当前字体字号
十一、</size>恢复初始字号
十二、<ol c=颜色 x=大小 y=大小> 描边效果
十三、<so c=颜色 x=大小 y=大小> 阴影效
十四、</ol> </so> 结束字体效果
十五、<face n=名字>显示一个动画的名字,动画可在SymbolTextInit配置或通过接口Tools. s_get_cartoon获取。
单词连接说明:
很多时候,假如出现这种情况,很影响美观
符号单独在行首先。此控件支持把我们希望尽量在同一行的元素尽量拼凑在同一行,可在此选择:
使用Empty方式,类似如下:
单词被拆成多行显示了,使用Default则如此:
可自定添加组合元素的规则,
ESFactory.Add(string name, ElementSegment es);