TextMeshPro
TextMeshPro
文档
[官方文档](TextMesh Pro Documentation | TextMeshPro | 4.0.0-pre.2 (unity3d.com))
Unity 中的 TextMesh Pro 简介 |科德科 — Introduction to TextMesh Pro in Unity | Kodeco
[UGUI图文混排一]TextMehPro(TMP)使用手册 - 知乎 (zhihu.com)
动态/静态字体区别
动态字体资源 |文本网格专业版 |4.0.0-pre.2 — Dynamic fonts assets | TextMeshPro | 4.0.0-pre.2 (unity3d.com)
TextMeshPro现在又自动扩容机制,即指定字体自动使用字体中的文字,不用手动生成,代价是稍许消耗.
动态字体需要保留原来的字体文件(.ttf.otf),不然无法动态生成,这意味者会增大包体,而静态字体可以生成之后删除
制作中文字用得到的常用字
wy-luke/Unity-TextMeshPro-Chinese-Characters-Set
标签
Unity手游实战:从0开始SLG——TextMeshPro(三)Rich Text - 知乎 (zhihu.com)
[UGUI图文混排二]TMP支持的富文本(Rich Text)标签 - 知乎 (zhihu.com)
可以查看这个类 TMP_RichTextTagsCommon.cs
给图文中的图加颜色
<sprite index=0 color=#FFEB04>
缩进
<line-indent=15%>
图文帧动画的图帧动画,只支持2帧
<anim="first frame, last frame, frame rate">
eg:<sprite index=0 anim="1,2,1">
注:rate 越小越慢,最小为1
换行
这里说明一下LineBreaking Following Characters
和LineBreaking Leading Characters
LineBreaking Following Characters
: 里面定义的标点字符,表示跟随
,即不能出现在句首,例如句号逗号。。。
LineBreaking Leading Characters
:定义的标点符号,表示可以启新行,能出现在句首,例如括号。。。
TextMeshPro打包AssetBundle
当导入TestMeshPro的时候会自动导入一些资源包,大部分都在Resources文件夹下
操作步骤
- 将TextMeshPro包变成本地包
修改源代码
主要是修改TMP_Settings中
1 | /// <summary> |
修改为
1 | public static TMP_Settings instance |
在启动运行时
1 | TMP_Settings.instance = GameEngine.AssetModule.LoadAsset<TMP_Settings>("fonts/TMP Settings.asset"); |