Смекни!
smekni.com

Администрирование Linux (стр. 2 из 2)

В выводимом листинге могут быть как шрифты так и алиасы, последние имеют короткое название.

7.3 Использование Font сервера.

Фонт сервер позволяет иметь одну единственную точку с которой все Х сервера будут загружать шрифты, что существенно облегчит конфигурирование систем с большим количеством Х серверов. Кроме того как было сказано выше, если Х сервер хочет работать с векторными шрифтами – он должен это делать исключительно через фонт сервер.

Запуск фонт сервера (если он не был запущен предварительно) осуществляется командой:

/usr/X11/bin/fs –daemon –port <TCP_port>

Для того чтобы фонт сервер запускался во время старта, нужно разрешить его автостарт выполнив:

/etc/set_parms font_c-s

Конфигурационный файл фонт сервера находится в каталоге /etc/X11/fs/config . По сигналу SIGUSR1 он перечитывает свою конфигурацию.

7.4 Описание шрифтов. XLFD формат.

Стандарт Х11 предусматривает язык описания шрифтов XLFD (XLogicalFontdescription). Согласно ему имя шрифта состоит из 15 позиций разделенных минусами:

FontNameRegistry-Foundry-FamilyName-Weightname-Slant-SetwidthName-AddStyle-Name-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-CharSetRegistry-CharSetCoding

Каким именно будет результирующее имя в XLFD формате зависит от типа фонт-запроса к Х серверу. Возможные типы запросов:

ReferenceXLFD Этот запрос идет при выполнениии команды xlsfonts и имя

берется из файла fonts.dir . Векторные шрифты при этом имеют PixelSize и PointSize нулевыми.

RequestXLFD В результате этого запроса будет получено XLFD имя

запрашиваемого шрифта или его алиас из файла font.alias. При этом поля содержащие * (обозначающие любое значение) будут заменены на ?

resolvedXLFD Это уже точное имя шрифта которое выддается сервером в ответ на запрос. Все поля являются заполненными, но результат может и не совпадать с исходным запросом.

7.5 XLFD синтаксис

FontNameRegistry авторитетный источник который зарегистрировал шрифт. Обычно пустое поле -

Foundry имя “оцифровщика” шрифта

FamilyName трейд-марка или коммерческое имя шрифта

WeightName[ext] относительный вес шрифта (жирность). Для векторных шрифтов может обозначать темность или светлось (параметр ext)

Slant[ext] напрвление шрифта (roman, italic, oblique, …) для векторных шрифтов параметр задает наклов в угловых единицах.

SetwithName ширина юнита (сжатый или растянутый)

AddStyleName[ext] название для уникальной идентификации шрифта (serife, cursive, …) В векторных шрифтах определят степень поворота или зеркальность шрифта.

PixelSize[ext] высота шрифта в пикселях. Для векторных шрифтов параметр указывает дополнительную растяжку по горизонтали.

PointSize[ext] размер кубика в поинтах.

ResolutionX Разрешение (горизонтальное и вертикальное) шрифта в

ResolutionY пикселях на инч. Если не указано сервер выбирает сам в зависимости от разрешения дистплея.

Spacing расстояние между юнитами в шрифте. (М – фиксированное,

Р – пропорциональное)

AverageWidthCредняя ширина шрифта

CharacterSetRegistry имя закрепленное X консорциумом за CharacterSetEncoding

CharacterSetEncoding определяет кодировку

Файл font.dir

Этот файл находится в каталогах файлов фонтов, он создается либо при инсталяции системы либо после выполнения команды mkfontdirдля растровых илиstmkdirs для векторных шрифтов. Он содержит в первой строчке количество шрифтов в директории а в последующих XLFD названия шрифтов.

7.6 Файл font.alias

Этот файл так же как и font.dir содержится в каталогах шрифтов и служит для лиасинга

длинных имен шрифтов в короткие которые затем легче использовать. После правки этого файла обязательно нужно выполнять команду

xsetfprehash

а также рестартовывать по сигналу SIGUSR1 фонт сервер.

7.7 Администрирование растровых шрифтов.

Для добавления растрового шрифта в систему нужно выполнить следующие действия:

· Если шрифт не в .pcf формате сконвеертировать его с помощью программы bdftopcf

· Скомпрессировать шрифт утилитой compress

· Скопировать в нужную директорию

· Запустить mkfontdir для модификации fonts.dir файла.

· Если директория со шрифтами используется только Х сервером то выполнить xsetfprehash , если она используется еще и фонт сервером то рестартовывать по сигналу SIGUSR1 фонт сервер.

Для удаления растрового шрифта из системы Х11 необходимо:

· Удалить фонт файл.

· Запустить mkfontdir для модификации fonts.dir файла.

· Если директория со шрифтами используется только Х сервером то выполнить xsetfprehash , если она используется еще и фонт сервером то рестартовывать по сигналу SIGUSR1 фонт сервер.

Для создания fonts.dir файла достаточно запустить mkfontdirуказав ей в качестве аргумента директорию со шрифтами.

7.8 Компилирование .BDF шрифтов в .PCF шрифты.

Растровые шрифты в системе Х11 могут быть представлены в нескольких формах:

· .pcf Переносимый бинарный формат описания шрифта

· .pcf.Z компрессированный .pcf

· .bdf текстовый формат

· .bdf.Z компрессированный .bdf

· .bcf компрессированный .bdf

· .snf не переносимый бинарный формат шрифта (использовался до X11R5)

· .snf.Z компрессированный .snf (использовался до X11R5)

· .scf компрессированный .snf (использовался до X11R5)

·

Предпочтительным форматом для Х сервера является компрессированый .pcf.

Для конвертации .bdf в .pcf с одновременной компрессией можно воспользоваться командой:

bdftopcf font_file.bdf | compress > font_file.pcf.Z