如何在保持抗锯齿功能打开的同时关闭 Firefox 中的字体提示?

如何在保持抗锯齿功能打开的同时关闭 Firefox 中的字体提示?

令人惊讶的是,这并不是已经被问到的问题之一:

相反,我想关闭字体提示,但保持抗锯齿功能处于打开状态。

这可能吗?

答案1

对我来说,一种可行的方法是编辑文件~/.fonts.conf,(我在 Xubuntu 18.04 上使用 Firefox 57.0.1,但它似乎仍然没有使用 XFCE 中的提示设置,就像 SuperUser 上的一些其他答案所指出的那样如何在 Firefox 中覆盖网站字体?)。

为了“关闭特定字体的提示” ~/.fonts.conf,您可能需要设置 2 个匹配标签为了(顺序很重要,因为规则似乎是从上到下进行评估的),一个是针对所有提示打开字体提示,第二个是针对特定字体关闭提示(在我的情况下是Noto Sans Mono CJK SCNoto Sans CJK SCNoto Sans):

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>rgb</const>
  </edit>
 </match>

 <match target="font">                      <!-- This match tag sets the -->
  <edit mode="assign" name="hintstyle">     <!-- default for all fonts: -->
   <const>hintslight</const>                <!-- Turn On Slight Hint    -->
  </edit>
  <edit mode="assign" name="hinting">
   <bool>true</bool>
  </edit>
 </match>

 <match target="font">                      <!-- This match tag sets    -->
    <test name="family" qual="any">         <!-- the exception for the  -->
    <string>Noto Sans Mono CJK SC</string>  <!-- fonts that do not need -->
    <string>Noto Sans CJK SC</string>       <!-- hinting                -->
    <string>Noto Sans</string>
    </test>
    <edit mode="assign" name="hintstyle">
     <const>hintnone</const>
    </edit>
  <edit mode="assign" name="hinting">
   <bool>false</bool>
  </edit>
 </match>

 <match target="font">
  <edit mode="assign" name="antialias">
   <bool>true</bool>
  </edit>
 </match>
  <match target="font">
  <edit mode="assign" name="lcdfilter">
    <const>lcdlight</const>
  </edit>
  </match>
</fontconfig>

要验证设置是否生效,您可以使用该fc-match命令并检查其输出:

fc-match -s -v mono | grep hinting

您将看到许多字体的提示设置为“True”,但“Noto Sans Mono CJK SC”设置为“False”:

$ fc-match -s -v mono | grep hinting
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: False(w)  <-- This one is for Noto Sans Mono CJK SC
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: True(w)
hinting: True(w)
...

希望这会有帮助!

相关内容