ApplySinhalaReorder

Signature

function ApplySinhalaReorder(const Wide: UnicodeString): UnicodeString;

Objectif

Applique le prétraitement de réordonnancement Sinhala à Wide et renvoie un UnicodeString prêt pour cmap et GSUB. Le texte hors Sinhala reste stable octet par octet, ce qui permet de traiter du texte mixte sans modifier les segments non concernés

Couverture

  • Sinhala utilise l’entrée de script sinh pour U+0D80-U+0DFF. Le chemin documenté couvre R1-R5 with Sinhala pre-base and split-matra handling tout en conservant le comportement API pour le façonnage côté producteur
  • ApplyIndicReorder dispatches to this helper when the active codepoint range matches U+0D80-U+0DFF

Exemple

var
  Wide: UnicodeString;
begin
  // Input: KA (U+0D9A) + O-matra (U+0DDC, 2-part split: pre + post)
  Wide:= Doc.ApplySinhalaReorder(#$0D9A#$0DDC);
  // Wide is now: E (U+0DD9, pre) + KA + AA (U+0DCF, post)
end;

Voir aussi

Normes

  • Unicode 16.0 U+0D80-U+0DFF
  • ISO 32000-1 §9.10
  • OpenType Sinhala shaping specification

Historique des versions

  • v2.119.77 - Introduit dans le lot de façonnage Indic de HotPDF