Чтобы сделать фонт доступным для ghostscript, достаточно сообщить
ghostscript, где расположен файл(ы) соответствующего фонта. Для этого
необходимо подредактировать файл
/usr/share/ghostscript/version/Fontmap
.
Этот файл имеет очень простой формат, почти очевидный, если его внимательно
просмотреть.
Добавление фонтов Type1 осуществляется очень просто. Запустите
type1inst
в каталоге, содержащем файл фонта. type1inst
создаст файл с именем Fontmap
. Присоедините этот файл к
ghostscript-овскому файлу Fontmap
.
Добавление фонтов truetype немного сложнее, потому что мы должны получить
имя фонта. Первый способ сделать это (увы, грубой силой)
состоит в использовании конвертера TrueType фонтов в Type1
ttf2pt1
и последующем извлечении имени фонта из файла
afm
(вероятно должен существовать и более эффективный путь! но этот способ
работает, как бы уродлив он не был). Вы можете сделать это примерно так:
ttf2pt1 -A fontname - 2 > /dev/null | grep FontNameЗатем Вы добавляете в ghostscript-овский файл
Fontmap
строку
правильного формата, примерно так:
some-font (/usr/share/fonts/subdirectory/somefont.pbf);Этот способ, конечно, работает, но попробуйте сделать это для 500 фонтов! Такого рода вещи просто требуют создания короткого скрипта на Perl:
#!/usr/bin/perl # ttfontmap -- generate fontmap file for TrueType fonts my $directory=shift || print STDERR "Usage: ttfontmap {directory}\n"; $directory=~s/\/$//; for my $fontname ( glob ( "$directory/*.ttf" ) ) { open ( R, "sh -c \"ttf2pt1 -A $fontname - 2>/dev/null\" |" ); while ( <R> ) { if ( $_ =~ /^FontName/ ) { s/^FontName\s*//; chomp; print "/" . $_ . " ($fontname);\n" ; } } close R; }Вы можете скачать этот скрипт.
Чтобы установить этот скрипт, скопируйте его в файл с именем
ttfontmap
и поместите в один из каталогов, указанных
в переменной PATH
(например, в /usr/bin
).
После этого Вы можете запускать его следующим образом:
ttfontmap directory > output_fileгде
directory
- это каталог, содержащий файлы фонтов.
Вы получите output_file
, который сможете присоединить
к перечню фонтов ghostscript. Примечание: кто-то может заметить, что
можно просто запустить команду
ttfontmap directory >> /usr/share/ghostscript/version/Fontmapно я не рекомендую этого делать (что будет, если Вы введете ``>'' вместо ``>>''?).
Как только Вы сделали фонты доступными для ghostscript, Вы можете их
просмотреть. Это делается путем запуска интерпретатора языка ghostscript на
файле prfont.ps
из Вашей инсталляции ghostscript. После его
запуска напечатайте (введите)
/Fontname DoFontгде
FontName
- это имя в ghostscript
фонта, который Вы хотите увидеть. Существует несколько разных способов
вызвать gs
. Например, если Вы хотите создать
postscript-файл, который Вы хотите просматривать в одной из более удобных
программ, к примеру gv
, Вы можете использовать команду
gs -sDEVICE=pswrite -sOutputFile=somefile.ps prfont.psВоспользовавшись этим способом, Вы сможете также распечатать выходной файл.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |