Font configuration/Examples (Русский)

From ArchWiki
Jump to: navigation, search
Состояние перевода: На этой странице представлен перевод статьи Font configuration/Examples. Дата последней синхронизации: 6 марта 2016. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Основная статья: Настройка шрифтов.

Настройки могут варьироваться в значительной степени. Пожалуйста, приводите примеры настроек Fontconfig с объяснением того, что они делают.

Хинтованные шрифты

$XDG_CONFIG_HOME/fontconfig/fonts.conf
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
	<match target="font">
		<edit mode="assign" name="antialias">
			<bool>true</bool>
		</edit>
		<edit mode="assign" name="embeddedbitmap">
			<bool>false</bool>
		</edit>
		<edit mode="assign" name="hinting">
			<bool>true</bool>
		</edit>
		<edit mode="assign" name="hintstyle">
			<const>hintslight</const>
		</edit>
		<edit mode="assign" name="lcdfilter">
			<const>lcddefault</const>
		</edit>
		<edit mode="assign" name="rgba">
			<const>rgb</const>
		</edit>
	</match>
</fontconfig>

Отключение хинтинга для курсивных или жирных шрифтов

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <match target="font" >
    <edit mode="assign" name="autohint">  <bool>true</bool></edit>
    <edit mode="assign" name="hinting">	  <bool>false</bool></edit>
    <edit mode="assign" name="lcdfilter"> <const>lcddefault</const></edit>
    <edit mode="assign" name="hintstyle"> <const>hintslight</const></edit>
    <edit mode="assign" name="antialias"> <bool>true</bool></edit>
    <edit mode="assign" name="rgba">      <const>rgb</const></edit>
  </match>

  <match target="font">
    <test name="pixelsize" qual="any" compare="more"><double>15</double></test>
    <edit mode="assign" name="lcdfilter"><const>lcdlight</const></edit>
    <edit mode="assign" name="hintstyle"><const>hintnone</const></edit>
  </match>

  <match target="font">
    <test name="weight" compare="more"><const>medium</const></test>
    <edit mode="assign" name="hintstyle"><const>hintnone</const></edit>
    <edit mode="assign" name="lcdfilter"><const>lcdlight</const></edit>
  </match>

  <match target="font">
    <test name="slant"  compare="not_eq"><double>0</double></test>
    <edit mode="assign" name="hintstyle"><const>hintnone</const></edit>
    <edit mode="assign" name="lcdfilter"><const>lcdlight</const></edit>
  </match>

</fontconfig>

Резкие шрифты

<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="antialias" mode="assign"><bool>true</bool></edit>
    <edit name="hinting" mode="assign"><bool>true</bool></edit>
    <edit name="hintstyle" mode="assign"><const>hintfull</const></edit>
    <edit name="lcdfilter" mode="assign"><const>lcddefault</const></edit>
    <edit name="rgba" mode="assign"><const>rgb</const></edit>
  </match>
</fontconfig>

Шрифты семейства Liberation

Для достижения единства шрифтов во всей системе все приложения должны быть настроены на использование псевдонимов serif, sans-serif и monospace, значения для которых должны быть выставлены в fontconfig. Шрифты Liberation были выбраны для того, чтобы придерживаться метрической совместимости со шрифтами MS Core.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <match target="font">
        <edit mode="assign" name="antialias"><bool>true</bool></edit>
        <edit mode="assign" name="autohint"><bool>false</bool></edit>
        <edit mode="assign" name="embeddedbitmap"><bool>false</bool></edit>
        <edit mode="assign" name="hinting"><bool>true</bool></edit>
        <edit mode="assign" name="hintstyle"><const>hintslight</const></edit>
        <edit mode="assign" name="lcdfilter"><const>lcddefault</const></edit>
        <edit mode="assign" name="rgba"><const>rgb</const></edit>
    </match>

    <match target="pattern">
        <test qual="any" name="family"><string>serif</string></test>
        <edit name="family" mode="assign" binding="same"><string>Liberation Serif</string></edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family"><string>sans-serif</string></test>
        <edit name="family" mode="assign" binding="same"><string>Liberation Sans</string></edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family"><string>monospace</string></test>
        <edit name="family" mode="assign" binding="same"><string>Liberation Mono</string></edit>
    </match>

    <match target="pattern">
        <edit name="dpi" mode="assign"><double>96</double></edit>
    </match>
</fontconfig>

Включение сглаживания (anti-aliasing) только для больших шрифтов

Некоторые пользователи предпочитают более чёткое отображение, которого anti-aliasing не позволяет добиться:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="antialias" mode="assign">
      <bool>false</bool>
    </edit>
  </match>

  <match target="font" >
    <test name="size" qual="any" compare="more">
      <double>12</double>
    </test>
    <edit name="antialias" mode="assign">
      <bool>true</bool>
    </edit>
  </match>

  <match target="font" >
    <test name="pixelsize" qual="any" compare="more">
      <double>16</double>
    </test>
    <edit name="antialias" mode="assign">
      <bool>true</bool>
    </edit>
  </match>
</fontconfig>

Шрифты Chrome OS

Веб-браузер и другие распространенные приложения используют шрифты (псевдонимы шрифтов) Serif, Sans-Serif и Monospace по умолчанию. Процедура изменения шрифтов по умолчанию похожа на их замену. Например, чтобы использовать шрифты Chrome OS из пакета ttf-chromeos-fontsAUR[ссылка недействительна: package not found]:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <!-- Set preferred serif, sans serif, and monospace fonts. -->
  <alias>
    <family>serif</family>
    <prefer><family>Tinos</family></prefer>
  </alias>
  <alias>
    <family>sans-serif</family>
    <prefer><family>Arimo</family></prefer>
  </alias>
  <alias>
    <family>sans</family>
    <prefer><family>Arimo</family></prefer>
  </alias>
  <alias>
    <family>monospace</family>
    <prefer><family>Cousine</family></prefer>
  </alias>
</fontconfig>

Патченные пакеты

Важно: Пакеты AUR поддерживаются отдельно от приложений из Официальных репозиториев. Вся графическая система может выйти из строя, если установленные пользователем основные графические библиотеки станут несовместимыми.
Примечание:
  • Как правило, необходима настройка.
  • Новое отображение шрифтов не начнется, пока не перезагрузите приложения.
  • Приложения которые статически ссылаются на библиотеку, не будут использовать патчи принятые к системной библиотеке.
  • freetype2-ubuntu — Настройки шрифтов поставляемых с Ubuntu. [1] [2]
https://launchpad.net/ubuntu/+source/freetype || freetype2-ubuntuAUR[ссылка недействительна: package not found] fontconfig-ubuntuAUR
  • Infinality — Файлы настроек шрифтов, патчи, и скрипты.
https://github.com/bohoomil/fontconfig-ultimate || freetype2-infinalityAUR fontconfig-infinalityAUR

Для восстановления непатченых пакетов, установите оригинальные пакеты freetype2, cairo, и fontconfig в качестве зависимостей (используя флаг --asdeps при переустановки с помощью pacman). Включите lib32-cairo, lib32-fontconfig, и lib32-freetype2 если вы также устанавливали 32-разрядные версии.

Смотрите также