(57)【要約】【課題】複数部印刷中に次の印刷ジョブの受信、データ伸張処理を行う。【解決手段】複数部印刷の印刷ジョブを受信したら、データを伸張し、主記憶装置と同時に外部記憶装置にも同じデータを格納する。１部目は主記憶装置からデータを読出して印刷し、２部目以降は外部記憶装置からデータを読出して印刷する。複数部印刷中に次の印刷ジョブを受信したら、伸張したデータを外部記憶装置に格納し、テーブルに印刷部数と先頭アドレス、データサイズを格納する。複数部印刷が終了したら、テーブルから次の印刷ジョブのアドレスを参照し、データ読出し及び印刷を行う。【選択図】  図１
2005022223.tif 000002
【特許請求の範囲】
【請求項１】
ホストから印刷部数指定データと圧縮した印刷データを受信し、データ伸張して印刷する印刷装置において、
伸張した印刷データを格納する主記憶装置および外部記憶装置と、
指定された印刷部数１部の場合には伸張した印刷データを主記憶装置に格納し、複数部の場合には伸張した印刷データを主記憶装置と外部記憶装置に格納するデータ格納制御手段と、
１部目の印刷時には主記憶装置から伸張した印刷データを読出し、２部目以降の印刷時には外部記憶装置から伸張した印刷データを読み出すデータ読出し制御手段とを備えたことを特徴とする印刷装置。
【請求項２】
前記データ格納手段は、２部目以降を印刷している間にホストから別の印刷データを受信した場合、印刷部数指定によらずに伸張した印刷データを外部記憶装置に格納するとともに、前記外部記憶装置内に格納された印刷データの印刷部数及びデータ格納先アドレスを格納することを特徴とする請求項１記載の印刷装置。
【請求項３】
前記データ格納手段は、２部目以降を印刷している間にホストから別の印刷データを受信した場合、ホストから受信した圧縮した印刷データを外部記憶装置に格納し、
前記データ読出し制御手段は、前記外部記憶装置に格納された圧縮印刷データを読出した後に伸張することを特徴とする請求項１記載の印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホストコンピュータから送信された印刷データを印刷する印刷装置において、複数ページの原稿を複数部印刷する機能を備えた印刷制御装置及び、印刷データ制御方法に関する。
【０００２】
【従来の技術】
複数ページの原稿を複数部印刷する場合、例えば、特許文献１、特許文献２及び特許文献３に開示されているように、印刷装置内にハードディスク装置等の大容量の外部記憶装置を搭載し、ホスト装置から送られてくる全ページの印刷データを前記外部記憶装置に格納し、２部目以降の印刷の際にはホストから印刷データを送信することなく、前記外部記憶装置に格納したデータを用いて印刷する印刷装置が一般的である。
【０００３】
このように、全ページの印刷データを外部の記憶装置に格納することにより、１部の印刷データ送信で複数部の印刷が可能であるため、ホストと印刷装置間のデータ転送時間の短縮及びデータ量の削減が可能となり、ネットワークなどのトラフィックの軽減やホスト装置側や印刷装置側の転送に関わる処理時間を短縮することができる。
【０００４】
【特許文献１】
特開平５−２３８１１４号公報
【特許文献２】
特開平７−９６６３８号公報
【特許文献３】
特開２００１−２７０１４号公報
【０００５】
【発明が解決しようとする課題】
しかしながら上記の方法では、２部目以降の印刷で外部記憶装置からデータを読み出して印刷を行っている間は、イメージデータを一旦主記憶装置内に展開し、その後印刷を行っているため、この印刷が終了するまでは主記憶装置が使用できず、次の印刷ジョブを処理できない問題がある。
【０００６】
本発明は、複数部の印刷中でも他の印刷データの受信及びイメージデータへの伸張処理が可能となる印刷制御装置及び制御方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明は、印刷部数が１部の場合は前記イメージデータを主記憶装置にのみ格納し、複数部の場合には前記イメージデータを前記主記憶装置に格納すると同時に、前記外部記憶装置にも格納する制御手段と、印刷部数が１部の場合は主記憶装置のみから前記イメージデータを読み出して印刷を行い、複数部の場合は１部目の印刷は主記憶装置から前記イメージデータを読み出し、２部目以降は前記外部記憶装置から前記イメージデータを読み出して、ビデオデータに変換し、バッファに１ラスタ分のデータを保持して印刷する処理を設定された印刷部数の数だけ繰り返す制御手段を備えるようにした。
【０００８】
また本発明では、２部目以降を印刷している間に別の印刷データを受信した場合、前記主記憶装置に格納された受信データを読み出してイメージデータに伸張し、前記外部記憶装置に格納する制御手段と、前記外部記憶装置内に格納された印刷ジョブの印刷部数及びデータ格納先アドレスを格納するテーブルと、複数部の印刷終了後に前記テーブルを確認し、次の印刷ジョブが登録されている場合にその格納先アドレスから印刷ジョブのデータ読み出し、印刷を印刷部数の数だけ繰り返す制御手段を備えるようにした。
【０００９】
また本発明では、受信データを読み出して伸張したデータをページバッファに書込むと同時に前記外部記憶装置に書込む制御手段において、外部記憶装置に伸張する前のデータを格納するようにし、外部記憶装置からデータを読み出し、印刷を行う印刷制御手段にデータ伸張機能を追加してデータ読出し後に伸張することにより、外部記憶装置の容量が削減できることを特徴とする。
【００１０】
【発明の実施の形態】
以下、本発明の第１の実施の形態について図１のブロック図及び図２のフローチャートを参照して説明する。
【００１１】
図１は、本発明を実現するための印刷装置の構成を示すブロック図である。印刷装置２は、印刷制御装置３と外部記憶装置１４及び印刷エンジン１５により構成される。より詳しくは、印刷制御装置３は、ホスト１からの印刷データを受信するホストＩ／Ｆ制御部５、受信データを格納する受信バッファ領域７、及び、１ページ分の印刷データを伸張したイメージデータを格納するページバッファ領域８より構成され主記憶装置６、主記憶装置６あるいは受信バッファ領域７より印刷データを読み出し、イメージデータへの伸張を行いページバッファ領域８又及び外部記憶装置１４に格納するデータ伸張制御部９で構成される。さらに、印刷制御装置３は、外部記憶装置１４に対するデータのやり取りを制御する外部Ｉ／Ｆ制御部１０、ページバッファ領域８又及び外部記憶装置１４からイメージデータを読み出しビデオデータに変換して印刷エンジンへ送る印刷制御部１３より構成される。ここで、外部Ｉ／Ｆ制御部１０は、外部記憶装置１４内のデータの格納状況を示す格納データテーブル１１と後述する複数部印刷フラグ１２を含んでいる。
【００１２】
本実施例の印刷装置２内の印刷制御装置３のホストＩ／Ｆ制御部５は、ホスト１より、ジョブ開始コード１０１を含む制御情報ヘッダ１０５を受信すると、ＣＰＵに対し割込みを上げる（図２のＳ１、以下同様）。これ以降に受信した圧縮イメージデータ１０４は主記憶装置６内の受信バッファ領域７に格納する。ＣＰＵ４は割込みを検出すると、ジョブ開始コード１０１に続く印刷部数１０２を確認し、複数部の印刷ならば（Ｓ２）、印刷部数１０２及び画像データサイズ１０３を、外部Ｉ／Ｆ制御部１０内の格納データテーブル１１に書込む（Ｓ３）。また、１つ前に受信した印刷ジョブの先頭アドレスにデータサイズを足したアドレスを新たな先頭アドレスとして格納データテーブル１０に書込む（Ｓ３）。
【００１３】
さらにＣＰＵ４は、データ伸張制御部８を起動し、印刷部数１０２及び画像データサイズ１０３を送信する（Ｓ４）。ページバッファに１ページ分のデータが格納されたら（Ｓ５）、ＣＰＵ４は印刷制御部１３を起動し、印刷が開始される（Ｓ６）。
【００１４】
複数部印刷の場合は、１部目の印刷が終了したら（Ｓ７）、印刷制御部１３は格納データテーブル１１に示されるアドレスからデータを読出し、２部目以降の印刷を開始する（Ｓ８）。
【００１５】
ここで、ホストＩ／Ｆ制御部５がホスト１から受信する印刷データの一例を図１１にしめす。印刷データは、制御情報ヘッダ１０５と実印刷データである圧縮イメージデータ１０４で構成され、上記のジョブ開始コード１０１、印刷部数１０２、画像データサイズ１０３は、制御情報ヘッダ１０５に格納されている。
【００１６】
また、上記の格納データテーブル１１の一例を図１２にしめす。格納テーブル１１は、印刷ジョブ毎に印刷部数、先頭アドレス、画像データサイズが、図２のフローに従い格納されている。
【００１７】
次に、データ伸張制御部９の動作について図３のブロック図及び図４のフローチャートに従って詳細に説明する。
データ伸張制御部９内のデータ読出し制御部３０１は、主記憶装置６内の受信バッファ領域７からデータを読出し（図４のＳ１１。以下同様）、データ伸張部３０２が圧縮イメージデータ１０４を伸張する（Ｓ１２）。次に、データ書込み制御部３０３は、複数部印刷フラグ１２を確認する（Ｓ１３）。複数部印刷でない場合を示す‘０’ならば、印刷部数１０２を確認する（Ｓ１４）。印刷部数が‘１部’ならば、圧縮イメージデータを伸張した伸張データを主記憶装置５内のページバッファ領域８に格納する（Ｓ１５）。
【００１８】
印刷部数が、“２”以上ならば、圧縮イメージデータを伸張した伸張データを主記憶装置６内のページバッファ領域８と外部記憶装置１４に格納し（Ｓ１６）、複数部印刷フラグ１２に‘１’を書込む（Ｓ１７）。
【００１９】
Ｓ１３において複数部印刷フラグ１２が‘１’（複数部印刷中）ならば、外部記憶装置１４に圧縮イメージデータを伸張した伸張データを書込み（Ｓ１８）、当該処理のジョブ番号１０１、印刷部数１０２、格納先先頭アドレス、データサイズ１０３を格納データテーブル１１に格納する（Ｓ１９）。
【００２０】
上記の処理をデータサイズ分の処理が終了するまで繰り返す（Ｓ２０）。ここで、複数部印刷フラグ１２は、図６により説明するが、該印刷データの印刷を完了したときに、‘０’を書込む。これにより、ページバッファの未印刷の伸張データの上書きを防止している。
【００２１】
次に、印刷制御部１３の動作について図５ブロック図及び図６のフローチャートに従って詳細に説明する。
印刷制御部１３内のデータ読出し制御部５０１は、印刷部数が１部又は複数部印刷における１部目の印刷の際に（図６のＳ２１。以下同様）、主記憶装置６内のページバッファ領域８からイメージデータを読み出す（Ｓ２７）。このデータをデータ処理部５０２がビデオデータに変換してラインバッファ５０３へ格納する（Ｓ２３）。１ラスタ分のデータを確保した後、エンジンＩ／Ｆ制御部５０４がプリンタエンジン１３へ送って印刷する。この動作を１部目の印刷終了まで繰り返す（Ｓ２４）。
【００２２】
Ｓ２１において、２部目以降の印刷の場合は、印刷制御部１３内のデータ読出し制御部５０１は、外部記憶装置１４の格納データテーブル１２に示されるアドレスからイメージデータを読み出す（Ｓ２２）。このデータをデータ処理部５０２がビデオデータに変換し、ラインバッファ５０３へ格納する（Ｓ２３）。１ラスタ分のデータを確保した後、エンジンＩ／Ｆ制御部５０４がプリンタエンジン１５へ送って印刷する。この動作を格納データテーブル１２で指定された部数までＳ２１〜Ｓ２４を繰り返す（Ｓ２４）。
【００２３】
全部数の印刷が終了したら（Ｓ２５）、複数部印刷フラグを‘０’にする（Ｓ２６）。
【００２４】
次に、本発明の第２の実施の形態について、データ伸張制御部９の動作を図７のブロック図及び図８のフローチャートに従って説明する。
データ伸張制御部９内のデータ読出し制御部７０１は、主記憶装置６内の受信バッファ領域７からデータを読出し（図８のＳ４１。以下同様）、このデータをデータ伸張部７０２で圧縮イメージデータ１０４に伸張する（Ｓ４２）。次に、データ書込み制御部７０３は、複数部印刷フラグ１２を確認し（Ｓ４３）、複数部印刷でない場合を示す‘０’ならば、印刷部数１０２を確認する（Ｓ４４）。
【００２５】
印刷部数が１ならば、伸張データを主記憶装置５内のページバッファ領域８に格納する（Ｓ４５）。印刷部数が２以上ならば、伸張データを主記憶装置６内のページバッファ領域８に格納し、伸張する前の圧縮データを外部記憶装置１４に格納し（Ｓ４６）、複数部印刷フラグ１２に‘１’を書込む（Ｓ４７）。
【００２６】
Ｓ４３において複数部印刷フラグ１２が‘１’（複数部印刷中）ならば、外部記憶装置１４に圧縮データを書込み（Ｓ４８）、ジョブ番号１０１と印刷部数１０２と格納先先頭アドレスとデータサイズ１０３を格納データテーブル１１に格納する（Ｓ４９）。
【００２７】
次に、第２の実施の形態について、印刷制御部１３の動作を図９のブロック図及び図１０のフローチャートに従って説明する。
印刷制御部１３内のデータ読出し制御部９０１は、印刷部数が１部又は複数部印刷における１部目の印刷か否かを判定する（図１０のＳ５１。以下同様）。印刷部数が１部又は複数部印刷における１部目の場合には、主記憶装置６内のページバッファ領域８からイメージデータを読み出し（Ｓ５８）、データ処理部９０３がビデオデータに変換してラインバッファ９０４へ格納する（Ｓ５４）。１ラスタ分のデータを確保した後、エンジンＩ／Ｆ制御部９０５がプリンタエンジン１３へ送って印刷する。この動作を１部目の印刷終了まで繰り返す（Ｓ５５）。
【００２８】
Ｓ５１において、２部目以降の印刷の場合は、印刷制御部１３内のデータ読出し制御部９０１は、外部記憶装置１４の格納データテーブル１２に示されるアドレスから圧縮データを読み出し、データ伸張部９０２で伸張してイメージデータに展開する。さらに、データ処理部９０３でビデオデータに変換し、ラインバッファ９０４へ格納し、１ラスタ分のデータを確保した後、エンジンＩ／Ｆ制御部９０５がプリンタエンジン１５へ送って印刷する。この動作を格納データテーブル１２で指定された部数までＳ２１〜Ｓ２４を繰り返す（Ｓ５５）。
【００２９】
全部数の印刷が終了したら（Ｓ５６）、複数部印刷フラグを‘０’にする（Ｓ５７）。
【００３０】
【発明の効果】
本発明によれば、複数ページのジョブを複数部印刷中に他の印刷ジョブを受信及びイメージデータへの伸張処理をすることごでき、そのデータを記憶装置に格納しておくことにより、複数部印刷のジョブ終了後、間をあけることなく連続して次のジョブを印刷できる。
【００３１】
また、受信したデータをすぐに伸張せず、そのまま外部記憶装置に格納し、読み出して印刷処理を行う前に伸張するようにすれば、外部記憶装置の容量を削減したり、容量を減らさずに格納できるデータ量を増やしたりすることができる。
【図面の簡単な説明】
【図１】本発明におけるプリンタのハードウェア構成を表すブロック図。
【図２】全体の処理の流れを表したフローチャート。
【図３】データ伸張制御部のハードウェア構成を表すブロック図。
【図４】データ伸張制御部の処理の流れを表したフローチャート。
【図５】印刷制御部のハードウェア構成を表すブロック図。
【図６】印刷制御部の処理の流れを表したフローチャート。
【図７】他のデータ伸張制御部のハードウェア構成を表すブロック図。
【図８】他のデータ伸張制御部の処理の流れを表したフローチャート。
【図９】他の印刷制御部のハードウェア構成を表すブロック図。
【図１０】他の印刷制御部の処理の流れを表したフローチャート。
【図１１】印刷ジョブのデータ構成図。
【図１２】格納データテーブルの構成図。
【符号の説明】
１…ホスト、２…印刷装置、３…印刷制御装置、４…ＣＰＵ、  ５…ホストＩ／Ｆ制御部、６…主記憶装置、７…受信バッファ、８…ページバッファ、９…データ伸張制御部、１０…外部Ｉ／Ｆ制御部、１１…格納データテーブル、１２…複数部印刷フラグ、１３…印刷制御部、１４…外部記憶装置、１５…印刷エンジン、３０１…データ読出し制御部、３０２…データ伸張部、３０３…データ書込み制御部、５０１…データ読出し制御部、５０２…データ処理部、５０３…ラインバッファ、５０４…エンジンＩ／Ｆ制御部、７０１…データ読出し制御部、７０２…データ伸張部、７０３…データ書込み制御部、９０１…データ読出し制御部、９０２…データ伸張部、９０３…データ処理部、９０４…ラインバッファ、９０５…エンジンＩ／Ｆ制御部、１０１…ジョブ開始コード、１０２…印刷部数、１０３…データサイズ、１０４…圧縮イメージデータ、１０５…制御情報ヘッダ、２０１…格納データテーブル
【図１】
2005022223.tif 000003
【図２】
2005022223.tif 000004
【図３】
2005022223.tif 000005
【図４】
2005022223.tif 000006
【図５】
2005022223.tif 000007
【図６】
2005022223.tif 000008
【図７】
2005022223.tif 000009
【図８】
2005022223.tif 000010
【図９】
2005022223.tif 000011
【図１０】
2005022223.tif 000012
【図１１】
2005022223.tif 000013
【図１２】
2005022223.tif 000014