kashidaJustify

val kashidaJustify: Boolean = false

Kashida (tatweel, U+0640) justification for cursive RTL scripts.

When true and the line's resolved direction is right-to-left, TextAlign.Justify absorbs part of each line's slack by elongating words at cursive joining points — inserting U+0640 between letters that join — instead of widening every inter-word gap alone. The remaining slack still goes to the gaps. Ignored for left-to-right text and when not justifying.

The insertion is a typographic approximation: a small joining table picks candidate positions and at most a couple of tatweels are added per gap; the platform shapers (PdfBox on JVM, native on Android/iOS) then render the tatweels into the cursive line. Disabled (false) by default.