next up previous contents
Next: 11. Языки программирования Up: 10. Подсистема печати текста Previous: 10.10 Определение плана страницы

10.11 Примеры использования a2ps

Классическим примером может быть использование программы a2ps для распечатки страниц описаний: man awk | a2ps -stdin=awk -1 -Xkoi8
описание программы awk будет напечатано на принтере (около 30 страниц). Каждая страница будет иметь сверху заголовок awk, одна страница документа будет располагаться на одной физической странице. Дата и время будут печататься с использованием Кириллицы, поскольку на моей машине установлены соответствующие переменные окружения (по поводу локализации смотрите раздел 3.4).

Если вы захотите придать печати неповторимую индивидуальность, например, текст, напоминающий водяные знаки, то можно изменить команду так:
man awk | a2ps -stdin=awk -1 -Xkoi8 SPMquot¨
-underlay="Официальное Описание"

тогда на каждой странице появится текст в виде светло-серого текста по диагонали страницы Официальное Описание.

Если вам потребуется иметь на бумаге несколько кратких описаний параметров известных компиляторов, то это можно сделать так
gcc -help | a2ps -stdin=gcc -1 -Xkoi8 SPMquot-Ecard
или для фортрана-90
SPMquotvf90 2>&1 | a2ps -stdin=vf90 -1 -Xkoi8 -Ecard"
Здесь пришлось выполнить перенаправление ввода-вывода с устройства 2 на устройство 1, поскольку имеющийся компилятор для фортрана-90 выводит сообщения на устройство 2.

Таким образом, если вывести несколько полезных кратких описаний, то можно быстро, за несколько минут, приготовить себе подшивку из таких описаний на манер справочника. Аналогичным образом можно печатать тексты программ на любом языке. Поскольку по умолчанию a2ps пытается догадаться о стиле печати, то вы получите весьма выразительные страницы, которые также можно будет использовать как справочный материал или как часть вашего отч©та.

При отладке качества печати, когда вам быть может полезно вывести несколько вариантов для сравнения, очень полезно добавить параметр -P display. Тогда результат будет выведен на дисплей с помощью браузера gv, а не на принтер. Вы можете использовать параметр -o, чтобы использовать полученный файл позже, например,
man od | a2ps -stdin='Utility od' -1 -Xkoi8 -o od.ps
результат, т.е. описание утилиты od будет сохран©н в файле od.ps.

Пусть вам надо напечатать список или таблицу. Тогда удобнее на листах разместить какие-то линии, чтобы было удобнее читать таблицы. Это легко сделать так
SPMquotman bash | a2ps -stdin='bash' -1 -Xkoi8 ¨
SPMquot-prologue=matrix -P display"
Здесь результат выйдет на экран дисплея.

Пусть у вас имеется довольно объ©мный документ в формате PostScript, например, страниц 150. Вам хотелось бы напечатать этот документ компактнее, т.е. по несколько страниц документа на одной физической странице. Это легко сделать таким образом:
SPMquota2ps Book.ps -9 -Xkoi8 -P display"
На одной физической странице будет помещено 9 страниц документа. Если вы выведете результат на принтере 1200 DPI, то все страницы будут выглядеть весьма мелко, но вс© будет ясно видно, например, с соответствующими очками.

Замечание. Ряд интересных особенностей программы a2ps могут не срабатывать, когда происходит делегирование обработки файлов другим программам. Например, если вы попробуете использовать параметр -prologue=matrix для файлов вида *.ps, то не обнаружите никаких полос в выводном файле. Иными словами, в═данном случае определяющими являются свойства той программы, которой производится делегирование (передача) обработки файла.


next up previous contents
Next: 11. Языки программирования Up: 10. Подсистема печати текста Previous: 10.10 Определение плана страницы
Andrei Chevel
Andrei.Chevel@pnpi.spb.ru