Ещё раз про шрифты

Переразмещая заметку об улучшении шрифтов в openSUSE на этом сайте, неожиданно вспомнил, что ещё в федорианские времена мне попадались материалы на эту тему, и не в единственном экземпляре. Тогда я как-то не думал, что они мне понадобятся, но в подкорке отложился факт их существования. Настало время перевести их из подкорки в кору.

Немного напряг память и установил источник: сайт Александра Иванова aka Hravn. Подборка его материалов о шрифтах (кроме openSUSE, там говорится и о Fedora) была поднята и перечитана. И оказалось, что Александр использовал совсем другие способы «улучшательства», нежели я описал в своём наброске, причём разные для разных версий.

Глубинное траление репозиториев показало, что, да, действительно, таковых, имеющих отношение к «улучшательству» шрифтов в openSUSE имеется три:

  • фигурирующий в моей заметке Cherkasoff.repo, содержащий freetype2 с патчем поддержки субпиксельного хинтинга (и его зависимости);
  • infinality.repo от anshuljain, где «улучшательство» достигается по методике, предложенной на сайте Infinality, восходящей, в конечном счёте, к Ubuntu;
  • Subpixel.repo от opensuse-community.

Адресов самих репозиториев не привожу, и читатель, асиливший последующее многабукффие до конца, поймёт, почему.

Стало интересно, а до конца ли я улучшил шрифты, используя первый репозиторий? И тут выяснилась интересная вещь, для осознания которой мне пришлось вернуться в прошлое более чем месячной давности.

«Улучшательство» с использованием Cherkasoff.repo, описанное в соответствующей заметке, я первоначально выполнял в рамках релиза 12.1: именно тогда я тщательно сравнивал вывод шрифтов в дефолтном и «пропатченном» виде, а также «оба два» — со шрифтами в RFRemix 14, которые полагаю верхом совершенства. При переходе к тестовой версии 12.2 (здесь рассказывается, почему) я проделал ту же самую процедуру на автопилоте, не особо вглядываясь в шрифты ни на начальной, ни на конечной стадии процесса. И скриншотов я, разумеется, уже не делал.

Теперь же, для опробования двух неохваченных вариантов, прежде всего следовало откатить freetype сотоварищи в умолчальное состояние — а за это время я от Milestones 1 дополз уже до Milestones 2, и последнюю поддерживал в актуальном состоянии.

И оказалось, что после, казалось бы, даунгрейда, во-первых, номера версий freetype и libfreetype ощутимо повысились. А главное, шрифты после этого стали выглядеть не хуже, а лучше. А вот после установки соответствующих компонентов их «сообщественного» Subpixel.repo ни малейших визуальных отличий от квази-умолчального состояния не обнаруживалось.

Как мне кажется, ключ к объяснению — в номерах версий, а именно: в Cherkasoff.repo пакеты freetype и libfreetype имеют версию 2.4.4, в Subpixel.repo — 2.4.7, и в обоих случаях сопровождаются патчем freetype2-feature-subpixel-hinting за теми же номерами (2.4.4 и 2.4.7, соответственно. В Milestones же 2 версия этих пакетов — 2.4.9 (на момент написания этих строк), а «субпиксельного» патча нет вообще.

Объясняю это так:  сначала «черкасовское улучшательство» было инкорпорировано в  репозитории сообщества, а затем (уже в цельном виде) просто включено в апстрим. Что касается infinality.repo , то версии пакетов там совпадают с таковыми «субпиксельного» репозитория (то есть ниже текущих умолчальных), сопровождаясь патчами для Cairo — то есть это совсем отдельная линия развития, отличная от генеральной линии патрии.

Экспериментов с «улучшательством» по методе Infinality я не проводил: во-первых, из лени, во-вторых (и главных), потому что примерно представлял, чего от них ждать — убунтоподобия. А шрифты в Ubuntu, под которые «косят» патчи Infinality, бурного восторга у меня не вызывали никогда (хотя согласен, что они лучше, чем всё, что было ранее). Впрочем, желающие составить собственное мнение могут обратиться к сравнению Аркадия Шейна aka Tigro, правда, для Fedora, но суть дела от этого не меняется.

Из всего сказанного можно сделать такие выводы:

  • пользователям текущих Milestones (и, тем более, грядущего релиза 12.2) забивать голову «улучшательством» шрифтов, видимо, уже не придётся;
  • полагаю, что то же самое относится и к пользователям релиза 12.1, подключившим репозиторий Tumbleweed;
  • пользователям релиза 12.1, оный не задействующим, достаточно установить нужные пакеты из Subpixel.repo (как — описано Александром, повторяться не буду);
  • пользователям более старых версий openSUSE проще всего обновиться до текущего релиза.

Что же касается «улучшательств» по рецепту Infinality — то это дело сугубо на любителя, и его я оставляю для изучения заинтересованными лицами.


К содержанию