|
PostScript имеет черты метафайла, совмещая поддержку как
векторных, так и растровых изображений. Шрифты в PostScript
только векторные. Немного особняком стоят т. н. Type3-шрифты,
в которых для рисования глифы (процедура /BuildGlyph) м.б.
использована любая процедура, сформулированная в терминах
языка PostScript. После выхода SP4 для Windows NT 4.0 в 1998
году при установленном в системе Adobe Type Manager 4.0 и
драйвере AdobePS 5 все шрифты в не-roman кодировке, в частности
кириллица выгружались в PostScript-файл в виде Type3-шрифтов,
где каждая глифа была представлена в виде растрового изображения
соответствующего разрешения. Выгрузка шрифта в виде растровых
изображений создала много проблем при подготовке к выводу
на фотонабор и допечатной подготовке вообще. Эта ошибка была
исправлена в AdobePS 5.1 и Adobe Type Manager 4.1, которые
затем вошли в дистрибутив Windows 2000.
Структура файла PostScript формируется структурными комментариями.
Структурные комментарии начинаются с последовательности символов
"%%" в начале строки.
Файл PostScript состоит из четырёх частей: заголовка, пролога,
тела и эпилога.
Заголовок начинается строкой "%!PS-Adobe-N.M" где
N.M - версия спецификации, далее идут структурные комментарии
с общими свойствами документа, и заканчивается заголовок строкой
"%%EndComments".
%!PS-Adobe-2.0
%%Creator: dvips(k) 5.78 Copyright 1998 Radical Eye Software
%%Title: rep.dvi
%%Pages: 9
%%PageOrder: Ascend
%%BoundingBox: 0 0 596 842
%%EndComments
В прологе обычно содержатся описания подпрограмм и данные,
необходимые для печати документа - например, процедуры и шрифты.
Пролог заканчивается комментарием "%%EndProlog".
В теле программы содержатся команды, отвечающие за отрисовку
каждой страницы, предваряемые строкой "%%Page: <метка>
<номер>", где <метка> - метка страницы, которая
не выводится на печать, и <номер> - порядковый номер
страницы в файле, например, %%Page: iii 3
После команд отрисовки всех страниц идёт структурный комментарий
"%%Trailer", после чего начинается эпилог.
В эпилоге можно продублировать комментарии из заголовка (это
реализовано на случай, если в начале вывода программе ещё
не известно, например, число страниц) - в этом случае вместо
числовых значений параметров в заголовке надо писать "(atend)".
Заканчивается файл строкой "%%EOF".
|