一.Unity字体种类展示
这是字体包里面的图片,是不是很多种字体.
下载链接不能用了,涉及到ban quan,
可以留言,我发给你
有时候可能回复的不是很快(抱拳了,工作日很快)
二.TextMeshPro介绍
TextMeshPro 是 Unity 的文本解决方案。它是 Unity 的 UI 文本和旧版文本网格的替代品。
TextMeshPro(也称为 TMP)功能强大且易于使用,它使用高级文本渲染技术以及一组自定义着色器;提供显着的视觉质量改进,同时在文本样式和纹理方面为用户提供着难以置信的灵活性。
TextMeshPro 提供了对文本格式和布局的改进,具有字符、单词、行和段落间距、字距调整、对齐文本、链接、支持多字体和精灵、自定义样式等功能。
TextMeshPro 的原理是基于 Mesh 渲染的,它使用了一种叫做 Signed Distance Field(简称 SDF)的技术,可以在运行时动态生成文本的 Mesh,从而实现更高质量的文本渲染效果。
SDF 技术是一种将二维平面上的图像转换为三维空间中的距离场的技术。在 SDF 中,每个像素点都包含了一个距离值,表示该像素点距离图像的边缘有多远。通过计算距离值,可以实现各种文本效果,比如描边、阴影、高亮等等。
TextMeshPro 通过使用 SDF 技术,可以实现更高质量、更灵活的文本渲染效果。它可以动态生成文本的 Mesh,从而实现各种效果,比如描边、阴影、高亮等等。同时,TextMeshPro 还提供了丰富的 API,可以方便地实现各种文本效果。
三.TextMeshPro创建方法
右键UI/TextMeshPro然后弹出如下图,点击Import TMP Essentials 导入即可
设置完成你会发现无法设置中文,只能设置字母或数字,所以接着往下看
1.第一步先有一个字体.ttf.ttc.otf 格式的字体
2.第二步拖到unity中
3.第三步创建字体库
4.第四步 把字体拖到如下图位置
5.第五步 点击GenerateFontAtlas等待一会点save到文件夹里
6.第六步把刚保存的文件拖到如下图的位置即可使用
三.TextMeshPro的使用方法
里面包含多种用法,具体用法请自行扩展
代码如下
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
public class TextMeshProScript : MonoBehaviour
{
public TextMeshProUGUI textMeshPro;
void Start()
{
textMeshPro.text = "Hello, World!";
}
//设置它的样式
public void TextYangShi()
{
//设置字体
textMeshPro.font = Resources.Load<TMP_FontAsset>(".ttf");
//设置字体大小
textMeshPro.fontSize = 24;
//设置字体颜色
textMeshPro.color = Color.white;
//设置轮廓宽度
textMeshPro.outlineWidth = 0.1f;
//设置对齐方式
textMeshPro.alignment = TextAlignmentOptions.Center;
//设置字体的高亮效果
textMeshPro.richText = true;
textMeshPro.text = "<color=yellow>Hello, World!</color>";
}
// Update is called once per frame
void Update()
{
}
}