LZ今年六月刚刚毕业,在学校跟着老师做Android,OpenGL ES方面的项目(说白了就是干苦力╮(╯_╰)╭)。年后来SZ了,就业前景好像并没有电视上渲染的那样糟糕,至少IT行业是这样吧,只要你在大学做过些东西,有些基础,找到一份工作并不难。LZ本来是想找一家做Android游戏的公司,最好用我比较熟悉的Java,以及略微懂点儿的OpenGL ES技术,可是现实完全不是我想的那样子,根本没有这样的公司(掀桌(╯‵□′)╯︵┻━┻)!!!要么是Android应用,要么是Cocos2d,再要么就是Unity3D了。不说过程了,反正最后LZ到了一家创业公司用Unity做游戏。。。尼玛啊,LZ以前搞Android的,完全不会c#啊!!!好吧,其实两者差别也不大。。。额,经过一个多月LZ一个人漫长的学习(没错,就是一个人),期间各种痛苦,遇到问题连个问的人都木有,算是入了点门吧,就在LZ沾沾自喜的时候,Boss又发话了,研究下做UI的插件吧,下一步我们要做有些的UI。于是LZ屁颠屁颠跑去各种论坛Q群取经,看看大神们都用的是什么做UI。。经过几天的调研,最后决定了使用NGUI。一是性能比较好,口碑也好;二是简单,作者都说了遵循KISS原则,连傻子都会用。就这样,LZ就开始学习NGUI的艰辛历程,可能LZ比较笨,作者说小学生都能两天上手的东西LZ用了好几个周才摸着点儿门道。然后就是在实践中摸索着前进咯。废话说多了,下面转入正题。。。

  NGUI一开始是不支持动态字体的,尽管Unity从4.0开始就已经支持了,可是NGUI依旧宁死不屈,就不支持,可能是老外觉得自己做个不就好了嘛,就26个字母加上标点,多大点儿事儿╮(╯_╰)╭。可是生活在天朝的程序猿就苦咯,自己做图集?可以!常用的3000+字,稍微偏一点儿的字就打不出来不说,效果还不好,总感觉那些字怪怪的,放大一点就糊了。反正各种不爽。。。后来,有个大神自己写了个脚本,让NGUI也支持动态字体了,真是雪中送炭啊,看着清晰的字体,LZ对着屏幕就像饿了很多天的乞丐看见鸡腿一样。可是,在自己尝试着使用了一下,发现还是有些这样那样的Bug。不是很好用。再然后,盼星星盼月亮,tasharen大神终于放出了支持动态字体的官方版本!!!ps.其实我看了新加的几个脚本,跟之前非官方版本差别基本不大。谁知道这是什么情况。。

  拿到支持动态字体的NGUI,LZ迫不及待开始了尝试。首先,选一个好看的ttf字体扔到unity中,然后就等着吧,可得一会儿。。

                                            

  经过漫长的等待,字体终于导入到unity中,下面需要选择NGUI自带的Font Maker工具,在这里。。

                                                 

  打开后Type选择Dynamic,Font TTF讲导入的字体拖到此处。起一个霸气的名字,点击那个绿色的按钮就可以得到一个字体预制。

                                           

  下面创建一个Label试试。Font就是刚才得到的那个预制。

                                        

  点击Add进一个Panel中,假如你的Panel中本来就有一个背景什么的,你会发现你刚添加的字体被挡住了,而且任你点Depth点到手抽筋也没用。。

                                

  这个问题是因为在同一Panel不同图集造成的,这时候Depth是没用的。而你会发现NGUI的Example就不会出现这个问题,因为它的字体和精灵都在同一图集╮(╯_╰)╭。这个问题有些复杂以后再说好了。要解决这个问题,你需要调整Label的z轴,比背景前一点点就行。

                                

  你会发现其实动态字体还是非常好用的,一般情况下需要的字、符号里面都有,而且还很清晰,放大一些也不会糊,妈妈再也不用担心我的字体问题了!剩下的Input也一样,想输入什么就输入什么↖(^ω^)↗。

     

