在开发中,不可避免会遇到使用图片来代替字体显示,又美观又大气,但是程序更改起来会比较麻烦,这个时候就需要用到BMFont(位图工具)来制作Fnt字体了。
我们先来认识一下BMFont,下图是界面,右边的是字体库
选项就不一一做介绍了,接下来让我们来做一个位图的fnt字体吧。一般美术资源都是这样的
这时候我们就要使用BMFont了,首先针对真彩色的图形,我们要做一些设定,点击"Options"->“Export options”
在弹出的窗口中,选择位深度设置为32位,导出的纹理材质为PNG(红框中的选项)
然后,点击"Edit"->"(Un)Select all chars",取消选择所有字符。因为我们将在后边导入需要的字符。
现在点击"Edit"->"Open Image Manager" 弹出下图窗口
"Image"是菜单栏,可以点击。有三个选项,如下图
Import image 是导入图片资源
Edit image 是修改已经导入的图片资源
Delete selected 是删除所选择的图片资源
选择"Image"->"Import image",选择要导入的图片资源,选择完以后如下图
修改ID里面的数值,id所需要的数值是Ascii表里的十进制数,如不知道自己位图的Ascii值。可以看下图(汉字不包括在内)
然后点击确定,你选择的位图就会在该位置亮起小标点,我导入的图片是1,输入的id是49,那么他就会在1的位置亮一个小标点,如下图
依次按照以上导入图片步骤,导入其他你所需要的字体位图,完后以后如下图
导出之前我们可以先点击"Options"->"Visualize"预览一下效果
这样看起来是不是觉得材质太大,太浪费了? 那么我们先选择"Options"->“Font settings”
看Size大小是多少(Size表示的是合成的字体最后在编辑器中使用时字体的实际高度,一般我们可以根据图片的高度来定这个值的大小。)
然后选择"Options"->“Export options” 修改导出材质的大小,改到合适大小就行
然后再次预览一下效果,如果在预览的时候出现
这说明你修改的宽度或者高度不能输出一个字位图,这个时候只需要重复上一步操作,改到对应的大小就OK,
选择 "Options"->“Save bitmap font as” ,然后导出,导出完以后,会在你选择的路径有一个fnt和png
这样一个fnt就做好了
----进阶制作汉字FNT
新建一个text文本,输入想要的内容,保存(注意!!!!! 保存的格式一定要是UTF-8格式,否则软件无法识别)
选择"Edit"->“Selects chars from file”,载入刚才新建的txt文件,然后你会发现出现一个错误
这个错误导致的原因是你没有选择字体,选择"Edit"->“Fnot settings”修改成中文字体
再次选择"Edit"->“Selects chars from file” 你会发现刚才输入的字符已经导入成功了
然后点击"Options"->"Visualize"预览一下效果
导出之前修改一下导出选项,选择"Options"->“Export options” ,在cocos2d-x中需要按如下设置
选择 "Options"->“Save bitmap font as” ,然后导出,导出完以后,会在你选择的路径有一个fnt和png
OK,fnt字体制作到此结束了