1

现在,我有几个字体:HoboStd20.fnt 指向 HoboStd20.png 和 Teen40.fnt 指向 Teen40.png
但是,我需要视网膜显示字体。如何将这些位图字体插入应用程序?我是否需要创建两倍于原始字体大小的字体?我应该如何命名字体?我是否像这样重命名 png 和 fnt 文件:HoboStd20-hd.fnt?谢谢!

4

2 回答 2

4

基本例程是以标清或高清分辨率设计位图字体。然后以两倍或一半的字体大小重新导出相同的字体。

例如,当我使用 Glyph Designer(强烈推荐)设计字体时,我首先创建 Retina 字体并将其保存为 font-hd.fnt。假设它的字体大小为 40 磅。接下来我将字体大小设置为 20,并将文件重新导出为 font.fnt。

在 cocos2d 中,您只引用 font.fnt 文件。它将自动在 Retina 设备上加载 font-hd.fnt 文件。

于 2012-05-30T21:30:45.280 回答
0

听起来您正在使用Angelcode 的 BMFont来生成字体(是吗?)。

您是对这些字体使用经过 alpha 测试的边缘还是使用基于距离场的渲染方案?

这篇名为“矢量纹理和特殊效果的 Alpha 测试放大率”的论文可能会帮助您获得可接受的质量,而不必将字体/纹理的大小加倍。

也就是说,如果您使用 BMFont(并且可以编写着色器来解压缩像素数据) - 也可以使用每页一位或每页一个通道来打包多个页面。这个 + alpha 测试 + 距离字段应该为您提供像素完美的文本质量。

于 2012-05-30T18:26:02.033 回答