LinuxBegin.ru - offline-версия от 26.04.2004
Главная | Все темы | Все статьи | Ссылки | Аналоги Windows-программ в Linux | Top 20

Подключаем ttf-шрифты к X Window.
(Все об X-Window / XFree86)


- Valery V. Kachurov, 15.11.01. -

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

Если у вас Mandrake Linux, то установить TTF шрифты на вашу систему просто - нужно всего лишь зайти в DrakFont (программу для конфигурации шрифтов системы) и нажать "Импортировать TTF шрифты", или что-то в этом роде. Он берет все файлы с расширением .ttf из C:WindowsFonts. Да и в других новых дистрибутивах, возможно, есть подобные программы, цель которых - упростить установку новых TTF шрифтов в систему.

Во всех остальных случаях приходится все делать вручную. Я нашел 2 непохожих друг на друга варианта подключения TTF шрифтов. 1 вариант я проверял - по крайней мере, в Gnome новые TTF-шрифты стали тут же доступны. А второй вариант у меня не получилось проверить из-за отсутствия xfstt :). Но все равно - оба варианта имеют право на существование...

1) Взято из Gimp.ru FAQ. "Как мне добавить поддержку TTF под X 4.0.x?"

Шаг1: Откройте новый терминал и залогиньтесь root.
'su'
Если у Вас нет прав root далее вы можете не читать. Потому что вы не сможете установиь поддержку TTF без прав администратора. Так, в случае отсутствия у вас таких прав, попросите вашего системного администратора сделать это для вас.

Шаг2: Откройте файл
'/etc/X11/XF86config'
с помощью текстового редактора или т.п. Найдите следующую строку в 'Section "Files"': FontPath "/usr/X11R6/lib/X11/fonts/truetype"'

Добавьте это в 'Section "Module"'
'Load "freetype"'

Сохраните XF86config.

Шаг3: Создайте следующую директорию, если она еще не была создана: '/usr/X11R6/lib/X11/fonts/truetype'

Шаг4: Найдите красивые TT-Fonts. Я советую вам заглянуть на www.fontfreak.com. Распакуйте шрифты и скопируйте только 'fontname.ttf' файлы в '/usr/X11R6/lib/X11/fonts/truetype'
Внимание: Если вы скопируете файлы с расширениями отличными от .ttf в эту директорию, ничего работать не будет!

Шаг5: Зайдите в директорию
'/usr/X11R6/lib/X11/fonts/truetype'
и выполните следующую команду:
'ttmkfdir > /usr/X11R6/lib/X11/fonts/truetype/fonts.dir'
это создаст список шрифтов fonts.dir, что необходимо для xfree чтобы распознавать ttf.

Шаг6: Перезапустите ваш XServer и ваши новые шрифты установлены!

2) "Использование TTF в Linux" a.k.a. TTF for Linux mini HOWTO.

Любой, кто использовал Windows95/98, сразу же вспомнит, что True Type - это хорошее изобретение, особенно отдельно от "операционных систем от MicroSoft (R, tm, C, что-там-еще)" ;)

Итак - поехали:

TTF шрифты: либо берем их с ближайшей машины с windows, (но при этом очень важно, чтобы windows был как минимум OSR2, и шрифты были Unicode);
либо идем на MicroSoft TrueType download page и берем понравившиеся шрифты. Второе предпочтительнее, ибо легально, законно, да и шрифты там посвежее...

X-TrueType server: Берем замечательную программу xfstt-0.9.10 (готовый .rpm), или ее же в исходниках , собираем или устанавливаем.

При установке .rpm требует библиотеку libstdc++.so.2.9, которая (как правило) не входит в
стандартную поставку Linux. Не беда - достаточно сделать симлинк на libstdc++.so.2.8.0 (ln -s /usr/lib/ libstdc++.so.2.8.0 /usr/lib/libstdc++.so.2.9). Если у Вас нет и libstdc++.so.2.8.0 - то установите ее, файл libstdc++-2.8.0-14.i386.rpm входит в поставку RedHat 5.2, или же его можно взять вот здесь.

