2

Это, на удивление, не один из вопросов, которые уже задавались:

Напротив, я хотел бы отключить подсказку о шрифте, но оставить сглаживание включенным.

Это возможно?

1 ответ1

1

Один из способов, который мне подходит, - это отредактировать файл ~/.fonts.conf (я использую Firefox 57.0.1 в Xubuntu 18.04, и он все еще не использует настройки хинтинга в XFCE, как некоторые другие ответы на SuperUser указал, например, Как переопределить веб-шрифты в Firefox?).

Чтобы "отключить хинтинг для определенного шрифта" в ~/.fonts.conf , вы можете захотеть установить 2 тега соответствия по порядку (порядок важен , потому что правила кажутся сверху вниз), один включив подсказки шрифтов для всех подсказок, а второй отключив подсказки для определенных шрифтов (в моем случае, Noto Sans Mono CJK SC , Noto Sans CJK SC и Noto 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

Вы увидите много шрифтов с Hint, установленным в "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)
...

Надеюсь, что это может быть полезно!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .