PostScript

PostScript（ポストスクリプト）は、アドビが開発している、1984年に発表したページ記述言語。

スタック指向型のプログラミング言語で、様々な計算・処理と共に描画命令を実行することができる。事前にデータをスタックに格納し、後の命令がデータを処理するというモデルで実行される。そのために記述法が逆ポーランド記法で一貫しており、名前は「追伸」の英語「post script」に後置記法といった意味を掛けている。

 バージョン 
1985年 - PostScript Level 1。初期バージョン。
1990年 - PostScript Level 2。日本語やカラー化対応。
1996年 - PostScript 3。PDF形式への対応。（Level 3は正式名称ではない）

 概要 
PostScriptは1985年にApple Computerのレーザープリンター、LaserWriterに採用された。モトローラ68000プロセッサと1.5メガバイトのRAMを搭載したこのプリンターは、プリンターでありながら当時のパーソナルコンピュータと同等の計算能力を持ち、それ自身が PostScript インタプリタを実行してページを生成した。同じ年、ライノタイプによりPostScriptを採用したイメージセッタが発表された。

当時はコンピュータとプリンター間の通信速度の遅さが、印刷物の品質向上のネックになっていた。しかし、プリンター自身に高い計算能力を持たせて、プログラミング言語を実行するという大胆な発想により、一気に問題は解決された。PostScript以前は、伝統的な手法より品質が劣るとされてきた電子印刷が、一気に商業印刷のレベルでも使われるようになり、今日では当たり前になっているDTPが普及するきっかけとなった。

後に印刷以外の用途でも使われ、ワークステーションである「NeXT」は、描画エンジンとしてDisplay PostScriptを採用していた。

今日では、パーソナルコンピュータの性能が上がると同時に、コンピュータ・プリンター間の接続速度が向上したため、個人レベルでパーソナルコンピュータにPostScriptインタプリタを搭載し、生成されたイメージをプリンターに送るということも行われる。

 実装 
ほとんどは、レーザープリンターに実装されている。「PSプリンター」と呼ばれ、PDFベースとなったMac OS Xより前のMacintoshの標準的プリンターであり、Windowsでも利用されることがあるが、アドビへのライセンス料が高額なためか、価格が数十万 - 百万円以上と一般のレーザープリンターに比べ高価で、専らDTP用途に限られている。

ソフトウェアによる実装では、アドビからライセンスを受けたラスターイメージプロセッサ (RIP) がエプソンなどいくつかのメーカーから自社製プリンターのために販売されていたが、PSプリンターの価格低下もあり、あまり普及していない。なお互換自由ソフトウェアとしてGhostscriptがある。

 サンプルプログラム 
以下の内容をPostScriptプリンターに送信すると、文字列「Hello World!」が印刷される。
 /font /Courier findfont 24 scalefont def
 font setfont
 100 100 moveto
 (Hello World!) show
 showpage

以下の内容をPostScriptプリンターに送信すると、長方形と文字列が印刷される。また、テキストファイルとして保存し、Adobe Illustratorなどで開くこともできる。
 %!
 % macro (draw rectangle) ; usage: left top width height RRECT
 /RRECT { newpath 4 copy pop pop moveto dup 0 exch rlineto exch 0 rlineto neg 0 exch rlineto closepath pop pop } def

 100 100 100 150 RRECT
 .5 setgray
 fill

 100 300 moveto
 /Helvetica findfont
 12 scalefont
 setfont
 .5 0 .5 0 setcmykcolor
 (test string) show

 showpage

 脚注 

 参考文献 

 関連項目 
Encapsulated PostScript (EPS)
Forth
Portable Document Format (PDF)
ラスターイメージプロセッサ
NeWS
PostScriptフォント
追伸 - 名称の語源
ページ記述言語
Scalable Vector Graphics (SVG) - 他のベクタ形式の画像フォーマット
Windows Metafile (WMF, EMF) - 他のベクタ形式の画像フォーマット

 外部リンク 
Adobe Printing Technologies -About PostScript 3（アドビ）
Adobe PostScript language reference third edition（アドビ、 英語）
How to Edit PostScript（日本語）

*
Category:ページ記述言語
Category:アドビ
Category:オープンフォーマット
Category:ベクターグラフィックス