При сборке xfstt из исходников, кроме вышеупомянутой libstdc++-2.8.0 , понадобится еще и libstdc++-devel-2.8.0, которую можно взять здесь, или найти в дистрибутиве RedHat 5.2. После установки xfstt я рекомендую прочитать идущую с ним документацию - там описываются все действия, необходимые для настройки системы под нормальную работу с ttf. Если же читать все-таки лень - то ниже перечислены уж совсем обязательные моменты ;)

Необходимые настройки:

Создать директорию /usr/ttfonts, и положить туда все *.ttf.
Проверить, работает ли xfstt, набрав xfstt --sync, результатом чего должна быть строка типа "syncing ...files in directory, ...files sync", и в директории /usr/ttfonts должны появиться два файла ttname.dir и ttinfo.dir. Если все происходит так - то ура, осталось совсем малость - прописать fontpath, запустить xfstt и после чего - X.
Пропишите fontpath - добавьте в файл /etc/X11/X86Config строку FontPath "unix/:7100"
Запустите xfstt - xfstt &
Запустите X

В Х-ах:
Запустите xfontsel, выберите fndry, и посмотрите - есть ли там пункт ttf? Если да - то все работает ок, и можно переходить к тонкой настройке xfstt.

Выйдите из Х-ов.
Выключите xsftt - ps ax|grep xfstt, kill (xfstt's pid) или /etc/rc.d/init.d/xfstt stop
В директории /etc/rc.d/init.d есть файл xfstt - это скрипт запуска xfstt при загрузке системы. Отредактируйте его следующим образом:
В строку запуска ($XFSTT --dir $TTFONTS) добавьте
--encoding windows-1251,koi8-r,iso8859-1 --res 120,
в которой "--encoding" означает выбор кодировок для фонтов, а "--res" - разрешение, в котором фонты будут представлены. По умолчанию, X-server представляет фонты в разрешении 72dpi, что слишком мелко. Я рекомендую устанавливать --res 96 для разрешений до 1024х768, и --res 120 для более высоких разрешений.
Запустите xfstt - /etc/rc.d/init.d/xfstt start
Запустите X
Готово ;).

Если Вы решили положить .TTF в директорию, отличную от /usr/ttfonts - тогда отредактируйте в скрипте /etc/rc.d/init.d/xfstt параметр $TTFONTS, но при этом помните, что в этом случае все манипуляции с xfstt вроде xfstt --sync, если Вы поставили еще пару десятков шрифтов, и хотите убедиться, что они доступны для сервера, Вам необходимо будет проводить, указывая xfstt директорию со шрифтами:
xfstt --dir /your/path/to/ttf --(command)
Злая бед причина заключена в том, что директория /usr/ttfonts определена в самой программе xsftt, и для изменения этого параметра необходимо пересобрать программу, изменив значение TTFONTDIR в файле xfstt.cpp.

Просмотров: 3431  |  Рейтинг статьи: 3.25 (Голосов: 4).
3.25
Дата размещения статьи: 2002-12-07 18:20:57



5 последних поступлений в раздел Все об X-Window / XFree86:

12.09.03: Графический интерфейс Linux. (Операционная система Linux заняла достойное место на серверах, но пока еще не завоевала признания бол...)
17.07.03: Настройка X-Window (В последнее время в моем почтовом ящике все чаще стали попадаться письма с просьбой помочь в установк...)
15.05.03: Настройка режима монитора в XFree86. Version 1.3 (Решаемая нами задача: запустить монитор под X и поставить достаточно максимальные параметры. Если мы ...)
19.03.03: X-терминалы Linux (Мы рассмотрим два варианта организации X-терминалов на ПК, выступающих в роли "толстых клиентов", то ...)
07.03.03: Использование бездисковых X-терминалов на базе Linux-PC (Вы еще не используете X-терминалы? Зря. Linux - система многопользовательская, и позволив нескольким ...)

Комментарии:

LinuxBegin.ru © 2003-2004 Valery V. Kachurov | Условия использования материалов | О проекте