This type of merged glyph is called a ligature . The merged glyph takes into account the overhang on the letter f and combines the characters in a natural-looking way, instead of simply letting the letters collide. When ligatures are formed from Arabic characters, the shapes change even more radically than they do in English. In the Java programming language, text is encoded using Unicode character encoding. Text that uses Unicode character encoding is stored in memory in logical order .
Logical order is the order in which characters and words are read and written.
The logical order is not necessarily the same as the visual order , the order in which the corresponding glyphs are displayed. Some writing systems have rules in addition to script order for arranging glyphs and words on lines of text. For example, Arabic and Hebrew numbers run left to right, even though the letters run right to left. A writing system's visual order must be maintained even when languages are mixed together. In this and subsequent examples, Arabic and Hebrew text is represented by uppercase letters and spaces are represented by underscores.