TouchGFX enables internationalized and localized applications.
TouchGFX does this by supporting a wide range of languages and characters and by understanding text layout mechanisms, such as writing direction and contextual shaping.
Languages
The languages supported are the languages of the Unicode basic multilingual plane with the restriction that only left-to-right or right-to-left writing systems are supported. This implies that languages such as Arabic, Chinese, English and many more are fully supported.
Characters
The encoding of characters is based on the Unicode standard and the basic multilingual plane of Unicode. In simplified form this means that characters with a 16-bit Unicode (i.e. from 0x0000 to 0xFFFF) are supported.
Writing direction
TouchGFX supports left-to-right and right-to-left writing systems. There is no builtin support for top-to-bottom writing systems.
The handling of left-to-right and right-to-left writing inside TouchGFX applications respects mixing of the two. This is known as bidirectional script support.
Contextual shaping
Certain scripts will select a different form of one or more characters/glyphs depending on the context of the character. As an example the Arabic alphabet has different contextual forms for the letters in the alphabet, depending on the position of the letter inside the word. TouchGFX supports such contextual shaping of languages.
List of Supported Languages
The following languages are supported:
Left-to-right languages
- Simple left-to-right languages using latin characters such as
- Bosnian, Bulgarian, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, German, Hungarian, Italian, Latvian, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Serbian, Slovenian, Slovak, Spanish, Swedish, Turkish, Ukrainian.
- Simple left-to-right languages using special character sets such as:
- Chinese, Greek, Japanese, Russian.
- Other
- Thai has limited support. Characters with both vowel (mai han-akat ั, sara i ิ, sara ii ี, sara ue ึ, sara uee ื or mai tai khu ็) and tone (mai ek ่, mai tho ้, mai tri ๊, mai chattawa ๋, thanthakhat ์, nikkhahit ํ or yamakkan ๎) above are not currently supported.
Right-to-left languages:
- Simple right-to-left languages using special character sets such as:
- Hebrew, Indonesian, Khazakh,
- Right-to-left languages with different ligatures for different forms (isolated, initial, middle, final):
- Arabic (Sequences of more than three characters are not recognised and converted to one ligature. These are: Akbar, Mohammad, Salam, Rasoul, Alayhe, Wasallam, Sallallahou Alayhe Wasallam, Jallajalalouhou and Rial Sign)
- Farsi
- Malay (ݢ "Keheh with dot above" only supported in isolated form)
Unsupported Languages
The following languages are known to be unsupported because they rely on extensive use of ligatures and digraphs:
- Hindi
- Thai has limited support. Characters with both vowel (mai han-akat ั, sara i ิ, sara ii ี, sara ue ึ, sara uee ื or mai tai khu ็) and tone (mai ek ่, mai tho ้, mai tri ๊, mai chattawa ๋, thanthakhat ์, nikkhahit ํ or yamakkan ๎) above are not currently supported.