Настройка и работа в Linux

         

Шрифты



 Мы включили в дистрибутив все известные нам свободные кириллические шрифты. Заметим, что часть известных шрифтов (из пакета PSCyr, например) имеют строгую лицензию, запрещающую их распространение на CD. Шрифты с
глифами кириллицы Вы найдете в пакетах: urw-fonts (стандартные urw-шрифты модифицировал Леонид Кантер, автор Black Cat Linux), cyrillic-Type1-fonts, vedi-Type1-fonts (декоративные шрифты проекта Vedi, с разрешения Николая
Дубины). При печати из большинства приложений используются шрифты Courier, Helvetica и Times, а то, какие из имеющихся шрифтов будут таковыми называться, определяется в файле /etc/gs/Fontmap. После установки шрифтовых
пакетов (устанавливайте только необходимые!) в /etc/gs появится несколько файлов Fontmap.*, их выбор нужно производить при помощи команды update-alternatives -config Fontmap (см. man update-altaernatives, доступен на русском
языке).

 Самым правильным выбором будет Fontmap.cyrillic. Он обеспечивает печать из многих правильно написанных приложений как кириллических текстов в любой кодировке, так и текстов Latin-1. Однако, если нужно печатать из Netscape
или ряда других, "неправильных" приложений с неинтернационализированной печатью, то русский текст будет отображаться символами Latin-1. Для того, чтобы обойти эту ошибку, применяются два способа: первый - правка бинарного
файла netscape, что запрещено его лицензий и потому неприемлемо для нас; второй - использование шрифтов, в которых под именами глифов Latin-1 находятся русские буквы. Второй способ не обеспечивает печать в среде с кодировкой,
отличной от KOI8-R, а также не дает возможности печатать тексты Latin-1 с символами, отличными от ASCII-7. Если Вам все же очень нужно печатать из netscape, то выберите в качестве Fontmap файл Fontmap.KOI8-R.

 Мы подготовили также один шрифт с глифами PT-154 (азиатская кириллица) на базе шрифта George Williams. Для печати текстов в этой кодировке используйте Fontmap.PT154. Надеемся, что в следующей версии дистрибутива таких
шрифтов будет больше.

 Для проверки правильности подбора шрифтов, напечатайте документ файл с расширением ps из какого-либо приложения, а затем просмотрите его при помощи gv или его аналогов в KDE и Gnome. Если все правильно, пусть и не очень
красиво, то этот этап Вы прошли успешно.

 О качестве печати. К сожалению, метрики шрифтов не учитываются практически всеми приложениями, но хуже всего с этим у netscape (при печати не-Latin-1). Русская и вообще не-Latin-1 печать из Mozilla в дистрибутиве
обеспечивается при помощи нашего исправления (в оригинальной Mozilla <= 0.8 она не работает вообще), которое является временной "подпоркой". Мы работаем над полным решением проблемы вместе с командой Mozilla.
 


Вообще-то, программа syscons при выводе каждого символа просто отправляет его код в "железку" - видео-контроллер, а тот уже отображает символ на дисплее теми шрифтами, которые у него имеются. Однако, современные видеокарты кроме "зашитых" шрифтов позволяют загружать и другие наборы символов. Это, в частности, позволяет видеокартам изображать символы кириллицы и дополнительные "экзотические" значки, отсутствующие в стандартном шрифте видеокарты.

Драйвер syscons поддерживает это свойство видеокарт, то есть предоставляет пользователю возможность загружать шрифты из файла. Точнее, роль самого syscons в этом процессе очень скромная, он просто копирует те данные, которые ему подсунет соответствующая программа, в видео-контроллер. А пользователь может использовать программу vidcontrol, которая считывает нужный файл со шрифтами и отправляет их в syscons (немного подробнее об этом в главе "Программа vidcontrol").

Готовые файлы шрифтов находятся в системе в директории /usr/share/syscons/fonts. Там же есть и файл с кратким описанием шрифтов.

Обратите внимание, что для каждого набора символов существует по крайней мере три разных файла, с разными размерами (в пикселах) символов - 8x8, 8x14, 8x16.

Дело в том, что видеокарта имеет несколько режимов отображения, отличающихся "плотностью" знаков (об этом немного ниже). Если в стандартном режиме, на экране изображается 25 строчек по 80 знаков каждая, то в других режимах на экране может быть 30, 43, 50 или даже 60 строк (естественно, это зависит от модели видеокарты). В одних режимах размер одиночного знака складывается из матрицы 8x16 точек, в других - 8x14 или 8x8. Соответственно, syscons может помнить три разных шрифта, отличающихся размером матрицы, и в нужный момент (при изменении режима отображения) загрузить в видеокарту подходящий шрифт.
В стандартном режиме (80x25) используются шрифты 8x16, но на всякий случай рекомендуется загружать все три типа шрифтов. Замечу, что обычно шрифты загружаются при старте системы, а какие именно - записано в соответствующих строчках /etc/rc.conf. Поэтому "рекомендуется загружать" означает, просто подправить нужные строчки в rc.conf, а если вы уже выполнили все необходимые действия по русификации системы, то у вас и так уже загружается "все, что нужно". (Подробности о русификации в главе

"Русификация syscons")

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



Содержание раздела