TextMeshPro中文字体生成和字体材质更换

TextMeshPro中文字体生成和字体材质更换

中文字体生成:

TextMeshPro是unity提供的相较源Text更加强大,高效的字体组件。但其有一个严重的缺点就是默认不支持中文。所以我们需要制作一个支持中文的字体。

TextMeshPro的制作过程和NGUI的字体生成很像。并和NGUI一样拥有图文混排的功能。

首先我们需要导入TextMeshPro的组件,我们可以通过unity package手动搜索安装,也可以直接创建一个TextMeshPro的UI组件,unity会自动检测帮助我们安装TextMeshPro。

安装结束后,我们可以在我们的Assets文件夹下看见一个新的文件夹TextMeshPro。

想要让TextMeshPro支持中文,我们就需要利用TextMesh提供给我们的工具制作一个带有中文字库的字体。

首先我们在windows选择项中找到TextMeshPro,并选择其中的Font Asset Creator:

《TextMeshPro中文字体生成和字体材质更换》

我们可以看到这样一个窗口:

《TextMeshPro中文字体生成和字体材质更换》

Source Font File:原字体文件,这里的文件可以是微软提供给我们的也可以是自己下载的。其中微软提供给我们的字体文件地址在:C:\Windows\Fonts

Sampling Point Size:选择采样点一般设置为auto

Padding:字体间距

Packing Method:打包模式,有最快和最优两种。

Atlas Resolusion:图集分辨率,中文字体一般用最大的8192*8192

Character Set:字符设置,这里选择字符的来源,一般我们选择来源自文字并将字库txt文件拖至这里

Character File:字库文件

Render mode:渲染模式

设置好之后,我们点击Generic font atlas就可以生成字体,生成完成后记得保存。

字体材质更换:

FontMeshPro提供默认材质,但我们知道材质球本身的特点类似于预制体,要变大家一起变。通常来说这个特性是非常方便的,但在特殊情况下当我们使用同一种字体但不希望使用同一种材质的使用,我们就需要对字体材质进行替换。

字体材质也是材质,可以在Project面板右键创建。在材质球的shader选择中选择TextMeshPro的任一项,调制自己需要的效果,拖拽到字体游戏对象的Debug setting面板中即可,通常时TextMeshPro材质设置的最后一项。

《TextMeshPro中文字体生成和字体材质更换》

    原文作者:BraveRunTo
    原文地址: https://blog.csdn.net/BraveRunTo/article/details/116646726
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