EnsureVisualCaretOrder
Moduli, interazione, Unicode
Descrizione
Helper interno di TPDFlibFormSession che calcola l'ordine fisico di slot del caret in cache usato dal movimento visivo del caret
Una cache valida per il valore di modifica corrente e la direzione di testo risolta viene riusata; altrimenti l'ordine viene ricostruito dalla tabella dei confini di grafemi
Il valore viene diviso in righe alle interruzioni LF, CR e CRLF, e ogni riga viene risolta in segmenti bidirezionali sotto la direzione base risolta, con un fallback a segmento singolo quando la risoluzione dei segmenti fallisce
I livelli di incorporamento dei segmenti vengono limitati all'intervallo da 0 a 125 e l'ordine visivo dei segmenti segue i livelli risolti
Gli indici di confine di grafemi vengono aggiunti in ordine fisico da sinistra a destra attraverso i segmenti, in avanti per i segmenti da sinistra a destra e all'indietro per quelli da destra a sinistra, così un indice logico a un confine di direzione mista può occupare due slot distinti
Gli slot duplicati consecutivi vengono uniti, le posizioni di interruzione di riga diventano slot propri, un risultato vuoto ricade sullo slot singolo 0 e una ricostruzione resetta la posizione di slot visivo a -1
Dichiarazione
procedure EnsureVisualCaretOrder;
Vedere anche
InvalidateVisualCaretOrder, GetVisualCaretOrder, MoveVisualCaret, GetResolvedTextDirection, EnsureSelectionBoundaries, TPDFlibFormTextDirection, TPDFlibFormSession