牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

Unity3D-使用Bitmap Font Generator自定义字体

转载自:http://blog.csdn.net/wuming22222/article/details/51713350

Bitmap Font Generator是一个开源免费软件,下载地址http://www.angelcode.com/products/bmfont/ 
使用这个工具的过程中不要用中文目录 
一、将字母或数字做成字体 
1.这是美术给的图片 
这里写图片描述

2.打开BMFont, Edit—>Open Image Manager 
这里写图片描述 
打开Image—>Import Image,在目录中选择上述图片37.png即“A”,并在Id处填写A对应的ASCII码值,点OK 
这里写图片描述 
依次加入其他图片与对应的ASCII码值后,关闭窗口。 
这里写图片描述

3.导出设置 
这里写图片描述

Width与Height决定了最后导出的图片的长宽,以刚好囊括所有文字图片为宜,Texture决定了导出的图片的格式。设置好后,点击OK。

点击Options—>Save bitmap font as ,导出,得到文件: 
这里写图片描述 
当Bit depth设为8时,并不是我们想要的 
这里写图片描述

4.将这两个文件放到自己的Unity工程中,打开NGUI的FontMaker(NGUI—>Open—>FontMaker) 
这里写图片描述 
在Output中设置我们的字体图片将要集成到哪个Atlas中去,然后点击Create the Font。

5.在Label中的使用 
这里写图片描述

6.最终效果 
这里写图片描述

二、聊天中的图文混排

1.首先获取常用字,在(http://www.china-language.gov.cn/wenziguifan2/shanghi/013.htm)中国语言文字网拷贝到txt文件中

Font.txt

1>先将其中的副标题去掉 
这里写图片描述

2>通过Notepad++中的[编辑->空白操作->移除非必需的空白和EOL] 和 文本文档中替换对话框 将文件中的空白消除。

3>通过Notepad++中的[格式->转为UTF-8编码格式]将文本转换为UTF-8格式 
最后是这样的: 
这里写图片描述

2.打开软件设置中文字体 
这里写图片描述 
将Font.txt中的文字导入进来,Edit—>Select chars from file 
这里写图片描述

还可以通过多选框去选择一些其他需要添加的字,例如英文字母,数字

3.接下来的操作参考:一、中的3,4,5得到字体 
在制作Atlas的过程中注意MaxSize大小要大于等于BMFont生成的png图片的大小。 
这里写图片描述

4.将表情图片集成到字体所在的Atlas 
这里写图片描述 
这些是在QQ中另存为得到的表情(正式项目中不要用马化腾的表情,版权问题)。

5.对字体Prefab做如下设置: 
这里写图片描述

其中的1是设置在chatFaceAtlas中存在的图片,2是图片对应的符号

4.在Label的text中写入值为“New Label@0@最快最直接”,最后效果图: 
这里写图片描述

三、使用BMFont的好处在于(官网写了10来条,我这里摘录几条)

1.Support for complete Unicode 8.0 character set, as well as 8 bit OEM character sets.

2.Optimal use of texture space, i.e. as little unused area as possible.

3.Support for kerning pairs.

4.Easy to use file format,eighter normal text file or xml files. Binary format is available for those that prefer that.

5.8 bit or 32 bit texture output(TGA,PNG, and DDS files)


posted on 2017-12-25 11:00 杨粼波 阅读(37) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理