The characters have different shapes, depending on their position in a string and on the surrounding characters. The written language is cursive. Most characters of a word are connected, as in English handwriting. Joined characters can form nonspacing characters. Additionally, a character can have a vowel or diacritic mark written over or under it.
Characters can vary in length, resulting in an output of two coded shapes.
Methods of Character Shaping Implement character shaping separately from other system components. However, character shaping should be accessible as a utility by other system components. The system stores these characters in their shaped format. This method avoids the need to use character shaping every time these characters are displayed. This method is meant for static data such as menus and help.