- •Вывод векторного изображения в формате Postscript
- •Введение
- •1 Актуальность автоматизации генерации изображения (задачи)
- •2 Основные концепции языка PostScript
- •3 Операторы языка PostScript
- •3.1 Арифметические операторы
- •3.2 Графические операторы
- •Заключение
- •Список использованных источников
- •3.3 Операторы изображения текстов
- •3.4 Операторы циклов и условные операторы
2 Основные концепции языка PostScript
Язык PostScript был разработан в 1984 в компании Adobe Systems. Основные задачи, с которыми сталкивались разработчики языка Джон Уорнок и Чак Гешке – стандартизация и неизменность выводимой информации вне зависимости от используемого оборудования и программных средств.
Язык Postscript является языком описания страниц. Все изображения и символы на странице задаются с помощью циклов, математических формул и объектов. Данная особенность описания изображения позволяет обеспечить независимость выводимого результата от оборудования и программного обеспечения, выводящего конечное изображение. В связи с этим и обуславливается высокая популярность языка у компаний, занимающихся типографией. Эти особенности языка позволяют компаниям не задумываться о несовместимости оборудования и программного обеспечения.
Стек.
Основа языка PostScript – стеки. Описание работы стека дается на примере работы монетницы.
Стек – это особая область памяти, организованная по принципу «последний вошел – первый вышел».
Постфиксная нотация.
Язык PostScript использует постфиксную нотацию (обратная запись). Смысл такого способа записи состоит в том, что сначала записываются операнды, затем – операторы.
Единицы измерения.
PostScript использует свою единицу измерения – пункт (point), обозначаемую пт (pt). В одном стандартном дюйме (inch) помещается 72 пункта (pt).
В качестве угловой меры в PostScript используется градус (полная окружность = 360 градусов). Положительное направление углов – против часовой стрелки.
Структура PostScript – программы.
PostScript – программа имеет в своем составе некие начальные и конечные служебные операторы, и собственно операторы рисования, между ними заключенные. Специальные комментарии начинаются с начала строки и имеют два символа %. Вот типичный пример структуры многостраничного ps-файла:
%!PS-Adobe-3.0 – указание на то, что это PostScript файл
%%Title: - название проекта
%%Creator: - создатель файла
%%CreationDate: - дата и время создания
%%For: - указание для кого создан файл
%%Copyright: - фирма или автор, имеющий права на файл
%%Document fonts: - имена используемых фонтов
%%BoundingBox: - размер страницы
%%Pages: - число странниц
%%EndComments
%%BeginProcSet
текст процедур
%%EndProcSet
%%EndProlog
%%Page 1 1
команды описания первой страницы
showpage – указание интерпретатору, что больше команд не будет и страница полностью описана, и приказывает начать переводить описание в изображение
%%Page 2 2
команды описания второй страницы
showpage
%%Trailer
%%EOF
3 Операторы языка PostScript
3.1 Арифметические операторы
Математические вычисления – очень важная часть языка Postscript, но не самая главная. Арифметические операторы ничего не рисуют, но позволяют рассчитать особенно сложные участки изображения, позволяют производить расчёты сложных траекторий, выстраивать зависимости одной части изображения от другой и множество прочих расчётных операций.
add – вынимает два числа из стека, складывает их и возвращает их сумму;
sub - вынимает два числа из стека, вычитает их и возвращает их разность;
mul - вынимает два числа из стека, умножает их и возвращает их произведение;
div - вынимает два числа из стека, делит их и возвращает их частное.
