ngui字体显示
2015年02月01日 11:23
0 点赞
0 评论
更新于 2025-11-21 15:55
在开发过程中,我们常常使用 NGUI 来创建用户界面。然而,如何实现 NGUI 字体的清晰显示呢?下面将详细介绍具体步骤。
步骤一:安装并配置 BMFont
- 安装 BMFont 软件,安装完成后打开它。
- 选择
options菜单中的Font settings选项,进入字体设置界面。 - 在字体设置中,选择字体为“微软雅黑”(注意,这里要确保选择的不是“@微软雅黑”,因为带有“@”符号时,之后导出的字体将会是横向的),并选择
unicode编码。此时,你会发现界面最下方显示有 29180 个字符,这个数量显然过多。
步骤二:选择字符表
选择游戏或软件中实际会用到,或者你预估会用到的中文字符。具体操作如下:
- 选择导入一个
txt文本文件,该文件中包含你想要使用的文字。 - 如果导入过程中出现错误,这通常是由于文本编码问题导致的。你可以在文本编辑器中选择“另存为”,并将编码格式设置为
utf - 8,保存后再次进行select chars from file操作。 - 操作成功后,你会看到边栏显示的汉字数量,例如这里显示为 2500 个汉字。
- 若还需要使用数字、英文、符号等字符,可以进行相应的选择。完成后,总共选择的字符数量达到 2692 个。
步骤三:导出字体文件
- 准备导出字体,选择
options->Export options,进行相关设置。 - 设置完成后,选择
options->save bitmap font as...,为文件命名并保存。保存后,你将得到.fnt和.png两个文件。 - 将
.fnt文件的扩展名改为.txt,因为它本质上就是一个文本文件,将其扩展名改为.txt是为了方便 NGUI 使用。然后把这两个文件拷贝到 Unity 工程的资源目录中。
步骤四:在 NGUI 中创建字体
- 此时,BMFont 的任务已经完成。接下来,在 NGUI 中使用
Font Maker创建字体。 - 打开
Font Maker,将之前生成的字符文本.txt文件和.png图片拖入其中。 - 点击“Create a Font without an Atlas”,在右侧文件夹中会生成
myfont.mat和myfont.prefab两个文件。
关于图集选择的说明
- 如果没有选择图集(即
Atlas:None),系统会新生成图集,但这会产生额外的draw call。 - 如果选择现有的图集,则会将字体的图集加入到现有的图集中。
步骤五:测试字体并解决清晰度问题
- 通过 NGUI 创建 UI,创建
widget(这里选择label),然后运行测试。 - 运行时,可能会发现字体不够清晰。如果觉得字体比较细,想要加粗字体,可以在第二步设置字体时,将
Bold选项打钩,并将outline thickness的值增大,例如增大为 2 或更大。 - 同时,设置导入到 Unity 中的字体图片的属性。完成这些设置后,再次查看字体显示效果,你会发现字体变得清晰很多。
通过以上步骤,你就可以在 NGUI 中实现清晰的字体显示了。