R – Changing order of font managers when compiling via ANT task, not possible

actionscript-3antapache-flexflex3

I've recently had the need to use the managers compiler argument, because the project had an Open Type font embedded, and was generating errors at compilation. Now I need to use the same argument in my ant task, but for some reason it doesn't work. I'm using Flex SDK 3.2.

The task looks something like:

<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>

I've tried different variations, from using manager as a child element of mxmlc, to using it as an attribute, and combining it with prefixes (fonts, compiler.fonts). I've also tried to use it as sub-element of the element fonts, but nothing worked.

I've considered using a shell task instead, but I'd rather not.

I've looked for help related to this on adobe labs, they say they support all compiler arguments except "help" and "version". And it also seems, no one else encountered this issue.

For now I've changed flex-config.xml in the frameworks directory of the sdk, and it seems to do the trick, but I'm thinking there's got to be a way to do this in the task.

Does anyone know the exact elements I need to add to the task to make it work, without having to modify "flex-config.xml"?

Best Answer

I believe it's

   <target...>
     <mxmlc...>
         <fonts>
            <manager class="flash.fonts.AFEFontManager"/>
         </fonts>

It's annoying that the documentation stops short of letting you actually figure out how to use the elements... an example or two would make a world of difference over at Adobe.

Related Topic