Все потоки
Поиск
Написать публикацию
Обновить

Комментарии 2

Со вводом все достаточно просто — курсор двигается последовательно, как хранятся данные. При этом при нажатии вправо он может двигаться как вправо, так и влево, а может вообще прыгать с места на место. Выглядит странно, но именно так работают все программы двунаправленного ввода в линукс и на мобильных телефонах.

Вы забыли про LRE/RLE, RLO/LRO маркеры, а они играют существенную роль при форматировании.

Для реализации двунаправленного вывода я пользовался вот этой статьей, там все достаточно неплохо разжевано: www.unicode.org/reports/tr9/

Только там ошибка в реализации примеров, которую успешно потащили создатели qt :) Багрепорт я в свое время не успел написать, а где конкретно ошибка уже не помню :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации