Формат postscript что это

PostScript

Джон Уорнок, Чарльз Гешке

Adobe PostScript, TrueImage, Ghostscript, InterPress

PostScript (Постскрипт) — язык описания страниц, в основном используемый в настольных издательских системах.

Содержание

Идеология

Postscript был разработан Джоном Уорноком и Чаком Гешке из Adobe Systems в начале 80-х гг. Исходно Postscript использовался как ядро механизма печати компьютеров Apple, но вскоре стал широко распространенным стандартом для большинства компьютерных систем. Интерпретаторы Postscript (в виде программных или аппаратных компонентов) для печати документов присутствуют практически во всех современных компьютерных системах. В Postscript используется модель изображения текста (или рисунков) на чистой странице. Когда страница готова, она выводится на печать и начинается «прорисовка» изображения очередной страницы. Это есть не что иное, как метод компиляции. Каждый документ Postscript обычно представляет собой программу, которая печатает на принтере (или отображает на экране монитора) следующие друг за другом страницы.

История

Концепция языка PostScript была заложена в 1976 году Джоном Уорноком (John Warnock), сотрудником Evans and Sutherland Computer Corporation. Его коллега Джон Гэфни (John Gaffney), занимавшийся тогда интерпретатором для большой базы данных трёхмерной графики Нью-Йоркского порта, создал язык «Design System» (очень похожий на FORTH). Позже Джон Уорнок перешёл в исследовательский центр Xerox в Пало-Альто (Xerox P.A.R.C.) и вместе с Мартином Ньювелом (Martin Newell) создал на базе Design System новую систему JaM (John and Martin), использовавшуюся в исследованиях печати и развившейся в InterPress, протокол печати Xerox.

В 1982 году Джон Уорнок уволился из Xerox и вместе с Чаком Гешке (Chuck Geschke) основал Adobe Systems Inc. Вначале их целью было создание специализированной рабочей станции для печати, которая должна была называться PostScript, но они вскоре поняли, что лучше сконцентрировать усилия на разработке средств для управления принтерами сторонних производителей.

В 1984 году увидел свет PostScript (позже к названию было добавлено Level 1, чтобы отличать его от Level 2 — см. ретроним). Postscript имел ряд преимуществ перед другими системами того времени:

Adobe рисковала, выпуская PostScript, и, возможно, ей не удалось бы убедить рынок в необходимости такого языка, если бы не Стив Джобс из Apple Computer. В 1985 году продажи компьютеров Macintosh начали падать, и Apple нужен был «killer app» — нечто, что мог бы только её компьютер. Стив Джобс инвестировал 2,5 миллиона долларов в Adobe, которая создала PostScript-контроллер для принтера Apple LaserWriter, и в Aldus, создавшую программу PageMaker, использовавшую все возможности Macintosh и LaserWriter. Появившаяся тогда возможность допечатной подготовки на компьютере спасла Apple и превратила Adobe и Aldus в крупные компании. Другие производители фотонаборной аппаратуры, начиная с Linotype, оценили PostScript и вскоре оснастили свою фотонаборную аппаратуру интерпретаторами PostScript. PostScript стал стандартом в области допечатной подготовки.

В 1991 Adobe выпустила следующую ревизию PostScript — PostScript Level 2. Это была значительная переработка, давно ожидавшаяся издательским сообществом.

Основными улучшениями были:

Adobe совершила ошибку, обнародовав спецификации PostScript Level 2 до начала работ по его аппаратной реализации. Конкуренты неожиданно вышли на рынок с эмуляторами PostScript Level 2 раньше самой Adobe. В результате потребовалось очень много времени, прежде чем приложения начали использовать все новые функции PostScript level 2. Такая функция, как цветоделение в контроллере до сих пор не поддерживается XPress 5, хотя с момента выхода Level 2 прошло много лет.

В 1998 году Adobe ввела новый стандарт PostScript 3. Изменения по сравнению с Level 2 незначительны. Это можно понять, учитывая, что множество приложений до сих пор не могут обеспечить полную поддержку PostScript Level 2.

