UGUI(四)- Text

本篇和下篇会分别介绍 UGUI Text 和 Button,RectTransform 放在之后讲

什么是 Text

Text 是 UGUI 用来渲染文字的组件之一,除了 Text,还可以用 TextMeshPro 来渲染文字

创建 Text

在 Hierarchy 视图空白处右键鼠标,弹出菜单中选择 UI -> Text,就可以创建一个 Text 组件

先看一下 Text 组件的属性

属性 简述
Text 要显示的文本信息
Font 所使用的字体
Font Style 文字样式 (斜体 , 加粗等)
Font Size 字体大小
Line Spacing 行间距
Rich Text 是否支持富文本
Alignment 文本的对齐方式
Alignment By Geometry 使用区段的字形几何执行水平对齐
Horizontal Overflow 水平溢出方式
Horizontal Overflow 垂直溢出方式
Best Fit 自动调整字号大小
Color 文本颜色
Material 材质 可以不设置
Raycast Target 是否可以被射线检测到
  • Font 除常规字体外,还支持自己制作的美术字体(用Bit Map Generator 制作)

  • Rich Text 富文本 支持 HTML 部分样式设置

    官方给出几个标签

    加粗 <b>一个富文本</b>

    倾斜 <i>一个富文本</i>

    大小 <size=40>一个富文本</size>

    颜色 <color=#00ffffff>一个富文本</color>

    材质 <material=1>一个富文本</material>

    嵌入 <quad material=1 size=20 x=0.1 y=0.1 width=0.5 height=0.5>

  1. color 值是有限制的,详细看下面官方说明
  2. material 与 quad 只能用在 Text Mesh 中使用,UGUI Text 不能用,下文有例子

   官方说明 https://docs.unity3d.com/Manual/StyledText.html

  • Alignment By Geometry 勾选则文本与文本框对齐时采用文字的边去对齐

  • Horizontal Overflow 水平溢出

  1. Wrap:文本将自动换行,当达到水平边界
  2. Overflow:文本可以超出水平边界,继续显示
  • Vertical Overflow 垂直溢出
  1. Truncate:文本不显示超出垂直边界的部分
  2. Overflow:文本可以超出垂直边界,继续显示
  • Best Fit 当边框很大时,文字最大显示Max Size字体大小;当边框很小时,文字最小显示Min Size字体大小,边框显示不了MinSize字体大小就不再显示文字了
  1. Min Size:最小大小
  2. Max Size:最大大小

Text 实例

写个显示当前时间的实例吧

using UnityEngine;
using UnityEngine.UI;

public class ShowTime : MonoBehaviour
{
    [SerializeField] Text m_Text;

    private void Update()
    {
        m_Text.text = $"当前时间是:\n{System.DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")}";
    }
}

显示结果

material 与 quad

上文中说到 material 与 quad 只能用在 Text Mesh 中使用,来做个例子看看看怎么使用

  1. 新建一个 3D Text

  1. 新建一个 Material 随便附个图,把 Material 放在 3D Text 的 Mesh Renderer 组件上

  1. 在 Text Mesh 组件中输入文字看效果

文本与效果



欢迎关注公众号,定期分享Unity的实用技巧~~
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章