Fontconfig (или fontconfig ) — это бесплатная программная библиотека [6] , предназначенная для настройки, перечисления и замены шрифтов в других программах. Fontconfig изначально был написан и поддерживается Кейтом Паккардом , а в настоящее время поддерживается Бехдадом Исфабодом . [7]
Fontconfig обычно используется на графических рабочих столах Linux (и других Unix-подобных ), таких как Xorg и Wayland , где он остается важной частью обработки шрифтов. [8] Однако он также иногда используется на других платформах, в частности, в версиях программного обеспечения для Windows , которые используют Pango для размещения и рендеринга текста, например GIMP . [9]
Конечные пользователи могут использовать Fontconfig, прямо или косвенно, для настройки шрифтов в системе.
Приложения могут использовать fontconfig двумя способами:
Чтобы выполнить сопоставление шрифтов, Fontconfig сохраняет информацию о наборе всех установленных шрифтов, включая название семейства шрифтов , стиль , вес , количество точек на дюйм (DPI) и покрытие Unicode . Эта информация также используется для выполнения замены шрифта .
Fontconfig использует формат XML для своих файлов конфигурации. Определение типа документа (DTD) для файлов fontconfig обычно находится по адресу /etc/fonts/fonts.dtd
.
Главный файл конфигурации обычно /etc/fonts/fonts.conf
ссылается на несколько других мест конфигурации, которые могут существовать, а могут и не существовать:
/etc/fonts/fonts.conf
/etc/fonts/conf.d
$XDG_CONFIG_HOME/fontconfig/conf.d
$XDG_CONFIG_HOME/fontconfig/fonts.conf
~/.fonts.conf.d
~/.fonts.conf
Простой пример файла конфигурации:
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <!-- Включить сглаживание для всех шрифтов --> <match target= "font" > <edit mode= "assign " name= "antialias" ><bool> true </bool></edit> </match> </fontconfig>
Fontconfig поставляется с восемью утилитами командной строки для управления и запроса шрифтов, а также настройки шрифтов системы:
fc-list
: выводит список всех шрифтов, о которых знает Fontconfig, или всех шрифтов, соответствующих шаблону.fc-match
: Сопоставляет шаблон шрифта (пустой шаблон по умолчанию), используя обычные правила сопоставления Fontconfig, чтобы найти наиболее подходящий доступный шрифт.fc-cache
: Создает кэш всех читаемых шрифтов FreeType в указанном каталоге или создает кэш всех читаемых шрифтов FreeType из всех каталогов, указанных в файлах конфигурации.fc-cat
: Считывает информацию о шрифтах из файлов кэша или связанных с каталогами шрифтов и выдает ее в форме ASCII .fc-query
: Запрашивает файлы шрифтов и сообщает о полученных шаблонах.fc-scan
: Сканирует файлы и каталоги шрифтов и сообщает о полученных шаблонах.fc-pattern
: выводит список лучших шрифтов, соответствующих предоставленному шаблону(ам).fc-validate
: Проверка файлов шрифтов и отчет о результатах.Разрешение на использование, копирование, изменение, распространение и продажу данного программного обеспечения и документации к нему для любых целей настоящим предоставляется бесплатно при условии, что указанное выше уведомление об авторских правах присутствует во всех копиях и что и это уведомление об авторских правах, и данное уведомление о разрешении присутствуют в сопроводительной документации. , и что имя Кита Паккарда не будет использоваться в рекламе или рекламе, относящейся к distrkeithp.comibuttion программного обеспечения, без специального предварительного письменного разрешения...
Конфигурация шрифтов осуществляется небольшой библиотекой Fontconfig.