После нескольких лет счастливого использования различных эмуляторов терминала, таких как Konsole , Gnome-TERMINAL и, в последнее время, XFCE Terminal, в соответствующих средах рабочего стола, я решил использовать старый добрый xterm с его растровыми шрифтами . Он работает просто отлично, поддерживает Unicode, а семейство фиксированных шрифтов по умолчанию содержит символы практически всех языков, и это здорово.
Но я столкнулся с важной проблемой. Шрифты действительно маленькие. Даже так называемый Огромный размер (который является растровым шрифтом 10x20) очень мал для меня и непригоден для использования.
Моя настройка по умолчанию для среды XFCE - 120 точек на дюйм, но с xpdyinfoразрешением 97x97 DPI
$ xdpyinfo |grep resolution
resolution: 97x97 dots per inch
Поэтому я попытался изменить DPI xrandr, но это не помогло.
$ xrandr --dpi 120
Результат вроде бы применяется
$ xdpyinfo | grep resolution
resolution: 120x120 dots per inch
но это никак не меняет разрешение xterm. Я даже пытался использовать масштабирование, но оно затронуло весь X, а не одно приложение:
$ xrandr --output LVDS1 --scale 0.5x0.5
Есть обходные пути для Qt и Gtk , но что Xlib-приложения нравятся Xterm, Xcalc, Xman, Xfigeи т.д.? Должны ли мы смотреть, как они исчезают, поскольку DPI дисплея увеличивается? Пожалуйста, помогите, если вы знаете какие-либо обходные пути.
Это то, что я сделал, и это сработало, но я не смог использовать исходное «семейство фиксированных шрифтов», поэтому теперь оно может работать только для некоторых языков.
PS1: я установил 100 DPI шрифтов для X, но я не мог их использовать
$ sudo apt-get install xfonts-100dpi
PS2: Fontforgeкоторый также использует Xlib, использует хорошую тему и нормальный размер шрифта. Я не знаю, как это происходит.
PS3: я тестирую otf2bdfи bdftopcfиспользую для создания экспериментальных PCFрастровых шрифтов для HIDPI из векторных TTF/OTFшрифтов.
PS4: После установки шрифтов 100DPI это было хорошо, хотя в нем отсутствует отличная языковая поддержка fixedшрифта по умолчанию .
$ xterm -font -Adobe-Courier-Bold-r-Normal-*-34-*-100-100-*-*-*-*
Я использовал fontsel. Это действительно полезно.
PS5: это тоже полезно.
PS6: я смог бы создать растровый шрифт 120DPI из Courier New с 20pt
$ otf2bdf -p 20 -r 120 cour.ttf > cour.bdf
$ bdftopcf cour.bdf | gzip - > cour.pcf.gz
$ sudo cp cour.pcf.gz /usr/share/fonts/X11/misc/
$ fc-cache
$ xterm -font -*-*-*-*-*-*-*-*-120-120-*-*-*-*
PS7: 75 DPI жестко закодирован шрифтом BDF. Может быть, изменение это поможет.
PS8: vncdesk - хороший инструмент для масштабирования одного окна .
xrdb -query | grep dpiуже сообщает:Xft.dpi: 120
~/.Xresourcesфайл или ~/.Xdefaults, или б / е подходит в вашей системе? Ссылка, на которую вы указали, и которую вы назвали полезной, не является всеобъемлющим набором опций, доступных для xterm. Например, Xft.lcdfilter: lcddefault Xft.antialias: true Xft.hinting: true Xft.hintstyle: hintslightи многое другое.
xtermтакже поддерживает шрифты TrueType. xterm -fa 'DejaVu Sans Mono' -fs 40(хотя не переключаться между шрифтами, когда глифы недоступны, как некоторые другие эмуляторы терминала)

Xft.dpi: 120в~/.Xresourcesне работает?