Открыть сервис

PostScript

PostScript — это язык описания страниц (Page Description Language, PDL), разработанный компанией Adobe Systems в 1982 году. PostScript является интерпретируемым, стековым языком программирования, предназначенным для точного описания внешнего вида печатных страниц, включая текст, графику и изображения. Он стал одним из стандартов в издательском деле и настольных издательских системах (DTP), обеспечив независимость от конкретного устройства вывода (принтера, фотонаборного автомата).

История

Предпосылки и создание

В конце 1970-х годов существовала проблема несовместимости форматов между разными печатающими устройствами. Каждый производитель принтеров использовал собственные протоколы и языки, что делало подготовку макета для печати сложной и дорогой. Джон Уорнок и Чарльз Гешке, работавшие в Xerox PARC, разработали язык Interpress, который позволял описывать страницы независимо от устройства. Однако Xerox не проявила интереса к коммерциализации этой технологии.

В 1982 году Уорнок и Гешке основали компанию Adobe Systems и начали разработку собственного языка, который изначально назывался JaM (John and Martin). Позднее он был переименован в PostScript. Первая версия, PostScript Level 1, была выпущена в 1984 году.

Распространение и стандартизация

Ключевым фактором успеха PostScript стало партнёрство с Apple. В 1985 году Apple выпустила лазерный принтер LaserWriter, в котором использовался интерпретатор PostScript, разработанный Adobe. В сочетании с программой верстки Aldus PageMaker (организация признана нежелательной в РФ) это положило начало эпохе настольных издательских систем (DTP). PostScript стал стандартом де-факто для профессиональной полиграфии.

В 1990 году Adobe выпустила PostScript Level 2, который добавил поддержку цветоделения, сжатия данных (JPEG, CCITT) и улучшенную обработку шрифтов. В 1997 году вышла версия PostScript 3, которая включала поддержку PDF (Portable Document Format) и более продвинутые графические возможности.

Современное состояние

Хотя PostScript остаётся важным форматом для профессиональной печати, в сфере документооборота и веб-публикаций его во многом вытеснил PDF, который также разработан Adobe и основан на тех же принципах. Однако PostScript по-прежнему используется в высокопроизводительных печатных машинах, фотонаборных автоматах и в качестве внутреннего формата многих RIP (Raster Image Processor).

Архитектура и принципы работы

Стековый язык

PostScript является стековым языком, что означает, что все операции выполняются с данными, хранящимися в стеке. Программа на PostScript представляет собой последовательность команд (операторов) и операндов, которые помещаются в стек и извлекаются из него. Например, команда 2 3 add помещает числа 2 и 3 в стек, затем оператор add извлекает их, складывает и помещает результат (5) обратно в стек.

Графическая модель

PostScript использует модель описания страницы, основанную на следующих концепциях:

  • Текущая точка (current point): Положение на странице, с которого начинается следующая операция рисования.
  • Путь (path): Последовательность линий и кривых, которые могут быть обведены (stroke) или залиты (fill).
  • Графическое состояние: Набор параметров (толщина линии, цвет, шрифт, матрица преобразования), который определяет, как будут отображаться графические объекты.

Шрифты

PostScript поддерживает два типа шрифтов:

  • Type 1: Шрифты, использующие кубические кривые Безье для описания контуров символов. Они были стандартом для профессиональной типографики и поддерживали хинтинг (подсказки для улучшения отображения при малых размерах).
  • Type 3: Шрифты, которые могут содержать произвольные графические примитивы, включая растровые изображения, но не поддерживают хинтинг.

Управление устройством

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

Версии и расширения

PostScript Level 1

Базовая версия, выпущенная в 1984 году. Поддерживала основные графические операции, шрифты Type 1 и Type 3, а также простые растровые изображения.

PostScript Level 2

Выпущен в 1990 году. Включал:

  • Поддержку цветовых пространств (RGB, CMYK, CIE Lab).
  • Сжатие данных (JPEG, LZW, CCITT Group 3/4).
  • Улучшенную обработку шрифтов (Type 1 с хинтингом).
  • Возможность работы с большими документами.

PostScript 3

Выпущен в 1997 году. Включал:

  • Поддержку PDF (Portable Document Format) как встроенного формата.
  • Улучшенную обработку прозрачности.
  • Поддержку ICC-профилей для управления цветом.
  • Новые операторы для работы с масками и композитингом.

Encapsulated PostScript (EPS)

EPS — это подмножество PostScript, предназначенное для включения PostScript-графики в другие документы. Файлы EPS содержат превью (preview) в виде растрового изображения, что позволяет программам отображать их на экране без интерпретации PostScript. EPS широко использовался в DTP-программах (PageMaker, QuarkXPress, Adobe InDesign).

Применение

Полиграфия и издательское дело

PostScript является основным форматом для передачи макетов в типографии. Все профессиональные программы верстки (Adobe InDesign, QuarkXPress) могут экспортировать документы в PostScript. RIP (Raster Image Processor) преобразует PostScript-код в растровое изображение, которое затем выводится на печатную машину или фотонаборный автомат.

Настольные издательские системы (DTP)

В 1980-х годах PostScript стал ключевым компонентом революции DTP. Принтеры с поддержкой PostScript (например, Apple LaserWriter) позволяли создавать высококачественную печатную продукцию прямо на рабочем столе.

Научная и техническая графика

PostScript используется для создания иллюстраций в научных публикациях. Многие программы для математического моделирования (Mathematica, MATLAB) и графические редакторы (Adobe Illustrator) могут экспортировать изображения в PostScript.

Документооборот

Хотя PDF стал более популярным для обмена документами, PostScript по-прежнему используется в высокопроизводительных печатных системах, где требуется точное управление процессом печати.

Критика и ограничения

Сложность и размер

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

Зависимость от интерпретатора

Для вывода PostScript-документа требуется интерпретатор, который может быть дорогим и ресурсоёмким. Это ограничивало его использование в дешёвых принтерах.

Отсутствие интерактивности

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

Замена на PDF

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

Интересные факты

  • PostScript является полным по Тьюрингу языком программирования, что означает, что на нём можно написать любую вычислимую функцию.
  • Первая версия PostScript была написана на языке Pascal.
  • В 1985 году компания Adobe выпустила первый коммерческий интерпретатор PostScript, который работал на процессоре Motorola 68000.
  • PostScript стал основой для разработки формата PDF, который был выпущен в 1993 году.
  • В 1990-х годах существовали альтернативные языки описания страниц, такие как PCL (Hewlett-Packard) и Interpress (Xerox), но PostScript остался доминирующим в профессиональной полиграфии.

Источники

  • Adobe Systems Incorporated. PostScript Language Reference Manual. 3rd ed. Addison-Wesley, 1999.
  • Уорнок, Джон. The PostScript Language: A Tutorial and Cookbook. Addison-Wesley, 1985.
  • История развития PostScript на сайте Adobe.
  • Материалы конференций по издательским системам (Seybold Seminars, 1980-1990-е годы).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →