ApplyKhmerReorder

Firma

function ApplyKhmerReorder(const Wide: UnicodeString): UnicodeString;

Scopo

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

Copertura

  • Khmer usa il record script khmr per U+1780-U+17FF. Il percorso documentato copre independent South-East Asian syllable processing e conserva il comportamento API per lo shaping lato producer
  • ApplyIndicReorder dispatches to this helper when the active codepoint range matches U+1780-U+17FF

Esempio

var
  Wide: UnicodeString;
begin
  // Input: KA (U+1780) + E-vowel (U+17C1, pre-base)
  Wide:= Doc.ApplyKhmerReorder(#$1780#$17C1);
  // Wide is now: E (U+17C1) + KA (U+1780)

  // Input: KA + COENG + KHA + AA-vowel (stacked consonant + post vowel)
  Wide:= Doc.ApplyKhmerReorder(#$1780#$17D2#$1781#$17B6);
  // Wide unchanged: KA + COENG + KHA + AA
  //   (COENG cluster stays in BaseBuf in original order; AA in PostBuf)
end;

Vedere anche

Standard

  • Unicode 16.0 U+1780-U+17FF
  • ISO 32000-1 ยง9.10
  • OpenType Khmer shaping specification

Cronologia versioni

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