Highlighted

AIR not drawing in the correct font (font dependent) on IOS

Participant ,
Dec 15, 2015

Copy link to clipboard

Copied

I enumerate all the fonts on the device at the beginning of my program. I see there are some nice fonts on IOS, like Academy Engraved LET, Bodoni 72 Oldstyle.

If i use that font in my textfield control textformat, i only get the _sans default font; for some reason various fonts are not actually reachable in the AIR system. When you enumerate the font family names, all the styles returned are "regular", but when you ask for a font, you won't get the font you want; it is very font dependent. Verdana, for example is reachable. But Avenir Next Condensed, is not reachable.

Looks like AIR has a botched font mapping system, and that only a fraction of the device fonts are reachable. Or maybe there is some undocumented trick. I have searched for hours on the web in vain for a solution to accessing the "demibold" fonts on the device that are just sitting there, and are wonderful. Why didn't adobe just map the fonts 1:1 like they do in OSX, and then be clever about finding the correct true font when you ask for "BOLD". These are all true type fonts at the end of the day, and Adobe knows how to render a truetype font (heck they even licensed the awesome Saffron renderer from Mitsubishi which probably costs them a bundle!), so how can an omission of this magnitude still exist in version 20 of the AIR runtime!!

Adobe is such a master of typography, it is inconceivable to me that i cannot reach all the device fonts sitting there on my customer's iPod's, etc.

TOPICS
Performance issues

Views

226

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

AIR not drawing in the correct font (font dependent) on IOS

Participant ,
Dec 15, 2015

Copy link to clipboard

Copied

I enumerate all the fonts on the device at the beginning of my program. I see there are some nice fonts on IOS, like Academy Engraved LET, Bodoni 72 Oldstyle.

If i use that font in my textfield control textformat, i only get the _sans default font; for some reason various fonts are not actually reachable in the AIR system. When you enumerate the font family names, all the styles returned are "regular", but when you ask for a font, you won't get the font you want; it is very font dependent. Verdana, for example is reachable. But Avenir Next Condensed, is not reachable.

Looks like AIR has a botched font mapping system, and that only a fraction of the device fonts are reachable. Or maybe there is some undocumented trick. I have searched for hours on the web in vain for a solution to accessing the "demibold" fonts on the device that are just sitting there, and are wonderful. Why didn't adobe just map the fonts 1:1 like they do in OSX, and then be clever about finding the correct true font when you ask for "BOLD". These are all true type fonts at the end of the day, and Adobe knows how to render a truetype font (heck they even licensed the awesome Saffron renderer from Mitsubishi which probably costs them a bundle!), so how can an omission of this magnitude still exist in version 20 of the AIR runtime!!

Adobe is such a master of typography, it is inconceivable to me that i cannot reach all the device fonts sitting there on my customer's iPod's, etc.

TOPICS
Performance issues

Views

227

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Dec 15, 2015 0
Participant ,
Dec 18, 2015

Copy link to clipboard

Copied

I have done further testing, and determined that both TextField, and flash.text.engine will not render certain IOS fonts, such as Academy Engraved LET, Avenir, Avenir Next, Bodoni 72, Bodoni 72 oldstyle, Bradley Hand, Chalkboard SE.

but will render Copperplate, Cochin, Chalkduster, Bodoni ornaments, Baskerville, Arial Rounded, American typewriter.

clearly somebody goofed up big time on the Font renderer.

As for Android, i have determined that TextField() only does the 3 generic fonts. period. But flash.text.engine will render Roboto, Roboto Condensed, and the other fonts too.

So the moral of the story is to use flash text engine so at least on Android you have a few fonts.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Dec 18, 2015 0