如何关闭 xterm / rxvt-unicode 的抗锯齿功能?

如何关闭 xterm / rxvt-unicode 的抗锯齿功能?

我的系统 (Debian squeeze) 使用字体抗锯齿功能,这在大多数情况下都很好。但是,我想禁用 xterm 和 urxvt (rxvt-unicode) 中的终端字体抗锯齿功能,但无法让它工作。

我尝试使用antialias=false,如在urxvt 手册页(搜索“antialias”),但是没有任何效果:

urxvt -fn "xft:Deja Vu Sans Mono:pixelsize=10:antialias=false"

无论我使用antialias=true还是,我都会获得完全相同的字体渲染false。我指定的字体和大小确实有效果,因此 urxvt 显然会处理该选项。

使用 xterm (使用-fa) 得到同样的结果,或者放入Xft*antialias: false我的 X 资源中 (如建议的我怎样才能只关闭 gnome-terminal 的字体抗锯齿功能,而不关闭其他应用程序的字体抗锯齿功能?)。

我做错了什么?还有其他设置吗?

编辑:

我刚刚发现禁用抗锯齿功能/etc/fonts/local.conf

<match target="font">
  <edit name="antialias" mode="assign">
    <bool>false</bool>
  </edit>
</match>

不过,我不明白为什么antialias=false字体规范不尊重它。

答案1

通常 xterm 不会对字体应用抗锯齿。但是,我认为某些窗口管理器(如 compiz)通常会对窗口应用抗锯齿,因此您的问题可能是窗口管理器,而不是终端仿真器。请尝试检查窗口管理器的抗锯齿功能,然后尝试禁用它。

答案2

xterm 实际上可以像下面这样使用字体抗锯齿功能。

~/.Xdefaults

!xterm font antialiasing variant
xterm*faceName: DejaVu Sans Mono:size=10:antialias=true
xterm*font: 7x13
!rxvt-unicode fontantialiasing variant
URxvt*font: xft:DejaVu Sans Mono:pixelsize=12:antialias=true:hinting=true
URxvt*boldFont: xft:DejaVu Sans Mono:bold:pixelsize=12:antialias=true:hinting=true

据我调查,简单的 rxvt(不含 unicode)不支持字体抗锯齿。我今天(2015 年)更喜欢 xterm 的原因是,xterm 在打开时消耗的内存比 urxvt 少。Rxvt 消耗的内存比 xterm 还要少,但它不支持字体抗锯齿。

相关内容