使用Glyph Designer创建位图字体

 使用Glyph Designer创建位图字体

转http://book.2cto.com/201210/6610.html

《iOS 5 cocos2d游戏开发实战(第2版)》将引导您开发富有吸引力的2D游戏。书中展示了如何使用cocos2d这款强大的游戏引擎来开发iPhone和iPad游戏,此外还介绍了游戏中的瓦片地图、虚拟摇杆、Game Center等。本书...  立即去当当网订购


本书第1版问世后,www.71squared.com发布了一款可以替代Hiero的工具:GlyphDesigner。虽然该工具是收费的,不过物有所值。

在http://glyphdesigner.71squared.com可以下载Glyph  Designer的试用版本。如果你已经很熟悉Hiero,会发现两者的功能十分相似,但是Glyph Designer的用户界面要简单得多,而且有很多值得探索的地方。Mike  Daley在某一集的cocos2d  Podcast(可在http://cocos2dpodcast.wordpress.com找到)中提到,Glyph  Designer还会加入一个新功能,允许与该工具的其他用户共享字体设计。

图4-7所示为Glyph Designer。创建位图字体的过程相对轻松,试着调节Glyph Designer中各种旋钮、按钮和颜色没有坏处。下面将指出可以编辑的区域。

在图的左侧可以看到一个TrueType字体列表,如果不够用,可以使用Load Font图标加载任意TTF文件。在列表下方,可以使用滑动条改变字体大小,并应用粗体、斜体和其他字体样式。

提示:

创建支持Retina屏幕的位图字体很简单。正常创建字体并导出,这将是非Retina屏幕字体或SD字体。然后,在Glyph  Designer中将字体大小增加1倍。例如,将滑块从字号30移动到字号60。然后,使用相同的文件名,但是加上hd后缀,重新导出字体。现在就同时有了普通/SD 和Retina屏幕/HD大小的字体。

如果在具有Retina屏幕的设备上运行游戏,并且启用了对Retina屏幕的支持,cocos2d将自动识别并使用带有hd后缀的字体。

在屏幕中央,可以看到:得到的纹理图册用于当前字体设置。可以注意到,在修改字体设置时,纹理图册的大小和笔画的顺序会频繁地变化。可以选择一个笔画,在右侧窗格中Glyph Info的下方查看其信息。

在右侧窗格更下方的位置,可以修改纹理图册的设置,不过在大多数情况下没有必要修改。Glyph Designer确保了纹理图册总是足够大到能够在单个纹理中包含所有的笔画。

Glyph Fill提供的设置可以修改笔画的颜色和填充方式,包括渐变设置。还有两个选项:Glyph Outline和Glyph Shadow。使用Glyph Outline可以修改每个笔画旁边的黑色细线,使用Glyph Shadow可以为字体创建3D外观。

右侧窗格的最底部是Included Glyphs部分。在该部分,可以选择在纹理图册中包含哪些预定义的笔画。如果十分确定不需要某些字符,那么也可以输入自己的字符列表来减小纹理的尺寸。例如,在得分字符串中,只需要数字和很少的一些字符,所以这么做特别有帮助。

对位图字体感到满意后,可以保存整个项目,以便能够还原原来的设置。为了以ocos2d可用的格式保存字体,需要通过File | Export以.fnt(cocos2d Text)格式保存它。然后可以在Xcode项目中添加使用Glyph Designer创建的FNT和PNG文件,并在CCLabelBMFont类中使用FNT文件。

警告:

如果试图使用CCLabelBMFont显示.fnt 文件中不可用的字符,这些字符将被跳过,不会显示出来。例如,如果使用语句[label setString:@"Hello, World!"],但是位图字体中只包含小写字母,不包括标点符号字符,那么显示的将是字符串"ello orld"。

时间: 2024-10-11 14:33:37

使用Glyph Designer创建位图字体的相关文章

详解利用ShoeBox制作位图字体

http://childhood.logdown.com/posts/190580/-details-using-shoebox-produce-bitmap-fonts?utm_source=tuicool 1 ShoeBox 简介 ShoeBox官网 ShoeBox是一个基于AdobeAIR实现的免费跨平台的工具.这个工具使用拖放.剪切板的工作流程方式,能够很方便的处理游戏图片.创建位图字体等. 支持引擎 2 功能概括介绍 ShoeBox虽小,五脏俱全.作者做这个工具足见是用了心,如果各位想

