Рецепт. Печать русского текста на PS-принтере. Unix Date: 30 Jun 97 From: Dima Barsky (d.barsky@ee.surrey.ac.uk) Проблема старая, но чистого решения я еще ни у кого не видел. Мое тоже не идеал, но все-таки... Излагаю рецепт. Список ингредиентов: 1. GNUшная программа enscript версии 1.5 с любого GNU ftp-сервера, например, ftp://src.doc.ic.ac.uk/gnu/enscript-1.5.0.tar.gz Ў ftp://src.doc.ic.ac.uk/gnu/enscript-1.5.0.tar.gz 2. Postscript фонты cmtt12 и cmctt12. Я их посылаю уже в правильном формате, а изготовить их можно вот так: a) берешь cmtt12.pfb и cmctt12.pfb с любого CTAN сервера, например ftp://ftp.dante.de/pub/tex/fonts/cm/ps-type1/paradissa/cmctt12.pfb Ў ftp://ftp.dante.de/pub/tex/fonts/cm/ps-type1/paradissa/cmctt12.pfb и ftp://ftp.dante.de/pub/tex/fonts/cm/ps-type1/bakoma/cmtt12.pfb Ў ftp://ftp.dante.de/pub/tex/fonts/cm/ps-type1/bakoma/cmtt12.pfb b) конвертируешь pfb в pfa программой pfb2pfa, которая входит в любой приличный TeX-distribution. В teTeX она точно есть. c) Извлекаешь font metrics из pfa файлов с помощью getafm (из того же teTeXa) и ghostscripta: getafm cmtt12 | cat cmtt12.pfa - | gs -q -DNODISPLAY - >cmtt12.afm getafm cmctt12 | cat cmctt12.pfa - | gs -q -DNODISPLAY - >cmctt12.afm 3. Ма-аленькая программа-перекодировщик rusprint (исходный текст прилагается). rusprint.tgz Ў rusprint.tgz Занимается тем, что отслеживает переход с латинских букв в русские и назад, и вставляет соответствующие переключения фонтов в файл для enscript'a, заодно сдвигая русские буквы в нижнюю половину таблицы. Подготовительные упражнения: mkdir ~/.enscript cp cmtt12.pfa cmtt12.afm cmctt12.pfa cmctt12.afm ~/.enscript cd ~/.enscript mkafmmap *.afm (если нет программы mkafmmap - тогда просто: echo cmtt12 cmctt12 >~/.enscript/font.map Не забудь скомпилировать rusprint.c и положить куда-нибудь в PATH. Печатаем так: rusprint < koi.txt | enscript -e -X ps --download-font=cmtt12 --download-font=cmctt12 | lpr Вроде бы все.. Предложения, замечания, жалобы? Дима Барский. d.barsky@ee.surrey.ac.uk Ў mailto:d.barsky@ee.surrey.ac.uk