3

Исторически я использовал Monotype Courier New в качестве шрифта XTerm (он хорошо отображает как кириллические символы, так и символы рисования прямоугольников). При переходе от традиционных KOI8-R в UTF-8 локали, я заметил изменение расстояния между линией (или ведущего), который не сделал Courier New больше не подходит для терминалов.

Вот как мой XTerm выглядел в локали ru_RU.KOI8 ru_RU.KOI8-R (12pt Courier New):

Вот как это выглядит сейчас (ru_RU.UTF-8 , снова 12pt, ширина символа та же, но обратите внимание, что увеличенные начальные вертикальные символы рисования прямоугольников образуют двойную "пунктирную" линию):

Судя по всему, XTerm не единственное приложение, на которое влияют. По сути, все программы, использующие шрифты Core X11, демонстрируют одинаковое поведение. Посмотрите на xfontsel отображающий разные кодировки одного и того же шрифта:

KOI8-R:

ISO 10646-1 (что означает Unicode):

Интересно, что Courier New, похоже, является единственным моноширинным шрифтом. Другие шрифты, такие как -misc-freemono-* , имеют одинаковые начальные значения независимо от кодировки.

Теперь вопрос:

Есть ли способ, которым я могу обеспечить конкретное ведение для определенного шрифта? Должен ли я посмотреть в библиотеку FreeType? Или Xft? Любые идеи приветствуются.

0