Новое Распределяем каналы MAX по категориям и территориям. Читать новость

Как автор предлагает строить UX богатого текста: от рендеринга до истории правок



На PiterUX Дмитрий Карловский показал концепцию редактора богатого текста, в которой отдельно продуманы вывод текста, каретка, выделение и история правок. Для рендеринга он описывает цепочку из токенизации, расчёта ширин и высот, разбиения на строки, вычисления позиций, отсечения невидимого и отрисовки по координатам. Такой подход он связывает с требованиями к производительности и точности печати.

Практически важны несколько идей. Для длинных слов в узких колонках автор выбирает сжатие букв по ширине. Для PascalCase-идентификаторов он предлагает искать перенос не только по пробелам. Каретку он советует визуально различать в зависимости от логической позиции, а при наведении — показывать призрачную каретку вместо смены курсора. Отдельно он настаивает на разделении семантики и оформления.

История редактирования, по его словам, должна храниться в структурах данных, позволяющих перебазировать правки на новое состояние. Это делает концепцию полезной для проектирования редакторов и интерфейсов с богатым форматированием, но не превращает её в готовый рецепт внедрения без доработки.

Источник: Habr IDE and Developer Tools RU — https://habr.com/ru/articles/1095498/
Просмотры: 4
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти