2013-10-29 101 views
0

我试图嵌入使用FDT的字体。我注意到FDT不识别embedAsCFF =“false”参数。如何使用FDT嵌入字体(AIR SDK 3.9)embedAsCFF =“false”not recognized

(参见:http://bugs.powerflasher.com/jira/browse/FDT-1853?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aworklog-tabpanel

我在做这样的事情: -

[Embed(source="fonts/RobotoCondensed-Light.ttf", fontFamily="RobotoCondensedLight", embedAsCFF="false")] 
tf.embedFonts = true; 
tf.htmlText = '<font face="RobotoCondensedLight">Hello</font>'; 

没有embedAsCFF,似乎没有文字。但RobotoCondensedLight列在Font.enumerateFonts()

随着embedAsCFF - 我得到一个编译错误:转码过程中的异常,无法建立字体'RobotoCondensedLight',和无法转码字体/ RobotoCondensed-Light.ttf。

我假设问题是embedAsCFF参数 - 或者是别的吗?

人们如何在FDT中嵌入字体?

+0

请将您的代码放在代码标签内。 –

+0

尝试'tf.embedFonts'为false。在加载字体的情况下,它们嵌入在SWF中,因此不需要嵌入字体。 – Vesper

+1

@vesper - 这听起来不合适 - 但我仍然尝试过。如果没有embedFonts = true,它只会回退到默认字体 - 而不是嵌入字体。 –

回答

0

事实证明,解决方案是使用ASC 2.0编译器。虽然它不适用于旧的编译器(显然,它不能从命令行运行) - 但新编译器修复了这个问题。

0

«我注意到,FDT不承认embedAsCFF =‘假’的参数。»

嗯,我认为这是个问题。 从Flex 4开始,您需要将embedAsCFF设置为false以使嵌入字体正常工作。

如果FDT不允许你使用它,你可能想尝试一个不同的IDE。