Типы шрифтов
В Solaris 2.5 используется OpenWindows 3.5 соответсвующая X11R5, соответственно
если вы имели опыт работы с X11R5 то многое вы уже знаете.
Итак, OpenWindows поддерживает основные виды шрифтов:
-
Растровые (bdf, pcf)
-
Векторные - Type1 (pfb, pfa)
Путь поиска шрифтов - fontpath
В Х сервере имеется так называемый fontpath - набор каталогов в
которых находятся шрифты. Таким образом в процессе работы с Х сервером
возможно подключение или отключение шрифтов. Для настройки X сервера используется
команда xset, позволяющая устанавливать различные аспекты работы
Х сервера. Рассмотрим приемы работы с fontpath.
-
xset q - Показывает текущие настройки Х сервера, в том числе и
fontpath
-
xset <fp+ | +fp> <имя_каталога_с_шрифтами> - добавляет указанный
каталог в fontpath, после этого становятся доступными шрифты находящиеся
в заданном каталоге.
-
xset <fp- | -fp> <имя_каталога_с_шрифтами> - удаляет указанный
каталог из fontpath.
-
xlsfonts - показывает список шрифтов находящихся с каталогах указанных
в fontpath. Так как этот список, обычно, очень большой, то xlsfonts
используется с командой grep. Например команда xlsfonts
| grep koi8 | grep helvetica покажет вам все шрифты с гарнитурой
helvetica в кодировке KOI8.
Примечание: обратите внимание на префиксное и постфиксное написание
команды xset:
xset +fp /dir - добавляет /dir в начало
fontpath
xset fp+ /dir - добавляет /dir в конец fontpath
Таким образом можно подставлять свои шрифты, так как список шрифтов создается
на порядке расположения каталогов в fontpath и при поиске используется
первый найденный.
Где и как задавать fontpath
Добалять каталоги с шрифтами, в fontpath можно несколькими способами.
-
Путем указания каталогов с шрифтами в файле /usr/openwin/lib/locale/ru/OWfontpath,
где ru заменяйте на ваше locale (если надо). Внимание! Этот
файл считывается скриптом /usr/openwin/lib/openwin-sys при загрузке
OpenWindows или /usr/dt/config/Xsetup - если у вас установлен
CDE).
-
Указанием команды xset в файле /usr/openwin/lib/Xinitrc (про
xset см. выше)
-
Указанием каталогов или сервера шрифтов в каталоге /usr/openwin/lib/X11/fontserver.cfg
Подробнее о сервере шрифтов см. fs(1)
Примечание 1: В конце файла OWfontpathдолжен быть перевод
строки, иначе ничего не получится.
Примечание 2: По умолчанию в каталоги указанные в файле OWfontpath
добавляются в конецfontpath, если вам необходимо добавить их в начало
fontpath, то просто добавьте пустую строку в начало файла OWfontpath.
Примечание 2: Для всех вышеуказанных файлов можно указать локальный
вариант в своем домашнем каталоге. Таким образом каждый пользователь может
настроить себе окружение как хочет, не прибегая к услугам администратора.
Более правильно говоря:
-
Глобальные файлы используются для system wide настройки. Раз и навсегда
:)
-
Локальные соответсвенно для дальнейшей настройки или для тестирования.
Глобальное имя |
Локальное имя |
/usr/openwin/lib/Xdefaults |
~/.Xdefaults |
/usr/openwin/lib/Xinitrc |
~/.xinitrc |
/usr/openwin/lib/locale/ru/OWfontpath |
~/.OWfontpath |
Будьте внимательны! Xinitrc загружает ресурсы из Xdefaults
затем из ~/.Xdefaults, далее запускает openwin-sys, который
в свою очередь подключает шрифты из OWfontpath и затем из ~/.OWfontpath
Так что если вы хотите запускать какую либо программу при запуске OpenWindows
используйте ~/.openwin-init или просто сохраняйте расположение
окон - Save Workspace.
Подключение растровых шрифтов
-
Копируем шрифты в какой-нибудь каталог (хотя лучше сразу привыкать к порядку
- в /usr/local/lib/X11/fonts/test - test замените на какое-нибудь значащее
имя)
-
В этом каталоге выполняем команду mkfontdir - результатом которой будет
файл fonts.dir
-
Если надо создайте файл fonts.alias
-
Попробуйте подключить шрифты вручную - xset fp+ `pwd`
-
Проверьте шрифты xfd <имя-вашего-шрифта>
-
Добавьте ваш каталог в файл OWfontpath
-
Перезагружайте сервер - (это необязательно - только для проверки указания
в OWfontpath) и наслаждайтесь.
Подключение Type1 (Postscript) шрифтов.
Подключение шрифтов Type1 производится аналогично за исключением следующих
моментов: (например мы устанавливаем шрифты в каталог $DIR)
-
Внимание! Шрифты должны быть в формате pfa/afm
-
В каталог $DIR копируем все шрифты (*.pfa)
-
Создаем каталог $DIR/afm и копируем туда метрики (*.afm)
-
Создаем файл fonts.scale следующего формата:
<число_шрифтов>
имя_файла -полное-имя-шрифта-
Причем все размеры (высота шрифта, dpi и т.д.) укажите нулями. И вместо
koi8-r укажите koi8r-1 !!
-
Запускаем команду mkfontdir - которая просто копирует fonts.scale
в fonts.dir
-
Запускаем команду makepsres
-
Далее аналогично как и для растровых шрифтов
Правда далеко не все шрифты хотят работать с OpenWindows :(
При подготовке этой страницы использована информация
предоставленная:
"Vladimir
A. Pertsel" <voldemar@sagantec.co.il>