经过几年愉快地使用不同的终端模拟器,例如康索尔,Gnome终端,以及最近XFCE终端在他们合适的桌面环境中,我决定使用好旧的xterm以其位图字体。它工作得很好,它支持 Unicode,并且默认固定字体系列包含几乎所有语言的字符,这很棒。
但我遇到了一个重要的问题。字体确实很小。就连所谓的巨大的size(10x20 位图字体)对我来说非常小,而且无法使用。
我的 XFCE 环境默认设置为 120 dpi,但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:我为X安装了100 DPI字体,但我无法使用它们
$ sudo apt-get install xfonts-100dpi
PS2:Fontforge
它也使用Xlib
,使用漂亮的主题和正常的字体大小。我不知道它是怎么做到的。
PS3:我正在测试otf2bdf
并利用矢量字体为 HIDPIbdftopcf
创建实验性位图字体。PCF
TTF/OTF
PS4:安装100DPI字体后,这很好,尽管它缺乏默认fixed
字体的良好语言支持。
$ xterm -font -Adobe-Courier-Bold-r-Normal-*-34-*-100-100-*-*-*-*
我用过fontsel
。这真的很有帮助。
PS5:这也很有用。
PS6:我可以创建 120DPI 位图字体快递新20分
$ 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 字体中。也许改变它会有所帮助。
答案1
您已经通过引用暗示了答案https://en.wikipedia.org/wiki/Fixed_(字体)
这是标准固定的位图已扩展的字体马库斯·库恩拥有比较完整的字符集。那么问题是如何扩展位图。
到目前为止,您所取得的成就是缩放矢量字体并将其转换为位图(ttf → bdf → pcf)。这是一个很好的策略,但正如你提到的,它缺乏一些语言支持。这看起来很奇怪,因为 Courier New 是其中之一unicode 完整字体但我离题了!也许尝试使用单核细胞增多症这是一个克隆。
但是我不明白你为什么要以 xterm 身份这样做做 支持truetype。
~/.Xresources
进行如下修改(请注意,您需要使用 xrdb 重新加载它,如该问题的另一个答案中所示):
XTerm*renderFont: true
XTerm*faceName: VeraMono
XTerm*faceSize: 10
但回到任务:你想要一个更大的位图字体。
最大的可用位图是:
10x20 -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1
Markus 非常友善,他提供了 BDF 源文件。如果您的发行版没有最新的更新(从 2009 年 4 月开始),您可以直接从他那里获取软件包。
“-misc-fixed-*”字体包:
http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz
而不是在 pcf 和之间来回转换布达夫您可以/应该坚持源格式。您可以使用 BDF 字体编辑器来调整字体大小。不要指望有任何抗锯齿或类似的技巧 - 但至少你可以获得一个可读的大小。
或者你可以使用BD 尺寸作者:Hiroto Kagotani(也可以在一些软件包系统中找到)。
更新:
我不知道有一种方法可以只缩放一个窗口(从来没有需要)。你可以追踪这超级用户问题。当我有需要时,我会扩展整个环境。
您可以使用以下方法将 3200x1800 显示器降级至 1920x1080:
xrandr --dpi 141
xrandr --output eDP1 --scale 0.6x0.6
可以找到在不同窗口管理器中进行屏幕缩放的其他技巧这里。他们建议使用 VNC:
一种方法是在应用程序自己的 VNC 桌面上全屏运行且不进行任何修饰。然后缩放查看器。使用 Vncdesk (vncdesk-git从 AUR)您可以为每个应用程序设置一个桌面,然后使用简单的命令(例如
vncdesk 2
.x11vnc有一个实验性选项
-appshare
,每个应用程序窗口打开一个查看器。也许可以用它来破解一些东西。
答案2
现在,您可以通过按住 Control 和鼠标右键(即ctrl+right mouse button
)来增加字体大小,然后选择字体大小。要使其成为默认值,您需要进行Xresources
配置。我正在尝试,一旦得到答案我会更新答案。
更新:
您可以.Xresources
在主目录中创建文件并添加以下行xterm*font: *-fixed-*-*-*-18-*
。然后使用xrdb
(即)将您的更改与 X 服务器资源实用程序合并,xrdb -merge ~/.Xresources
或者您X
也可以重新启动。新的xterms
应该有改变的字体大小。