Основные преимущества PostScript 3:

Область применения

PostScript соединил в себе лучшие возможности принтеров и плоттеров. [источник не указан 967 дней] Подобно плоттерам, PostScript предоставляет возможность вывода высококачественной векторной графики и единый язык управления, который может быть использован любым производителем принтеров. Подобно матричным принтерам, PostScript предлагает удобные возможности по печати растровой графики и текста. В отличие от тех и других, PostScript может совмещать все эти типы вывода на одной странице, давая намного больше гибкости, чем до этого имел любой принтер или плоттер.

PostScript — больше, чем типичный язык управления принтером, он является полнофункциональным языком программирования. Многие прикладные программы могут преобразовать документ в PostScript-программу, при выполнении которой будет получен начальный документ. Эта программа может быть послана непосредственно на принтер с поддержкой PostScript или преобразована интерпретатором PostScript в другой формат (для принтеров без поддержки PostScript), или результат её выполнения интерпретатором может быть показан на экране. Так как исходная PostScript-программа одна и та же, PostScript называется независимым от устройства.

Большинство высокопроизводительных принтеров и плоттеров имеют встроенный интерпретатор языка PostScript. В то же время, простые принтеры домашнего класса поддерживают только элементарные графические операции, поэтому задача создания растрового изображения возлагается на центральный процессор. Существуют интерпретаторы языка PostScript для различных операционных систем, наиболее известный из них — свободная программа Ghostscript.

Имеется коммерческая версия системы ТеХ — BaKoMa TeX, написанная полностью на PostScript. Автор — В. Малышев (СССР).

PostScript — полнофункциональный тьюринг-полный язык программирования. Хотя программы на PostScript и создаются в основном не людьми, а другими программами, в принципе ничто не мешает писать на нём программы [1] для обсчёта графики, реализации численных методов решения математических задач и т. п.

PostScript — интерпретируемый стековый язык, похожий на Форт. Синтаксис языка использует обратную польскую нотацию, что делает ненужным использование скобок, однако требует некоторой практики для чтения текста программы из-за необходимости держать в голове содержимое стека. Большинство операторов берут операнды со стека и помещают результат вычислений на стек. Литералы (строки и числа) помещают свою копию на стек.

