Fontconfig/ru

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

Общие сведения
Чтобы сгенерировать свою внутреннюю конфигурацию использует XML-файлы в каталоге. По умолчанию она парсит (пользователю не следует самостоятельно вносить изменения в этот файл!), который хранит некоторые разумные значения, а также зачастую содержит код для парсинга файлов из. Кроме этого, есть каталог, в котором находятся всевозможные конфигурационные файлы, каждый из которых покрывает тот или иной аспект. Можно создавать символьные ссылки на необходимые файлы в. Порядок выполнения зависит от имён файлов; именно поэтому каждое имя начинается с двузначного числа, первая цифра которого (разряд десятков) указывает, на что влияет файл (иначе говоря, класс конфигурационного файла).

Специфика Gentoo
Gentoo предоставляет модуль eselect, который в точности осуществляет описанное общим способом — управляет символьными ссылками в , добавляя или удаляя их из директории. По понятным причинам изменения конфигурации на уровне системы требуют соответствующих прав доступа.

Следующие подсекции поясняют работу с модулем eselect.

Список доступных файлов
Команда отображает доступные файлы  и помечает активные звёздочкой.

Активация файлов
Файлы могут быть активированы по имени или по номеру в скобках. Следующие две команды выполняют одно и то же действие:

Деактивация файлов
Файлы могут быть деактивированы аналогичным образом:

Пользовательская конфигурация для всей системы
Чтобы создать пользовательский файл, влияющий на всю систему, активируйте и создайте  (это XML-файл).

Конфигурация для каждого пользователя отдельно
Чтобы создать файлы для каждого пользователя, активируйте  (может быть активирован по умолчанию) и сделайте так, чтобы пользователи использовали. Этот файл имеет тот же формат XML, что и.

Проверка конфигурации
Проверьте замену шрифта по умолчанию, например, для Arial:

Сглаживание, хинтинг и субпиксельное отображение
Тонкости отображения также могут быть настроены. В следующих секциях показана настройка сглаживания, хинтинга и субпиксельного отображения.

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


 * 1) Активируйте
 * 2) Отредактируйте файл, включив полный хинтинг по умолчанию

Этот фрагмент файла включает полный хинтинг:

Использование субпиксельного отображения
Важно определить субпиксельный формат матрицы жидкокристаллического дисплея. Обычно это RGB, однако для того, чтобы точно его установить, нужно либо обратиться к спецификации дисплея, либо воспользоваться этим тестом субпиксельного формата.

После того, как субпиксельный формат определен, активируйте соответствующий файл.

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

О autohinter
Autohinter пытается осуществлять автоматический хинтинг, игнорируя существующую информацию о хинтинге. До недавнего времени он использовался по умолчанию, поскольку TrueType2 был защищен патентами. Однако срок патентов истек, и сейчас нет никаких причин для его использования. С технической точки зрения, он работает лучше для шрифтов с неправильной или отсутствующей информацией о хинтинге, однако для шрифтов с хорошей информацией о хинтинге он весьма неоптимален. Системные шрифты, как правило, относятся ко второй категории, поэтому autohinter использовать не следует.

Infinality
Infinality — это (несколько противоречивый) набор патчей для FreeType и сопутствующих файлов. Целью Infinality является реализация более высококачественного отображения шрифтов, включая эмуляцию стилей отображения шрифтов других операционных систем.

Включение Infinality
Включите USE-флаг 'infinality' либо вручную отредактировав файл, либо с помощью утилиты euse.

Затем пересоберите программы, на которые влияет этот USE-флаг.

Активируйте, если сообщения, отображаемые после пересборки, не требуют этого не делать.

Настройка Infinality
Infinality можно настроить различными способами, включая индивидуальные конфигурации, однако наиболее простым способом является использование готовых профилей, включенных в пакет. Этот пакет, вместе с модулями eselect, должен устанавливаться как зависимость USE-флага.

Быстрая и приемлимая конфигурация
Также рекомендуется выключить все настройки кроме, так как они вмешиваются в отображение стилей infinality:

Некоторые настройки не влияют на отображение шрифтов, но определяют шрифты по умолчанию для типов шрифтов (таких как Monospace, sans-serif и так далее). Такие настройки (например, конфигурации ) можно оставить включенными.

Объяснение
Infinality предоставляет переменные окружения FreeType, которые могут использоваться для настройки возможностей, реализуемых патчами infinality, а также файлы для использования с этими изменениями. Управление наборами файлов на Gentoo осуществляется с помощью, а поведение FreeType настраивается с помощью.

Эти модули eselect работают, как обычно:


 * Выведение списка доступных наборов файлов fontconfig.


 * Выведение списка доступных наборов переменных FreeType.


 * Разумеется, оба набора должны находиться в соответствии друг с другом, за исключением ситуации, когда возможны различные соответствия, как в нижеследующем примере.

Выбор шрифтов
Выбор нужного шрифта может являться более трудной задачей, чем выбор правильного типа хинтинга. По той или иной причине, шрифты не будут выглядеть идеально, однако заставить те же самые шрифты выглядеть лучше, чем, например, в стандартной конфигурации шрифтов в Windows 7, вполне возможно.

Ссылки

 * Подробные статьи на Arch Linux wiki по:
 * Настройке шрифтов
 * Infinality
 * Официальная документация для пользователей
 * Статья на Wikipedia о хинтинге шрифтов