В своем важнейшем использовании - для подготовки
печатных документов - ПостСкрипт не может обойтись без вывода
текстов.
Вывод осуществляется очень просто: команда show снимает со стека текстовую строку и изображает ее
установленным шрифтом, размером и цветом, начиная с текущей точки.
Строка, независимо от размера, занимает в стеке одну позицию. Она
может быть задана непосредственно, с помощью ограничителей - обычных
круглых скобок. Парные скобки внутри строки воспринимаются
правильно, если нужна непарная скобка, то ей должна предшествовать
обратная косая черта:
(И, наконец, 3\) О текстах и шрифтах) show
После выполнения этой команды текущей точкой
становится точка в конце напечатанного текста.
Команда stringwidth позволяет
узнать ширину печатаемой строки. На самом деле эта команда
вырабатывает два числа - ширину и высоту строки, но высота обычно
равна 0, и этот параметр нужно из стека убирать. Этой командой
удобно пользоваться для того, чтобы определять какое-либо
фиксированное расположение текста, например, для того, чтобы
выравнивать текст по центру.
(Печатаемый текст) % в стеке лежит текст
dup % создадим его копию
stringwidth pop % найдем ширину текста
-0.5 mul 0 rmoveto % сдвинем текущую точку влево
show % напечатаем текст
Есть несколько вариантов команды show, позволяющих различным образом изменять процедуру
печати текста, мы рассмотрим только наиболее важные.
Команда ashow имеет три параметра,
назовем их dx, dy и string. Подобно show, она печатает
строку string, но после каждой буквы добавляет к
текущей позиции приращение (dx,dy).
Можно создать эффект тени, повторяя несколько раз
печать одной и той же строки, каждый раз с небольшим сдвигом. Эффект
можно обогатить постепенным изменением цвета изображения и, если
угодно, переменным сдвигом с помощью команды ashow.
Назад