富文本:
public void RichTextTest(Text text)
{
//首先统一文字大小和颜色为:16号白色
text.fontSize = 16;
text.color = Color.white;
//设置文本颜色
text.text = "<color=red>我是红色的文字</color>";
/*
* 也可以使用富文本设置
* text.text = "<color= #999999>我是文本显示内容</color>";
*/
//换行
text.text += "\n";
//设置大小
text.text += "<size=20>我是20号字</size>";
//换行
text.text += "\n";
//设置粗体
text.text += "<b>我是粗体</b>";
//换行
text.text += "\n";
//设置斜体
text.text += "<i>我是斜体</i>";
//换行
text.text += "\n";
text.text += "<color=#00FF0080>我是绿色半透文字</color>";
}
富文本效果如下:
16进制颜色转RGB
Hex Color 的颜色值为16进制颜色值,如下图所示:
将16进制的颜色值转换成RGB的
/// <summary>
/// 根据16进制颜色值获取RGB
/// </summary>
/// <param name="hex">16进制的颜色值</param>
/// <returns></returns>
public Color GetColorByHex(string hexColr)
{
Color newColor;
ColorUtility.TryParseHtmlString(hexColr, out newColor);
return newColor;
}
如果是Text文本的话,也可以使用富文本编辑达到效果:
/// <summary>
/// 设置UI文本的显示
/// </summary>
/// <param name="text">文本</param>
/// <param name="value">文本显示的内容</param>
/// <param name="hexColor">16进制颜色值</param>
public static void SetTextValue(Text text, string value, string hexColor)
{
text.text = "<color=" + hexColor + ">" + value + "</color>";
}