BMFont中文字体图集制作的方法~(for unity ngui)

好吧~似乎这个问题困扰了很多人,游戏开始中文化是个不错的事儿啊,这里我就做下说明,如何制作中文字体图集~

这里的字库图集的制作更多的是为了服务于unity的UI插件NGUI吧,当然EZ活着其他的可能也能用吧。

首先是准备bmfont这款软件,大家可以去官方下载http://www.angelcode.com/products/bmfont/,当然我也给出一个快盘的下载地址,版本是1.13的:http://www.kuaipan.cn/file/id_12421281643248522.htm

打开这款软件,进行字体的选择:

这里有几个注意点,

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

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

接着设置字体的导出选项:

这里有几个注意点:

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

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

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

现在我们选择自己需要的字体:

需要的您都选中吧~当然也可以全选,但是中国文字真的好多啊,全选估计一张图集都装不下,所以怎么办?挑选我们要用的字呗~生僻字就不要了。

事实上第一次我真的选了,花了我2小时?可能3小时左右吧~这里我之前请教“坤叔”,他教了我一个比较狠的方法,突然觉得自己真tmd二逼。

在桌面创建一个txt文本,在里面输入自己想要的文字,可以上网下找一下中文常用字把它粘贴下来。

看一下文本属性:

它的编码格式是中文的哦~GB2312,不知道大家联想到了什么没有。

然后保存,现在回到bmfont:

现在找到我们的文本!!!!!!!!!!!!!!!

选择后发现:

这种错误,为什么?因为bmfont设置的编码格式和我们文本的编码格式不统一!

现在我们统一一下编码就好啦,我这里用的是notepad++

保存一下,重复上面的操作试试~

需要的字都被选中了~

现在保存出NGUI需要的东西:

得到两个文件:

事实上我这里用不到这么大的图集,可以看出来一大块黑色,这些都浪费了,我们可以回到bm里面把宽高缩小一下,我就128吧~

好像还是太大,无所谓了,我就是说明一下,大家要节约呀~哈哈。

接着把fnt后缀的文件重命名为txt。

打工告成!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

如何使用?可以参看我的另外一篇博客:

http://momowing.diandian.com/post/2013-01-07/40046082451

BMFont中文字体图集制作的方法~(for unity ngui)的更多相关文章

  1. eclipse下java中凝视字体太小和xml中中文字体太小问题解决方法

    我们在win7下进行android应用开发.须要搭建对应的开发环境.如今普遍基本上都是eclipse+adt+sdk,在本人搭建完环境后,发现eclipse下.java中的凝视和xml中的中文字体变得 ...

  2. 更改Visual Studio Code为中文字体最有效的方法

    更改Visual Studio Code为中文字体最有效的方法. 网址:  https://marketplace.visualstudio.com/search?target=VSCode& ...

  3. Intelij idea 中文字体渲染异常解决方法

    当 Font 选择的字体无法渲染时,则尝试使用该选项所选择的字体渲染.

  4. Sass、Less编译器koala及koala不支持中文字体的解决方法

    一款很好用的Sass编译器,还可以编译Less.coffeescript等 去官网下载适合自己电脑的版本 http://koala-app.com/index-zh.html 打开后拖动或者打开项目目 ...

  5. 如何制作prezi swf格式字体(prezi 中文字体)

    如何制作prezi swf格式字体(prezi 中文字体) 文/玄魂 前言 Prezi软件虽然没有正式进入中国,但是中国的Prezi爱好者却在不遗余力的推广着Prezi.我接触这款软件比较晚,但是从接 ...

  6. NGUI制作字体的三种方法

    主要参考两篇博文: (1).NGUI制作字体的三种方法 (2).使用位图字体工具BMFont从图片生成自定义字体 1.BMFont下载地址 http://www.angelcode.com/produ ...

  7. centos系统安装中文字体几种方法

    我们知道centos是基于linux内核的这款系统默认是不带中文字体了,如果我们要使用中文字体就需要自行安装了,下面一起来看看吧.   前天有用户反应,生成的报到单中他的名字少了一个字.仔细检查了一下 ...

  8. FCKEditor编辑器添加中文字体的方法

    默认情况下,FCKEditor在进行文本编辑时,无法使用中文字体.让其添加中文字体的方法: 1.打开 fckconfig.js 文件,找到第154行(大概),会发现: 程序代码: FCKConfig. ...

  9. zabbix4.2升级后中文字体乱码解决方法.

    字体文件目录: zabbix 4.2 /usr/share/zabbix/assets/fonts/ 4.0 /usr/share/zabbix/fonts/ php 脚本文件位置: /usr/sha ...

随机推荐

  1. FZU-2218 Simple String Problem(状态压缩DP)

      原题地址: 题意: 给你一个串和两个整数n和k,n表示串的长度,k表示串只有前k个小写字母,问你两个不含相同元素的连续子串的长度的最大乘积. 思路: 状态压缩DP最多16位,第i位的状态表示第i位 ...

  2. hdu3001(状态压缩DP)

    hdu3001 题意 选择从任意一点出发,经过所有点的最小花费(经过每个点的次数不能多于 2 次). 分析 类似于 poj3311 经过每个点的次数有限制,考虑用三进制数存储每个点被访问过的次数,其它 ...

  3. 2.1多线程(java学习笔记) java中多线程的实现(附静态代理模式)

    一.多线程 首先我们要清楚程序.进程.线程的关系. 首先进程从属于程序,线程从属于进程. 程序指计算机执行操作或任务的指令集合,是一个静态的概念. 但我们实际运行程序时,并发程序因为相互制约,具有“执 ...

  4. Mysql insert without auto-increase when duplicate

    INSERT INTO video_tag_all(tagname,ctime) FROM video_tag_all WHERE (SELECT last_insert_id(id) FROM vi ...

  5. 如何对POST请求但是URL中也有参数/GET请求但是请求体中也有参数的情况进行安全扫描

    通常情况下,GET的参数都在URL中,POST的参数都在请求体中,但是如题的情况也有,像使用方法PUT.DELETE的情况也有,这些情况该如何进行安全扫描呢?

  6. 用nodejs和js写增删查模块

    文件目录如下:public是静态资源文件,index.html入门页面,server.js就是用nodejs创建的服务端代码,users.json就类似是数据库. 目录 显示界面 listUsers ...

  7. JComboBox添加item的赋值类型问题!不一致的话会导致不能更改jcombobox的选择值

    在用swing做页面的时候,往往需要设置字体样式,那么,如何用一种方法设置字体之后,在后面的其他页面就不需要再次设置字体了呢? 下面这个方法就可以解决了: JComboBox在对它进行添加子项的时候, ...

  8. 装饰者模式对HttpServletRequest进行增强

    package cn.web.servlet; import java.io.UnsupportedEncodingException; import javax.servlet.http.HttpS ...

  9. python核心编程学习记录之多线程编程

  10. C#中 protected internal 和 internal 的区别

    http://kudick.blog.163.com/blog/static/1666066320091055414453/ DoDo: protected: 爷爷有一张银行卡,爸爸可以用,儿子也可以 ...