Nishicon開発秘話 ポストスクリプト言語  戻る

 PostScript(ポストスクリプト、以下PS)言語はアドビシステムズが1984年に開発・発表したページ記述言語です。知らない方でもアドビが開発したPDFはご存じかと思いますが、、PDFはPS言語を元にコンピュータ上でのデータ交換のための機能が追加されて1993年に1.0をリリースさせた電子文書のためのファイルフォーマットです。

 1992(平成4年)年10月、営業の和田さんと川崎市の東芝小向工場に初めて訪れました。OTV沖縄放送様のQWS納品が終わって間もない頃でした。OTV様の放送機器は東芝製でしたからその放送機器(APC)を作っている工場の開発ってどんなシステム?

 東芝小向工場の開発はRKK熊本放送様のBEST11−U(HIBSではDAILYDESK、QWS部分)の開発でした。テレビ、ラジオシステム同時開発で、西コンの担当範囲はステータス管理、放送進行表、APCデータ作成(テレビ、ラジオでは全くの別物)及びAPCとのデータ通信でした。

 OTV様のAPCとの通信?は、APCデータを8インチのフロッピーディスク(IBMのディスケット)に書き出し、APC側でそのフロッピーディスクを読み込み、放送結果はその逆の操作で至ってシンプルでした。RKK様ではソケットインターフェースを使用し32K単位でACK/NAKを行います。途中ワッチドッグ(番犬)にAPC(1系、2系)の状況を確認し通信可能な状態のAPC本体(1系、2系のどちらか)とデータ通信を行う...ソケットインターフェースも殆ど知らないスキルなのに番犬がいる複雑な仕様だったと思います。(この件は中村元行君の投稿に譲ります?)

 打合せが進み、放送進行表始め各種帳票を出力するプリンタはSUN(サンマイクロシステムズ)のOEMのPSプリンタでした。当時1台100万円もするプリンタでテストプリントを見せて頂くとキャノンのレーザーショットプリンタとは比べようもなく綺麗でした。アウトラインフォント...? 当時のキャノンのレーザーショットプリンタは文字がギザギザでした。

 キャノンのプリンタはLIPS(キャノン製レーザープリンタ向けに開発されたページ記述言語)で記述します。ESC(エスケープシーケンス、0x1B)で始まるバイト列での制御で社内では研究開発事業部やシステム開発グループが既にライブラリーを作成していて使い易いようになっていました。

 PSプリンタは単純にテキストを出力するのであれば提供されているコマンドでリダイレクトすれば良いのですが、実際の帳票は罫線や網掛けまたヘッダ等文字サイズ指定も必要でした。打合せ当初は東芝側がこのPSプリンタ用のライブラリーを提供して頂けるとの事で帳票設計を進めていましたが、途中からこの部分も西コンさんで開発して下さいか? 東芝は提供しないと言われたか? 兎に角、西コンがプリンタライブラリーも併せて開発する事になりました。

 取りあえず書店へ...PSの分厚いマニュアルを購入しました。随分後で分かった事ですが入門編のマニュアルがあり、先にそれを見ていたら随分と楽な開発になっていたかも知れませんが後の祭り...

 キャノンと違い、罫線にしても網掛けにしても英語表記で記述します。例えば罫線を引くには、20 20 linetoとX、Y座標を先に書く逆ポーランド記法で、更に座標点の考え方が大きく異なりました。キャノンは左上から右下にX、Y座標がプラスとなります(帳票の出力順序と同じで、上から下、左から右)が、PSでは一般的な数学のグラフと同じで左下から右上にX、Y座標がプラスとなります。また用紙サイズの指定が無く例えばA4横だと幅578ポイントとし、横帳票の場合は更に座標を90度回転させる(90 rotate)指定が必要でした。この他の機能設定も(当然の事ながら)キャノンのLIPSと全て異なりました。これをプログラマに意識させる事無く、キャノンのプリンタと同じ関数名、同じ引数で同じ動作をほぼ保証するようにライブラリー内で処理させました。(一部の機能は同じ指定は出来ていません)

 ここまでは何とか出来ましたが、肝心の文字フォントの指定がどうしても分かりません。いろいろと変更しても同じ大きさになり...マニュアルを何度も読み直しましたが基本的には英語版の日本語マニュアルで日本語の事が書かれてない...途方に暮れていた時、新日鐵システム部様に出向していた神下君が日本語の指定方法を教えてくれました。これで一気に解決PSプリンタライブラリーを完成する事が出来ました。

これを読まれている若い皆さんへ、苦労した経験は自分のスキルUPになります。大いに苦労しましょう!

エピローグ
 このPSプリンタライブラリーは後にも先にもこの局のみで他局では使用しませんでした。
 1995年THK様のSPOTDESKの開発ではランニングコストの安い京セラのプリンタを指定されました。京セラのプリンタ用のページ記述言語はプリスクライブという京セラ独自のページ記述言語でしたが、PSプリンタの開発ノウハウを元に割と簡単に作成出来ました。当然ながらライブラリーの関数名、引数、機能についてはキャノンやPSプリンタを踏襲しました。また2002年にはKBC様が富士ゼロックスのプリンタを指定されましたが、これも問題なく開発出来ました。


Page
Top