Bidirectional processing

Presentational forms

The presentational form selected when rendering specific RTL characters may be influenced by the position of the character within a word. The rendering of presentational forms for the following code points is supported:

Code Name
U+0621 ARABIC LETTER HAMZA
U+0622 ARABIC LETTER ALEF WITH MADDA ABOVE
U+0623 ARABIC LETTER ALEF WITH HAMZA ABOVE
U+0624 ARABIC LETTER WAW WITH HAMZA ABOVE
U+0625 ARABIC LETTER ALEF WITH HAMZA BELOW
U+0626 ARABIC LETTER YEH WITH HAMZA ABOVE
U+0627 ARABIC LETTER ALEF
U+0628 ARABIC LETTER BEH
U+0629 ARABIC LETTER TEH MARBUTA
U+062A ARABIC LETTER TEH
U+062B ARABIC LETTER THEH
U+062C ARABIC LETTER JEEM
U+062D ARABIC LETTER HAH
U+062E ARABIC LETTER KHAH
U+062F ARABIC LETTER DAL
U+0630 ARABIC LETTER THAL
U+0631 ARABIC LETTER REH
U+0632 ARABIC LETTER ZAIN
U+0633 ARABIC LETTER SEEN
U+0634 ARABIC LETTER SHEEN
U+0635 ARABIC LETTER SAD
U+0636 ARABIC LETTER DAD
U+0637 ARABIC LETTER TAH
U+0638 ARABIC LETTER ZAH
U+0639 ARABIC LETTER AIN
U+063A ARABIC LETTER GHAIN
U+0641 ARABIC LETTER FEH
U+0642 ARABIC LETTER QAF
U+0643 ARABIC LETTER KAF
U+0644 ARABIC LETTER LAM
U+0645 ARABIC LETTER MEEM
U+0646 ARABIC LETTER NOON
U+0647 ARABIC LETTER HEH
U+0648 ARABIC LETTER WAW
U+0649 ARABIC LETTER ALEF MAKSURA
U+064A ARABIC LETTER YEH
U+067E ARABIC LETTER PEH
U+0686 ARABIC LETTER TCHEH
U+0698 ARABIC LETTER JEH
U+06A9 ARABIC LETTER KEHEH
U+06AD ARABIC LETTER NG
U+06AF ARABIC LETTER GAF
U+06BE ARABIC LETTER HEH DOACHASHMEE
U+06C1 ARABIC LETTER HEH GOAL
U+06CC ARABIC LETTER FARSI YEH
U+06D0 ARABIC LETTER E
U+06D2 ARABIC LETTER YEH BARREE

Diacritics

All diacritic marks declared using combining characters are horizontally centred and positioned vertically above or below the adjacent base character. Font specific anchors are not used when positioning diacritics.

Diacritics are processed in the order in which they are declared within the source content. Canonical ordering of combining character sequences is not applied.

Ligatures

Ligatures for the following Unicode sequences are rendered automatically using the associated presentational form:

