Решение проблемы размытых шрифтов в Ubuntu
Недавно переехал на Ubuntu 11.04. Продуманная, удобная система, в основном всё меня устраивает, но шрифты в браузере отображались мыльно. Потратил довольно много времени и вот, наконец, нашел решение проблемы.
Должен признаться, в сети мало толковой информации на русском языке по Ubuntu. Искал по словам «настройка шрифтов gnome», «проблема шрифтов в ubuntu», «мыльные шрифты», даже «уродские шрифты» (я намеренно перечислил все варианты для гугла).
Первое, что выяснил, надо поставить пакет mscorefonts (1). Теперь шрифты похожи на виндовые, но выглядят все равно размыто.
Затем нашел статью на хабре, которая мне помогла лишь отчасти.
Итак, файл .fonts.conf лично мне ничего не дал (а точнее, сделал только хуже). Разрешение экрана выставил требуемое (для моего 19″ монитора 1440×900 соответствует 89 dpi) (2).
Теперь через меню «Система — Параметры — Внешний вид» смог настроить четкие шрифты в системе (3). За четкость отвечает настройка «Утончение» или hinting (хинтинг), которое включается при выборе режима «Наилучшая контрастность».
Но вот незадача: google chrome (chromium) и firefox упорно продолжают мылить. А кроме того мылит скайп (и, очевидно, другие qt приложения).
Вот как выглядел браузер. Вам может показаться, что всё ок, но увеличение показывает размытие вокруг букв.
Как это обычно бывает, решение нашлось на англоязычном ресурсе.
Итак, последнее решающее действие (4) — удаление хитрых конфигов (выполняем в терминале):
sudo rm /etc/fonts/conf.d/10-*.conf
На оригинальном ресурсе есть рецепт восстановления удаленных файлов (которые в действительности являются симлинками), но мне он не понадобился.
После перезапуска хрома всё наладилось.
Надеюсь, эта информация поможет другим пользователям использовать ubuntu как основную ОС.
Обновление от 10.10.11: уменьшил скрины, теперь они не масштабируются хабром.
Четкие (резкие) шрифты в Ubuntu
Выставлены такие настройки (скрин не мой, а MrClon ). У меня тоже 96 PPI. Но у меня гораздо более смазанные шрифты и выглядят толще. Зрение и так плохое, а такие мыльные шрифты вообще нечитаемы нормально.
Как фиксить? Почему с теми же настройками шрифт выглядит иначе?
Ничего из этого не менял. Стоит изменить? Если да, на что?
Шрифты dejavu, bitstream vera, ubuntu.
Разные версии freetype? Разные алгоритмы?
В /etc/fonts или как оно там в убунте, есть пачка симлинков, на разные файлы с настройками. Разница может быть там
Что только не придумают, лишь бы не процитировать анона, который это же написал выше xD
Если не устраивают шрифты, то да.
В зависимости от монитора и выбранного шрифта выбирать стоит разные настройки.
Анон выше правильно написал про FREETYPE_PROPERTIES (в новом FreeType по умолчанию мыльный ClearType или что-то близкое к),
А вот с предложенным им rgba я не согласен, так как это зависит от монитора, как и lcdfilter .
В Firefox шрифты выглядят совсем иначе. Т. е. они все еще размытые и толстые. Как это можно исправить?
Deleted ( 24.04.20 17:31:45 MSK )
Последнее исправление: Deleted 24.04.20 17:32:48 MSK (всего исправлений: 1)
Если в заскриненой менюшке переключить «уточнение» на «слабое» вид шрифта изменится? Чую что у тебя полный хинтинг («уточнение») на самом деле не работает и используется слабое. У меня если выбрать слабое то выглядит весьма похоже на твоё.
Не уверен было-ли дело на этой системе или нет, но помнится когда-то приходилось ковырять /etc/fonts/ чтобы hinting действительно заработал в режиме full. Конвигуряние шрифтов в онтопике как-то очень странно сделано
Отключи в его настройках использование собственных шрифтов сайтами. Но это поломает отображения некоторых pdf в нём.
Так даже в интерфейсе шрифты не так выглядят. И так отключено.
Если в заскриненой менюшке переключить «уточнение» на «слабое» вид шрифта изменится?
Не изменяется. Т. е. я не вижу разницы. Даже если новое окно открыть.
когда-то приходилось ковырять /etc/fonts
Там очень много всяких конфигов. Есть даже конфиги с названиями шрифтов. Можно все это просто удалить?
В Firefox шрифты выглядят совсем иначе. Т. е. они все еще размытые и толстые. Как это можно исправить?
Firefox и Chrome рендерят шрифты по-своему. Я не знаю как это пофиксить, у самого ШГ в браузере (qtwebengine).
В /proc/пид__файрфокса/environ соответствующая переменная есть?
Не изменяется. Т. е. я не вижу разницы. Даже если новое окно открыть
А должно весьма заметно изменяться.
Там очень много всяких конфигов.
Добро пожаловать в удивительный мир шрифтов linux. Внимательное изучение этих конфигов подарит тебе просветление, или мигрень (скорее мигрень). Также возможен бонус в виде невырвиглазных шрифтов
Не стоит. Лучше посмотри что там есть со словом hinting. На сколько я помню надо удалить симлинки 10-hinting-medium.conf и 10-hinting-slight.conf из /etc/fonts/conf.d/. Но это не точно
MrClon ★★★★★ ( 24.04.20 18:23:34 MSK )
Последнее исправление: MrClon 24.04.20 18:23:54 MSK (всего исправлений: 1)
Для хромого –disable-remote-fonts, у фф в настройках есть.
Почему с теми же настройками
Потому что в системе есть ещё сэм-восэм мест, где эти настройки могут переопределяться:
Например, если у тебя есть symlink /etc/fonts/conf.d/10-hinting-slight.conf, то в системе будет hintstyle=hintslight независимо от того, что ты установишь в диалоге настройки шрифтов. Поэтому проверь все эти директории.
Как проверить, какой у тебя действительно hintstyle:
$ fc-match --verbose Serif | grep hint hintstyle: 1(i)(w) hinting: True(s) autohint: False(s) fonthashint: True(w) $ fc-match --verbose Serif | grep rgb rgba: 1(i)(w) $ fc-match --verbose Serif | grep lcd lcdfilter: 1(i)(w)
У меня hintstyle=1, rgba=1 (т.е. hintslight, subpixel). Тебе нужно сделать так, чтобы эти комманды выдавали hintstyle=3, rgba=0. Возможные значения там такие:
rgb rgba 1 bgr rgba 2 vrgb rgba 3 vbgr rgba 4 none rgba 5 lcdnone lcdfilter 0 lcddefault lcdfilter 1 lcdlight lcdfilter 2 lcdlegacy lcdfilter 3 hintnone hintstyle 0 hintslight hintstyle 1 hintmedium hintstyle 2 hintfull hintstyle 3
rupert ★★★★★ ( 24.04.20 18:49:23 MSK )
Последнее исправление: rupert 24.04.20 18:51:36 MSK (всего исправлений: 1)
В фоксе я как-то добился рендеринга во всяком случае чертовски близкого к общесистемному (https://pic4a.ru/04/UnC.png). Кажется для этого потребовались какие-то дополнительные телодвижения. Возможно с локальными (пользовательскими) конфигами шрифтов. Другое дело что тот же DejaVu при бОльших размерах (которые обычно используются в браузере) выглядит крайне вырвиглазно (кажется используемый мной вариант рендера только усугубляет его вырвиглазность) так что его я в браузере (за пределами интерфейса) не использую
У меня точно так же выглядит. Но это даже не близко с тем, как отображается в системе.
Пожалей мой мозг, ты и так уже разбудил вьетнамские^Wфлешбеки о настройке шрифтов. Вот и мигрень возвращается. Что у тебя выглядит одинаково (одинаково с чем) и что от чего отличается.
Вообще rupert всё верно сказал
Что у тебя выглядит одинаково (одинаково с чем) и что от чего отличается.
Так же, как у тебя шрифты стали выглядеть (и в системе, и в браузере). Шрифты в браузере (что у тебя, что у меня) даже не похожи на те, что в системе.
Deleted ( 24.04.20 18:59:07 MSK )
Последнее исправление: Deleted 24.04.20 18:59:38 MSK (всего исправлений: 1)
Да нет, на скрине вроде попиксельно идентично. Ты может не туда смотришь? Так-что в браузере другой шрифт другого размера используется. Системные шрифты я только для блока «предпросмотр» задал. В копипасте из терминала сглаженные пиксели в браузере отрендерились чуть светлее, но это такая мелкая разница что её только при попиксельном сравнении заметишь
Разве это влияет на рендеринг шрифтов?
Не похоже. Сам не видишь мыльцо?
Нет, не вижу. Вырезал ту часть в которой совпадает шрифт и его размер: https://pic4a.ru/04/4dO.png С двоеточием из системного приложения, без двоеточия — из браузера.
Я не пытался замаскировать ЛОР, и тем более вообще все сайты, прд нативные приложения. Сайты используют свои шрифты которые хинтятся не так как Dejavu Sans, размер шрифтов обычно больше чем тот который я использую в системе
Разумеется, без этого ключа шрифты рендерятся мыльно. Почему так спрашивай у разрабов хромого.
Ты на крупные шрифты смотри.
Не знал. Буду иметь в виду. На случай, если я вдруг вернусь на Chrome/Chromium.
А в современных мониторах есть проблема нечетких шрифтов или это давно победили?
Победить это можно только высоким dpi.
Так а с чего им совпадать? Шрифт-то другой. Крупный — это Open Sans, в системе и в блоке предпросмотра — Dejavu Sans. Разные шрифты под разные задачи. У них разный хинтинг, так что и выглядят они по разному при тех же параметрах рендера (и речь не только о начертании).
Если выставлю системным шрифтом тот же опенсанс 13-го кегля то выглядить он будет точно так же как в браузере (сейчас проверил). Рендерятся они с одинаковыми параметрами:
> fc-match --verbose 'Dejavu Sans' | egrep 'hint|lcd' hintstyle: 3(i)(w) hinting: True(w) autohint: False(s) lcdfilter: 1(i)(w) > fc-match --verbose 'Open Sans' | egrep 'hint|lcd' hintstyle: 3(i)(w) hinting: True(w) autohint: False(s) lcdfilter: 1(i)(w)
Сейчас глянул из интереса, Open Sans выглядит практически одинаково во всех вариантах хинтинга. Подозреваю что это фича шрифта, нужная чтобы он выглядел как можно более одинаково в любых системах. Он ведь для веба делался
Open Sans выглядит практически одинаково во всех вариантах хинтинга.
Хинтинга — да. Но это не отменяет того, в браузере (qtwebengine) и в системе он рендерится по-разному. Сам использую Open Sans.
За вебкит ничего не скажу, может там аппаратное ускорение и от того доплнительные тонкости, в фоксе рендер идентичен системному. Ещё есть вариант чтов системе у тебя не та версия open Sans которую используют сайты
Добро пожаловать в удивительный мир шрифтов linux. Внимательное изучение этих конфигов подарит тебе просветление, или мигрень (скорее мигрень). Также возможен бонус в виде невырвиглазных шрифтов
ты забыл про красные глаза. Вот что-то, а их ковыряние в конфигах шрифтов и линуксовых хитросплетениях десктопа подарит однозначно
ТС, а у тебя со шрифтами проблемы только в одном фреймворке (Qt или GTK или везде)?
peregrine ★★★★★ ( 25.04.20 08:02:38 MSK )
Последнее исправление: peregrine 25.04.20 08:03:43 MSK (всего исправлений: 1)
Красные глаза это побочка которая будет в любом случае
Linux Mint 17. Размытые шрифты.
система: МП: GigaByte GA-M68MT-S2P rev3.0 ***** ЦП: AMD Phen II X4 850 3.3ГГц ***** ВК: Gigabyte GF GTX460SE 1Gb ***** ОЗУ: Qumo QUM3U-4G1333K9R DDR3 4GB DIMM 2 шт ***** ЖД: WDC WD5000AAKX-001CA (разбит на две части, 50 гиг под ос, остальное под личный хлам) ***** БП: Chieftec A-135 series APS-550C ***** Монитор: Acer P226HQ ***** Привод: Super-WriteMaster SH-222AB ***** Акустика: SVEN SPS-820 Black ***** Роутер: TP-LINK TL-WR841ND ***** Клавиатура A4Tech KD-126
теперь о проблеме. ос нравиться, даже очень, но есть проблема со шрифтами — они очень размыты и от этого начинают уставать глаза и болеть голова. пробовал циннамон и мате, все то же. особенно сильно размытость наблюдается в браузере лиса. драйвера последние, а точнее: http://s003.radikal.ru/i202/1409/c8/9d36243df576.png в настройках драйвера ничего не трогал так как английский язык не знаю. шрифты винды установил сразу же, выставил ариал в системе а в браузере тот шрифт что использает этот браузер в винде, но не помогло. при установке убунту или кубунту глаза отдыхают, то есть такой размытости нет, в них тоже ничего не трогал, всё по умолчанию, хотя и в них cleartype что есть в винде очень не хватает. у меня и так -3.5 диоптрий. что можете посоветовать? не хочется как то из за этой причины возвращаться к винде, но если проблему не смогу решить то придется.
Причем здесь это? Там дело точно не в сглаживании.
Можешь привести вывод команды
Vovka-Korovka ★★★★★ ( 17.09.14 15:19:25 MSK )
Последнее исправление: Vovka-Korovka 17.09.14 15:19:55 MSK (всего исправлений: 1)
в настройках через GUI субпиксельное сглаживание с полным уточнением?