(57)【特許請求の範囲】
【請求項１】
印刷要求に応じて印刷対象を取得する印刷対象取得手段と、
前記印刷対象の先頭から先頭ページ内の所定位置までの濃淡をドット毎に特定するドット制御データと前記所定位置までの印刷データの直後に位置するとともに復帰コマンドまで後続の印刷データを無効にするスキップコマンドと前記スキップコマンドの後方に位置し印刷を開始させるページ区切りコマンドとを含む先頭印刷データと、前記復帰コマンドと前記復帰コマンドの直後に位置するとともに前記印刷対象の前記所定位置以後の濃淡をドット毎に特定するドット制御データとを含む後続印刷データとを前記印刷対象に基づいて生成する印刷データ生成手段と、
前記先頭印刷データと前記後続印刷データとを順次プリンターに取得させることによって前記先頭印刷データと前記後続印刷データとに基づいて前記プリンターに印刷を実行させるプリンター制御手段と、
を備える印刷システム。
【請求項２】
前記先頭印刷データは、前記スキップコマンドと前記ページ区切りコマンドの間に、前記所定位置から前記先頭ページの末端までの濃淡をドット毎に特定するドット制御データの空白を埋めるダミーデータを含む、
請求項１に記載の印刷システム。
【請求項３】
印刷要求に応じて印刷対象を取得し、
前記印刷対象の先頭から先頭ページ内の所定位置までの印刷データと前記所定位置までの印刷データの直後に位置するとともに復帰コマンドまで後続の印刷データをプリンターに読み飛ばさせるスキップコマンドと前記スキップコマンドの後方に位置し前記プリンターに印刷を開始させるページ区切りコマンドとを含む先頭印刷データと、前記復帰コマンドと前記復帰コマンドの直後に位置するとともに前記印刷対象の前記所定位置以後の印刷データとを含む後続印刷データとを前記印刷対象に基づいて生成し、
前記先頭印刷データと前記後続印刷データとを順次前記プリンターに取得させることによって前記先頭印刷データと前記後続印刷データとに基づいて前記プリンターに印刷を実行させる、
印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷システムおよび印刷制御方法に関する。 
【背景技術】
【０００２】
従来、例えば特許文献１、２に記載されているように、印刷所用時間を短縮するための様々な技術が開発されている。ＰＣ（Personal Computer）に記憶されている印刷対象をプリンターによって印刷するとき、一般には、プリンタードライバーによって生成された印刷データをＯＳ（Operating System）のスプーラーによって一時記憶しておき、スプーラーからプリンターが印刷データを取得して印刷を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１２７３３号公報
【特許文献２】特開２００２−２００８２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、１ページ分の印刷データを取得する前に印刷を開始するプリンターと、１ページ分の印刷データを取得してから印刷を開始するプリンターとが存在している。１ページ分の印刷データを取得するまで印刷を実行しないプリンターでは、印刷要求から印刷開始までの時間が長くなるため、所謂ファーストプリントが遅れる。このようなプリンターでは、最初のページ区切りを示すページ区切りコマンドを取得したときに印刷を開始している。
【０００５】
本発明は，１ページ分の印刷データを取得するまで印刷を開始しないプリンターに対する印刷要求が発生してから先頭ページの印刷が完了するまでに要する時間を短縮することを目的とする。
【課題を解決するための手段】
【０００６】
（１）上記目的を達成するための印刷システムは，印刷要求に応じて印刷対象を取得する印刷対象取得手段と、前記印刷対象の先頭から先頭ページ内の所定位置までの濃淡をドット毎に特定するドット制御データと前記所定位置までの印刷データの直後に位置するとともに復帰コマンドまで後続の印刷データを無効にするスキップコマンドと前記スキップコマンドの後方に位置し印刷を開始させるページ区切りコマンドとを含む先頭印刷データと、前記復帰コマンドと前記復帰コマンドの直後に位置するとともに前記印刷対象の前記所定位置以後の濃淡をドット毎に特定するドット制御データとを含む後続印刷データとを前記印刷対象に基づいて生成する印刷データ生成手段と、前記先頭印刷データと前記後続印刷データとを順次前記プリンターに取得させることによって前記先頭印刷データと前記後続印刷データとに基づいて前記プリンターに印刷を実行させるプリンター制御手段と、を備える。
本発明によると、プリンターは、先頭印刷データに含まれるページ区切りコマンドを後続印刷データを取得する前に読み込むことが可能になるため、先頭ページ全体の印刷データを取得する前に印刷を開始することができる。先頭印刷データは印刷対象の先頭から先頭ページ内の所定位置までの印刷データの直後にスキップコマンドを含んでいるため、プリンターは先頭ページ内の所定位置までの印刷を実行すると復帰コマンドを読み込むまで紙送りやインクの吐出といった印刷動作を停止する。そして後続印刷データの復帰コマンドの直後に所定位置以後の印刷データが含まれているため、印刷の再開とともに印刷対象の後続領域の印刷を実行することができる。したがって本発明によると、印刷要求が発生してから先頭ページ分の印刷が完了するまでに要する時間を短縮することができる。なお、プリンター制御手段自体が先頭印刷データと後続印刷データをプリンターに送信してもよいし、プリンター制御手段がスプーラーに先頭印刷データと後続印刷データを引き渡してスプーラーからプリンターに先頭印刷データと後続印刷データを送信させてもよい。また印刷データはＲＧＢ等の加法混色系からＣＭＹ等の減法混色系への色変換が施されたものでも施されていないものでもよいし、ハーフトーン処理が施されたものでも施されていないものでもよい。
【０００７】
（２）上記目的を達成するための印刷システムにおいて、前記先頭印刷データは、前記スキップコマンドと前記ページ区切りコマンドの間に、前記所定位置から前記先頭ページの末端までの濃淡をドット毎に特定するドット制御データの空白を埋めるダミーデータを含んでもよい。
この構成は、１ページ分のドット制御データを有する印刷データが蓄積されるまで印刷データをプリンターに送信しないスプーラーの仕様を想定している。このような仕様を有するスプーラーであっても、先頭ページの所定位置から末端までのドット制御データの空白を埋めるダミーデータを先頭印刷データに含めることによって、印刷対象の１ページ全体に対応する印刷データを生成する前にスプーラーからプリンターに先頭印刷データを送信させることが可能になる。このため、１ページ分のドット制御情報を有する印刷データが蓄積されるまで印刷データをプリンターに送信しないスプーラーを介して印刷データがプリンターに送信される場合には、印刷要求が発生してから先頭ページ分の印刷が完了するまでに要する時間をさらに短縮することができる。特に印刷データ生成手段においてハーフトーン変換を施した印刷データを生成する場合には、印刷データの生成に時間がかかるため有効である。ダミーデータとしては、ドット毎に階調値を持つ形式でもよいし、先頭ページの所定位置から末端までの領域について一定の階調値を持つ形式でもよい。またダミーデータが示す階調値は"白"を意味する値であってもよいし、"白"以外のランダムな色を意味する値であってもよいが、一定の階調値にすることによって、プリンターに印刷データを圧縮して転送する場合には、圧縮率を高めることができる。
【０００８】
なお，請求項に記載された各手段の機能は，構成自体で機能が特定されるハードウェア資源，プログラムにより機能が特定されるハードウェア資源，又はそれらの組み合わせにより実現される。また，これら各手段の機能は，各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。さらに，本発明は方法としても，コンピュータープログラムとしても，そのプログラムの記録媒体としても成立する。むろん，そのコンピュータプログラムの記録媒体は，磁気記録媒体であってもよいし光磁気記録媒体であってもよいし，今後開発されるいかなる記録媒体であってもよい。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施例にかかる印刷システムを示すブロック図である。
【図２】本発明の一実施例にかかるフローチャートである。
【図３】本発明の一実施例にかかるフローチャートである。
【図４】本発明の一実施例にかかるフローチャートである。
【図５】本発明の一実施例にかかる模式図である。
【図６】本発明の一実施例にかかるシーケンスチャートである。
【発明を実施するための形態】
【００１０】
以下，本発明の実施例を添付図面を参照しながら説明する。尚，各図において対応する構成要素には同一の符号が付され，重複する説明は省略される。
１．構成
１−１．全体構成
図１に本発明の一実施例としての印刷システムを示す。この印刷システムはプリンター１と印刷制御装置２とを備えている。プリンター１は，印刷媒体としてのカット紙にインクを定着させることによって画像を形成するシリアル型インクジェットプリンターである。したがってプリンター１は，主走査方向へ画像を形成する印刷部１０と，カット紙Ｐを積載する積載部３０と，カット紙Ｐを積載部３０から取り出して副走査方向に搬送する媒体搬送部２０と，印刷部１０および媒体搬送部２０を制御する制御部４０とを備えている。印刷制御装置２は，プリンター１を制御するためのプリンター制御プログラム６ｂとＯＳがインストールされたＰＣ（Personal Computer）である。印刷制御装置２は，ＣＰＵ３，ＲＡＭ６，入出力部４（Ｉ／Ｏ），ハードディスク装置（ＨＤＤ）５およびこれらを接続するバスを備えている。印刷制御装置２とプリンター１とは，ＵＳＢケーブルやＬＡＮケーブルや無線ＬＡＮ等によって接続される。
【００１１】
１−２．プリンターの構成
積載部３０は，積み重ねられた複数のカット紙Ｐを保持するための部材で構成される。
媒体搬送部２０は，中継ローラー２１ａ，２１ｂ，給紙ローラー２２，副走査ローラー１７ａ，１７ｂ，１７ｃ，１７ｄ，電動機２６，モータードライバー４５，ガイド２５等を備えている。給紙ローラー２２は，積載部３０から最上部のカット紙Ｐを１枚ずつ取り出してカット紙Ｐをその先端が中継ローラー２１ａ，２１ｂに到達するまで搬送するためのローラーである。中継ローラー２１ａ，２１ｂは，積載部３０から給紙ローラー２２によって搬送されたカット紙Ｐを副走査ローラー１７ｃ，１７ｄが保持できる位置まで搬送するローラーである。モータードライバー４５は電動機２６を駆動する回路である。電動機２６は，給紙ローラー２２と中継ローラー２１ａ，２１ｂと副走査ローラー１７ｂ，１７ｄとを同時に回転させる。ガイド２５は中継ローラー２１ａ，２１ｂと給紙ローラー２２によって搬送されるカット紙Ｐを副走査ローラー１７ｃ，１７ｄが保持できる位置まで案内する形態を有する壁である。副走査ローラー１７ａ，１７ｂ，１７ｃ，１７ｄは積載部３０から取り出され中継ローラー２１ａ，２１ｂによって搬送されたカット紙Ｐを副走査方向に搬送する。
【００１２】
印刷部１０は，記録ヘッド１１，インクタンク１２，キャリッジ１３，ガイド１４，無端ベルト１５，電動機１６，ヘッドコントローラー４６，モータードライバー４７，プラテン１９，紙検出センサー１８等で構成され，印刷データに基づいてカット紙に対して印刷を実行する。記録ヘッド１１は，ピエゾ方式やサーマル方式といった周知のインク吐出機構を備え，積載部３０から供給されたカット紙Ｐに対してインクをノズルから吐出して定着させる。インクタンク１２は，記録ヘッド１１に供給されるインクを色別に貯蔵する容器である。キャリッジ１３は，インクタンク１２および記録ヘッド１１を搭載して往復移動する支持部材である。ガイド１４は，キャリッジ１３の移動を主走査方向に案内する棒状部材である。無端ベルト１５は，図示しないプーリーに架け渡され，キャリッジ１３を紙面垂直方向に牽引する。電動機１６は無端ベルト１５が架け渡されているプーリーを回転させる。モータードライバー４７は電動機１６を駆動する回路である。プラテン１９は，記録ヘッド１１の直下に設けられ，カット紙Ｐを記録ヘッド１１に対して位置決めする棒状部材である。紙検出センサー１８は，プラテン１９の上流側の近傍に設けられた光センサーである。紙検出センサー１８は図示しない発光部と受光部とを備え，発光部から受光部までの光路をカット紙Ｐが遮ることにより，カット紙の先端が紙検出センサー１８の光路に到達したことを検出する。ヘッドコントローラー４６は１バンド分の印刷データに基づいて記録ヘッド１１を駆動する回路である。ここでいうバンドは、記録ヘッド１１が主走査方向に移動することによって印刷可能な領域である。モータードライバー４５とヘッドコントローラー４６とはバンド単位で同期して作動する。具体的には、ヘッドコントローラー４６は１バンド分のインク吐出動作を終了すると制御部４０に同期信号を出力する。同期信号を取得した制御部４０は対応する同期信号をモータードライバー４５およびモータードライバー４５に出力する。同期信号を取得したモータードライバー４７は主走査方向の基準位置（ホームポジション）に記録ヘッド１１が移動するように電動機１６を駆動する。同期信号を取得したモータードライバー４５は１バンドの幅だけカット紙Ｐが副走査方向に移動するように電動機２６を駆動する。
【００１３】
制御部４０は，図示しないＣＰＵ（Central Processing Unit），メインメモリ，不揮発性メモリ，入出力部等で構成されるコンピューターを含む。不揮発性メモリには印刷部１０および媒体搬送部２０を制御するための印刷制御プログラムが記憶されている。ＣＰＵはメインメモリにロードされる印刷制御プログラムを実行するプロセッサである。メインメモリの一部は印刷制御装置２から順次転送される印刷データを一時記憶するバッファ４０ａとして利用される。このように構成された制御部４０はカット紙１枚分の印刷データがバッファ４０ａに蓄積される度にカット紙１枚分の印刷を印刷部１０に実行させる。
【００１４】
図２は印刷制御プログラムによって制御される印刷管理処理の流れを示すフローチャートである。印刷管理処理はバッファ４０ａへの印刷データの蓄積が開始されると起動する。プリンター制御プログラム６ｂによって生成される印刷データには、ページの先頭を示すページ先頭コマンド、ページの末端を示すページ末端コマンド、バンドの区切りを示すバンド先頭コマンドおよびバンド末端コマンド、インク吐出タイミング毎に各ノズルから吐出するインクの量を示すドット制御データ、後続のコマンドを無効にするスキップコマンド、後続のコマンドを有効にする復帰コマンド等が含まれる。
【００１５】
印刷データがバッファ４０ａに格納されると、制御部４０は、格納された印刷データのコマンドを先頭から順に読み込む（Ｓ１００）。
読み込んだコマンドがジョブ終了コマンドである場合（Ｓ１０１で偽判定の場合）、制御部４０は印刷管理処理を終了する。
読み込んだコマンドがジョブ終了コマンドでもページ末端コマンドでもない場合（Ｓ１０２で偽判定の場合）、制御部４０は、ステップＳ１００の処理に戻り、次のコマンドを読み込む。
【００１６】
読み込んだコマンドがページ末端コマンドである場合、制御部４０は１ページ分の印刷制御処理を実行する（Ｓ１０３）。具体的には、制御部４０は、ページ末端コマンドを読み込むと、モータードライバー４５を制御してカット紙Ｐの先端が紙検出センサー１８に到達し、さらに記録ヘッド１１が先頭バンドの画像をカット紙Ｐの所定領域に記録できる位置までカット紙Ｐを搬送する。先頭バンドの画像を記録できる位置にカット紙Ｐが到達すると、制御部４０はモータードライバー４７を制御して記録ヘッド１１を主走査方向に移動させつつ１バンド分の印刷データをヘッドコントローラー４６に転送して記録ヘッド１１からインクを吐出させることにより印刷部１０に１バンドの画像をカット紙Ｐに形成させる処理と、モータードライバー４５を制御して媒体搬送部２０にカット紙Ｐを１バンドの幅だけ副走査方向に搬送させる処理とを交互に繰り返す。
【００１７】
図３は、制御部４０による印刷制御処理の実行によってヘッドコントローラー４６に転送される印刷データに基づいてヘッドコントローラー４６によって実行されるヘッド駆動処理の流れを示すフローチャートである。
まずヘッドコントローラー４６は印刷データの先頭から順に１つのコマンドを読み込む（Ｓ２００）。
次にヘッドコントローラー４６は読み込んだコマンドがスキップコマンドであるか否かを判定する（Ｓ２０１）。
【００１８】
読み込んだコマンドがスキップコマンドでない場合、ヘッドコントローラー４６は読み込んだコマンドに基づいて記録ヘッド１１の吐出動作を制御する（Ｓ２０２）。具体的には、ヘッドコントローラー４６は、バンド末端コマンドを読み込むと、制御部４０にホームポジション復帰信号を出力して記録ヘッド１１をホームポジションに移動させる。またヘッドコントローラー４６は、バンド先頭コマンドを読み込むと、ホームポジションから主走査方向に記録ヘッド１１の移動を開始させる。またヘッドコントローラー４６は、読み込んだコマンドがドット制御データであれば、記録ヘッド１１の主走査方向の位置に応じて図示しないエンコーダーから出力される主走査位置信号に応じてドット制御コマンドに対応するヘッド駆動信号を記録ヘッド１１に出力する。またヘッドコントローラー４６は、読み込んだコマンドがバンド末端コマンドまたはページ末端コマンドであれば、制御部４０に通知してカット紙Ｐを副走査方向に搬送させる。
【００１９】
読み込んだコマンドがスキップコマンドである場合、ヘッドコントローラー４６は復帰コマンドまでコマンドを順次読み飛ばす。すなわちヘッドコントローラー４６は、スキップコマンドに続くコマンドを順に１つずつ読み込み（Ｓ２０３），読み込んだコマンドが復帰コマンドであるか否かを判定する（Ｓ２０４）。
【００２０】
読み込んだコマンドが復帰コマンドでない場合、コマンドに対応する処理を実行することなく、ステップＳ２０３の処理に戻る。このようにヘッドコントローラー４６がスキップコマンド後のコマンドを復帰コマンドまで読み飛ばしている期間中は、記録ヘッド１１の吐出動作は停止し、バンド末端コマンドに応じた同期信号が出力されないため副走査方向へのカット紙の搬送動作も起こらない。そして、ヘッドコントローラー４６が読み込んだコマンドが復帰コマンドである場合、ステップＳ２００の処理に戻る。
【００２１】
１−３．印刷制御装置の構成
ＨＤＤ５にはＲＡＭ６にロードされＣＰＵ３によって実行されるアプリケーションプログラム６ａ，プリンター１に対応するプリンター制御プログラム６ｂ，スプーラー６ｃ等の各種のプログラムがインストールされている。本実施例においては，アプリケーションプログラム６ａによって印刷対象のデータファイル６ｄが生成されるものとする。スプーラー６ｃはＯＳ（Operating System）のモジュールであって，プリンター制御プログラム６ｂによって生成された印刷データをＲＡＭ６に保持し，プリンター１からの要求に応じてプリンター１に送信する。
【００２２】
２．印刷制御方法
図４は上述した印刷管理処理とヘッド制御処理を実行するプリンター１に対応したプリンター制御プログラム６ｂによって制御される印刷データの生成処理を示すフローチャートである。プリンター制御プログラム６ｂを実行する印刷制御装置２のＣＰＵ３は，ユーザーの操作に応じてアプリケーションプログラム６ａから印刷要求とともに印刷対象を取得すると，印刷データの生成処理を開始する。
【００２３】
印刷要求を取得すると，プリンター制御プログラム６ｂは印刷対象に基づいて先頭から順に印刷対象１バンド分の印刷データを生成する（Ｓ３００）。すなわち印刷データの生成は印刷対象の先頭から順にバンド単位で実行される。プリンター制御プログラム６ｂによって生成された印刷データはスプーラー６ｃに引き渡される。
【００２４】
図５は印刷対象と印刷データの対応関係を示す模式図である。図５においては、１ページ目にアルファベット"Ａ"が配置された印刷対象Ｄ０を７バンドに分割して印刷する例を示している。プリンター制御プログラム６ｂは印刷データＤ１、Ｄ２、・・・、Ｄ７を生成するとき、インクの吐出量によって決まる画像の濃淡をドット毎に制御するドット制御データｄ１１、ｄ２２、ｄ７７、印刷ジョブの先頭を示すジョブ開始コマンドｃ１０、印刷ジョブの末端を示すジョブ終了コマンド、ページ区切りコマンドとしてのページ先頭コマンドｃ１１、ｃ２１，ｃ７１、ページ区切りコマンドとしてのページ末端コマンドｃ１３、ｃ２４，ｃ７４、バンド先頭コマンド（図示省略）、バンド末端コマンド（図示省略）に加えて、スキップコマンドｃ１２、ｃ２３と復帰コマンドｃ２２、ｃ７２を印刷データに含める。スキップコマンドは既に説明したように復帰コマンドまで後続の印刷データをプリンター１のヘッドコントローラー４６に読み飛ばさせるコマンドである。スキップコマンドｃ１２、ｃ２３はバンド末端コマンドの直後に挿入される。復帰コマンドｃ２２、ｃ７２は対応するバンド先頭コマンドの直前に挿入される。具体的には次の通りである。
【００２５】
先頭のバンドを処理するとき、プリンター制御プログラム６ｂは印刷対象Ｄ０の先頭ｐ００からバンドｄ０１の末端ｐ０１までの領域をレンダリングし、色変換し、ハーフトーン変換し、インクの吐出順に配列を変換することによって、印刷対象Ｄ０のｐ００からｐ０１までに対応するドット制御データｄ１１を生成する。ドット制御データｄ１１は印刷ジョブの先頭ページの先頭バンドのドット制御データであるため、プリンター制御プログラム６ｂはジョブ開始コマンドｃ１０とページ先頭コマンドｃ１１と図示しないバンド先頭コマンドをドット制御データｄ１１の前に挿入する。そしてプリンター制御プログラム６ｂはドット制御データｄ１１の直後に図示しないバンド末端コマンドとスキップコマンドｃ１２を順に挿入し、スキップコマンドｃ１２の後方にページ末端コマンドｃ１３を挿入する。ページ末端コマンドｃ１３を挿入することによって、印刷対象Ｄ０の先頭ｐ００からバンドｄ０１の末端ｐ０１までの領域に対応する印刷データＤ１は形式的にカット紙１枚に対応する１ページ分の印刷データになる。
【００２６】
後続のバンドｄ０２を処理するとき、プリンター制御プログラム６ｂは印刷対象Ｄ０のバンドｄ０２の先頭ｐ０２から末端ｐ０３までの領域をレンダリングし、色変換し、ハーフトーン変換し、インクの吐出順に配列を変換することによって印刷対象Ｄ０のｐ０２からｐ０３までに対応するドット制御データｄ２２を生成する。そしてプリンター制御プログラム６ｂはドット制御データｄ２２の前方にページ先頭コマンドｃ２１を挿入し、ドット制御データｄ２２の先頭ｐ２２の直前に復帰コマンドｃ２２と図示しないバンド先頭コマンドを順に挿入し、ドット制御データｄ２２の直後にバンド末端コマンドとスキップコマンドｃ２３を順に挿入し、スキップコマンドｃ２２の後方にページ末端コマンドｃ２４を挿入する。ページ先頭コマンドｃ２１とページ末端コマンドｃ２４を挿入することによって、印刷対象Ｄ０のバンドｄ０２に対応する印刷データＤ２は形式的にカット紙１枚に対応する１ページ分の印刷データになる。後続のバンドｄ０３、ｄ０４，ｄ０５，ｄ０６についても同様に、ページ先頭コマンド、バンド先頭コマンド、復帰コマンド、ドット制御データ、スキップコマンド、バンド末端コマンドおよびページ末端コマンドを含む印刷データが生成される。
【００２７】
末端のバンドｄ０７を処理するとき、プリンター制御プログラム６ｂはバンドｄ０７に対応するドット制御データｄ７７の前方にページ先頭コマンドｃ７１を挿入し、ドット制御データｄ７７の直前に復帰コマンドｃ７２とバンド先頭コマンドを挿入し、ドット制御データｄ７７の直後にバンド末端コマンドを挿入するが、バンド末端コマンドの直後にはスキップコマンドを挿入せず、ドット制御データｄ７７の直後にバンド末端コマンドとページ末端コマンドｃ７４を順に挿入する。また印刷対象Ｄ０が最終ページでもある場合には、ページ末端コマンドｃ７４の後に図示しないジョブ終了コマンドが挿入される。
【００２８】
プリンター制御プログラム６ｂは、印刷データＤ１、Ｄ２のスキップコマンドｃ１２、ｃ２３からページ末端コマンドｃ１３、ｃ２４の間と印刷データＤ２、Ｄ３のページ先頭コマンドｃ２１から復帰コマンドの間とにドット制御データの空白を埋めるダミーデータｄ１２、ｄ２３、ｄ２１，ｄ７１を挿入してもよい。すなわち、プリンター制御プログラム６ｂによって生成される１バンド分の印刷データは、ページ先頭コマンドで始まりページ末端コマンドで終わるため、形式的には１ページ分の印刷データであるが、１ページ分のドット制御データを含んでいない。したがって、スプーラー６ｃの仕様によっては印刷データＤ１、Ｄ２、Ｄ７を各１ページ分の印刷データとして扱わないことも考えられる。そして仮にスプーラー６ｃが印刷対象１ページ分の印刷データを取得するまで当該ページの印刷データをプリンター１に送信しない場合、印刷データＤ１、Ｄ２、Ｄ７のプリンター１への送信が遅れることになる。ダミーデータｄ１２，ｄ２１，ｄ２３，ｄ７１を挿入すれば、このようなスプーラー６ｃであっても、印刷データＤ１、Ｄ２，Ｄ７の生成直後にこれらをプリンター１に順次送信させることができる。
【００２９】
このようなダミーデータｄ１２，ｄ２１，ｄ２３，ｄ７１は、スキップコマンドｃ１２，ｃ２３の存在によってヘッドコントローラー４６では無視されるため、どのような内容であったもよい。ただし、ダミーデータｄ１２，ｄ２１，ｄ２３，ｄ７１の階調値を一定の固定値に設定することによってダミーデータｄ１２、ｄ２１，ｄ２３，ｄ７１の圧縮率を高めることが可能になる。
【００３０】
印刷対象１バンド分の印刷データを生成すると、プリンター制御プログラム６ｂは印刷対象の注目ページ内の全てのバンドについて印刷データの生成が終了したか否かを判定する（Ｓ３０１）。終了していない場合、上述したステップＳ３００の処理を次のバンドについて繰り返す。
【００３１】
注目ページ内の全てのバンドについて印刷データの生成が終了した場合、プリンター制御プログラム６ｂは印刷対象の全てのページについて印刷データの生成が終了したか否かを判定する（Ｓ３０２）。終了していない場合、次のページの先頭バンドについて上述したステップＳ３００の処理を繰り返す。印刷対象の全てのページについて印刷データの生成が終了すると、印刷データの生成処理を終了する。
【００３２】
以上述べたようにしてプリンター制御プログラム６ｂによって印刷データが生成されるとき、スプーラー６ｃは１ページ分の印刷データがＲＡＭ６に生成されると当該１ページ分の印刷データを圧縮してプリンター１に送信する。既に述べたように、スプーラー６ｃがドット制御データが示すドットの数によって１ページ分の印刷データが生成されたか否かを判定する場合には、それぞれ実質的には１バンド分だけの印刷データを含んでいる印刷データＤ１，Ｄ２，Ｄ７にはダミーデータｄ１２、ｄ２１，ｄ２３，ｄ７１を含めることが望ましい。しかし、ページ区切りコマンドとしてのページ末端コマンドやページ先頭コマンドに基づいてスプーラー６ｃが１ページ分の印刷データが生成されたか否かを判定する場合には、ダミーデータｄ１２、ｄ２１，ｄ２３，ｄ７１を印刷データＤ１，Ｄ２，Ｄ７に含める必要はない。
【００３３】
図６は上述した印刷データ生成処理と印刷管理処理とヘッド制御処理の流れを示すシーケンスチャートである。
今、アプリケーションプログラム６ａがデータファイル６ｄを印刷対象とする印刷要求を発生させたとする。すると、プリンター制御プログラム６ｂは印刷要求とともにデータファイル６ｄを取得して１ページ目の先頭バンドについてスキップコマンドおよびページ末端コマンドを含む印刷データを生成する（Ｓ４０１）。
【００３４】
スプーラー６ｃはプリンター制御プログラム６ｂによって先頭バンドに対応するとともにページ末端コマンドを含む印刷データが生成されると、１ページ分の印刷データが生成されたと判定し、先頭バンドに対応する印刷データをプリンター１に送信する（Ｓ５０１）。
【００３５】
プリンター１の制御部４０は、スプーラー６ｃから受信する先頭バンドに対応する印刷データをバッファ４０ａに蓄積しながら印刷データのコマンドを読み込む。ページ末端コマンドを読み込むと（Ｓ６０１）、制御部４０は１ページ分（カット紙１枚分）の印刷データを取得したと判定し、バッファに蓄積された先頭バンドに対応する印刷データをヘッドコントローラー４６に転送する（Ｓ６０２）。
【００３６】
ヘッドコントローラー４６は、制御部４０から転送された印刷データを順次読み込みながら記録ヘッド１１を制御し、先頭バンドについて印刷を実行する（Ｓ７０１）。
先頭バンドの末端まで印刷が実行されるとバンド末端コマンドに応じて記録ヘッド１１がホームポジションに移動し、ヘッドコントローラー４６は、バンド末端コマンドの直後のスキップコマンドを読み込む（Ｓ７０２）。すると、ヘッドコントローラー４６は後続の印刷データを復帰コマンドまで読み飛ばすため、印刷動作は一時停止することになる。なお、スキップコマンド直前のバンド末端コマンドに応じて記録ヘッド１１はホームポジションに移動する。
【００３７】
一方、プリンター制御プログラム６ｂは、先頭バンドに対応する印刷データを生成した直後から次の第２バンドに対応する印刷データを生成する（Ｓ４０２）。このとき生成される第２バンドに対応する印刷データには、ページ開始コマンド、復帰コマンド、スキップコマンドおよびページ末端コマンドが挿入される。
【００３８】
スプーラー６ｃはプリンター制御プログラム６ｂによってページ末端コマンドを含む第２バンドに対応する印刷データが生成されると、１ページ分の印刷データが生成されたと判定し、第２バンドに対応する印刷データをプリンター１に送信する（Ｓ５０２）。
プリンター１の制御部４０は、スプーラー６ｃから受信する第２バンドに対応する印刷データをバッファ４０ａに蓄積しながら印刷データのコマンドを順に読み込む。なお、スプーラー６ｃからバッファ４０ａへの印刷データの転送は、バッファ４０ａの空き容量に応じて進行する。
【００３９】
ページ末端コマンドを読み込むと（Ｓ６０３）、制御部４０は１ページ分の印刷データを取得したと判定し、バッファに蓄積された第２バンドに対応する印刷データをヘッドコントローラー４６に転送する（Ｓ６０４）。
ヘッドコントローラー４６は、制御部４０から転送された第２バンドの印刷データを復帰コマンドまで順次読み込むが、復帰コマンドまでに読み込むページ先頭コマンドやダミーデータについてはコマンドに対応する処理を実行しない。したがって、復帰コマンドが読み込まれるまでの間、記録ヘッド１１からのインク吐出、記録ヘッド１１の主走査方向への搬送、カット紙Ｐの副走査方向への搬送のいずれもが停止する。
【００４０】
復帰コマンドを読み込むと（Ｓ７０３）、復帰コマンド直後のバンド先頭コマンドに応じて記録ヘッド１１が主走査方向への移動を開始し、ヘッドコントローラー４６は後続のドット制御データを読み込みながら記録ヘッド１１を制御し、第２バンドについて印刷を実行する（Ｓ７０４）。なお、印刷データの生成速度は印刷の実行速度よりも速いため、第２バンドの印刷は、実質的に、先頭バンドの印刷が完了した直後に開始されることになる。
【００４１】
第２バンドの末端まで印刷が実行されると、ヘッドコントローラー４６は、第２バンドの末端を示すバンド末端コマンドの直後のスキップコマンドを読み込む（Ｓ７０５）。すると、ヘッドコントローラー４６は後続の印刷データを復帰コマンドまで読み飛ばすため、印刷動作は再び停止することになる。
【００４２】
以後は同様に、プリンター制御プログラム６ｂによって印刷対象のバンド毎に印刷データが生成され（Ｓ４０３）、印刷対象のバンド毎に印刷データがスプーラー６ｃからプリンター１に送信され（Ｓ５０３）、プリンター１の制御部４０がページ末端コマンドを検出する度に（Ｓ６０５）、印刷データがヘッドコントローラー４６に転送され（Ｓ６０６）、ヘッドコントローラー４６がスキップコマンドを読み込む度に（Ｓ７０８）印刷が停止し、ヘッドコントローラー４６が復帰コマンドを読み込む度に（Ｓ７０６）印刷が再開される（Ｓ７０７）。
【００４３】
以上説明した印刷制御方法によると、プリンター１は１ページ分の印刷データを取得するまで印刷を開始しない仕様であるにもかかわらず、印刷対象のページ区切りに対応していないページ末端コマンドおよびページ先頭コマンドと、スキップコマンドと、復帰コマンドとを含む印刷データを印刷制御装置２において生成することによって、ページ内の先頭バンドに対応する印刷データを取得させた時点でプリンター１に印刷を開始させることができる。したがって、印刷要求の発生から１ページ目の印刷開始までに要する時間を短縮することができる。また、印刷データの生成速度は印刷の実行速度よりも速いため、先行バンドに続く後続バンドの印刷は、実質的に、先行バンドの印刷が完了した直後に開始されることになる。したがって、上述した印刷制御方法によると、印刷要求が発生してから印刷対象全体の印刷が完了するまでに要する時間も短縮することができる。
また、印刷データにダミーデータを追加することによって、スプーラーの仕様にかかわらず印刷対象のバンド単位で印刷制御装置２からプリンター１へ印刷データを送信させることができる。
【００４４】
３．他の実施形態
尚，本発明の技術的範囲は，上述した実施例に限定されるものではなく，本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
例えば，上記実施例ではシリアル型インクジェットプリンターに本発明を適用する例について説明したが，本発明はラインプリンターにも，トナーを色剤とするページプリンターにも適用することもできる。
【００４５】
また、スキップコマンドは復帰コマンドまでの後続の印刷データが無効になるコマンドであればどのような形態であってもよい。また復帰コマンドはスキップコマンドによるコマンドの無効化処理の終点を特定するコマンドであればどのような形態であってもよい。
また、印刷制御装置２において生成される印刷データがハーフトーン変換されていなくてもよい。この場合、プリンター１の制御部においてハーフトーン変換やドット制御データの配列変換が実施されることになる。
【００４６】
また、印刷対象を１ページ目のどこで分割して印刷データを生成するかは設計事項であって、１ページを何分割してもよいし、１ページを不均等に分割してもよいし、分割単位をバンドに合わせなくてもよい。例えば、１ページ目の先頭バンドまでの先頭印刷データを生成してプリンターに取得させるとともに、その後、１ページ目の末端までの後続印刷データを生成してからプリンターに後続印刷データを取得させてもよい。
【符号の説明】
【００４７】
１…プリンター，２…印刷制御装置，６ａ…アプリケーションプログラム，６ｂ…プリンター制御プログラム，６ｃ…スプーラー，６ｄ…データファイル，１０…印刷部，１１…記録ヘッド，１２…インクタンク，１３…キャリッジ，１４…ガイド，１５…無端ベルト，１６…電動機，１７ａ，１７ｂ，１７ｃ，１７ｄ…副走査ローラー，１８…紙検出センサー，１９…プラテン，２０…媒体搬送部，２１ａ，２１ｂ…中継ローラー，２２…給紙ローラー，２５…ガイド，２６…電動機，３０…積載部，４０…制御部，４０ａ…バッファ，４５…モータードライバー，４６…ヘッドコントローラー，４７…モータードライバー，ｃ１０…ジョブ開始コマンド，ｃ１１…ページ先頭コマンド，ｃ１２…スキップコマンド，ｃ１３…ページ末端コマンド，ｃ２１…ページ先頭コマンド，ｃ２２…スキップコマンド，ｃ２２…復帰コマンド，ｃ２３…スキップコマンド，ｃ２４…ページ末端コマンド，ｃ７１…ページ先頭コマンド，ｃ７２…復帰コマンド，ｃ７４…ページ末端コマンド，Ｄ０…印刷対象，ｄ０１…バンド，ｄ０２…バンド，ｄ０３…バンド，ｄ０７…バンド，Ｄ１，Ｄ２，Ｄ７…印刷データ，ｄ１１…ドット制御データ，ｄ１２，ｄ２１，ｄ２３，ｄ７１…ダミーデータ，ｄ２２…ドット制御データ，ｄ７７…ドット制御データ，Ｐ…カット紙
【図１】
0005672085.tif 000002
【図２】
0005672085.tif 000003
【図３】
0005672085.tif 000004
【図４】
0005672085.tif 000005
【図５】
0005672085.tif 000006
【図６】
0005672085.tif 000007