LINUX.ORG.RU

Различный межстрочный интервал в зависимости от кодировки шрифта

 , , ,


1

5

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

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

А вот так он выглядит сейчас (ru_RU.UTF-8, те же 12pt, та же ширина символов, размер терминала по-прежнему 80x24, но вот интерлиньяж увеличен, в результате чего линии псевдографики имеют характерные «разрывы» между строк).

Ну и, собственно, XTerm не один такой красивый. Все программы, использующие Core X11 Fonts, обнаруживают схожее поведение. Вот, например, xfontsel, например.

Что интересно, Courier New — это единственный чёртов TrueType-шрифт, за которым замечен такой грех. У других шрифтов, как -misc-freemono-*, межстрочный интервал от кодировки X11 не зависит.

Вопрос.

Как принудительно изменить межстрочный интервал для конкретного шрифта? В какую сторону смотреть? FreeType? Или Xft?

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

В какую сторону смотреть? FreeType? Или Xft?

Что-то подобное видел с ttf, причем настолько давно, что наверное там еще даже iso10646 и не пахло... Так что скорее всего в грешить на Xft. Как шрифт в Xterm задан? Если через XTerm*font, попробуй через XTerm*faceName (т.е. с использованием FreeType).

mamboo ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.