Display PostScript: Difference between revisions

Content deleted Content added
m WPCleaner v1.36 - Repaired 1 link to disambiguation page - (You can help) - Nextstep
m copyedit,standard WP date handling; general fixes using AWB using AWB
Line 1:
{{Multiple issues|
{{no footnotes|date=August 2012}}
{{ref improverefimprove|date=August 2012}}
}}
 
'''Display PostScript''' (or '''DPS''') is a [[2D computer graphics|2D graphics engine]] system for computers which uses the [[PostScript]] (PS) imaging model and language (originally developed for [[computer printing]]) to generate on-screen graphics. To the basic PS system, DPS adds a number of features intended to ease working with [[bitmap]]ped displays and improve performance of some common tasks.
 
Early versions of PostScript display systems were developed at [[Adobe Systems]]. During development of the [[NeXT]] computers, NeXT and Adobe collaborated to produce the official DPS system, which was released in 1987. NeXT used DPS throughout its history, while versions from Adobe were popular on Unix workstations for a time during the 1980s and 90s1990s.
 
== Design ==
In order to support interactive, on-screen use with reasonable performance, changes were needed:
 
* ''Multiple execution contexts'': Unlike a printer environment where a PS interpreter processes one job at a time, DPS would be used in a number of [[Window_Window (computing)|window]]s at the same time, each with their own settings (colors, brush settings, scale, etc.). This required a modification to the system to allow it to keep several "contexts" (sets of state data) active, one for each process (window).
* ''Encoded names'': Many of the procedures and data structures in PostScript are looked up by name, string identifier. In DPS these names could be replaced by integers, which are much faster for a computer to find.
* ''Interaction support'': A number of procedures were defined to handle interaction, including [[hit detection]].
Line 17 ⟶ 19:
* ''Programming language support'': DPS introduced the concept of a "<code>pswrap</code>", which allowed [[Software developer|developers]] to wrap PostScript code into a [[C (programming language)|C language]] function which could then be called from an application.
 
DPS did not, however, add a windowing system. That was left to the implementation to provide, and DPS was meant to be used in conjunction with an existing windowing engine. This was often the [[X Window System]], and in this form Display PostScript was later adopted by companies such as [[International Business Machines|IBM]] and [[Silicon Graphics|SGI]] for their workstations. Often the code needed to get from an X window to a DPS context was much more complicated than the entire rest of the DPS interface{{factcitation needed|date=March 2011}}. This greatly limited the popularity of DPS when any alternative was available{{factcitation needed|date=March 2011}}.
 
== History ==