PostScript имеет черты метафайла, совмещая поддержку как векторных, так и растровых изображений. Шрифты в PostScript только векторные. Немного особняком стоят т. н. Type3-шрифты, в которых для рисования глифы (процедура /BuildGlyph ) м.б. использована любая процедура, сформулированная в терминах языка PostScript [6, pp. 337-342]. После выхода SP4 для Windows NT 4.0 в 1998 году (см. также http://support.microsoft.com/gp/lifesupsps ) при установленном в системе Adobe Type Manager 4.0 и драйвере AdobePS 5 все шрифты в не-roman кодировке, в частности кириллица выгружались в PostScript-файл в виде Type3-шрифтов, где каждая глифа была представлена в виде растрового изображения соответствующего разрешения. Выгрузка шрифта в виде растровых изображений создала много проблем при подготовке к выводу на фотонабор и допечатной подготовке вообще. Эта ошибка была исправлена в AdobePS 5.1 и Adobe Type Manager 4.1, которые затем вошли в дистрибутив Windows 2000.

Структура документа

Структура файла PostScript формируется структурными комментариями [14]. Структурные комментарии начинаются с последовательности символов « %% » в начале строки.

Файл PostScript состоит из четырёх частей: заголовка, пролога, тела и эпилога.

Заголовок начинается строкой « %!PS-Adobe-N.M » где N.M — версия спецификации, далее идут структурные комментарии с общими свойствами документа, и заканчивается заголовок строкой « %%EndComments ».

В прологе обычно содержатся описания подпрограмм и данные, необходимые для печати документа — например, процедуры и шрифты. Пролог заканчивается комментарием « %%EndProlog ».

В теле программы содержатся команды, отвечающие за отрисовку каждой страницы, предваряемые строкой « %%Page: », где — метка страницы, которая не выводится на печать, и — порядковый номер страницы в файле, например, %%Page: iii 3

После команд отрисовки всех страниц идёт структурный комментарий « %%Trailer », после чего начинается эпилог.

В эпилоге можно продублировать комментарии из заголовка (это реализовано на случай, если в начале вывода программе ещё не известно, например, число страниц) — в этом случае вместо числовых значений параметров в заголовке надо писать « (atend) ».

Заканчивается файл строкой « %%EOF ».

Обзор элементов языка

В PostScript для хранения данных разных типов используются четыре стека: стек операндов, стек графических контекстов, стек исполнения, стек словарей.

Операторы PostScript можно разделить на несколько групп. Это операторы для работы с содержимым стека (независимо от типа), арифметические операции, операторы работы с массивами, работы со словарями, работы со строками, сравнения, управления потоком команд, работы с типом аргументов и преобразования, доступа и работы с файлами, работы с виртуальной памятью, графического состояния и другие. Описания операторов PostScript можно найти в [5, 6], краткие описания наиболее употребительных операторов на русском языке можно найти в [1].

Краткий обзор механизма рисования изображения

Процесс рисования (растрирования) при выполнении (интерпретации) PostScript-программы заключается в вычислении для каждого пиксела устройства вывода одного (для монохромного) или нескольких (например четырёх для CMYK-устройства или шести для параметра (-ов) в диапазоне от 0 до 1.0. Вычисленное значение параметра (-ов) используется в качестве аргумента ещё одной важной функции — transfer function [6, pp. 478-480] (русскоязычный синоним — отображение). По умолчанию в подавляющем большинстве случаев эта функция представляет собой простейшую функцию y(x)=x и её значение тождественно равно значению аргумента. Однако в ряде случаев — например для компенсации растискивания используются достаточно сложные нелинейные зависимости y(x), задаваемые кусочной либо табличной аппроксимацией. Кусочно-линейная аппроксимация transfer function используется например в EPS- и PS-файлах Adobe Photoshop — для аппроксимации используется разбивка области определения [0;1.0] на сорок участков с шагом 0.025 (2.5 % растровой точки); на каждом из сорока участков transfer function имеет вид y(x)=b·x+a. Transfer function вида y(x)=1-x (в терминах PostScript language <1 sub neg>settransfer ) обращает изображение, делая из него негатив — именно таким образом печатают негатив PostScript-принтеры.

Для монохромных устройств — например для фотонабора, решение о закрашивании (засветке) пикселя может приниматься в результате сравнения вычисленного для данного пиксела значения transfer function и значения т. н. Spot-функции либо двумерного массива Threshold array [6, pp. 484-490], [15]: в случае, если значение transfer function больше значения Spot-функции или элемента Threshold array для этого пиксела последний закрашивается (засвечивается). Специальный подбор transfer function и Spot-функции или Threshold array позволяет получить отношение числа закрашенных и незакрашенных пикселей устройства вывода для каждого пиксела исходного (растрируемого) изображения таким, что на оттиске (отпечатке) средняя яркость соответствующего участка изображения почти пропорциональна значению вычисленного параметра (см. выше).

Подобным образом формируется точки различного размера, из которых состоит полутоновое изображение на типографских оттисках: в газетах, журналах, книгах.

Источник

Постскрипт

PostScript (Постскрипт) — язык описания страниц, в основном используемый в настольных издательских системах.

Содержание

Идеология

Postscript был разработан Джоном Уорноком и Чаком Гешке из Adobe Systems в начале 80-х гг. Исходно Postscript использовался как ядро механизма печати компьютеров принтере (или отображает на экране монитора) следующие друг за другом страницы.

История

Концепция языка PostScript была заложена в 1976 году Джоном Уорноком (John Warnock), сотрудником Evans and Sutherland Computer Corporation. Его коллега Джон Гэфни (John Gaffney), занимавшийся тогда интерпретатором для большой базы данных трёхмерной графики Нью-Йоркского порта, создал язык «Design System» (очень похожий на FORTH). Позже Джон Уорнок перешёл в исследовательский центр Xerox в Пало-Альто (Xerox P.A.R.C.) и вместе с Мартином Ньювелом (Martin Newell) создал на базе Design System новую систему JaM (John and Martin), использовавшуюся в исследованиях печати и развившейся в InterPress, протокол печати 1982 году Джон Уорнок уволился из Xerox и вместе с Чаком Гешке (Chuck Geschke) основал Adobe Systems Inc. Вначале их целью было создание специализированной рабочей станции для печати, которая должна была называться PostScript, но они вскоре поняли, что лучше сконцентрировать усилия на разработке средств для управления принтерами сторонних производителей.

В 1984 году увидел свет PostScript (позже к названию было добавлено Level 1, чтобы отличать его от Level 2). Postscript имел огромные преимущества перед другими системами того времени:

Adobe рисковала, выпуская PostScript, и, возможно, ей не удалось бы убедить рынок в необходимости такого языка, если бы не Стив Джобс из Apple Computer. В 1985 году продажи компьютеров Aldus, создавшую программу, использовавшую все возможности Macintosh и LaserWriter — PageMaker. Появившаяся тогда возможность допечатной подготовки на компьютере спасла Apple и превратила Adobe и Aldus в крупные компании. Другие производители фотонаборной аппаратуры, начиная с Linotype, оценили PostScript и вскоре оснастили свою фотонаборную аппаратуру интерпретаторами PostScript. PostScript стал стандартом в области допечатной подготовки.

В 1991 Adobe выпустила следующую ревизию PostScript — PostScript Level 2. Это была значительная переработка, давно ожидавшаяся издательским сообществом.

Основными улучшениями были:

Adobe совершила ошибку, обнародовав спецификации PostScript Level 2 до начала работ по его аппаратной реализации. Конкуренты неожиданно вышли на рынок с эмуляторами PostScript Level 2 раньше самой Adobe. В результате потребовалось очень много времени, прежде чем приложения начали использовать все новые функции PostScript level 2. Такая функция, как цветоделение в контроллере до сих пор не поддерживается XPress 5, хотя с момента выхода Level 2 прошло много лет.

В 1998 году Adobe ввела новый стандарт PostScript 3. Изменения по сравнению с Level 2 незначительны. Это можно понять, учитывая, что множество приложений до сих пор не могут обеспечить полную поддержку PostScript Level 2.

Основные преимущества PostScript 3:

Область применения

PostScript соединил в себе лучшие возможности принтеров и плоттеров. Подобно плоттерам, PostScript предоставляет возможность вывода высококачественной векторной графики и единый язык управления, который может быть использован любым производителем принтеров. Подобно матричным принтерам, PostScript предлагает удобные возможности по печати растровой графики и текста. В отличие от тех и других, PostScript может совмещать все эти типы вывода на одной странице, давая намного больше гибкости, чем до этого имел любой принтер или плоттер.

PostScript — больше, чем типичный язык управления принтером, он является полнофункциональным языком программирования. Многие прикладные программы могут преобразовать документ в PostScript-программу, при выполнении которой будет получен начальный документ. Эта программа может быть послана непосредственно на принтер с поддержкой PostScript или преобразована интерпретатором PostScript в другой формат (для принтеров без поддержки PostScript), или результат её выполнения интепретатором может быть показан на экране. Так как исходная PostScript-программа одна и та же, PostScript называется независимым от устройства.

Большинство высокопроизводительных принтеров и плоттеров имеют встроенный интерпретатор языка PostScript. В то же время, простые принтеры домашнего класса поддерживают только элементарные графические операции, поэтому задача создания растрового изображения возлагается на центральный процессор. Существуют интерпретаторы языка PostScript для различных операционных систем, наиболее известный из них — свободная программа Ghostscript.

Постскрипт — полнофункциональный язык программирования. Хотя программы на Постскрипте и создаются в основном не людьми, а другими программами, в принципе ничто не мешает писать на нём программы для обсчёта графики, реализации численных методов решения математических задач и т. п.

Постскрипт — интерпретируемый стековый язык, похожий на Форт. Синтаксис языка использует обратную польскую нотацию, что делает ненужным использование скобок, однако требует некоторой практики для чтения текста программы из-за необходимости держать в голове содержимое стека. Большинство операторов берут операнды со стека и помещают результат вычислений на стек. Литералы (строки и числа) помещают свою копию на стек.

PostScript имеет черты метафайла, совмещая поддержку как векторных, так и растровых изображений. Шрифты в PostScript только векторные. Положение элементов на странице задаётся в типографских пунктах.

Структура документа

Структура файла PostScript формируется структурными комментариями. Структурные комментарии начинаются с последовательности символов « %% » в начале строки.

Файл PostScript состоит из четырёх частей: заголовка, пролога, тела и эпилога.

Заголовок начинается строкой « %!PS-Adobe-N.M » где N.M — версия спецификации, далее идут структурные комментарии с общими свойствами документа, и заканчивается заголовок строкой « %%EndComments ».

В прологе обычно содержатся описания подпрограмм и данные, необходимые для печати документа — например, процедуры и шрифты. Пролог заканчивается комментарием « %%EndProlog ».

В теле программы содержатся команды, отвечающие за отрисовку каждой страницы, предваряемые строкой « %%Page: », где — метка страницы, которая не выводится на печать, и — порядковый номер страницы в файле, например, %%Page: iii 3

После команд отрисовки всех страниц идёт структурный комментарий « %%Trailer », после чего начинается эпилог.

В эпилоге можно продублировать комментарии из заголовка (это реализовано на случай, если в начале вывода программе ещё не известно, например, число страниц) — в этом случае вместо числовых значений параметров в заголовке надо писать « (atend) ».

Заканчивается файл строкой « %%EOF ».

Обзор элементов языка

В PostScript для хранения данных разных типов используются четыре стека: стек операндов, стек графических контекстов, стек исполнения, стек словарей.

Операторы PostScript можно разделить на несколько групп. Это операторы для работы с содержимым стека (независимо от типа), арифметические операции, операторы работы с массивами, работы со словарями, работы со строками, сравнения, управления потоком команд, работы с типом аргументов и преобразования, доступа и работы с файлами, работы с виртуальной памятью, графического состояния и другие. Описания операторов PostScript можно найти в [5], краткие описания наиболее употребительных операторов на русском языке можно найти в [1].

Источник

Создание PostScript и EPS-файлов

Создание PostScript и EPS-файлов

Вместо печати документа на принтере можно сохранить PostScript-языковое описание документа как файл «.PS» для печати на удаленных принтерах, предназначенный, например, поставщику услуг допечатной подготовки. Поставщик услуг может отправить файл «.PS» прямо на устройство вывода изображения. Размер PostScript-файла обычно больше, чем размер исходного InDesign документа, так как графика и шрифты встроены.

Можно экспортировать страницу документа или разворот в файл EPS (Encapsulated PostScript) и поместить его в другие приложения.

Выбор метода создания файла PostScript

Можно сохранить документ InDesign или книгу в одном из трех типов PostScript-файлов: аппаратно-независимом, аппаратно-зависимом или в аппаратно- и драйверно-зависимом.

Следующие таблицы отображают рекомендованные драйверы принтеров и методы вывода для достижения наилучшего результата совместно с приложениями завершающей обработки и InDesign. Если документ перед печатью при помощи RIP предназначен для обработки OPI-сервером или приложением для спуска полос, треппинга или другим приложением допечатной подготовки, выберите в меню «Принтер» диалогового окна «Печать» пункт «Файл PostScript®». Таким образом, InDesign полностью контролирует DSC-вывод. Для настольного принтера используйте поддерживаемый драйвер принтера PostScript.

В таблице использованы звездочки, чтобы показать относительную эффективность каждого метода допечатной работы.

Файл PostScript соответствует стандарту DSC и подходит для использования с широким набором приложений завершающей обработки, RIP и рабочими процессами. Это лучший выбор для приложений, опирающихся на стандарт DSC.

Файл PostScript в значительной степени соответствует стандарту DSC и обычно подходит для использования с широким набором приложений завершающей обработки, RIP и рабочими процессами. Некоторая совместимость результатов возможна для определенных типов приложений, которые в большой степени опираются на формат DSC.

Выбор принтера. Файл PostScript®

Пригодность к допечатной подготовке

Если для принтера выбран параметр «Файл PostScript®», то драйвер принтера не используется.

Пригодность к допечатной подготовке

Встроенный PS-драйвер для Mac OS X

PPD используется заданным принтером и появляется в диалоговом окне «PPD» в верхней части диалогового окна «Печать».

Об аппаратно- и драйверно-зависимом файле PostScript

Выберите принтер и поддерживаемый драйвер в меню «Принтер». Аппаратно- и драйверно-зависимый файл PostScript имеет следующие характеристики.

Файл является драйверно-зависимым. Файл PostScript содержит код, генерируемый InDesign и драйвером. Код InDesign несет ответственность за содержание страницы, включая установку шрифта, а также за информацию о параметрах основного устройства, таких как размер материала, разрешение и растрирование. Драйвер в основном несет ответственность за настройку специальных функций драйвера, таких как водяные знаки, и за разрешение или регулирование специальных функций устройства. С того времени как InDesign не имеет полного контроля над созданием файлов PostScript, уровень стандарта DSC не такой высокий, как у драйверно-независимых файлов PostScript. Уровень стандарта DSC зависит от используемого драйвера принтера, поэтому файлы PostScript пригодны для допечатных задач.

Файл является аппаратно-зависимым. Файл содержит код, предназначенный для настройки специальных функций и управления ими, что делает его менее совместимым с устройствами, отличными от целевого устройства.

Файл может быть совмещенным или цветоделенным (доступны все способы вывода цвета, поддерживаемые InDesign).

InDesign может произвести треппинг файла (или с использованием «Встроенный в программу» или «Adobe In-RIP»).

Можно печатать, отправляя непосредственно на устройство вывода или в файл.

Аппаратно- и драйверно-зависимый файл PostScript идеально подходит для создания цветопробы (дизайнером) на настольных PostScript-принтерах. Также он может использоваться поставщиками услуг, которые не планируют дополнительных задач предпечатной проверки, выполняемых системами, не принадлежащими InDesign или RIP. Другими словами, если треппинг выполнен, это было произведено с помощью InDesign или RIP.

Создание аппаратно-независимого файла PostScript

Выделите «Файл PostScript» в меню «Принтер» и «Аппаратно-независимый» — в меню PPD. Аппаратно-независимый файл PostScript имеет следующие характеристики.

На 100% соответствует формату DSC и идеально подходит для таких задач завершающей обработки, как треппинг и спуск полос.

Все зависимости от аппаратов и драйверов исключены, так что файл печатается на любом устройстве вывода. Тем не менее, специальные функции принтера, базирующиеся в PPD-файле, такие как экспозиция изображений, доступные размеры материала и оптимизация линиатуры растра, не являются доступными при аппаратно-независимом выводе.

Цвет вывода — всегда совмещенный CMYK, также включает в себя плашечные цвета. В результате цвет может быть разделен в программах завершающей обработки или во время работы RIP с помощью цветоделения In-RIP.

InDesign не сможет произвести треппинг файла; треппинг должен произойти во время работы RIP или в программе завершающей обработки.

InDesign позволяет вывести его в файл (а не непосредственно на устройство вывода или приложение).

Аппаратно-независимый файл PostScript подходит для совмещения допечатных рабочих процессов, где файл подвергается треппингу и цветоделению в последующем производственном процессе, например во время спуска полос, треппинга или во время работы RIP (если устройство вывода поддерживает цветоделение In-RIP).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *