ApplySinhalaReorder

Firma

function ApplySinhalaReorder(const Wide: UnicodeString): UnicodeString;

Scopo

Applica il pre-pass di riordino Sinhala a Wide e restituisce un UnicodeString pronto per cmap e GSUB. Il testo fuori da Sinhala resta stabile byte per byte, quindi i chiamanti possono gestire testo misto senza cambiare segmenti non correlati

Copertura

  • Sinhala usa il record script sinh per U+0D80-U+0DFF. Il percorso documentato copre R1-R5 with Sinhala pre-base and split-matra handling e conserva il comportamento API per lo shaping lato producer
  • ApplyIndicReorder dispatches to this helper when the active codepoint range matches U+0D80-U+0DFF

Esempio

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;

Vedere anche

Standard

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

Cronologia versioni

  • v2.119.77 - Introdotto come parte del batch di shaping Indic di HotPDF