CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
22.10.2017

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Окружение :: Шрифты

И снова про шрифты в Иксах

Страницы: 1 :: 2 :: следующая

Казалось бы, шрифты — это такая консервативная штука, что за короткий срок каких-либо принципиальных изменений в этой сфере ожидать трудно. Однако едва прошло три года со времени публикации статьи Система X Window и шрифты, как она оказалась несколько устаревшей. Не принципиально, но ряд моментов определенно требует корректив.

Для начала отмечу те моменты из указанной статьи, которые остались неизменными. Это:

  • представление о семействах и типах гарнитур, шрифтоначертаниях и тому подобных полиграфических аспектах (что более подробно описано здесь);
  • понятие о растровых и векторных шрифтах и их форматах;
  • принципы описания шрифтов в оконной системе X;
  • базовые методы установки шрифтов и настройки доступа к ним.

Однако местами и тут требуются некоторые дополнения, которые, правда, далеко не всегда затрагивают конечного пользователя, так как привели только к упрощению его жизни.

По отношению к полиграфии в шрифтовом хозяйстве ничего не меняется веками. Добавляются, конечно, новые гарнитуры, — но это, если не считать отчетливо декоративных шрифтов, не более чем модификации гарнитур, существующих с конца XVIII столетия.

Ничего не поменялось и с растровыми шрифтами. А вот для векторных шрифтов получил распространение относительно новый формат — Open Type, представляющий собой расширение формата True Type, в частности, так называемой расширенной типографики.

Расширенная типографика основывается на разделении понятий символа (в смысле character), то есть численного кода некоего знака (пардон, тут получается сплошная тавтология, но ничего не поделаешь, думаю, вы меня понимаете) и его визуального представления (глифа или, на исконно праславянском языке, графемы).

Разницу между символом (для определенности далее будем рассматривать только алфавитные символы, но это относится и ко всем остальным) и его графическим представлением легко поймет каждый, кому приходилось видеть старые книги с буквицами в начале глав и подзаголовками, набранными капителью (small caps — строчные буквы, выглядящие как заглавные): это разные графические представления букв, имеющих один и тот же численный код.

Ранее для воспроизведения различных глифов одного набора символов требовалось создавать специальные шрифтоначертания в дополнение к основным. Формат же Open Type позволяет по определённым правилам осуществлять подмену базового глифа каким-либо из дополнительных внутри одного и того шрифтового файла.

Собственно, Open Type — это не столько формат, сколько некий контейнер, который может вмещать в себя как контуры шрифтов в формате True Type, так и PostScript-контуры. Шрифтовые файлы первых имеют в названии суффикс ttf, то есть неотличимы от обычных шрифтов True Type. Однако они поддерживают все расширения Open Type — если, конечно, они поддерживаются операционной системой и конкретными приложениями. Если нет — то шрифты Open Type ведут себя как обычные True Type.

Имена файлов шрифтов, данные которых описываются в формате PostScript, отличаются суффиксом oft. В остальном о них можно сказать то же самое, что и об Open Type в TrueType-версии.

Все шрифты формата Open Type отличаются сквозной поддержкой Unicode и, следовательно, потенциально могут быть русифицированы. Впрочем, следует помнить, что, вопреки распространенному заблуждению, поддержка Unicode сама по себе не добавляет волшебным образом в шрифтовой набор глифов кириллические символы: глифы эти предварительно кто-то должен создать. Если для данного шрифтового набора этого до сих пор никто не сделал, то никаких русских букв в нём не появится, будь он хоть трижды юникодовым.

В одной системе могут сосуществовать обе версии шрифтов Open Type. Однако при наличии выбора резонные люди рекомендуют использовать TTF-версию. Тому есть ряд причин, в обсуждение которых мы вдаваться не будем, а просто последуем совету. Тем более, что шрифтов Open Type в OTF-версии мало вообще, а свободных, да еще и поддерживающих кириллицу — и того меньше.

Принципы описания шрифтов в Иксах ничуть не изменились. Новым теперь является только то, что к этой процедуре приходится прибегать всё реже и реже. Во-первых, всё больше и больше часто используемых приложений позволяет настроить шрифты своими внутренними средствами, и необходимость в создании файлов типа .Xdefaults, требующего ручного описания используемых шрифтов, постепенно отпадает.

Во-вторых, с некоторых пор пропала нужда и в наполнении файлов fonts.dir и fonts.scale, Для установки шрифтов нынче достаточно поместить их в соответствующий каталог и, если раньше он не фигурировал среди путей в файле /etc/X11/xorg.conf, исправить это упущение, внеся в секцию

Section «Files»