NGUI动态字体的使用的更多相关文章

  1. 制作NGUI动态字体

    在ngui中有两种制做字体的方式.一种是bmfont等工具制作字体图集的方法,这样的方法呢是动态的.生成的图集有多个字就是多少个字,要多加一 个字要又一次用工具做一次,非常是麻烦. 而汉字有太多,我们 ...

  2. NGUI 动态字体边缘模糊,毛边的问题解决办法

    NGUI支持生成动态字体,将ttf格式的字体文件拖入工程,用NGUIFontMaker制作即可,但是制作完之后会发现字体有毛边,边缘模糊. 这时选中你生成的字体预设,在该预设的UIFont脚本上更改P ...

  3. NGUI动态字体的创建(font maker)

    1,打开font maker 2,在font maker中创建选择动态字体 PS: 1,动态字体相对静态字体来说,动态字体比较消耗性能 2,静态字体是创建在图集中,这也是没那么消耗性能的原因

  4. NGUI 动态添加控件

    本文链接地址: Unity3D NGUI动态创建按钮 本例仅以熟悉NGUI组件功能为目的,想快捷简便的创建按钮或其它游戏物体请参考 “Unity3D 动态实例化Prefab” 以动态创建服务器列表为例 ...

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

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

  6. Unity动态字体在手机上出现字体丢失问题解决

    在我们游戏的开发过程中,在部分手机上运行游戏的时候,出现了字体丢失的问题,出问题的手机似乎用的都是高通芯片. 使用的unity是4.2.0版本,ngui是3.4.9版本. 在unity的论坛及unit ...

  7. 利用BMFont和NGUI制作字体集

    Unity中常常需要制作字体,也算是Unity的基本优势吧!其实质就是BMFont和NGUI制作字体.这里把步骤介绍一下: 1.先下载BMFont这个工具 2.Font Settings  设置:(1 ...

  8. 用原生CSS编写动态字体

    HTML部分: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...

  9. NGUI的字体加粗效果

    ngui的UILabel可以通过属性面板(inspector)设置字体的样式:加粗 倾斜 正常等. 但是如果通过这里设置了加粗,与实际的加粗不一样,ngui有一个拉伸宽度的变化. 这让人觉得很丑 .如 ...

随机推荐

  1. ionic4 refresh组件位置变更:Ignored attempt to cancel a touchmove event with cancelable=false

    io3 中 refresh组件位置可不定: io4 中 须置顶,否则报错,此外complete方法的调用位置改为target属性 参考:https://github.com/ionic-team/io ...

  2. Qt 学习之路 2(47):视图选择

    Qt 学习之路 2(47):视图选择 豆子 2013年3月28日 Qt 学习之路 2 34条评论 选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反 ...

  3. 网络控制芯片AX88796B系列使用简介

    目录 1. 特性 2. 结构框图 3. 接收 3.1 缓存空间 3.2 Receiver Buffer Ring 3.3 接收机制 4. 发送 5. 编程过程简要说明 5.1 初始化配置 5.2 接收 ...

  4. JavaWeb学习笔记(三)—— Servlet

    一.Servlet概述 1.1 什么是Servlet Servlet是是sun公司提供一套规范(接口),是JavaWeb的三大组件之一(Servlet.Filter.Listener),它属于动态资源 ...

  5. 51nod - 1163 巧妙的并查集 O(1)维护区间

    有N个任务,每个任务有一个最晚结束时间以及一个对应的奖励.在结束时间之前完成该任务,就可以获得对应的奖励.完成每一个任务所需的时间都是1个单位时间.有时候完成所有任务是不可能的,因为时间上可能会有冲突 ...

  6. CSS2.1

    学而时习之,不亦说乎!                              --<论语> CSS:cascading style sheet(层叠样式表) 作用:描述页面的样式. 书 ...

  7. nginx 地址重写

    例如, www.baidu.com    跳到   www.baidu.com/index.html #if ( $http_host ~* "^(.*)\.baidu\.com$" ...

  8. CSS 单行 多行文本溢出显示省略号

    单行文本 overflow: hidden; text-overflow:ellipsis; white-space: nowrap; 多行文本溢出显示省略号: <style type=&quo ...

  9. PIE SDK频率域滤波

    1.算法功能简介 频率域滤波的基本工作流程为:空间域图像的傅里叶变换→频率域图像→设计滤波器→傅里叶逆变换→其他应用. 低通滤波,对频率域的图像通过滤波器削弱或抑制高频部分而保留低频部分的滤波方法,可 ...

  10. android点击桌面App图标activity启动流程

    1.点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求:2.system_server进程接收到请求后,向zygote进 ...