(57)【要約】【課題】  シングルタスク／シングルスレッドＯＳのホスト装置を用いる場合でも、印刷動作に大きな影響を与えることなく、個々の印刷文書の特性に応じてワーニングエラー検出態様を自動的に切り替えられるようにする。【解決手段】  プリンタ２とホスト機器１から成る印刷システムにおいて、ホスト機器１上のアプリケーションの指令に応じてプリンタ２による印刷動作を制御するプリンタドライバが、印刷ジョブに関する特性情報に応じて、プリンタ２のエラーまたはワーニングの検出態様を決定する。印刷ジョブに関する特性情報は印刷データのヘッダ内に格納してアプリケーションからプリンタドライバに転送する。プリンタドライバは印刷ジョブに関する特性情報に応じて定められた（またカスタマイズ可能な）ポイント数値を所定の演算式に適用した結果に応じてプリンタ２のエラーまたはワーニングの検出態様を決定する。【選択図】  図１
2006215844.tif 000002
【特許請求の範囲】
【請求項１】
プリンタとホスト機器から成る印刷システムの制御方法において、
前記ホスト機器上の印刷アプリケーションの指令に応じて前記プリンタによる印刷動作を制御するプリンタドライバが、印刷データないし印刷態様に関する特性情報に応じて、前記プリンタで発生するエラーまたはワーニングの検出態様を決定することを特徴とする印刷システムの制御方法。
【請求項２】
請求項１に記載の印刷システムの制御方法において、前記印刷アプリケーションは、前記印刷データないし印刷態様に関する特性情報を印刷データのヘッダ内に格納して前記プリンタドライバに転送することを特徴とする印刷システムの制御方法。
【請求項３】
請求項１に記載の印刷システムの制御方法において、前記プリンタドライバは、前記印刷データないし印刷態様に関する特性情報に応じて定められたポイント数値を所定の演算式に適用することにより得られる数値に応じて前記プリンタで発生するエラーまたはワーニングの検出態様を決定することを特徴とする印刷システムの制御方法。
【請求項４】
請求項３に記載の印刷システムの制御方法において、前記プリンタドライバに対して、前記印刷データないし印刷態様に関する特性情報に応じたポイント数値、および前記演算式を指定する所定形式のデータを転送することにより、該ポイント数値、および演算式を変更可能であることを特徴とする印刷システムの制御方法。
【請求項５】
プリンタとホスト機器から成り、請求項１〜４のいずれか１項に記載の印刷システムの制御方法を実施することを特徴とする印刷システム。
【請求項６】
請求項１〜４のいずれか１項に記載の印刷システムの制御方法を実施すべく、前記ホスト機器において前記プリンタドライバとして動作することを特徴とする印刷システムの制御プログラム。
【請求項７】
請求項１〜４のいずれか１項に記載の印刷システムの制御方法を実施すべく、前記ホスト機器において前記印刷アプリケーションとして動作することを特徴とする印刷システムの制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタとホスト機器から成る印刷システムの制御方法、印刷システム、および印刷システムの制御プログラムに関するものである。
【背景技術】
【０００２】
従来より、プリンタとホスト装置から構成される印刷システムにおいて、ホスト装置がプリンタインターフェースやネットワーク経由でプリンタのステータス情報、特にワーニング情報やエラー情報を取得できるようにしたシステムが知られている。
【０００３】
一般に、ワーニング（ｗａｒｎｉｎｇ）は、プリンタの印刷動作にとってそれほど致命的ではない、たとえばトナーや用紙残量僅少などのような障害に関する通知（警告）、また、エラー（ｅｒｒｏｒ）は印刷動作にとって致命的な、たとえば用紙切れのような障害に関する通知に関して用いられる用語であるが、以下では両者を特に区別する必要がない場合、これら２つの総称として「ワーニングエラー」との語を用いる。
【０００４】
こうしたワーニングエラーの通知処理の態様をカスタマイズ可能とする構成も種々提案されており、たとえば、ワーニングエラーの種別に応じて通知するか否かを決定する技術（たとえば下記の特許文献１）や、ホストが有しているジョブ数あるいはジョブの合計サイズに応じてワーニングエラーの通知を行なうか否かを決定する技術（たとえば下記の特許文献２）などが知られている。
【特許文献１】特開平１１−２０２７７号公報
【特許文献２】特開２０００−１０７４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
一方、プリンタを用いて印刷を行なわせるホスト装置として、ＰＣ（パーソナルコンピュータ）が広く用いられているが、昨今のＰＣはマルチタスクまたはマルチスレッド化されたＯＳを使用していることが多く、これらのＰＣはプリンタドライバと、プリンタの動作を監視するステータスモニタの各々のプログラムを別スレッド（あるいは別プロセス）で動作させることができる。このようなマルチタスクまたはマルチスレッド化されたソフトウェア環境では、印刷動作に支障を与えることなくワーニングエラー検出を行なうことができる。
【０００６】
ところが、印刷装置のホスト装置としてはこのようなマルチタスクまたはマルチスレッド化されたソフトウェア環境を有していない、すなわちシングルタスク／シングルスレッドＯＳ環境しか有さないＮｏｎ−ＰＣシステム、たとえば、ＳＴＢ（セットトップボックス）、ＷＥＢ端末、ＰＤＡ、やデジタルカメラや携帯電話端末などが存在する。このようなシングルタスク／シングルスレッドＯＳ環境では、いったんプリンタの動作を監視するステータスモニタのようなソフトウェアを起動するとその動作が終了するまでは別のタスク／スレッドが動作できず、したがって、本来の印刷動作などが遅延する問題が生じるから、この種のホスト装置でワーニングエラーの検出表示を行なうのは非現実的な場合が多く、またワーニングエラーの検出表示を行なえないようにしているものも多い。
【０００７】
シングルタスク／シングルスレッドＯＳ環境でワーニングエラーの検出表示を行なうことは必ずしも不可能ではないが、従来技術ではワーニング検出レベルや検出頻度が全ての印刷ジョブに対して固定的であり、印刷ジョブの特性、特にその印刷データないし印刷態様に関する特性によっては必要以上にワーニングエラーを検出してしまったり、逆に充分なプリンタ監視を行なえる程度のワーニングエラー検出頻度を行なえない場合が生じてしまう。
【０００８】
本発明の課題は、上記の問題を解決し、シングルタスク／シングルスレッドのソフトウェア環境を有するホスト装置を用いる場合でも、印刷動作への影響を最低限に押さえながら、個々の印刷文書の特性に応じてワーニングエラーの検出態様を自動的に切り替えられるようにすることにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明においては、プリンタとホスト機器から成る印刷システムの制御方法、印刷システム、および印刷システムの制御プログラムにおいて、前記ホスト機器上の印刷アプリケーションの指令に応じて前記プリンタによる印刷動作を制御するプリンタドライバが、印刷データないし印刷態様に関する特性情報に応じて、前記プリンタで発生するエラーまたはワーニングの検出態様を決定する構成を採用した。
【００１０】
あるいはさらに、前記印刷アプリケーションが前記印刷データないし印刷態様に関する特性情報を印刷データのヘッダ内に格納して前記プリンタドライバに転送する構成を採用した。
【００１１】
あるいはさらに、前記プリンタドライバが、前記印刷データないし印刷態様に関する特性情報に応じて定められたポイント数値を所定の演算式に適用することにより得られる数値に応じて前記プリンタで発生するエラーまたはワーニングの検出態様を決定する構成を採用した。
【００１２】
あるいはさらに、前記プリンタドライバに対して、前記印刷データないし印刷態様に関する特性情報に応じたポイント数値、および前記演算式を指定する所定形式のデータを転送することにより、該ポイント数値、および演算式を変更可能である構成を採用した。
【発明の効果】
【００１３】
上記のように、ホスト機器上の印刷アプリケーションの指令に応じてプリンタによる印刷動作を制御するプリンタドライバが、印刷データないし印刷態様に関する特性情報に応じて、プリンタで発生するエラーまたはワーニングの検出態様を決定する構成によれば、シングルタスク／シングルスレッドのソフトウェア環境を有するホスト装置を用いる場合でも、印刷動作を遅延させるような問題を最低限に押さえながら、個々の印刷文書の特性、特に印刷データないし印刷態様に関する特性情報に応じてワーニングエラーの検出態様を自動的に切り替えることができる、という優れた効果がある。
【００１４】
また、印刷データないし印刷態様に関する特性情報は印刷データのヘッダ内に格納して印刷アプリケーションからプリンタドライバに容易に転送することができる。
【００１５】
また、プリンタドライバが、印刷データないし印刷態様に関する特性情報に応じて定められたポイント数値を所定の演算式に適用することにより得られる数値に応じてプリンタで発生するエラーまたはワーニングの検出態様を決定する構成によれば、客観的な演算処理により適切にエラーまたはワーニングの検出態様を決定することができる。
【００１６】
また、プリンタドライバに対して、印刷データないし印刷態様に関する特性情報に応じたポイント数値、および前記演算式を指定する所定形式のデータを転送することにより、該ポイント数値、および演算式を変更できるよう構成すれば、ユーザはエラーまたはワーニングの検出態様を印刷システムの使用環境に適したものとなるよう、様々にカスタマイズすることができる。
【発明を実施するための最良の形態】
【００１７】
以下では、シングルタスク／シングルスレッドＯＳを用いるホスト機器とプリンタからなる印刷システムにおける実施例を示す。
【実施例１】
【００１８】
以下、図面を参照して本発明を詳細に説明する。図１は、本発明のワーニングエラー対応プリンタドライバを適用可能な、シングルタスク／シングルスレッドＯＳを用いるホスト機器とプリンタからなる印刷システムの構成を示している。
【００１９】
図１において符号１は、ＳＴＢ（セットトップボックス）、ＷＥＢ端末、ＰＤＡ、やデジタルカメラや携帯電話端末などのＮｏｎ−ＰＣホスト機器である。Ｎｏｎ−ＰＣホスト機器１では、シングルタスク／シングルスレッドＯＳを稼働させている。
【００２０】
符号２は、出力機器としてのプリンタであり、Ｎｏｎ−ＰＣホスト機器（以下単にホスト機器とも記す）１およびプリンタ２は通信ケーブル３により接続される。通信ケーブル３のインターフェースにはパラレルインターフェースやＵＳＢなどが用いられる。
【００２１】
図１のシステムは、パーソナルコンピュータとプリンタからなるシステムと、パフォーマンスやＯＳの種類が異なること以外は基本的に違いはない。
【００２２】
図２−１は図１のＮｏｎ−ＰＣホスト機器１の内部構造を、図２−２は図１のプリンタ２の内部構造をそれぞれ示している。
【００２３】
図２−１のＮｏｎ−ＰＣホスト機器において、符号２１はマイクロプロセッサなどからなるＣＰＵであり、このＣＰＵ２１によってＲＯＭ２２、あるいはＲＡＭ２３に格納される制御プログラムまたはアプリケーションプログラム、プリンタドライバなどが実行される。このとき、ＲＡＭ２３はＣＰＵ２１の演算、論理判断における各種データを一時的に記憶するワークメモリとして用いられる。
【００２４】
ハードディスク２４は大容量の記憶装置であり、ハードディスクコントローラ２５を経由してＲＯＭ２２の制御プログラムに基づきハードディスク２４に対する入出力処理が行なわれる。ハードディスク２４内には、複数機種に対応したプリンタドライバ、ワーニングポイント値テーブル、演算方法データが格納されており、印刷の際に必要に応じてＲＡＭ２３上に読み込まれて使用される。また、ハードディスク２４はホスト機器１から更新されたテーブル、データを保存するために使用される。
【００２５】
なお、ホスト機器１のＯＳは上記のようにシングルタスク／シングルスレッドのものであり、たとえば、プリンタドライバはホスト機器１のＯＳの一部として組み込まれており、同ＯＳ上で動作し印刷を行なう印刷アプリケーションとはシステムコールなどのアプリケーションインターフェースを介して通信する。
【００２６】
キーボード２６はＮｏｎ−ＰＣホスト機器１に対して、操作者の指示を伝えるための入力インターフェース機器であり、キーボードコントローラ２７を経由して制御プログラムに入力情報が伝えられる。キーボード２６は基本的にはＪＩＳ規格の鍵盤配列を有し、かなキーによるひらがな入力、かなキーを兼ねる英字キーによる英字入力、かな漢字変換機能による漢字入力や、また機能キーを有し、印刷などの機能開始指示などを実行することができる。
【００２７】
表示装置２８は、表示コントローラ２９で駆動制御されて指定された位置に指定された文字や図形、イメージなどを表示するための出力装置であり、ＬＣＤやＣＲＴなどが使用される。
【００２８】
通信Ｉ／Ｆ３０は、パラレルあるいはＵＳＢなどでプリンタ２と通信を行なうためのインターフェースであり、通信コントローラ３１により駆動制御され、内部バス（ＢＵＳ）３２を経由して、ＣＰＵ２１を介してＲＯＭ２２内の制御プログラムにより、外部のプリンタ２と通信されるものである。
【００２９】
図２−２のプリンタ２において、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４４、通信Ｉ／Ｆ４７、通信コントローラ４８、内部バス（ＢＵＳ）５１については、Ｎｏｎ−ＰＣホスト機器で説明した内容と同様であるので、ここでは説明を省略する。
【００３０】
図２−２において、Ｆｌｕｓｈ  ＲＯＭ４３は、プログラムやデータをＲｅａｄ、ＷｒｉｔｅおよびＤｅｌｅｔｅすることの可能なフラッシュＲＯＭであり、電源を切ってもＲＡＭのように情報が消失されることはない。プリンタ２ではＮｏｎ−ＰＣホスト機器１のように大容量記憶装置としてハードディスクを持つことは製品仕様上、現実的ではないので、ある程度のプログラムやデータをこのＦｌｕｓｈ  ＲＯＭ内に格納して利用し、また、不要になったタイミングで削除するといった処理が行なわれる。印字装置４５は装着された用紙に対して、装置内のヘッド、インクを使用して記録出力する。印字装置４５の記録方式には公知の任意の記録方式を利用できる。
【００３１】
上記の印刷システムにおいて、Ｎｏｎ−ＰＣホスト機器１からの印刷処理は、ホスト機器１のプリンタドライバを経由して、通信Ｉ／Ｆ４７を介して受信した印刷データを、ＣＰＵ４１がＲＯＭ４２内あるいはＦｌｕｓｈ  ＲＯＭ４３内の制御プログラムに応じて印字コントローラ４６を駆動制御することにより、印字装置４５内のインクヘッドを動作させ、用紙に対してインクヘッド内のインクを噴射することを繰り返すことにより行われる。
【００３２】
図３は、Ｎｏｎ−ＰＣホスト機器１上で、印刷アプリケーションからプリンタドライバに転送される印刷データのフォーマットを示したものである。
【００３３】
図３に示すように、本システムの印刷アプリケーションからプリンタドライバに転送される印刷データは、ヘッダ３０１および印刷データ３０２（の本体部分）から構成されている。
【００３４】
このうち印刷データ３０２は、通常の印刷システムと同様に、アプリケーションプログラムにより生成されるラスタライズデータ、またはＰＤＬなどにより記述されたデータである。ラスタライズデータの場合は、印刷アプリケーションが色処理、量子化処理、コマンド生成処理を行なうことにより生成される。印刷データがＰＤＬなどの形式の場合は、プリンタドライバがこれらの処理を行なってラスタライズデータを生成する。
【００３５】
本実施例では、印刷アプリケーションが印刷データ３０２に対して、ワーニングエラーのレベルを決定するための要素となるヘッダ３０１を追加して、プリンタドライバに転送する点に特徴がある。
【００３６】
このように、印刷すべきデータないし印刷態様に関する特性情報を印刷データのヘッダ内に格納してプリンタドライバに転送することにより、これらの情報を印刷アプリケーションからプリンタドライバに容易に転送することができる。
【００３７】
ヘッダ３０１は、ヘッダ開始タグ３１１とヘッダ終了タグ３１５でヘッダボディが狭まれた形で構成されており、ヘッダ情報３０１のボディ部分は、印刷文書のコンテンツ種別３１２、印刷メディア種別３１３、印刷枚数３１４の３つの要素で構成されている。なお、このようなタグ記述子を用いるデータフォーマットとしてはＸＭＬやＨＴＭＬ、ＳＧＭＬなどがあるがヘッダ情報３０１はこのようなデータフォーマットにより記述することとしてもよい。
【００３８】
図４は図３のヘッダ３０１の各要素の詳細を示している。コンテンツ種別３１２およびメディア種別３１３の部分は、数字によるコードによって内容が表現されるものとする。
【００３９】
たとえば、図４に示すように、コンテンツ種別３１２には０：テキスト、１：イメージ、２：表、３：プレゼンデータのように定義されたコンテンツ種別番号を印刷文書に応じて格納する。
【００４０】
また、メディア種別３１３としては、０：普通紙、１：高品位専用紙、２：プロフォト専用紙、３：官製ハガキのように定義されたメディア種別番号が印刷文書に応じて格納される。また印刷枚数３１４としては今回印刷する文書の総ページ数を数値情報として格納する。
【００４１】
一方、図５は、ホスト機器１のプリンタドライバに記憶される各種情報のポイント値、演算方法、ワーニングエラーレベル決定テーブルの構成を示している。プリンタドライバは、これらの情報に基づき、図３のフォーマットにより受信した印刷データの印刷制御、特に、ワーニングエラーレベルを決定し、ワーニングエラーの報知を制御する処理を行なう。図５のデータ領域はプリンタドライバが用いるＲＡＭ２３上の領域に適宜確保される。
【００４２】
図５のテーブルデータとしては、第１に、アプリケーションから送られるヘッダ情報の各種要素に対するポイント値（５０１〜５０３）が格納されている。図５の例では、コンテンツ種別がテキストであれば５０ポイント、イメージであれば１００ポイントのように最高ポイントを１００として、重要度の高いコンテンツほど、高いポイントが格納されるように構成されている。メディア種別、および印刷枚数、の各属性についても同様にポイントが定められている。
【００４３】
なお、この例では、後述のようにワーニングポイント＝コンテンツ種別ポイント値×メディア種別コンテンツポイント数×印刷枚数ポイント数のように乗算演算によりワーニングポイントを求めるようにしているため、図５ではメディア種別、および印刷枚数については０〜１の範囲内のポイント数が定義されている。
【００４４】
また、図５のテーブルデータとしては、第２に、演算方法としてワーニングポイント＝コンテンツ種別ポイント値×メディア種別コンテンツポイント数×印刷枚数ポイント数の演算方法が格納（５０４）されている。
【００４５】
さらに、図５のテーブルデータとしては、ワーニングエラーレベル決定テーブルとして、上記の演算方法により算出されたワーニングポイントの各範囲に与えるべきワーニングレベルの定義情報が格納（５０５）されている。これらワーニングレベルＡ、Ｂ、Ｃ、およびＺにより最終的なワーニングエラー検出レベルが決定される。
【００４６】
図５の例では、ワーニングポイントが４０以下であれば、一番検出レベルの低いＣ、ポイント４０〜７０であれば中間レベルのＢ、ポイント７０以上であれば、最も検出レベルの高いＡが設定されるようになっている。なお、この例では算出されたワーニングポイントが０の場合はワーニングエラーの検出を全く行なわないレベルＺが設定される。
【００４７】
本実施例では、以上のように印刷データないし印刷態様に関する特性情報に応じて定められたポイント数値を所定の演算式に適用することにより得られる数値に応じてプリンタで発生するエラーまたはワーニングの検出態様を決定するが、このような客観的な演算処理を行なうことにより適切にエラーまたはワーニングの検出態様を決定することができる。
【００４８】
なお、上記のポイント数の定義や演算方法、ワーニングレベルの定義は、ホスト機器１の印刷アプリケーションが図６のような更新情報をプリンタドライバに転送することにより変更（カスタマイズ）することができる。
【００４９】
図６は、ホスト機器１の印刷アプリケーションからプリンタドライバに転送される、ポイント値、演算方法、ワーニングエラーレベル決定テーブルを更新するためのデータフォーマットを説明している。
【００５０】
図６のテーブル更新データのフォーマットは、各要素を図３のヘッダの場合と同様に開始／終了タグで狭んで記述する構成をとっている。
【００５１】
図示のように、テーブル更新データは、開始タグ６０１で始まり、終了タグ６０２で終る。テーブル更新データとしては、コンテンツ種別の各ポイント値６１３〜６１６、メディア種別の各ポイント値６２４〜６２６、印刷開始枚数に対するポイント値６３３〜６３５、がそれぞれの属性の開始／終了タグ６１１、６１２、６２１、６２２、６３１、６３２に狭まれて記述され、続いて演算方法に関する指定情報６４１が格納されている。
【００５２】
ユーザはホスト機器１の印刷アプリケーション、あるいは専用のソフトウェアを用い、図６のフォーマットで記述された変更情報をプリンタドライバに転送することにより、プリンタドライバ側のポイント値、演算方法、ワーニングエラーレベル決定テーブル（図５）の内容を更新することができる。
【００５３】
次に上記構成における動作につき図７〜図１０を参照して説明する。
【００５４】
図７は、ホスト機器１の印刷アプリケーションの処理の流れを示している。ホスト機器１の印刷アプリケーションで、文書、画像、図形などが作成され、キーボード２６などを用いて印刷操作が行われると、この図７の処理が行なわれる。
【００５５】
まず、ステップＳ０１で表示装置２８およびキーボード２６などを用いた所定のユーザーインターフェースを介してユーザが印刷ファイル属性によりコンテンツ種別、印刷操作で通知された印刷対象メディア種別、印刷文書の書式情報などを参照して印刷文書枚数を決定すると、これに応じて図３に示したフォーマットの印刷データヘッダ情報を組み立てる。
【００５６】
続いて、ステップＳ０２で、図３のヘッダ情報に続けてプリンタドライバに転送する印刷データをレンダリング／ラスタライズなどの所定の処理により生成する。
【００５７】
最後に、ステップＳ０３において、ステップＳ０１、ステップＳ０２で生成して組み立てた図３の形式による最終印刷データを、同じホスト機器１上で動作するプリンタドライバに転送し、処理を終了する。実際の印刷およびワーニングエラーの検出表示処理は、システムコールなどを経由して印刷データを受信したプリンタドライバとプリンタ２との通信処理により行われることとなる。
【００５８】
図８はプリンタドライバのメイン処理を示している。
【００５９】
プリンタドライバは、システムコールなどを経てアプリケーションからデータが送られてくるまでは、ステップＳ１１のデータ受信待ち状態となっており、データ受信があるとステップＳ１２の受信データ解析処理が行われる。
【００６０】
ステップＳ１２で受信データが図３に示したような印刷データであると判断された場合は、ステップＳ１４のヘッダ解析処理が行われ、図３および図４で説明したアプリケーションから送られてきたヘッダ情報と、図５で説明したプリンタドライバ内に抱える各種情報のポイント値、演算方法、ワーニングエラーレベル決定テーブルにしたがって、最終的なワーニング処理レベルの決定処理が行われ、内部変数にレベル値を格納した上で、ステップＳ１５において、後述のドライバ本処理を実行し、ドライバ本処理からリターン後は再びステップＳ１１の印刷データ受信待ち状態となる。
【００６１】
一方、ステップＳ１２で、受信データが図６に示したようなテーブル更新データである場合には、ステップＳ１３で図５のようなフォーマットで格納されているプリンタドライバ内のテーブルデータを更新する。
【００６２】
図９は、プリンタドライバ側メイン処理から起動されるドライバ本処理（上記のステップＳ１５）を示している。最初に、この印刷処理の概要を説明する。
【００６３】
まず、第１にプリンタ側に対する初期化、初期設定（ステップＳ２１）を行なうが、ここでは初期化処理の中でプリンタ側でワーニングエラーの検出を行なうか行なわないかの設定を本関数を呼ぶ前に決定（ステップＳ１４）したワーニング検出レベルの結果に基づいて行なう。
【００６４】
その後、ジョブ開始処理（ステップＳ２２、Ｓ２３）、ページ開始処理（ステップＳ２４、Ｓ２５）に引き続き、バンド描画処理（ステップＳ２６、Ｓ２７）がページ全体を処理するだけ実行され、ページ終了処理（ステップＳ２８）、ジョブ終了処理（ステップＳ２９）を行って、要求された印刷が完了する。
【００６５】
複数ページがある場合は、ページ開始処理からページ終了処理までが繰り返されることとなる。実際にプリンタに送信するデータへの変換、たとえば最終的な色処理、色変換、量子化、コマンド生成付加処理などはバンド描画処理の中で行われ、最終的な印刷データが、通信Ｉ／Ｆを経由してプリンタ２に対して送信され、これにより印刷が行なわれる。
【００６６】
プリンタエラー検出は、通信Ｉ／Ｆを経由する送信処理などを経由してプリンタ２からエラーが返された場合に行なうが、ワーニングについては、送信処理からエラーが返されないために、プリンタドライバ側より積極的にプリンタのステータスを取り込むことを行わなければならない。シングルタスク／シングルスレッドＯＳにおいて高い頻度でこの取り込み処理を行なうと、印刷動作自体を遅延させる要因になるが、本実施例のワーニングエラー対応プリンタドライバでは印刷ジョブの特性、特にその印刷データないし印刷態様に関する特性に応じてワーニング検出レベルを定めるようにしているので、このような問題を低減することができる。
【００６７】
図９のプリンタドライバ側印刷本処理では、まずステップＳ２１において上記のプリンタへの初期化処理を行い、プリンタ本体でワーニングエラーを検出する／しないの設定を行なう。ここではワーニング検出レベルＺの場合は、ワーニングエラーを検出しない設定を行なう。
【００６８】
他のワーニング検出レベルでは、設定値に応じたワーニングエラー検出処理を行なうよう設定を行なう。すなわち、ステップＳ２２でワーニング検出レベルを判断し、ワーニング検出レベルＣ、Ｂ、Ａの場合は、ジョブ開始時ワーニング検出フラグがＯＮであると判断し、ステップＳ２３で示すようにプリンタからワーニング情報の有無、種別を取得して、表示装置２８の画面上に表示する処理が行われる。ステップＳ２２でジョブ開始時ワーニング検出フラグがＯＦＦであると判断された場合は、ステップＳ２３の処理はスキップされる。
【００６９】
続いて、ページ開始処理が実行され、まずステップＳ２４で、ワーニング検出レベルを判断し、レベルＢ、Ａの場合は、ページ開始時ワーニング検出フラグがＯＮであると判断し、ステップＳ２５で示すようにプリンタからワーニング情報の有無、種別を取得して、表示装置２８の画面上に表示する処理が行われる。ステップＳ２４でジョブ開始時ワーニング検出フラグがＯＦＦであると判断された場合は、ステップＳ２５の処理はスキップされる。
【００７０】
ページ開始処理が完了すると、ステップＳ２６からステップＳ２７のバンド描画処理が、ページを完了するまで繰り返される。バンド描画処理では、まずステップＳ２６で、ワーニング検出レベルを判断し、レベルＡの場合は、バンド描画開始時ワーニング検出フラグがＯＮであると判断し、ステップＳ２７で示すようにプリンタからワーニング情報の有無、種別を取得して、表示装置２８の画面上に表示する処理が行われる。ステップＳ２６でジョブ開始時ワーニング検出フラグがＯＦＦであると判断された場合は、ステップＳ２７の処理はスキップされる。
【００７１】
ページ分のバンド描画処理が完了すれば、ステップＳ２８のページ終了処理を実行し、後続の印刷ページがある場合は、ステップＳ２４のページ開始処理へと制御を振り戻し、後続の印刷ページがない場合は、ステップＳ２９のジョブ終了処理を行って、プリンタドライバ本処理を終了してリターンする。
【００７２】
図９のような処理を行なうことにより、印刷データにヘッダとして付与された印刷ジョブの特性、特に印刷データないし印刷態様に関する特性情報に応じて決定されたレベルで、ワーニングエラー検出を行なうことができる。図９では、ジョブ開始処理においてはワーニング検出レベルＣ、Ｂ、Ａが設定されている場合のみ、ページ開始処理においてはワーニング検出レベルＢ、Ａが設定されている場合のみ、バンド描画処理においてはワーニング検出レベルＡが設定されている場合のみ、ワーニングエラー検出が行なわれるよう、制御され、このようにしてワーニングエラー検出のレベル、いいかえればワーニングエラー通知の冗長度が決定される。
【００７３】
特に、図９では、ジョブ開始処理−＞ページ描画処理−＞バンド描画処理−＞の順でワーニングエラー検出を行なうのに必要な設定レベルが高くなっており、これにより、たとえば最も高レベルなワーニングエラー検出レベルＡではジョブ開始処理、ページ描画処理、バンド描画処理の全てでプリンタに発生したワーニング／エラーが通知される。また、次に高レベルなワーニングエラー検出レベルＢではジョブ開始処理、ページ描画処理でプリンタに発生したワーニング／エラーが通知される。また、ワーニングエラー検出レベルＣではジョブ開始処理でプリンタに発生したワーニング／エラーが通知される。
【００７４】
以上のようにして、本実施例によれば、印刷ジョブの特性、特にその印刷データないし印刷態様に関する特性に応じてワーニング検出レベルを定めるようにしているので、シングルタスク／シングルスレッドＯＳにおいて高い頻度でプリンタ取り込み処理を行なうことにより印刷動作自体を遅延させる問題を低減することができる。
【００７５】
図１０は、ホスト機器１のアプリケーションからプリンタドライバに対して、図６のテーブル更新データを送信し、プリンタドライバ内に記憶される各種情報のポイント値、演算方法、ワーニングエラーレベル決定テーブルを更新する処理を示している。
【００７６】
ここでは、まずステップＳ３１で図６の更新フォーマットに基づいて変更するワーニングレベル分けテーブルを対話形式、あるいはダイアログ入力形式などの適当なユーザーインターフェースを介して作成し、入力情報をＲＡＭ２３のワークエリア内で図６のフォーマットに組み立て、続いて、ステップＳ３２で組み立てたテーブル更新データをプリンタドライバに転送する。転送されたテーブル更新データは、上記のように図８のステップＳ１３で処理され、図５のようなフォーマットでプリンタドライバの制御データテーブルとして格納される。
【００７７】
以上のようにして、プリンタドライバに対して、テーブル更新データを送信して印刷データないし印刷態様に関する特性情報に応じたポイント数値、および演算式を指定することにより、プリンタドライバのテーブル内のポイント数値、および演算式を変更することができ、これによりユーザはエラーまたはワーニングの検出態様を自己のシステム環境に適したものにカスタマイズすることができる。
【産業上の利用可能性】
【００７８】
本発明はプリンタとホスト機器から成る種々の印刷システムに適用することができる。本発明の制御プログラムは種々の外部記憶媒体（ＣＤＲＯＭ、フレキシブルディスクなど）などからホスト装置に供給することができ、あるいは任意のサーバから直接、ネットワーク経由でこれらの機器に供給することができる。
【図面の簡単な説明】
【００７９】
【図１】本発明を採用した印刷システムの全体構成を示した説明図である。
【図２−１】図１のホスト機器の構成を示したブロック図である。
【図２−２】図１のプリンタの構成を示したブロック図である。
【図３】印刷データのフォーマットを示した説明図である。
【図４】印刷データのヘッダ部のフォーマットを示した説明図である。
【図５】ホスト機器のプリンタドライバが用いるテーブルデータの構成を示した説明図である。
【図６】テーブル更新データの構成を示した説明図である。
【図７】ホスト機器の印刷アプリケーションの処理手順を示したフローチャート図である。
【図８】ホスト機器のプリンタドライバの処理手順を示したフローチャート図である。
【図９】プリンタドライバの印刷処理手順を示したフローチャート図である。
【図１０】テーブル更新処理の手順を示したフローチャート図である。
【符号の説明】
【００８０】
１  ホスト機器
２  プリンタ
３  通信ケーブル
２１  ＣＰＵ
２２  ＲＯＭ
２３  ＲＡＭ
２４  ハードディスク
２５  ハードディスクコントローラ
２６  キーボード
２７  キーボードコントローラ
２８  表示装置
２９  表示コントローラ
３０  通信Ｉ／Ｆ
３１  通信コントローラ
３２  内部バス（ＢＵＳ）
４１  ＣＰＵ
４２  ＲＯＭ
４３  Ｆｌｕｓｈ  ＲＯＭ
４４  ＲＡＭ
４５  印字装置
４６  印字コントローラ
４７  通信Ｉ／Ｆ
３０１  ヘッダ
３０２  印刷データ
３１１  ヘッダ開始タグ
３１２  コンテンツ種別
３１３  印刷メディア種別
３１４  印刷枚数
３１５  ヘッダ終了タグ
【図１】
2006215844.tif 000003
【図２−１】
2006215844.tif 000004
【図２−２】
2006215844.tif 000005
【図３】
2006215844.tif 000006
【図４】
2006215844.tif 000007
【図５】
2006215844.tif 000008
【図６】
2006215844.tif 000009
【図７】
2006215844.tif 000010
【図８】
2006215844.tif 000011
【図９】
2006215844.tif 000012
【図１０】
2006215844.tif 000013