Є кілька способів додати фонти в X. По-перше, XFree86 має font path. який є просто список декількох каталогів або фонт-серверів. в яких здійснюється пошук фонтів. Фонт-сервер - це просто фоновий процес, який робить фонти доступними для XFree86. Перевага фонт-сервера в тому, що він може посилати шрифти на віддалений дисплей.
Нещодавно фонт-сервер xfs (the `` X font server '') був доопрацьований з метою забезпечення підтримки шрифтів TrueType і забезпечення можливості запуску його як окремої програми. Доопрацьовані версії поставляються з збірками, заснованими на Red Hat, і включені в XFree86 3.9.17 (новітня версія на момент написання цього документа; програма буде включена і до складу XFree86 4.0). xfs є насправді окремий фонт-сервер, який входить до складу XFree86. Його вихідний код є частиною дерева вихідних текстів XFree86. Однак віднедавна в дистрибутиви включається версія програми, яка може працювати в режимі окремо запускається програми. Окремий фонт-сервер для X з підтримкою шрифтів TrueType (підтримка TrueType здійснюється окремим фонт-сервером, який називається xfsft) - це, ймовірно, найбільш вдалий з доступних на сьогоднішній день рішень з управління фонтами. Воно має такі переваги:- Забезпечується підтримка різних типів фонтів, включаючи Type1, TrueType і растрові шрифти.
- Забезпечується доступ до шрифтів з віддалених дисплеїв.
- Зазнає суттєвого спрощення редагування шляху до шрифтів - Ви можете тепер робити це з командного рядка за допомогою утиліти chkfontpath. в той час як раніше треба було редагувати конфігураційні файли. Це не тільки полегшує життя користувачів, але і спрощує створення пакетів ПО, а також їх установку.
команда Type1inst
Найпростіший спосіб зробити фонти Type1 доступними для X - це скористатися утилітою Type1inst. Це скрипт на мові perl, який автоматично створює файли fonts.dir і fonts.scale, які необхідні для того, щоб X-и могли використовувати фонти. Просто перейдіть в каталог з фонтами і запустіть type1inst.
Якщо у Вас є пакет xfs
Тоді Вам залишається тільки додати ім'я каталогу з фонтами до fontpath. Якщо пакет xfs у Вас вже запущений, Ви можете зробити це шляхом редагування конфігураційного файлу xfs. Користувачі Redhat можуть використовувати команду chkfontpath. наступним образомchkfontpath --add directory.
Тепер Ваші фонти повинні бути доступні для X. Тільки запустіть команду і X-сервер зможе знайти нові фонти.
Якщо у Вас немає пакета xfs
В цьому випадку Вам необхідно додати ім'я каталогу, що містить файли Ваших нових фонтів, до переліку каталогів фонтів (font path) одним із способів, описаних вище.
Додавання фонтів TrueType трохи складніше, тому що Ви повинні мати фонт-сервер, який може обслуговувати фонти TrueType. Існують два фонт-сервера, здатні робити це - xfstt і xfs.
xfstt - це фонт-сервер для фонтів TrueType. Хоча він легко конфігурується і цілком працездатний, однак здається, що xfs стає більш популярним. Головна перевага xfs в порівнянні з xfstt полягає в тому, що він підтримує як фонти Type1, так і фонти TrueType.
Деякі з новітніх дистрибутивів Лінукса поставляються з сервером фонтів xfs. сконфігурованим як окремо запускається програма. Зокрема, Redhat і все засновані на redhat дистрибутиви використовують таку версію xfs з вбудованою підтримкою фонтів TrueType. Debian теж постачає xfs. але їх версія не має вбудованої підтримки true type.
Запуск xfs як окремої програми має кілька переваг, особливо якщо є вбудована підтримка фонтів TrueType. Головна перевага полягає в тому, що оскільки фонт-сервер не є більш частиною X-сервера, з'являється можливість надавати шрифти віддаленим дисплеям. Крім того, сильно спрощується модифікація переліку каталогів фонтів (font path).
Перелік каталогів фонтів xfs
Як фонт-сервер, xfs має свій власний перелік каталогів з фонтами (font path). Може виникнути питання: а навіщо він потрібен і де його місце в загальній картині. Він працює таким чином: Ви включаєте посилання на фонт-сервер xfs до переліку каталогів фонтів XFree86, додаючи в нього такий рядок: unix /: port. Після цього будь-який фонт, що знаходиться в одному з каталогів, включених до переліку каталогів фонтів xfs. стає доступним для XFree86.
Сам перелік каталогів фонтів xfs визначається в файлі конфігурації xfs. У Redhat це / etc / X11 / fs / config. в Debian - / etc / X11 / xfs / config. Користувачі Redhat не зобов'язані редагувати цей файл вручну, вони можуть скористатися утилітою chkfontpath. Її синтаксис дуже простий: Користувачі інших дистрибутивів повинні відредагувати цей файл приблизно наступним чином: В наведеному прикладі до переліку каталогів фонтів xfs доданий каталог / usr / share / fonts / my_new_fonts /. Зверніть увагу на те, що останній рядок в списку пошукових систем не містить коми в кінці. Для того, щоб зроблені зміни вступили в силу, потрібно перезапустити сервер xfs. Непогано взагалі перезапустити сесію X після перезапуску xfs.
Установка фонтів для xfs
Для того, щоб підготувати використання фонта через фонт-сервер xfs. Ви повинні виконати наступні кроки:- Якщо xfs, ви не маєте, встановіть його.
- Помістіть нові шрифти в каталог.
- Якщо Ви встановлюєте фонти Type1, підготуйте цей каталог для сервера, для чого запустіть в цьому каталозі скрипт type1inst.
- Якщо Ви встановлюєте фонти TrueType, (пам'ятаєте, що не всі дистрибутиви можуть використовувати фонти TrueType через xfs!), Підготуйте новий каталог для сервера, для чого запустіть команди: в каталозі, що містить Ваші нові фонти. ttmkfdir входить до складу пакету freetype.
- Тепер Ви можете додати новий каталог до переліку каталогів фонтів xfs. Користувачі дистрибутивів, заснованих на Redhat, можуть зробити це за допомогою утиліти chkfontpath. В іншому випадку це можна зробити редагуванням конфігураційного файлу xfs.
- Якщо xfs вже встановлено у Вашій системі, Ви повинні визначити, який порт використовує ця програма. Це можна зробити наступним чином:
- Потім перевірте перелік каталогів фонтів XFree86:
- Якщо перелік каталогів фонтів XFree86 містить рядок типу unix: / port_number. де port_number збігається з номером порту, які використовуються програмою xfs. то сервер xfs у Вас встановлений коректно. В іншому випадку, Ви повинні додати посилання на нього в перелік каталогів фонтів XFree86: Щоб це підключення виконувалося автоматично, відредагуйте Ваш файл .xinitrc так, як це було пояснено вище. Щоб зміни діяли у всій системі, відредагуйте файл конфігураційний файл XF86Config (це або / etc / X11 / XF86Config. Або / etc / XF86Config. Або / usr / X11R6 / lib / X11 / XF86Config), додавши в нього рядок FontPath "unix: / port_number "в секцію" Files ". Ось приклад:
- Якщо xfs встановлений коректно, Ви можете перестартовать його так:
- Після того, як Ви провели перезапуск xfs. перезапустіть також X-сесію.