(57)【要約】【課題】一つの印刷ジョブデータを複数回のコネクションに分けて送信しても、操作パネルのコネクション認識の設定を変更することなく、正常に印刷動作を行うことができる印字装置を提供する。【解決手段】印刷ジョブデータの受信途中でコネクションが切断されたときに、印刷ジョブデータの内の最後のラインデータを記憶するワークメモリ７と、切断されたコネクションの後のコネクションで受信した印刷ジョブデータの先頭のラインデータと最後のラインデータとの整合性を判定する判定処理部８と、判定処理部が整合性ありと判定したときに、コネクションの切断前に受信した印刷ジョブデータを解析して生成した中間コードデータとコネクションの切断後に受信した印刷ジョブデータを解析して生成した中間コードデータとに基づいて印字動作を行なうビットマップ展開処理部５とを具備する。【選択図】図１
2006123261.tif 000002
【特許請求の範囲】
【請求項１】
他の装置から受信した印刷ジョブデータを順次解析し、印刷用データに変換して印字動作を行なう印字装置において、
印刷ジョブデータの受信途中でコネクションが切断されたときに、前記印刷ジョブデータの内の最後の一纏りのデータを記憶する記憶手段と、
前記切断されたコネクションの後のコネクションで受信した印刷ジョブデータの内の先頭の一纏りのデータと前記記憶手段に記憶している最後の一纏りのデータとの整合性を判定する判定手段と、
前記判定手段が整合性ありと判定したときに、コネクションの切断前に受信した印刷ジョブデータを解析して生成した印刷用データと、コネクションの切断後に受信した続きの印刷ジョブデータを解析して生成した印刷用データとに基づいて印字動作を行なう印刷制御手段と、
を具備することを特徴とする印字装置。
【請求項２】
前記判定手段は、前記最後の一纏りのデータのヘッダ情報が持つ当該一纏りのデータのデータサイズの情報が、前記記憶手段に記憶した最後の一纏りのデータのデータサイズと前記先頭の一纏りのデータのデータサイズとを加算した値と一致したときに整合性ありと判定するものであることを特徴とする請求項１記載の印字装置。
【請求項３】
前記一纏りのデータは、１ライン分のデータであることを特徴とする請求項１又は２記載の印字装置。
【請求項４】
前記コネクションが切断された後、一定時間経過しても続きの印刷ジョブデータを受信しなかったときには、新たな印刷ジョブデータを受信可能な状態とすることを特徴とする請求項１、２又は３記載の印字装置。
【請求項５】
前記一定時間はユーザによって設定されたジョブタイムアウト時間の設定値であることを特徴とする請求項４記載の印字装置。
【請求項６】
前記判定手段が整合性なしと判定したときには、前記印刷制御手段は、中断後のコネクションで送られてきた印刷ジョブデータを新規の印刷ジョブデータとして印刷処理を行なうことを特徴とする請求項１、２、３、４又は５記載の印字装置。
【請求項７】
前記印刷用データは、ディスプレイリスト等の中間コード、或いはビットマップデータであることを特徴とする請求項１、２、３、４、５又は６記載の印字装置。
【請求項８】
他の装置から受信した印刷ジョブデータを順次解析し、印刷用データに変換して印字動作を行なう印字方法において、
印刷ジョブデータの受信途中でコネクションが切断されたときに、前記印刷ジョブデータの内の最後の一纏りのデータを記憶する記憶工程と、
前記切断されたコネクションの後のコネクションで受信した印刷ジョブデータの内の先頭の一纏りのデータと前記記憶工程で記憶した最後の一纏りのデータとの整合性を判定する判定工程と、
前記判定工程で整合性ありと判定されたときに、コネクションの切断前に受信した印刷ジョブデータを解析して生成した印刷用データと、コネクションの切断後に受信した続きの印刷ジョブデータを解析して生成した印刷用データとに基づいて印字動作を行なう印刷制御工程と、
を具備することを特徴とする印字方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他の装置から受信した印刷ジョブデータを順次解析して印刷動作を行なう印字装置及び印字方法に関する。
【背景技術】
【０００２】
一般的に使用されている印字装置において、他の装置、例えばホストコンピュータから印刷ジョブデータを受信すると、その印刷ジョブデータは、まずジョブバッファに格納される。このジョブバッファは複数のインターフェイス、例えばネットワークインターフェイスやＵＳＢ等が搭載されている印字装置でも、一つだけ用意され、複数分用意されていることはない。このため、ジョブバッファに先にデータを格納したインターフェイスがジョブバッファを占有し、他のインターフェイスがジョブバッファにデータを格納できないようにしている。
【０００３】
また、印字装置とホストコンピュータとのコネクションが切断されると、使用しているジョブバッファが開放され、ジョブバッファへの格納待ちインターフェイスがあれば、そのインターフェイスがジョブバッファを占有し使用可能状態になる。ジョブバッファに格納された印刷ジョブデータは順次読み出され解析処理が行われる。解析後はディスプレイリストなどの中間コードに一度変換され、１ページあるいは１バンド単位でビットマップデータを作成し印刷動作を開始する。
【０００４】
図４は、ホストコンピュータと印字装置間のコネクションで転送される印刷ジョブデータを説明するための図である。図４（ａ）に示すようにホストコンピュータから送信される一つの印刷ジョブデータは一つのコネクションの中に含まれることが一般的である。また、印刷ジョブデータには先頭と最後にそれぞれジョブ開始コマンドと終了コマンドが含まれている。ホストコンピュータと印字装置の間でコネクションが確率されると、ホストコンピュータはジョブ開始コマンドを含んだ印刷ジョブデータを送信しジョブ終了コマンドまでの転送を完了すると、コネクションを切断する。印字装置側はジョブ終了コマンドを受信すると、それまで受信した印刷ジョブデータを印刷して排紙処理を行ない当該印刷ジョブが終了する。また、印刷ジョブデータの転送途中でコネクションが切断されると、切断処理を行なう。
【０００５】
ホストコンピュータと印字装置間のジョブ転送において図４（ｂ）に示すように、印刷ジョブデータの転送途中でコネクションが切断されることがある。これが発生するケースとしては、ホストコンピュータと印字装置間の通信異常発生、ユーザによる印刷ジョブの途中キャンセルなどがある。印字装置側では、このような場合は印刷ジョブの終了コマンドが認識できないため、転送途中でコネクションが切断されると、ジョブ終了コマンド受信と解釈し、それまでに受信した印刷ジョブデータの印刷後に排紙するという、いわゆるキャンセル処理が行われる。
【０００６】
ところが、ジョブ終了コマンド受信前のコネクション切れについては前記ケース以外に図４（ｃ）に示すように、例えば転送する画像サイズが大きために、ホストコンピュータ側で一つの印刷ジョブデータを複数のコネクションに分けて転送するという特殊なケースも存在する。このような特殊なケースの場合、従来の印字装置ではコネクションが切断された時点で、キャンセル処理してしまう。したがって、従来の印字装置は、後に接続されたコネクションで印刷ジョブデータの続きが送られても、次のジョブ開始コマンドを探しているので、続きの印刷ジョブデータはすべて破棄され正しい印字結果を得ることができなかった。
【０００７】
この問題を解決するために、従来の印字装置は、操作パネル上でコネクション認識を行なうかどうかの設定を行なう機能を設けている。ここの設定を「する」とした場合、転送途中でのコネクション切れは印刷ジョブの途中終了としてキャンセルを行なう。しかし、ここの設定を「しない」とした場合、印刷ジョブデータの転送途中でコネクションが切断されてもキャンセル処理は行われず、続きの印刷ジョブデータがくるのを待つ。これにより一つの印刷ジョブデータを複数のコネクションに分けて転送するという特殊なケースにおいても正常な出力結果を得ることが可能になる。
【０００８】
【特許文献１】特開平１０−１６１８２４号公報
【特許文献２】特開平１０−２３５９７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ネットワークの普及や複数インターフェイスの対応によって、複数のユーザが印字装置を共有する環境が一般的になっている。このような環境の下では、特定のユーザが一つの印刷ジョブデータを複数のコネクションで分けて転送する場合、印刷するときには、ユーザはわざわざ印字装置の操作パネルを操作しコネクション認識の設定を確認しなければならない。また、印刷終了後には、他のユーザの印刷作業に影響が出ないようコネクション認識の設定を元に戻しておく必要がある。したがって、従来の印字装置では、一つの印刷ジョブデータを複数のコネクションに分けて転送する場合、印刷作業が煩雑で手間がかかるという問題がある。
【００１０】
さらに、上述したように複数のユーザが一つの印字装置を共有するため、コネクション認識の設定を「しない」にしたときは、印字装置は続きの印刷ジョブデータを待たなければならず、その間は他のインターフェイスや他のユーザからの印刷ジョブを受け付けることができなるという問題がある。
【００１１】
本発明は上記事情に基づいてなされたものであり、一つの印刷ジョブデータを複数回のコネクションに分けて送信しても、操作パネルのコネクション認識の設定を変更することなく、正常に印刷動作を行うことができる印字装置を提供することを目的とするものである。
【課題を解決するための手段】
【００１２】
上記の目的を達成するための請求項１記載の発明は、他の装置から受信した印刷ジョブデータを順次解析し、印刷用データに変換して印字動作を行なう印字装置において、印刷ジョブデータの受信途中でコネクションが切断されたときに、前記印刷ジョブデータの内の最後の一纏りのデータを記憶する記憶手段と、前記切断されたコネクションの後のコネクションで受信した印刷ジョブデータの内の先頭の一纏りのデータと前記記憶手段に記憶している最後の一纏りのデータとの整合性を判定する判定手段と、前記判定手段が整合性ありと判定したときに、コネクションの切断前に受信した印刷ジョブデータを解析して生成した印刷用データと、コネクションの切断後に受信した続きの印刷ジョブデータを解析して生成した印刷用データとに基づいて印字動作を行なう印刷制御手段と、を具備することを特徴とする。
【００１３】
上記の目的を達成するための請求項２記載の発明は、請求項１記載発明において、前記判定手段が、前記最後の一纏りのデータのヘッダ情報が持つ当該一纏りのデータのデータサイズの情報が、前記記憶手段に記憶した最後の一纏りのデータのデータサイズと前記先頭の一纏りのデータのデータサイズとを加算した値と一致したときに整合性ありと判定するものであることを特徴とする。
【００１４】
上記の目的を達成するための請求項３記載の発明は、請求項１又は２記載の発明において、前記一纏りのデータが、１ライン分のデータであることを特徴とする。
【００１５】
上記の目的を達成するための請求項４記載の発明は、請求項１、２又は３記載の発明において、前記コネクションが切断された後、一定時間経過しても続きの印刷ジョブデータを受信しなかったときには、新たな印刷ジョブデータを受信可能な状態とすることを特徴とする。
【００１６】
上記の目的を達成するための請求項５記載の発明は、請求項４記載の発明において、前記一定時間がユーザによって設定されたジョブタイムアウト時間の設定値であることを特徴とする。
【００１７】
上記の目的を達成するための請求項６記載の発明は、請求項１、２、３、４又は５記載の発明において、前記判定手段が整合性なしと判定したときには、前記印刷制御手段は、中断後のコネクションで送られてきた印刷ジョブデータを新規の印刷ジョブデータとして印刷処理を行なうことを特徴とする。
【００１８】
上記の目的を達成するための請求項７記載の発明は、請求項１、２、３、４、５又は６記載の発明において、前記印刷用データが、ディスプレイリスト等の中間コード、或いはビットマップデータであることを特徴とする。
【００１９】
上記の目的を達成するための請求項８記載の発明は、他の装置から受信した印刷ジョブデータを順次解析し、印刷用データに変換して印字動作を行う印字方法において、印刷ジョブデータの受信途中でコネクションが切断されたときに、前記印刷ジョブデータの内の最後の一纏りのデータを記憶する記憶工程と、前記切断されたコネクションの後のコネクションで受信した印刷ジョブデータの内の先頭の一纏りのデータと前記記憶工程で記憶した最後の一纏りのデータとの整合性を判定する判定工程と、前記判定工程で整合性ありと判定されたときに、コネクションの切断前に受信した印刷ジョブデータを解析して生成した印刷用データとコネクションの切断後に受信した続きの印刷ジョブデータを解析して生成した印刷用データとに基づいて印字動作を行なう印刷制御工程と、を具備することを特徴とする。
【発明の効果】
【００２０】
本発明によれば他の装置からの印刷ジョブデータが転送されている途中で、他の装置と印字装置とのコネクションが切断されたときに、判定手段により、切断されたコネクションの後のコネクションで受信した印刷ジョブデータの内の先頭の一纏りのデータと記憶手段に記憶している切断前のコネクションで受信した最後の一纏りのデータとの整合性を判定し、先頭の一纏りのデータと最後の一纏りのデータとの整合性がとれているときには、コネクションの切断前に受信した印刷ジョブデータを解析して生成した印刷用データとコネクションの切断後に受信した続きの印刷ジョブデータを解析して生成した印刷用データとに基づいて印字動作を行なう。したがって、ユーザは、印字装置の操作パネルのコネクション認識を設定することなく、一つの印刷ジョブデータを複数のコネクションに分けて印字装置に転送して印刷を行なうことができる。
【発明を実施するための最良の形態】
【００２１】
以下に、図面を参照して、本願に係る発明を実施するための最良の形態について説明する。図１は本発明の一実施形態である印字装置の制御ブロック図である。本実施形態の印字装置は、装置全体の制御を司るＣＰＵと、制御用のプログラムおよび各種データを不揮発的に格納するＲＯＭと、ＣＰＵの処理に利用される作業領域やデータの一時記憶領域として利用されるＲＡＭ等を備えており、図１の実線部分はＣＰＵとＲＯＭの制御プログラムとにより実現される機能である。また、図１の点線部分はＲＡＭ等の記憶部である。また、以下では、ホストコンピュータから印刷ジョブデータを受信して印刷を行なう場合について説明する。
【００２２】
本実施形態の印字装置は、ホストコンピュータからの印刷ジョブデータを受信する受信部１と、受信した印刷ジョブデータを一時的に格納するジョブバッファ２と、受信した印刷ジョブデータの解析や中間コードデータの生成等の制御を行う印刷ジョブ制御部（印刷制御手段）３と、印刷ジョブ制御部３によって生成された中間コードデータを一時記憶する中間コードバッファ４と、中間コードバッファ４に格納された中間コードデータを印刷可能なビットマップデータに変換する等の処理を行うビットマップ展開処理部５と、実際に印字を行う印刷部６と、コネクションが切断されたときに最後の１ライン分のデータ（最後の一纏りのデータ）を記憶するワークメモリ（記憶手段）７と、切断されたコネクションの後のコネクションで送られてきた印刷ジョブデータと切断前の印刷ジョブデータとの整合性を判定する判定処理部（判定手段）８と、コネクションが切断されたときに既に受信した印刷ジョブデータを解析して生成した中間コードを記憶するハードディスク９とを備えている。
【００２３】
ワークメモリ７は、ジョブ終了コマンドを受信する前にコネクションの切断が発生したときに、途中まで受信した印刷ジョブデータの内の最後の１ライン分のデータ（最後の一纏りのデータ）を一時的に記憶するものである。このワークメモリ７に記憶した１ライン分のデータは、切断されたコネクションの後のコネクションで受信した印刷ジョブデータがコネクションの切断前に受信した印刷ジョブデータの続きであるか否かを判定するときに使用する。ジョブ終了コマンドを受信する前に、コネクションが切断される場合としては、ユーザによる印刷ジョブのキャンセルや通信障害等によるキャンセルの他に、ホストコンピュータ側の事情、例えば印刷ジョブデータである画像データのサイズが大きすぎる場合に、一つの印刷ジョブデータを複数のコネクションに分けて送信する場合がある。
【００２４】
印刷ジョブ制御部３は、ジョブバッファ２に記憶された印刷ジョブデータを解析して中間コードデータを生成するとともに、コネクション切断時の制御を行う。本実施形態では、印刷ジョブデータから直接、印刷用のデータであるビットマップデータには展開しない。ビットマップデータはデータサイズが大きくて扱い難いので、一度、データサイズの小さい中間コードデータに変換している。また、印刷ジョブ制御部３が行なう解析には、印刷ジョブデータに含まれているジョブ開始コマンドやジョブ終了コマンド等のコマンドの解析が含まれる。中間コードバッファ４は、印刷ジョブ制御部３によって生成された中間コードデータを、所定量、例えば１ページ分保持する。
【００２５】
ビットマップ展開処理部５は、印刷ジョブ制御部３の指示により、中間コードバッファ４から中間コードデータを読み出して、中間コードデータを印刷可能なビットマップデータに変換し、変換したビットマップデータを１ページ分のデータ毎に、或いは１バンド分のデータ毎に印刷部６に転送する。また、ビットマップ展開処理部５は、一つの印刷ジョブデータが複数のコネクションに分けて転送されたときに、元の一つの印刷ジョブデータのビットマップデータにまとめる処理を行なう。
【００２６】
ハードディスク９は、ジョブ終了コマンドを受信する前にコネクションの切断が発生したときに、途中まで受信した印刷ジョブデータを解析して生成し、中間コードバッファ４に記憶してある中間コードデータを保存するものである。
【００２７】
判定処理部８は、印刷ジョブ制御部３から判定の依頼を受けると、ジョブバッファ２に記憶された今回のコネクションで受信した印刷ジョブデータの先頭の１ライン分のデータ（先頭の一纏りのデータ）と、ワークメモリ７に一時的に記憶したコネクション切断前の最後の１ライン分のデータ（最後の一纏りのデータ）との整合性を判定する。両方の整合性が取れたとき、すなわち、両方の印刷ジョブデータを繋げることができたときには、印刷ジョブ制御部３に解析可能なデータであることを通知する。一方、両方のデータを繋げることができないときは、その旨の信号を通知する。
【００２８】
次に、判定処理部８について図２をも参照して詳述する。図２は、印刷ジョブデータの一ライン分のデータを説明するための図である。ホストコンピュータから送られる印刷ジョブデータには、多数のラインデータ（一ライン分のデータ）２０の他に、印刷ジョブデータの先頭に配置されているジョブ開始コマンドや印刷ジョブデータの最後に配置されているジョブ終了コマンドが含まれている。各ラインデータ２０は、ヘッダ情報２１と、印字するための実際のデータ部分であるデータ本体２２とを有している。ヘッダ情報２１は、データ本体２２が何バイトのデータであるのかを示すデータサイズ情報２１ａを含んでいる。
【００２９】
印刷ジョブ制御部３は、ジョブ開始コマンドの受領により一つの印刷ジョブの開始を認識し、ジョブ終了コマンドの受領により、その一つの印刷ジョブの終了を認識する。今、例えば図２の一点鎖線Ｘで示す位置で、コネクションが切断されると、印刷ジョブ制御部３は、ジョブ終了コマンドを受信しない状態でコネクションが切断されたので、ユーザによるキャンセルや通信障害等によるキャンセルなのか、または一つの印刷ジョブデータを複数のコネクションに分けて送信したのかが分らない。そこで、印刷ジョブ制御部３は、ジョブ終了コマンドを受信しないでコネクションが切断されたときに、受信した最後のラインデータ２０をワークメモリ７に記憶する。この場合、一点鎖線Ｘの位置でコネクションが切断されたので、ワークメモリ７には、最後のラインデータ２０のうち、ヘッダ情報２１から切断されたところまでのデータ、すなわちヘッダ情報２１とデータ本体２２のうちの先行部分データ２２ａが記憶される。本明細書では、このようにしてワークメモリ７に記憶された切断されたデータも最後のラインデータ（最後の一纏りのデータ）という。
【００３０】
ホストコンピュータが一つの印刷ジョブデータを複数のコネクションに分けて印字装置に送るときには、次のコネクションで、図２の一点鎖線Ｘの部分から印刷ジョブデータの転送を始める。この場合、印刷ジョブ制御部３は、この新たなコネクションで受信した印刷ジョブデータの先頭のラインデータ、すなわち図２のデータ本体２２のうちの後続部分データ２２ｂを判定処理部９に転送して、判定を依頼する。本明細書では、この後続部分データ２２ｂのことも先頭のラインデータ（先頭の一纏りのデータ）という。
【００３１】
判定処理部８は、印刷ジョブ制御部３から送られてきた後続部分データ２２ｂと、ワークメモリ７に記憶されているヘッダ情報２１と先行部分データ２２ａとを照合し、整合性を判定する。この場合の整合性は、切断されたラインデータのヘッダ情報に格納されているラインデータのデータサイズ情報２１ａと、先行部分データ２２ａのデータサイズと後続部分データ２２ｂのデータサイズとを加算した値とを比較し、両者が一致していれば、整合性ありの信号を印刷ジョブ制御部３に送る。一方、両者が一致していなければ、一致していない旨の信号を印刷ジョブ制御部３に送る。このように、本実施形態では、ジョブ終了コマンドを受信しないうちにコネクションが切断された場合、この切断により分断されたラインデータをつなぎ、ヘッダ情報が有するデータサイズ情報と実際のデータ本体のデータサイズが一致するか否かで整合性を判断する。
【００３２】
判定処理部８が整合性ありの信号を印刷ジョブ制御部３に送ると、印刷ジョブ制御部３は、今回のコネクション切断を、複数コネクションに分けた一つの印刷ジョブデータの転送と認識し、中断した印刷処理を再実行すべく、ビットマップ展開処理部５にコネクション切断前のデータと次のコネクションで転送されてきたデータとを用いて処理を行なうよう指示を送る。ビットマップ展開処理部５は、ハードディスク９に格納してあるコネクション切断前に受信し、解析した中間コードデータと、中間コードバッファ５に記憶されている今回のコネクションで受信し、解析した中間コードデータとを用いてビットマップデータを生成して、印刷部６に転送する。これにより中断した印刷処理が再実行される。
【００３３】
一方、判定処理部８が一致していない旨の信号を送ると、新規の印刷ジョブとして印刷が実行される。
【００３４】
図３は本実施形態の印字装置において印刷ジョブデータのジョブ終了コマンドを受信する前にコネクションが切断されたときのフローチャートである。受信部１がホストコンピュータから印刷ジョブデータを受信すると、受信した印刷ジョブデータはジョブバッファ２に格納される。印字装置は、受信部１により受信処理をしながら、印刷ジョブ制御部３により受信した印刷ジョブデータを順次解析する処理を行なう（Ｓ１１）。
【００３５】
今、印刷ジョブデータ受信中にジョブ終了コマンドを認識せずにコネクションが切断された場合、印刷ジョブ制御部３は何らかの要因で印刷ジョブデータが途中で切れたと認識する（Ｓ１２）。ただし、この時点では、ユーザによるキャンセルや通信障害等によるキャンセルなのか、またはホストコンピュータが一つの印刷ジョブを複数のコネクションに分けて送信したものかは分らない。そこで、これまで受信した印刷ジョブデータを解析して生成した中間コードデータを中間コードバッファ４からハードディスク９にすべて保存・退避させる（Ｓ１３）。さらに、コネクション切断直前に受信した印刷ジョブデータの最後のラインデータをワークメモリ７に保持する（Ｓ１４）。
【００３６】
上記のステップ１３及び１４の一時退避処理が完了すると、中間コードバッファ４やジョブバッファ２のデータをクリアし、次の印刷ジョブデータの受付可能状態とする（Ｓ１５）。ステップＳ１６で、ホストコンピュータから次の印刷ジョブデータを受信すると、印刷ジョブ制御部４は、判定処理部８に今回受信した印刷ジョブデータとコンピュータの中断前に受信した印刷ジョブデータとの整合性の判定を依頼する。判定処理部８は、ワークメモリ７上にコネクション切断直前に受信した最後のラインデータが保存されているかどうかをチェックする（Ｓ１７）。ワークメモリ７に最後のラインデータが保持されていれば、判定処理部８はその最後のラインデータと新たに受信した印刷ジョブデータの先頭のラインデータとの整合性をチェックし、新たに受信した印刷ジョブデータが中断前のコネクションの印刷ジョブデータの続きかどうかを判定する（Ｓ１８）。
【００３７】
ステップ１８で、判定処理部８が続きのデータであると判定し、その結果を印刷ジョブ制御部３に通知すると、印刷ジョブ制御部３は、ビットマップ展開処理部５に再実行の指示を行なう。また、印刷ジョブ制御部３は、今回受信した印刷ジョブデータを解析して中間コードデータを生成し、生成した中間コードデータを中間コードバッファ４に記憶する。ビットマップ展開処理部５は、印刷ジョブ制御部３からの再実行の指示を受けると、ハードディスク９に記憶してある中断前のコネクションの中間コードデータを順次読み出し（Ｓ１９）、また中間コードバッファ４に記憶されている今回のコネクションで受信した続きの印刷ジョブデータを解析して生成した中間コードデータを読み出して、ジョブ終了コマンドを受信する前にコネクションが切断されたときの印刷ジョブを再実行し印刷動作を開始する（Ｓ２０）。この再実行の印刷処理が完了すると、印刷ジョブ制御部３はハードディスク９およびワークメモリ７に保持してあるデータをクリアして（Ｓ２１）、この処理を完了する。
【００３８】
また、ステップＳ１７の判定で、新たに印刷ジョブデータを受信したときにワークメモリ７上にデータが保存されていないとき、また、保存されていても、ステップＳ１８の判定で、ワークメモリ７に記憶された最後のラインデータと、今回のコネクションで受信した先頭のラインデータとの整合性が取れなかったときは、ステップＳ２２に移行して、ハードディスク９から中間コードデータを読み込むことなく、新たに受信した印刷ジョブデータに対して通常の印刷処理が行なわれる。この後、新たな印刷ジョブデータを受信して印刷処理を行なう通常の印刷処理に戻る。
【００３９】
また、ステップＳ１６の判定で、新たな印刷ジョブデータを受信しなかったときは、ステップＳ２３に移行し、一定時間経過した否かを判断する。この場合の一定時間は、ユーザによって設定される、いわゆるタイムアウト時間である。ハードディスク９及びワークメモリ７にそれぞれデータが保持されている状態で新たに印刷ジョブデータを一定時間受信しなかった場合、前のコネクション切断は通信障害やユーザのオペレーションによるジョブキャンセルと判断し、ハードディスク９に保存した中間コードデータやワークメモリ７に保持した最後のラインデータをクリアして（Ｓ２１）、この処理を終了し、新たな印刷ジョブデータを受信して印刷処理を行なう通常の印刷処理に戻る。
【００４０】
上記の本実施形態によれば、印刷ジョブデータの転送途中で、ホストコンピュータと印字装置間のコネクションが切断されたときに、切断時の最後のラインデータをワークメモリ７に記憶し、この最後のラインデータと中断後のコネクションで送られてくる先頭のラインデータとの整合性を判定し、整合性が取れれば中断した印刷ジョブデータの再実行を行って印刷処理を行ない、整合性が取れなければ、新たな印刷ジョブデータとして印刷処理を行なう。また、コネクションの中断後、一定時間経過しても、印刷ジョブデータを受信しないときには、コネクションの中断時に保持していた全てのデータを破棄して、新たな印刷ジョブデータを受け付けて印刷処理を行なう通常の状態に復帰する。したがって、本実施形態の印字装置は、ユーザのオペレーション或いは通信障害により印刷ジョブがキャンセルされたとき、或いは、一つの印刷ジョブデータを複数のコネクションに分けて転送してきたときにも、ユーザによるパネル操作を一切必要とせずに、印刷処理を行なうことができる。
【００４１】
また、本実施形態によれば、ジョブ終了コマンドを受信しないでコネクションが切断されたときには、一時退避処理を行なって、中間コードバッファ４やジョブバッファ２のデータをクリアして、次の印刷ジョブデータの受付可能状態となるので、本装置をネットワークに接続して複数のユーザで共有している場合において、上記のコネクションの切断後に、新たな印刷ジョブデータが転送されたときには、この新たな印刷ジョブデータを受信して、印刷処理を行なうことができる。
【００４２】
尚、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内において種々の変形が可能である。例えば、上記の実施形態では、コネクションの中断時に中間コードデータをハードディスクに格納する場合について説明したが、この場合にハードディスクに格納するデータは、解析を行なった後のデータであれば、例えば、ビットマップデータであってもよい。
【００４３】
また、上記の本実施形態では、最後の一纏りのデータ及び先頭の一纏りのデータとして一つのラインデータを用いる場合について説明したが、本発明はこれに限定されるものではなく、一纏りのデータは２つ以上のラインデータであってもよい。
【００４４】
また、本実施形態では、コネクションが切断された後、一定時間経過しても続きの印刷ジョブデータを受信しなかったときに、新たな印刷ジョブデータを受信可能な状態とし、このときの一定時間がユーザによって設定されたタイムアウト時間の設定値である場合について説明したが、この一定時間はタイムアウト時間とは別個に独立して設定できるようにしてもよい。
【産業上の利用可能性】
【００４５】
以上説明したように、本発明の印字装置によれば、例えばネットワーク接続された他の装置から一つの印刷ジョブデータを複数のコネクションに分けて印字装置に転送する場合でも、ユーザは印字装置の操作パネルのコネクション認識を設定せずに、複数のコネクションに分けて転送した一つの印刷ジョブデータを印字することができる。したがって、本発明は、例えばネットワークに接続されて複数のユーザに共有される印字装置に適用することができる。
【図面の簡単な説明】
【００４６】
【図１】本発明の一実施形態である印字装置の制御ブロック図である。
【図２】印刷ジョブデータの一ライン分のデータを説明するための図である。
【図３】本実施形態の印字装置において印刷ジョブデータのジョブ終了コマンドを受信する前にコネクションが切断されたときのフローチャートである。
【図４】ホストコンピュータと印字装置間のコネクションで転送される印刷ジョブデータを説明するための図である。
【符号の説明】
【００４７】
１    受信部
２    ジョブバッファ
３    印刷ジョブ制御部
４    中間コードバッファ
５    ビットマップ展開処理部
６    印刷部
７    ワークメモリ
８    判定処理部
９    ハードディスク
２０    ラインデータ
２１    ヘッダ情報
２２    データ本体
２１ａ    データサイズ情報
２２ａ    先行部分データ
２２ｂ    後続部分データ
【図１】
2006123261.tif 000003
【図２】
2006123261.tif 000004
【図３】
2006123261.tif 000005
【図４】
2006123261.tif 000006