соответствующую строку (какую — скажу чуть позже). Пререзапуск сеанса Иксов (и тем более рестарт машины) не нужен: достаточно обновить кэш шрифтов командой

$ fc-cache -fv

данной от лица суперпользователя. Пошелестев некоторое время винчестером, она выведет на экран нечто вроде такого:

/usr/share/fonts/OTF: caching, new cache contents: 5 fonts, 0 dirs
/usr/share/fonts/TTF: caching, new cache contents: 95 fonts, 0 dirs
...
/var/cache/fontconfig: cleaning cache directory
/root/.fontconfig: not cleaning non-existent cache directory
fc-cache: succeeded

Теперь установленные шрифты будут доступны всем вновь запущенным приложениям. Приложения, начавшие работу до очистки кеша, надо будет перезапустить.

Обратим внимание на пути, приведённые в выводе последней команды. Да, теперь все шрифты для Иксов собираются в подкаталогах каталога /usr/share/fonts/. В данном примере, данном для дистрибутива Zenwalk, это подкаталоги /usr/share/fonts/TTF (для шрифтов True Type), /usr/share/fonts/Type1 (для шрифтов Adobe Type) и /usr/share/fonts/misc (для различных растровых немасштабируемых шрифтов), прочие подкаталоги в этом дистрибутиве пусты.

В других дистрибутивах имена подкаталогов могут несколько отличаться. Так, в Ubuntu каталог /usr/share/fonts/ содержит подкаталоги X11 (для шрифтов из комплекта Xorg), truetype и type1 (для TTF- и ATM-шрифтов соответственно). Однако базовый каталог для шрифтовых файлов во всех современных дистрибутивах Linux (но не во FreeBSD) остаётся одним и тем же.

Правда, часто (например, в том же Zenwalk'е) можно видеть и старые хранилища шрифтовых каталогов с неуклюжими путями вроде /usr/X11R6/lib/X11/fonts или /usr/X11/lib/X11/fonts, но это символические ссылки на /usr/share/fonts/, сохранённые совместимости ради. А в Ubuntu и от этих ссылок избавились.

В общем-то, всё это мелочи, которые, однако, здорово упрощают жизнь. Из числа же более кардинальных изменений главное — это резкое расширение ассортимента доступных шрифтов вообще и кириллических — в частности.

Кое-кому ещё памятно время, когда список кириллических шрифтов в Иксах исчерпывался сначала растровым набором фирмы Cronix, удостоившимся чести стать штатным компонентом XFree86, а потом и Xorg — именно он размещается в подкаталоге cyrillic и поныне (если, конечно, этот подкаталог не пуст).

Потом к базовому набору присоединились, с одной стороны, растровые шрифты Дмитрия Болховитянова (расширенный и улучшенный вариант шрифтов Cronix), а с другой — масштабируемые Adobe Type 1, правда, в очень ограниченном количестве, поддерживающие только восьмибитные кодировки и не всегда безупречные лицензионно.

Однако время восьмибитных кодировок уходило в прошлое, а вместе с ними уходили и прежние шрифты, как растровые, так и Type 1, поскольку и для тех, и для других поддержка Unicode или отсутствовала, или была реализована кривовато. Наступало время UTF8 и шрифтов TrueType.

Не то чтобы их у нас совсем не было. Еще на заре тысячелетия появился свободный, лицензионно чистый шрифтовой набор Валентина Филиппова, включавший как Type1, так и TTF, причем изначально в кодировке UTF8. Однако он не получил широкого распространения даже в своём отечестве, а уж в других отечествах — и подавно. Почему — сказать трудно. Лично для меня главной причиной отказа от этого набора послужил моноширинный шрифт, мало подходящий для терминала или текстового редактора. В настоящее время развитие этого пакета, насколько мне известно, прекратилось, и сами шрифты отыскать в сети нелегко.

На многие годы любимыми шрифтами линуксоидов всех стран и народов стали, как ни странно, шрифты от Microsoft. Они ни разу не свободны, но их можно легально и бесплатно скачать из сети и использовать в личных целях. Правда, распространяться в составе дистрибутивов они не могут — пакеты под названиями mscorefonts, ms-ttfonts и тому подобными представляют собой, в сущности, просто сценарии для их получения с соответствующих серверов, распаковки и установки. При отсутствии же в составе данного дистрибутива пакета такого рода пользователь должен был установить шрифты от MS вручную.

Конечно, в нашей стране это мало кто делал (и делает) по понятным причинам. Тем не менее, опишу соответствующую процедуру чисто для представления о том, как законопослушный гражданин должен использовать продукцию Самой Великой Софтверной компании, если за него об этом не подумали майнтайнеры его дистрибутива.

Для начала следовало скачать архивированные шрифтовые файлы с одного из полуофициальных их источников. Главный из таковых — сайт Sourceforge, но их можно найти и в ряде других мест. Точные и актуальные адреса можно подсмотреть, например, в Make-файле соответствующего порта FreeBSD.

Полный список бесплатных шрфтов от MS включает следующие файлы: andale32.exe, arial32.exe, arialb32.exe, comic32.exe, courie32.exe, georgi32.exe, impact32.exe, times32.exe, trebuc32.exe, verdan32.exe, webdin32.exe, из которых comic имеет декоративный характер, а webdin — вообще не столько шрифт, сколько набор картинок в ttf-формате.

Всё это — самораспаковывающиеся cab-архивы, ибо их распространение в любом другом виде где-то когда-то кем-то запрещено. Самораспаковывающаяся их сущность проявляется, естественно, только под Windows. Так что для начала нам потребуется автономное средство для работы с cab-архивами. И таковое имеется в лице утилиты cabextract — подозреваю, специально написанной для извлечения микрософтовских шрифтов. Если в данном дистрибутиве она отсутствует, тянем её с родного сайта и, в зависимости от дистрибутива, собираем или устанавливаем.

Теперь переходим в каталог с нашими скачанными cab-шрифтами и даём команду типа

$ cabextract *.exe

или перечисляем нужные нам шрифты поименно. И в итоге получаем полный или сокращенный набор ttf-файлов, с которыми остаётся только поступить так, как было описано выше для любых шрифтов.

Имеет ли смысл описанная процедура? Чтобы ответить на этот вопрос, рассмотрим, что же собой представляют шрифты от Microsoft с точки зрения типографики.




Страницы: 1 :: 2 :: следующая

Комментарии

Страницы комментариев: 1 :: 2 :: следующая

аноним, Sun Nov 30 20:34:17 2008:
>Тем более, что шрифтов Open Type в OTF-версии мало вообще, а свободных, да еще и поддерживающих кириллицу — и того меньше.

Формат для шрифта всё-таки вторичен.
Всегда можно сделать что нибудь типа:

fontforge -c 'Open($1); Generate($fontname + "." + "otf"); Quit(0);' font.pfb

И в результате получим otf-шрифт. ;)
аноним, Tue Nov 11 11:58:03 2008:
Roh - правильно Рог, имя явно чешское
аноним, Sat Sep 6 01:53:52 2008:
чо за хуйня отсечки? засечки мож?
антианоним, Wed Aug 13 17:13:22 2008:
Сразу видно вендузятнега (Crazy Alex, среда, 13 августа 2008 г. 15:06:33:)
Crazy Alex, Wed Aug 13 15:06:33 2008:
При всем уважении к автору, сейчас он очень основательно передергивает. Понятно, что все перечисленные шрифты сгодятся для того, чтобы прочесть текст. И с антиалиасингом все выглядят приемлемо. Если же его убрать, моментально вылезает море огрехов свободных шрифтов - то какая-то линия слишком толстая, то "угловатое" все, как у Liberation Serif (на букве О очень заметно, например)... Терпеть это, конечно, можно, но пока шрифты от MS объективно лучше. Есл же еще кернинг вспомнить - то ситуация еще усугубляется...

Кстати, Терминус - штука тоже на любителя - плотный очень... Та же Lucida Console не в пример более читаема и может быть гораздо мельче
NicholAs, Thu Aug 7 19:28:50 2008:
Вот не пришлось мне в Windows повидать шрифт Andale Mono. А тут в статье просветили, что есть оказывается такой у MS.
CJ AYHO, Wed Aug 6 22:24:36 2008:
блин тупанул. не прочитал вторую страницу :)
CJ AYHO, Wed Aug 6 21:39:33 2008:
хмм а чем не нравятся шрифты Dejavu - семейства? меня например они вполне устраивают...
Доброжелатель, Wed Aug 6 18:53:18 2008:
_
Ни Trebuchet, ни Verdana не создавались под непосредственным влиянием «Гельветики» или с оглядкой на неё, к мысли о чём можно прийти, прочитав данную статью.

http://en.wikipedia.org/wiki/Trebuchet_MS
http://www.microsoft.com/typography/fonts/font.aspx?FID=2&FNAME=Trebuchet%20MS
http://www.microsoft.com/typography/web/fonts/trebuche/default.htm

Об остальном, собственно, можно сказать примерно то же самое.
_
аноним, Wed Aug 6 17:49:10 2008:
Cпасибо. Довольно неплохой анализ.

Страницы комментариев: 1 :: 2 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds