ngui字体显示

2015年02月01日 11:23 0 点赞 0 评论 更新于 2025-11-21 15:55

在开发过程中,我们常常使用 NGUI 来创建用户界面。然而,如何实现 NGUI 字体的清晰显示呢?下面将详细介绍具体步骤。

步骤一:安装并配置 BMFont

  1. 安装 BMFont 软件,安装完成后打开它。
  2. 选择 options 菜单中的 Font settings 选项,进入字体设置界面。
  3. 在字体设置中,选择字体为“微软雅黑”(注意,这里要确保选择的不是“@微软雅黑”,因为带有“@”符号时,之后导出的字体将会是横向的),并选择 unicode 编码。此时,你会发现界面最下方显示有 29180 个字符,这个数量显然过多。

步骤二:选择字符表

选择游戏或软件中实际会用到,或者你预估会用到的中文字符。具体操作如下:

  1. 选择导入一个 txt 文本文件,该文件中包含你想要使用的文字。
  2. 如果导入过程中出现错误,这通常是由于文本编码问题导致的。你可以在文本编辑器中选择“另存为”,并将编码格式设置为 utf - 8,保存后再次进行 select chars from file 操作。
  3. 操作成功后,你会看到边栏显示的汉字数量,例如这里显示为 2500 个汉字。
  4. 若还需要使用数字、英文、符号等字符,可以进行相应的选择。完成后,总共选择的字符数量达到 2692 个。

步骤三:导出字体文件

  1. 准备导出字体,选择 options -> Export options,进行相关设置。
  2. 设置完成后,选择 options -> save bitmap font as...,为文件命名并保存。保存后,你将得到 .fnt.png 两个文件。
  3. .fnt 文件的扩展名改为 .txt,因为它本质上就是一个文本文件,将其扩展名改为 .txt 是为了方便 NGUI 使用。然后把这两个文件拷贝到 Unity 工程的资源目录中。

步骤四:在 NGUI 中创建字体

  1. 此时,BMFont 的任务已经完成。接下来,在 NGUI 中使用 Font Maker 创建字体。
  2. 打开 Font Maker,将之前生成的字符文本 .txt 文件和 .png 图片拖入其中。
  3. 点击“Create a Font without an Atlas”,在右侧文件夹中会生成 myfont.matmyfont.prefab 两个文件。

关于图集选择的说明

  • 如果没有选择图集(即 Atlas:None),系统会新生成图集,但这会产生额外的 draw call
  • 如果选择现有的图集,则会将字体的图集加入到现有的图集中。

步骤五:测试字体并解决清晰度问题

  1. 通过 NGUI 创建 UI,创建 widget(这里选择 label),然后运行测试。
  2. 运行时,可能会发现字体不够清晰。如果觉得字体比较细,想要加粗字体,可以在第二步设置字体时,将 Bold 选项打钩,并将 outline thickness 的值增大,例如增大为 2 或更大。
  3. 同时,设置导入到 Unity 中的字体图片的属性。完成这些设置后,再次查看字体显示效果,你会发现字体变得清晰很多。

通过以上步骤,你就可以在 NGUI 中实现清晰的字体显示了。

作者信息

feifeila

feifeila

共发布了 3994 篇文章