Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Display PostScript (или DPS ) - это система 2D-графики для компьютеров, которая использует модель и язык изображения PostScript (PS) (изначально разработанный для компьютерной печати ) для создания экранной графики. К базовой системе PS DPS добавляет ряд функций, предназначенных для облегчения работы с растровыми дисплеями и повышения производительности некоторых общих задач.

Ранние версии систем отображения PostScript были разработаны в Adobe Systems . Во время разработки компьютеров NeXT , NeXT и Adobe сотрудничали для создания официальной системы DPS, которая была выпущена в 1987 году. NeXT использовал DPS на протяжении всей своей истории, в то время как версии от Adobe были популярны на рабочих станциях Unix в течение 1980-х и 1990-х годов.

Дизайн [ править ]

Для поддержки интерактивного использования на экране с разумной производительностью потребовались изменения:

  • Множественные контексты выполнения : в отличие от среды принтера, где интерпретатор PS обрабатывает одно задание за раз, DPS будет использоваться в нескольких окнах одновременно, каждое со своими настройками (цвета, настройки кисти, масштаб и т. Д.). Это потребовало модификации системы, чтобы позволить ей поддерживать несколько «контекстов» (наборов данных состояния) активными, по одному для каждого процесса (окна).
  • Закодированные имена : многие процедуры и структуры данных в PostScript ищутся по имени, строковому идентификатору. В DPS эти имена могут быть заменены целыми числами, которые компьютер может найти намного быстрее. [ необходима цитата ]
  • Поддержка взаимодействия : был определен ряд процедур для обработки взаимодействия, включая обнаружение попаданий .
  • Фаза полутонов : чтобы улучшить производительность прокрутки, DPS рисовал только небольшую часть окна, которая стала видимой, сдвигая остальную часть изображения, а не перерисовывая ее. Однако это означало, что полутона могут не совпадать, создавая видимые линии и прямоугольники при отображении графики. DPS включил дополнительный код для правильной обработки этих случаев. Современные полноцветные дисплеи без полутонов сделали эту идею в основном устаревшей.
  • Инкрементальные обновления : в приложениях для печати код PS интерпретируется до тех пор, пока он не получит значок, и showpageв этот момент он фактически распечатывается. Это не подходит для ситуации с отображением, когда постоянно требуется большое количество мелких обновлений. DPS включал режимы, позволяющие отображать информацию в полу-реальном времени по мере получения инструкций от пользовательских программ.
  • Поддержка растровых шрифтов : DPS добавила возможность отображать шрифты PS на нарисованные вручную растровые шрифты и менять их на лету. Способность Adobe PS отображать шрифты на устройствах с низким разрешением (значительно меньше 300  dpi ) была очень плохой. Например, экран NeXT использовал только 96 точек на дюйм. Это ограничение PS было устранено путем использования вручную созданных растровых шрифтов для обеспечения приемлемого качества. Более поздние реализации PS (включая совместимые замены, такие как Ghostscript ) предоставляли шрифты со сглаживанием на полутоновых или цветных дисплеях, что значительно улучшало качество. Однако эта разработка была слишком запоздалой, чтобы принести большую пользу. Современные дисплеи по-прежнему имеют разрешение около 100 dpi [ требуется обновление ], но имеют гораздо более высокое качество шрифта без использования растровых шрифтов.
  • Поддержка языков программирования : DPS представила концепцию « pswrap», которая позволила разработчикам обернуть код PostScript в функцию языка C, которую затем можно было вызвать из приложения.

Однако DPS не добавила оконную систему. Это было оставлено на усмотрение реализации, и DPS должен был использоваться вместе с существующим механизмом работы с окнами. Часто это была система X Window , и в этой форме Display PostScript позже был принят такими компаниями, как IBM и SGI, для своих рабочих станций. Часто код, необходимый для перехода из X-окна в контекст DPS, был намного сложнее, чем весь остальной интерфейс DPS [ необходима цитата ] . Это сильно ограничивало популярность DPS, когда была доступна какая-либо альтернатива [ необходима цитата ] .

История [ править ]

Разработчики NeXT написали совершенно новый механизм работы с окнами, чтобы в полной мере использовать объектно-ориентированную операционную систему NeXT . В DPS был добавлен ряд команд для фактического создания окон и реакции на события, аналогичные, но более простые, чем NeWS . Единый API значительно упростил программирование на более высоких уровнях и сделал NeXT одной из немногих систем, широко использующих DPS. Библиотека оконной системы пользовательского пространства NeXTSTEP использовала PostScript для рисования таких элементов, как заголовки и скроллеры. Это, в свою очередь, широко использовало pswraps, которые, в свою очередь, были заключены в объекты и представлены программисту в объектной форме.

Современные производные [ править ]

Яблоко «s Mac OS X операционная система использует центральный сервер окна (созданный полностью Apple) , что окно кэши графика , как PDF , вместо того , чтобы хранить и выполнение кода PostScript [ править ] . Графическая библиотека под названием Quartz 2D обеспечивает визуализацию в стиле PostScript с использованием модели рендеринга PDF (подмножество модели PostScript с дополнительными настройками), но она используется фреймворками приложений - в оконном сервере Mac OS X нет PostScript. Apple решила использовать эту модель по ряду причин, включая избежание лицензионных сборов за DPS и более эффективную поддержку устаревшего кода Carbon и Classic ; Набросокприложения используют исключительно растровое изображение. Adobe, авторские права оговорка [ править ] Некоторые говорит , чтобы применить к стандарту PDF тем самым якобы гораздо менее ограничительным, предоставление, он утверждал (то есть здесь, предыдущий автор) разрешения условного авторского права никому использовать формат программное обеспечение бесплатно. [ необходима цитата ]

См. Также [ править ]

  • Adobe StandardEncoding (набор символов PostScript)
  • Набор символов NeXT
  • Новости
  • Кварц 2D

Ссылки [ править ]

Дальнейшее чтение [ править ]

  • Adobe Systems Incorporated (1990 г.) [1985 г.]. Справочное руководство по языку PostScript (2-е изд.). Издательство Эддисон-Уэсли . (NB. Это издание также содержит описание Display PostScript, которое больше не обсуждается в третьем издании.)

Внешние ссылки [ править ]

  • Описание на C2 Wiki
  • GNU / BackBone
  • Самая последняя спецификация PDF, версия 1.7
  • Справочник по языку PostScript, второе издание
  • Отображение справочных документов PostScript