PostScriptを表示する

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

Display PostScript(またはDPS)は、 PostScript(PS)イメージングモデルと言語(元々はコンピューター印刷用に開発された)を使用して画面上のグラフィックスを生成する、コンピューター用の2Dグラフィックスエンジンシステムです。基本的なPSシステムに、DPSは、ビットマップディスプレイの操作を容易にし、いくつかの一般的なタスクのパフォーマンスを向上させることを目的とした多くの機能を追加します。

PostScriptディスプレイシステムの初期バージョンは、AdobeSystemsで開発されましNeXTコンピュータの開発中に、NeXTとAdobeは協力して公式のDPSシステムを作成しました。これは1987年にリリースされました。NeXTはその歴史を通じてDPSを使用していましたが、Adobeのバージョンは1980年代から1990年代にかけてUnixワークステーションで人気がありました。

デザイン

妥当なパフォーマンスでインタラクティブな画面上の使用をサポートするには、次の変更が必要でした。

  • 複数の実行コンテキスト:PSインタープリターが一度に1つのジョブを処理するプリンター環境とは異なり、DPSは、それぞれ独自の設定(色、ブラシ設定、スケールなど)を持つ複数のウィンドウで同時に使用されます。これには、プロセス(ウィンドウ)ごとに1つずつ、複数の「コンテキスト」(状態データのセット)をアクティブに保つことができるようにシステムを変更する必要がありました。
  • エンコードされた名前:PostScriptのプロシージャとデータ構造の多くは、名前、文字列識別子で検索されます。DPSでは、これらの名前を整数に置き換えることができます。整数は、コンピューターが見つけるのにはるかに高速です。[要出典]
  • インタラクションのサポート:ヒット検出など、インタラクションを処理するためのいくつかの手順が定義されました
  • ハーフトーンフェーズ:スクロールパフォーマンスを向上させるために、DPSはウィンドウの表示された小さな部分のみを描画し、画像の残りの部分を再描画するのではなくシフトしました。ただし、これは、ハーフトーンが整列せず、グラフィックの表示に目に見える線とボックスが生成される可能性があることを意味しました。DPSには、これらのケースを適切に処理するための追加のコードが含まれていました。ハーフトーンのない最新のフルカラーディスプレイは、このアイデアをほとんど時代遅れにしました。
  • インクリメンタルアップデートshowpage:印刷アプリケーションでは、PSコードは、実際に印刷される時点で解釈されます。これは、常に多数のマイナーアップデートが必要な表示状況には適していません。DPSには、ユーザープログラムから指示を受け取ったときに、半リアルタイムで表示できるモードが含まれていました。
  • ビットマップフォントのサポート:DPSは、PSフォントを手描きのビットマップフォントにマップし、その場で一方から他方に変更する機能を追加しました。低解像度デバイス(300 dpi未満 )でフォントを表示するAdobePSの機能は非常に貧弱でした。たとえば、NeXT画面は96dpiしか使用しませんでした。このPSの制限は、手作業で作成されたビットマップフォントを使用して、問題のない品質を提供することで回避されました。PSのその後の実装( Ghostscriptなどの互換性のある代替品を含む)では、グレースケールまたはカラーディスプレイにアンチエイリアスフォントが提供され、品質が大幅に向上しました。しかし、この開発は遅すぎてあまり役に立ちませんでした。最新のディスプレイはまだ約100dpiであり、[更新が必要]ただし、ビットマップフォントを使用せずに、非常に優れたフォント品質を備えています。
  • プログラミング言語のサポート:DPSは「」の概念を導入しましたpswrap。これにより、開発者はPostScriptコードをC言語関数にラップし、アプリケーションから呼び出すことができます。

ただし、DPSはウィンドウシステムを追加しませんでした。これは実装に任されており、DPSは既存のウィンドウエンジンと組み合わせて使用​​することを目的としていました。これは多くの場合XWindowSystemであり、この形式のDisplay PostScriptは、後にIBMSGIなどの企業でワークステーションに採用されました。多くの場合、XウィンドウからDPSコンテキストに移動するために必要なコードは、他のDPSインターフェイス全体よりもはるかに複雑でした。[要出典]これにより、代替手段が利用可能な場合のDPSの人気が大幅に制限されました。[要出典]

歴史

NeXTの開発者は、NeXTのオブジェクト指向オペレーティングシステムを最大限に活用するために、まったく新しいウィンドウエンジンを作成しました。NeWSと同様ですが、 NeWSよりも単純な、実際にウィンドウを作成し、イベントに反応するために、いくつかのコマンドがDPSに追加されました単一のAPIにより、より高いレベルでのプログラミングがはるかに簡単になり、NeXTはDPSを広範囲に使用する数少ないシステムの1つになりました。ユーザースペースウィンドウシステムライブラリNeXTSTEPは、PostScriptを使用してタイトルバーやスクローラーなどのアイテムを描画しました。これにより、sが広範囲に使用pswrapされ、オブジェクトにラップされ、オブジェクト形式でプログラマーに提示されました。

現代のデリバティブ

AppleMacOSXオペレーティングシステムは、PostScriptコードを保存して実行する代わりに、ウィンドウグラフィックをビットマップとしてキャッシュする中央ウィンドウサーバー(完全にAppleによって作成された)を使用します。[引用が必要] Quartz2Dと呼ばれるグラフィックライブラリは、PDFレンダリングモデル(PostScriptモデルのサブセットと微調整)を使用してPostScriptスタイルのイメージングを提供しますが、これはアプリケーションフレームワークで使用されます。MacOSにはPostScriptはありません。 Xウィンドウサーバー。Appleは、DPSのライセンス料の回避や、レガシーのCarbonおよびClassicコードのより効率的なサポートなど、さまざまな理由でこのモデルを使用することを選択しました。QuickDrawベースのアプリケーションは、ビットマップ描画のみを使用します。PDF標準に適用するために一部の人が言ったAdobeの著作権規定[要出典]は、それによってはるかに制限が少なく、許可されていると主張されており、フォーマットを使用するための条件付き著作権許可が誰にでも主張されています(つまり、前の著者によって)ソフトウェアアプリケーションでは無料です。[要出典]

も参照してください

参考文献

さらに読む

  • Adobe Systems Incorporated(1990)[1985]。PostScript言語リファレンスマニュアル(第2版)。アディソン-ウェスリー出版社(注:このエディションには、第3版では説明されていないDisplay PostScriptの説明も含まれています。)

外部リンク