Сегодня 26 мая, воскресенье ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7273
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Евгений Ламской
Евгений Ламской
Голосов: 1
Адрес блога: http://lamskoy.livejournal.com/
Добавлен: 2010-05-18 17:01:15
 

Gentoo - сглаживание шрифтов

2010-01-24 19:40:14 (читать в оригинале)

Сегодня расскажу как я настраивал сглаживание шрифтов в Gentoo Linux


Суть сводится к трем шагам:

1. Собрать пакеты cairo, libXft, fontconfig, freetype с примененными патчами для сглаживания (cleartype). В полной мере эти пакеты с патчами доступны в оверлее devnull, официальный репозиторий более консервативен.
2. Настроить fontconfig и поправить /etc/fonts/local.conf. В gentoo есть прекрасная утилита eselect, ей и будем производить манипуляции с настройками fontconfig
3. Перезапустить иксы


Теперь по порядку и детальнее:

1. Подключаем оверлей devnull

Если layman не установлен, устанавливаем:
emerge -av layman


Подключаем сам оверлей:
layman -a devnull


В /etc/make.conf добавляем:
PORTDIR_OVERLAY=""
source /usr/local/portage/layman/make.conf


2. Теперь необходимо размаскировать пакеты cairo, freetype, libXft, fontconfig.

Правим/создаем если не создан /etc/portage/package.keywords:

media-libs/fontconfig ~x86
x11-libs/cairo ~x86
media-libs/freetype ~x86
x11-libs/libXft ~x86

Естественно, вместо x86 нужно указать свою архитектуру - amd64 например.

3. Устанавливаем USE-флаги для наших пакетов

Добавляем глобальный флаг cleartype:
euse -a cleartype


И локальные в /etc/portage/package.use:
media-libs/freetype bindist


4. Собираем пакеты:
emerge -avN cairo freetype libXft fontconfig


Запускаем etc-update после инсталляции пакетов и заменяем старые конфиги fontconfig на новые.

5. Настраиваем fontconfig.

Делаем eselect fontconfig list, смотрим какие конфиги подключены.

Чтобы включить субпиксельное сглаживание, необходимо выключить
(eselect fontconfig disable N, где N- номер конфига)
следующие конфиги:
10-no-sub-pixel.conf
10-unhinted.conf

и включить один из:
10-sub-pixel-bgr.conf
10-sub-pixel-rgb.conf
10-sub-pixel-vbgr.conf
10-sub-pixel-vrgb.conf

В большинстве случаев это 10-sub-pixel-rgb.conf

Ниже привожу свою конфигурацию fontconfig

Available fontconfig .conf files ( * is enabled ):
[1] 10-autohint.conf *
[2] 10-no-sub-pixel.conf
[3] 10-sub-pixel-bgr.conf
[4] 10-sub-pixel-rgb.conf *
[5] 10-sub-pixel-vbgr.conf
[6] 10-sub-pixel-vrgb.conf
[7] 10-unhinted.conf
[8] 20-fix-globaladvance.conf *
[9] 20-unhint-small-dejavu-sans.conf
[10] 20-unhint-small-dejavu-sans-mono.conf
[11] 20-unhint-small-dejavu-serif.conf
[12] 20-unhint-small-vera.conf *
[13] 25-unhint-nonlatin.conf
[14] 30-metric-aliases.conf *
[15] 30-urw-aliases.conf *
[16] 40-nonlatin.conf *
[17] 45-latin.conf *
[18] 49-sansserif.conf *
[19] 50-user.conf *
[20] 51-local.conf *
[21] 57-dejavu-sans.conf *
[22] 57-dejavu-sans-mono.conf *
[23] 57-dejavu-serif.conf *
[24] 60-latin.conf *
[25] 65-fonts-persian.conf *
[26] 65-khmer.conf
[27] 65-nonlatin.conf *
[28] 69-unifont.conf *
[29] 70-no-bitmaps.conf *
[30] 70-yes-bitmaps.conf
[31] 80-delicious.conf *
[32] 90-synthetic.conf *


6. Настраиваем hinting.

Создаем/правим /etc/fonts/local.conf:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/local.conf file to configure system font access -->
<fontconfig>
    <match target="font">
        <edit name="hinting" mode="assign"><bool>true</bool></edit>
        <edit name="hintstyle" mode="assign"><const>hintslight</const></edit>
    </match>
</fontconfig>
 


Параметр hintstyle можно выставить в hintslight, hintmedium, hintfull и поэкспериментировать - какой стиль хинтинга вам ближе по душе.

Мои предпочтения указаны выше :)

7. Перегружаем иксы и наслаждаемся красивым сглаживанием шрифтов :)

Тэги: cairo, fontconfig, freetype, gentoo, libxft, linux

 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по количеству голосов (152) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.