如何仅在终端中关闭字体像素抗锯齿?

如何仅在终端中关闭字体像素抗锯齿?

对于编程,我喜欢关闭字体抗锯齿功能(即选择单色选项),因为它使终端文本在字体较小时看起来更清晰。但这样一来,Web 浏览器中的所有内容看起来都会更糟。

有没有一种方法可以兼具两全其美的优势,既拥有非抗锯齿的终端字体,又拥有抗锯齿的 Web 浏览器字体?

答案1

您可以在 中控制字体的抗锯齿~/.fonts.conf。不过,在单个程序上执行此操作需要一些技巧。

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <dir>~/.fonts</dir>
  <alias>
    <family>XTerm</family>
    <prefer><family>Envy Code R</family></prefer>
    <default><family>monospace</family></default>
  </alias>
  <match target="pattern">
    <test name="family">
      <string>XTerm</string>
    </test>
    <edit mode="assign" name="family">
      <string>Envy Code R</string>
    </edit>
    <edit mode="assign" name="antialias">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>

这将创建一个名为的字体别名,XTerm该别名映射到Envy Code R但禁用抗锯齿功能。运行fc-cache ~/.fonts,然后您应该能够在终端中选择该字体。

如果您不介意(甚至喜欢)终端中使用的字体在任何程序中始终不具有抗锯齿效果,则它会更简单一些:

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <dir>~/.fonts</dir>
  <match target="pattern">
    <test name="family">
      <string>Envy Code R</string>
    </test>
    <edit mode="assign" name="antialias">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>

它不需要任何其他字体黑客技术并确保Envy Code R始终具有抗锯齿效果。

您还可以限制可以执行抗锯齿的字体大小:

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <dir>~/.fonts</dir>
  <match target="pattern">
    <test name="family">
      <string>Envy Code R</string>
    </test>
    <test name="size" qual="any" compare="less">
      <double>8</double>
    </test>
    <edit mode="assign" name="antialias">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>

Envy Code R当小于 8 点时,防止出现抗锯齿。

本文Arch Wiki 上展示了如何更详细地调整字体。 man fonts.conf是对配置语言的参考,但没有太多实际的例子。

答案2

我花了很多时间研究字体和系统配置,以便在 Ubuntu 终端中获得不错的非抗锯齿字体。一种解决方案是安装专用的非抗锯齿 TrueType 字体,例如 Terminus。将终端首选项设置为使用 Terminus 8 字体,或使用 Ubuntu 高级设置工具将全局控制台字体设置为 Terminus 8。

sudo apt-get install xfonts-terminus console-terminus

我还没有找到一个可以让我在终端中使用我最喜欢的字体(X11 6x13)的解决方案。与此同时,我一直在使用 pterm 和 Putty 而不是终端。唯一的缺点是 pterm 和 Putty 不支持制表符。

相关内容