(57)【要約】【課題】ホスト装置に印刷要求の処理を実行させるドライバプログラムであって、ホストベースプリンタにおけるステータスシートの印刷について、ホスト装置がプリンタ側から情報を受信できない場合にも表現力の高い印刷を可能とするドライバプログラム等を提供する。【解決手段】ホストベースプリンタに対する印刷要求をホスト装置に実行させるドライバプログラムが、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、１ページを構成する複数の所定領域毎に、当該領域に印刷されるステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信する、処理を前記ホスト装置に実行させる。【選択図】  図２
2007226324.tif 000002
【特許請求の範囲】
【請求項１】
ホストベースのプリンタに対する印刷要求処理をホスト装置に実行させるドライバプログラムであって、
前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、
１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信する、処理を前記ホスト装置に実行させる
ことを特徴とするドライバプログラム。
【請求項２】
請求項１において、
前記ヘッダー情報は、当該ヘッダー情報が生成された前記領域に、複数の前記イメージデータが存在するか否かを判別可能とする情報を含む
ことを特徴とするドライバプログラム。
【請求項３】
印刷要求処理を行うホスト装置と当該印刷要求を受けて印刷を行うプリンタとを備えるホストベースのプリンタシステムであって、
前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、
前記ホスト装置は、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信し、
前記プリンタは、前記所定領域毎に、前記送信されたヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記送信されたイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いる
ことを特徴とするプリンタシステム。
【請求項４】
ホスト装置から印刷要求を受けて印刷を実行するホストベースのプリンタであって、
前記ホスト装置が前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該ホスト装置へ送信できない場合に、
前記ホスト装置から、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報とを受信し、
前記所定領域毎に、前記受信したヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記受信したイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いる
ことを特徴とするプリンタ。
【請求項５】
ホスト装置から印刷要求を受けて印刷を実行するホストベースのプリンタであって、
当該プリンタのステータス情報を印刷するためのデータとして、予め、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報とを備え、
前記ホスト装置から前記ステータス情報を印刷すべき要求を受けた際に、
前記ステータス情報を印刷するためのデータを読み出して、前記所定領域毎に、前記ヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記イメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いる
ことを特徴とするプリンタ。
【請求項６】
印刷要求処理を行うホスト装置と当該印刷要求を受けて印刷を行うプリンタとを備えるホストベースのプリンタシステムにおける印刷方法であって、
前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、
前記ホスト装置が、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信する工程と、
前記プリンタが、前記所定領域毎に、前記送信されたヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記送信されたイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いる工程とを有する
ことを特徴とする印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト装置に印刷要求の処理を実行させるドライバプログラム等に関し、特に、ホストベースプリンタにおけるステータス情報印刷について、表現力の高い印刷を可能とするドライバプログラム等に関する。
【背景技術】
【０００２】
一般に、プリンタには、ステータスシートなるものを出力する機能を有するものがあり、かかるステータスシートには、トナー残量や延べ印刷枚数などその時点でのプリンタの状態を表す各種情報、及び、表示言語、紙種、給紙口などその時点で設定されている設定内容を表す情報等が印刷される。そして、このステータスシートに印刷される各種情報は、通常、プリンタ内のメモリに記憶されており、当該ステータスシートの印刷のほか、各種用途で使用される。
【０００３】
一方、従来より、ホストベースプリンタシステムというものがあり、かかるシステムでは、印刷要求を行なうホスト装置側で、ラスタライズ処理を実行しビットマップに展開されたイメージデータを生成する。従って、プリンタ側では、ホスト装置から送信されるイメージデータに基づいて印刷エンジンが印刷処理を実行すればよく、プリンタ内部にラスタライズ処理のための手段を備える必要がないため、ホストベースでないプリンタと比較して廉価かつ小型なプリンタとすることができる。
【０００４】
このようなホストベースプリンタシステムにおいて上述したステータスシートを出力する際には、ホスト装置が、その時点でのプリンタの状態及び設定内容に関する情報（以下、プリンタのステータス情報と呼ぶ）をプリンタから取得し、その情報に基づいて上述したイメージデータを生成してプリンタへ送信する。プリンタでは、送信されたイメージデータに従った印刷処理を行って所望のステータスシートを出力する。しかしながら、ホスト装置とプリンタ間において双方向通信ができない環境である場合や通信の状態等により、プリンタ側からホスト装置へ上記ステータス情報を送信できない場合もある。このような場合には、前述の通り、プリンタ側にラスタライズ機能がないためプリンタ側でステータス情報に係るイメージデータを生成して印刷することもできず、ステータスシートの出力を行うことができない。
【０００５】
かかる課題を解決するために、下記特許文献１では、ホストベースプリンタシステムにおいて、プリンタ側にテキストデータのラスタライズを行える機能を備え、ステータスシート出力の際にホスト装置がプリンタからステータス情報を受信できない場合には、プリンタ側でステータス情報のラスタライズを行なってステータスシートを出力する旨の提案がなされている。
【特許文献１】特開２００５−２４６８２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の提案では、プリンタ側でラスタライズを行う場合に、ステータスシートに印刷できるものがテキストデータに限られるなど表現上の制限があった。従って、かかる場合には、ホスト装置側でイメージデータを作成して印刷を行う場合のように、図形、画像などを用いた表現力の高いステータスシートの印刷ができなかった。
【０００７】
そこで、本発明の目的は、ホスト装置に印刷要求の処理を実行させるドライバプログラムであって、ホストベースプリンタにおけるステータスシートの印刷について、ホスト装置がプリンタ側から情報を受信できない場合にも表現力の高い印刷を可能とするドライバプログラム等を提供することである。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の一つの側面は、ホストベースのプリンタに対する印刷要求処理をホスト装置に実行させるドライバプログラムが、前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信する、処理を前記ホスト装置に実行させることである。
【０００９】
更に、上記の発明において、その好ましい態様は、前記ヘッダー情報は、当該ヘッダー情報が生成された前記領域に、複数の前記イメージデータが存在するか否かを判別可能とする情報を含むことを特徴とする。
【００１０】
上記の目的を達成するために、本発明の別の側面は、印刷要求処理を行うホスト装置と当該印刷要求を受けて印刷を行うプリンタとを備えるホストベースのプリンタシステムにおいて、前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、前記ホスト装置は、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信し、前記プリンタは、前記所定領域毎に、前記送信されたヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記送信されたイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いることである。
【００１１】
上記の目的を達成するために、本発明の更に別の側面は、ホスト装置から印刷要求を受けて印刷を実行するホストベースのプリンタにおいて、前記ホスト装置が前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該ホスト装置へ送信できない場合に、前記ホスト装置から、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報とを受信し、前記所定領域毎に、前記受信したヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記受信したイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いることである。
【００１２】
更に、上記の目的を達成するために、本発明の別の側面は、ホスト装置から印刷要求を受けて印刷を実行するホストベースのプリンタにおいて、当該プリンタのステータス情報を印刷するためのデータとして、予め、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報とを備え、前記ホスト装置から前記ステータス情報を印刷すべき要求を受けた際に、前記ステータス情報を印刷するためのデータを読み出して、前記所定領域毎に、前記ヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記イメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いることである。
【００１３】
上記の目的を達成するために、本発明の更に別の側面は、印刷要求処理を行うホスト装置と当該印刷要求を受けて印刷を行うプリンタとを備えるホストベースのプリンタシステムにおける印刷方法が、前記ホスト装置が、前記プリンタのステータス情報を印刷すべき要求を受けた際に、当該ステータス情報を当該プリンタから受信できない場合に、前記ホスト装置が、１ページを構成する複数の所定領域毎に、当該領域に印刷される前記ステータス情報に関して前記プリンタが取り得る全ての内容について、それぞれ、イメージデータと当該ステータス情報の内容を示す情報を含んだヘッダー情報を生成して前記プリンタに送信する工程と、前記プリンタが、前記所定領域毎に、前記送信されたヘッダー情報に含まれるステータス情報の内容を示す情報に基づいて、前記送信されたイメージデータから、その時点でのステータス情報と一致する内容のイメージデータを選択し、当該イメージデータを前記印刷に用いる工程とを有することである。
【００１４】
本発明の更なる目的及び、特徴は、以下に説明する発明の実施の形態から明らかになる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施の形態例を説明する。しかしながら、かかる実施の形態例が、本発明の技術的範囲を限定するものではない。なお、図において、同一又は類似のものには同一の参照番号又は参照記号を付して説明する。
【００１６】
図１は、本発明を適用したドライバプログラムを用いたプリンタシステムの実施の形態例に係る構成図である。図１に示すプリンタシステム１が、ホストコンピュータ２とプリンタ３から成る本実施の形態例に係るプリンタシステムであり、ステータスシート印刷の際にホストコンピュータ２がプリンタ３からステータス情報を受信できない場合に、ホストコンピュータ２側で、バンド領域毎に候補となる全てのイメージデータを生成して送信し、プリンタ３側では、送信された各バンドデータのヘッダー情報に基づいて適したバンドデータを選択してステータスシート４を印刷し、ホストコンピュータ２がステータス情報を受信できない場合にも表現力の高いステータスシート４の出力を可能としようとするものである。
【００１７】
本プリンタシステム１は、ホストベースプリンタシステムであり、前述のように、ホストコンピュータ２側でラスタライズ処理を実行してイメージデータを生成し、その後、プリンタ３側へデータ送信を行って印刷処理を行うシステムである。
【００１８】
図１のホストコンピュータ２は、本実施の形態例におけるホスト装置であり、ここではプリンタ２に対して印刷要求を行うが、印刷データを画素毎のイメージデータに展開する処理、ＲＧＢからＣＭＹＫへの色変換処理、及び圧縮処理を行った後にデータをプリンタ３に送信する。
【００１９】
図１に示すように、ホストコンピュータ２には、アプリケーション２１、プリンタドライバ２２、及びメモリ２３等が備えられる。なお、ホストコンピュータ２は、所謂パーソナルコンピュータなどで構成することができる。
【００２０】
アプリケーション２１は、例えば、文書作成ソフトウェア等の印刷要求元であり、印刷対象のデータを所定のフォーマットでプリンタドライバ２２に渡す。
【００２１】
プリンタドライバ２２は、前記アプリケーション２１からの印刷要求を受けて、プリンタ３に送るデータを生成し、当該データをプリンタ３に送信する部分である。プリンタドライバ２２では、プリンタ３に送信するデータの生成過程で、前述した展開処理、色変換処理、圧縮処理等を行うが、本プリンタドライバ２２は、ステータスシート４の印刷に関して特徴があり、その具体的な処理内容については後述する。なお、プリンタドライバ２２は、処理の手順を指示するプログラムと、当該プログラムに従って処理を実行する制御装置等によって構成することができる。また、当該プログラムは、ＣＤなどの記憶媒体に格納されているものをインストールする、あるいは、インターネット等を介して所定のサイトからダウンロードすることにより、ホストコンピュータ２に備えられる。
【００２２】
次に、メモリ２３は、ホストコンピュータ２に備えられる記憶手段であり、様々な用途で使用されるが、前記プリンタ３に送信するデータが生成されるまでの各段階におけるデータを一時的に格納する。
【００２３】
プリンタ３は、本プリンタシステム１を構成する印刷装置であり、ホストコンピュータ２からのデータを受信し、当該データに基づいて印刷を実行する、例えば、４サイクルのレーザプリンタである。本プリンタ３では、ステータスシート印刷時に、ホストコンピュータ２から送信されたバンドデータのヘッダー情報に基づいて適切なバンドデータを選択し、印刷処理を行うことに特徴があり、具体的な処理内容については後述する。
【００２４】
図１に示すように、プリンタ３にはコントローラ３１とエンジン３２が備えられ、コントローラ３１には、Ｉ／Ｆ３１１、ＣＰＵ３１２、ＲＯＭ３１３、ＲＡＭ３１４、ＮＶＲＡＭ３１５、及びエンジンＩ／Ｆ３１６等が備えられる。
【００２５】
Ｉ／Ｆ３１１は、ホストコンピュータ２から送信されるデータを受信する部分であり、ＲＯＭ３１３は、プリンタ３を制御するための各種プログラムを記憶する部分である。ＲＡＭ３１４は、前記受信したデータ等を格納するメモリであり、エンジン３２で印刷処理が行われる各ページのイメージデータは、ここからエンジンＩ／Ｆ３１６に引き渡される。
【００２６】
また、ＮＶＲＡＭ３１５は不揮発性メモリであり、プリンタ３の電源がＯＦＦにされた際にも消えずに残しておきたい情報を格納する。例えば、ユーザ等によって設定されているプリンタ３の設定内容に関する情報などが収められている。
【００２７】
ＣＰＵ３１２は、本プリンタ３において行われる各種処理を制御する部分であるが、特に、前記ホストコンピュータ２から受信したデータに含まれるイメージデータをＲＡＭ３１４に格納する処理、前記データに含まれる制御コマンドを解釈してエンジン３２に対して適切な印刷処理を指示する処理、及び、ユーザとのインターフェースを形成する操作部（図示せず）を制御する処理等を司る。本プリンタ３では、ＣＰＵ３１２が行なう、ステータスシート印刷時の処理等に特徴があり、その具体的な内容については後述する。なお、ＣＰＵ３１２が実行する処理は、主に前記ＲＯＭ３１３に記憶されたプログラムに従って行われるものである。また、ＲＯＭ３１３のプログラムとＣＰＵ３１２によりステータス情報管理モジュール（図示せず）なるものが形成され、プリンタ３の各種ステータス情報は、当該モジュールを介して取得される。
【００２８】
次に、エンジンＩ／Ｆ３１６は、エンジン３２で印刷を実行する際に、所定のタイミングで前述したＲＡＭ４４に格納されているイメージデータを読み出し、それらに所定の処理を施した後にエンジン３２に引き渡す、コントローラ３１とエンジン３２とのインターフェースを司る部分である。
【００２９】
次に、エンジン３２は、エンジンＩ／Ｆ３１６を介して転送されるデータに基づいて印刷媒体に印刷を実行する部分であり、帯電ユニット、露光ユニット、現像装置、転写ユニット等で構成される。ステータスシートの印刷が要求された際にも、同様に印刷処理を実行してステータスシート４が当該エンジン３２から出力される。
【００３０】
以上説明したような構成を有する本プリンタシステム１では、前述の通り、ステータスシート印刷時の処理に特徴があり、以下、その処理内容について具体的に説明する。図２は、ステータスシート印刷時にプリンタドライバ２２によって行われる処理を例示したフローチャートである。図２に基づいて、まず、ホストコンピュータ２側の処理について説明する。なお、ここでは、ステータスシート４をモノクロで印刷する場合について説明する。
【００３１】
ステータスシート４を出力する場合には、まず、プリンタドライバ２２がユーザ指示などによるステータスシート４の印刷要求を受信する（ステップＳ１）。すると、プリンタドライバ２２は、プリンタ３に対してステータス情報の送信指示コマンドを送って、その時点でのプリンタ３のステータス情報を問い合せる（ステップＳ２）。
【００３２】
その後、プリンタドライバ２２はプリンタ３からステータス情報を受信できたか否かを判断する（ステップＳ３）。ここで、ホストコンピュータ２とプリンタ３との間で双方向通信が可能であり、また、プリンタ３がステータス情報を送信できない状態でなければ、ステータス情報がプリンタドライバ２２によって受信され（ステップＳ３のＹｅｓ）、プリンタドライバ２２は、受信したステータス情報に基づいてステータスシート印刷用のデータを、通常の印刷の場合と同様に生成し、生成したデータをプリンタ３に送信して印刷要求を行なう（ステップＳ４）。具体的には、１ページの印刷領域を分割したバンド領域毎にイメージデータを生成し、制御コマンドを含むヘッダーを付けて、圧縮処理を行った後にプリンタ３へ送信する。
【００３３】
一方、ホストコンピュータ２とプリンタ３との間で双方向通信が可能でない場合、すなわち、プリンタ３からホストコンピュータ２へ情報の送信ができない場合、あるいは、双方向通信が可能であってもプリンタ３がステータス情報を送信できない状態である場合には、プリンタドライバ２２によってステータス情報が受信されない（ステップＳ３のＮｏ）。かかる場合には、１ページ分のデータについて以下のように生成する。
【００３４】
まず、プリンタドライバ２２はそのページのヘッダー情報を生成する（ステップＳ５）。このページヘッダーには、ページ全体に係る各種コマンド等が含まれる。その後、当該ページの各バンド領域について、以下の処理が繰り返し実行される。
【００３５】
まず、プリンタドライバ２２は、そのバンド領域に印刷されるべきステータス情報の項目について、プリンタ３が取り得る値（情報）のパターン数を把握する（ステップＳ６）。図３は、出力されるステータスシート４の一例を示した図である。図３に示すように、ステータスシート４には、その時点でプリンタ３に設定されている設定内容（図中の「プリンタ設定」）やその時点でのプリンタ３の状態を表す情報（図中の「プリンタ情報」）などが示され、例えば、当該ページの上からｉ番目のバンド領域には、図のように、「表示言語」というステータス情報の項目に対して、現在設定されている値（内容）である「日本語」が印刷されている。
【００３６】
このバンドｉの領域については、このように、「表示言語」についての情報が示されるが、本プリンタ３において、例えば、「表示言語」として「日本語」のほかに「英語」、「フランス語」を設定することが可能であるとすると、当該バンド領域に印刷される内容の全パターン数は３つということになる。従って、この場合には、上記パターン数の把握（Ｓ６）において、３という数が把握される。
【００３７】
また、図３に示すバンドｊについては、「Ｃ（シアン）トナー残量」のその時点での状態を視覚的に示す領域となっているが、その図示された情報は、Ｅ（エンプティ）からＦ（フル）まで５パターンある。従って、この場合には、上記パターン数の把握（Ｓ６）において、５という数が把握される。
【００３８】
なお、プリンタドライバ２２は、プリンタ３用のドライバであり、各ステータス情報についてプリンタ３が取り得る値（内容）のパターン数を予め把握しており、また、ステータスシート４の各バンド領域に印刷される情報もわかるので、上記パターン数の把握（Ｓ６）が可能である。
【００３９】
次に、プリンタドライバ２２は、当該バンド領域について、上記把握したパターン数分のバンドデータ、すなわち、バンドヘッダーとバンドイメージデータを生成する（ステップＳ７）。言い換えれば、当該バンド領域に印刷される可能性がある全ての候補についてバンドデータを生成する。ここで生成されるバンドヘッダーには、そのバンド番号などそのバンドデータに係る各種情報が含まれるが、そのバンドイメージデータによって印刷されるステータス情報の項目とその情報（値）を示す情報も含まれており、この点が一つの特徴である。
【００４０】
図４は、生成されるバンドデータを説明するための図である。図４の（ａ）は、生成される１ページのデータを模式的に示しており、前記生成したページヘッダー（Ｓ５）以降にバンド領域１〜ｎのバンドデータがある。通常の印刷では、１バンド領域に１バンドデータとなるのでｎのバンドデータが生成されることになるが、ここでは、上述の通り、１バンド領域に対して複数のバンドデータが生成される場合もあるので、ｎ以上のバンドデータが生成されることになる。
【００４１】
そして、例えば、図３に示したステータスシート４を印刷する場合、バンドｉについては、上述の通り、パターン数が３であるので３つのバンドデータが生成され、バンドｊについては、パターン数が５であるので５つのバンドデータが生成される。その様子は、図４の（ｂ）に示されている。また、生成される各バンドデータは、上述の通り、ヘッダー部分とイメージデータ部分から構成されており、図４の（ｃ）には、その一例を示している。
【００４２】
図４の（ｃ）に示すバンドデータは、バンドｉの領域におけるデータであり、ここで生成するステータスシートはモノクロであるので、図に示すように、「バンド番号＝ｉ」、「プレーンの種類＝Ｋ（ブラック）」という情報がヘッダーに含まれる。また、「情報項目＝表示言語」及び「値＝日本語」は、上述の通り、当該ヘッダー以降の（図中の下部の）バンドイメージデータによって印刷されるステータス情報の項目とその情報（値）を示している。これら情報項目とその値に関するヘッダー情報が付加されることにより、プリンタ３において複数のバンドデータの中から適切なものを選択することが可能となる。
【００４３】
図４の（ｃ）において下部に示されるのが、バンドイメージデータであり、この場合には、図中のカッコ内に示されるように印刷されるためのイメージデータが収められる。当該印刷されるイメージは、図３のバンドｉ領域に示される内容に相当している。なお、バンドｉにおける他の２つのバンドデータにおいては、それぞれ、ヘッダーの「値＝日本語」の部分が「値＝英語」、「値＝フランス語」となっており、また、バンドイメージデータ部分も、それぞれ、ステータスシート４において「日本語」と印刷される部分が「英語」、「フランス語」と印刷されるようなデータとなっている。
【００４４】
また、バンドｊについても同様に、各バンドデータが生成され、例えば、図３に示した例では、バンドヘッダーにおいて、「情報項目＝Ｃトナー残量」で、それぞれ、「値＝０」（エンプティを意味する）〜「値＝４」（フルを意味する）のいずれかとなる５つのバンドデータがプリンタ３に送られることになる。
【００４５】
なお、これらバンドイメージデータは、通常の印刷と同様にプリンタドライバ２２でラスタライズされるので、当然にして、文字だけでなく図形や画像を含むことができ、図３に例示したようなステータスシート４の罫線や視覚的表現を忠実に表現することができる。
【００４６】
また、１バンド領域に１バンドデータしかない場合には、上記バンドヘッダーの情報項目を設定しないようにする。これにより、プリンタ３側において、そのバンド領域には複数のバンドデータが存在しないことを把握する。なお、代替案として、バンドヘッダーに、同じバンド領域に他のバンドデータが存在するか否かを表すフラグ（複数フラグ）を含めるようにしてもよい。例えば、「複数フラグ＝１」という情報であれば、プリンタ３はこのバンド領域に複数のバンドデータが存在すると判断し、「複数フラグ＝０」という情報であれば、プリンタ３はこのバンド領域には一つのみのバンドデータが存在すると判断して、そのバンドデータを印刷用に採用する。
【００４７】
なお、ここではモノクロのステータスシート４を印刷する場合であるので、各バンドデータはＫの１プレーンのみで構成されているが、カラーで印刷する場合には、バンド領域に複数のバンドデータが存在するか否かに関わらず、各バンドデータは、例えば、ＹＭＣＫの４プレーンのデータから構成されることになる。
【００４８】
このようにして、各バンド領域においてバンドデータが生成され、当該ページの全バンド領域についてバンドデータが生成されると（ステップＳ８のＹｅｓ）、プリンタドライバ２２は、生成したバンドデータをプリンタ３に送信し（ステップＳ９）、ステータスシート４の印刷要求を行なう。なお、生成したバンドデータの送信は、必ずしも当該ページのバンドデータの生成が全て完了した後に行う必要はなく、随時所定のタイミングで生成されたバンドデータをプリンタ３に送信しても構わない。
【００４９】
次に、プリンタ３側の処理内容について説明する。図５は、ステータスシート印刷時にプリンタ３によって行われる処理を例示したフローチャートである。前述の通り、ホストコンピュータ２側から印刷要求がなされ印刷データが送信されると、プリンタ３側では、Ｉ／Ｆ３１１を介して当該印刷データの受信を開始し（ステップＳ１１）、まず、そのページのヘッダー情報を受信して（ステップＳ１２）、そこに含まれるコマンド等がＣＰＵ３１２によって解釈される。
【００５０】
その後、ヘッダーに続いて送信される各バンドデータについて、以下のように処理を実行する。まず、そのバンドデータを受信すると（ステップＳ１３）、ＣＰＵ３１２は、当該バンドデータが、同じバンド領域に複数のバンドデータを有するものであるか否かを判断する（ステップＳ１４）。かかる判断は、前述の通り、受信したバンドデータのヘッダー情報に基づいて行われる。具体的には、バンドヘッダーに含まれる情報のうち、前述した「情報項目」について情報が設定されている場合には、複数のバンドデータが存在すると判断し、「情報項目」について情報が設定されていない場合には、当該バンドデータのみが存在すると判断する。従って、図４の（ｃ）に示した例の場合には、「情報項目＝表示言語」と「情報項目」について情報が設定されているので、複数のバンドデータありと判断される。また、前述の通り、複数フラグが含まれている場合には、これを用いて判断することができる。
【００５１】
判断の結果、複数のバンドデータが存在しないと判断された場合には（ステップＳ１４のＮｏ）、ＣＰＵ３１２は、当該バンドデータを印刷処理に使用するデータとしてＲＡＭ３１４に格納する（ステップＳ１７）。
【００５２】
一方、複数のバンドデータが存在すると判断された場合には（ステップＳ１４のＹｅｓ）、ＣＰＵ３１２は、バンドヘッダーに含まれる「値」に設定されている情報が、その時点でのプリンタ３における前記「情報項目」についての内容と一致しているか否かを判断する（ステップＳ１５）。言い換えれば、当該バンドデータにより印刷されるステータス情報の内容が、その時点での実際の内容と一致しているかがチェックされる。
【００５３】
具体的には、ＣＰＵ３１２が、前述したステータス情報管理モジュールに、ヘッダーの「情報項目」についてのその時点での内容を問い合わせる。ステータス情報管理モジュールは、ＲＡＭ３１４等に格納されているその内容を読み出してＣＰＵ３１２へ返答する。例えば、上記「情報項目」が表示言語である場合には、その時点でプリンタ３に設定されている表示言語の情報がＲＡＭ３１４から読み出され、ヘッダー情報の「値」に示される言語と一致するかがチェックされる。図４の（ｃ）に示すバンドデータであり、その時点でプリンタ３の表示言語が日本語に設定されていれば、一致すると判断され、英語に設定されている場合には一致しないと判断される。なお、この表示言語のようにプリンタ３の設置情報については、通常、ＮＶＲＡＭ３１５に格納されているものが、プリンタ３の起動時にＲＡＭ３１４に読み込まれており、ステータス情報管理モジュールは、その情報を利用することができる。また、トナー残量などその時点でのプリンタ３の状態に係る情報についても、所定のタイミングでセンシングされた情報がＲＡＭ３１４に収められており、その情報を利用することができるが、ＲＡＭ３１４に収められていない場合には、エンジン３２側から都度取得するようにしてもよい。
【００５４】
かかる判断の結果、バンドヘッダーに含まれる「値」とプリンタ３の実際の値が一致していれば（ステップＳ１５のＹｅｓ）、ＣＰＵ３１２は、当該バンドデータを印刷処理に使用するデータとしてＲＡＭ３１４に格納する（ステップＳ１７）。
【００５５】
一方、バンドヘッダーに含まれる「値」とプリンタ３の実際の値が一致していなければ（ステップＳ１５のＮｏ）、ＣＰＵ３１２は、当該バンドデータを破棄する（ステップＳ１６）。すなわち、この場合には、当該バンドデータはステータスシート４の印刷に使用できないのでこの時点で捨ててしまうことにする。そして、次のバンドデータの処理へ移行する（Ｓ１３へ）。
【００５６】
また、前述したように、バンドデータをＲＡＭ３１４に格納（Ｓ１７）した場合には、当該ページの全てのバンドデータについて処理が終了していなければ（ステップＳ１８のＮｏ）、同様に、次のバンドデータの処理へ移行する（Ｓ１３へ）。
【００５７】
このようにして、当該ページの全てのバンドデータについて処理が終了すると（ステップＳ１８のＹｅｓ）、例えば、１ページがｎバンド領域で構成されている場合には、当該ページに対してホストコンピュータ２側で生成されたｎ以上のバンドデータの全てについて処理が終了すると、当該ページの印刷について必要なバンドデータがＲＡＭ３１４に揃うことになるので、ＣＰＵ３１２は、エンジン３２に対して給紙を開始するように指示する（ステップＳ１９）。
【００５８】
図４に示した例では、バンドｉ、ｊなど複数のバンドデータが存在する部分について、前述した処理により、その部分に印刷するのに適切なバンドデータ一つが選択されることになり、ページ全体として印刷に使用するｎのバンドデータがＲＡＭ３１４に用意されることになる。
【００５９】
指示を受けたエンジン３２側では、給紙を開始して、当該ページについての印刷処理を、ＲＡＭ３１４に収められた各バンドデータに基づいて実行し、その時点での適切な情報を載せたステータスシート４が出力されることになる。
【００６０】
なお、図５に基づいて説明したプリンタ３側での処理は、ステータスシート４の印刷要求があった時のみならず、通常の印刷要求があった際にも用いられる。すなわち、全てのバンド領域に１バンドデータのみが存在する通常の印刷の場合にも、前述したステップＳ１４の判断において、常に、1バンド領域に複数のバンドデータが存在しないと判断されるだけである。
【００６１】
以上説明したように、本実施の形態例のプリンタシステム１では、ホストベースのシステムであり、プリンタ３側からステータス情報を受信できない場合にも、プリンタドライバ２２がステータス情報として可能性がある全ての内容についてバンドデータを生成してプリンタ３へ送信し、プリンタ３はその中から適切な内容のデータを選択できるので、適切な内容のステータスシート４を、プリンタドライバ２２が生成した通常印刷の場合と同様の表現力を有したデータを用いて出力でき、ステータスシート４の表現力を高めることができる。また、このことを実現するために、バンドデータに、印刷される内容を表すヘッダー情報が付加されればよく、装置の大規模化を要しない。
【００６２】
なお、本実施の形態例においては、プリンタ３側からステータス情報を受信できない場合に、候補となるバンドデータを全てホストコンピュータ２側で生成して送信したが、この候補となる全てのバンドデータを予めプリンタ３側に保有しておくようにしてもよい。この場合、ホストコンピュータ２がプリンタ３側からステータス情報を受信できない場合、あるいは、ステータスシート４の出力要求があった場合に、プリンタ３は、当該保有しているバンドデータの中から適切なものを選択して印刷処理を行うようにする。具体的な処理は、図５に基づいて説明した内容と同様に行うことができ、各バンドデータをホストコンピュータ２から受信（Ｓ１３）する代わりに、プリンタ３自身が保有している場所から読み出す処理にすることでよい。この変形例においても、同様の効果を得ることができる。
【００６３】
本発明の保護範囲は、上記の実施の形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶものである。
【図面の簡単な説明】
【００６４】
【図１】本発明を適用したプリンタシステムの実施の形態例に係る構成図である。
【図２】ステータスシート印刷時にプリンタドライバ２２によって行われる処理を例示したフローチャートである。
【図３】出力されるステータスシート４の一例を示した図である。
【図４】生成されるバンドデータを説明するための図である。
【図５】ステータスシート印刷時にプリンタ３によって行われる処理を例示したフローチャートである。
【符号の説明】
【００６５】
１  プリンタシステム、  ２  ホストコンピュータ、  ３  プリンタ、  ４  ステータスシート、  ２１  アプリケーション、  ２２  プリンタドライバ、  ２３  メモリ、  ３１  コントローラ、  ３２  エンジン、  ３１１  Ｉ／Ｆ、  ３１２  ＣＰＵ、  ３１３  ＲＯＭ、  ３１４  ＲＡＭ、  ３１５  ＮＶＲＡＭ、  ３１６  エンジンＩ／Ｆ
【図１】
2007226324.tif 000003
【図２】
2007226324.tif 000004
【図３】
2007226324.tif 000005
【図４】
2007226324.tif 000006
【図５】
2007226324.tif 000007