Страницы

Поиск по вопросам

среда, 11 декабря 2019 г.

Похудевший шрифт иврита, тайского и им подобных языков в консоли Linux

#debian #консоль #шрифты


Собственно проблема в Debian 8 с отображением некоторых шрифтов в консоли: иврит,
тайский и пр. Они выглядят меньше и тоньше своих кириллических и латинских аналогов.
На примере фразы: Привет! !שלום Hello! สวัสดี!. 



Кстати, здесь, в браузере Firefox v45, если поместить эту же фразу в обратные кавычки,
то получим такой же результат, как и в терминале: Привет! !שלום Hello! สวัสดี!. Аналогично
при просмотре в vim, gedit. В обычном же просмотре в браузере или в LibreOffice данные
символы отображаются нормально.

Как это можно исправить, чтобы шрифты отображались в читабельном виде по аналогии
с кириллицей?

Дополнение

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

В font-manager подобрал шрифт, но при попытке применить его к терминалу, данный шрифт
повёл себя некрасиво:



вот как он стал отображаться:



Как на это можно повлиять?
    


Ответы

Ответ 1



Шрифты есть двух типов. Моноширинные, и обычные. Консоль всегда (так было раньше) использует моноширинные шрифты, в связи с тем, что пространство консоли разделено на сетку, внутри которой каждый символ занимает свою конкретную клеточку. Т.е. у каждой буквы есть конкретные координаты в сетке, где сетка квантуется на квадраты 8x8, 8х12, 8х14, 9х14. Ширина любой буквы не может быть больше чем 8 пикселей, меньше чем 8 пикселей. Но некоторые версии консоли позволяют "использовать" любой шрифт. Консоль наследует понятие консоли из DOS, где символ задавался байтом, а шрифт находился отдельно, и имел фиксированый размер места под букву (8x8 изначально). Пример шрифта для dos http://shackmaster.narod.ru/fonts.htm. Часть консольных программ заточена именно под сетку (например midnight commander, инсталятор linux и много консольных утилит) и изменив это правило, картинка просто посыпется. Поэтому отказатся от неё не получится. Поэтому максимум что можно сделать: поискать более подходящий шрифт (https://unix.stackexchange.com/questions/49779/can-i-change-the-font-of-terminal) подредактировать шрифт но при этом не забывать про сетку. Ещё, судя по вашей картинке, ваш шрифт не моноширинный, поэтому символы "выравниваются" влево, под сетку (поэтому более широкие символы выглядят более эстетично чем узкие). Нужно поставить моноширинный шрифт, там Console, или Courier New, например - это улучшит картинку.

Комментариев нет:

Отправить комментарий