URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 577
[ Назад ]

Исходное сообщение
"Как подключить директорию с фонтами?"

Отправлено chainik , 10-Окт-06 18:14 
Slackware 11, ядро 2.6.18. Есть директория /usr/X11R6/lib/fonts/win, в ней фонты ttf. Для этой директории сделано "fc-cache -fv /usr/X11R6/lib/fonts/win".

Как ее подключить к системе, чтобы во всех программах (что с фонтами работают) в списках фонтов появились фонты из этой директории?

В xorg.conf она воткнута след. образом:
    FontPath   "/usr/X11R6/lib/X11/fonts/local/"
    FontPath   "/usr/X11R6/lib/X11/fonts/misc/"
    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
    FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"
    FontPath   "/usr/X11R6/lib/X11/fonts/CID/"
    FontPath   "/usr/X11R6/lib/X11/fonts/Speedo/"
    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"
    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"
    FontPath   "/usr/X11R6/lib/X11/fonts/cyrillic/"
    FontPath   "/usr/X11R6/lib/fonts/mswin"
Пока фонты из этой директории нигде не работают.

Спасибо.


Содержание

Сообщения в этом обсуждении
"Как подключить директорию с фонтами?"
Отправлено axbat , 10-Окт-06 21:24 
>Slackware 11, ядро 2.6.18. Есть директория /usr/X11R6/lib/fonts/win,

>В xorg.conf она воткнута след. образом:
...
>    FontPath   "/usr/X11R6/lib/fonts/mswin"

так все же, как называется каталог? fonts/win или fonts/mswin?


"Как подключить директорию с фонтами?"
Отправлено chainik , 10-Окт-06 21:34 
>>Slackware 11, ядро 2.6.18. Есть директория /usr/X11R6/lib/fonts/win,
>
>>В xorg.conf она воткнута след. образом:
>...
>>    FontPath   "/usr/X11R6/lib/fonts/mswin"
>
>так все же, как называется каталог? fonts/win или fonts/mswin?

Каталог везде называется "win" (ошибся я только в сообщении).
Т.е. в xorg.conf есть строчка
FontPath   "/usr/X11R6/lib/fonts/win"


"Как подключить директорию с фонтами?"
Отправлено axbat , 10-Окт-06 23:48 
>Каталог везде называется "win" (ошибся я только в сообщении).
ок

>FontPath   "/usr/X11R6/lib/fonts/win"
в этом каталоге есть fonts.dir?
он создается ttmkfdir.

таким образом, в идеале все сводится к
- копированию файлов шрифтов в каталог
- "натравливанию" на каталог ttmkfdir
- прописыванию каталога в конфигурационном файле (xorg.conf) в данном случае
- рестарту X-ов



"Как подключить директорию с фонтами?"
Отправлено chainik , 11-Окт-06 17:40 
>>Каталог везде называется "win" (ошибся я только в сообщении).
>ок
>
>>FontPath   "/usr/X11R6/lib/fonts/win"
>в этом каталоге есть fonts.dir?
>он создается ttmkfdir.

fonts.dir нет, как в прочем нет и ttmkfdir (дистрибутив - Slackware 11).
Есть только mkfontdir, но файл, который она создает, оказывается пустым.
Что делать? В смысле, скачать где-нть и запустить или в своем дистрибутиве что-то другое искать?


"Как подключить директорию с фонтами?"
Отправлено chainik , 11-Окт-06 17:43 
>>FontPath   "/usr/X11R6/lib/fonts/win"
>в этом каталоге есть fonts.dir?
>он создается ttmkfdir.

Кстати, в каталогах с фонтами есть еще fonts.scale. Нужен ли он, чем он создается?


"Как подключить директорию с фонтами?"
Отправлено chainik , 11-Окт-06 19:58 
>таким образом, в идеале все сводится к
>- копированию файлов шрифтов в каталог
>- "натравливанию" на каталог ttmkfdir
>- прописыванию каталога в конфигурационном файле (xorg.conf) в данном случае
>- рестарту X-ов

Вроде бы мне удалось добавить фонты, они отображаются при воспроизведении уже готовых файлов (Open office), однако в списках фонтов они не появились. Что я не доделал?

Лучшее, что я смог сделать, это:

mkfontscale ./
mkfontdir ./
mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
fc-cache -fv ./
Текущим каталогом при этом был тот, в котором лежали фонты.
После mkfontdir были сообщения типа:
-----8<--------------------------------------
Couldn't determine full name for SERIFER.FON
Couldn't determine slant for SERIFER.FON
Couldn't determine weight for SERIFER.FON
Couldn't get family name for SERIFER.FON
-----8<--------------------------------------
И так по всем файлам .FON в этой директории.

xset -q # в выводимом списке каталогов фонтов есть нужный каталог

В инструкции к Open office я прочитал, что для появления в списке фонты должны быть настроены для X и для печати. Что значит для печати?


"Как подключить директорию с фонтами?"
Отправлено axbat , 11-Окт-06 22:58 
по очереди.

fonts.scale - файл, содержащий список масштабируемых шрифтов, находящихся в каталоге. по структуре абсолютно идентичен fonts.dir. Шрифты, перечисленные в этом файле, копируются mkfontdir в fonts.dir

>Вроде бы мне удалось добавить фонты, они отображаются при воспроизведении уже готовых
>файлов (Open office), однако в списках фонтов они не появились.

если шрифты отображаются, стало быть, они "подцепились". полагаю,что в  Slackware есть xfontsel. отображаются ли шрифты из нового каталога в этой программе? Если "да", а судя по проделанным манипуляциям  с mkfontscale, mkfontdir, так оно и должно быть, то есть смысл попытаться определить, поддерживаются ли шрифты программами, отличными от OO.


>Текущим каталогом при этом был тот, в котором лежали фонты.
>После mkfontdir были сообщения типа:
....
>И так по всем файлам .FON в этой директории.
вот тут, к сожалению, не могу сказать, чем это чревато. Вероятно, какое-то семейство серифов не будет использоваться. Так, например, Couldn't get family name for SERIFER.FON означает, что mkfontdir не определила, КАКОЙ это Serifer (шрифт с засечками) - см. ниже, ну и ряд его параметров.

>
>xset -q # в выводимом списке каталогов фонтов есть нужный каталог
значит, приложения могут использовать эти шрифты.

>
>В инструкции к Open office я прочитал, что для появления в списке
>фонты должны быть настроены для X и для печати. Что значит
>для печати?
я так понимаю, что речь идет о матричных экранных шрифтах, используемых при отображении на экране в X и в консоли (как правило, если не ошибаюсь, формат .bdf и .pcf, .fon) и о шрифтах, которые используются при подготовке вывода на печать (PostScript Type 1) - .pfa/.pfb и .ttf  - используются, скажем, для Ghostscript.

Например, есть такие шрифты - Type42, которые по сути - те же True Type, но с дополнительным заголовком для обработки интерпретатором PostScript. Для некоторых PS-принтеров это критично, а приложения могут спокойно с ними работать.

Кстати, пресловутый Serifer:
micross.ttf - для печати, serifer.fon, sserifer.fon - экранные. Типичные Serifer - Arial, Tahoma, Verdana

Ради эксперимента попробуйте оставить в конфиге Xorg только
FontPath   "/usr/X11R6/lib/X11/fonts/misc/"
и FontPath к добавленным шрифтам, перекэшируйте список шрифтов  и посмотрите, чем это обернется. Так можно наверняка узнать, что сможет работать с добавленными шрифтами. Путь к шрифтам misc обязателен - без него X не стартует.