我最近需要使用managers编译器参数,因为项目嵌入了Open Type字体,并且在编译时产生错误。现在我需要在我的ant任务中使用相同的参数,但由于某种原因它不起作用。我正在使用Flex SDK 3.2。
任务看起来像:
<mxmlc
file="${main.class}"
output="${swf.export}"
actionscript-file-encoding="${ENCODING}"
keep-generated-actionscript="false"
incremental="false"
show-actionscript-warnings="false"
debug="true"
>
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml" />
<source-path path-element="${FLEX_HOME}/frameworks" />
<compiler.source-path path-element="${src.dir}" />
</mxmlc>
我尝试过不同的变体,从使用manager作为mxmlc的子元素,到将其用作属性,并将其与前缀(fonts,compiler.fonts)相结合。我也尝试将它用作元素字体的子元素,但没有任何效果。
我考虑过使用shell任务,但我宁愿不这样做。
我在adobe labs上寻找与此相关的帮助,他们说他们支持除“help”和“version”之外的所有编译器参数。而且似乎也没有其他人遇到过这个问题。
现在我已经在sdk的frameworks目录中更改了flex-config.xml,它似乎可以解决问题,但我认为必须有一种方法可以在任务中执行此操作。
有没有人知道我需要添加到任务中的确切元素才能使其工作,而无需修改“flex-config.xml”?
答案 0 :(得分:2)
我相信它是
<target...>
<mxmlc...>
<fonts>
<manager class="flash.fonts.AFEFontManager"/>
</fonts>
令人讨厌的是,文档没有让你真正弄清楚如何使用这些元素......一两个例子会让你在Adobe上有所不同。