(57)【要約】    【課題】  ホストベースプリンタにおいて、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することができる画像形成システムを提供する。    【解決手段】  プリンタにおいてＣＰＵは、デジタルカメラから印刷開始を要求するPictBridge規格のコマンドを受信すると、CamCmdタイプコマンドに加工してローカルＰＣのランゲージモニタ、ダイレクトプリントサーバに転送する。ダイレクトプリントサーバは、画像の情報を取得するためのコマンドをランゲージモニタに発行し、プリンタ、デジタルカメラに転送する。デジタルカメラは、画像データをプリンタ、ランゲージモニタ、ダイレクトプリントサーバに転送する。ダイレクトプリントサーバはドライバを起動させて画像データを通常の形式の画像イメージデータとイメージのパラメータデータに変換させ、ランゲージモニタを介してプリンタに供給させ、写真画像が印刷される。【選択図】      図４
2006302039.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのホストコンピュータと画像形成装置とを備える画像形成システムにおいて、
前記画像形成装置は、
画像機器を接続するための第１のインタフェース手段と、
前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段と、
前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成された前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工手段と、
印刷画像データに基づいて画像を印刷する画像印刷手段とを有し、
前記ホストコンピュータは、
前記画像機器から供給される画像データを前記印刷画像データに変換する画像データ変換手段と、
前記コマンド加工手段によって加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元手段と、
該コマンド復元手段によって復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、前記画像データ変換手段を制御して前記第２の規格に変換され前記画像データを対応する印刷画像データに変換させ、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供手段とを備えることを特徴とする画像形成システム。
【請求項２】
前記画像形成装置は、更に、前記少なくとも１つのホストコンピュータの内利用可能なホストコンピュータを選択するホストコンピュータ選択手段と、該ホストコンピュータ選択手段によって利用可能なホストコンピュータが存在しないと判別された場合に、前記第１のインタフェース手段を無効にするインタフェース制御手段とを備えることを特徴とする請求項１記載の画像形成システム。
【請求項３】
前記画像形成装置は、更に、前記少なくとも１つのホストコンピュータの内利用可能なホストコンピュータを選択するホストコンピュータ選択手段と、該ホストコンピュータ選択手段によって利用可能なホストコンピュータが存在しないと判別された場合に、前記画像形成装置が利用できない旨を前記画像機器に通知するための前記第１の規格で構成された前記第１のコマンド体系の通知コマンドを前記画像機器に送信する通知手段とを備えることを特徴とする請求項１記載の画像形成システム。
【請求項４】
前記画像印刷機能提供手段は、前記コマンド復元手段によって復元された前記第１のコマンド体系を有するコマンドの解析結果に応じて、適宜予め設定された応答を返信することを特徴とする請求項１乃至３のいずれか１項に記載の画像形成システム。
【請求項５】
前記画像印刷機能提供手段は、前記復元された前記第１のコマンド体系を有するコマンドが前記印刷要求コマンドであった場合に、前記画像形成装置を介して前記画像機器に前記画像データの送信を要求するために前記第２のコマンド体系の画像データ要求コマンドを生成し、該画像データ要求コマンドに応じて前記画像機器から前記画像形成装置を介して受信した前記画像データを前記第２の規格に変換することを特徴とする請求項１乃至４のいずれか１項に記載の画像形成システム。
【請求項６】
少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する前記画像形成装置とを備える画像形成システムの制御方法において、
前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容ステップと、
前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工ステップと、
前記ホストコンピュータにおいて、前記コマンド加工ステップにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元ステップと、
前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供ステップと、
前記ホストコンピュータにおいて、前記画像印刷機能提供ステップにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換ステップと、
前記画像形成装置において、前記画像データ変換ステップにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷ステップとを備えることを特徴とする画像形成システムの制御方法。
【請求項７】
少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する画像形成装置とを備える画像形成システムの制御方法をコンピュータに実行させるプログラムにおいて、
前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容モジュールと、
前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工モジュールと、
前記ホストコンピュータにおいて、前記コマンド加工モジュールにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元モジュールと、
前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供モジュールと、
前記ホストコンピュータにおいて、前記画像印刷機能提供モジュールにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換モジュールと、
前記画像形成装置において、前記画像データ変換モジュールにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷モジュールとを備えることを特徴とするプログラム。
【請求項８】
少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する画像形成装置とを備える画像形成システムの制御方法をコンピュータに実行させるプログラムを格納するコンピュータ読み取り可能な記憶媒体において、前記プログラムは、
前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容モジュールと、
前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工モジュールと、
前記ホストコンピュータにおいて、前記コマンド加工モジュールにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元モジュールと、
前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供モジュールと、
前記ホストコンピュータにおいて、前記画像印刷機能提供モジュールにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換モジュールと、
前記画像形成装置において、前記画像データ変換モジュールにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷モジュールとを備えることを特徴とする記憶媒体。
【請求項９】
画像機器を接続するための第１のインタフェース手段と、
少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段と、
前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成された前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工手段と、
印刷画像データに基づいて画像を印刷する画像印刷手段とを備えることを特徴とする画像形成装置。
【請求項１０】
画像機器から供給される画像データを印刷画像データに変換する画像データ変換手段と、
画像形成装置が備える前記画像機器を接続するための第１のインタフェース手段を介して送受信するための第１の規格で構成された前記画像形成装置との間で送受信するための第２のコマンド体系を有するコマンドを前記第１の規格で構成された前記画像形成装置が前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンドに復元するコマンド復元手段と、
該コマンド復元手段によって復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、前記画像データ変換手段を制御して前記第２の規格に変換され前記画像データを対応する印刷画像データに変換させ、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供手段とを備えることを特徴とするホストコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタやデジタル複合機等の画像形成装置を備える画像形成システムに関し、特に、ホストベースと呼ばれる電子写真系画像形成装置を備えており、デジタルカメラ等を画像形成装置に直接接続してデジタルカメラに記憶されているイメージデータを印刷することができる画像形成システム、その制御方法、プログラム、及び記憶媒体、並びに画像形成装置、及びホストコンピュータに関する。
【背景技術】
【０００２】
従来、印刷イメージデータのレンダリングや印刷制御をホストコンピュータ上で実行する、いわゆるホストベースプリンタや、レンダリングを自ら行うページ記述言語系プリンタが知られている。ページ記述言語系プリンタは、１ページ分の印刷イメージ情報をラスタライズするのに十分なメモリを実装している。これに比べて、ホストベースプリンタは、極めて少ない容量のイメージメモリで構成することができる。
【０００３】
また、ホストベースプリンタにおいては、印刷制御もホストコンピュータが行うので、ＲＯＭの容量やＣＰＵの処理能力もページ記述言語系プリンタより少ない容量かつ低い性能のもので十分その機能を満足させることができる。このため、前述のページ記述言語系プリンタより安価にプリンタを提供することが可能となる。
【０００４】
別の技術として、近年、デジタルカメラをプリンタに直接接続し、デジタルカメラで撮影した写真画像をこのプリンタで印刷する、いわゆるダイレクトプリントの技術が提案されている。この技術によれば、パーソナルコンピュータ（以下、ＰＣと称呼する。）を使うことなく写真画像を印刷することが可能になる（例えば、特許文献１参照）。
【０００５】
更に、最近では、例えばＣＩＰＡのPictBridge規格に代表されるような、デジタルカメラとプリンタの製造元メーカが同じである場合に限定されることなく、ダイレクトプリントを実現可能にする技術も提案されている。
【特許文献１】特開２００２−９４９１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述のように、ホストベースプリンタは印刷イメージデータのレンダリングや印刷制御をホストコンピュータ上で実行する必要がある。このため、たとえプリンタがデジタルカメラに直接接続するためのインタフェースを具備していたとしても、ダイレクトプリントの機能を実現するためには、ホストコンピュータ上で実行されるはずのレンダリングや印刷制御を実行する装置をプリンタ内部に実装しなければならない。しかしながら、レンダリングや印刷制御を実行する装置をプリンタ内部に実装してしまった場合は、ホストベースプリンタ本来の目的であるところの安価にプリンタを提供することができなくなってしまう。
【０００７】
上記問題に対する１つの解決方法として、ホストコンピュータにデジタルカメラを接続する方法が考えられる。しかしながら、この場合、操作性がPictBridge規格を採用するダイレクトプリントに比べて低下してしまう。また、ホストコンピュータとプリンタが近くに設置されている場合はよいが、ネットワークプリンタのようにホストコンピュータとプリンタが離れて設置されている場合、極めて利用しにくいシステムになってしまう。
【０００８】
本発明は、上記問題点を鑑みてなされたものであり、本発明の目的は、ホストベースプリンタにおいて、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することができる画像形成システム、その制御方法、プログラム、及び記憶媒体、並びに画像形成装置、及びホストコンピュータを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１記載の画像形成システムは、少なくとも１つのホストコンピュータと画像形成装置とを備える画像形成システムにおいて、前記画像形成装置は、画像機器を接続するための第１のインタフェース手段と、前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段と、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成された前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工手段と、印刷画像データに基づいて画像を印刷する画像印刷手段とを有し、前記ホストコンピュータは、前記画像機器から供給される画像データを前記印刷画像データに変換する画像データ変換手段と、前記コマンド加工手段によって加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元手段と、該コマンド復元手段によって復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、前記画像データ変換手段を制御して前記第２の規格に変換され前記画像データを対応する印刷画像データに変換させ、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供手段とを備えることを特徴とする。
【００１０】
請求項６記載の画像形成システムの制御方法は、少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する前記画像形成装置とを備える画像形成システムの制御方法において、前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容ステップと、前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工ステップと、前記ホストコンピュータにおいて、前記コマンド加工ステップにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元ステップと、前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供ステップと、前記ホストコンピュータにおいて、前記画像印刷機能提供ステップにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換ステップと、前記画像形成装置において、前記画像データ変換ステップにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷ステップとを備えることを特徴とする。
【００１１】
請求項７記載のプログラムは、少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する画像形成装置とを備える画像形成システムの制御方法をコンピュータに実行させるプログラムにおいて、前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容モジュールと、前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工モジュールと、前記ホストコンピュータにおいて、前記コマンド加工モジュールにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元モジュールと、前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供モジュールと、前記ホストコンピュータにおいて、前記画像印刷機能提供モジュールにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換モジュールと、前記画像形成装置において、前記画像データ変換モジュールにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷モジュールとを備えることを特徴とする。
【００１２】
請求項８記載の記憶媒体は、少なくとも１つのホストコンピュータと、画像機器を接続するための第１のインタフェース手段と前記少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを有する画像形成装置とを備える画像形成システムの制御方法をコンピュータに実行させるプログラムを格納するコンピュータ読み取り可能な記憶媒体において、前記プログラムは、前記画像形成装置において、前記第１のインタフェース手段を介して前記画像機器を収容する画像機器収容モジュールと、前記画像形成装置において、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成される前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工モジュールと、前記ホストコンピュータにおいて、前記コマンド加工モジュールにおいて加工された前記第２のコマンド体系を有するコマンドを前記第１のコマンド体系を有するコマンドに復元するコマンド復元モジュールと、前記ホストコンピュータにおいて、前記コマンド復元ステップにおいて復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供モジュールと、前記ホストコンピュータにおいて、前記画像印刷機能提供モジュールにおいて前記第２の規格に変換された前記画像データを対応する印刷画像データに変換する画像データ変換モジュールと、前記画像形成装置において、前記画像データ変換モジュールにおいて変換された前記印刷画像データに基づいて前記所望の画像を印刷する画像印刷モジュールとを備えることを特徴とする。
【００１３】
請求項９記載の画像形成装置は、画像機器を接続するための第１のインタフェース手段と、少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段と、前記第１のインタフェース手段を介して送受信するための第１の規格で構成された前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び前記第１の規格で構成された前記ホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドを、前記第２のコマンド体系を有するコマンド及び前記第１のコマンド体系を有するコマンドに夫々加工するコマンド加工手段と、印刷画像データに基づいて画像を印刷する画像印刷手段とを備えることを特徴とする。
【００１４】
請求項１０記載のホストコンピュータは、画像機器から供給される画像データを印刷画像データに変換する画像データ変換手段と、画像形成装置が備える前記画像機器を接続するための第１のインタフェース手段を介して送受信するための第１の規格で構成された前記画像形成装置との間で送受信するための第２のコマンド体系を有するコマンドを前記第１の規格で構成された前記画像形成装置が前記第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンドに復元するコマンド復元手段と、該コマンド復元手段によって復元された前記第１のコマンド体系を有するコマンドを解析し、前記復元された前記第１のコマンド体系を有するコマンドが前記画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、前記画像機器から前記画像形成装置を介して受信した前記所望の画像の画像データを第２の規格に変換し、前記画像データ変換手段を制御して前記第２の規格に変換され前記画像データを対応する印刷画像データに変換させ、且つ前記画像形成装置に前記所望の画像の印刷を実行させるために前記第２のコマンド体系の印刷制御コマンドを生成する画像印刷機能提供手段とを備えることを特徴とする。
【発明の効果】
【００１５】
請求項１記載の画像形成システム、請求項６記載の画像形成システムの制御方法、請求項７記載のプログラム、及び請求項８記載の記憶媒体によれば、画像形成装置は、画像機器を接続するための第１のインタフェース手段と、少なくとも１つのホストコンピュータを接続するための第２のインタフェース手段とを備えており、画像形成装置において、画像機器を接続するための第１のインタフェース手段を介して送受信するための第１の規格で構成されており且つ第１のインタフェース手段を介して送受信するための第１のコマンド体系を有するコマンド、及び第１の規格で構成されたホストコンピュータとの間で送受信するための第２のコマンド体系を有するコマンドが、第２のコマンド体系を有するコマンド及び第１の体系を有するコマンドに夫々加工される。ホストコンピュータにおいて、上記加工された第２のコマンド体系を有するコマンドを第１のコマンド体系を有するコマンドに復元し、この復元された第１のコマンド体系を有するコマンドを解析して、復元された第１のコマンド体系を有するコマンドが画像機器で選択された所望の画像の印刷を要求する印刷要求コマンドであった場合に、画像機器から画像形成装置を介して受信した所望の画像の画像データを第２の規格に変換し、この第２の規格に変換され画像データを対応する印刷画像データに変換させ、且つ画像形成装置に所望の画像の印刷を実行させるために第２のコマンド体系の印刷制御コマンドを生成する。そして、画像形成装置において、印刷画像データに基づいて画像が印刷される。このように、画像形成システムにおいて、画像形成装置は、第１の規格に基づく画像機器があたかも画像形成装置とだけ直接通信しているように振舞って印刷を実行する。このため、ユーザは、画像機器を直接画像形成装置に接続して、画像機器において所定の操作を行うことにより所望の写真画像の印刷を画像形成装置に実行させることができる。従って、ホストベースプリンタにおいて、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することができる。
【００１６】
請求項２記載の画像形成システムによれば、画像形成装置は、更に、少なくとも１つのホストコンピュータの内利用可能なホストコンピュータを選択するホストコンピュータ選択手段を備える。このため、画像形成システムにおいて、複数のホストコンピュータから、画像機器の画像データの印刷を実行可能にするホストコンピュータを選択することができるので、ユーザは、画像形成システムにおけるホストコンピュータの位置に拘らず、画像機器を直接画像形成装置に接続して、画像機器において所定の操作を行うことにより所望の写真画像の印刷を画像形成装置に実行させることができる。従って、ホストベースプリンタにおいて、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することが確実にできる。また、画像形成装置に近接するホストコンピュータの電源が切れているために上述の印刷機能を利用することができなくなることを抑制することができる。加えて、ホストコンピュータ選択手段によって利用可能なホストコンピュータが存在しないと判別された場合に、第１のインタフェース手段を無効にするインタフェース制御手段を備えるので、画像形成システムの操作性を向上させることができる。
【００１７】
請求項３記載の画像形成システムによれば、画像形成装置は、更に、少なくとも１つのホストコンピュータの内利用可能なホストコンピュータを選択するホストコンピュータ選択手段を備える。このため、画像形成システムにおいて、複数のホストコンピュータから、画像機器の画像データの印刷を実行可能にするホストコンピュータを選択することができるので、ユーザは、画像形成システムにおけるホストコンピュータの位置に拘らず、画像機器を直接画像形成装置に接続して、画像機器において所定の操作を行うことにより所望の写真画像の印刷を画像形成装置に実行させることができる。従って、ホストベースプリンタにおいて、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することが確実にできる。また、画像形成装置に近接するホストコンピュータの電源が切れているために上述の印刷機能を利用することができなくなることを抑制することができる。加えて、ホストコンピュータ選択手段によって利用可能なホストコンピュータが存在しないと判別された場合に、画像形成装置が利用できない旨を画像機器に通知するための第１の規格で構成された第１のコマンド体系の通知コマンドを画像機器に送信する通知手段を備えるので、画像形成システムの操作性を向上させることができる。
【００１８】
請求項４記載の画像形成システムによれば、画像印刷機能提供手段は、コマンド復元手段によって復元された第１のコマンド体系を有するコマンドの解析結果に応じて、適宜予め設定された応答を返信するので、請求項１の効果を確実に奏することができる。
【００１９】
請求項５記載の画像形成システムによれば、画像印刷機能提供手段は、復元された第１のコマンド体系を有するコマンドが印刷要求コマンドであった場合に、画像形成装置を介して画像機器に画像データの送信を要求するために第２のコマンド体系の画像データ要求コマンドを生成し、この画像データ要求コマンドに応じて画像機器から画像形成装置を介して受信した画像データを第２の規格に変換するので、請求項１記載の効果をより確実に奏することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態について図面を参照にしながら説明する。
【００２１】
図１は、本発明の実施の形態に係る画像形成システムの概略構成を示す図である。
【００２２】
本実施の形態に係る画像形成システム１０は、図１に示すように、画像形成装置（以下、プリンタと称呼する。）１０００と、ＵＳＢケーブル６０００を介してプリンタ１０００に通信可能に接続されたローカルＰＣ２０００とを備える。
【００２３】
プリンタ１０００は、ネトワーク接続機能を有しており、図１に示すように画像形成システム１０において、ネットワーク７０００を介してＮＴＰサーバ３０００や、クライアント１のＰＣであるクライアントＰＣ４０００、及びクライアント２のクライアントＰＣであるＰＣ５０００等と通信可能に接続されている。また、プリンタ１０００はＵＳＢのホスト機能を有しており、ＵＳＢケーブル６５００を介してデジタルカメラ８０００と直接接続することができる。尚、ネットワーク７０００を介してプリンタ１０００に接続されるＰＣは、クライアントＰＣ４０００，５０００のみではなく、プリンタ１０００には、ネットワーク７０００を介して複数のＰＣを接続することができる。
【００２４】
図２は、図１の画像形成システム１０におけるプリンタ１０００の構成を示すブロック図である。また、図３は、図１の画像形成システム１０におけるローカルＰＣ２０００において動作するソフトウエアの構成を示すブロック図である。クライアント１のクライアントＰＣ４０００及びクライアント２のクライアントＰＣ５０００は、図３のローカルＰＣと同じソフトウエア構成を有しているので、重複する説明は省略する。
【００２５】
以下、図２及び図３を参照して、本実施の形態におけるプリンタ１０００及びローカルＰＣ２０００の構成及び印刷動作の大まかな流れを説明する。
【００２６】
プリンタ１０００は、図２及び図３に示すように、コントローラ部１１００、ネットワークインタフェースカード（以下、ＮＩＣ称呼する。）１２００、及びエンジン部１３００を備える。
【００２７】
プリンタ１０００は、所謂ホストベースプリンタであり、印刷イメージデータのレンダリングや印刷制御が、ローカルＰＣ２０００やクライアントＰＣ４０００，５０００の備える図３に示すドライバ２２００やランゲージモニタ２３００で実行されることを前提に設計されている。このため、コントローラ部１１００は、図２に示すように、ＣＰＵ １１１０、ＡＳＩＣ １１２０、ＳＤＲＡＭ １１３０、ＥＥＰＲＯＭ １１４０、ＵＳＢコネクタ１１５０、ＵＳＢホストコネクタ１１６０のみで構成されている。
【００２８】
ＣＰＵ１１１０は、図２に示すように、レンダリングや印刷制御を自らが行うプリンタに比べて極めて少ない容量のＲＯＭ１１１１やＲＡＭ１１１２と、エンジン部１３００とのシリアル通信を行うためのシリアルコントローラ１１１３とを内蔵している。ＲＯＭ１１１１には、各種制御プログラムや各種初期値が格納されている。ＲＡＭ１１１２には、ＣＰＵ１１１０のワークエリアのほか、コントローラ部１１００が処理する画像データを除くデータを格納するための領域が用意される。ＲＡＭ１１１２は揮発性ＲＡＭであり、このため、電源がＯＦＦにされても保持しなければならない各種カウンタ値などの限られた情報は、ＥＥＰＲＯＭ１１４０に格納される。
【００２９】
ＡＳＩＣ１１２０は、図２に示すように、ＣＰＵＩ／Ｆ１１２１、画像処理部１１２２、メモリコントローラ１１２３、ＵＳＢコントローラ１１２４、ＮＩＣコントローラ１１２５、ＵＳＢホストコントローラ１１２６を一つにまとめたパッケージである。
【００３０】
ＮＩＣ１２００は、ＮＩＣ１２００全体の動作を制御するＣＰＵ１２１０、コントローラ部１１００との通信を制御するためのコントローラ通信部１２２０、ＣＰＵ１２１０のワークエリアやＮＩＣ１２００の各部における状態等の各種状態を示す値を保持するためＳＤＲＡＭ１２３０、ＣＰＵ１２１０で実行されるプログラムや参照される各種テーブル値などを格納するフラッシュＲＡＭ１２４０、及びＴＣＰ／ＩＰに基づいたネットワーク７０００を介したネットワーク通信全体を制御するネットワーク通信部１２５０から構成されている。
【００３１】
エンジン部１３００は、図２に示すように、エンジン部１３００全体の動作を制御するＣＰＵ１３１０、コントローラ部１１００との通信を行うためのシリアルコントローラ１３２０、コントローラ部１１００から送信されてくるVIDEO信号を受信するためのVIDEO制御部１３３０、ＣＰＵ１３１０のワークエリアやエンジン部１３００の各部における状態等の各種状態を示す値を保持するためのＳＤＲＡＭ１３４０、ＣＰＵ１３１０で実行されるプログラムや参照される各種テーブル値などを格納するフラッシュＲＡＭ１３５０、及び、紙搬送系やトナー補給系、レーザビーム系、及び定着器系などからなる記録部１３６０で構成されている。
【００３２】
また、ローカルＰＣ２０００は、図３に示すように、印刷処理を実行するアプリケーション２１００、印刷イメージデータを生成するドライバ２２００、印刷処理を制御するための各種のコマンドを選択するランゲージモニタ２３００、プリンタ１０００の状況や印刷処理の状況を図示しない表示部に表示するステータスウインドウ２４００、プリンタ１０００のコントローラ部１１００と通信を行うためのＵＳＢポートモニタ２５００、プリンタ１０００のＮＩＣ１２００と通信を行うためのネットワークポートモニタ２６００、及びドライバ２２００及びランゲージモニタ２３００を制御するダイレクトプリントサーバ２７００から構成されている。尚、プリンタ１０００にＵＳＢケーブル６０００を介して接続されるローカルＰＣ２０００は、ネットワークポートモニタ２６００を備えていなくてもよく、また、プリンタ１０００にネットワーク７０００を介して接続されるＰＣ４０００，５０００は、ＵＳＢポートモニタ２５００を備えていなくてもよい。
【００３３】
上述の構成を有するプリンタ１０００及びローカルＰＣ２０００を備える画像形成システム１０における動作の一例を以下に説明する。
【００３４】
ローカルＰＣ２０００において、アプリケーション２１００が印刷処理を実行すると、ドライバ２２００が起動して画像データから印刷イメージデータを生成する。生成された印刷イメージデータは、ドライバ２２００からランゲージモニタ２３００に送信され、ランゲージモニタ２３００は、印刷処理を制御するための各種コマンドと受信した刷イメージデータを予め設定されているプロトコルに基づき、ＵＳＢポートモニタ２５００及びＵＳＢケーブル６０００を介してプリンタ１０００に転送する。
【００３５】
プリンタ１０００においては、ローカルＰＣ２０００から転送されたコマンドやデータが、コントローラ部１１００のＵＳＢコネクタ１１５０を介してＵＳＢコントローラ１１２４で受信される。
【００３６】
コントローラ部１１００において、ＣＰＵ１１１０は、ＣＰＵＩ／Ｆ１１２１を介してＵＳＢコントローラ１１２４の状態を常に監視しており、ＣＰＵ１１１０は、もし、ＵＳＢコントローラ１１２４においてコマンドが受信されたならば、このコマンドに応じた処理を実行する。また、ＣＰＵ１１１０は、この受信したコマンドが、もし応答を要求するコマンドであれば、ＣＰＵＩ／Ｆ１１２１を介してＵＳＢコントローラ１１２４を制御し、そのコマンドに対応する応答ステータスデータをＵＳＢケーブル６０００を介してローカルＰＣ２０００に返信する。
【００３７】
ローカルＰＣ２０００において、上記返信されたステータスデータは、ＵＳＢポートモニタ２５００を介してランゲージモニタ２３００に送信される。ランゲージモニタ２３００は、受信したステータスデータの内容をステータスウインドウ２４００に通知する。ステータスウインドウ２４００は、通知されたステータスデータの内容に応じて適宜プリンタ１０００の状況や印刷処理の状況をローカルＰＣ２０００の図示しない表示部に表示する。
【００３８】
また、ＵＳＢコントローラ１１２４が、ローカルＰＣ２０００においてレンダリングされた印刷イメージデータを転送するためのコマンドを受信した場合は、ＣＰＵ１１１０は、ＵＳＢコントローラ１１２４及びメモリコントローラ１１２３を制御して、この受信したコマンドに続いて送信されてくる印刷イメージデータをＳＤＲＡＭ１１３０に格納させる。
【００３９】
ある程度の印刷イメージデータがＳＤＲＡＭ１１３０に格納されると、ローカルＰＣ２０００のランゲージモニタ２３００は、エンジン部１３００の起動要求コマンドを発行する。この起動要求コマンドをＣＰＵ１１１０が認識すると、ＣＰＵ１１１０はシリアルコントローラ１１１３を制御してエンジン部１３００に起動の要求を通知する。エンジン部１３００が正常に起動され、記録部１３６０において用紙の搬送が正しく行われたことが、シリアルコントローラ１１１３を介してＣＰＵ１１１０に通知された場合、ＣＰＵ１１１０は、メモリコントローラ１１２３及び画像処理部１１２２を制御して、ＳＤＲＡＭ１１３０に格納された印刷イメージデータをエンジン部１３００が実際の印刷動作で必要とするVIDEO信号に変換して、このVIDEO信号をエンジン部１３００に送出する。
【００４０】
エンジン部１３００において、ＣＰＵ１３１０は、コントローラ部１１００から記録部１３６０の起動要求や用紙搬送要求を受けた場合、記録部１３６０を適宜制御し、必要に応じて記憶部１３６０の状態をコントローラ部１１００に通知する。ＣＰＵ１３１０は、画像形成が開始されたならば、VIDEO制御部１３３０を制御して、コントローラ部１１００から受信したVIDEO信号を記録部１３６０に供給して記憶部１３６０に画像を形成させる。
【００４１】
上述の動作によって、画像データに対応する写真画像の印刷が行われる。
【００４２】
本実施の形態におけるプリンタ１０００におけるエンジン部１３００には、図示しないが、両面印刷を可能にするための両面ユニット等の機械的機構（不図示）が具備されている。例えば２ページの文書を１枚の記録紙の両面に印刷する場合、ローカルＰＣ２０００のランゲージモニタ２３００が、エンジン部１３００の記録部１３６０において第１面を印刷する際の通常給紙口からの用紙の給紙、及びこの給紙された用紙の両面ユニットへの搬送を要求するパラメータを設定した印刷制御コマンドをプリンタ１０００に発行し、さらに、第２面を印刷する際に第１面が印刷された用紙の両面ユニットからの給紙、及び通常排紙口への用紙の排紙を要求するパラメータを設定した同様なコマンドをプリンタ１０００に発行する。
【００４３】
上述のように、両面印刷が実現される。尚、この両面印刷の詳細な動作は公知の電子写真系画像形成装置のエンジン部の動作と同様であり、また本発明と直接関係がないため、より詳細な説明は省略する。
【００４４】
本実施の形態におけるローカルＰＣ２０００において、ステータスウインドウ２４００（図３参照）は、ユーザの所定の操作により、印刷の一時停止やキャンセルといった要求を受けることができるように構成されている。ステータスウインドウ２４００におけるユーザの上記操作要求は適宜ランゲージモニタ２３００に伝えられる。ランゲージモニタ２３００は、伝えられた操作要求に応じたコマンドを上述の定められたプロトコルに基づいてＵＳＢポートモニタ２５００及びＵＳＢケーブル６０００を介してプリンタ１０００に転送する。プリンタ１０００においてこのコマンドが受信されると、上述のようにコントローラ部１１００によって受信したコマンドに応じた処理が実行される。
【００４５】
プリンタ１０００におけるＮＩＣ１２００の機能の一つは、クライアント１のクライアントＰＣ４０００やクライアント２のクライアントＰＣ５０００と、プリンタ１０００のコントローラ部１１００との仲介を行うことである。以下に具体的に説明する。
【００４６】
各クライアントのクライアントＰＣ４０００，５０００では、ローカルＰＣ２０００のドライバ２２００やランゲージモニタ２３００と全く同一のソフトウェアに加え、ＵＳＢポートモニタ２５００の代わりにネットワークポートモニタ２６００が動作している。クライアントＰＣ４０００，５０００において、ランゲージモニタ２３００から発行される各種コマンドや印刷イメージデータは、ネットワークポートモニタ２６００及びネットワーク７０００を介してプリンタ１０００のＮＩＣ１２００に送信される。
【００４７】
ＮＩＣ１２００がネットワーク通信部１２５０で受信したコマンドは、コントローラ通信部１２２０を制御することでコントローラ部１１００に送信される。コントローラ部１１００においてＣＰＵ１１１０は、ＵＳＢコントローラ１１２４と同じようにＮＩＣコントローラ１１２５も常に監視しており、上述のＵＳＢコントローラ１１２４の場合と同様に受信したコマンドを処理し、必要に応じてＮＩＣコントローラ１１２５を介してステータスデータをＮＩＣ１２００に返信する。ＮＩＣ１２００は、コントローラ通信部１２２０でステータスデータを受信し、ネットワーク通信部１２５０を制御してコマンド発行元のクライアントＰＣ４０００又はクライアントＰＣ５０００に受信したステータスデータを返信する。
【００４８】
クライアントＰＣ４０００又はクライアントＰＣ５０００において、上記返信されたステータスデータは、上述のＵＳＢケーブル６０００を介してローカルＰＣ２０００に返信されたステータスデータの場合と同様に、ランゲージモニタ２３００からステータスウインドウ２４００に送信され、適宜図示しない表示部に表示される。印刷イメージデータに関する動作に関しても上述のＵＳＢケーブルを介する場合の動作と同様である。
【００４９】
また、ＮＩＣ１２００のもう一つの機能は、RFC-1305で公知のＮＴＰに基づいてＮＴＰサーバ３０００にアクセスして時刻情報を取得し、更にその内容をコントローラ部１１００にコマンドとして伝えることである。ＮＴＰサーバ３０００のアドレス情報は、ＮＩＣ１２００が実装しているＷｅｂサーバ起動に設定をすることができる。設定されたアドレス情報は、フラッシュＲＡＭ１２４０に格納され、電源がＯＦＦにされても保持される。尚、ＴＣＰ／ＩＰ制御やＮＴＰ処理は公知のものであり、また本発明と直接関係がないため、より詳細な説明は省略する。
【００５０】
図２に示す、プリンタ１０００のＵＳＢホストコントローラ１１２６及びＵＳＢホストコネクタ１１６０、ＵＳＢケーブル６５００、並びにデジタルカメラ８０００、さらに、図３に示す、ローカルＰＣ２０００のダイレクトプリントサーバ２７００は、本発明の主となる部分である。
【００５１】
ＵＳＢホストコネクタ１１６０は、ＵＳＢケーブル６５００を介してプリンタ１０００とデジタルカメラ８０００を接続するためのＩ／Ｆである。このＩ／Ｆを介してコントローラ部１１００と送受信されるデータは、上述のＣＰＵ１１１０とＵＳＢコントローラ１１２４がＵＳＢコネクタ１１５０及びＵＳＢケーブル６０００を介してローカルＰＣ２０００に送受信するデータを処理する場合と同様に、ＣＰＵ１１１０及びＵＳＢホストコントローラ１１２６で処理される。
【００５２】
また、ＣＰＵ１１１０がＵＳＢケーブル６５００、ＵＳＢホストコネクタ１１６０及びＵＳＢホストコントローラ１１２６を介してデジタルカメラ８０００から受信するデータは、必要に応じてＵＳＢコントローラ１１２４、ＵＳＢコネクタ１１５０、及びＵＳＢケーブル６０００を介してホストコンピュータとしてのローカルＰＣ２０００に、或いはＮＩＣコントローラ１１２５、ＮＩＣ１２００、及びネットワーク７０００を介してホストコンピュータとしてのクライアントＰＣ４０００，５０００に送信される。ホストコンピュータにおいては、デジタルカメラ８０００から送信されたデータであれば、図３のランゲージモニタ２３００を経由してダイレクトプリントサーバ２７００に送信される。これらの詳細については後述する。
【００５３】
図４は、画像形成システム１０においてデジタルカメラ８０００を使用してダイレクトプリントを実行した場合のデータの流れを示す図である。
【００５４】
本実施の形態におけるデジタルカメラ８０００は、PictBridge規格に基づくプロトコルでプリンタ１０００と通信する。
【００５５】
プリンタ１０００において、ＣＰＵ１１１０は、ＵＳＢホストコネクタ１１６０及びＵＳＢホストコントローラ１１２６を介してデジタルカメラ８０００からデータが受信されるのを監視している。受信したデータがプリンタ１０００のみで処理することができないデータである場合、そのデータをCamCmdなるプリンタ１０００とランゲージモニタ２３００との間で解釈可能なコマンドで囲ってCmaCmdタイプコマンドに加工し、ＵＳＢケーブル６０００を介してローカルＰＣ２０００のランゲージモニタ２３００に送信する。
【００５６】
尚、本説明においては、ローカルＰＣ２０００がホストコンピュータとして機能しているものとするが、クライアントＰＣ４０００，５０００がホストコンピュータとして機能しもよい。この場合、上述のCmaCmdタイプコマンドは、ネットワーク７０００を介してクライアントＰＣ４０００，５０００のランゲージモニタ２３００に送信される。プリンタ１０００におけるホストコンピュータの選択処理については図５で後述する。
【００５７】
以下、PictBridge規格のWhite Paperに記載された印刷処理を実行した場合について詳細に説明する。尚、図４において、実線の矢印はPictBridge規格で構成されたデータの流れを、破線の矢印は通常のホストコンピュータとプリンタとの間における印刷処理の場合のデータの流れを示す。
【００５８】
ユーザが所定の操作によりデジタルカメラ８０００に備える図示しないモニタを使用して所望の画像データの印刷を要求すると、デジタルカメラ８０００は各種印刷設定と印刷開始を要求するためのコマンドであるDPS_StartJobを発行する。
【００５９】
プリンタ１０００において、ＣＰＵ１１１０は、ＵＳＢホストコネクタ１１６０及びＵＳＢホストコントローラ１１２６を介してデジタルカメラ８０００からコマンドが受信されるのを監視している。受信したコマンドがプリンタ１０００で処理することができないコマンドである場合には、そのコマンドを上述のCamCmdタイプコマンドに加工してローカルＰＣ２０００のランゲージモニタ２３００に転送する。また、受信したコマンドがDPS_StartJobである場合は、図４に示すように、CamCmdタイプコマンドに加工してCamCmd(DPS_StartJob)のような形でローカルＰＣ２０００のランゲージモニタ２３００に転送される。
【００６０】
ランゲージモニタ２３００は、CamCmd(DPS_StartJob)を受信すると、通常の印刷を実行する場合に発行されるタイプのコマンド（以下、通常タイプコマンドと称呼する。）であるOpenSessionをプリンタ１０００に送信して、デジタルカメラ８０００の画像データのダイレクトプリントのためにプリンタ１０００の占有を要求する。
【００６１】
プリンタ１０００は、ＵＳＢホストコネクタ１１２６においてOpenSessionを受信すると、占有を受けつけ、通常タイプコマンドのCompleteOpenSessionをランゲージモニタ２３００に返信する。
【００６２】
ランゲージモニタ２３００は、CompleteOpenSessionを受信すると、受信したCamCmd(DPS_StartJob)からDPS_StartJob部分を切り出す。即ち、ランゲージモニタ２３００は、CamCmd(DPS_StartJob)をCamCmdタイプコマンドから通常タイプコマンドに復元する。次いで、ランゲージモニタ２３００は、通常タイプコマンドに復元されたDPS_StartJobをダイレクトプリントサーバ２７００に転送する。
【００６３】
ダイレクトプリントサーバ２７００は、DPS_StartJobを受信すると、印刷が要求された画像の情報を取得するためにDPS_GetFileInfoをランゲージモニタ２３００に発行する。次いで、ランゲージモニタ２３００は、プリンタ１０００と同様に受信したDPS_GetFileInfoをCamCmd(DPS_GetFileInfo)の形に加工してプリンタ１０００に転送する。プリンタ１０００は、CamCmd(DPS_GetFileInfo)を受信すると、CamCmd(DPS_GetFileInfo)からDPS_GetFileInfoを切り出して、デジタルカメラ８０００に転送する。
【００６４】
デジタルカメラ８０００は、DPS_GetFileInfoを受信すると、FileInfoをプリンタ１０００に返信する。プリンタ１０００は、このFileInfoを受信すると、上述と同様にCamCmd(FileInfo)の形に加工してランゲージモニタ２３００に転送する。続いて、ランゲージモニタ２３００は、CamCmd(FileInfo)からFileInfoを切り出してダイレクトプリントサーバ２７００に転送する。
【００６５】
ダイレクトプリントサーバ２７００は、DPS_GetFileInfoに続いてDPS_GetFileをランゲージモニタ２３００に発行し、ランゲージモニタ２３００は、DPS_GetFileInfoと同様に、受信したDPS_GetFileをCamCmd(DPS_GetFileInfo)の形に加工してプリンタ１０００に転送する。次いで、プリンタ１０００は、CamCmd(DPS_GetFileInfo)を受信すると、CamCmd(DPS_GetFileInfo)からDPS_GetFileの部分を切り出してデジタルカメラ８０００に転送する。
【００６６】
デジタルカメラ８０００は、DPS_GetFileを受信すると、印刷が要求され画像に対応する画像データであるImageFileをプリンタ１０００に返信し、それを受信したプリンタ１０００は、上述と同様にCamCmd(ImageFile)の形に加工してランゲージモニタ２３００に転送する。ランゲージモニタ２３００は、CamCmd(ImageFile)を受信すると、CamCmd(ImageFile)からImageFile部分を切り出してダイレクトプリントサーバ２７００に転送する。
【００６７】
ダイレクトプリントサーバ２７００が、印刷要求された画像に対応する全てのImageFileを受信すると、ダイレクトサーバ２７００は、ドライバ２２００を起動させて、先に受信したFileInfoとImageFileとをドライバ２２００に送信し、通常の印刷動作においてプリンタ１０００とランゲージモニタ２３００との間で送受信される形式の画像イメージデータ(data)とイメージのパラメータデータ(param)に変換させる。
【００６８】
変換された画像イメージデータとパラメータデータは、通常の印刷動作と同じようにランゲージモニタ２３００を介してPrintImageInfo及びPrintImageの形で適宜プリンタ１０００に供給され、プリンタ１０００の記憶部１３６０において所望の写真画像が印刷される(図４のPrintingの部分参照)。
【００６９】
印刷が終了すると、その旨を通知するための情報がCompletePrintImageの形でプリンタ１０００からローカルＰＣ２０００のランゲージモニタ２３００に伝えられる。さらに印刷終了の情報は、Private(CompletePrintImage)の形の情報に加工されてランゲージモニタ２３００からダイレクトプリントサーバ２７００に通知される。
【００７０】
ダイレクトプリントサーバ２７００は、、Private(CompletePrintImage)の受信によって印刷終了の通知を受けると、ランゲージモニタ２３００にDPS_NotifyDeviceStatusを発行し、以下上述の動作と同様にランゲージモニタ２３００は、受信したDPS_NotifyDeviceStatusをCamCmd(DPS_NotifyDeviceStatus)に加工してプリンタ１０００に転送する。次いで、プリンタ１０００は、受信したCamCmd(DPS_NotifyDeviceStatus)からDPS_NotifyDeviceStatusを切り出してデジタルカメラ８０００に送信する。また同時にランゲージモニタ２３００は、プリンタ１０００をダイレクトプリントのための占有から開放するためにCloseSessionをプリンタ１０００に送信し、プリンタ１０００は、CloseSessionを受信するとCompleteCloseSessionを返信し、デジタルカメラ８０００に具備されたモニタを使った一連の写真画像の印刷が終了する。
【００７１】
次いで、画像形成システム１０におけるホストコンピュータの選択処理について説明する。
【００７２】
図５は、図２のプリンタのコントローラ部１１００におけるＩ／Ｆ選択処理のフローチャートである。
【００７３】
本Ｉ／Ｆ選択処理は、デジタルカメラ８０００から受けたPictBridge規格のデータを処理可能なランゲージモニタ２３００を備えるＰＣが、プリンタ１０００が備えるどのＩ／Ｆを介して利用可能であるか、或いは、プリンタ１０００に接続可能なランゲージモニタ２３００を備えるＰＣがシステム上に存在するか否かについて評価する。また、本Ｉ／Ｆ選択処理は、デジタルカメラ８０００がプリンタ１０００に接続されたときに実行される。
【００７４】
まず、コントローラ部１１００が、ＵＳＢケーブル６０００、ＵＳＢコネクタ１１５０、及びＵＳＢコントローラ１１２４を介してローカルＰＣ２０００のランゲージモニタ２３００と、コマンド及びレスポンスの送受信を行っているか否かを判別する（ステップＳ１）。即ち、ステップＳ１において、プリンタ１０００とローカルＰＣ２０００がＵＳＢ接続されているか否かを判別する。
【００７５】
コントローラ部１１００が、ＵＳＢケーブル６０００、ＵＳＢコネクタ１１５０、及びＵＳＢコントローラ１１２４を介してローカルＰＣ２０００のランゲージモニタ２３００と、コマンド及びレスポンスの送受信を行っている場合は、ローカルＰＣ２０００がプリンタ１０００に接続されているので、Ｉ／ＦとしてＵＳＢを選択して（ステップＳ２）、即ちホストコンピュータとしてローカルＰＣ２０００を選択して本処理を終了する。
【００７６】
一方、コントローラ部１１００が、ＵＳＢケーブル６０００、ＵＳＢコネクタ１１５０、及びＵＳＢコントローラ１１２４を介してローカルＰＣ２０００のランゲージモニタ２３００と、コマンド及びレスポンスの送受信を行っていない場合は、ＵＳＢケーブル６０００を介してローカルＰＣ２０００がプリンタ１０００に接続されていないと、或いはローカルＰＣ２０００の電源が切れていると判別して、ステップＳ３に進む。
【００７７】
ステップＳ３においては、コントローラ部１１００がネットワーク７０００、ＮＩＣ１２００、及びＮＩＣコントローラ１１２５を介してクライアントＰＣ４０００又はクライアントＰＣ５０００と、コマンド及びレスポンスの送受信を行っているか否かを判別する。即ち、ステップ３において、プリンタ１０００とクライアントＰＣ４０００，５０００がＮＩＣ接続されているか否かを判別する。
【００７８】
コントローラ部１１００がＮＩＣコントローラ１１２５を介してクライアントＰＣ４０００又はクライアントＰＣ５０００と、コマンド及びレスポンスの送受信を行っている場合は、クライアントＰＣ４０００又はクライアントＰＣ５０００がプリンタ１０００に接続されているので、Ｉ／ＦとしてＮＩＣを選択して（ステップＳ４）、本処理を終了する。
【００７９】
尚、ネットワーク７０００上に複数のクライアントＰＣが存在する場合、その中の一つを選択する処理はＮＩＣ１２００において実行される。本実施の形態におけるＮＩＣ１２００は、ＮＩＣ１２００に接続しているＰＣの内、コントローラ部１１００から所定のCamCmd()タイプコマンドを受信したタイミングで、ランゲージモニタ２３００が作動しているＰＣをホストコンピュータとして単純に選択する。
【００８０】
一方ステップＳ３において、コントローラ部１１００がＮＩＣコントローラ１１２５を介してクライアントＰＣ４０００又はクライアントＰＣ５０００と、コマンド及びレスポンスの送受信を行っていない場合は、クライアントＰＣ４０００，５０００にはユーザオプションのＮＩＣ１２００が装着されていない、ＮＩＣ１２００がネットワーク７０００に接続されていない、又はクライアントＰＣ４０００，５０００の電源が切れている等の原因でネットワーク７０００上にランゲージモニタ２３００が作動しているＰＣが存在しないと判別しする。
【００８１】
次いで、プリンタ１０００は、プリンタ１０００にはホストコンピュータが接続されていないと判別し（ステップＳ５）、本処理を終了する。また、このとき、デジタルカメラ８０００がプリンタ１０００に接続された場合に実行されるネゴシエーション(DPS Discovery)コマンドの段階において、プリンタ１０００の電源が入っていないかのごとくＵＳＢホストコントローラ１１２６を制御して、デジタルカメラ８０００の画像のダイレクトプリントを許可しないように制御する。
【００８２】
尚、上記本Ｉ／Ｆ選択処理による接続状態の確認は定期的に行われ、常に最新の状態になるように制御されている。
【００８３】
上述のように、本Ｉ／Ｆ選択処理により、画像形成システム１０において、ローカルＰＣ、及び複数のクライアントＰＣから、デジタルカメラ８０００の画像データのダイレクトプリントを実行可能にするホストコンピュータを選択することができるので、画像形成システム１０におけるホストコンピュータの位置に拘らず、デジタルカメラ８０００の画像データのダイレクトプリントを実行することができる。
【００８４】
また、ネットワークで接続された複数のクライアントＰＣもホストコンピュータとして活用することができるので、例えば、近接するクライアントＰＣの電源が切れているためにダイレクトプリントが実行できないような場面を少なくすることもできる。
【００８５】
また、本Ｉ／Ｆ選択処理により、ユーザは、ホストコンピュータが画像形成システムに存在しない場合、デジタルカメラ８０００の画像データのダイレクトプリントを実行することができないことを認識することができ、画像形成システム１０の操作性を向上させることができる。
【００８６】
上述のように、本実施の形態に係る画像形成システム１０において、プリンタ１０００は、PictBridge規格に基づくデジタルカメラ８０００があたかもプリンタ１０００とだけ直接通信しているように振舞って印刷を実行する。このため、ユーザは、デジタルカメラ８０００を直接プリンタ１０００に接続して、デジタルカメラ８０００において所定の操作を行うことにより所望の写真画像の印刷をプリンタ１０００に実行させることができる。
【００８７】
従って、本実施の形態に係る画像形成システム１０によれば、ホストベースプリンタ１０００において、従来のダイレクトプリントと同等の操作性を維持しつつ擬似的にダイレクトプリントを実現することができる。
【００８８】
本実施の形態に係る画像形成システムにおいて、ダイレクトプリントを実現するためのプロトコルとしてPictBridge規格を対象としているが、本発明において、上述のように擬似的なダイレクトプリントを実現するためのプロトコルは、PictBridge規格に限定されるものではない。
【００８９】
本実施の形態において、Ｉ／Ｆとして、ＵＳＢ及びネットワークが採用されているが、本発明において、Ｉ／ＦはＵＳＢ及びネットワークに限定されるものではなく、本発明はＩ／Ｆの種類に限定されるものではない。また、本発明において、Ｉ／Ｆの種類は複数に限定されるものではなく、一つであってもよい。
【００９０】
本実施の形態においては、図４に示すように、ランゲージモニタ２３００がDPS_StartJobを識別してプリンタ１０００を占有するためのコマンド(OpenSession)を発行し、また、ランゲージモニタ２３００がDPS_NotifyDeviceStatusを識別してプリンタ１０００を開放するためのコマンド(CloseSession)を発行するように構成されている。この構成は、図４に示すように、ダイレクトプリントサーバ２７００がドライバ２２００に画像データの印刷イメージデータへの変換を指示し、ドライバ２２００とランゲージモニタ２３００とが、直接通信して印刷イメージデータの送受信を行う構成にしたことに依存している。
【００９１】
仮に、ダイレクトプリントサーバ２７００は、通常のアプリケーション２１００と全く同じようにドライバ２２００に印刷イメージデータの変換を指示し、且つドライバ２２００はＯＳのプリントスプーラに印刷ジョブをスプールする構成にし、印刷に係るランゲージモニタ２３００によるプリンタ１０００の占有と開放の処理は、通常の処理をそのまま利用するように構成すれば、デジタルカメラ８０００から送信されるDPS_StartJobとDPS_NotifyDeviceStatusとの間の時間がスプーラにスプールされている他の印刷ジョブの数によって変化してしまうことはあるが、できるだけ少ないランゲージモニタ２３００の修正で同様な効果を得ることができる。
【００９２】
本実施の形態においては、図５のＩ／Ｆ選択処理のステップＳ３において、ＮＩＣ１２００を介してコマンドとレスポンスの送受信が行われているか否かについてのみ判定している。しかし、ネットワーク７０００に接続されているクライアントＰＣによっては、そのＣＰＵ能力が低く、バックグランドでダイレクトプリントサーバ２７００が動作すると他のフォアグラウンドの処理が影響を受けてしまう場合等が考えられる。これに対して、例えば、ステータスウインドウ２４００における所定の操作により、ネットワーク７０００を介して接続されたクライアントＰＣとして、ダイレクトプリントサーバ２７００を不特定多数の処理に使用させないように設定することができるように構成し、ＮＩＣ１２００の内部に各クライアントＰＣのランゲージモニタ２３００と通信することで更新される各クライアントＰＣの設定テーブルを設け、この設定テーブルと現在の通信状態からダイレクトプリントサーバ２７００を印刷処理に提供可能な特定のＰＣをホストコンピュータとして選択させる解決策も考えられる。
【００９３】
また、本実施の形態においては、図５のＩ／Ｆ選択処理のステップＳ５において、ホストコンピュータがないと判別された場合、PictBridge規格のネゴシエーション(DPS Discovery)の段階でプリンタ１０００の電源が入っていないかのごとくＵＳＢホストコントローラ１１２６を制御するように構成されている。しかし、例えば、DPS_Discoveryは正常に実行するが、DPS_ConfigurationPrintServiceコマンドにおいて、現在プリンタ１０００はダイレクトプリントサービスを提供できない旨をデジタルカメラ８０００に通知する方法であっても同様な効果を得ることができる。
【００９４】
また、本実施の形態においては、一つのプリンタ１０００に対して、対応するドライバやランゲージモニタを夫々備える複数のコンピュータが存在する場合について説明したが、本発明はこれに限られることはない。例えば、高性能なホストコンピュータに複数のホストベースプリンタの各々に対応するドライバやランゲージモニタをインストールしておいてもよい。この場合、どのプリンタを使っても常に上記高性能なホストコンピュータにおいて、上述のダイレクトプリントのバックグランド処理を実行させることができる。また、これを発展させれば、特定のサーバに図３のダイレクトプリントサーバ２７００と等価なモジュールを用意しておき、インターネットを介してダイレクトプリント機能を提供するビジネスへの応用も考えられる。
【００９５】
また、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。
【００９６】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９７】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【００９８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【００９９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、次のプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【０１００】
【図１】本発明の実施の形態に係る画像形成システムの概略構成を示す図である。
【図２】図１の画像形成システムにおけるプリンタの構成を示すブロック図である。
【図３】図１の画像形成システムにおけるローカルＰＣおいて動作するソフトウエアの構成を示すブロック図である。
【図４】図１の画像形成システムにおいてデジタルカメラを使用してダイレクトプリントを実行した場合のデータの流れを示す図である。
【図５】図２のプリンタのコントローラ部におけるＩ／Ｆ選択処理のフローチャートである。
【符号の説明】
【０１０１】
１０  画像形成システム
１０００  プリンタ
１１００  コントローラ部
１１１０  ＣＰＵ
１１１１  ＲＯＭ
１１１２  ＲＡＭ
１１１３  シリアルコントローラ
１１２０  ＡＳＩＣ
１１２１  ＣＰＵＩ／Ｆ
１１２２  画像処理部
１１２３  メモリコントローラ
１１２４  ＵＳＢコントローラ
１１２５  ＮＩＣコントローラ
１１２６  ＵＳＢホストコントローラ
１１３０  ＳＤＲＡＭ
１１４０  ＥＥＰＲＯＭ
１１５０  ＵＳＢコネクタ
１１６０  ＵＳＢホストコネクタ
１２００  ネットワークインタフェースカード
１２１０  ＣＰＵ
１２２０  コントローラ通信部
１２３０  ＳＤＲＡＭ
１２４０  フラッシュＲＡＭ
１２５０  ネットワーク通信部
１３００  エンジン部
１３１０  ＣＰＵ
１３２０  シリアルコントローラ
１３３０  VIDEO制御部
１３４０  ＳＤＲＡＭ
１３５０  フラッシュＲＡＭ
２０００  ローカルＰＣ
２１００  アプリケーション
２２００  ドライバ
２３００  ランゲージモニタ
２４００  ステータスウインドウ
２５００  ＵＳＢポートモニタ
２６００  ネットワークポートモニタ
２７００  ダイレクトプリントサーバ
３０００  ＮＴＰサーバ
４０００，５０００  クライアントＰＣ
６０００，６５００  ＵＳＢケーブル
７０００  ネットワーク
８０００  デジタルカメラ
【図１】
2006302039.tif 000003
【図２】
2006302039.tif 000004
【図３】
2006302039.tif 000005
【図４】
2006302039.tif 000006
【図５】
2006302039.tif 000007