Жирные шрифты xft в Xresources - PullRequest
       23

Жирные шрифты xft в Xresources

2 голосов
/ 20 августа 2011

Я попытался сделать весь текст в моем эмуляторе терминала жирным, установив:

URxvt*font: xft:FONT_NAME:pixelsize=14:style=bold

в файле, который читается как xrdb.Проблема в том, что это работает только для определенных шрифтов (например: DejaVu Sans Mono, Consolas).Многие шрифты будут отображаться с нормальным весом (например, Monaco, Mensch, Andale mono).

Странно то, что текст, который предполагается жирным шрифтом (как в manpages, ls output), по-прежнему отображается жирным шрифтом.Но если бы я поставил

URxvt*font:     xft:Monaco:pixelsize=14
URxvt*boldFont: xft:Monaco:pixelsize=14:style=bold

, тогда ни один текста не будет выделен жирным шрифтом.Это как если бы у шрифта не было стиля, названного "жирным шрифтом", хотя любой диалог выбора шрифта говорит об обратном.Тот факт, что часть текста выделена жирным шрифтом с boldFont, не указан, говорит мне, что rxvt-unicode способен отображать жирные версии этих шрифтов.

Я пытался использовать эти шрифты в konsole и xfce4-terminal.Konsole даже не предлагает Monaco в качестве возможного шрифта (он не думает, что это моноширинный шрифт, но это известная ошибка), а Mensch доступен только в стилях Regular и Oblique.В терминале xfce4 и Mensch, и Monaco доступны жирным шрифтом.

Примечание. У меня пока нет репутации для создания новых тегов.Теги, которые были отклонены: xrdb xresources xft urxvt

1 Ответ

3 голосов
/ 20 августа 2011

Andale Mono не имеет жирного стиля, поэтому указание "style = bold" не имеет никакого эффекта. То же самое касается Монако, но я не уверен.

На вторую часть вашего вопроса. Если указанный вами шрифт не имеет жирного шрифта, терминал сделает это сам. Я не знаю точного алгоритма, но похоже, что он просто печатает один и тот же глиф дважды с одним смещением пикселя. Но если вы также укажете жирный шрифт, терминал не будет пытаться создать жирный шрифт, и весь текст будет выглядеть одинаково.

...