制作第一个UI字体
为什么要制作UI字体
一般来说,会有系统默认字体共我们使用,但是出于以下两个原因我们经常会需要制作独特的字体。
1.系统字体的风格和美观程度等无法满足需求。
一般来说,系统字体都比较死板、生硬,风格单一,经常无法满足项目需求。当需要在某些地方显示一些造型独特的字体,更需要制作自己独特的字体文件才能满足这种需求。
2.应对系统字体丢失的情况。
某些玩家(特别是安卓玩家)如果经常从网上下载一些个性化的字体管理软件,会很容易导致系统字体丢失,这种情况一旦发生,会导致游戏内所有的文字都不能正常显示。为了以防万一,需要植入一套自己的字体再游戏资源包内部。
静态字体和动态字体
静态字体和动态字体有以下实质区别:
1.静态字体中,如果需要用到的文字不多,打成图集后资源量往往比动态字体小,一个动态字体的TTF格式文件一般为3~6MB。
2.静态字体可以通过提供一张自定义的含有所需文字的图片和一个配置文件(记录图片哪一会是哪个字的文件)来文成。动态字体只能通过导入整个TTF格式的字体文件文成。
3.静态字体中的字一般非常有限,只有极少数的字(否则图片资源会非常大),所以应用范围非常小,几乎很少用到静态字体。而动态字体几乎包含所有的文字,被广泛运用。
制作静态字体介绍
要制作静态字体,需要将字筛选出来打成一个图集,并生成一份记录其中哪一块是哪个字的配置文件。
在Unity界面中,在Project窗口内单击鼠标右键,选择NGUI菜单,选择Open BipMap Font Maker。也可以通过Unity顶部菜单栏中NGUI菜单打开。
在Type中选择Imported Bitmap,然后在Font Data中选择制作出的记录文字位置信息的配置文件(最好是TXT格式),在Texture中选择制作出的文字图集,然后单击主按钮Create the Font,即可创建出一个静态字体,创建出来的字体文件和制作图集得到的文件类似。制作好后,需要用字体的时候,选择这个字体的预设即可。
注意,制作完成后不要删除导入的那张文字图集和文字位置的配置文件的源文件,如果删除将会导致字体读不出文字。
制作动态字体介绍
制作动态字体非常简单,只需要从网上下载一个TTF格式的字体文件即可。然后将这个字体文件导入Unity中就算完成了,以后需要用字体的时候,就能直接调用这个字体。
注意,字体文件要选择简体中文的,TTF文件大小一般为3~6MB,如果远远超出了这个数,一般来说很有可能是字体中包含了很多种语言。
制作第一个UI字体的更多相关文章
- 制作第一个UI图集
按钮分有两种形式,一种是普通按钮,也就是一张没有文字的按钮图片,在需要用时,就在上面写上不同的.当前所需要的文字.量一种按钮则是图片按钮,这种按钮的特点是整个按钮就是一张图片,它既是按钮也是图片. 在 ...
- 新建一个UI窗口-XproerUI(MFC)教程
版权所有 2009-2015 荆门泽优软件有限公司 保留所有权利 产品首页:http://www.ncmem.com/apps/xproerui/index.asp 在线文档(XproerUI):Xp ...
- 背水一战 Windows 10 (6) - 控件 UI: 字体的自动继承的特性, Style, ControlTemplate
[源码下载] 背水一战 Windows 10 (6) - 控件 UI: 字体的自动继承的特性, Style, ControlTemplate 作者:webabcd 介绍背水一战 Windows 10 ...
- 如何制作prezi swf格式字体(prezi 中文字体)
如何制作prezi swf格式字体(prezi 中文字体) 文/玄魂 前言 Prezi软件虽然没有正式进入中国,但是中国的Prezi爱好者却在不遗余力的推广着Prezi.我接触这款软件比较晚,但是从接 ...
- 创建第一个UI
创建一个2D UI 制作UI时,首先要创建UI的"根".在Unity顶部NGUI菜单中选择Create,然后选择2D UI. 创建完成后,在Scene窗口中,NGUI自动生成了一个 ...
- 重新想象 Windows 8 Store Apps (15) - 控件 UI: 字体继承, Style, ControlTemplate, SystemResource, VisualState, VisualStateManager
原文:重新想象 Windows 8 Store Apps (15) - 控件 UI: 字体继承, Style, ControlTemplate, SystemResource, VisualState ...
- 模仿京东顶部搜索条效果制作的一个小demo
最近模仿京东顶部搜索条效果制作的一个小demo,特贴到这里,今后如果有用到可以参考一下,代码如下 #define kScreenWidth [UIScreen mainScreen].bounds.s ...
- 使用css3和伪元素制作的一个立体导航条
使用css3和伪元素制作的一个立体导航条供大家参考,代码如下: <!doctype html> <html lang="en"> <head> ...
- 制作自己的web字体
今天教给大家制作自己的web字体
随机推荐
- 给某个view增加颜色渐变图层
//给某个view增加颜色透明度渐变图层 - (void) insertTransparentGradient { NSLog(@"%@",NSStringFromCGRect(s ...
- Spring中bean的scope
Spring容器中的bean具备不同的scope,最开始只有singleton和prototype,但是在2.0之后,又引入了三种类型:request.session和global session,不 ...
- OQL对象查询语言
在用mat工具分析内存使用情况查询OutOfMemory原因时,OQL会有很大帮助,所以先在这里总结一下. 基本语法: select <javascript expression to sele ...
- 怎样在CentOS 7.0上安装和配置VNC服务器
VNC轻松连接远程Linux桌面 http://jingyan.baidu.com/article/6c67b1d6f1bac92786bb1e6d.html 这是一个关于怎样在你的 CentOS 7 ...
- SQL SERVER 与ACCESS、EXCEL的数据导入导出转换
* 说明:复制表(只复制结构,源表名:a 新表名:b) select * into b from a where 1<>1 * 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) ...
- WCF编程系列(七)信道及信道工厂
WCF编程系列(七)信道及信道工厂 信道及信道栈 前面已经提及过,WCF中客户端与服务端的交互都是通过消息来进行的.消息从客户端传送到服务端会经过多个处理动作,在WCF编程模型中,这些动作是按层 ...
- CSS高度塌陷
问题描述:当父元素只包含浮动的元素的时候,且父元素没有设置高度,如果父元素设置了边框border,那么看起来子元素不在父元素之内. 比如这样: html: <div id="paren ...
- js中对闭包的理解
本人丝一枚,在刚刚过去的javascript学习中,对闭包这个知识真是,听课两分钟,懵逼一整天.今天闲来没事,看了下闭包.话不多说先上代码. <!DOCTYPE html> <htm ...
- NOIP(提高组)DAY1国王游戏
问题描述 恰逢H国国庆,国王邀请n位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这n位大臣排成一排,国王站在队伍的最前面.排好队 ...
- linux下面的查找
locate: 速度快 不是实时的,每天定时执行把结果导入数据库 模糊匹配 updatedb --手动生成文件数据库,执行时间较长 find: 实时查找 ...