SelectionUTF16ToUnit

ฟอร์ม, การโต้ตอบ, Unicode

คำอธิบาย

แปลงตำแหน่ง UTF-16 แบบนับจากศูนย์ภายในค่าการแก้ไขที่ทำงานอยู่ เป็นจำนวนหน่วยการเลือกที่สมบูรณ์ เมื่อใช้

fsuUTF16CodeUnit

fsuUnicodeCodePoint ดัชนีจะถูกคืนกลับมาโดยไม่เปลี่ยน หลังจำกัดช่วงแล้ว เมื่อใช้ fsuGraphemeCluster หรือ

การประกาศ

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

พารามิเตอร์

Indexตำแหน่ง UTF-16 แบบนับจากศูนย์ ถูกจำกัดในช่วง 0 ถึงความยาวค่าปัจจุบัน
IndexUnitหน่วยการเลือกที่ใช้นับผลลัพธ์

ค่าที่ส่งกลับ

คืนจำนวนรหัสพอยนต์หรือกลุ่มกราฟีมที่สมบูรณ์ซึ่งอยู่ก่อนตำแหน่ง 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