Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
Peter, you're definitely on to something!!! Yes by system fonts I meant device fonts, and it wasn't Arial, it's Comic Sans (ok, I admit it, shame on me for using it). I installed msttcorefonts on my linux machine so it's the same old TTF from Windows. If I comment out the Batik and the other manager and only leave this in my flex-config: !-- Compiler font manager classes, in policy resolution order-- managers manager-classflash.fonts.AFEFontManager/manager-class /managers my build fails! /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: exception during transcoding: No FontManager provided. Cannot build font. src:local(Comic Sans MS);/message - /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: unable to build font 'mySketchFont' src:local(Comic Sans MS);/message /home/svnadmin/mockups/trunk/MockupsLive/build.xml:46: Java returned: 8 at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) at org.apache.tools.ant.Project.executeTarget(Project.java:1306) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1189) at org.apache.tools.ant.Main.runBuild(Main.java:758) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) So it appears that my linux machine doesn't have the AFEFontManager, but how can it be? Is it a file I need to install? I've searched my local HD and didn't find anything. We're so close, I can feel it! :) Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 2:50 AM, Peter Farland pfarl...@adobe.com wrote: Peldi, by system font, do you mean device fonts (i.e. not embedded)? What version of Flex? Are you pointing to a .ttf file using an @font-face CSS rule with a url? If so, and if you're using Flex SDK 3, go into your /frameworks/flex-config.xml and comment out the BatikFontManager from the list of font managers, and try just leaving the AFEFontManager. Pete -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Peldi Guilizzoni, Balsamiq Studios Sent: Tuesday, March 17, 2009 5:34 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] OS-dependent mxmlc behavior for fonts? Thanks for the reply Rick. I am using 2 TTF files for the embedded fonts, and a system font (Arial) as well. I do not anticipate any change to my fonts, no. Why? I don't really like the SWF option...do you or anyone else know why I'm getting these differences? What part of mxmlc is platform-dependent? Can it be tweaked/fixed? Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq
Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
I forgot to mention, I'm using the 3.1.0 framework. --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 10:32 AM, Peldi Guilizzoni, Balsamiq Studios pe...@balsamiq.com wrote: Peter, you're definitely on to something!!! Yes by system fonts I meant device fonts, and it wasn't Arial, it's Comic Sans (ok, I admit it, shame on me for using it). I installed msttcorefonts on my linux machine so it's the same old TTF from Windows. If I comment out the Batik and the other manager and only leave this in my flex-config: !-- Compiler font manager classes, in policy resolution order-- managers manager-classflash.fonts.AFEFontManager/manager-class /managers my build fails! /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: exception during transcoding: No FontManager provided. Cannot build font. src: local(Comic Sans MS);/message - /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: unable to build font 'mySketchFont' src: local(Comic Sans MS);/message /home/svnadmin/mockups/trunk/MockupsLive/build.xml:46: Java returned: 8 at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) at org.apache.tools.ant.Project.executeTarget(Project.java:1306) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1189) at org.apache.tools.ant.Main.runBuild(Main.java:758) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) So it appears that my linux machine doesn't have the AFEFontManager, but how can it be? Is it a file I need to install? I've searched my local HD and didn't find anything. We're so close, I can feel it! :) Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 2:50 AM, Peter Farland pfarl...@adobe.com wrote: Peldi, by system font, do you mean device fonts (i.e. not embedded)? What version of Flex? Are you pointing to a .ttf file using an @font-face CSS rule with a url? If so, and if you're using Flex SDK 3, go into your /frameworks/flex-config.xml and comment out the BatikFontManager from the list of font managers, and try just leaving the AFEFontManager. Pete -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Peldi Guilizzoni, Balsamiq Studios Sent: Tuesday, March 17, 2009 5:34 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] OS-dependent mxmlc behavior for fonts? Thanks for the reply Rick. I am using 2 TTF files for the embedded fonts, and a system font (Arial) as well. I do not anticipate any change to my fonts, no. Why? I don't really like the SWF option...do you or anyone else know why I'm getting these differences? What part of mxmlc is platform-dependent? Can it be tweaked/fixed? Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq
RE: [flexcoders] OS-dependent mxmlc behavior for fonts?
Ah, 2 thing to mention here. 1. In your CSS, instead of using local() (this is only supported by the JREFontManager as it is the only FontManager implementation that has access to your native operating system font server. The reason I suggest not using JREFontManager is that there are issues with the JRE's reporting of font metrics that can lead to layout issues), try using url() and point to the .ttf file itself. Many developers keep fonts in an assets folder with their Flex source and do something like this: src: url(assets/SomeFontICanEmbed.ttf); 2. In order to use the AFEFontManager in /frameworks/flex-config.xml, check that you have the following jars in your Flex SDK's lib directory: /lib/afe.jar /lib/aglj32.jar /lib/rideau.jar If you do not see these files, you may have downloaded the MPL version of the Flex SDK 3.1 (in the column Open Source Flex SDK. If you can, try downloading the non-MPL version (in the column Adobe Flex SDK) to get the complete functionality of Flex SDK 3.1. http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3 If you must use the MPL version, continue to use the url() syntax in your src: property of your CSS @font-face, rules but rely on the BatikFontManager in /frameworks/flex-config.xml. Pete P.S. Note you can leave the JREFontManager configured in /frameworks/flex-config.xml - you'd just leave it as the base (first) entry so that it can still handle any local() syntax in src: properties of @font-face CSS rules. Any FontManager entry following it will override its behavior for at least url() referenced fonts. For MPL SDK, try: managers manager-classflash.fonts.JREFontManager/manager-class manager-classflash.fonts.BatikFontManager/manager-class /managers For non-MPL, i.e. the full SDK, try: managers manager-classflash.fonts.JREFontManager/manager-class manager-classflash.fonts.AFEFontManager/manager-class /managers -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Peldi Guilizzoni, Balsamiq Studios Sent: Wednesday, March 18, 2009 5:37 AM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] OS-dependent mxmlc behavior for fonts? I forgot to mention, I'm using the 3.1.0 framework. --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 10:32 AM, Peldi Guilizzoni, Balsamiq Studios pe...@balsamiq.com wrote: Peter, you're definitely on to something!!! Yes by system fonts I meant device fonts, and it wasn't Arial, it's Comic Sans (ok, I admit it, shame on me for using it). I installed msttcorefonts on my linux machine so it's the same old TTF from Windows. If I comment out the Batik and the other manager and only leave this in my flex-config: !-- Compiler font manager classes, in policy resolution order-- managers manager-classflash.fonts.AFEFontManager/manager-class /managers my build fails! /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: exception during transcoding: No FontManager provided. Cannot build font. src: local(Comic Sans MS);/message - /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: unable to build font 'mySketchFont' src: local(Comic Sans MS);/message /home/svnadmin/mockups/trunk/MockupsLive/build.xml:46: Java returned: 8 at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) at org.apache.tools.ant.Project.executeTarget(Project.java:1306) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1189) at org.apache.tools.ant.Main.runBuild(Main.java:758) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) So it appears that my linux machine doesn't have the AFEFontManager, but how can it be? Is it a file
Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
Peter, you are THE MAN! I would have never in a million years guessed the names of those jars...perhaps something in the docs would help? Well now at least there's this thread on flexcoders...hi people from the future reading this!... ;) The problem was that the jars you mentioned were there but only rw by root (don't ask me why, I have no idea). A chmod 644, coupled with removing the Batik manager, fixed the issue. I'll also make the url change in the future, but it wasn't necessary this time around. Thanks so much Peter, speedy replies like yours are more important to the platform's success than APIs, IMHO. :) Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 4:34 PM, Peter Farland pfarl...@adobe.com wrote: Ah, 2 thing to mention here. 1. In your CSS, instead of using local() (this is only supported by the JREFontManager as it is the only FontManager implementation that has access to your native operating system font server. The reason I suggest not using JREFontManager is that there are issues with the JRE's reporting of font metrics that can lead to layout issues), try using url() and point to the .ttf file itself. Many developers keep fonts in an assets folder with their Flex source and do something like this: src: url(assets/SomeFontICanEmbed.ttf); 2. In order to use the AFEFontManager in /frameworks/flex-config.xml, check that you have the following jars in your Flex SDK's lib directory: /lib/afe.jar /lib/aglj32.jar /lib/rideau.jar If you do not see these files, you may have downloaded the MPL version of the Flex SDK 3.1 (in the column Open Source Flex SDK. If you can, try downloading the non-MPL version (in the column Adobe Flex SDK) to get the complete functionality of Flex SDK 3.1. http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3 If you must use the MPL version, continue to use the url() syntax in your src: property of your CSS @font-face, rules but rely on the BatikFontManager in /frameworks/flex-config.xml. Pete P.S. Note you can leave the JREFontManager configured in /frameworks/flex-config.xml - you'd just leave it as the base (first) entry so that it can still handle any local() syntax in src: properties of @font-face CSS rules. Any FontManager entry following it will override its behavior for at least url() referenced fonts. For MPL SDK, try: managers manager-classflash.fonts.JREFontManager/manager-class manager-classflash.fonts.BatikFontManager/manager-class /managers For non-MPL, i.e. the full SDK, try: managers manager-classflash.fonts.JREFontManager/manager-class manager-classflash.fonts.AFEFontManager/manager-class /managers -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Peldi Guilizzoni, Balsamiq Studios Sent: Wednesday, March 18, 2009 5:37 AM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] OS-dependent mxmlc behavior for fonts? I forgot to mention, I'm using the 3.1.0 framework. --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Wed, Mar 18, 2009 at 10:32 AM, Peldi Guilizzoni, Balsamiq Studios pe...@balsamiq.com wrote: Peter, you're definitely on to something!!! Yes by system fonts I meant device fonts, and it wasn't Arial, it's Comic Sans (ok, I admit it, shame on me for using it). I installed msttcorefonts on my linux machine so it's the same old TTF from Windows. If I comment out the Batik and the other manager and only leave this in my flex-config: !-- Compiler font manager classes, in policy resolution order-- managers manager-classflash.fonts.AFEFontManager/manager-class /managers my build fails! /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: exception during transcoding: No FontManager provided. Cannot build font. src: local(Comic Sans MS);/message - /home/svnadmin/mockups/trunk/trunk/skins/sketch/sketch.css(19): Error: unable to build font 'mySketchFont' src: local(Comic Sans MS);/message /home/svnadmin/mockups/trunk/MockupsLive/build.xml:46: Java returned: 8 at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106
[flexcoders] OS-dependent mxmlc behavior for fonts?
Hi there, I just recently moved my build machine from a windows box to a linux box, and now my app's fonts (both embedded and not embedded) look different (thicker and overall crappier). My build is done via mxmlc in an ANT script. What can I do about it, short of moving the build machine again? Any mxmlc option I could use? I don't really even know what to Google... TIA, Peldi
Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
Did you move the fonts with you migration or are you relying on system fonts? Are you using TTF or OTF? Do you anticipate regular changes to your font(s)? As an alternative, you could compile your font .swf and then just include it as an asset in your app. Rick Winscot On 3/17/09 9:31 AM, pelducci pe...@peldi.com wrote: Hi there, I just recently moved my build machine from a windows box to a linux box, and now my app's fonts (both embedded and not embedded) look different (thicker and overall crappier). My build is done via mxmlc in an ANT script. What can I do about it, short of moving the build machine again? Any mxmlc option I could use? I don't really even know what to Google... TIA, Peldi
Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
Thanks for the reply Rick. I am using 2 TTF files for the embedded fonts, and a system font (Arial) as well. I do not anticipate any change to my fonts, no. Why? I don't really like the SWF option...do you or anyone else know why I'm getting these differences? What part of mxmlc is platform-dependent? Can it be tweaked/fixed? Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Tue, Mar 17, 2009 at 5:14 PM, Rick Winscot rick.wins...@zyche.com wrote: Did you move the fonts with you migration or are you relying on system fonts? Are you using TTF or OTF? Do you anticipate regular changes to your font(s)? As an alternative, you could compile your font .swf and then just include it as an asset in your app. Rick Winscot On 3/17/09 9:31 AM, pelducci pe...@peldi.com wrote: Hi there, I just recently moved my build machine from a windows box to a linux box, and now my app's fonts (both embedded and not embedded) look different (thicker and overall crappier). My build is done via mxmlc in an ANT script. What can I do about it, short of moving the build machine again? Any mxmlc option I could use? I don't really even know what to Google... TIA, Peldi
Re: [flexcoders] OS-dependent mxmlc behavior for fonts?
Do all of your fonts exhibit the same behavior? Trying to isolate an potential rogue elements... You might have figured this one out but Arial on Windows is probably not Arial on Linux. So, no matter what you do use... You need to make sure you are using the exact same .ttf font packages to generate your embedded fonts no matter what system/OS you are building on. If you don¹t anticipate changing your fonts... Then the recommendation about compiling once and including as a static asset in your project is a quick resolution to the problem. I can understand your hesitation though. R On 3/17/09 5:34 PM, Peldi Guilizzoni, Balsamiq Studios pe...@balsamiq.com wrote: Thanks for the reply Rick. I am using 2 TTF files for the embedded fonts, and a system font (Arial) as well. I do not anticipate any change to my fonts, no. Why? I don't really like the SWF option...do you or anyone else know why I'm getting these differences? What part of mxmlc is platform-dependent? Can it be tweaked/fixed? Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq On Tue, Mar 17, 2009 at 5:14 PM, Rick Winscot rick.wins...@zyche.com mailto:rick.winscot%40zyche.com wrote: Did you move the fonts with you migration or are you relying on system fonts? Are you using TTF or OTF? Do you anticipate regular changes to your font(s)? As an alternative, you could compile your font .swf and then just include it as an asset in your app. Rick Winscot On 3/17/09 9:31 AM, pelducci pe...@peldi.com mailto:peldi%40peldi.com wrote: Hi there, I just recently moved my build machine from a windows box to a linux box, and now my app's fonts (both embedded and not embedded) look different (thicker and overall crappier). My build is done via mxmlc in an ANT script. What can I do about it, short of moving the build machine again? Any mxmlc option I could use? I don't really even know what to Google... TIA, Peldi
RE: [flexcoders] OS-dependent mxmlc behavior for fonts?
Peldi, by system font, do you mean device fonts (i.e. not embedded)? What version of Flex? Are you pointing to a .ttf file using an @font-face CSS rule with a url? If so, and if you're using Flex SDK 3, go into your /frameworks/flex-config.xml and comment out the BatikFontManager from the list of font managers, and try just leaving the AFEFontManager. Pete -Original Message- From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of Peldi Guilizzoni, Balsamiq Studios Sent: Tuesday, March 17, 2009 5:34 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] OS-dependent mxmlc behavior for fonts? Thanks for the reply Rick. I am using 2 TTF files for the embedded fonts, and a system font (Arial) as well. I do not anticipate any change to my fonts, no. Why? I don't really like the SWF option...do you or anyone else know why I'm getting these differences? What part of mxmlc is platform-dependent? Can it be tweaked/fixed? Peldi --- Giacomo 'Peldi' Guilizzoni Founder, Balsamiq Studios, LLC http://www.balsamiq.com ph: +1 (415) 367-3531, Skype, GTalk, Facebook, Twitter, FriendFeed: balsamiq