Adobe AIR 中的 AFEFontManager。现在如何嵌入字体?
AFEFontManager in Adobe AIR. How to embed fonts now?
我一直在使用 FlashDevelop 和 Flex SDK 编译器构建我的游戏,但现在我需要 ASC 2.0 和 adobe air。所以我已经迁移到它。但是出现了一个问题,我就是找不到解决办法。我需要嵌入 TTF 字体,我过去总是为此添加额外的编译器选项 -managers=flash.fonts.AFEFontManager。在这个新的 AIR SDK 中,我得到的只是下一个警告:
command line
Warning: 'compiler.fonts.managers' is not fully supported.
当然不会嵌入字体。
有解决办法吗?
这是我如何嵌入它们的
[Embed(source = "VERDANA.TTF", fontName = "verdana")]
private static var Verdana: Class;
答案是 Adobe(出于某种未知原因)已从 ASC 2.0 中删除字体预转码,因此现在所有字体都必须预转码才能嵌入到代码中。最简单的方法是使用 Adobe Flash pro,嵌入字体并将其打包为 SWC。然后以某种方式将它附加到您的项目,并通过 Font.registerFont(Arial); 注册字体; (或您附加到它的其他 class )。答对了!现在你可以使用它了。
第二种更复杂但更便宜的方法是使用 adobe
的 fontswf 实用程序
可在此处找到详细信息http://www.bytearray.org/?p=4789 and here: http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7f5f.html(在页面底部)
我一直在使用 FlashDevelop 和 Flex SDK 编译器构建我的游戏,但现在我需要 ASC 2.0 和 adobe air。所以我已经迁移到它。但是出现了一个问题,我就是找不到解决办法。我需要嵌入 TTF 字体,我过去总是为此添加额外的编译器选项 -managers=flash.fonts.AFEFontManager。在这个新的 AIR SDK 中,我得到的只是下一个警告:
command line Warning: 'compiler.fonts.managers' is not fully supported.
当然不会嵌入字体。 有解决办法吗?
这是我如何嵌入它们的
[Embed(source = "VERDANA.TTF", fontName = "verdana")]
private static var Verdana: Class;
答案是 Adobe(出于某种未知原因)已从 ASC 2.0 中删除字体预转码,因此现在所有字体都必须预转码才能嵌入到代码中。最简单的方法是使用 Adobe Flash pro,嵌入字体并将其打包为 SWC。然后以某种方式将它附加到您的项目,并通过 Font.registerFont(Arial); 注册字体; (或您附加到它的其他 class )。答对了!现在你可以使用它了。 第二种更复杂但更便宜的方法是使用 adobe
的 fontswf 实用程序可在此处找到详细信息http://www.bytearray.org/?p=4789 and here: http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7f5f.html(在页面底部)