Arabic
Sequence Form Ligature
U+0644, U+0622 U+FEF5 ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE
U+0644, U+0623 U+FEF7 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE
U+0644, U+0625 U+FEF9 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW
U+0644, U+0627 U+FEFB ARABIC LIGATURE LAM WITH ALEF
U+0644,U+0627,U+0653 U+FEF5 ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE
U+0644,U+0627,U+0654 U+FEF7 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE
U+0644,U+0627,U+0655 U+FEF9 ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW
Hebrew
Sequence Form Ligature
U+05D9,U+05B4 U+FB1D HEBREW LETTER YOD WITH HIRIQ
U+05F2,U+05B7 U+FB1F HEBREW LIGATURE YIDDISH YOD YOD PATAH
U+05E9,U+05C1 U+FB2A HEBREW LETTER SHIN WITH SHIN DOT
U+05E9,U+05C2 U+FB2B HEBREW LETTER SHIN WITH SIN DOT
U+05E9,U+05BC,U+05C1 U+FB2C HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT
U+05E9,U+05BC,U+05C2 U+FB2D HEBREW LETTER SHIN WITH DAGESH AND SIN DOT
U+05D0,U+05B7 U+FB2E HEBREW LETTER ALEF WITH PATAH
U+05D0,U+05B8 U+FB2F HEBREW LETTER ALEF WITH QAMATS
U+05D0,U+05BC U+FB30 HEBREW LETTER ALEF WITH MAPIQ
U+05D1,U+05BC U+FB31 HEBREW LETTER BET WITH DAGESH
U+05D2,U+05BC U+FB32 HEBREW LETTER GIMEL WITH DAGESH
U+05D3,U+05BC U+FB33 HEBREW LETTER DALET WITH DAGESH
U+05D4,U+05BC U+FB34 HEBREW LETTER HE WITH MAPIQ
U+05D5,U+05BC U+FB35 HEBREW LETTER VAV WITH DAGESH
U+05D6,U+05BC U+FB36 HEBREW LETTER ZAYIN WITH DAGESH
U+05D8,U+05BC U+FB38 HEBREW LETTER TET WITH DAGESH
U+05D9,U+05BC U+FB39 HEBREW LETTER YOD WITH DAGESH
U+05DA,U+05BC U+FB3A HEBREW LETTER FINAL KAF WITH DAGESH
U+05DB,U+05BC U+FB3B HEBREW LETTER KAF WITH DAGESH
U+05DC,U+05BC U+FB3C HEBREW LETTER LAMED WITH DAGESH
U+05DE,U+05BC U+FB3E HEBREW LETTER MEM WITH DAGESH
U+05E0,U+05BC U+FB40 HEBREW LETTER NUN WITH DAGESH
U+05E1,U+05BC U+FB41 HEBREW LETTER SAMEKH WITH DAGESH
U+05E3,U+05BC U+FB43 HEBREW LETTER FINAL PE WITH DAGESH
U+05E4,U+05BC U+FB44 HEBREW LETTER PE WITH DAGESH
U+05E6,U+05BC U+FB46 HEBREW LETTER TSADI WITH DAGESH
U+05E7,U+05BC U+FB47 HEBREW LETTER QOF WITH DAGESH
U+05E8,U+05BC U+FB48 HEBREW LETTER RESH WITH DAGESH
U+05E9,U+05BC U+FB49 HEBREW LETTER SHIN WITH DAGESH
U+05EA,U+05BC U+FB4A HEBREW LETTER TAV WITH DAGESH
U+05D5,U+05B9 U+FB4B HEBREW LETTER VAV WITH HOLAM
U+05D1,U+05BF U+FB4C HEBREW LETTER BET WITH RAFE
U+05DB,U+05BF U+FB4D HEBREW LETTER KAF WITH RAFE
U+05E4,U+05BF U+FB4E HEBREW LETTER PE WITH RAFE
U+05D0,U+05DC U+FB4F HEBREW LIGATURE ALEF LAMED
U+064C, U+0651 U+FC5E ARABIC LIGATURE SHADDA WITH DAMMATAN
U+064D, U+0651 U+FC5F ARABIC LIGATURE SHADDA WITH KASRATAN
U+0651, U+064E U+FC60 ARABIC LIGATURE SHADDA WITH FATHA
U+064F, U+0651 U+FC61 ARABIC LIGATURE SHADDA WITH DAMMA
U+0650, U+0651 U+FC62 ARABIC LIGATURE SHADDA WITH KASRA
U+0651, U+0670 U+FC63 ARABIC LIGATURE SHADDA WITH SUPERSCRIPT ALEF

TopLeaf will report a run-time error if you reference a presentational form that is not defined within the currently selected font or typeface selection scheme.

Paragraph alignment

The alignment of bidirectional content within paragraphs is determined by the paragraph alignment. Automatic stretching or compression of characters in order to justify bidirectional content is not supported.