1.BMFont下载地址
http://www.angelcode.com/products/bmfont/
2.BMFont使用方法
http://momowing.diandian.com/post/2013-01-24/40046239211
首先打开Font Settings,选择要制作的字体。可以从Font列表中选择一种字体,也可以通过Add font files导入一个ttf字体文件。
Charset字体编码默认为Unicode,当然也可以选择其它的。
点击OK,字体设置成功
然后打开Export Settings,进行导出设置
Width和Height的值,尽量选小,只要能够容纳我们需要用到的所有字就可以了,选大了浪费。
Bit depth,32位比8位更清晰,不过负担更大。
Font descriptor选择Text
Texture选择png
选择OK,完成导出设置。
接下来我们就可以选择我们所要制作的字,一个一个去找太麻烦了,我们可以先新建一个txt文件,在其中输入我们要制作的字,然后Select chars from file就可以直接选中所有要用到的字了。
注意
1.在导入前要先clear all chars in font。
2.由于txt文件的编码方式不是在上面设置的unicode,所以我们要对这个txt文件另存为unicode方式,并覆盖。否则,在导入时会提示charcters from the file are not available in the font
最后Save bitmap font as就可以导出一个png和一个fnt,将fnt改为txt格式。这就是我们在ngui中制作bitmap字体所用到的两个文件了
3.新版NGUI提供的三种创建字体方式
(1)使用BMFont制作的png文件和txt文件制作bitmap字体。分别将两个文件拖入texture和font Data里面。 缺陷:局限于个别字。不能随意改变。还要用外部工具BMfont来创建字体集。
(2)动态字体,需要先导入一个ttf字体文件。C/windows/fonts下面就有很多。也可以从网上下载一些独特的字体。
导入后,拖入Source中,选择size等就可以创建一个字体。
也可以另外手动创建http://momowing.diandian.com/post/2013-05-07/40051478498
注意看下面的提示:要使用动态字体,不必创建UIFont,只需要在UIlabel中选择Unity,再将ttf文件拖入font中即可。
缺点:动态字体不能作为一个atlas的一部分,所以使用动态字体必然要增加至少一个draw call。而且ttf文件一般较大,会大大地增加包大小