(57)【特許請求の範囲】
【請求項１】
印刷データからプリンタが解釈可能な印刷コマンドへ変換する印刷コマンド生成処理を行う印刷コマンド生成手段と、
前記印刷コマンド生成手段による印刷コマンド生成処理が遅延するか否かを前記印刷データに基づいて判定する判定手段と、
前記判定手段が前記印刷コマンド生成処理が遅延すると判定した場合に、前記印刷コマンド生成処理が遅延することを示す遅延コマンドを生成する遅延コマンド生成手段と、
前記遅延コマンド生成手段が前記遅延コマンドを生成した場合に、前記印刷コマンド生成処理が遅延することを示すステータスを表示する表示手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記印刷コマンドと前記遅延コマンドを前記プリンタに送信する送信手段を更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記プリンタのステータスを取得する取得手段を更に有し、
前記プリンタのステータスがエラーもしくは印刷中であった場合、エラーもしくは印刷中のステータス表示は、前記表示手段の前記印刷コマンド生成処理が遅延することを示す前記ステータスよりも優先して表示されることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記判定手段は、前記印刷データに含まれる画像データのサイズの合計が印刷するページのデータサイズより大きい場合、もしくは、前記印刷データに対して復号化処理が必要である場合に前記印刷コマンド生成処理が遅延すると判定することを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
印刷データからプリンタが解釈可能な印刷コマンドへ変換する印刷コマンド生成処理を行う印刷コマンド生成工程と、
前記印刷コマンド生成工程における印刷コマンド生成処理が遅延するか否かを前記印刷データに基づいて判定する判定工程と、
前記判定工程にて前記印刷コマンド生成処理が遅延すると判定した場合に、前記印刷コマンド生成処理が遅延することを示す遅延コマンドを生成する遅延コマンド生成工程と、
前記遅延コマンド生成工程にて前記遅延コマンドを生成した場合に、前記印刷コマンド生成処理が遅延することを示すステータスを表示する表示工程と
を有することを特徴とする情報処理装置の制御方法。
【請求項６】
コンピュータを、
印刷データからプリンタが解釈可能な印刷コマンドへ変換する印刷コマンド生成処理を行う印刷コマンド生成手段、
前記印刷コマンド生成手段による印刷コマンド生成処理が遅延するか否かを前記印刷データに基づいて判定する判定手段、
前記判定手段が前記印刷コマンド生成処理が遅延すると判定した場合に、前記印刷コマンド生成処理が遅延することを示す遅延コマンドを生成する遅延コマンド生成手段、
前記遅延コマンド生成手段が前記遅延コマンドを生成した場合に、前記印刷コマンド生成処理が遅延することを示すステータスを表示する表示手段
として機能させるためのプログラム。
【請求項７】
コンピュータを更に、
前記印刷コマンドと前記遅延コマンドを前記プリンタに送信する送信手段として機能させることを特徴とする請求項６に記載のプログラム。
【請求項８】
コンピュータを更に、
前記プリンタのステータスを取得する取得手段として機能させ、
前記プリンタのステータスがエラーもしくは印刷中であった場合、エラーもしくは印刷中のステータス表示は、前記表示手段の前記印刷コマンド生成処理が遅延することを示す前記ステータスよりも優先して表示されることを特徴とする請求項６又は７に記載のプログラム。
【請求項９】
前記判定手段は、前記印刷データに含まれる画像データのサイズの合計が印刷するページのデータサイズより大きい場合、もしくは、前記印刷データに対して復号化処理が必要である場合に前記印刷コマンド生成処理が遅延すると判定することを特徴とする請求項６乃至８いずれか一項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された情報に基づいて印刷を行う印刷システムにおける情報処理装置、制御方法、およびプログラムに関する。特に、プリンタおよびプリンタドライバの印刷データの処理状態についての情報を表示する技術に関する。
【背景技術】
【０００２】
従来、プリンタが、画像データの受信から印刷までの一連の処理の中で、どの処理を実行中であるかを動的に又は逐次表示する技術がある（例えば特許文献１）。特許文献１によれば、画像データの受信から印刷までの一連の処理の中で、どの処理を実行中であるかの情報を取得し、プリンタに備えたステータス情報表示手段に通知して表示させることが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１２０４３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば特許文献１の方法では、プリンタドライバ側での処理に時間がかかる場合には正常に処理が進んでいるのか、あるいは内部で何らかのエラーが発生し応答しなくなっている状態なのかがユーザには見分けがつかないという課題がある。プリンタドライバ内の処理が通常よりも時間がかかると、プリンタドライバ内で動作している状況が見た目には分からないため、ユーザに不安感を抱かせてしまう。特にサイズが大きい画像が含まれるデータを印刷する場合には、印刷制御装置内の画像データの印刷コマンド生成処理において、通常より処理に時間がかかる場合がある。
【０００５】
そこで、本発明は、印刷制御装置内部の上記のような処理で通常よりも時間がかかることを検出した場合、その旨をステータス情報として明示的に表現する印刷システムを提供することにより、ユーザの不安感を取り除くことを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、印刷データからプリンタが解釈可能な印刷コマンドへ変換する印刷コマンド生成処理を行う印刷コマンド生成手段と、前記印刷コマンド生成手段による印刷コマンド生成処理が遅延するか否かを前記印刷データに基づいて判定する判定手段と、前記判定手段が前記印刷コマンド生成処理が遅延すると判定した場合に、前記印刷コマンド生成処理が遅延することを示す遅延コマンドを生成する遅延コマンド生成手段と、前記遅延コマンド生成手段が前記遅延コマンドを生成した場合に、前記印刷コマンド生成処理が遅延することを示すステータスを表示する表示手段とを有する。
【発明の効果】
【０００７】
本発明によると、印刷コマンド生成処理に時間がかかると検出した場合、その旨をユーザに通知することで、ユーザの不安感を取り除くことができる。
【図面の簡単な説明】
【０００８】
【図１】印刷システムの構成を示すブロック図。
【図２】プリンタドライバの構成を示すブロック図。
【図３】ステータス情報表示部とユーザインタフェースモジュールの処理を示すフローチャート
【図４】印刷コマンド生成部の処理を示すフローチャート。
【図５】印刷コマンド生成部の印刷コマンドの生成時間を推測する処理を示すフローチャート。
【図６】コマンド送受信部のコマンド送信処理を示すフローチャート。
【図７】ステータス情報判断部の処理を示すフローチャート。
【図８】データ生成情報によるステータス判定処理を示すフローチャート。
【図９】ステータス情報表示画面を示す図。
【図１０】コマンド送受信部のコマンド送信処理を示すフローチャート。
【図１１】コマンド送受信部が印刷処理開始指示を受けた際の処理を示すフローチャート。
【図１２】コマンド送受信部のコマンド送信処理を示すフローチャート。
【図１３】印刷コマンドの構造を示す概念図。
【図１４】データ生成情報によるステータス判定処理を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下に示す実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１０】
［システム構成］
本実施形態のプリンタとプリンタに接続された情報処理装置によって構成された印刷システムの構成について図１のブロック図を参照して説明する。図１にプリンタ２とプリンタ２に接続された情報処理装置１によって構成された印刷システムを本発明の一実施形態として示す。情報処理装置１は、入力インタフェース１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、外部記憶装置１５、出力インタフェース１６、表示部１７、キーボード１０、マウス１８、および入出力インタフェース１９を有する。
【００１１】
ＲＯＭ１３には初期化プログラムが格納されており、外部記憶装置１５にはアプリケーションプログラム群、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、プリンタドライバ、およびその他各種のデータが保存されている。ＲＡＭ１４は、外部記憶装置１５にストアされる各種プログラムのワークメモリとして使用される。
【００１２】
プリンタ２は、入出力インタフェース２１、ＲＡＭ２２、プリントエンジン２３、ＲＯＭ２４、ＣＰＵ２５、および表示部２６を有する。入出力インタフェース２１は、情報処理装置１の入出力インタフェース１９と接続インタフェース（不図示）を介して接続する。本実施形態おいて、接続インタフェースはＵＳＢ（登録商標）を想定して説明しているが、特に何であっても構わない。また、この入出力インタフェース２１にプリンタ２の機能を拡張する拡張オプションを接続することも可能である。ＲＡＭ２２は、ＣＰＵ２５の主メモリとワークメモリとして用いられ、受信した印刷ジョブを一旦保存するための受信バッファや各種のデータを保存する領域となる。
【００１３】
プリントエンジン２３は、ＲＡＭ２２に保存されたデータに基づき印刷を行う。ＲＯＭ２４にはステータス管理プログラム２４ａ等、各種の制御プログラムや各制御プログラムが使用するデータが格納されており、ＣＰＵ２５はこれらの制御プログラムに従ってプリンタ２の各部を制御する。ステータス管理プログラム２４ａは、図示していないプリンタ内部にある各種のセンサの情報を元にプリンタ２の状態を監視し、ステータス情報を作成、ＲＡＭ２２に格納するプログラムである。
【００１４】
［ソフトウェア構成］
図２は本実施形態におけるプリンタドライバの構成を説明するためにＯＳとプリンタドライバを中心に概念的に表したソフトウェアの構成を示すブロック図の一例である。アプリケーション２０１が作成した印刷データは、ＯＳ２０２によってスプールデータ２０３として一時的に蓄えられる。一時的に蓄えられたスプールデータ２０３は、ＯＳ２０２によって、プリンタドライバ２２０に印刷データとして供給される。ユーザインタフェースモジュール２２１は、印刷が開始される通知をＯＳ２０２から受け取ると、ステータス情報表示部２２６を起動する。
【００１５】
一方、プリンタドライバ２２０の印刷コマンド生成部２２２は、印刷データをプリンタ２３０（プリンタ２）が解釈可能な印刷コマンド２２３に変換する。印刷コマンド２２３は、コマンド送受信部２２４によってプリンタ２３０に順次送信される。プリンタ２３０にエラーが発生した場合など、ユーザにプリンタ２３０の状態を通知すべき状態である場合、コマンド送受信部２２４はステータス情報表示部２２６にエラー状態の表示指示を出す。
【００１６】
ステータス情報表示部２２６は、ステータス情報判定部２２５によってプリンタ２３０の状態を解析し、プリンタ２３０の情報を情報処理装置１の表示部１７上に表示させる。これにより、ユーザがプリンタ２３０の状態を確認する手段を提供する。また、プリンタ２３０は、ステータス管理プログラム２４ａによって自身の状態を解析し、プリンタ２３０の情報を表示部２６上に表示させる。これにより、ユーザがプリンタ２３０の状態を確認する手段を提供する。
【００１７】
＜第一実施形態＞
以下、図３から図９を参照し、本発明における第一実施形態を詳細に説明する。
【００１８】
図３は、ユーザインタフェースモジュール２２１及びステータス情報表示部２２６の処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。ユーザインタフェースモジュール２２１は、印刷の開始通知をＯＳ２０２から受け取ると、ステータス情報表示部２２６を起動する（Ｓ３０１）。
【００１９】
ステータス情報表示部２２６は、処理を開始すると（Ｓ３２０）、ステータス情報判定部２２５を呼び出す（Ｓ３２１）。ステータス情報判定部２２５の処理については図８を用いて後述する。ステータス情報表示部２２６は、情報処理装置１の表示部１７上に図９（ａ）に示すようなステータス情報表示画面９１０を表示する。そして、ステータス情報表示部２２６は、Ｓ３２１により決定した、例えば印刷コマンド生成に時間がかかる旨がユーザに対して明確に理解されるようなステータスを表示する（Ｓ３２２）。ステータス情報表示部２２６は、印刷が終了するまで（Ｓ３２３にてＹＥＳ）、ステータス表示をし続ける。
【００２０】
［コマンド生成処理］
一方、図４は、印刷コマンド生成部２２２の処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。印刷コマンド生成部２２２は、ＯＳ２０２から印刷開始の通知を受け取ると処理を開始する。ここでいう印刷コマンドの生成とは、デスプール処理とも呼ばれるが、スプールされた印刷データを一般的な各種画像処理を施し、印刷データをプリンタ２３０（プリンタ２）が解釈可能な印刷コマンド２２３に変換する処理に相当する。
【００２１】
例えば、レッド（Ｒ），グリーン（Ｇ），ブルー（Ｂ）各色８ビット（それぞれ２５６階調）の印刷データを最終的にシアン（Ｃ），マゼンタ（Ｍ），イエロー（Ｙ），ブラック（Ｋ）各色１ビットのビットイメージデータとして出力する。さらに詳細には、Ｒ，Ｇ，Ｂ各色８ビットの輝度データは、まず３次元のルックアップテーブル（ＬＵＴ）を用いた第１色変換処理によってＲ’，Ｇ’，Ｂ’各色８ビットデータに変換される。
【００２２】
このＲ，Ｇ，ＢデータからＲ’，Ｇ’，Ｂ’データへの色変換処理は、本実施形態では、以下の処理が相当する。輝度データが表す入力画像の色空間とプリンタで再現可能な色空間の差を補正する処理、Ｒ，Ｇ，Ｂの輝度データが表す入力画像の色空間をデバイス非依存のＸＹＺ系の色空間に変換する色空間変換処理、およびこのデバイス非依存の色空間をプリンタに依存する色空間へ変換する処理などである。また、この処理は上記のように３次元ＬＵＴを用いて行うが、全ての入力の組合せに対して格子点を有するものでなく、補間処理が併用される。
【００２３】
この色変換処理を施されたＲ’，Ｇ’，Ｂ’各色８ビットデータは、次段の３次元ＬＵＴを用いた処理によりＣ，Ｍ，Ｙ，Ｋ各色８ビットデータに変換される。この第２色変換処理は、輝度信号で表現される入力系のＲＧＢ系データを濃度信号で表現するための出力系のＣＭＹＫ系データに色変換する処理、その他マスキング、下色除去、黒生成等の処理である。
【００２４】
ＬＵＴによる第２色変換処理によって得られたＣ，Ｍ，Ｙ，Ｋ各色８ビットデータは、それぞれの色の１次元ＬＵＴによって出力ガンマ補正が施される。これは印刷媒体の単位面積当たりに記録されるドットの数とこれを測定して得られる反射濃度などの出力特性とが、通常、線形関係とはならないことから行われる処理である。従って、この出力ガンマ補正を行うことにより、Ｃ，Ｍ，Ｙ，Ｋ各８ビットの入力階調レベルとそれによって記録される画像の濃度レベルとの線形関係を保証することができることになる。
【００２５】
以上の出力ガンマ補正の後、２値化処理を行う。本実施形態のプリンタは、２値プリンタであるので上記のように得られたＣ，Ｍ，Ｙ，Ｋ各色８ビットのデータは、Ｃ，Ｍ，Ｙ，Ｋ各色１ビットのデータに量子化される。
【００２６】
以上のような画像処理が一般的であるが、本実施形態では、これに加えて、他の印刷コマンドの生成における画像処理としては、印刷データに復号の必要なデータが含まれており、その復号処理を行う場合もありうる。復号の必要なデータとしては例えば、電子透かしを画像に付加したもの、印刷データを暗号化したものなどが考えられる。それらのデータに対しては、各々復号化モジュールを設け、対象とする領域を特定するための判定モジュールを必要個所全域に通した後、対象とする画素を復号する処理を行なわねばならない。従って、これらの情報に対する処理は、一般に多くの所要時間を要する処理となる。
【００２７】
このような処理に要する時間を推定するため、まず印刷コマンド生成部２２２は、印刷コマンド２２３へ変換する処理に時間がかかるかどうかを判定する印刷コマンド生成遅延予測処理を行う（Ｓ４０１）。
【００２８】
［印刷コマンド生成遅延予測処理］
ここで、図５を用いて、図４のＳ４０１における印刷コマンド生成遅延予測処理について説明する。印刷コマンド生成遅延予測処理は、印刷コマンド生成部２２２から呼ばれることで開始される。印刷コマンド生成遅延予測処理は、スプールデータ２０３の内容と印刷コマンドの生成に時間がかかると判定するための予め定義された条件とを照らし合わせて、印刷コマンドの生成の遅延の予測を行う。まず、印刷コマンド生成遅延予測処理は、スプールデータ２０３に含まれる画像データのサイズの合計が印刷ページのデータサイズより大きいかどうかを判定する（Ｓ５０１）。
【００２９】
例えば、Ａ４サイズで印刷をする場合では印刷ページのデータサイズは約１００ＭＢとなり、これより大きなサイズの画像データが含まれる場合に印刷コマンドの生成には時間がかかると予測できる。したがって、スプールデータ２０３に含まれる画像データのデータサイズの合計が印刷ページのデータサイズ以上であると判定した場合は（Ｓ５０１にてＹＥＳ）、印刷コマンドの生成に時間がかかると判定する（Ｓ５０２）。スプールデータ２０３に含まれる画像データのサイズの合計が印刷ページのサイズ以上でないと判定した場合は（Ｓ５０１にてＮＯ）、印刷コマンド生成遅延予測処理は、印刷データが復号化処理を必要としているデータであるかどうかを判定する（Ｓ５０３）。ここでの判定は、上述したように例えば電子透かしの有無などにより判定する。
【００３０】
印刷データの復号化処理が必要であると判定した場合は（Ｓ５０３にてＹＥＳ）、印刷コマンドの生成に時間がかかると判定する（Ｓ５０４）。印刷データの復号化処理は必要でないと判定した場合は（Ｓ５０３にてＮＯ）、印刷コマンドの生成に時間がかからないと判定する（Ｓ５０５）。なお、ここまで述べてきた各判定条件（Ｓ５０１およびＳ５０３）は、あくまでも一例であり必須の判定条件ではない。印刷データの種類や形式に応じて、これら以外の判定条件を定義し、用いることは可能である。
【００３１】
以上の印刷コマンド生成遅延予測処理（Ｓ４０１）の結果を受けて、印刷コマンド生成部２２２は、状態コマンドを生成する。具体的には、印刷コマンド２２３の生成に時間がかかると判定した場合（Ｓ４０２にてＹＥＳ）、印刷コマンド生成部２２２は印刷コマンドのデータ生成に時間がかかる旨（生成状態）を示す状態コマンドを生成する（Ｓ４０３）。なお、ここで生成される状態コマンドを以降、“ＳｌｏｗＤａｔａＧｅｎｅｒａｔｉｏｎ（略称としてＳＤＧ）コマンド”と称する。これにより、状態コマンド生成手段を実現する。そして、印刷コマンド生成部２２２は、コマンド送受信部２２４に送信する（Ｓ４０４）。Ｓ４０１の結果を受けて印刷コマンド生成部２２２が印刷コマンド２２３の生成に時間がかかることはないと判定した場合には（Ｓ４０２にてＮＯ）、印刷コマンド生成部２２２はＳＤＧコマンドを生成せず次の処理（Ｓ４０５）に進む。
【００３２】
印刷コマンド生成部２２２は、スプールデータ２０３をプリンタ２３０が解釈可能な印刷コマンド２２３へ変換し（Ｓ４０５）、生成した印刷コマンド２２３を送信する（Ｓ４０６）。ここで、Ｓ４０６で送信するそれぞれのコマンドはＲＡＭ１４にあるＯＳ２０２のキャッシュメモリに一時保存され、ＯＳ２０２によってコマンド送受信部２２４へ随時渡される。
【００３３】
印刷コマンド生成部２２２は、以上のＳ４０１からＳ４０６を繰り返し行い、全ての印刷データの変換が完了したと判定すると（Ｓ４０７にてＹＥＳ）、処理を終了する。以上の処理により、印刷コマンド２２３の生成に時間がかかりそうである場合にはＳＤＧコマンドを生成し、後段の処理に印刷コマンド生成に時間がかかりそうな状態であると予め通知することが可能となる。
【００３４】
［コマンド送信処理］
続いて、図６を参照して、コマンド送受信部２２４がプリンタ２３０へコマンドを送信する際の処理について詳細に説明する。本処理は、本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。コマンド送受信部２２４は、ＯＳ２０２から印刷コマンド２２３およびＳＤＧコマンドを受け取ると同時に、ＯＳ２０２からプリンタ２３０へコマンド送信指示を受け、送信処理を開始する。
【００３５】
コマンド送受信部２２４は、まずプリンタ情報としてプリンタ２３０の状態を取得し、外部記憶装置１５に保存する（Ｓ６０１）。本実施形態では、プリンタ２３０への書き込み指示があるたびにプリンタ２３０の状態を取得する構成で説明する。しかし、この構成に限定するものではなく、プリンタ２３０の状態を取得する処理をコマンド送受信部２２４とは別スレッドとしてプリンタ情報取得スレッドを作成するような構成でもよい。
【００３６】
プリンタ情報取得スレッドは、プリンタ２３０の状態を一定間隔で取得し、その都度取得したプリンタ２３０の状態を外部記憶装置１５に保存する。コマンド送受信部２２４は、開始した時点で外部記憶装置１５に保存されたプリンタ２３０の状態を参照するような構成となる。コマンド送受信部２２４は、Ｓ６０１で取得した状態を解析して、プリンタ２３０でエラーが発生しているかを判定する（Ｓ６０２）。プリンタ２３０でエラーが発生していると判定した場合（Ｓ６０２にてＹＥＳ）、実際にはコマンド送受信部２２４はプリンタ２３０へコマンド送信処理を行わず、ＯＳ２０２にプリンタ２３０へのコマンド送信に失敗したことを通知する（Ｓ６０３）。コマンド送信に失敗した旨の通知を受けたＯＳ２０２は、同じ印刷コマンド２２３を送信が成功するまでコマンド送受信部２２４に通知し続ける。
【００３７】
プリンタ２３０でエラーが発生していないと判定した場合には（Ｓ６０２にてＮＯ）、コマンド送受信部２２４はＯＳ２０２から受信したプリンタ２３０に送信するコマンドの解析を行う（Ｓ６０４）。ここで、解析したコマンドがＳＤＧコマンドであれば（Ｓ６０５にてＹＥＳ）、コマンド送受信部２２４は、ＳＤＧコマンドであることを「データ生成情報」として外部記憶装置１５に保存する（Ｓ６０８）。
【００３８】
データ生成情報は、ステータス情報表示部２２６に渡す情報である。本実施形態において、コマンド送受信部２２４とステータス情報表示部２２６とのプロセス間通信の方法として、Ｍｉｃｒｏｓｏｆｔ  Ｄｅｖｅｌｏｐｅｒ  Ｎｅｔｗｏｒｋ（ＭＳＤＮ）で公開されているＢｉｄｉ  Ｐｒｉｎｔｅｒ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ（Ｂｉｄｉ通信）を例に挙げる。
【００３９】
そして、コマンド送受信部２２４は、実際にはプリンタ２３０へコマンドを送信しないが、ＯＳ２０２に対してプリンタ２３０へのコマンド送信が成功した旨を通知する（Ｓ６０７）。そして、ＯＳ２０２はＳＤＧコマンドをＲＡＭ１４にあるキャッシュメモリから削除する。
【００４０】
Ｓ６０４で解析したコマンドがＳＤＧコマンドでないと判定した場合には（Ｓ６０５にてＮＯ）、コマンド送受信部２２４は、ＯＳ２０２から受信した印刷コマンド２２３をプリンタ２３０へ送信する（Ｓ６０８）。そして、コマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０へのコマンド送信処理が成功したことを通知する（Ｓ６０９）。
【００４１】
［ステータス情報判定処理］
続いて、図７を用いて、ステータス情報判定部２２５の処理を詳細に説明する。ステータス情報判定部２２５は、ステータス情報表示部２２６から呼ばれる（Ｓ３２１）ことにより、処理を開始する。
【００４２】
ステータス情報判定部２２５は、まずコマンド送受信部２２４がプリンタ２３０との通信を確立できているかを判定する（Ｓ７０１）。プリンタ２３０との通信が失敗していると判定された場合（Ｓ７０１にてＹＥＳ）、ステータス情報判定部２２５は通信エラーステータスが発生していると決定する（Ｓ７０２）。ステータス情報判定部２２５は、ステータス情報表示部２２６に決定したステータスを返却する（Ｓ７０３）。
【００４３】
コマンド送受信部２２４とプリンタ２３０との通信が成功していると判定された場合（Ｓ７０１にてＮＯ）、ステータス情報判定部２２５は、Ｂｉｄｉ通信によってコマンド送受信部２２４から保存されたプリンタ２３０の状態とデータ生成情報を取得する（Ｓ７０４）。ステータス情報判定部２２５は、取得したプリンタ２３０の状態から、プリンタ２３０でエラーが発生しているかを判定する（Ｓ７０５）。プリンタ２３０でエラーが発生していると判定された場合には（Ｓ７０５にてＹＥＳ）、ステータス情報判定部２２５はプリンタエラーステータスが発生していると決定する（Ｓ７０６）。そして、ステータス情報判定部２２５はステータス情報表示部２２６に決定したステータスを返却する（Ｓ７０３）。
【００４４】
プリンタ２３０でエラーが発生していないと判定された場合（Ｓ７０５にてＮＯ）、ステータス情報判定部２２５はプリンタ２３０が印刷中などの動作を示す状態であるかを判定する（Ｓ７０７）。プリンタ２３０が印刷などの動作中であると判定された場合には（Ｓ７０７にてＹＥＳ）、ステータス情報判定部２２５はプリンタ動作ステータスが発生していると決定する（Ｓ７１０）。そして、ステータス情報判定部２２５はステータス情報表示部２２６に決定したステータスを返却する（Ｓ７０３）。
【００４５】
プリンタ２３０がいずれの動作状態でもないと判定された場合には（Ｓ７０７にてＮＯ）、ステータス情報判定部２２５はＳ７０４によって取得したデータ生成情報によってステータスを判定する処理を開始する（Ｓ７０９）。そして、Ｓ７０９のステータス判定処理の後、ステータス情報判定部２２５は、ステータス情報表示部２２６に決定したステータスを返却する（Ｓ７０３）。
【００４６】
図８は、前述のデータ生成情報によってステータスを判定する処理（Ｓ７０９）を示すフローチャートである。ステータス情報判定部２２５は、Ｓ７０９にて呼び出されることで処理を開始すると、まずＳ７０４によって取得したデータ生成情報を参照する（Ｓ８０１）。そして、ステータス情報判定部２２５は、取得したデータ生成情報がＳＤＧコマンドであることを示しているかを判定する（Ｓ８０２）。取得したデータ生成情報がＳＤＧコマンドであることを示している場合には（Ｓ８０２にてＹＥＳ）、ステータス情報判定部２２５は印刷コマンド生成に時間がかかるステータスが発生していると決定する（Ｓ８０３）。
【００４７】
取得したデータ生成情報がデータ生成に時間がかかる旨を示していない場合には（Ｓ８０２にてＮＯ）、ステータス情報判定部２２５はプリンタ２３０および印刷コマンド生成部２２２が正常ステータスであると決定する（Ｓ８０４）。そして、本処理フローを終了する。これにより、状態コマンド判定手段を実現する。
【００４８】
上記の処理結果に基づき、ステータス情報表示部２２６は、情報処理装置１の表示部１７上に図９（ａ）に示すようなステータス情報表示画面９１０を表示し、ステータス情報判定部２２５により決定したステータスを表示する（Ｓ３２２）。
【００４９】
すなわち、上述したように、プリンタエラーステータスが発生していると決定した場合は（Ｓ７０６）、ステータス情報表示部２２６は、まずはプリンタエラーというステータスを表示する。次にプリンタ２３０が印刷などの動作中であると判定された場合には（Ｓ７０８）、ステータス情報表示部２２６は、プリンタ動作中といったステータスを表示する。そうでない場合には、Ｓ８０３により決定した、印刷コマンド生成に時間がかかるということが明確にユーザに理解されるようなステータスを表示する（Ｓ３２２）ことが可能となる。
【００５０】
以上の構成によって、スプールデータ２０３の内容によって印刷コマンドの生成に時間がかかると予測した場合に、その旨をユーザに通知することが可能となる。
【００５１】
＜第二実施形態＞
以下、図１０を参照し、本発明に係る第二実施形態を説明する。第一実施形態では、情報処理装置１にて、印刷コマンド２２３の生成に時間がかかるということをユーザに通知する例を示したが、本実施形態では、プリンタ２側で同等の通知を行う例を示す。
【００５２】
［コマンド送信処理］
図１０は、コマンド送受信部２２４がプリンタ２３０へのコマンド送信指示をＯＳ２０２から受けた際の処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。コマンド送受信部２２４は、ＯＳ２０２から印刷コマンド２２３およびＳＤＧコマンドを受け取ると同時に、ＯＳ２０２からプリンタ２３０へコマンド送信指示を受け、送信処理を開始する。なお印刷コマンド２２３およびＳＤＧコマンドを受け取るまでの処理フローは、概ね第一実施形態に述べた通りであるので省略する。
【００５３】
コマンド送受信部２２４は、まずプリンタ２３０の状態を取得し、外部記憶装置１５に保存する（Ｓ１００１）。本実施形態では、プリンタ２３０への書き込み指示があるごとにプリンタ２３０の状態を取得する構成で説明する。しかし、プリンタ２３０の状態を取得する処理をコマンド送受信部２２４とは別スレッドとしてプリンタ情報取得スレッドを作成するような構成でもよい。この場合、プリンタ情報取得スレッドはプリンタ２３０の状態を一定間隔で取得し、その都度取得したプリンタ２３０の状態を外部記憶装置１５に保存する。本実施形態において、コマンド送受信部２２４は、本処理フローを開始した時点で外部記憶装置１５に保存されたプリンタ２３０の状態を参照するような構成となる。
【００５４】
コマンド送受信部２２４は、Ｓ１００１で取得した状態を解析して、プリンタ２３０でエラーが発生しているかを判定する（Ｓ１００２）。プリンタ２３０でエラーが発生していると判定した場合（Ｓ１００２にてＹＥＳ）、コマンド送受信部２２４はプリンタ２３０に対しコマンド送信処理を行なわず、ＯＳ２０２に対してプリンタ２３０へのコマンド送信に失敗したことを通知する（Ｓ１００３）。コマンド送信に失敗した旨の通知を受けたＯＳ２０２は、同じ印刷コマンド２２３を送信が成功するまでコマンド送受信部２２４に通知し続ける。
【００５５】
プリンタ２３０でエラーが発生していないと判定された場合（Ｓ１００２にてＮＯ）、コマンド送受信部２２４はＯＳ２０２から受信したコマンドの解析を行う（Ｓ１００４）。ここで、コマンド送受信部２２４はＳ１００４で解析したコマンドがＳＤＧコマンドであるかどうかを判定する（Ｓ１００５）。Ｓ１００４で解析したコマンドがＳＤＧコマンドであると判定した場合（Ｓ１００５にてＹＥＳ）、コマンド送受信部２２４はＳＤＧコマンドであることを「データ生成情報」として外部記憶装置１５に保存する（Ｓ１００６）。
【００５６】
データ生成情報は、ステータス情報表示部２２６に渡す情報である。また、本実施形態においてはコマンド送受信部２２４とステータス情報表示部２２６とのプロセス間通信の方法として、第一実施形態と同様にＢｉｄｉ通信を例に挙げる。そして、コマンド送受信部２２４はステータス情報判定部２２５の処理（Ｓ１００７）によって、現在ユーザに通知すべきステータスを取得する。ステータス情報判定部２２５の処理（Ｓ１００７）については、第一実施形態で説明した図７および図８の処理と同様である。
【００５７】
コマンド送受信部２２４は、Ｓ１００７によって取得したステータスが印刷コマンド生成に時間がかかるステータスかどうかを判定する（Ｓ１００８）。取得したステータスが印刷コマンド生成に時間がかかるステータスである場合（Ｓ１００８にてＹＥＳ）、コマンド送受信部２２４はプリンタ２３０にＳＤＧコマンドを送信する（Ｓ１００９）。そして、コマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０へのコマンド送信が成功したことを通知する（Ｓ１０１０）。
【００５８】
取得したステータスが印刷コマンド生成に時間がかかるステータスでない場合（Ｓ１００８にてＮＯ）、コマンド送受信部２２４はプリンタ２３０にＳＤＧコマンドを送信しない。コマンド送受信部２２４は、実際にはプリンタ２３０へコマンドを送信しないが、ＯＳ２０２にプリンタ２３０へのコマンド送信が成功したことを通知する（Ｓ１０１０）。これにより、ＯＳ２０２はＳＤＧコマンドをＲＡＭ１４にあるキャッシュメモリから削除する。
【００５９】
上述したように、Ｓ１００８の判定処理を構成に加えることによって、情報処理装置１上で印刷コマンド生成に時間がかかる旨を表示するときのみプリンタ２３０にＳＤＧコマンドを送信することが出来る。これにより、プリンタ２３０上の表示部２６において情報処理装置１上との表示内容の同期をとることが可能になる。
【００６０】
Ｓ１００４で解析したコマンドがＳＤＧコマンドでない場合（Ｓ１００５にてＮＯ）、コマンド送受信部２２４は、ＯＳ２０２から受信した印刷コマンド２２３をプリンタ２３０へ送信する（Ｓ１０１１）。そして、コマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０へのコマンド送信処理が成功したことを通知する（Ｓ１０１２）。プリンタ２３０は、コマンド送受信部２２４からＳＤＧコマンドを受信すると、表示部２６上に表示している図９（ｂ）に示すようなステータス情報表示画面９２０に、情報処理装置１でのデータ生成処理に時間がかかっている旨のメッセージを表示する。
【００６１】
以上のような構成により、スプールデータ２０３の内容によって印刷コマンドの生成に時間がかかると判定した場合、情報処理装置１上の表示部１７だけでなく、プリンタ２３０上の表示部２６においても、その旨をユーザに通知することが可能である。本実施形態により、例えばネットワークに接続された離れた場所にあるプリンタに出力する際に、プリンタの表示部上でデータ生成に時間がかかっていることが分かるなど、ユーザの利便性が増す。また、情報処理装置１上の表示部１７と、プリンタ２３０上の表示部２６の表示内容の同期が取れるという効果もある。
【００６２】
＜第三実施形態＞
以下、図１１から図１４を参照し、本発明に係る第三実施形態を説明する。第一、第二実施形態では、情報処理装置１にて、印刷コマンド２２３の生成に時間がかかるということをＳＤＧコマンドによってユーザに通知する例を示したが、ＳＤＧコマンドは通知されるまでに時間がかかる場合も起こり得る。本実施形態では、ＳＤＧコマンドではなく、印刷コマンド２２３に変換すべき印刷ジョブが存在し、プリンタドライバの処理が開始していると判定できる場合に、印刷コマンド生成部２２２が印刷コマンド２２３を生成中であると判定し、通知する例を示す。また本実施形態では、印刷コマンド生成部２２２からＳＤＧコマンドが通知されたときと、そうでないときとで通知内容を変える。これにより、印刷コマンド生成処理が滞りなく完了できる見込みなのか、あるいは通常よりも時間がかかる見込みなのかを表示することでユーザが見分けることが可能となる。
【００６３】
［接続処理］
図１１は、コマンド送受信部２２４がＯＳ２０２から印刷開始の通知を受け取った際の処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。コマンド送受信部２２４にはＯＳ２０２から印刷開始の通知を受け取ると、本処理を開始する。
【００６４】
コマンド送受信部２２４は、まずプリンタ２３０との接続を試みる（Ｓ１１０１）。そして、コマンド送受信部２２４は、プリンタ２３０との接続が成功し、接続状態となっているかどうかを判定する（Ｓ１１０２）。プリンタ２３０との接続が成功したと判定された場合（Ｓ１１０２にてＹＥＳ）、コマンド送受信部２２４は接続成功を示す識別子を外部記憶装置１５に保存する（Ｓ１１０３）。これにより、接続判定手段を実現する。コマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０との接続に成功した旨を通知する（Ｓ１１０４）。そして、本処理フローを終了する。
【００６５】
プリンタ２３０との接続が失敗したと判定された場合（Ｓ１１０２にてＮＯ）、コマンド送受信部２２４は接続失敗を示す識別子を外部記憶装置１５に保存する（Ｓ１１０５）。コマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０との接続に失敗した旨を通知する（Ｓ１１０６）。そして、本処理フローを終了する。
【００６６】
上記処理はＯＳ２０２から印刷開始の通知を受け取ったときにのみ行われるので、Ｓ１１０３およびＳ１１０５で保存された識別子はプリンタドライバ２２０の処理が開始しているか否かの判定に用いることが可能である。
【００６７】
［コマンド送信処置］
図１２は、コマンド送受信部２２４がプリンタ２３０へのコマンド送信指示をＯＳ２０２から受けた際の処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。コマンド送受信部２２４は、ＯＳ２０２から印刷コマンド２２３およびＳＤＧコマンドを受け取ると同時に、ＯＳ２０２からプリンタ２３０へコマンド送信指示を受け送信処理を開始する。印刷コマンド２２３およびＳＤＧコマンドを受け取るまでの処理は第一実施形態に述べたと同等の処理であるので省略する。
【００６８】
コマンド送受信部２２４は、まずプリンタ２３０の状態を取得し、外部記憶装置１５に保存する（Ｓ１２０１）。本実施形態では、プリンタ２３０への書き込み指示があるごとにプリンタ２３０の状態を取得する構成で説明する。しかし、プリンタ２３０の状態を取得する処理をコマンド送受信部２２４とは別スレッドとしてプリンタ情報取得スレッドを作成するような構成でもよい。この場合、プリンタ情報取得スレッドはプリンタ２３０の状態を一定間隔で取得し、その都度取得したプリンタ２３０の状態を外部記憶装置１５に保存する。コマンド送受信部２２４は、本処理を開始した時点で外部記憶装置１５に保存されたプリンタ２３０の状態を参照するような構成となる。
【００６９】
コマンド送受信部２２４は、Ｓ１２０１で取得した状態を解析して、プリンタ２３０でエラーが発生しているかを判定する（Ｓ１２０２）。プリンタ２３０でエラーが発生していると判定された場合（Ｓ１２０２にてＹＥＳ）、コマンド送受信部２２４はプリンタ２３０に対しコマンド送信処理を行わず、ＯＳ２０２に対してプリンタ２３０へのコマンド送信に失敗したことを通知する（Ｓ１２０３）。コマンド送信に失敗した旨の通知を受けたＯＳ２０２は、同じ印刷コマンド２２３を送信が成功するまでコマンド送受信部２２４に通知し続ける。つまり、プリンタエラーが発生している場合には、他の状態の表示に優先してその旨を表示させることとなる。
【００７０】
プリンタ２３０でエラーが発生していないと判定された場合（Ｓ１２０２にてＮＯ）、コマンド送受信部２２４はＯＳ２０２から受信しプリンタ２３０へ送信するコマンドの解析を行う（Ｓ１２０４）。ここで、コマンド送受信部２２４はＳ１２０４で解析したコマンドがＳＤＧコマンドであるかどうかを判定する（Ｓ１２０５）。Ｓ１２０４で解析したコマンドがＳＤＧコマンドであると判定された場合（Ｓ１２０５にてＹＥＳ）、コマンド送受信部２２４はＳＤＧコマンドであることを「データ生成情報」として外部記憶装置１５に保存する（Ｓ１２０６）。
【００７１】
データ生成情報は、ステータス情報表示部２２６に渡す情報であり、本実施形態においてはコマンド送受信部２２４とステータス情報表示部２２６とのプロセス間通信の方法として、Ｂｉｄｉ通信を例に挙げる。そして、コマンド送受信部２２４はステータス情報判定部２２５の処理（Ｓ１２０７）によって、現在ユーザに通知すべきステータスを取得する。ステータス情報判定部２２５の処理（Ｓ１２０７）については、図１４を用いて後述する。
【００７２】
コマンド送受信部２２４は、Ｓ１２０７によって取得したステータスが印刷コマンド生成に時間がかかるステータスかどうかを判定する（Ｓ１２０８）。取得したステータスが印刷コマンド生成に時間がかかるステータスである場合（Ｓ１２０８にてＹＥＳ）、コマンド送受信部２２４はプリンタ２３０にＳＤＧコマンドを送信する（Ｓ１２０９）。そして、コマンド送受信部２２４は、ＯＳ２０２に対してプリンタ２３０へのコマンド送信に成功したことを通知する（Ｓ１２１０）。
【００７３】
取得したステータスが印刷コマンド生成に時間がかかるステータスでない場合（Ｓ１２０８にてＮＯ）、コマンド送受信部２２４はプリンタ２３０にＳＤＧコマンドを送信しない。コマンド送受信部２２４は、実際にはプリンタ２３０へコマンドを送信しないが、ＯＳ２０２に対してプリンタ２３０へのコマンド送信が成功したことを通知する（Ｓ１２１０）。そして、ＯＳ２０２はＳＤＧコマンドをＲＡＭ１４にあるキャッシュメモリから削除する。Ｓ１２０４で解析したコマンドがＳＤＧコマンドでないと判定した場合（Ｓ１２０５にてＮＯ）、Ｓ１２０４で解析したコマンドが印字コマンドであるか判定する（Ｓ１２１１）。
【００７４】
ここで、図１３を用いて印刷コマンドの構造を説明する。印刷コマンド１３０１は、設定コマンド１３０２、印字コマンド１３０３、ページ終了コマンド１３０４、およびジョブ終了コマンド１３０５から構成されるコマンドである。設定コマンド１３０２は、印刷ジョブの印刷情報を示すコマンドである。印刷情報には、例えば、用紙サイズや用紙の種類、両面印刷を行うかどうか、などの情報が含まれる。印字コマンド１３０３は、画像データなどプリンタ２３０で出力させる内容を含むコマンドである。プリンタ２３０は、印字コマンド１３０３を受信すると、給紙動作を行い、印刷を開始する。ページ終了コマンド１３０４は、ジョブの毎ページの最後に付加されるコマンドである。ページ終了コマンド１３０４によって、プリンタ２３０はページの区切りを解釈することができる。ジョブ終了コマンド１３０５は、ジョブの最後のページのページ終了コマンドの後に付加されるコマンドである。プリンタ２３０はジョブ終了コマンド１３０５を受け取ると、印刷を終了する。
【００７５】
Ｓ１２０４で解析したコマンドが印字コマンド１３０３であると判定された場合（Ｓ１２１１にてＹＥＳ）、コマンド送受信部２２４は、印字コマンド１３０３を受信した旨を示す識別子を外部記憶装置１５に保存する（Ｓ１２１２）。そして、コマンド送受信部２２４は、プリンタ２３０に印字コマンド１３０３を送信する（Ｓ１２１３）。そしてコマンド送受信部は、ＯＳ２０２にプリンタ２３０へのコマンド送信処理が成功したことを通知する（Ｓ１２１４）。これにより、受信判定手段を実現する。
【００７６】
Ｓ１２０４で解析したコマンドが印字コマンド１３０３でないと判定された場合（Ｓ１２１１にてＮＯ）、コマンド送受信部２２４は、プリンタ２３０に設定コマンド１３０２を送信する（Ｓ１２１３）。そしてコマンド送受信部２２４は、ＯＳ２０２にプリンタ２３０へのコマンド送信処理が成功したことを通知する（Ｓ１２１４）。
【００７７】
［ステータス判定処理］
図１４は、ステータス情報判定部２２５がデータ生成情報によりステータスを判定する処理を示すフローチャートである。本実施形態では、ＣＰＵ１２が記憶部であるＲＯＭ１３等に格納されたプログラムを実行することにより実現される。データ生成情報によりステータスを判定する処理は、第一実施形態において説明した図７のＳ７０９から実行される。
【００７８】
ステータス情報判定部２２５は処理を開始すると、Ｓ１２１２にて外部記憶装置１５に保存された識別子を参照し、コマンド送受信部２２４が印字コマンド１３０３を受信したかどうかを判定する（Ｓ１４０１）。印字コマンド１３０３を受信済みであると判定された場合（Ｓ１４０１にてＮＯ）、ステータス情報判定部２２５はプリンタ２３０および印刷コマンド生成部２２２が正常ステータスであると決定する（Ｓ１４０７）。そして、本処理を終了する。
【００７９】
印字コマンド１３０３をまだ受信していないと判定された場合（Ｓ１４０１にてＹＥＳ）、ステータス情報判定部２２５は、Ｓ７０４にて取得したデータ生成情報を参照する（Ｓ１４０３）。そして、ステータス情報判定部２２５は、取得したデータ生成情報がデータ生成に時間がかかる旨を示しているかを判定する（Ｓ１４０３）。データ生成情報がＳＤＧコマンドを示している場合（Ｓ１４０３にてＹＥＳ）、ステータス情報判定部２２５は印刷コマンド生成に時間がかかるステータスが発生していると決定する（Ｓ１４０４）。Ｓ１４０５で印刷コマンド生成に時間がかかるステータスと決定された場合には、印刷コマンド生成に時間がかかるということが明確にユーザに理解されるようなステータスを表示（例えば、図９（ａ）に示すステータス情報表示画面９１０）する。
【００８０】
取得したデータ生成情報がＳＤＧコマンドを示していない場合（Ｓ１４０３にてＮＯ）、ステータス情報判定部２２５はＳ１１０３およびＳ１１０５によって外部記憶装置１５に保存された識別子を参照する。そして、ステータス情報判定部２２５はコマンド送受信部２２４がプリンタ２３０との接続を確立したかどうかを判定する（Ｓ１４０５）。コマンド送受信部２２４とプリンタ２３０とが接続を確立している場合（Ｓ１４０５にてＹＥＳ）、ステータス情報判定部２２５は印刷コマンド生成部２２２が印刷コマンド２２３を生成中であると決定する（Ｓ１４０６）。Ｓ１４０６で印刷コマンドを滞りなく生成できる見込みであると決定された場合、印刷コマンドを生成中であるということがユーザに理解されるようなステータスを表示（例えば図９（ｃ）に示すステータス情報表示画面９３０）する。
【００８１】
コマンド送受信部２２４とプリンタ２３０が接続を確立していない場合（Ｓ１４０５にてＮＯ）、ステータス情報判定部２２５はプリンタ２３０および印刷コマンド生成部２２２が正常ステータスであると決定する（Ｓ１４０７）。
【００８２】
以上の処理によって、ステータス情報表示部２２６は印刷コマンドの生成処理が遅延するか否かを区別して通知することが可能となる。また、印刷処理開始後直ちに、ＳＤＧコマンドが生成されていない段階でも、Ｓ１１０３およびＳ１２１２で保存する識別子を組み合わせて判定することで（Ｓ１４０１およびＳ１４０５）、印刷コマンドを生成中である旨をユーザに通知することが可能となる。
【００８３】
本実施形態により、ユーザは、プリンタドライバ２２０内部の処理が滞りなく完了できる見込みなのか、あるいは通常よりも時間がかかる見込みなのかを見分けることができる。
【００８４】
なお、本実施形態では、印刷コマンド生成に時間がかかる場合、ＳＤＧコマンドを作成して、データ生成情報に保存し、それをステータス情報判定部２２５が確認する方法をとった。しかし、実装上このような判定手段を搭載するだけのリソースを備えていないこともありうる。そのようなケースにおいて例えば、本実施形態で述べた識別子を保存し（Ｓ１１０３およびＳ１２１２）、保存の判定のみ（Ｓ１４０１およびＳ１４０５）行う。この場合、印刷コマンド生成中の表示がなされたあと、公知の方法において、プリンタへの印刷コマンド送信が成功した後は表示を「印刷中」に変更するといった方法であっても、一定の効果を有することは言うまでもない。
【００８５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005654883.tif 000002
【図２】
0005654883.tif 000003
【図３】
0005654883.tif 000004
【図４】
0005654883.tif 000005
【図５】
0005654883.tif 000006
【図６】
0005654883.tif 000007
【図７】
0005654883.tif 000008
【図８】
0005654883.tif 000009
【図９】
0005654883.tif 000010
【図１０】
0005654883.tif 000011
【図１１】
0005654883.tif 000012
【図１２】
0005654883.tif 000013
【図１３】
0005654883.tif 000014
【図１４】
0005654883.tif 000015