(57)【要約】【課題】画像データの転送効率を高める。【解決手段】ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置は、前記印刷画像データの各ラインに含まれる無色部を判定する判定手段と、前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送手段と、を備える。【選択図】図３
2012064044.tif 000002
【特許請求の範囲】
【請求項１】
ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を第１の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置であって、
前記印刷画像データの各ラインに含まれる無色部を判定する判定手段と、
前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送手段と、
を備えることを特徴とする印刷画像データ生成装置。
【請求項２】
前記各ラインは、複数のブロックよりなり、
前記判定手段は、ブロック単位で前記無色部を判定することを特徴とする請求項１に記載の印刷画像データ生成装置。
【請求項３】
前記判定手段は、無色のブロックが予め定められた閾値以上の数の無色部が連続する場合、当該連続する無色のブロックを前記無色部と判定することを特徴とする請求項２に記載の印刷画像データ生成装置。
【請求項４】
前記判定手段は、前記データ生成部から前記コントローラへの前記印刷画像データの転送状況に応じて前記閾値を調整することを特徴とする請求項３に記載の印刷画像データ生成装置。
【請求項５】
請求項１〜４のいずれか一つに記載の印刷画像データ生成装置と、
前記コントローラと、
前記コントローラが受信した印刷画像データの印刷を実行するプリンタエンジンと、
を備えることを特徴とする印刷装置。
【請求項６】
ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置の印刷制御方法であって、
前記印刷画像データの各ラインに含まれる無色部を判定する判定ステップと、
前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送ステップと、
を含むことを特徴とする印刷制御方法。
【請求項７】
ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置を機能させるためのプログラムであって、
前記印刷画像データの各ラインに含まれる無色部を判定する判定処理と、
前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送処理と、
を前記印刷画像データ生成装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷画像データ生成装置、印刷装置、印刷制御方法およびプログラムに関する。
【背景技術】
【０００２】
従来から、ホスト装置からの印刷要求を、印刷装置とは別途に設けられた上位装置で一旦受信し、受信した印刷要求に従い上位装置が生成した印刷画像データをデータ転送路を介して印刷装置に送信し、印刷装置にて当該印刷画像データの印刷を行うようにした印刷システムが知られている。
【０００３】
さらに、このような印刷システムにおいて、上位装置と印刷装置とを接続するデータ転送路を、印刷画像データを転送する第１のデータ転送路と、印刷画像データに対する印刷制御に関する制御情報を転送する第２のデータ転送路とに分離して、上位装置から印刷装置に対するデータ転送速度の高速化を図った技術が知られている。
【０００４】
たとえば特許文献１には、印刷する画像をバンドに分けて、描画・展開を行い、印字されない空白領域に対しては空白部の画像データの代わりに空白領域情報をプリンタエンジンに転送することにより、転送する画像データ量を減らし、高速に画像データを転送する技術が開示されている。また、特許文献２には、画像データにデータ圧縮技術を利用し、圧縮データにて転送データ量を減らして転送効率化を図る技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、制御情報と印刷画像データとを分離し、個別の転送路で転送する技術においては、空白領域のデータを転送しない場合でも、１ページ分のメモリ領域を確保し、データ転送を行う必要があった。すなわち、１ページのメモリの大きさが各色共通の印刷制御情報として送信されるため、色毎に空白領域の位置や大きさがバラバラであっても、一定量のメモリ領域を確保しなければならない。この結果、確保したメモリ領域を早く解放することができず、上位装置から印刷装置への印刷画像データの転送効率の向上が困難であるという問題が存在した。
【０００６】
本発明は、上記に鑑みてなされたものであって、画像データの転送効率を高めることが可能な印刷画像データ生成装置、印刷装置、印刷制御方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
かかる目的を達成するために、本発明による印刷画像データ生成装置は、ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置であって、前記印刷画像データの各ラインに含まれる無色部を判定する判定手段と、前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送手段と、を備えることを特徴とする。
【０００８】
また、本発明による印刷装置は、上記の印刷画像データ生成装置と、前記コントローラと、前記コントローラが受信した印刷画像データの印刷を実行するプリンタエンジンと、を備えることを特徴とする。
【０００９】
また、本発明による印刷制御方法は、ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置の印刷制御方法であって、前記印刷画像データの各ラインに含まれる無色部を判定する判定ステップと、前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送ステップと、を含むことを特徴とする。
【００１０】
また、本発明によるプログラムは、ホストより入力されたデータから生成した印刷画像データを第１の転送線を介して印刷装置内のプリンタエンジンへ転送するともに、該印刷画像データの印刷を制御する制御情報を前記所定の転送線とは異なる第２の転送路を介して前記印刷装置内部のコントローラへ転送する印刷画像データ生成装置を機能させるためのプログラムであって、前記印刷画像データの各ラインに含まれる無色部を判定する判定処理と、前記各ラインにおいて判定された前記無色部を転送対象から除外しつつ前記各ラインを前記コントローラへ転送する転送処理と、を前記印刷画像データ生成装置に実行させる。
【発明の効果】
【００１１】
本発明によれば、印刷画像データのラインに含まれる無色部を転送対象から除外されるため、画像データの転送効率を高めることができる印刷画像データ生成装置、印刷装置、印刷制御方法およびプログラムを実現することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の実施形態に適用可能な印刷システムの一例の構成を示すブロック図である。
【図２】図２は、図１に示す上位装置の一例の構成を示すブロック図である。
【図３】図３は、図１に示す上位装置の機能ブロック図である。
【図４】図４は、図１に示すプリンタ装置の一例の構成を示すブロック図である。
【図５】図５は、図４に示すデータ管理部の一例の構成を示すブロック図である。
【図６】図６は、本実施の形態による仮想メモリについて説明するための略線図である。
【図７】図７は、本実施の形態による画像出力部の一例の構成を示す図である。
【図８】図８は、本実施形の態に適用可能な用紙の搬送系を含めたプリンタ装置の一例の構造を概略的に示す図である。
【図９】図９は、本実施の形態における印刷画像データの一例を示す図である。
【図１０Ａ】図１０Ａは、本実施の形態におけるバンド分割処理を説明するための図である（その１）。
【図１０Ｂ】図１０Ｂは、本実施の形態におけるバンド分割処理を説明するための図である（その２）。
【図１０Ｃ】図１０Ｃは、本実施の形態におけるバンド分割処理を説明するための図である（その３）。
【図１１】図１１は、色毎にビットマップサイズが異なる場合に制御情報通信部とプリンタコントローラとの間で送受信される制御情報の一例を示す図である。
【図１２】図１２は、色毎のビットマップサイズが同じ場合に制御情報通信部とプリンタコントローラとの間で送受信される制御情報の一例を示す図である。
【図１３】図１３は、本実施の形態による印刷処理の流れを示す概略フローチャートである（その１）。
【図１４】図１４は、本実施の形態による印刷処理の流れを示す概略フローチャートである（その２）。
【図１５】図１５は、本実施の形態によるデータ転送準備処理の概略フローチャートである。
【図１６】図１６は、図１５のステップＳ２２５に示す１ライン処理の概略フローチャートである。
【図１７】図１７は、図１６のステップＳ２３５に示す有色処理の概略フローチャートである。
【図１８】図１８は、図１６のステップＳ２３２に示す無色処理の概略フローチャートである。
【図１９】図１９は、本実施の形態によるデータ転送先位置特定処理の概略フローチャートである。
【図２０】図２０は、本実施の形態において３ライン分のデータ転送を行う場合の動作を説明するための図である（その１）。
【図２１】図２１は、本実施の形態において３ライン分のデータ転送を行う場合の動作を説明するための図である（その２）。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照して、本発明に係る印刷システムの一実施形態を詳細に説明する。本実施の形態は、印刷画像データを生成するＤＦＥサーバなどの上位装置からプリンタ本体内部のコントローラへ画像データを転送するに際して、以下のような特徴を備える。すなわち、本実施の形態では、白データを転送しないことで、データ転送量を低減させて、画像データの転送効率を高める。具体的には、印刷対象外のデータ（以下、無色データと称する）を連続して持つ領域を特定し、それ以外は印刷対象のデータ（以下、有色データと称する）として、転送先アドレス（指定アドレスともいう）とデータ転送量とを指定し、データ転送を行う。
【００１４】
つづいて、本実施形態による印刷システムが適用されるプロダクションプリンティングについて、概略的に説明する。プロダクションプリンティングでは、短時間に大量の印刷を行うことを基本的な考え方としている。そのために、プロダクションプリンティングでは、印刷の高速化を図ると共に、ジョブ管理や印刷データの管理などを効率的に行うために、印刷データの作成から印刷物の分配までの管理を行うワークフローのシステムを構築する。
【００１５】
本実施形態による印刷システムは、プロダクションプリンティングのワークフローにおける、印刷を実行する部分に関わるもので、ＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）処理と、ＲＩＰ処理により得られたビットマップデータの印刷とを別の装置で行う。ＲＩＰ処理は、印刷処理の中でも最も処理時間を要し、ＲＩＰ処理を行う装置と、印刷処理を行う装置とを分離することで、印刷の高速化が可能となる。
【００１６】
（実施形態に適用可能な印刷システムの概要）
図１は、本発明の実施形態に適用可能な印刷システムの一例の構成を示す。この印刷システムは、たとえばＤＦＥ（デジタルフロントエンド）サーバなどで構成される上位装置１０と、印刷装置としてのプリンタ装置１３とが、複数のデータ線１１と、制御線１２とで接続されて構成される。上位装置１０は、ホスト装置から供給される印刷ジョブデータに従ってＲＩＰ処理を行い、印刷画像データである各色毎のビットマップデータを作成する。それと共に、上位装置１０は、当該印刷ジョブデータやホスト装置の情報などに基づき、印刷動作を制御するための制御情報を作成する。
【００１７】
上位装置１０で作成された各色毎の印刷画像データは、複数のデータ線１１をそれぞれ介してプリンタ装置１３の図示されないプリンタエンジン部に供給される。また、上位装置１０とプリンタコントローラ１４との間で、制御線１２を介して制御情報の送受信が行われる。プリンタコントローラ１４は、この制御情報の送受信に基づきプリンタエンジン部を制御して、印刷ジョブに従った印刷を実行する。
【００１８】
印刷方式は特に限定されないが、本実施形態では、インクジェット方式により印刷用紙に対して印刷画像を形成する。また、印刷用紙は、切断可能なミシン目が所定間隔で打たれた連続紙である連帳紙（連続帳票）を用いるものとする。プロダクションプリンティングでは、印刷用紙としてこの連帳紙を用いることが多い。勿論、これに限らず、Ａ４サイズ、Ｂ４サイズなど、サイズが固定的とされたカット紙を印刷用紙として用いてもよい。なお、連帳紙において、ページは、例えば所定間隔で打たれたミシン目で挟まれる領域をいうものとする。
【００１９】
（上位装置）
図２は、上位装置１０の一例の構成を示す。バス１１００に対してＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１０３、ハードディスクドライブ（ＨＤＤ）１１０４が接続される。バス１１００に対して、さらに、外部Ｉ／Ｆ１１１０、制御情報用Ｉ／Ｆ１１１１および画像データ用Ｉ／Ｆ１１１２が接続される。バス１１００に接続されたこれら各部は、バス１１００を介して互いに通信可能とされている。
【００２０】
ＲＯＭ１１０２およびＨＤＤ１１０４は、ＣＰＵ１１０１が動作するためのプログラムが予め格納される。ＲＡＭ１１０３は、ＣＰＵ１１０１のワークメモリとして用いられる。すなわち、ＣＰＵ１１０１は、ＲＯＭ１１０２およびＨＤＤ１１０４に格納されるプログラムに従い、ＲＡＭ１１０３をワークメモリとして用いて、この上位装置１０の全体の動作を制御する。
【００２１】
外部Ｉ／Ｆ１１１０は、例えばＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に対応し、ホスト装置との通信を制御する。制御情報用Ｉ／Ｆ１１１１は、制御情報の通信を制御する。また、画像データ用Ｉ／Ｆ１１１２は、印刷画像データの通信を制御するもので、複数のチャネルを有する。例えば、上位装置１０において作成された、色Ｙ（Ｙｅｌｌｏｗ）、Ｃ（Ｃｙａｎ）、Ｍ（Ｍａｇｅｎｔａ）およびＫ（Ｂｌａｃｋ）による各色の印刷画像データは、これら複数のチャネルからそれぞれ出力される。画像データ用Ｉ／Ｆ１１１２は、高速な転送速度が要求されるため、例えばＰＣＩ  Ｅｘｐｒｅｓｓ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｂｕｓ  Ｅｘｐｒｅｓｓ）が用いられる。制御情報用Ｉ／Ｆ１１１１の方式は特に限定されないが、ここでは、画像データ用Ｉ／Ｆ１１１２と同様に、ＰＣＩ  Ｅｘｐｒｅｓｓを用いるものとする。
【００２２】
このような構成において、ホスト装置から送信された印刷ジョブデータが、上位装置１０の外部Ｉ／Ｆ１１１０に受信され、ＣＰＵ１１０１を介してＨＤＤ１１０４に格納される。ＣＰＵ１１０１は、ＨＤＤ１１０４から読み出した印刷ジョブデータに基づきＲＩＰ処理を行い、各色のビットマップデータを生成してＲＡＭ１１０３にそれぞれ書き出す。例えば、ＣＰＵ１１０１は、ＲＩＰ処理によりＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）をレンダリングして各色のビットマップデータを生成してＲＡＭ１１０３に書き出す。ＣＰＵ１１０１は、ＲＡＭ１１０３に書き出された各色のビットマップデータを圧縮符号化してＨＤＤ１１０４に一旦格納する。
【００２３】
ＣＰＵ１１０１は、例えばプリンタ装置１３において印刷動作が開始される際に、ＨＤＤ１１０４から圧縮符号化された各色のビットマップデータを読み出して圧縮符号を復号し、伸張された各色のビットマップデータをＲＡＭ１１０３にそれぞれ書き込む。そして、ＣＰＵ１１０１は、ＲＡＭ１１０３からこれら各色のビットマップデータを読み出して、各色の印刷画像データとして画像データ用Ｉ／Ｆ１１１２の各チャネルからそれぞれ出力させ、プリンタ装置１３に対して供給する。また、ＣＰＵ１１０１は、印刷動作の進行などに応じて、プリンタ装置１３との間で制御情報用Ｉ／Ｆ１１１１を介して制御情報の送受信を行う。
【００２４】
（上位装置の機能構成）
つづいて、上位装置１０の機能構成の一例を、図３を用いて詳細に説明する。上位装置１０は、データ受信部１１１と、画像データ生成部１１２と、メモリ１１３と、無色判定部１１４と、データ送信部１１５とを有する。データ受信部１１１は、不図示のホストコンピュータからデータを受け取る。画像データ生成部１１２は、データ受信部１１１で受信したデータをＲＩＰ処理することで、色毎の印刷画像データを生成する。メモリ１１３は、画像データ生成部１１２で生成した色毎の印刷画像データを保存する。無色判定部１１４は、メモリ１１３に保存された印刷画像データを読み出し、この読み出した印刷画像データ内に印刷対象でないデータである無色データ部が閾値以上連続するか否かを判定する。なお、無色判定部１１４は、上位装置１０からプリンタコントローラ１４への印刷画像データの転送状況に応じて、上記閾値の調整を行うように構成されてもよい。たとえば無色判定部１１４は、上位装置１０からプリンタコントローラ１４へ転送すべき印刷画像データのデータ量（データ転送量）が小さい（たとえば予め定めておいた閾値よりも小さい）場合は、転送すべき印刷画像データのデータ量（データ転送量）が大きい（たとえば予め定めておいた閾値よりも大きい）場合よりも、大きな値の閾値を用いるように構成されてもよい。データ送信部１１５は、無色判定部１１４の判定結果から印刷画像データ中の有色の部分を判定する有色判定部を有し、有色と判断された部分の画像データ（有色部）とをプリンタ装置１３へ転送する。制御情報通信部１１６は、同じく有色判定部を有し、有色部の画像データ上の位置を示す有色部位置情報（たとえば転送先アドレス（指定アドレス））と、有色部のデータ量を示す有色部データ量とをプリンタ装置１３のプリンタコントローラ１４へ送信する。
【００２５】
（プリンタ装置）
図４は、プリンタ装置１３の一例の構成を示す。プリンタ装置１３は、プリンタコントローラ１４およびプリンタエンジン１５を有する。プリンタコントローラ１４は、制御線１２が接続され、上位装置１０との間で制御線１２を介して制御情報の送受信を行って印刷動作の制御を行う。プリンタエンジン１５は、複数のデータ線１１ａ、１１ｂ、１１ｃおよび１１ｄがそれぞれ接続され、プリンタコントローラ１４の制御に従い、これらデータ線１１ａ、１１ｂ、１１ｃおよび１１ｄをそれぞれ介して上位装置１０から転送された各色の印刷画像データによる印刷処理を行う。
【００２６】
プリンタコントローラ１４およびプリンタエンジン１５について、より詳細に説明する。プリンタコントローラ１４は、ＣＰＵ２１および印刷制御部２２を有し、これらＣＰＵ２１と印刷制御部２２とが互いに通信可能にバス２０に接続される。バス２０には、図示されない通信Ｉ／Ｆを介して制御線１２も接続される。ＣＰＵ２１は、図示されないＲＯＭに格納されるプログラムに従い動作し、プリンタ装置１３の全体の動作を制御する。印刷制御部２２は、制御線１２を介して上位装置１０との間で行われる制御情報の送受信に基づきプリンタエンジン１５との間でコマンドやステータス情報の送受信を行い、プリンタエンジン１５の動作を制御する。
【００２７】
プリンタエンジン１５は、複数のデータ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄを有すると共に、印刷画像データに基づく画像を用紙に出力し画像形成を行う画像出力部５０と、印刷用紙の搬送を制御する搬送制御部５１とを有する。
【００２８】
データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄは、それぞれデータ線１１ａ、１１ｂ、１１ｃおよび１１ｄが接続される。また、データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄは、それぞれメモリ３１ａ、３１ｂ、３１ｃおよび３１ｄを含み、上位装置１０から、データ線１１ａ、１１ｂ、１１ｃおよび１１ｄを介して転送された各色の印刷画像データを、それぞれメモリ３１ａ、３１ｂ、３１ｃおよび３１ｄに格納する。
【００２９】
これらメモリ３１ａ、３１ｂ、３１ｃおよび３１ｄのそれぞれは、少なくとも３ページ分の印刷画像データを格納可能な容量を有する。３ページ分の印刷画像データは、例えば、上位装置１０から転送中のページの印刷画像データと、現在出力中のページの印刷画像データと、次のページの印刷画像データとに対応する。
【００３０】
さらに、データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄは、それぞれエンジン制御線４０ａ、４０ｂ、４０ｃおよび４０ｄにより印刷制御部２２と接続される。印刷制御部２２は、これらエンジン制御線４０ａ、４０ｂ、４０ｃおよび４０ｄを介して、各データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄとの間でそれぞれ個別に制御信号の送受信を行うことができる。
【００３１】
図５は、データ管理部３０ａの一例の構成を示す。なお、データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄは、共通の構成を適用することができるので、図５では、データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄを代表してデータ管理部３０ａの構成を示す。
【００３２】
データ管理部３０ａは、メモリ３１ａおよびロジック回路３２ａを含む。ロジック回路３２ａに対して、エンジン制御線４０ａおよびデータ線１１ａが接続される。ロジック回路３２ａは、印刷制御部２２からエンジン制御線４０ａを介して受け取った制御信号に従い、上位装置１０からデータ線１１ａを介して転送された印刷画像データをメモリ３１ａに対して格納する。同様に、ロジック回路３２ａは、印刷制御部２２からエンジン制御線４０ａを介して受け取った制御信号に従い、メモリ３１ａから印刷画像データを読み出して、後述する画像出力部５０に供給する。
【００３３】
なお、論理回路などの組み合わせによりハードウェア的に構成されたロジック回路３２ａによる制御は、プログラムに対する割り込みにより処理を分岐させる、ＣＰＵを用いた制御に対してより高速な処理が可能であるという利点がある。ロジック回路３２ａは、例えば、エンジン制御線４０ａを介して受け取った、ビット列による制御信号に対して論理判定を行い、実行する処理を決定する。
【００３４】
データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄからそれぞれ出力された各色の印刷画像データは、画像出力部５０に供給される。画像出力部５０は、各色の印刷画像データによる印刷を実行する。なお、本実施形態では、印刷画像データによる印刷を、ヘッドに設けられたノズルからインクを射出して印刷を行う、インクジェット方式により行う。勿論、印刷方式はインクジェット方式に限られず、例えばレーザプリンタ方式などを用いてもよい。
【００３５】
本実施の形態では、図６に例示されるように、プリンタコントローラ１４において、各メモリ３１ａ〜３１ｄそれぞれのメモリ空間と同一のメモリ空間を持つ仮想的なメモリ６０（以下、仮想メモリ６０と呼ぶ）を定義する。プリンタコントローラ１４は、上位装置１０から転送された画像データを各メモリ３１ａ〜３１ｄに対して書き込む先頭位置（入力ポインタと呼ぶ）と、メモリ３１ａ〜３１ｄから画像データを読み出す際の先頭位置（出力ポインタと呼ぶ）とを、それぞれ仮想メモリ６０上で管理する。
【００３６】
プリンタコントローラ１４は、各メモリ３１ａ〜３１ｄに対して書き込みを行う際には、入力ポインタが示すアドレスを各データ管理部３０ａ〜３０ｄにそれぞれ渡す。各データ管理部３０ａ〜３０ｄは、プリンタコントローラ１４から渡されたこの入力ポインタが示すアドレスを先頭アドレスとして、データの書き込みを開始する。同様に、プリンタコントローラ１４は、各メモリ３１ａ〜３１ｄからデータの読み出しを行う際には、出力ポインタが示すアドレスを各データ管理部３０ａ〜３０ｄにそれぞれ渡す。各データ管理部３０ａ〜３０ｄは、プリンタコントローラ１４から渡されたこの出力ポインタが示すアドレスを先頭アドレスとして、各メモリ３１ａ〜３１ｄからのデータの読み出しを開始する。
【００３７】
プリンタコントローラ１４は、入力ポインタを、１ページ分の書き込みが終了したら１ページ分アドレスを移動させて更新する。同様に、出力ポインタを、１ページ分の読み出しが終了したら１ページ分アドレスを移動させて更新する。各メモリ３１ａ〜３１ｄの書き込み開始位置および読み出し開始位置がプリンタコントローラ１４側で一元的に管理されるため、ページ単位での各メモリ３１ａ〜３１ｄの記憶領域の確保および解放が容易となる。
【００３８】
仮想メモリ６０は、例えば、各メモリ３１ａ〜３１ｄのメモリ空間を示す情報であるアドレスマップとして構成される。このアドレスマップは、例えばＣＰＵ２１によりＲＡＭ上に構築してもよいし、ＲＯＭに予め記憶しておいてもよい。これに限らず、プリンタ装置１３の起動時の初期化処理時などに、ＣＰＵ２１がインターフェイス２２を介して各データ管理部３０ａ〜３０ｄと情報のやりとりを行い、各メモリ３１ａ〜３１ｄのメモリ空間を示す情報を直接的に取得することも可能である。さらに、プリンタコントローラ１４が有するＲＡＭ２３上に実際にメモリ空間を確保して、仮想メモリ６０を構築してもよい。
【００３９】
つぎに、画像出力部５０の一例の構成を示す。図７は、本実施の形態による画像出力部５０の一例の構成を示す図である。画像出力部５０は、出力制御部５５と、色Ｃ、Ｍ、ＹおよびＫ各色のヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとを含む。なお、各色とヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとの関係は、この例に限られない。各出力制御部５５は、各データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄそれぞれの印刷画像データが出力される各出力線３２ａ、３２ｂ、３２ｃおよび３２ｄと、ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとの接続を制御する。すなわち、出力制御部５５は、各ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄに対して、それぞれ各出力線３２ａ、３２ｂ、３２ｃおよび３２ｄから１を選択して接続するように経路を設定することができる。
【００４０】
例えば、出力制御部５５は、各出力線３２ａ、３２ｂ、３２ｃおよび３２ｄと、各ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとを、１対１に接続するように設定できる。また例えば、出力線３２ａに対して、各ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄを接続する、というように、出力線３２ａ、３２ｂ、３２ｃおよび３２ｄと、ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとを、１対多に接続するように設定できる。
【００４１】
各出力線３２ａ、３２ｂ、３２ｃおよび３２ｄと各ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとを接続する経路は、例えばディップスイッチなどを用いてユーザ操作により設定することができる。これに限らず、当該経路を、印刷制御部２２からの制御信号（図示しない）により設定してもよい。
【００４２】
上述したように、本実施形態によるプリンタ装置１３では、上位装置１０からの印刷画像データの転送と、当該印刷画像データによる印刷を制御する制御信号の上位装置１０とプリンタ装置１３との間の送受信とが、異なる経路を介して行われる。また、上位装置１０から、各色の印刷画像データがそれぞれ異なるデータ線１１ａ、１１ｂ、１１ｃおよび１１ｄを介して転送されると共に、これらデータ線１１ａ、１１ｂ、１１ｃおよび１１ｄを介して転送された各色の印刷画像データが、互いに独立して制御され、共通の構成を持つデータ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄにそれぞれ供給される。さらに、画像出力部５０において、各データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄの出力と各色のヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとの接続経路をユーザ操作などにより設定可能とされている。
【００４３】
したがって、本実施形態によるプリンタ装置１３は、印刷画像データの色数（Ｃ、Ｍ、ＹおよびＫの４色、または、Ｋ色のみ、など）や、画像出力部５０において用いるヘッド数に応じて、プリンタエンジン１５の構成を容易に変更することが可能である。このとき、プリンタエンジン１５に対して、各データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄのうち、要求される構成に応じて必要とされるものだけを設けるようにできる。
【００４４】
例えば、色Ｃ、Ｍ、ＹおよびＫの４色でフルカラーの印刷を行いたい場合は、プリンタエンジン１５に対してデータ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄを全て設け、出力制御部５５において、データ管理部３０ａ、３０ｂ、３０ｃおよび３０ｄの各出力を、それぞれヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄに接続すればよい。また例えば、色Ｋの１色で印刷を行う場合において、装置コスト優先として、それぞれ１のデータ管理部３０ａおよびヘッド５６ａのみを設け、出力制御部５５においてデータ管理部３０ａの出力をヘッド５６ａに接続することができる。さらに例えは、色Ｋの１色で印刷を行う場合において、印刷速度優先として、１のデータ管理部３０ａと４のヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄとを設け、出力制御部５５においてデータ管理部３０ａの出力をヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄにそれぞれ接続することができる。この場合、同一色を複数回、重ねて印刷することになるため、例えば、各ヘッド５６ａ、５６ｂ、５６ｃおよび５６ｄでのインクの噴出時間を通常の１／４とし、印刷用紙の搬送速度を通常の４倍として高速印刷を行うことが考えられる。
【００４５】
（印刷用紙の搬送系）
搬送制御部５１は、印刷制御部２２と搬送制御線４１により接続され、画像出力部５０により印刷画像データに基づく画像が形成される用紙の搬送を制御する。図８は、本実施の形態に適用可能な、用紙の搬送系を含めたプリンタ装置２００の一例の構造を概略的に示す。既に述べたように、本実施形態では、プリンタ装置２００は、印刷用紙として連帳紙を用いる。
【００４６】
印刷用紙２０１は、印刷用紙補給部２１０から電源操作ボックス２２０を介して第１搬送部２３０に供給される。印刷用紙２０１は、第１搬送部２３０において、搬送制御部５１の搬送制御により複数のローラなどを介して搬送されて位置合わせなどがなされ、上述のプリンタエンジン１５に対応するプリンタエンジン部２４０および２５０に供給される。
【００４７】
プリンタエンジン部２４０および２５０は、上述の画像出力部５０に対応する印刷部２４１において、第１搬送部２３０から供給された印刷用紙２０１に対して印刷画像データに従った印刷を行う。印刷が終了した印刷用紙２０１は、搬送制御部５１の搬送制御によりプリンタエンジン部２５０から排出され、第２搬送部２６０に供給される。印刷後の印刷用紙２０１は、第２搬送部２６０の内部で所定に搬送されて排出され、裁断部２７０に供給される。印刷後の印刷用紙２０１は、裁断部２７０によりミシン目に従い裁断され各ページを分離される。
【００４８】
ここで、プリンタ装置２００は、ページが連続した連続紙である印刷用紙２０１に印刷を行うため、プリンタエンジン部２４０および２５０における印刷用紙２０１への印刷後、当該印刷用紙２０１が第２搬送部２６０から排出されるまでの経路にも、印刷用紙２０１が絶えず存在することになる。
【００４９】
なお、第１搬送部２３０、プリンタエンジン部２４０および２５０、ならびに、第２搬送部２６０からなる構成をもう一組用意して、前側の第２搬送部２６０から排出された印刷後の印刷用紙２０１を表裏反転して後側の第１搬送部２３０に供給することで、印刷用紙２０１に対する両面印刷が可能となる。
【００５０】
ここで、印刷画像データの一例を、図面を用いて詳細に説明する。図９は、本実施の形態における印刷画像データの一例を示す図である。図９に示すように、印刷画像データは、字、絵、写真などを含む。また、印刷画像データには、何もデータがない空白部分が存在する。たとえば、ビジネス用の名刺のイメージ（名刺イメージ３００）の場合、一般的には名前、会社名、住所などが黒字（黒字部３２０）で描画され、会社のロゴなどがカラー（カラー部３１０）で描画されている。印刷画像データを色毎のＣＭＹＫに分けて分析すると、色毎の印刷画像データにはより多くの空白部分が含まれる。なお、空白部分は、ＣＭＹＫの色毎に異なる位置にある。そこで本実施の形態では、上位装置１０における画像データ生成部１１２が、色毎の印刷画像データ（色毎の印刷イメージ）に変換後、色毎の印刷画像データに含まれる空白部分を検知し、この空白部分の少なくとも一部を転送しない処理を行うことで、上位装置１０から本体コントローラ１３０へのデータ転送量を減らすように動作する。
【００５１】
つづいて、本実施の形態におけるバンド分割処理について、図面を用いて詳細に説明する。図１０Ａ〜図１０Ｃは、本実施の形態におけるバンド分割処理を説明するための図である。図１０Ａに示すように、バンド分割処理では、１つの印刷画像データ５００を、複数のバンド５１０（（本説明ではたとえばバンド１〜７）に分割する。また、図１０Ｂに示すように、個々のバンド５１０は、複数のライン５２０よりなる。さらに、図１０Ｃに示すように、個々のライン５２０は、複数のブロック５３０に分割されている。なお、バンド５１０への分割は、必要に応じて実施すればよい。また、以下では、バンド分割処理の説明については省略する。
【００５２】
（制御情報）
つぎに、本実施の形態において送受信される制御情報について、図面を参照して詳細に説明する。図１１は、色毎にビットマップサイズが異なる場合に、上位装置１０の制御情報通信部１１６とプリンタ装置１３のプリンタコントローラ１４との間で、制御線１２を介して送受信される制御情報の一例を示している。図１２は、色毎のビットマップサイズが同じ場合に、上位装置１０の制御情報通信部１１６とプリンタ装置１３のプリンタコントローラ１４との間で、制御線１２を介して送受信される制御情報の一例を示している。
【００５３】
図１１に示すように、色毎にビットマップサイズが異なる場合、制御情報通信部１１６は、色毎に共通の制御情報として、ＰＢＩＤ（ページ識別子）と、１ページ当たりのデータ数（色数）と、印刷用情報（印刷画像データの解像度、階調、用紙送り長、用紙幅および印刷面（表／裏））と、を送信する。また、制御情報通信部１１６は、色毎に固有の制御情報として、Ｃｏｌｏｒ識別子と、データ転送用情報（データ転送要否、データ転送元アドレス、データ格納先アドレスおよびデータ転送サイズ）と、印刷用情報（印刷要否、印刷不可領域上／下／左／右、画像情報（Ｘ方向有効サイズ、Ｙ方向有効サイズ））と、を送信する。
【００５４】
また、図１２に示すように、色毎のビットマップサイズが同じ場合、制御情報通信部１１６は、色毎に共通の制御情報として、ＰＢＩＤ（ページ識別子）、１ページ当たりのデータ数（色数）、データ転送用情報（データ転送元アドレス、データ格納先アドレス、データ転送サイズ、印刷用情報（印刷画像データの解像度、階調、用紙送り長、用紙幅、印刷面（表／裏）、印刷不可領域上／下／左／右）、画像情報（Ｘ方向有効サイズ、Ｙ方向有効サイズ））と、を送信する。また、制御情報通信部１１６は、色毎に固有の制御情報として、Ｃｏｌｏｒ識別子と、データ転送用情報（データ転送要否）と、印刷用情報（印刷要否）と、を送信する。
【００５５】
（動作フロー）
つぎに、本実施の形態による印刷処理について、図面を参照して詳細に説明する。図１３および図１４は、本実施の形態による印刷処理の流れを示す概略フローチャートである。図１３に示すように、プリンタコントローラ１４は、ホストコンピュータからの印刷要求に応じて印刷処理を起動すると、まず、各色に対応したデータ管理部３０ａ〜３０ｄのメモリ３１ａ〜３１ｄそれぞれにおいて、解放されたメモリが１ページ分以上あるか否かを判定する（ステップＳ１０１）。解放された１ページ分以上のメモリがある場合（ステップＳ１０１のＹＥＳ）、プリンタコントローラ１４は、データ転送先となる解放されたメモリの位置（ＭＥＭ０）を上位装置１０へ通知する（ステップＳ１０２）。
【００５６】
一方、上位装置１０は、印刷処理を起動後、プリンタコントローラ１４からデータ転送先の位置（ＭＥＭ０）を受信すると（ステップＳ２０１）、データ転送の前処理であるデータ転送準備処理を実行する（ステップＳ２０２）。データ転送の準備が完了すると、上位装置１０は、印刷画像データ、有色部位置情報および有色部データ量をプリンタコントローラ１４に転送する（ステップＳ２０３）。プリンタコントローラ１４は、上位装置１０から印刷画像データ、有色部位置情報および有色部データ量を受信すると（ステップＳ１０３）、この受信したデータおよびメモリの状態を元に、確保すべきメモリ量（メモリ確保量（Ｒｙｏｕ））を特定し（ステップＳ１０４）、つづいて、上位装置１０へデータの転送許可を通知する（ステップＳ１０５）。
【００５７】
上位装置１０は、データの転送許可を受信すると（ステップＳ２０４）、準備しておいた色毎の印刷画像データをプリンタコントローラ１４へデータ線１１ａ〜１１ｄを介して転送し（ステップＳ２０５）、その後、印刷処理を終了する。一方、プリンタコントローラ１４は、上位装置１０から印刷画像データを受信すると（ステップＳ１０６）、この色毎の印刷画像データを画像出力部５０にて印刷し（ステップＳ１０７）、その後、印刷の完了を待って、メモリを解放する（ステップＳ１０８）。その後、プリンタコントローラ１４は、制御情報にて設定された各種印刷パラメータ（転送先アドレス、データ転送量等）をリセットし（ステップＳ１０９）、印刷処理を終了する。
【００５８】
また、図１３のステップＳ１０１の判定の結果、解放されたメモリが１ページ分未満の場合（ステップＳ１０１のＮＯ）、プリンタコントローラ１４は、上位装置１０から印刷画像データ、有色部位置情報および有色部データ量を受信することを待機する。上位装置１０は、前もってデータ転送準備処理を実行しており（ステップＳ２１０）、その後、準備が完了すると、印刷画像データ、有色部位置情報および有色部データ量をプリンタコントローラへ送信する（ステップＳ２１１）。プリンタコントローラ１４は、印刷画像データ、有色部位置情報および有色部データ量を受信すると（ステップＳ１１０）、この受信したデータおよびメモリの状態を元に、転送位置（絶対アドレスＭＥＭ０）を特定するデータ転送位置特定処理を実行するとともに、メモリ確保量（Ｒｙｏｕ）を特定する（ステップＳ１１１）。
【００５９】
つぎに、プリンタコントローラ１４は、データ転送量がメモリ確保量（Ｒｙｏｕ）よりも小さいか否かを判定し（ステップＳ１１２）、小さくない場合（ステップＳ１１２のＮｏ）、所定時間待機した後（ステップＳ１１３）、１ページ分の印刷が終了したか否かを判定する（ステップＳ１１４）。終了していない場合（ステップＳ１１４のＮＯ）、プリンタコントローラ１４は、ステップＳ１１３へ帰還して、再度、所定時間待機する。一方、１ページ分の印刷が終了している場合（ステップＳ１１４のＹＥＳ）、プリンタコントローラ１４は、ステップＳ１１２に帰還する。また、ステップＳ１１２の判定の結果、データ転送量がメモリ確保量（Ｒｙｏｕ）より小さい場合（ステップＳ１１２のＹＥＳ）、プリンタコントローラ１４は、メモリ確保量（Ｒｙｏｕ）を上位装置１０へ通知する（ステップＳ１１５）。
【００６０】
上位装置１０は、メモリ確保量（Ｒｙｏｕ）を受信すると（ステップＳ２１２）、印刷画像データの有色部位置情報にデータ転送先の位置（ＭＥＭ０）を加算し、得られた値をデータ転送アドレスに設定する（ステップＳ２１３）。つづいて、上位装置１０は、印刷画像データを転送し（ステップＳ２１４）、その後、印刷処理を終了する。一方、プリンタコントローラ１４は、上位装置１０から印刷画像データを受信すると（ステップＳ１１６）、この色毎の印刷画像データを画像出力部５０にて印刷し（ステップＳ１１７）、その後、印刷の完了を待って、メモリを解放する（ステップＳ１１８）。その後、プリンタコントローラ１４は、制御情報にて設定された各種印刷パラメータ（転送先アドレス、データ転送量等）をリセットし（ステップＳ１１９）、印刷処理を終了する。
【００６１】
つぎに、図１３のステップＳ２０２、および、図１４のステップＳ２１０に示すデータ転送準備処理について、図面を参照して詳細に説明する。図１５は、本実施の形態によるデータ転送準備処理の概略フローチャートである。図１５に示すように、上位装置１０は、１ページのデータ転送準備処理を開始すると、まず、印刷画像データにおける未処理部分に次のラインが存在するか否かを判定する（ステップＳ２２１）。この判定において、次のラインが存在する場合（ステップＳ２２１のＹｅｓ）、上位装置１０は、データ転送時の転送先アドレスＡＤと、転送対象の印刷画像データに含まれる無色データの量（無色データ量Ｂ）と、データ転送量Ｃとの変数をそれぞれ初期化する（ステップＳ２２２〜Ｓ２２４）。つづいて、上位装置１０は、１ライン分の印刷画像データを処理する１ライン処理を実行し（ステップＳ２２５）、その後、ステップＳ２２１に帰還して、次のラインが存在するか否かを判定する。この判定の結果、次のラインが存在しなければ、上位装置１０は、図１５に示す１ページのデータ転送準備処理を終了する。
【００６２】
つづいて、図１５のステップＳ２２５に示す１ライン処理を、図面を用いて詳細に説明する。図１６は、図１５のステップＳ２２５に示す１ライン処理の概略フローチャートである。なお、ブロックとは、データ転送の際に指定できる最小単位のアドレスが持つ情報量である。図１６に示すように、１ラインのデータ処理を開始すると、上位装置１０は、まず、１ブロック毎に、全ての画素が無色であるか否かの判定を行う（ステップＳ２３１）。全ての画素が無色である場合（ステップＳ２３１のＹｅｓ）、上位装置１０は、後述において図１８を用いて説明する無色処理を実行する（ステップＳ２３２）。一方、全ての画素が無色ではない場合、すなわち１つでも有色の画素がある場合（ステップＳ２３１のＮｏ）、上位装置１０は、後述において図１７を用いて説明する有色処理を実行する（ステップＳ２３５）。
【００６３】
つぎに、上位装置１０は、次のブロックがあるか否かを判定し（ステップＳ２３３）、次のブロックがある場合（ステップＳ２３３のＹｅｓ）、対象のブロックを次のブロックとして（ステップＳ２３４）、ステップＳ２３１へ帰還する。一方、次のブロックが存在しない場合、すなわち処理中のブロックが１ラインにおける最後のブロックであった場合（ステップＳ２３３のＮｏ）、上位装置１０は、データ転送量Ｃから無色データ量Ｂを減算し（Ｃ＝Ｃ−Ｂ：ステップＳ２３６）、つづいて、上記計算結果に基づいて、ライン毎の印刷画像データ、有色部位置情報、有色部データ量および有色部データをメモリ１１３に記憶し（ステップＳ２３７）、その後、１ライン処理を終了する。なお、ステップＳ２３６では、ラインの最後にある無色データ部が閾値の大きさ分なくとも、データ転送には含めない。これにより、転送データ量が減少する。
【００６４】
つづいて、図１６のステップＳ２３５に示す有色処理を、図面を用いて詳細に説明する。図１７は、図１６のステップＳ２３５に示す有色処理の概略フローチャートである。図１７に示すように、有色処理を開始すると、上位装置１０は、まず、転送していない有色ブロック（有色データ部）が存在するか否かを判定し（ステップＳ２４１）、存在する場合（ステップＳ２４１のＮｏ）、ステップＳ２４３へ移行する。一方、存在しない場合（ステップＳ２４１のＹｅｓ）、上位装置１０は、転送先アドレスＡＤに転送先のアドレス“ＡＤｘ”を代入し（ステップＳ２４２）、ステップＳ２４３へ移行する。ステップＳ２４３では、上位装置１０は、転送対象のデータ転送量Ｃをブロック数分増加する（Ｃ＝Ｃ＋Ｇ：ステップＳ２４３）。つづいて、上位装置１０は、無色データ量Ｂをクリアし（Ｂ＝０：ステップＳ２４４）、その後、有色処理を終了する。
【００６５】
また、図１６のステップＳ２３２に示す無色処理を、図面を用いて詳細に説明する。図１８は、図１６のステップＳ２３２に示す無色処理の概略フローチャートである。図１８に示すように、無色処理を開始すると、上位装置１０は、まず、転送していない有色ブロックが存在するか否かを判定し（ステップＳ２５１）、存在しない場合（ステップＳ２５１のＮｏ）、そのまま処理を終了する。一方、存在する場合（ステップＳ２５１のＹｅｓ）、上位装置１０は、無色データ量Ｂをブロック数分増加するとともに（Ｂ＝Ｂ＋Ｇ：ステップＳ２５２）、データ転送量Ｃをブロック数分増加する（Ｃ＝Ｃ＋Ｇ：ステップＳ２５３）。つづいて、上位装置１０は、無色データ量Ｂが閾値Ｄよりも大きいか否かを判定し（ステップＳ２５４）、大きくない場合（ステップＳ２５４のＮｏ）、そのまま処理を終了する。一方、大きい場合（ステップＳ２５４のＹｅｓ）、上位装置１０は、データ転送量Ｃから無効データ量Ｂを減算し（Ｃ＝Ｃ−Ｂ：ステップＳ２５５）、つづいて、上記ステップにおいて求めたデータ転送量Ｃをメモリ１１３に保存する（ステップＳ２５６）。つぎに、上位装置１０は、無色データ量Ｂをリセットする（ステップＳ２５７）とともに、データ転送量Ｃをクリアし（ステップＳ２５８）、その後、無色処理を終了する。
【００６６】
また、図１４のステップＳ１１１に示すデータ転送先位置特定処理について、図面を参照して詳細に説明する。図１９は、本実施の形態によるデータ転送先位置特定処理の概略フローチャートである。図１９に示すように、プリンタコントローラ１４は、データ転送先位置特定処理を起動すると、まず、上位装置１０から１ページ分の有色部位置情報（転送先アドレス）および有色部データ量を受信するまで待機し、１ページ分の有色部位置情報（転送先アドレス）および有色部データ量を受信すると（ステップＳ１２１）、最初の転送先アドレスから用紙の先頭位置を減算したアドレスを印刷先頭位置に設定する（ステップＳ１２２）。
【００６７】
つぎに、プリンタコントローラ１４は、最後の転送先アドレスから最初の転送先アドレスを減算することで、メモリ確保量（Ｒｙｏｕ）を算出し（ステップＳ１２３）、つづいて、解放されているメモリアドレスとメモリ確保量（Ｒｙｏｕ）とから転送先アドレスを決定し（ステップＳ１２４）、その後、データ転送先位置特定処理を終了する。
【００６８】
つぎに、上述した動作について、３ライン分のデータ転送を行う場合を例に挙げて説明する。図２０および図２１は、本実施の形態において３ライン分のデータ転送を行う場合の動作を説明するための図である。なお、本例では、ライン０（９００）とライン１（９１０）とライン２（９２０）とをデータ転送する場合を挙げる。各ライン９００〜９２０の転送先アドレス９３０は、それぞれ‘ＡＤ００〜ＡＤ０９’、‘ＡＤ１０〜ＡＤ１９’、‘ＡＤ２０〜ＡＤ２９’であるとする。すなわち、４つの画素９４０を１つのブロック９５０とし、１ラインを１０ブロックとする。さらに、転送先アドレスとデータ転送量との本体コントローラ１３０への指定に要するブロック量の閾値を‘２’とする。つまり、２ブロック以上の無色のブロックが連続する場合、転送対象の印刷画像データには含めないこととする。
【００６９】
まず、ライン０（９００）について説明する。図２０および図２１に示すように、アドレス‘ＡＤ００’から走査してアドレス‘ＡＤ０４’までは、無色ブロック９０１（図２１参照）である。この無色ブロック９０１については転送対象の印刷画像データには含めず、その後の有色ブロック９０４の先頭アドレス‘ＡＤ０５’を転送先アドレス９０２として、アドレス‘ＡＤ０６’以降を走査してゆく。なお、アドレス‘ＡＤ０７’のブロック９０３は無色ブロックであるが、連続する無色ブロックが存在せず、有色ブロックに挟まれているため、この無色ブロック９０３を有色ブロック９０４の一部として扱う。この結果、アドレス‘ＡＤ０５〜ＡＤ０９’の印刷画像データが転送対象の印刷画像データ（転送データ）となり、転送される。これにより、ライン０（９００）についての処理が完了する。このように、ライン０（９００）に対しては、アドレス‘ＡＤ０５’から５ブロック分のデータ転送が実行される。
【００７０】
つぎに、ライン１（９１０）について説明する。図２０および図２１に示すように、アドレス‘ＡＤ１０’を転送先アドレス９１１として設定し、アドレス‘ＡＤ１１’以降を走査してゆく。ここで、アドレス‘ＡＤ１６’は無色ブロックであるが、無色ブロック９０４と同様、連続する無色ブロックが存在せず、有色ブロックに挟まれているため、この無色ブロックを有色ブロックの一部として扱い、アドレス‘ＡＤ１７’以降を走査してゆく。ただし、アドレス‘ＡＤ１９’は連続する無色ブロックがない無色ブロックであるが、ラインの端のブロックであるため、データ転送の対象には含めない。この結果、アドレス‘ＡＤ１０〜ＡＤ１８’のブロックのデータ転送が行われ、ライン１（９１０）についての処理が完了する。このように、ライン１（９１０）に対しては、アドレス‘ＡＤ１０’から９ブロック分のデータ転送が実行される。
【００７１】
つづいて、ライン２（９２０）について説明する。図２０および図２１に示すように、アドレス‘ＡＤ２０’の無色ブロック９２１は、ラインの始めであるため、データ転送の対象には含めない。そこで、有色データ部９２４の先頭アドレス‘ＡＤ２１’を転送先アドレス９２２として設定し、アドレス‘ＡＤ２２’以降を走査してゆく。ここで、アドレス‘ＡＤ２５’および‘ＡＤ２６’のブロックが連続した無色ブロック９２３であるため、先にアドレス‘ＡＤ２１〜ＡＤ２５’までの有色ブロック９２４のデータ転送を行う。つぎに、有色データ部９２６の先頭アドレス‘ＡＤ２７’を転送先アドレス９２５として設定し、アドレス‘ＡＤ２８’以降を走査してゆく。ここで、アドレス‘ＡＤ２９’の無色ブロックはラインの端のブロックであるため、アドレス‘ＡＤ２７〜ＡＤ２９’の印刷画像データに関するデータ転送が行われ、ライン２（９２０）についての処理が完了する。このように、ライン２（９２０）に対しては、アドレス‘ＡＤ２１’から２ブロック分と、アドレス‘ＡＤ２７’から３ブロック分のデータ転送が実行される。
【００７２】
以上のように、本実施の形態では、上位装置１０で生成した印刷画像データでバンド単位の空白領域より小さい部分の空白部分（無色ブロック）が転送されない。これにより、本実施の形態では、上位装置１０からプリンタコントローラ１３への画像転送に際し、データ転送量を削減でき、バンド単位での空白領域がない場合であっても画像データの転送効率を高めることが可能となる。
【００７３】
なお、上述した上位装置１０およびプリンタコントローラ１３の動作は、ＣＰＵなどの制御装置がＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭやＨＤＤ、ＣＤドライブ装置などの記憶装置に記憶されたプログラムを読み出して実行することでも実現可能である。このプログラムは、装置にプレインストールしておく提供方法以外にも、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどの記録媒体の配布や、インターネット等のネットワークを経由したダウンロードなどによっても提供するように構成することができる。
【００７４】
なお、上記実施の形態では、本発明の画像形成装置を、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能のうち少なくとも２つの機能を有する複合機に適用した例を挙げて説明するが、複写機、プリンタ、スキャナ装置、ファクシミリ装置等の画像形成装置であればいずれにも適用することができる。
【００７５】
また、上記実施の形態は本発明を実施するための例にすぎず、本発明はこれらに限定されるものではなく、仕様等に応じて種々変形することは本発明の範囲内であり、更に本発明の範囲内において、他の様々な実施の形態が可能であることは上記記載から自明である。例えば各実施の形態に対して適宜例示した変形例は、他の実施の形態に対して適用することも可能であることは言うまでもない。
【符号の説明】
【００７６】
１０  上位装置
１１、１１ａ〜１１ｄ  データ線
１２  制御線
１３  プリンタ装置
１４  プリンタコントローラ
１５  プリンタエンジン
２０  バス
２１  ＣＰＵ
２２  印刷制御部
３０ａ〜３０ｄ  データ管理部
３１ａ〜３０ｄ  メモリ
３２ａ〜３２ｄ  ロジック回路
４０ａ〜４０ｄ  エンジン制御線
５０  画像出力部
５１  搬送制御部
５５  出力制御部
５６ａ〜５６ｄ  ヘッド
６０  仮想的なメモリ
１１１  データ受信部
１１２  画像データ生成部
１１３  メモリ
１１４  無色判定部
１１５  データ送信部
１１６  制御情報通信部
２００  プリンタ装置
２０１  印刷用紙
２１０  印刷用紙補給部
２２０  電源操作ボックス
２３０  第１搬送部
２４０、２５０  プリンタエンジン部
２４１  印刷部
２６０  第２搬送部
２７０  裁断部
３００  名刺イメージ
３１０  カラー部
３２０  黒字部
５００  印刷画像データ
５１０  バンド
５２０  ライン
５３０  ブロック
９００、９１０、９２０  ライン
９０１、９２１、９２３  無色ブロック
９０２、９２２、９２５、９３０  転送先アドレス
９０３、９５０  ブロック
９０４、９２４  有色ブロック
９２６  有色データ部
９４０  画素
１１００  バス
１１０１  ＣＰＵ
１１０２  ＲＯＭ
１１０３  ＲＡＭ
１１０４  ＨＤＤ
１１１０  外部Ｉ／Ｆ
１１１１  制御情報用Ｉ／Ｆ
１１１２  画像データ用Ｉ／Ｆ
【先行技術文献】
【特許文献】
【００７７】
【特許文献１】特開平８−２５８３７８号公報
【特許文献２】特許第３６５５４５７号公報
【図１】
2012064044.tif 000003
【図２】
2012064044.tif 000004
【図３】
2012064044.tif 000005
【図４】
2012064044.tif 000006
【図５】
2012064044.tif 000007
【図６】
2012064044.tif 000008
【図７】
2012064044.tif 000009
【図８】
2012064044.tif 000010
【図９】
2012064044.tif 000011
【図１０Ａ】
2012064044.tif 000012
【図１０Ｂ】
2012064044.tif 000013
【図１０Ｃ】
2012064044.tif 000014
【図１１】
2012064044.tif 000015
【図１２】
2012064044.tif 000016
【図１３】
2012064044.tif 000017
【図１４】
2012064044.tif 000018
【図１５】
2012064044.tif 000019
【図１６】
2012064044.tif 000020
【図１７】
2012064044.tif 000021
【図１８】
2012064044.tif 000022
【図１９】
2012064044.tif 000023
【図２０】
2012064044.tif 000024
【図２１】
2012064044.tif 000025