(57)【要約】【課題】  プリンタ側の印刷ジョブの受信状況に基づいて複数部印刷の印刷ジョブの送信方法を適宜切り替え、印刷保証を実現しつつ、ホストコンピュータ側の印刷処理及び送信処理の解放を早める仕組みを提供する。【解決手段】  印刷ジョブを前記印刷装置に送信後も印刷ジョブをホストコンピュータに保存しておき、印刷装置からの再送要求に応じて印刷ジョブを印刷装置に再送する。【選択図】  図１
2006018741.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置と情報処理装置とを含む印刷システムであって、
前記印刷装置は、
印刷ジョブを保存する記憶手段と、
保存した印刷ジョブを複数部数印刷指示に従って印刷する印刷手段を有する印刷装置において、
印刷ジョブの受信が完了したことを前記情報処理装置に通知する通知手段と、
前記情報処理装置に対して印刷ジョブの再送を要求する再送要求手段とを有し、
前記情報処理装置は、
印刷ジョブを前記印刷装置に送信後も当該印刷ジョブをスプールファイルとして保存するスプール手段と、
前記スプール手段に保存されている印刷ジョブを消去する消去手段と、
前記スプール手段に保存されている印刷ジョブを前記印刷装置に再送する印刷ジョブ再送手段とを有することを特徴とする印刷システム。
【請求項２】
前記通知手段は、印刷すべき印刷ジョブを全て受信完了したことを前記情報処理装置に通知することを特徴とする請求項１記載の印刷システム。
【請求項３】
前記再送要求手段は、印刷ジョブを印刷装置内部の記憶装置に全て記憶できない場合に、印刷ジョブを記憶装置に全て保存できないと判断した時点から印刷完了までの所定のタイミングで、印刷ジョブを再送要求することを特徴とする請求項１または２に記載の印刷システム。
【請求項４】
前記消去手段は、前記印刷装置の通知手段による通知に応じて、前記スプール手段に蓄積した印刷ジョブを消去することを特徴とする請求項１乃至３のいずれかに記載の印刷システム。
【請求項５】
前記印刷ジョブ再送手段は、前記印刷装置の再送要求手段からの要求に応じて、前記スプール手段に蓄積した印刷ジョブを再送すること特徴とする請求項１乃至３のいずれかに記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷ジョブを印刷装置において印刷する印刷システムであって、印刷ジョブの印刷保証を行う技術に関する。
【背景技術】
【０００２】
複数部数印刷が可能な印刷システムは、従来、ホストコンピュータ内のスプーラに一旦蓄積した印刷ジョブを部数分繰り返しプリンタに送信することにより複数部数印刷を行っていた。またハードディスクなどの大容量記憶装置を有するプリンタにおいては、１部分の描画内容と部数指定を行うコマンドからなる印刷ジョブをホストコンピュータから送信するため、ホストコンピュータからプリンタへの印刷ジョブの送信回数を減らし、ホストコンピュータは早く解放することができる。そのようなプリンタでは、受信した印刷ジョブをプリンタ内の大容量記憶装置に蓄積し、蓄積した印刷ジョブを部数分繰り返し読み出し、印刷を行うように構成されていた。
【０００３】
さらにハードディスクのような大容量記憶装置を有さず、ＲＡＭのみから構成されるプリンタにおいても、比較的大きなＲＡＭを搭載したプリンタにおいては、一旦ＲＡＭに格納して複数部数印刷を行うように構成されたものもあった。この場合、ＲＡＭ容量までの印刷ジョブサイズの場合には、１回だけホストコンピュータからプリンタに印刷ジョブを送信すればよく、またＲＡＭからの読み出しは高速であり、高速に複数部数印刷できるという利点があった。
【０００４】
また、ホストコンピュータからプリンタへ対して、印刷ジョブを部数分繰り返し送信するか、印刷ジョブを１度送信し、部数指定して送信するかを動的に切り替えるシステムも存在している。（例えば特許文献１）
【特許文献１】特開平１１−０４８５８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、ホストコンピュータ内のスプーラに印刷ジョブを蓄積する場合、ホストコンピュータからプリンタに印刷したい部数分だけ繰り返し印刷ジョブを転送し、複数部数印刷を行う必要があるため、ホストコンピュータを占有する時間が長くなり、ユーザに対するコンピュータの解放に時間がかかるという欠点があった。また印刷したい部数分だけ繰り返し印刷ジョブを送信する必要があり、印刷に時間を多く要する必要があった。
【０００６】
一方、ハードディスクのような大容量記憶装置を有するプリンタの場合、ハードディスクに一旦印刷ジョブを蓄積し、印刷したい部数分だけ印刷ジョブを読み出し印刷するため、受信した印刷ジョブをＲＡＭ上に置いて、そのＲＡＭから印刷ジョブを読み出し印刷する場合に比べ、ハードディスクから印刷ジョブを読み出して印刷する場合、ＲＡＭからの読み出しに比べて、読み出し時間がかかるという欠点があった。
【０００７】
ＲＡＭのみから構成されるプリンタにおいては、ハードディスクのような大容量記憶装置に比べ、蓄積できる印刷ジョブサイズの限りがあり、ＲＡＭより大きいサイズの印刷ジョブの場合、バーファオーバーランのようなエラーになり、印刷できない場合もあった。このような場合は、アプリケーションソフトで複数部数印刷を指示するなどの工夫を行う必要があった。
【０００８】
また、特許文献１のシステムでは、プリンタのメモリサイズとデータ量に基づいて、複数部指定コマンドを送るか、複数回印刷データを送るかを切り替えているが、常にプリンタに装着されているメモリサイズを条件としており、プリンタで複数の印刷ジョブを連続して受信する場合を考慮していないため、受信状況により適する送信方法が選択できないという問題があった。
【０００９】
そこで本発明は、プリンタ側の印刷ジョブの受信状況に基づいて複数部印刷の印刷ジョブの送信方法を適宜切り替え、印刷保証を実現しつつ、ホストコンピュータ側の印刷処理及び送信処理の解放を早める仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、印刷装置と情報処理装置とを含む印刷システムであって、前記印刷装置は、印刷ジョブを保存する記憶手段と、保存した印刷ジョブを複数部数印刷指示に従って印刷する印刷手段を有する印刷装置において、印刷ジョブの受信が完了したことを前記情報処理装置に通知する通知手段と、前記情報処理装置に対して印刷ジョブの再送を要求する再送要求手段とを有し、前記情報処理装置は、印刷ジョブを前記印刷装置に送信後も当該印刷ジョブをスプールファイルとして保存するスプール手段と、前記スプール手段に保存されている印刷ジョブを消去する消去手段と、前記スプール手段に保存されている印刷ジョブを前記印刷装置に再送する印刷ジョブ再送手段とを有することを特徴とする。
【００１１】
また、前記通知手段は、印刷すべき印刷ジョブを全て受信完了したことを前記情報処理装置に通知する。
【００１２】
また、前記再送要求手段は、印刷ジョブを印刷装置内部の記憶装置に全て記憶できない場合に、印刷ジョブを記憶装置に全て保存できないと判断した時点から印刷完了までの所定のタイミングで、印刷ジョブを再送要求する。
【００１３】
また、前記消去手段は、前記印刷装置の通知手段による通知に応じて、前記スプール手段に蓄積した印刷ジョブを消去する。
【００１４】
また、前記印刷ジョブ再送手段は、前記印刷装置の再送要求手段からの要求に応じて、前記スプール手段に蓄積した印刷ジョブを再送する。
【発明の効果】
【００１５】
印刷ジョブデータのサイズは小さいものから大きいものまであるが、本発明では比較的小容量の記憶容量しか持たない印刷システムであっても、印刷ジョブサイズが小さい場合には、記憶装置に保存した印刷ジョブを繰り返し印刷することにより複数部数印刷を実現し、また記憶装置に保存できない大きいサイズの印刷ジョブの場合には、コンピュータのスプーラから再送してもらうように制御することにより、柔軟性の高い複数部数印刷を実現できる印刷システムおよび方法を実現できるという効果がある。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。
【実施例１】
【００１７】
図１は本発明の特徴も表した印刷システム構成図である。
【００１８】
コンピュータ１０はインターフェイス１６、３１を介して、プリンタ３０と接続されている。インターフェイス１６、３１は、ＵＳＢ１．１、ＵＳＢ２．０、ＩＥＥＥ１３９４、ネットワークなどで構成される。今、アプリケーション１１からプリンタドライバ１２に対して印刷指示を行うと、前記プリンタドライバ１２はアプリケーションからのデータに基づいて描画処理を行い、印刷ジョブを作成し、スプーラ１３に対してスプールファイル１４の作成を指示する。次に前記スプーラ１３は、スプール処理を完了するとと、前記スプールファイル１４を読み出し、送信手段１５およびインターフェイス１６を経由して、プリンタ３０に印刷ジョブを送信する。前記プリンタ３０は、インターフェイス３１を経由して受信した印刷ジョブを受信手段３２で受信し、印刷ジョブ制御手段３３を介して、言語処理手段３５に渡し、印刷イメージの生成を行うと共に、印刷ジョブを印刷ジョブ記憶装置３４に保存する。前記言語処理手段３５によって生成された印刷イメージは描画バッファ３６に格納され、続いてプリントエンジン３７に転送することにより印刷結果を得るように動作する。
【００１９】
また前記印刷ジョブ制御手段３３は、印刷ジョブを全て、印刷ジョブ記憶装置３４に保存できた場合には、印刷ジョブ受信完了通知手段３８により送信手段４０およびインターフェイス３１を介して、コンピュータ１０に印刷ジョブ受信完了通知を送信する。送信された印刷ジョブ受信完了通知は、前記コンピュータ１０のインターフェイス１６および受信手段１７を介して受信され、応答コマンド解析手段３９で解析された結果、スプールファイル削除手段１９により、前記スプーラに対して受信を完了した印刷ジョブに対応するスプールファイルの削除を行う。
【００２０】
また前記印刷ジョブ制御手段３３は、印刷ジョブを全て、印刷ジョブ記憶装置３４に保存できなかった場合には、印刷ジョブ再送要求手段３９により送信手段４０およびインターフェイス３１を介して、コンピュータ１０に印刷ジョブ再送要求を送信する。送信された印刷ジョブ再送要求は、前記コンピュータ１０のインターフェイス１６および受信手段１７を介して受信され、応答コマンド解析手段３９で解析された結果、印刷ジョブ再送手段２０からスプーラ１３への指示に従って、スプーラ１３は再送要求された印刷ジョブに対応するスプールファイル１４を読み出し、送信手段１５およびインターフェイス１６を介して、プインタ３０に送信する。
【００２１】
本実施例では、図１の印刷システム構成図にあるように、複数部数印刷を行う場合に、印刷したい印刷ジョブが全て前記印刷ジョブ記憶装置３４に保存できる場合には、２部目以降の印刷については、前記印刷ジョブ制御手段３３の制御に基づいて、前記印刷ジョブ記憶装置３４から印刷ジョブを読み出し、前記言語処理手段３５により印刷イメージを生成し、前記描画バッファ３６に格納し、プリントエンジン３７に転送することにより２部目以降の印刷出力を得る。この場合、コンピュータ１０側から印刷ジョブを部数分送信してもらう必要がないため、印刷ジョブ受信完了通知手段３８により印刷ジョブ受信完了通知をコンピュータ１０に送信することにより、前記スプールファイル削除手段１９を起動し、前記スプーラ１３に印刷ジョブに対応したスプールファイル１４を削除するように動作する。
【００２２】
一方、印刷ジョブが全て前記印刷ジョブ記憶装置３４に保存できない場合には、２部目以降の印刷を前記印刷ジョブ記憶装置３４に保存された印刷ジョブで行うことができない。このため、コンピュータ１０から印刷ジョブを部数分だけ繰り返して送信してもらう必要がある。従って、前記印刷ジョブ制御手段３３の制御に基づいて、前記印刷ジョブ再送要求手段３９により前記コンピュータ１０に印刷ジョブ再送要求を送信し、これによりコンピュータ１０内の前記印刷ジョブ再送手段２０から前記スプーラ１３に再送指示を行うことで、再送要求の印刷ジョブを前記スプールファイル１４から読み出し、前記プリンタ３０に転送するように動作する。前記コンピュータ１０から送信された印刷ジョブを前記言語処理手段３５で印刷イメージを生成し、前記描画バッファ３６に格納し、前記プリントエンジン３７に転送して印刷を行う。このような制御を部数分繰り返すことによって、複数部数印刷を実現する。
【００２３】
本実施例によれば、プリンタに搭載したメモリで構成される前記印刷ジョブ記憶装置３４に格納されるサイズの印刷ジョブであれば、一度記憶した印刷ジョブを使用して複数部数印字を実現でき、前記印刷ジョブ記憶装置３４に格納できない場合には、前記コンピュータ１０の前記スプールファイル１４に格納された印刷ジョブを繰り返し再送してもらうことにより複数部数印刷を実現できるという柔軟性を有した印刷システムを実現できるという効果がある。
【実施例２】
【００２４】
図２から図９は、第２の実施例を説明するフロー図である。
【００２５】
図２、はコンピュータの印刷フロー図である。ステップＳ１００にて、アプリケーション１１からプリンタドライバ１２に印刷ジョブの生成を依頼し、ステップＳ１０１にて、プリンタドライバ１２は印刷ジョブの生成を行い、スプーラ１３に対してスプールファイル１４の生成を要求する。
【００２６】
図３は、スプーラ処理フロー図であり、ステップＳ１１０にて、スプーラに対する処理の要求解析を行い、ステップＳ１１１にて要求解析結果に従って、各処理に分岐する。今プリンタドライバ１２から印刷ジョブに対応したスプールファイル１４の生成要求がきたため、スプーラ１３はステップＳ１１２にてスプールファイルの作成を行う。スプールファイル１４の作成を完了すると、ステップＳ１１３にてスプールファイル１４を読み出し、プリンタ３０に対応する印刷ジョブを送信する。
【００２７】
図４は、コンピュータの受信処理フロー図である。プリンタ３０から送信されてきた応答コマンドをインターフェイス１６および受信手段１７で受信し、ステップＳ１２０にて応答コマンドの解析を行い、その解析結果に従って、ステップＳ１２１で分岐処理を行う。印刷ジョブの再送要求の場合には、ステップＳ１２２でスプーラに印刷ジョブの再送要求指示を行う。この場合、図３で説明したスプーラ処理フロー図のステップＳ１１３でスプールファイル１１４を読み出し、プリンタ３０に送信することにより再送要求に応答する。またスプールファイルの削除要求の場合には、ステップＳ１２３でスプーラ１３にスプールファイルの削除要求をし、図３のスプール処理フロー図のステップＳ１１４にて、スプールファイル１１４の削除処理を実行する。
【００２８】
図５は、プリンタの受信フロー図である。プリンタ受信タスクは、コンピュータ１０から送信してきた印刷ジョブをインターフェイス３１および受信手段３２にて、ステップＳ１３０でインターフェイスから受信バッファに印刷ジョブを読み込む。次にステップＳ１３１にて、印刷ジョブ制御タスクを起動し、以降の処理を行う。
【００２９】
図６は、印刷ジョブ制御フロー図を示したもので、印刷ジョブ制御タスクは、例えば、図５のプリンタ受信タスクのステップＳ１３１にて起動される。まず起動されると、ステップＳ１４０にて、印刷ジョブの解析が実行される。次にステップＳ１５４にて、再送要求フラグがＯＮかのチェックを行い、ＯＦＦの場合には、ステップＳ１４１に進み、ＯＮの場合には、ステップＳ１４８に進む。今、ＯＦＦであるとすると、ステップＳ１４１にて、解析の結果、印刷する部数が複数部数でない場合、ステップＳ１４８に進む。一方、ステップＳ１４１で複数部数と判定されるとステップＳ１４４に進み、受信した印刷ジョブを印刷ジョブ記憶装置３４に保存する。ここでステップＳ１４５で印刷ジョブ  記憶装置３４がフルかどうかをチェックし、フルでない場合には、ステップＳ１４８に進む。もしフルの場合には、印刷ジョブを全て保存できなかったということで、複数部数印刷を行うためにはコンピュータ１０から印刷ジョブを再送してもらう必要がある。このため、ステップＳ１４６で再送要求フラグをＯＮにし、ステップＳ１４８に進む。ステップＳ１４８では、印刷ジョブはこれで終わりかという判断を行い、もし終わりでない場合には、ステップＳ１５３に進み、図７で説明する言語処理タスクを起動し、言語解析および印刷イメージの生成を行う。またステップＳ１４８で印刷ジョブは終わりであると判定された場合には、ステップＳ１４９で印刷ジョブ終了フラグをＯＮにし、ステップＳ１５０で部数カウンタをデクリメントし、ステップＳ１５３に進み、言語処理タスクを起動する。
【００３０】
図７は、プリンタの言語処理フロー図である。言語処理タスクは、前述したように例えば、図６の印刷ジョブ制御タスクのステップＳ１５３にて起動され、このとき渡される印刷ジョブをステップＳ１６０でコマンド解析し、ステップＳ１６１でコマンド解析結果に基づいて、印刷イメージの生成を行い、描画バッファ３６に印刷イメージを格納し、ステップＳ１６２でエンジン通信タスクを起動し、プリントエンジン３７に印刷データを転送し、印刷出力を行う。
【００３１】
図８は、図７の言語処理タスクのステップＳ１６２で起動されるエンジン通信タスクの処理を説明するプリンタのエンジン通信フロー図である。エンジン通信タスクは、ステップＳ１７０でプリントエンジンに印刷イメージを転送し印刷を行うが、その後、ステップＳ１７１で印刷ジョブ終了フラグがＯＮであるかのチェックを行い、もし終わりでないならば、ステップＳ１７６に進み、次に印刷すべき印刷データを受信するために、プリンタ受信タスクを起動する。またステップＳ１７１で印刷ジョブ終了フラグがＯＮになっており、印刷ジョブが終わりであると判定して場合には、ステップＳ１７２で部数カウンタをチェックし、もし部数カウンタが０である場合には、全ての印刷処理を完了したと判断し、ステップＳ１７７で印刷ジョブ受信完了通知を送り、ステップＳ１７８で印刷ジョブフラグと再送要求フラグを初期化して処理を終了する。一方、ステップＳ１７２で部数カウンタが０でなく、まだ印刷すべき部数が残っていると判定された場合には、ステップＳ１７３で再送が必要かをチェックするために、再送要求フラグがＯＮかどうかをチェックする。もし印刷ジョブ記憶装置３４にすべての印刷ジョブが保存されている場合には、ステップＳ１７５で印刷ジョブ記憶装置３４から印刷ジョブを読み出すために、図示されていない印刷ジョブ記憶装置読み出しタスクを起動し、印刷ジョブを読み出し、印刷を行う。また印刷ジョブ記憶装置３４に印刷ジョブが全て保存できなかった場合には、再送要求フラグがＯＮにセットされているため、ステップＳ１７４にて印刷ジョブ再送要求を送信し、続いてステップＳ１７６でプリンタ受信タスクを起動し、再度コンピュータ１０から印刷ジョブを転送してもらうように動作する。
【００３２】
本実施例によれば、プリンタに搭載したメモリで構成される前記印刷ジョブ記憶装置３４に格納されるサイズの印刷ジョブであれば、一度記憶した印刷ジョブを使用して複数部数印字を実現でき、前記印刷ジョブ記憶装置３４に格納できない場合には、前記コンピュータ１０の前記スプールファイル１４に格納された印刷ジョブを繰り返し再送してもらうことにより複数部数印刷を実現できるという柔軟性を有した印刷方法を実現できるという効果がある。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１の実施例を説明する印刷システム構成図である。
【図２】本発明の第１の実施例を説明するコンピュータの印刷フロー図である。
【図３】本発明の第１の実施例を説明するスプーラ処理フロー図である。
【図４】本発明の第１の実施例を説明するコンピュータの受信フロー図である。
【図５】本発明の第１の実施例を説明するプリンタの受信フロー図である。
【図６】本発明の第１の実施例を説明するプリンタの印刷ジョブ制御フロー図である。
【図７】本発明の第１の実施例を説明するプリンタの言語処理フロー図である。
【図８】本発明の第１の実施例を説明するプリンタのエンジン通信フロー図である。
【符号の説明】
【００３４】
１０  コンピュータ
１１  アプリケーション
１２  プリンタドライバ
１３  スプーラ
１４  スプールファイル
１５  送信手段
１６  インターフェイス
１７  受信手段
１８  応答コマンド解析手段
１９  スプールファイル削除手段
２０  印刷ジョブ再送手段
３０  プリンタ
３１  インターフェイス
３２  受信手段
３３  受信データ制御手段
３４  印刷ジョブ記憶手段
３５  言語処理手段
３６  描画バッファ
３７  プリントエンジン
３８  印刷ジョブ受信完了通知手段
３９  印刷ジョブ再送要求手段
４０  送信手段
【図１】
2006018741.tif 000003
【図２】
2006018741.tif 000004
【図３】
2006018741.tif 000005
【図４】
2006018741.tif 000006
【図５】
2006018741.tif 000007
【図６】
2006018741.tif 000008
【図７】
2006018741.tif 000009
【図８】
2006018741.tif 000010