Adobe AIR字体嵌入突然停止正常工作

时间:2010-12-07 11:32:38

标签: flex actionscript-3 air flash-builder

我现在完全被难过了。我正在开发一个AIR应用程序,一切都运行得很好,我对代码做了一些小改动(完全与字体,组件或任何类似的东西无关)突然,在测试期间,我充斥着数百个警告:不兼容的嵌入字体错误。我没有更改任何项目设置,没有进行任何框架更新,我尝试了Clean和重新构建Flash Builder。

现在,我正在开发一个使用模块和MX(只有Datagrid)和Spark组件的项目,所以我使用的是两个版本的字体:

@font-face {
  src:url("/assets/font/helvetica.otf");
  fontFamily: "Helvetica";
  embedAsCFF: true;
}
[...]
[Embed(source="../assets/font/helvetica_3.otf", fontFamily="Helvetica_2",
       embedAsCFF="false", mimeType="application/x-font")]
private var _font_:Class;

您可以猜到,Helvetica适用于Spark组件,而另一个适用于MX。两个奇怪的错误:

  • warning: incompatible embedded font 'Helvetica' specified for spark.components::Label (countdown) . This component requires that the embedded font be declared with embedAsCff=true 不是吗?

  • warning: incompatible embedded font 'Helvetica_2' specified for mx.controls.dataGridClasses::DataGridItemRenderer (DataGridItemRenderer501) . This component requires that the embedded font be declared with embedAsCff=false. 是不是已经过了?!

这些错误与我导入项目的 MODULES 有关(是的,我自己的)。主要航空应用中的文字或多或少都很好(不再显示变音字符)。我另外使用这些命令行参数:
-isolate-styles=false(所以皮肤和ANYTHING实际应用于模块,没有它没有错误,但模块没有样式)
-keep-all-type-selectors=true(无论如何,删除此功能无效)

任何人都有类似的问题,并设法找到原因?我试图撤消我做的最后一次更改,但没有用...

更新

好吧,奇怪的是我找到了问题的根源。在其中一个模块的组件中,我导入的类也是由主应用程序导入的,这导致了问题。有趣的是,它工作正常,直到我克隆组件来制作一个类似的组件,甚至没有导入到任何模块。 Flex再一次证明了这很奇怪。

0 个答案:

没有答案