制作第一个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字体
随机推荐
- 利用动画+div的前后切换实现轮播
可以利用两块div(分别设为前和后),用绝对定位使两块div重合,再利用z-index实现两块div的堆叠顺序(即显示的变换),利用动画和定时器实现轮播,这就是基本的思路. 完整的顺序如下: 1.先设 ...
- 使用Jsoup帮助解析具有html标签的数据和解析网页
下载Jsoup包后导入 /** * Created by YGW on 2016/4/17. * 显示公告的详细内容 */public class PressFragment extends Frag ...
- linux系统学习(常用命令)
今天调休,闲来无事,研究一下linux系统. Linux常用命令: 一:文件管理 ctrl+alt:在虚拟机与windows之间切换ctrl+g:进入linux输入模式 pwd:查看当前目录 ls:列 ...
- 基于mvc结构的前端页面框架搭建
前端开发一年了,向大家交流下自己实践总结下来的一点点开发心得.人生难免磕磕碰碰,前进的道路很多,在学习工作上我们都得学会如何让自己过的更高效,代码亦是如此. 下面,开始介绍自己总结的前端框架搭建(布局 ...
- JS HTML标签尺寸距离位置定位计算
四种浏览器对 clientHeight.offsetHeight.scrollHeight.clientWidth.offsetWidth 和 scrollWidth 的解释差异 网页可见区域宽:do ...
- ASP大数据量使用GetRows()提升速度
抽取10万条数据,Access数据库,GetRows() 现有10W条数据,Access数据库保存 通过正常提取: <% Set conn= Server.CreateObject(" ...
- sqlserver 2012 重启是 ID 自动增长 1000的问题
1. Open "SQL Server Configuration Manager"2. Click "SQL Server Services" on the ...
- 在webservice中传递Hashtable
webservice中不支持hashtable的数据类型,那么如何在webservice中传递hashtable呢?我们可以通过将hashtable转化为webservice中支持的数组的类型来进行传 ...
- Javascript原型钩沉
写在前面的总结: JS当中创建一个对象有好几种方式,大体上就是以下几种: ①通过var obj ={...} 这种方式一般称为字面量方式,{}直接写需要定义的字段 ②var obj = new Obj ...
- JavaWeb_数据传输_原
本节目录: 1.如何从Servlet向JSP传送数据:(setAtrribute和getAtrribute) 2.jsp如何输入表达数据以及传数据到servlet(FormAction去向和Inpu ...