SelectionUTF16ToUnit
النماذج، التفاعل، Unicode
الوصف
تحوّل موضعًا بترميز UTF-16 ذات الأساس صفر داخل قيمة التحرير النشطة إلى عدد وحدات تحديد مكتملة مع
fsuUTF16CodeUnit
fsuUnicodeCodePoint يُرجع الفهرس دون تغيير بعد التقييد
مع fsuGraphemeCluster أو
تخزن جداول الحدود مؤقتًا لقيمة التحرير الحالية وتتخلى عنها كلما تغيرت تلك القيمة
التصريح
function SelectionUTF16ToUnit(Index: Integer;
IndexUnit: TPDFlibFormSelectionUnit): Integer;
المعاملات
| Index | موضع UTF-16 ذات الأساس صفر، مقيَّد إلى المدى من 0 إلى طول القيمة الحالي |
|---|---|
| IndexUnit | وحدة التحديد التي يُعَدّ فيها الناتج |
القيمة المُرجعة
تُرجع عدد نقاط الترميز أو عناقيد grapheme المكتملة التي تسبق موضع UTF-16، أو الفهرس المقيَّد نفسه من أجل fsuUTF16CodeUnit
مثال
// A surrogate pair counts as one code point unit
Session.SetEditValue('A' + WideChar($D83D) + WideChar($DE00) + 'B');
CaretUnits := Session.SelectionUTF16ToUnit(3, fsuUnicodeCodePoint);
// CaretUnits = 2
انظر أيضًا
SelectionUnitToUTF16, GetSelectionRange, SetSelectionRange, TPDFlibFormSelectionUnit, TPDFlibFormSession