(57)【要約】【課題】仕様の異なる複数のプリンティングシステムに対応可能なドライバプログラムを提供する。【解決手段】ＴＩＯＧＡ印刷システムとＣＵＰＳ印刷システムとで共通に使用されるプリントデータ生成部３２と、ＴＩＯＧＡ印刷システム特有の処理部であるプリンタ情報返答部３１と、ＣＵＰＳ印刷システム特有の処理部であるデータ形式変換部とに処理部を分割し、それらをインストール先のシステムに応じて選択的にインストールするようにした。【選択図】図１
2007102378.tif 000002
【特許請求の範囲】
【請求項１】
第１のＯＳからの第１態様の印刷設定情報と第１態様の印刷データとの入力を受付け、プリンタで印刷可能なプリントデータを生成する生成部と、
第２のＯＳからの第２態様の印刷設定情報と第２態様の印刷データとの入力を受付け、前記第１態様の印刷設定情報と前記第１態様の印刷データとに各々変換して前記生成部へ出力する変換部と、を備え、
前記変換部は、前記第２のＯＳは行わず、前記第１のＯＳが行う制御を少なくとも一部代行することを特徴とするドライバプログラム。
【請求項２】
前記変換部は、前記第２態様の印刷データの分割を行って複数のデータからなる前記第１態様の印刷データに変換し、自身が代行する前記制御の段階に応じて前記複数のデータからなる前記第１態様の印刷データを順次生成部へ出力する、
請求項１記載のドライバプログラム。
【請求項３】
前記プリンタとの間で相互通信を行う相互通信部と、前記生成部及び前記変換部の少なくとも一方との間の情報の伝達を、クライアントサーバ型通信で行う伝達部をさらに備える、
請求項１又は２記載のドライバプログラム。
【請求項４】
前記生成部は、前記相互通信部が前記プリンタから取得した情報を処理する機能をさらに備えており、
前記生成部と前記相互通信部とは互いに異なるプロセスで動作する、
請求項３記載のドライバプログラム。
【請求項５】
前記プリントデータは、前記伝達部及び前記相互通信部を経由して前記プリンタへ送信される、
請求項３記載のドライバプログラム。
【請求項６】
前記第２のＯＳへのインストール時には、前記プリンタのプリンタ情報を示すファイルとともに、前記生成部と前記変換部とがインストールされ、
前記第１のＯＳへのインストール時には、前記生成部と前記変換部とのうち前記生成部と、前記第１のＯＳからの問い合わせに対して前記プリンタ情報を返答する返答部とがインストールされる、
請求項１乃至５のいずれか一項記載のドライバプログラム。
【請求項７】
前記第２のＯＳへのインストール時には、前記プリンタのプリンタ情報を示すファイルとともに、前記生成部と前記変換部と前記伝達部とがインストールされ、
前記第１のＯＳへのインストール時には、前記生成部と前記変換部と前記伝達部とのうち前記生成部と、前記第１のＯＳからの問い合わせに対して前記プリンタ情報を返答する返答部とがインストールされる、
請求項３乃至５のいずれか一項記載のドライバプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタを使用するためにパソコン等の情報処理装置にインストールされるドライバプログラムに関する。
【背景技術】
【０００２】
従来、パソコン（以下、ＰＣという）等に搭載されるＯＳ（オペレーティングシステム）には、印刷要求を行うＰＣにプリンタがローカルに接続された環境での印刷をサポートするプリンティングシステムが備えられており、ＰＣには、そのプリンティングシステム及び使用するプリンタの機種に対応したプリンタドライバ（ドライバプログラム）が搭載される。このため、基本的には、ＯＳのバージョンアップ等によって、それに搭載されるプリンティングシステムが変更されれば、そのプリンティングシステムを利用して動作するプリンタドライバもそれに併せて変更する必要がある。しかし、このように、各プリンティングシステムにそれぞれ対応したプリンタドライバの開発を行うことは、開発コストの増大を招くだけでなく、プリンタドライバを使用するユーザにも混乱を生じさせる要因となる。このため、プリンタドライバを開発する際には、複数のプリンティングシステムに対応したドライバを開発することが望まれる。
【特許文献１】特開２００４−３８６５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、搭載されるインターフェースや機能モジュールのアルゴリズム等が異なる複数のプリンティングシステムについて、それらに共通のプリンタドライバを如何にして設計するかについては、未だ有効な提案がなされているとは言い難いのが現状である。
【０００４】
例えば、アップルコンピュータ社の「ＭａｃＯＳ（登録商標）」には、「ＴＩＯＧＡ」と呼ばれるプリンティングシステムを搭載したものや、「ＣＵＰＳ（Common UNIX（登録商標） Printing System ）」と呼ばれるプリンティングシステム（例えば、特許文献１参照）を搭載したものが存在するが、それら双方のシステム間では、プリンタドライバが取得する印刷設定情報のデータの形式やラスタデータの取得方法が異なる。このため、ＴＩＯＧＡプリンティングシステムとＣＵＰＳプリンティングシステムとでそれぞれ別々にドライバを開発することが余儀なくされており、その結果、前述した開発コストの増大等といった問題を依然として残すものであった。
【０００５】
本発明は、こうした従来の実情に鑑みてなされたものであり、その目的は、仕様の異なる複数のプリンティングシステムに対応可能なドライバプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明のドライバプログラムは、第１のＯＳからの第１態様の印刷設定情報と第１態様の印刷データとの入力を受付け、プリンタで印刷可能なプリントデータを生成する生成部と、第２のＯＳからの第２態様の印刷設定情報と第２態様の印刷データとの入力を受付け、前記第１態様の印刷設定情報と前記第１態様の印刷データとに各々変換して前記生成部へ出力する変換部と、を備え、前記変換部は、前記第２のＯＳは行わず、前記第１のＯＳが行う制御を少なくとも一部代行することを要旨とする。
【０００７】
この構成によれば、第１のＯＳと第２のＯＳとでそれぞれ共通に用いられる生成部と、第２のＯＳのみで用いられる変換部とに処理部が分割して構成されることで、第１のＯＳと第２のＯＳとの双方に対応可能なドライバプログラムを実現することができる。
【０００８】
上記構成のドライバプログラムでは、前記変換部は、前記第２態様の印刷データの分割を行って複数のデータからなる前記第１態様の印刷データに変換し、自身が代行する前記制御の段階に応じて前記複数のデータからなる前記第１態様の印刷データを順次生成部へ出力する、といった態様を採用することもできる。
【０００９】
この構成によれば、変換部は、第２態様の印刷データを所定の単位ずつに分割して第１態様の印刷データに変換し生成部に出力する。
上記構成のドライバプログラムでは、前記プリンタとの間で相互通信を行う相互通信部と、前記生成部及び前記変換部の少なくとも一方との間の情報伝達を、クライアントサーバ型通信で行う伝達部をさらに備える、といった態様を採用することもできる。
【００１０】
この構成によれば、伝達部は、生成部で生成されたプリントデータを相互通信部へ送る一方、プリンタから相互通信部を介して受信した情報（ステータス情報など）を生成部や変換部へ送る。
【００１１】
上記構成のドライバプログラムでは、前記生成部は、前記相互通信部が前記プリンタから取得した情報を処理する機能をさらに備えており、前記生成部と前記相互通信部とは互いに異なるプロセスで動作する、といった態様を採用することもできる。
【００１２】
この構成のように、生成部と相互通信部とが互いに別プロセスで動作するような場合にも、前述したクライアントサーバ型通信を行う伝達部により、それらプロセス間における同期を取りながら、プリンタとの間の相互通信部を介した双方向の通信（プリンタへのプリントデータ等の送信、プリンタからのステータス情報等の受信）を実現することができる。
【００１３】
上記構成のドライバプログラムでは、前記プリントデータは、前記伝達部及び前記相互通信部を経由して前記プリンタへ送信される、といった態様を採用することもできる。
この構成のように、生成部で生成されたプリントデータを伝達部から直接、相互通信部を経由してプリンタへ送信してもよい。
【００１４】
上記構成のドライバプログラムでは、前記第２のＯＳへのインストール時には、前記プリンタのプリンタ情報を示すファイルとともに、前記生成部と前記変換部とがインストールされ、前記第１のＯＳへのインストール時には、前記生成部と前記変換部とのうち前記生成部と、前記第１のＯＳからの問い合わせに対して前記プリンタ情報を返答する返答部とがインストールされる、といった態様を採用することもできる。
【００１５】
この構成によれば、インストール先のＯＳに応じて必要な処理部のみがインストールされるため、複数のプリンティングシステムに対応したドライバプログラムを提供することができる。
【００１６】
上記構成のドライバプログラムでは、前記第２のＯＳへのインストール時には、前記プリンタのプリンタ情報を示すファイルとともに、前記生成部と前記変換部と前記伝達部とがインストールされ、前記第１のＯＳへのインストール時には、前記生成部と前記変換部と前記伝達部とのうち前記生成部と、前記第１のＯＳからの問い合わせに対して前記プリンタ情報を返答する返答部とがインストールされる、といった態様を採用することもできる。
【００１７】
この構成によれば、インストール先のＯＳに応じて必要な処理部のみがインストールされるため、複数のプリンティングシステムに対応したドライバプログラムを提供することができる。
【発明を実施するための最良の形態】
【００１８】
（第１の実施の形態）
以下、本発明を具体化した第１の実施の形態を図１〜図５に従って説明する。
図１は、本実施の形態に係るドライバプログラムをＴＩＯＧＡプリンティングシステムを備えるオペレーティングシステム（以下、ＯＳ）に適用した印刷システム（以下、ＴＩＯＧＡ印刷システムという）の全体の概略構成を示すブロック図である。
【００１９】
本ＴＩＯＧＡ印刷システムは、大別すると、情報処理装置としてのパソコン（以下、ＰＣ）１と、それに所定の通信ポート（ＵＳＢポート等）を介して接続されるプリンタ２とから構成される。
【００２０】
ＰＣ１は、アプリケーション１１、ＴＩＯＧＡプリンティングシステム１２、プリンタドライバ１３を備え、アプリケーション１１から受け取った印刷データをＴＩＯＧＡプリンティングシステム１２及びプリンタドライバ１３を通じてプリンタ２が処理可能（印刷可能）なプリントデータに変換して出力する。なお、本実施の形態においては、ＴＩＯＧＡプリンティングシステム１２が「第１のＯＳ」に相当する。
【００２１】
アプリケーション１１は、ＴＩＯＧＡプリンティングシステム１２に対して印刷要求を行うものであり、印刷開始時にＰＤＦ（Portable Document Format）形式の印刷データ（ＰＤＦファイル）と用紙サイズ、用紙種類、インク種類等が設定された印刷設定情報とを同プリンティングシステム１２に受け渡す。
【００２２】
ＴＩＯＧＡプリンティングシステム１２は、プリンタ２の登録処理（初回の接続時のみ）、プリンタ情報の管理、印刷要求の管理、印刷ジョブの管理（ジョブの開始、終了処理など）等、プリンタ２に印刷を実行させるための印刷処理全般を管理する処理を行う。
【００２３】
このＴＩＯＧＡプリンティングシステム１２は、アプリケーション１１からの印刷設定情報をジョブチケット（JobTicket ）として受け取り、プリンタドライバ１３の後述するプリントデータ生成部３２からのデータ取得要求（コールバック）に基づいて、ＯＳ内にライブラリとして備えられている所定ＡＰＩ（Application Program Interface ）を読込むことで上記ＰＤＦ形式の印刷データを中間データのラスタデータに変換する。そして、このラスタデータとジョブチケットとをプリンタドライバ１３に受け渡す。なお、本実施の形態では、ジョブチケットが「第１態様の印刷設定情報」に相当し、ラスタデータが「第１態様の印刷データ」に相当する。
【００２４】
プリンタドライバ１３は、ＴＩＯＧＡプリンティングシステム１２より取得したジョブチケットに基づいて、ラスタデータをプリンタ２で処理可能なプリントデータに変換（データ展開）する。このデータ展開処理では、色変換、二値化といったハーフトーン処理や、ハーフトーン処理後のハーフトーンデータを図示しない印刷ヘッドの走査パス毎に分解するマイクロウィーブ処理等を行って画像形成用のデータを生成し、そのデータに所定の印刷コマンドを付加することでプリントデータを生成する。
【００２５】
プリンタドライバ１３は、こうして生成したプリントデータをプリンタ２へ出力する。これにより、プリンタ２では、プリントデータに基づいて印刷媒体への印刷が行われる。以上までの構成が、本ＴＩＯＧＡ印刷システムの基本構成となる。以下、引き続き図１を参照して詳細を説明する。
【００２６】
ＴＩＯＧＡプリンティングシステム１２は、ファイル生成部２１と、ファイル登録部２２とを備えている。ファイル登録部２２には、そのプリンタ２のプリンタ名やアイコンに関する情報の他、そのプリンタ２のオプションや機能に関するプリンタ機種固有の情報を記述したＰＰＤ（Postscript Printer Description）ファイル２３が登録される。なお、本実施の形態では、ＰＰＤファイル２３に記述される情報が、「プリンタ情報」に相当する。
【００２７】
ファイル生成部２１は、プリンタ２の初回接続時、即ち、ＰＣ１に接続されたプリンタ２が未知のプリンタである場合に、同プリンタ２に対応するプリンタドライバ１３に上記プリンタ情報を問い合わせ、同プリンタドライバ１３（厳密には、後述するプリンタ情報返答部３１）からプリンタ情報を取得する。そして、取得したプリンタ情報に基づき上記ＰＰＤファイル２３を生成し、ファイル登録部２２に登録する。
【００２８】
ＴＩＯＧＡプリンティングシステム１２は、このようにファイル生成部２１により生成したＰＰＤファイル２３をファイル登録部２２へ登録することで、ＯＳへのプリンタ２の登録（プリンタ登録処理）を行う。そして、アプリケーション１１から印刷要求を受付けた際には、ファイル登録部２２に登録されているＰＰＤファイル２３を参照することで、対応するプリンタ情報をアプリケーション１１に回答する。これにより、アプリケーション１１では、プリンタ情報に基づきジョブチケットが生成される。
【００２９】
プリンタドライバ１３は、プリンタ情報返答部３１と、プリントデータ生成部３２と、相互通信部３３とを備えている。
プリンタ情報返答部３１は、前述したプリンタ登録処理の際に必要となるプリンタ情報を、ＴＩＯＧＡプリンティングシステム１２からの問い合わせに対して返答する処理部である。なお、本実施の形態では、このプリンタ情報返答部３１が「返答部」に相当する。
【００３０】
プリントデータ生成部３２は、印刷開始時に、ＴＩＯＧＡプリンティングシステム１２によって初期化され、その後のジョブ開始指示に基づいて、同ＴＩＯＧＡプリンティングシステム１２から取得したラスタデータをプリンタ２での処理に適した画像形成用のデータ（ＣＭＹＫ系のインク色によるドットの形成有無を指示するデータ）に展開し、そのデータに印刷コマンドを付加してプリントデータを生成する。そしてＴＩＯＧＡプリンティングシステム１２からのジョブ終了指示に基づいて処理を終了する。又、このプリントデータ生成部３２は、プリンタ２から一定時間間隔で取得した該プリンタ２に関するステータス情報を解析しインク切れ検知等のエラー処理も行う。なお、本実施の形態では、プリントデータ生成部３２が「生成部」に相当する。
【００３１】
相互通信部３３は、プリンタ２との間で双方向のデータ通信を行うための通信モジュールであって、プリントデータ生成部３２から受信したプリントデータをプリンタ２へ送信したり、プリンタ２から受信したステータス情報をプリントデータ生成部３２へ送信したりする。
【００３２】
図２は、本ＴＩＯＧＡ印刷システムにおける処理を示すフローチャートである。
ステップ１００で、ＴＩＯＧＡプリンティングシステム１２は、ＰＣ１へのプリンタ２の接続を検知すると、続いてステップ１０１で、接続されたプリンタ２のデバイスＩＤを取得する。
【００３３】
次にステップ１０２で、ＴＩＯＧＡプリンティングシステム１２は、プリンタドライバ１３にプリンタ２のプリンタ情報を問い合わせる。プリンタドライバ１３は、この問い合わせを受けると、ステップ１０３で、そのプリンタ情報をＴＩＯＧＡプリンティングシステム１２に返答する。なお、このステップ１０３における処理が「返答部」で実行される処理に相当する。
【００３４】
次にステップ１０４で、ＴＩＯＧＡプリンティングシステム１２は、受け取ったプリンタ情報に基づいてＰＰＤファイル２３を生成し、それをファイル登録部２２へ登録する。
その後ステップ１０５で、ＴＩＯＧＡプリンティングシステム１２は、アプリケーション１１から印刷要求を受信すると、ＰＰＤファイル２３を参照してプリンタ情報をアプリケーション１１に回答し、該アプリケーション１１からジョブチケットとＰＤＦファイルとを取得する。
【００３５】
次にステップ１０６で、ＴＩＯＧＡプリンティングシステム１２は、取得したジョブチケットに基づいてＰＤＦファイルからラスタデータを生成し、続いてステップ１０７で、ジョブチケットとラスタデータとをプリンタドライバ１３へ出力する。
【００３６】
プリンタドライバ１３は、こうしてＴＩＯＧＡプリンティングシステム１２よりジョブチケットとラスタデータとを受け取ると、ステップ１０８で、ジョブチケットに基づいてプリントデータを生成する。なお、このステップ１０８における処理が「生成部」で実行される処理に相当する。この生成されたプリントデータは、ステップ１０９で、プリンタドライバ１３の相互通信部３３を経由してプリンタ２に送信される。これにより、プリンタ２は、ステップ１１０で、プリントデータに基づいて印刷を行う。
【００３７】
図３は、本実施の形態に係るドライバプログラムをＣＵＰＳプリンティングシステムを備えるＯＳに適用した印刷システム（以下、ＣＵＰＳ印刷システムという）の全体の概略構成を示すブロック図である。なお、図１のＴＩＯＧＡ印刷システムと同様の構成部分には同一符号を付して示す。
【００３８】
本ＣＵＰＳ印刷システムは、大別すると、情報処理装置としてのパソコン（以下、ＰＣ）４１と、それに所定の通信ポート（ＵＳＢポート等）を介して接続されるプリンタ２とから構成される。
【００３９】
ＰＣ４１は、アプリケーション１１、ＣＵＰＳプリンティングシステム４２、プリンタドライバ４３を備え、アプリケーション１１から受け取った印刷データをＣＵＰＳプリンティングシステム４２及びプリンタドライバ４３を通じて、プリンタ２が処理可能（印刷可能）なプリントデータに変換して出力する。なお、本実施の形態においては、ＣＵＰＳプリンティングシステム４２が「第２のＯＳ」に相当する。
【００４０】
アプリケーション１１は、ＣＵＰＳプリンティングシステム４２に対し印刷要求を行うものであり、印刷開始時にＰＤＦ形式の印刷データ（ＰＤＦファイル）と、用紙サイズ、用紙種類、インク種類等が設定された印刷設定情報とを同プリンティングシステム４２に受け渡す。
【００４１】
ＣＵＰＳプリンティングシステム４２は、プリンタ２の登録処理（初回接続時のみ）、プリンタ情報の管理、印刷要求の管理、印刷ジョブの管理等、プリンタ２に印刷を実行させるための印刷処理全般を管理するスケジューラ（図示略）や後述するＰＰＤファイル２３等を有している。
【００４２】
スケジューラは、本ＣＵＰＳ印刷システムの中核として動作するプログラムであり、デーモン（Deamon：UNIX（登録商標）のシステム上に常駐し、ネットワーク、ファイル、デバイスを監視し、特定の条件が満たされると起動するプログラム）と呼ばれる常駐プログラムとして起動される。
【００４３】
デーモンとして起動されたスケジューラは、スプーラの準備やポートの初期化等の初期処理を行い、印刷開始等の要求が発生すると、その発生した要求がどのような要求であるかを判定する判定処理を行って、該判定した各要求に対する処理を行う。この処理としては、例えば、アプリケーション１１から印刷要求があった場合に、印刷ジョブの出力先に指定されたプリンタ２に合わせた展開処理の起動を行う印刷ジョブ処理、プリンタ２から取得した当該プリンタ２に関するステータス情報等の情報を所定の保管領域に保管しておくステータス情報保存処理、ステータス情報の取り出し要求（ステータス要求）があった場合に、上記保管領域に保管している情報を要求元に返却するステータス返却処理、スケジューラに関するプリンタ設定や印刷ジョブに関する情報について、Ｗｅｂブラウザからの要求に対する処理を行うＷｅｂ処理、デーモンに対する終了要求の終了処理等がある。
【００４４】
本実施の形態では、スケジューラは、印刷要求があった場合には、ＰＰＤファイル２３を元に、アプリケーション１１からの印刷設定情報をカップスオプション（CupsOption）として受け取り、該カップスオプションと上記ＰＤＦ形式の印刷データ（ＰＤＦファイル）とをプリンタドライバ４３に受け渡す。なお、本実施の形態では、カップスオプションが「第２態様の印刷設定情報」に相当し、ＰＤＦファイルが「第２態様の印刷データ」に相当する。
【００４５】
プリンタドライバ４３は、ＣＵＰＳプリンティングシステム４２より取得したカップスオプション（第２態様の印刷設定情報）をジョブチケット（第１態様の印刷設定情報）に変換するとともに、ＰＤＦ形式の印刷データ（第２態様の印刷データ）を中間データのラスタデータ（第１態様の印刷データ）に変換する。
【００４６】
その後、プリンタドライバ４３は、さらに、上記変換したジョブチケットに基づいてラスタデータを、プリンタ２で処理可能なプリントデータに変換（データ展開）する。プリンタドライバ４３は、このプリントデータをプリンタ２へ出力する。
【００４７】
これにより、プリンタ２は、受信したプリントデータに基づいて印刷媒体への印刷を行う。以上までの構成が、本ＣＵＰＳ印刷システムの基本構成となる。以下、引き続き図３を参照して詳細を説明する。
【００４８】
ＣＵＰＳプリンティングシステム４２は、ファイル取得部５１と、ファイル登録部５２とを備えている。ファイル登録部５２には、前述したＴＩＯＧＡ印刷システムと同様、そのプリンタ２のプリンタ名やアイコンに関する情報の他、そのプリンタ２のオプションや機能に関するプリンタ機種固有の情報を記述したＰＰＤファイル２３が登録される。
【００４９】
ここで、ＣＵＰＳプリンティングシステム４２においては、ＰＰＤファイル２３は、プリンタドライバ４３のインストールの際にファイル登録部５２に登録される。このため、ＣＵＰＳプリンティングシステム４２においては、プリンタ２の初回接続時には、ファイル取得部５１により、ＰＰＤファイル２３の検索処理のみが行われる。そして、その後、アプリケーション１１から印刷要求を受付けた際には、ＰＰＤファイル２３を参照することで必要なプリンタ情報を読み取り、それをアプリケーション１１に回答する。これにより、アプリケーション１１では、ＰＰＤファイル２３のプリンタ情報に基づいてカップスオプションが生成される。
【００５０】
プリンタドライバ４３は、データ形式変換部６１と、プリントデータ生成部３２と、相互通信部３３とを備えている。このうち、プリントデータ生成部３２及び相互通信部３３は、前述したＴＩＯＧＡ印刷システムのプリンタドライバ１３に備えられるものと同じものである。つまり、プリントデータ生成部３２と相互通信部３３とは、ＴＩＯＧＡ印刷システムとＣＵＰＳ印刷システムとに共通にインストールされる。
【００５１】
データ形式変換部６１は、プリントデータ生成部３２に対する印刷開始にともなう初期化処理や、その後のジョブの開始処理及び終了処理等を行う。又、データ形式変換部６１は、そのジョブ実行時において、アプリケーション１１から受信した印刷設定情報をカップスオプション形式からジョブチケット形式に変換する処理を行うとともに、ＰＤＦ形式の印刷データを中間データのラスタデータに変換する処理を行う。この際、本実施の形態のデータ形式変換部６１は、上記ＰＤＦ形式の印刷データを１パスの画像形成に必要なライン数毎に分割してラスタデータへの変換を行い、その変換処理の段階に応じて、ラスタデータを数回に分けてプリントデータ生成部３２に順次転送するものとなっている。
【００５２】
このように、本実施の形態におけるデータ形式変換部６１は、前述したＴＩＯＧＡプリンティングシステム１２が行う制御の一部（印刷開始に伴う初期化処理や、ジョブの開始処理及び終了処理、ラスタデータへの変換処理等）を代行する。なお、本実施の形態においては、このデータ形式変換部６１が「変換部」に相当する。
【００５３】
プリントデータ生成部３２は、こうしてデータ形式変換部６１から取得したラスタデータとジョブチケットとに基づいてプリントデータを生成し、このプリントデータを相互通信部３３を介してプリンタ２へ送信する。
【００５４】
図４は、本ＣＵＰＳ印刷システムにおける処理を示すフローチャートである。
ステップ２００で、ＣＵＰＳプリンティングシステム４２は、ＰＣ４１へのプリンタ２の接続を検知すると、続いてステップ２０１で、接続されたプリンタ２のデバイスＩＤを取得する。
【００５５】
次にステップ２０２で、ＣＵＰＳプリンティングシステム４２は、ファイル登録部５２からＰＰＤファイル２３を検索する（ＰＰＤファイルの取得）。
その後ステップ２０３で、ＣＵＰＳプリンティングシステム４２は、アプリケーション１１からの印刷要求を受信すると、ＰＰＤファイル２３を参照してプリンタ情報をアプリケーション１１に回答し、該アプリケーション１１からカップスオプションとＰＤＦファイルとを取得する。そして、ステップ２０４で、それらをプリンタドライバ４３へ出力する。
【００５６】
プリンタドライバ４３は、ＣＵＰＳプリンティングシステム４２よりカップスオプションとＰＤＦファイルとを受け取ると、ステップ２０５で、カップスオプションをジョブチケットに変換し、続いてステップ２０６で、所定のライン数毎にラスタデータへの変換を行う。なお、これらステップ２０５，２０６における処理が「変換部」で実行される処理に相当する。
【００５７】
次にプリンタドライバ１３は、ステップ２０７で、ジョブチケットに基づいてプリントデータを生成する。こうして生成されたプリントデータは、ステップ２０８で、プリンタドライバ４３の相互通信部３３を経由してプリンタ２に送信される。これにより、ステップ２０９で、プリンタ２により印刷が行われる。
【００５８】
上記の如く構成された本実施の形態のＴＩＯＧＡ印刷システムやＣＵＰＳ印刷システムに係るハードウェアは、図５に示す、ＣＰＵ７１、ＲＡＭ７２、ＲＯＭ７３、表示装置７４、入力装置７５、記憶装置７６、ドライブ装置（ＣＤドライブ等）７７、プリンタ２、システムバス７８から構成される。なお、同図５におけるプリンタ２以外の構成（ＣＰＵ７１〜システムバス７８）は、情報処理装置としてのＰＣ１やＰＣ４１が備える。
【００５９】
ＣＰＵ７１は、ＴＩＯＧＡ印刷システムやＣＵＰＳ印刷システムにおける各部の制御を司る中央処理装置である。ＴＩＯＧＡ印刷システムにおけるプリンタドライバ１３、及び、ＣＵＰＳ印刷システムにおけるプリンタドライバ４３は、ＣＰＵ７１が実行する本実施の形態に係るドライバプログラムにより実現される。
【００６０】
ＲＡＭ７２は、各種プログラム等をロードして動作させるとともに、データを一時的に格納しておく記憶手段である。ＲＯＭ７３は、起動プログラム等を格納する記憶手段である。表示装置７４は、液晶ディスプレイ（ＬＣＤ）等よりなり各種画面を表示する。入力装置７５は、キーボード等よりなりユーザによる各種入力や指示に用いられる。記憶装置７６は、ハードディスク（ＨＤＤ）等よりなり各種プログラム等を格納しておく記憶手段である。
【００６１】
ドライブ装置７７は、記録媒体７９を駆動してその記録内容にアクセスし、記録媒体７９からプログラムやデータを読み出して記憶装置７６に格納する。この記録媒体７９には、光ディスクや光磁気ディスク等の媒体の他、ネットワークを通じてアップロード又はダウンロードしたプログラムを記録した媒体、ディスク装置等も含まれる。
【００６２】
なお、本実施の形態に係るドライバプログラム（プリンタ情報返答部３１、プリントデータ生成部３２、相互通信部３３、データ形式変換部６１及びＰＰＤファイル２３を含む）は記録媒体７９にて提供される。そして、ＴＩＯＧＡ印刷システムへのインストール時には、プリンタ情報返答部３１とプリントデータ生成部３２と相互通信部３３とがインストールされ、ＣＵＰＳ印刷システムへのインストール時には、ＰＰＤファイル２３と共に、データ形式変換部６１とプリントデータ生成部３２と相互通信部３３とがインストールされる。
【００６３】
以上記述したように、本実施の形態によれば、以下の効果を奏する。
（１）ＴＩＯＧＡ印刷システムとＣＵＰＳ印刷システムとで共通に使用されるプリントデータ生成部３２と、ＴＩＯＧＡ印刷システム特有の処理部であるプリンタ情報返答部３１と、ＣＵＰＳ印刷システム特有の処理部であるデータ形式変換部６１とに処理部を分割し、それらをインストール先のシステムに応じて選択的にインストールするようにした。この構成では、ＴＩＯＧＡプリンティングシステム１２とＣＵＰＳプリンティングシステム４２との双方に対応可能なドライバプログラムとすることができる。
【００６４】
（第２の実施の形態）
次に、本発明の第２の実施の形態を第１の実施の形態との相違点を中心に図６に従って説明する。なお、第１の実施の形態と同様な構成部分には同一符号を付して説明する。
【００６５】
図６は、第２の実施の形態に係るＣＵＰＳ印刷システムの全体の概略構成を示すブロック図である。
同図に示すように、本実施の形態では、プリントデータ生成部３２によって生成されたプリントデータを、データ形式変換部６１を通じてＣＵＰＳプリンティングシステム４２のバックエンド処理部８２に受け渡し、該バックエンド処理部８２から相互通信部３３を通じてプリンタ２へ出力するようにしたものである。このバックエンド処理部８２は、ＣＵＰＳプリンティングシステム４２（ＯＳ）に備えられる機能の一つであり、データ出力処理を管理する処理部であるが、プリンタドライバ４３ａ内のプリントデータ生成部３２やデータ形式変換部６１とは互いに別プロセスで動作する。即ち、プリントデータの生成やプリンタ２から取得したステータス情報の解析等を行うプリントデータ生成部３２と、該プリントデータ生成部３２からデータ形式変換部６１及びバックエンド処理部８２を通じてプリントデータを受け取り、プリンタ２へのプリントデータの送信を行う相互通信部３３とは互いに異なるプロセスで動作するものとなる。
【００６６】
このため、本ＣＵＰＳ印刷システムのプリンタドライバ４３ａには、それら互いに異なるプロセスで動作する処理部間での同期を取るために、クライアントサーバ型通信を行う、仮想サーバプログラム６２と仮想クライアントプログラム６３とからなる「伝達部」が別途追加して設けられている。即ち、伝達部（６２，６３）は、プリントデータ生成部３２と相互通信部３３とのプロセス間の同期を図りながら、相互通信部３３を介したプリンタ２へのプリントデータの送信制御及び同プリンタ２からの相互通信部３３を介したステータス情報の受信制御を行う。
【００６７】
従って、この伝達部を構成する上記プログラム６２，６３をインストールプログラムに設けておけば、ＣＵＰＳプリンティングシステム４２が備えるバックエンド処理部８２を用いてプリントデータの出力を行う本ＣＵＰＳ印刷システムにも更に対応可能なドライバプログラムを実現することができる。
【００６８】
なお、上記各実施の形態は、以下に記載する変形例の態様で実施してもよい。
（変形例１）第１の実施の形態では、プリンタ情報返答部３１をＴＩＯＧＡプリンティングシステム１２とプリントデータ生成部３２との間に設けてもよい。なお、この場合、ＴＩＯＧＡプリンティングシステム１２からプリントデータ生成部３２に対して送出されるラスタデータやジョブチケットなどは、プリンタ情報返答部３１内をそのまま通過して送られるようにする。
【００６９】
（変形例２）第２の実施の形態では、プリンタデータをバックエンド処理部８２を通じて出力する態様に必ずしも限定されず、プリントデータ生成部３２から伝達部（６３，６２）を通じて相互通信部３３に送る態様でもよい。
【００７０】
（変形例３）第２の実施の形態では、バックエンド処理部８２がプリンタ２へのデータ出力処理のみを管理する処理部として説明したが、将来、このバックエンド処理部８２が双方向通信可能な処理部として構成されれば、図７に示すように、伝達部（６２，６３）を省略したプリンタドライバ４３ｂとすることもできる。
【００７１】
（変形例４）その他上記各実施の形態及び上記各変形例の構成における設計的事項は、本発明の技術的思想の範囲内において適宜変更することができる。
以下に、上記各実施の形態及び上記各変形例から把握できる技術的思想を付加する。
【００７２】
（技術的思想１）
請求項１記載のドライバプログラムにおいて、
前記変換部が代行する制御には、印刷開始時における前記生成部の初期化処理、ジョブの開始及び終了処理、前記第２態様の印刷データから前記第１態様の印刷データへの変換処理を含むことを特徴とする。
【図面の簡単な説明】
【００７３】
【図１】第１の実施の形態に係るＴＩＯＧＡ印刷システムの全体の概略構成を示すブロック図。
【図２】第１の実施の形態に係るＴＩＯＧＡ印刷システムの処理の流れを示すフローチャート。
【図３】第１の実施の形態に係るＣＵＰＳ印刷システムの全体の概略構成を示すブロック図。
【図４】第１の実施の形態に係るＣＵＰＳ印刷システムの処理の流れを示すフローチャート。
【図５】ＴＩＯＧＡ印刷システム及びＣＵＰＳ印刷システムのハードウェア構成を示すブロック図。
【図６】第２の実施の形態に係るＣＵＰＳ印刷システムの全体の概略構成を示すブロック図。
【図７】変形例３に係るＣＵＰＳ印刷システムの全体の概略構成を示すブロック図。
【符号の説明】
【００７４】
１，４１，８１：ＰＣ、２：プリンタ、１１：アプリケーション、１２：ＴＩＯＧＡプリンティングシステム、１３，４３，４３ａ，４３ｂ：プリンタドライバ、２３：ＰＰＤファイル、３１：プリンタ情報返答部、３２：プリントデータ生成部、３３：相互通信部、４２：ＣＵＰＳプリンティングシステム、６１：データ形式変換部、６２：仮想サーバプログラム、６３：仮装クライアントプログラム、８２：バックエンド処理部。
【図１】
2007102378.tif 000003
【図２】
2007102378.tif 000004
【図３】
2007102378.tif 000005
【図４】
2007102378.tif 000006
【図５】
2007102378.tif 000007
【図６】
2007102378.tif 000008
【図７】
2007102378.tif 000009