SelectionUnitToUTF16

Űrlapok, interakció, Unicode

Leírás

A kijelölési egységek darabszámát alakítja át a megfelelő határ nullától induló UTF-16 indexévé az aktív szerkesztési értéken belül

fsuUTF16CodeUnit

fsuUnicodeCodePoint esetén a darabszám az értékhosszra korlátozást követően változatlanul kerül visszaadásra fsuGraphemeCluster vagy

A nulla vagy kisebb darabszám mindig nulladik indexre konvertálódik

Deklaráció

function SelectionUnitToUTF16(Index: Integer;
  IndexUnit: TPDFlibFormSelectionUnit): Integer;

Paraméterek

IndexAz érték elejétől átugrandó teljes kijelölési egységek száma, az utolsó elérhető határra korlátozva
IndexUnitAz a kijelölési egység, amelyben a darabszám kifejezésre kerül

Visszatérési érték

Visszaadja a kért határ UTF-16 indexét, az érték hosszát, ha a darabszám meghaladja az elérhető határokat, illetve nullát a nulla vagy kisebb darabszámokra

Példa

// Unit 2 starts after the surrogate pair, at UTF-16 index 3
Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
CaretUTF16 := Session.SelectionUnitToUTF16(2, fsuUnicodeCodePoint);
// CaretUTF16 = 3

Lásd még

SelectionUTF16ToUnit, SetSelectionRange, GetVisualCaretOrder, TPDFlibFormSelectionUnit, TPDFlibFormSession