创建位图插入符

CWindow::CreateCaret//图形插入符 //CreateSolidCaret 插入符 BOOL CreateCaret( HBITMAP pBitmap ); int CXuexi2View::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CView::OnCreate(lpCreateStruct) == -1) return -1; //调用Windows处理函数对应的create // TODO: Add your specia

BCS--使用SharePoint Designer创建外部内容类型

使用SharePoint Designer创建外部列表(也可以在浏览器中创建列表) http://www.cnblogs.com/haogj/archive/2011/05/01/2033845.html 使用SharePoint Designer创建外部内容类型:解决bug:“NT AUTHORITY\ANONYMOUS LOGON”  "Acceed denied by Business Data Connectivity" http://www.codeproject.com/A

6个可以免费创建图标字体的国外网站

在网页中引入图标字体能很大程度上加快网站打开速度并更有灵活性,创建图标字体的过程是相当简单的.这里有一些免费图标字体网站允许您创建自己的图标字体. 您可以使用在你的UI设计,有些时候你可能想要生成您自己的自定义图标字体. 1.Fontello Fontello提供了一个简单的平台你可以使用它来生成自己的图标字体.创建图标字体,只需从你的电脑拖放SVG文件,到“Custom icons(自定义图标)”下的区域.您还可以从免费图标集Fontello里面选择他们. 2.IcoMoon IcoMoon应

NGUI-制作位图字体以及图文混排

制作字体过程 首先得下载一个位图制作工具Bitmap font generator,可以点击这里下载 1.新建txt文件,输入字体里面包含的文字 2.保存为utf-8格式:点击文件另存为,选择编码格式为UTF-8 3.打开下载的bitmap font软件,选择options->font settings,设置字体等选项 4.选择Edit->select chars from file,然后选择我们刚刚建好的文件 5.选择options->save bitmapfont as .然后就会生

Egret之位图字体

1 , 关于位图字体的制作 2 , egret官方提供的资源 看看cartoon-font.fnt的内容 {"file":"cartoon-font.png","frames":{ "A":{"x":1,"y":54,"w":21,"h":24,"offX":2,"offY":11,"sourceW

【独立开发者er Cocos2d-x实战 008】BMFont生成位图字体工具和Cocos2dx使用加载fnt文件

1.首先我们需要下载并且安装BMFont工具,下载地址如下:http://download.csdn.net/detail/chenqiai0/8899353(里面还有详细的使用文档,如果使用中有什么不明白请留言). 2.安装后,打开BMFont,界面如下,右边的列表是字体库 3.创建一个txt文件,然后输入你用到的文字(注意:保存的时候要用utf-8,否则软件无法识别) 4.接下来的操作请大家下载上述资源,然后按照pdf中讲解的步骤操作,肯定可以实现fnt文件的导出. 注意:需要我们注意的是在

NGUI使用4——创建动态字体

1 在开始在菜单中直接搜字体,拷贝几个字体至unity(ttf格式)2 创建一个空的游戏体:GameObject --> Crete Empty,为了方便管理,把这游戏体重命名为Font_xirod .3 在 Inspector 面板中,为这个空游戏体添加 NGUI Font 这个脚本组件.(查找 font)4 设置字体组件: Font type 设置为 Dynamic TTF Font 设置为 xirod5 在Hierarchy中把 Font_xirod 拖拽到 project 下,做成 pr

XMG Quartz2D 水印效果。非layer里面手动创建位图上下文,不是layer中drawRect系统自动创建上下文

1. // 1.获取上下文(位图上下文) 这个方法上下文都可以获取.不只是layer上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); 2. 在viewController中 我们需要手动的创建上下文对象.因为系统不会自动为我们生成上下文 0.获取上下文,之前的上下文都是在view的drawRect方法中获取(跟View相关联的上下文layer上下文) // 目前我们需要绘制图片到新的图片上,因此需要用到位图上下文 / 怎么获取位图上下文,