(57)【特許請求の範囲】
【請求項１】
ヘッドのインク吐出ノズルなどの印字部の数と同数のビットマップラインを、ドット数にライン数を掛けた矩形領域を有するプレーンメモリとし、該プレーンメモリを複数備え、これら複数のプレーンメモリにビットマップデータを展開し、該ビットマップデータをヘッドに転送するようにしたビットマップデータ転送装置において、複数のプレーンメモリのうち、第１のプレーンメモリのビットマップラインの１番目のラインから所定のライン数置きにビットマップラインを選択し、該選択したビットマップラインデータをヘッドの対応する領域に転送し印字する第１の処理手段と、前記第１のプレーンメモリの２番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第２のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第２の処理手段と、前記第１のプレーンメモリの３番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第３のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第３の処理手段と、前記各プレーンメモリの前記ヘッドへ転送済みのビットマップラインから新たなプレーンメモリを作成し、これにビットマップデータを書き込む第４の処理手段と、前記第１のプレーンメモリの４番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリのビットマップラインのデータ中、３番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第３のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記新たに作成したプレーンメモリ１番目のラインから所定のライン数置きに選択したビットマップラインデータとを、前記ヘッドに転送し印字する第５の処理手段とを備え、全ラインのデータがヘッドに転送されたプレーンメモリを新たなプレーンメモリとして利用するとともに前記第５の処理手段と同様の動作を繰り返すようにしたことを特徴とするビットマップデータ転送装置。
【請求項２】
ヘッドのインク吐出ノズルなどの印字部の数と同数のビットマップラインを、ドット数にライン数を掛けた矩形領域を有するプレーンメモリとし、該プレーンメモリを複数備え、これら複数のプレーンメモリにビットマップデータを展開し、該ビットマップデータをヘッドに転送するようにしたビットマップデータ転送方法において、複数のプレーンメモリのうち、第１のプレーンメモリのビットマップラインの１番目のラインから所定のライン数置きにビットマップラインを選択し、該選択したビットマップラインデータをヘッドの対応する領域に転送し印字する第１のステップと、前記第１のプレーンメモリの２番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第２のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第２のステップと、前記第１のプレーンメモリの３番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第３のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第３のステップと、前記各プレーンメモリの前記ヘッドへ転送 済みのビットマップラインから新たなプレーンメモリを作成し、これにビットマップデータを書き込む第４のステップと、前記第１のプレーンメモリの４番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリのビットマップラインのデータ中、３番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第３のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記新たに作成したプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとを、前記ヘッドに転送し印字する第５のステップとを備え、全ラインのデータがヘッドに転送されたプレーンメモリを新たなプレーンメモリとして利用するとともに前記第５のステップと同様の動作を繰り返すようにしたことを特徴とするビットマップデータ転送方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インクジェットプロッタなどのラスタプロッタに用いられるビットマップデータ転送方法及び装置に関し、特に、印字ヘッドに転送するべきビットマップデータ領域を１ラインごとに管理するようにしたビットマップデータ転送方法及び装置に関する。
【０００２】
【従来技術】
印字ヘッドに転送するべきビットマップデータ領域をプレーン（ブロック）ごとに管理するビットマップデータ転送方法及び装置が特開平９−１４９２２１号公報に開示されている。また、従来、インクジェットヘッド４スキャン分以上のビットマップメモリを用意し、これらビットマップメモリをローテーションで使用するビットマップデータ転送装置が知られている。
【０００３】
【発明が解決しようとする課題】
従来のビットマップデータ転送方式では、ビットマップデータをヘッド又はヘッド転送用メモリに転送又はコピーした後も、プレーン（ブロック）内に転送又はコピーし終わったデータと、まだし終わっていないデータが混在するため、プレーン内に新たなビットマップデータを格納することが出来ない。そのため、ビットマップデータ格納領域を効率的に利用することが出来なかった。
本発明は、コピーし終わったデータのラインだけをただちに集め、新たなビットマップ領域として利用できるようにして、必要なメモリ総容量を従来より少なくすることが出来るように成し、上記従来の問題点を解決することを目的とするものである。
【０００４】
【課題を解決するための手段】
上記目的を達成するため、本発明は、 ヘッドのインク吐出ノズルなどの印字部の数と同数のビットマップラインを、ドット数にライン数を掛けた矩形領域を有するプレーンメモリとし、該プレーンメモリを複数備え、これら複数のプレーンメモリにビットマップデータを展開し、該ビットマップデータをヘッドに転送するようにしたビットマップデータ転送装置において、複数のプレーンメモリのうち、第１のプレーンメモリのビットマップラインの１番目のラインから所定のライン数置きにビットマップラインを選択し、該選択したビットマップラインデータをヘッドの対応する領域に転送し印字する第１の処理手段と、前記第１のプレーンメモリの２番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第２のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第２の処理手段と、前記第１のプレーンメモリの３番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第３のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第３の処理手段と、前記各プレーンメモリの前記ヘッドへ転送済みのビットマップラインから新たなプレーンメモリを作成し、これにビットマップデータを書き込む第４の処理手段と、前記第１のプレーンメモリの４番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリのビットマップラインのデータ中、３番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第３のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記新たに作成したプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとを、前記ヘッドに転送し印字する第５の処理手段とを備え、全ラインのデータがヘッドに転送されたプレーンメモリを新たなプレーンメモリとして利用するとともに前記第５の処理手段と同様の動作を繰り返すようにしたものである。
また、上記目的を達成するため、本発明は、 ヘッドのインク吐出ノズルなどの印字部の数と同数のビットマップラインを、ドット数にライン数を掛けた矩形領域を有するプレーンメモリとし、該プレーンメモリを複数備え、これら複数のプレーンメモリにビットマップデータを展開し、該ビットマップデータをヘッドに転送するようにしたビットマップデータ転送方法において、複数のプレーンメモリのうち、第１のプレーンメモリのビットマップラインの１番目のラインから所定のライン数置きにビットマップラインを選択し、該選択したビットマップラインデータをヘッドの対応する領域に転送し印字する第１のステップと、前記第１のプレーンメモリの２番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第２のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第２のステップと、前記第１のプレーンメモリの３番目のラインから前記所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記複数のプレーンメモリのうち、第３のプレーンメモリの１番目のラインから所定のライン数置きに選択したビットマップラインデータとをヘッドの対応する領域に転送し印字する第３のステップと、前記各プレーンメモリの前記ヘッドへ転送 済みのビットマップラインから新たなプレーンメモリを作成し、これにビットマップデータを書き込む第４のステップと、前記第１のプレーンメモリの４番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第２のプレーンメモリのビットマップラインのデータ中、３番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記第３のプレーンメモリの２番目のラインから所定のライン数置きに選択したビットマップラインデータと、前記新たに作成したプレーンメモリ１番目のラインから所定のライン数置きに選択したビットマップラインデータとを、前記ヘッドに転送し印字する第５のステップとを備え、全ラインのデータがヘッドに転送されたプレーンメモリを新たなプレーンメモリとして利用するとともに前記第５のステップと同様の動作を繰り返すようにしたものである。
【０００５】
【発明の実施の形態】
以下に本発明の実施の形態を添付した図面を参照して詳細に説明する。
図２は本発明の一実施例に係るビットマップデータ転送方法を適用したシステムの構成を示すブロック図である。このシステムは、図示しない入力装置を使用して作成された設計図面などの画像情報をベクタデータの形態で出力するホストコンピュータ（２）と、このホストコンピュータ（２）から送られるベクタデータをラスタデータに変換して印刷出力するインクジェットプロッタから成るラスタプロッタ（４）とから構成されている。
【０００６】
ホストコンピュータ（２）から送信されるベクタデータは、ＦＩＦＯバッファリング機能を有するインターフェース（１／Ｆ）（６）を介してＲＡＭ（８）に取り込まれる。ＣＰＵ（１０）は、ＲＯＭ（１２）に記憶されたプログラムに基づいて、ＲＡＭ（８）に格納されたベクタデータに対して所要のソート処理等の前処理を行うとともに、インクジェット印字ヘッド（１４）に転送するべきビットマップデータ領域を１ライン毎に管理する。画像プロセッサ（１６）は、ＲＡＭ（８）に保存された画像データに対して順次ＤＤＡ処理を施し、ラスタデータをビットマップメモリ（１８）に展開する。ビットマップメモリ（１８）に展開されたラスタデータは、データ転送回路（２０）を介してヘッド（１４）に順次送られるとともにラスタデータはヘッド転送メモリ（２２）にコピーされる。
【０００７】
ヘッド（１４）は、図７に示すように用紙（２４）に対して、これを横切る方向（Ｘ軸方向）にヘッド駆動部（２６）によって駆動され、用紙（２４）に対してこれを横方向に往復走査する。一方、用紙（２４）は、用紙駆動部（２８）によって、縦方向（Ｙ方向）に駆動される。これにより、インクジェットヘッド（１４）によって、ラスタデータが用紙（２４）に印刷出力される。本実施形態に使用されるインクジェットヘッド（１４）は、図６に示すように、インクが吐出するノズル（３０）を６４個備え、ノズル間隔が１８０ｄｐｉ即ち０.１４１１ｍｍに設定されている。
本実施形態では、このヘッド（１４）で、７２０ｄｐｉの印字を行う。
【０００８】
本発明の主たる構成は、図１に示す如く、要素数６４のポインタ配列（３２）（３４）（３６）３個と、６４×３本のビットマップラインを備えたビットマップメモリ（１８）と、要素数６４の転送待ちビットマップ格納用ポインタ配列（３８）（４０）（４２）（４４）４個で構成され、ポインタ配列（３２）（３４）（３６）３個の６４の各要素は、それぞれ、ビットマップメモリ（１８）の６４×３本のビットマップラインの先端アドレスを指している。転送待ちビットマップ格納用ポインタ配列（３８）（４０）（４２）（４４）は、初期状態では、ＮＵＬＬポインタを指すものとする。上記ビットマップメモリ（１８）のビットマップラインの６４本分を、ｎ×６４サイズの矩形領域のプレーンメモリとして考え、図３のようにイメージをそこに書き込む。
【０００９】
ビットマップラインは６４×３本あるので、図３に示すように、３個のプレーンメモリ（４８）（５０）（５２）に３スキャン分のプレーンデータを作成することが出来る。次に、ビットマップメモリ（１８）のビットマップラインに展開したビットマップデータを、用紙に印字する動作について説明する。
【００１０】
《ステップ１》
ここでまず最初に、１番目のプレーンメモリ（４８）の各ビットマップラインを指しているポインタ配列（３２）の要素１から３置きに６１まで、即ち、（１，５，９……６１）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（３８）の要素４９〜６４に移動する。次に、プレーンメモリ（４８）のビットマップラインを指しているポインタ配列（３２）の要素２から３置きに６２まで、即ち（２，６，１０……６２）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４０）の３３〜４８に移動する。次に、プレーンメモリ（４８）のビットマップラインを指しているポインタ配列（３２）の要素３から３置きに６３まで、即ち（３，７，１１……６３）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４２）の１７〜３２に移動する。
【００１１】
次に、プレーンメモリ（４８）のビットマップラインを指しているポインタ配列（３２）の要素４から３置きに６４まで、即ち（４，８，１２……６４）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４４）の１〜１６に移動する。ここまでの動作を図４−Ａに示す。
《ステップ２》
次に、転送待ちビットマップライン格納用ポインタ配列（３８）からビットマップラインデータをヘッド（１４）に転送し（このときＮＵＬＬの要素の場合は空白データを転送する）、図７に示すように、ヘッド（１４）を右方向に走査して用紙（２４）に１スキャン分の印字を行う。印字後は、用紙（２４）を図８に示すように６５ドット分Ｘ軸方向にずらす。ヘッドスキャン方法の例を図５−Ａに示す。
【００１２】
転送し終わったビットマップライン１６本分は再利用するため、プレーンメモリ（４８）のビットマップラインを指していたポイタン配列（３２）に移動する。
《ステップ３》
次にプレーンメモリ（５０）のビットマップラインを指しているポインタ配列（３４）の要素１から３置きに６１まで、即ち（１，５，９……６１）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４０）の４９〜６４に移動する。
【００１３】
次に、プレーンメモリ（５０）のビットマップラインを指しているポインタ配列（３４）の要素２から３置きに６２まで、即ち、（２，６，１０……６２）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４２）の３３〜１８に移動する。
次に、プレーンメモリ（５０）のビットマップラインを指しているポインタ配列（３４）の要素３から３置きに６３まで、即ち（３，７，１１……６３）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４４）の１７〜３２に移動する。
【００１４】
次に、プレーンメモリ（５０）のビットマップラインを指しているポインタ配列（３４）の要素４から３置きに６４まで、即ち（４，８，１２……６４）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（３８）の１〜１６に移動する。
ここまでの動作を図４−Ｂに示す。
【００１５】
《ステップ４》
次に転送待ちビットマップライン格納用ポインタ配列（４０）から、ビットマップラインデータをヘッド（１４）に転送し（このときＮＵＬＬの要素の場合は空白データを転送する）、１スキャン分の印字を行う。この印字後、用紙（２４）は、図７中、Ｘ軸方向に６５ビット分送られる。ヘッドスキャン方法の例を図５−Ｂに示す。
転送し終わったビットマップライン３２本分は、再利用するため、プレーンメモリ（４８）のビットマップラインを指していたポイタン配列（３２）に移動する。
【００１６】
《ステップ５》
次に、プレーンメモリ（５２）のビットマップラインを指しているポインタ配列（３６）の要素１から３置きに６１まで、即ち（１，５，９…６１）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４２）の４９〜６４に移動する。
次に、プレーンメモリ（５２）のビットマップラインを指しているポインタ配列の要素２から３置きに６２まで、即ち（２，６，１０…６２）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４４）の３３〜４８に移動する。
次に、プレーンメモリ（５２）のビットマップラインを指しているポインタ配列の要素３から３置きに６３まで、即ち（３，７，１１…６３）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（３８）の１７〜３２に移動する。
次に、プレーンメモリ（５２）のビットマップラインを指しているポインタ配列の要素４から３置きに６４まで、即ち（４，８，１２…６４）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４０）の１〜１６に移動する。
ここまでの動作を図４−Ｃに示す。
【００１７】
《ステップ６》
次に転送待ちビットマップライン格納用ポインタ配列（４２）からビットマップラインデータをヘッド（１４）に転送し（このときＮＵＬＬの要素の場合は空自データを転送するものとする）、１スキャン分の印字を行う。スキャン方法の例を図５・Ｃに示す。
印字後、用紙（２４）は、６５ビット分、図７中、Ｘ軸方向に送られる。
転送し終わったビットマップライン（４８）ラインの内、１６ライン分は、プレーンメモリ（４８）のビットマップラインを指していたポインタ配列（３２）に移動し、残りの３２ライン分はプレーンメモリ（５０）のビットマップラインを指していたポインタ配列（３４）に移動する。
この時点で、プレーンメモリ（４８）のビットマップラインを指していたポインタ配列（３２）にはヘッド転送済みのビットマップラインが６４ライン揃うので、新たなプレーンメモリ（５４）としてこれに図３に示す如くプレーンデータを書き込むことができる。
【００１８】
《ステップ７》
次に、プレーンメモリ（５４）のビットマップラインを指している配列（３２）の要素１から３置きに６１まで、即ち（１，５，９…６１）の１６ラインを転送待ちビットマップライン格納用ポインタ配列４４の４９〜６４に移動する。
次に、プレーンメモリ（５４）のビットマップラインを指しているポインタ配列（３２）の要素２から３置きに６２まで、即ち（２，６，１０…６２）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（３８）の３３〜４８に移動する。
次に、プレーンメモリ（５４）のビットマップラインを指しているポインタ配列（３２）の要素３から３置きに６３まで、即ち（３，７，１１…６３）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４０）の１７〜３２に移動する。
次に、プレーンメモリ（５４）のビットマップラインを指しているポインタ配列（３２）の要素４から３置きに６４まで、即ち（４，８，１２…６４）の１６ラインを転送待ちビットマップライン格納用ポインタ配列（４２）の１〜１６に移動する。
ここまでの動作を図４−Ｄに示す。
【００１９】
《ステップ８》
次に転送待ちビットマップライン格納用ポインタ配列（４４）からビットマップラインデータをヘッド（１４）に転送し（このときＮＵＬＬの要素の場合は空自データを転送するものとする）、１スキャン分の印字を行う。スキャン方法の例を図５・Ｄに示す。
以降は、１スキャンする毎に転送し終わったビットマップライン６４ラインがそろうので、新たなプレーンメモリとしてそれを利用することができ、ステップ７〜ステップ８と同様な動作を繰り返すことにより、どのような長さの印字データでも印字することができる。
上記ステップ１〜ステップ（８）における印字動作は、図８に示すように、１スキャン毎に６５ドット分或いは、６１ドット分用紙がＸ軸方向に送られ、各ヘッドスキャン毎の用紙フィード量が平均化される。
【００２０】
上記の実施形態の説明から明らかなように、プレーン（ブロック）単位で扱うと４スキャン分のビットマップメモリが必要である場合においても、ライン単位で扱うことにより、３スキャン分のビットマップメモリで実現することが可能である。
上記実施形態では、６４本のビットマップラインから成るｎ（Ｘ軸方向のドットの数）×６４サイズのプレーンメモリのデータを転送待ちビットマップライン格納用ポインタ配列に移動する際に、ヘッドスキャン単位になるようにビットマップラインを分割しているが、６４本のビットマップラインを分割せずとも、ヘッドに転送又は、ヘッド転送メモリにコピーする際に、図９に示すように、転送待ちビットマップ格納用ポインタ配列（３８）（４０）（４２）（４４）から３ライン置きに取りだすようにしても良い。
【００２１】
上記実施形態の説明から明らかなように、ＣＰＵ（１０）、これに格納されたプログラム、ポインタ配列（３２）（３４）（３６）及び転送待ちビットマップライン格納用ポインタ配列（３８）（４０）（４２）（４４）は、第１のプレーンメモリの１番目のビットマップラインから所定のライン数置きに、ビットマップラインを選択し、この選択したビットマップラインのデータをヘッドの対応する領域に転送し、以後は、次のプレーンメモリのビットマップラインの１番目のビットマップラインから所定のライン数置きにビットマップラインを選択し、この選択したビッ
トマップラインと、前回ヘッドに転送したプレーンメモリのビットマップラインから前回選択したビットマップラインに対して１ドット分ずらして選択したビットマップラインとをヘッドの対応する領域に転送して２回目以後のヘッドへのデータ転送を順次行うビットマップライン選択手段と、プレーンメモリ設定手段を構成している。
【００２２】
【発明の効果】
本発明は上述の如く、ただちに、コピーし終わったデータのラインだけを集めて新たなビットマップ領域として利用できるので、必要なメモリを総容量を従来より少なくすることができる。
【図面の簡単な説明】
【図１】本発明の説明図である。
【図２】本発明のビットマップデータ転送装置を適用したシステムの構成を示すブロック図である。
【図３】本発明の説明図である。
【図４】ビットマップライン格納手順を示す説明図である。
【図５】ヘッドスキャン方法を示す説明図である。
【図６】インクジェットヘッドの説明図である。
【図７】プロッタの印字動作を示す平面説明図である。
【図８】印字ヘッドのスキャン動作を示す平面説明図である。
【図９】本発明の他の実施形態を示す説明図である。
【符号の説明】
２    ホストコンピュータ
４    ラスタプロッタ
６    インターフェース
８    ＲＡＭ
１０  ＣＰＵ
１２  ＲＯＭ
１４  印字ヘッド
１６  画像プロセッサ
１８  ビットマップメモリ
２０  データ転送回路
２２  ヘッド転送メモリ
２４  用紙
２６  ヘッド駆動部
２８  用紙駆動部
３０  ノズル
３２  ポインタ配列
３４  ポインタ配列
３６  ポインタ配列
３８  転送待ちビットマップ格納用ポインタ配列
４０  転送待ちビットマップ格納用ポインタ配列
４２  転送待ちビットマップ格納用ポインタ配列
４４  転送待ちビットマップ格納用ポインタ配列
４６  イメージ
４８  プレーンメモリ
５０  プレーンメモリ
５２  プレーンメモリ
５４  プレーンメモリ
【図１】
0004218849.tif 000002
【図２】
0004218849.tif 000003
【図３】
0004218849.tif 000004
【図４】
0004218849.tif 000005
【図５】
0004218849.tif 000006
【図６】
0004218849.tif 000007
【図７】
0004218849.tif 000008
【図８】
0004218849.tif 000009
【図９】
0004218849.tif 000010