I'm pretty sure by default, right-to-left text is not supported in mobile.
 The mobile themes use TextField for memory and performance reasons which
does not support right-to-left text.

Your test case is still not specifying a font.  The default font I believe
is Arial.  So what this test may just be showing is that the Arial font on
these devices doesn't support all characters.  I still think you should
find out what fonts are on these devices that do support Korean and
explicitly set that as the fontFamily.

There is a Font.hasGlyphs API you can use to see if the characters are
available or not for TextField-based controls.  Spark Label uses
flash.text.engine and there are APIs like
FontDescription.isDeviceFontCompatible.  You may have to temporarily embed
the font to get hasGlyphs to work.

-Alex

On 12/11/13 5:24 AM, "FlexForever" <[email protected]> wrote:

>I did some comprehensive testing on various Android Versions regarding
>Asian/Arabic Fonts.
>It seems that less and less fonts are displayed correctly towards the
>newer
>Android Versions. I made tests for spark label, textarea and button. You
>can
>see the results here:
>
><img src="http://i.imgur.com/VvwR8RP.png"; title="Android Font Test" />
><http://imgur.com/VvwR8RP>
>
>I marked with green and red, correct and wrong display of the text. The
>problem with Arabic is the text direction.
>
>Below is the code used. Compiled with Flex 4.11 and Air 3.9. I played
>around
>with a few other SDK versions but basically with same result.
>
>I think this needs urgent attention, especially as more and more updates
>for
>Android 4.3 and 4.4 will come out soon.
>
>I will post the same at the Adobe Air forums.
>
>
><?xml version="1.0" encoding="utf-8"?>
><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009";
>                          xmlns:s="library://ns.adobe.com/flex/spark" 
> applicationDPI="160"
>xmlns:local="*">
>       <s:VGroup width="100%" height="100%" paddingTop="20" paddingRight="20"
>paddingLeft="20">
>               <s:Scroller height="100%" width="100%">
>                       <s:VGroup width="100%" height="100%">
>                               <s:Label width="100%" text="KOREAN" />
>                               <s:TextArea  text="1 남자와 소년 남자와 소년"
>skinClass="spark.skins.mobile.TextAreaSkin" />
>                               <s:Label text="2 남자와 소년 남자와 소년" />
>                               <s:Button label="3 남자와 소년 남자와 소년" />
>                               
>                               <s:Label width="100%" text="JAPANESE" />
>                               <s:TextArea  text="1 がアップデート後、文字が"
>skinClass="spark.skins.mobile.TextAreaSkin" />
>                               <s:Label text="2 がアップデート後、文字が" />
>                               <s:Button label="3 がアップデート後、文字が" />
>                               
>                               <s:Label width="100%" text="CHINESE" />
>                               <s:TextArea  text="1 轉換為繁體字后會變成錯"
>skinClass="spark.skins.mobile.TextAreaSkin" />
>                               <s:Label text="2 轉換為繁體字后會變成錯" />
>                               <s:Button label="3 轉換為繁體字后會變成錯" />
>                               
>                               <s:Label width="100%" text="ARABIC" />
>                               <s:TextArea  text="مرأة" 
> skinClass="spark.skins.mobile.TextAreaSkin"
>/>
>                               <s:Label text="مرأة" />
>                               <s:Button label="مرأة" />
>                               
>                       </s:VGroup>
>               </s:Scroller>
>       </s:VGroup>
></s:Application>
>
>
>
>--
>View this message in context:
>http://apache-flex-users.2333346.n4.nabble.com/Korean-text-not-displayed-i
>n-spark-Label-tp4053p4169.html
>Sent from the Apache Flex Users mailing list archive at Nabble.com.

Reply via email to