LINUX.ORG.RU

freetype-2.7 и ШГ

 ,


1

2

Приветствую.

Как известно, в ветке 2.7 freetype запилили новый интерпретатор для хинтинга (v40), который авторы библиотеки всячески нахваливают. Меня он, однако, как-то опечалил. Потому как многие шрифты в результате стали гораздо менее чёткими и более «замыленными» (пример для шрифта DejaVu Sans Mono-10, который я использую в терминале, сверху что было, снизу что стало).

Я не предлагаю обсуждать какой вариант лучше. Мне больше нравится «старый», я хочу, чтобы у меня было так. Сейчас я принудительно выставил использование старой версии интерпретатора, рендеринг стал как раньше, но это явно неправильное решение (наверняка его когда-то выпилят окончательно). К тому же, разработчики библиотеки пишут, что новый интерпретатор должен все шрифты рендерить примерно одинаково, а старый разные шрифты мог рендерить по-разному - в детали я не вникал, но такое поведение действительно наблюдал - некоторые шрифты были чёткими, а некоторые (в частности, большинство webfonts) - «замыленными». К сожалению, переход на новую версию делает замыленными абсолютно все шрифты - а мне бы хотелось наоборот, чтобы все стали одинаково чёткими. Этого можно как-то добиться? Пробовал крутить параметры про хинтинг и субпиксельное сглаживание - существенных изменений не увидел.

★★
Ответ на: комментарий от anonymous

export FREETYPE_PROPERTIES=truetype:interpreter-version=35

Ну я так и отключил у себя. Но есть ощущение, что это неправильное и вообще временное решение, т. к. старый интерпретатор наверняка скоро выбросят. Да и некоторые шрифты и со старым интерпретатором «мылятся».

slav ★★
() автор топика

В частности, большинство webfonts являются говном чуть более, чем полностью.

anonymous
()
Ответ на: комментарий от slav

Например хроиум эту переменную игнорирует, и выше написали про web fonts, я их у себя отключил.

anonymous
()

Жди новой версии.

anonymous
()

субпиксельное сглаживание

отключено при сборке по-дефолту, собирай его правильно:

--- include/freetype/config/ftoption.h.orig 2015-10-30 21:51:44.619963988 +0100
+++ include/freetype/config/ftoption.h  2015-10-30 21:51:51.505045118 +0100
@@ -92,7 +92,7 @@
   /* This is done to allow FreeType clients to run unmodified, forcing     */
   /* them to display normal gray-level anti-aliased glyphs.                */
   /*                                                                       */
-/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
+#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING


   /*************************************************************************/

slon
()
Ответ на: комментарий от anonymous

В частности, большинство webfonts являются говном чуть более, чем полностью.

Если я правильно помню, большинство гарнитур на google fonts — декоративные, а не текстовые и уж тем более не интерфейсные. Им хинтинг особо не нужен.

AP ★★★★★
()
22 февраля 2017 г.

Вот те же проблемы и у меня =( Уже начал думать о мониторе 22" с разрешением 3840x2160, чтобы это дело исправить. Пока что отключил lcd filter. Стало четче.. кажется...

ЗЫ смотрю в сторону bitmap fonts.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Всего-то нужно одну переменную окружения прописать, или если пользуешься хромым пропатчить freetype.

anonymous
()
Ответ на: комментарий от anonymous

Чтобы вернуться на v35? Это понятно, но думаю, что с 200 dpi или пиксельными шрифтами будет еще лучше =)

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

ЗЫ смотрю в сторону bitmap fonts.

Направление в целом верное, но смотрите не в сторону растровых гарнитур, а в сторону векторных, которые рассчитаны на работу без AA и не рассыпаются по экрану. Их считанные единицы, но они есть (Liberation Sans < 2.0, PT Sans).

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

d_a ★★★★★
()

Я вообще на 2.5 откатился везде. Где-то еще в середине ветки 2.6 они конкретно поломали субпиксельное сглаживание. Вот именно ради «все шрифты рендерить примерно одинаково», в результате примерно одинаковое мыло. Оно не сказать что прям зверски ШГ, но я ощутил дискомфорт. Наверно на hidpi это пофиг, а разработчики все уже там. Нищебродам остается страдать как обычно.

bread
()

Сейчас обнаружил забавную штуку, что в gtk приложениях не работают суб-пиксели

Waterlaz ★★★★★
()

Кстати, шрифты вполне симпатичны. Просто надо было удостовериться, что freetype скомпилирована с опцией FT_CONFIG_OPTION_SUBPIXEL_RENDERING

Waterlaz ★★★★★
()
7 июля 2017 г.
Ответ на: комментарий от Waterlaz

Вчера прилетело обновление на debian testing libfreetype6 2.8 не знаю включена ли там эта опция но мылит он шрифты очень сильно перепробовал разных настроек, hintstyle практически ничего не меняет, не много спасает включение rgb но все равно не то, в итоге пришлось вернулся на v35

DarkELF
()

А у меня обновился fontconfig с 2.11 на 2.12 и уже этого оказалось достаточно, чтобы замылились шрифты (fontconfig 2.6). Но не у одного меня. Люди подняли шум, и теперь проблему можно решить, обновившись до 2.12.3-0.2, после чего запустив dpkg-reconfigure fontconfig-config, где необходимо установить hinting style вместо нового значения по-умолчанию в 2.12 «Slight» в старый «Full».

gag ★★★★★
()
Ответ на: комментарий от anonymous

Я таки о ноуте. А вот на моём 21" Eizo ЭЛТ (при 85 Гц) они из жирноватых превратились в совсем жирные. Вот на 60 Гц шрифты как на ЖК, только любоваться ими долго в таком режиме не выдерживаю. Надо было самый последний Eizo брать в б/у, но теперь уже поздно, пропустил.

gag ★★★★★
()
Ответ на: комментарий от anonymous

Может собрано как-то не так? В Debian при апдейте с 2.6 на 2.8 вроде есть какая-то разница, но не сказал бы, что заметная и в худшую сторону. Сглаживание RGB, хинтинг лёгкий, фильтр должен быть lcddefault, если не изменяет память.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.