Skip to main content
Participating Frequently
March 1, 2010
Question

Asian language (Thai) not displaying correctly

  • March 1, 2010
  • 2 replies
  • 24009 views

Hi,

I am using a the downloaded TextFlow Hello World example to display text (Flash CS4). Thai language characters show up as rectangles while Chinese (Simplified and Traditional) and Spanish show up correctly. Weird thing is that I also use a standard ComboBox component in my UI as language selector; and the word "ภาษาไทย" (Thai) showed up correctly in it. (So I am guessing that's because the ComboBox is using TextField instead of TLF).

I tried to set CharacterFormat.locale but it doesn't seem to have any effect.

Thanks.

This topic has been closed for replies.

2 replies

Participating Frequently
March 8, 2010

On Windows XP, the installation of some of the fonts is optional.

Control Panel -> Regional and language options, languages tab, "Install files for complex script and right-to-left languages (including Thai)" checkbox.

We do not use Arial Unicode MS in our fallbacks because this font is *not* provided with Windows; AFIAK, it is only provided with Office.

Adobe Employee
March 2, 2010

The boxes are what you get when the font does not have the correct glyphs for the characters. Do you know if the font you are using has those characters in it? Can you tell me what font it is? Is it an embedded font, or a device font? On Mac or Windows?

Thanks,

- robin

gengwangAuthor
Participating Frequently
March 5, 2010

Hi Robin,

As I have a better clue what was going on:

Flash Player can figure out how to display 3 EA languages (Chinese Simplified, Chinese Traditional and Thai) in the TextField and V2 components. TFL can display Chinese but not Thai. Context: I have Chinese fonts installed, not Thai; I have Arial Unicode MS installed on my PC but I didn't let the characterformat know that I wanted that font. They are all device fonts in this case as I was setting the characterformat as the followings:

characterFormat.fontFamily = "Arial";

characterFormat.fontLookup =   flash.text.engine.FontLookup.DEVICE;

Once I did this:

characterFormat.fontFamily = "Arial Unicode MS, Arial";

All 3 languages showed up correctly.

Sorry I should'v done more homework before I posted anything.:)

Many thanks.


Geng

March 5, 2010

So the remaining problem is that font fallback is not working in Windows XP. This looks to be the case on my machines - Windows Vista and 7 will display Thai characters if you do not specify a font, but XP will not.