EnsureSelectionBoundaries

Formuláře, interakce, unicode

Popis

Interní helper TPDFlibFormSession, který postaví a uloží tabulky hranic Unicode pro aktuální editovanou hodnotu

Pro fsuUnicodeCodePoint skenuje hodnotu UTF-16 a zaznamenává jednu hranici na kódový bod, přičemž platný náhradní pár považuje za jeden doplňkový kódový bod a nespárovaný náhradník za jeden samostatný kódový bod

Pro fsuGraphemeCluster staví hranice rozšířených klastrů grafémů, takže kombinované sekvence a spojené emoji zůstávají nedělitelné

Každá tabulka začíná hranicí v nule a uchovává ofsety UTF-16 od nuly a neprázdná uložená tabulka se znovu používá, dokud ji InvalidateSelectionBoundaries nevymaže

Tabulky podpírají každou konverzi indexu mezi kódovými jednotkami UTF-16, kódovými body Unicode a klastery grafémů

Deklarace

procedure EnsureSelectionBoundaries(
  IndexUnit: TPDFlibFormSelectionUnit);

Parametry

IndexUnitPožadovaná tabulka hranic, fsuUnicodeCodePoint nebo fsuGraphemeCluster

Příklad

Session.SetSelectionRange(1, 2, fsuUnicodeCodePoint);
Session.GetSelectionRange(fsuUTF16CodeUnit, Sel);

Viz také

InvalidateSelectionBoundaries, EnsureVisualCaretOrder, ClampTextLength, SetSelectionRange, GetSelectionRange, TPDFlibFormSelectionUnit, TPDFlibFormSession