Как я могу отключить подсказки шрифтов в Firefox, оставив сглаживание включенным?
Это, на удивление, не один из вопросов, которые уже задавались:
- Как отключить сглаживание шрифтов в Firefox, сохраняя намеки на шрифты?
- Как отключить сглаживание шрифтов / подсказки / сглаживание в Firefox 4?
Напротив, я хотел бы отключить подсказку о шрифте, но оставить сглаживание включенным.
Это возможно?
1 ответ
Один способ, который работает для меня, это редактировать файл ~/.fonts.conf
(Я использую Firefox 57.0.1 в Xubuntu 18.04, и он все еще не использует настройки хинтинга в XFCE, как указали некоторые другие ответы в SuperUser, такие как Как переопределить шрифты веб-сайтов в Firefox?).
Чтобы "отключить подсказку для определенного шрифта" в ~/.fonts.conf
Возможно, вы захотите установить два тега соответствия по порядку (порядок имеет значение, поскольку правила, по-видимому, оцениваются сверху вниз), один включает подсказку шрифта для всех подсказок, а второй отключает подсказку для конкретных шрифтов. (В моем случае, 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)
...
Надеюсь, что это может быть полезно!