如何编辑、输出fnt字体文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何编辑、输出fnt字体文件?相关的知识,希望对你有一定的参考价值。

首先是准备bmfont这款软件,大家可以去官方下载,进行字体的选择。这里有几个注意点,

1.font下拉窗我们可以选择自己喜欢的中文字体,当然您也可以下载第三方的ttf字体通过Add font file这个导入。

2.字体编码,着这里默认是unicode,这里是个注意点,之后我会讲到。

接着设置字体的导出选项,这里有几个注意点:

1.Width和Height的值,4096可以说是最大了,请不要超过这个值,不然做出来的图集太大,会加大drawcall的数量。

2.bit depth,这里我用的是8位很多人可能觉得不清晰,是可以选择32位的,不过同样会增大负担。

以上所说的负担都是针对手机的哈。

现在我们选择自己需要的字体:需要的您都选中吧~当然也可以全选,但是中国文字真的好多啊,全选估计一张图集都装不下,所以怎么办?挑选我们要用的字呗~生僻字就不要了。事实上第一次我真的选了,花了我很久。在桌面创建一个txt文本,在里面输入自己想要的文字,可以上网下找一下中文常用字把它粘贴下来。看一下文本属性:它的编码格式是中文的,GB2312,不知道大家联想到了什么没有。

然后保存,现在回到bmfont:现在找到我们的文本。选择后发现错误,因为bmfont设置的编码格式和我们文本的编码格式不统一!现在我们统一一下编码就好啦,我这里用的是notepad++保存一下,重复上面的操作试试。需要的字都被选中了。现在保存出NGUI需要的东西,得到两个文件。事实上我这里用不到这么大的图集,可以看出来一大块黑色,这些都浪费了,我们可以回到bm里面把宽高缩小一下。接着把fnt后缀的文件重命名为txt。

参考技术A

TTF(True Type Font)字库是微软定义的基于windows的标准字库格式.但其由于专利保护以及无法跨平台导致TTF字库在实际应用中无法有效使用. 为此推出TTF2FNT字库转换软件,除了我们定义的FNT格式外,也可以根据客户的需求来做转换字库格式.FNT字库可以用于字加工,印刷,排版等需要用到字库的场合.而且可以独立于windows平台外,例如嵌入式系统的字体显示,主要特征:

1可以转换系统自带的所有TTF字库;

2支持OTF格式(open Type Font);

3支持字体嵌套,子型,复合字体(Composite_Glyph);

4FNT格式可以根据客户需求来定制;

5提供FNT格式的定义以及读取API;

6支持unicode字体。

参考技术B

FNT格式简述:fnt相当于一个配置文件,比如汉字“象”要用bitmap的方式显示。象的unicode编码是8c61,转换为10进制为35937,再通过fnt文件找到id=35937的显示区域,最后把fnt对应图片相应区域扣出来显示。hiero或bmfont都可以吧,编码是基于unicode的 。最好的软件应该是 Glyph Designer。如果不想付费的话,自己写几行代码也能生成。FontForge 应该支持,这个专门的 fonteditor支持,VSoft FontEdit 也支持。FontLab 出的 BitFonter和 FontStudio 是一套的,可以编辑几乎任何格式的位图字体当然也包括.fnt格式的位图字体,而 BitFonter 在 Mac 与 Windows 下都可以使用。

BMfont踩坑点之cocosStudio1.6版本BitmapLabel无法拖入制作好的fnt文件

  cocosStudio加入了一个自定义字体BitmapLabel,但是拖入BMfont制作好的fnt文件却始终无法拖入,排除BMfont在制作fnt文件时有中文路径,以及导出的fnt文件和png不在同一目录下等因素,最终发现BMfont导出文件时,png图片会默认在命名后面加_0,从而导致cocosStudio无法使用fnt文件。

  解决方法:先把导出的图片后的_0去掉,在把fnt文件编辑,里面的引用的图片名字同样去掉_0,cocosStudio便可使用。

以上是关于如何编辑、输出fnt字体文件?的主要内容,如果未能解决你的问题,请参考以下文章

Fnt字体格式详解

Fnt字体格式详解

BMfont踩坑点之cocosStudio1.6版本BitmapLabel无法拖入制作好的fnt文件

Laya FairyGui系列七 GTextField

OGEngine教程:字体工具使用

PDF文件怎么修改字体大小