SelectionUTF16ToUnit
Űrlapok, interakció, Unicode
Leírás
Az aktív szerkesztési értéken belüli, nullától induló UTF-16 pozíciót alakít át teljes kijelölési egységek darabszámává
fsuUTF16CodeUnit
fsuUnicodeCodePoint esetén az index a korlátozást követően változatlanul kerül visszaadásra
fsuGraphemeCluster vagy
Határtáblák gyorsítótárazódnak az aktuális szerkesztési értékhez, és eldobódnak, akár csak megváltozik az érték
Deklaráció
function SelectionUTF16ToUnit(Index: Integer;
IndexUnit: TPDFlibFormSelectionUnit): Integer;
Paraméterek
| Index | Nullától induló UTF-16 pozíció, a 0 és az aktuális értékhossz közé korlátozva |
|---|---|
| IndexUnit | Az a kijelölési egység, amelyben az eredmény számolásra kerül |
Visszatérési érték
Visszaadja az UTF-16 pozíciót megelőző teljes kódpontok vagy gráfémafürtök számát, fsuUTF16CodeUnit esetén pedig magát a korlátozott indexet
Példa
// A surrogate pair counts as one code point unit
Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
CaretUnits := Session.SelectionUTF16ToUnit(3, fsuUnicodeCodePoint);
// CaretUnits = 2
Lásd még
SelectionUnitToUTF16, GetSelectionRange, SetSelectionRange, TPDFlibFormSelectionUnit, TPDFlibFormSession