【Unity】打包TextMeshPro的字体

发布于:2025-04-19 ⋅ 阅读:(25) ⋅ 点赞:(0)

前言

在Unity中,TextMeshPro与常规 Text 组件相比提供了更高级的文本呈现功能,TextMesh Pro 可以处理各种语言,包括中文。我们可以轻松地在 Unity 项目中使用中文,而不必担心字体和布局问题。TextMeshPro需要的字体资源就需要我们自己去手动打包,这篇文章将详细介绍TextMeshPro字体打包流程。

打包流程

一、资源下载

下载字体打包需要的资源:字体文件、字库文件
字体文件:楷体、宋体等,大家可以根据自己的需求去网上下载
字库文件:中文常用字7000,也就是字体文件,网上也能下载到

如果小伙伴懒得去找,也可以在博主个人主页资源去下载👉 FontResource

二、复制资源到Unity

将字体文件和字库文件复制到Unity项目的Assets文件夹或其子文件夹中。

三、打包

在Unity中,点击Window,选择TextMeshPro > Font Asset Creator来创建一个新的字体资源,将字体文件拖入Source Font File,Atlas Resolution设置为最大,设置Character Set属性为Characters from File,接着将字库文件拖入Character File,其余属性可根据自己需要进行设置,点击Generate Font Atlas开始生成字体图集纹理,等待一段时间,点击Save,保存到Assets文件夹或其子文件夹中。
在这里插入图片描述

四、Font Asset Creator属性介绍

Unity官方已经对所有属性进行了解释(Font Asset Creator | TextMeshPro | 4.0.0-pre.2),为便于各位小伙伴理解,翻译解释如下:

Source Font File:选择用于生成 Text Mesh Pro 字体资源的字体。
Sampling Point Size:设置用于生成字体纹理的字体大小(以磅为单位)。

  • Auto Sizing(默认):使用尽可能大的磅值,同时仍然适合纹理上的所有字符。
  • Custom Size:使用自定义磅值,在文本框中输入所需的大小,使用此设置可实现对仅位图字体的像素精确控制。

Padding:指定字体纹理中字符之间的间距(以像素为单位)。填充越大,过渡越平滑,从而允许更高质量的渲染和更大的效果,如粗轮廓。

Packing Method:指定如何使字符适合字体纹理。

  • Optimum:查找仍然适合纹理中所有字符的最大可能自动字体大小。
  • Fast(默认):更快地计算字符打包,但可能使用比优化模式更小的字体大小。

Atlas Resolution:设置字体纹理的大小宽度和高度,以像素为单位,使用 SDF 字体时,更高的分辨率会产生更精细的渐变,从而产生更高质量的文本。
Character Set:选择预定义的字符集。

  • ASCII(默认):包括 ASCII 字符集中的可见字符。
  • Extended ASCII:包括扩展 ASCII 字符集中的可见字符。
  • ASCII Lowercase:仅包含 ASCII 字符集中可见的小写字符。
  • ASCII Uppercase:仅包含 ASCII 字符集中可见的大写字符。
  • Numbers+Sysbols:仅包括来自 ASCII 字符集的可见数字和符号。
  • Custom Range:输入一系列十进制值或值范围,以指定要包括的字符。
  • Unicode Range(Hex):输入一系列 unicode 十六进制值或值范围,以指定要包含的字符。
  • Custom Characters:输入字符序列以指定要包含的字符。
  • Characters from File:包括小伙伴们指定的文本资源中的所有字符。

Render Mode:指定输出字体图集时要使用的渲染模式。

  • SMOOTH:将图集渲染为抗锯齿位图。
  • RASTER:将图集渲染为非抗锯齿位图。
  • SMOOTH_HINTED:将图集渲染为抗锯齿位图,并将字符像素与纹理像素对齐以获得更清晰的结果。
  • RASTER_HINTED:将图集渲染为非抗锯齿位图,并将字符像素与纹理像素对齐以获得更清晰的结果。
  • SDF:使用较慢但更准确的 SDF 生成模式渲染图集,并且没有过采样。
  • SDFAA:使用更快但不太准确的 SDF 生成模式渲染图集,它生成的字体图集足以满足大多数情况。
  • SDFAA_HINTED:使用更快但不太准确的 SDF 生成模式渲染图集,并将字符像素与纹理像素对齐以获得更清晰的结果,它生成的字体图集足以满足大多数情况。
  • SDF8:使用较慢但更准确的 SDF 生成模式和 8 倍过采样渲染图集。
  • SDF16:使用更慢但更准确的 SDF 生成模式和 16 倍过采样渲染图集。
  • SDF32:使用较慢但更准确的 SDF 生成模式和 32 倍过采样渲染图集。将此设置用于具有复杂或小字符的字体。

Get Kerning Pairs:启用此选项可从字体复制字距调整数据。

Generate Font Atlas:生成字体图集纹理。

注意事项

在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到