PeachDrawing.Text

PeachDrawing.Text.Unicode

ArabicJoiningForm Enum

The positional form a character of a joining script takes: the one that decides which glyph a font substitutes for it.

public enum ArabicJoiningForm : System.Byte

Fields

None 0

No form is asked for: the character does not join, or it is transparent to joining (a combining mark). The glyph the font maps it to is used as it is.

Isol 1

The isolated form (isol): the character joins nothing on either side.

Fina 2

The final form (fina): the character joins the one before it.

Fin2 3

The second final form (fin2), which only Syriac Alaph produces.

Fin3 4

The third final form (fin3), which only Syriac Alaph produces.

Medi 5

The medial form (medi): the character joins the ones on both sides.

Med2 6

The second medial form (med2), which only Syriac Alaph and Dalath Rish produce.

Init 7

The initial form (init): the character joins the one after it.

Remarks

Each form except None is named after the OpenType feature tag that asks a font for the glyph in that form. There are seven and not the four a reading of Arabic alone would suggest, because Syriac has alternate final and medial forms (Fin2, Fin3, Med2) that fonts define separately. Resolve(IReadOnlyList<int>) works the forms out for a text.