===開示の概要===
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかとなる。
即ち、(A)媒体に対してインクを吐出するノズルが所定方向に並ぶノズル列をそれぞれ備える複数のヘッドであって、前記所定方向に並んで配置された複数のヘッドと、(B)画像データを構成する複数の画素データを印刷に使用する前記ノズルに割り付けて印刷データを作成し、前記印刷データに基づいて、前記媒体と前記複数のヘッドの相対位置を前記所定方向と交差する方向に相対移動させながら前記ノズルからインクを吐出させる画像形成動作と、前記媒体と前記複数のヘッドの相対位置を前記所定方向に相対移動させる動作と、を繰り返し実行させる制御部であって、(B1)或る画像形成動作時に印刷に使用する前記ノズルと、当該ノズルに前記或る画像形成動作時に形成させるドットの前記媒体上における前記所定方向の位置である第1の位置とを対応付けることと、(B2)前記ヘッドごとに、前記或る画像形成動作時に前記ノズルに形成させるドットの前記媒体上における前記交差する方向の位置である第2の位置を対応付けることと、(B3)或るヘッドが備える前記ノズル列の前記所定方向における一端側の端部の前記ノズルである一端部ノズルに、当該一端部ノズルに対応付けられた前記第1の位置及び前記第2の位置に相当する前記画素データの群であるデータ群の一部を、前記或る画像形成動作時の当該一端部ノズルの前記印刷データとして割り付け、前記或るヘッドが備える前記ノズル列の前記所定方向における他端側の端部の前記ノズルである他端部ノズルであり、当該一端部ノズルと同じ前記第1の位置及び前記第2の位置が対応付けられた他端部ノズルに、前記データ群の別の一部を、別の画像形成動作時の当該他端部ノズルの前記印刷データとして割り付けることと、を実行する制御部と、(C)を有することを特徴とする印刷装置。
このような印刷装置によれば、複数のヘッドがノズル列方向に並んだ印刷装置であっても、画素データを割り付けることができ、各ヘッドの使用率を出来る限り同じにすることができるため、ヘッド特性差による画質劣化を緩和することができる。
かかる印刷装置であって、各前記ヘッドが備える前記ノズル列に属する前記ノズルの数であるノズル数と、前記所定方向に並ぶ前記複数のヘッドの前記所定方向の間隔であるヘッド間隔とを、記憶し、前記制御部は、前記ノズル数と前記ヘッド間隔とに基づいて、前記画像形成動作ごとに、各前記ヘッドに属する前記ノズルであって印刷に使用する前記ノズルに前記第1の位置を対応付けること。
このような印刷装置によれば、複数のヘッドがノズル列方向に並んだ印刷装置であっても、画素データを割り付けることができる。
かかる印刷装置であって、前記媒体と前記複数のヘッドの前記所定方向における相対移動量が一定である通常印刷に使用する前記ノズルを規定するための情報と、前記通常印刷に使用する前記ノズルの中の前記一端部ノズル及び前記他端部ノズルに相当する前記ノズルを規定するための情報とを、前記ヘッドごとに記憶すること。
このような印刷装置によれば、ヘッドごとに一端部ノズル及び他端部ノズルを設定することができる。
かかる印刷装置であって、前記媒体の前記所定方向における端部を印刷する端部印刷であり、前記媒体と前記複数のヘッドの前記所定方向における相対移動量が前記通常印刷よりも短い端部印刷に使用する前記ノズルを規定するための情報を、前記複数のヘッドを1つのヘッドと見立てて記憶すること。
このような印刷装置によれば、印刷に使用するノズルを規定するための情報量を少なくすることができる。
かかる印刷装置であって、前記媒体に対する前記複数のヘッドの相対位置を前記所定方向の前記他端側に移動させ、前記媒体の前記所定方向における前記一端側の端部である上端部を印刷する上端印刷であり、前記媒体と前記複数のヘッドの前記所定方向における相対移動量が前記通常印刷よりも短い上端印刷を、前記通常印刷の前に実施し、前記制御部は、前記上端印刷の或る画像形成動作時の各前記ノズルにより形成可能なドットの前記媒体上における前記所定方向の位置と、当該画像形成動作よりも後の前記画像形成動作の各前記ノズルにより形成可能なドットの前記媒体上における前記所定方向の位置とを、比較し、一致する前記位置に前記ドットを形成可能な前記ノズルは、当該画像形成動作において印刷に使用しない前記ノズルに決定すること。
このような印刷装置によれば、二重にドットが形成されてしまうことを防止できる。
かかる印刷装置であって、前記媒体に対する前記複数のヘッドの相対位置を前記所定方向の前記他端側に移動させ、前記媒体の前記所定方向における前記他端側の端部である下端部を印刷する下端印刷であり、前記媒体と前記複数のヘッドの前記所定方向における相対移動量が前記通常印刷よりも短い下端印刷を、前記通常印刷の後に実施し、前記制御部は、前記下端印刷を行わずに前記通常印刷を継続した場合の各前記画像形成動作時の各前記ノズルにより形成される前記ドットの前記媒体上における前記所定方向の位置である第3の位置を算出し、前記下端印刷の或る画像形成動作時の各前記ノズルにより形成可能なドットの前記媒体上における前記所定方向の位置と、前記第3の位置とを、比較し、一致する前記位置に前記ドットを形成可能な前記ノズルは、当該画像形成動作において印刷に使用する前記ノズルに決定すること。
このような印刷装置によれば、下端印刷で形成すべきドットを形成することができる。
かかる印刷装置であって、前記端部印刷に使用する前記ノズルであって、当該端部印刷よりも後の前記通常印刷における前記一端部ノズルと前記第1の位置及び前記第2の位置が一致する前記ノズルを、前記他端部ノズルに設定し、前記端部印刷に使用する前記ノズルであって、当該端部印刷よりも前の前記通常印刷における前記他端部ノズルと前記第1の位置及び前記第2の位置が一致する前記ノズルを、前記一端部ノズルに設定すること。
このような印刷装置によれば、交差する方向の所定の位置(第2の位置)に対して、2つのノズルでドットを形成することができる。
また、媒体に対してインクを吐出するノズルが所定方向に並ぶノズル列をそれぞれ備える複数のヘッドであって前記所定方向に並んで配置された複数のヘッドと、前記媒体との相対位置を前記所定方向と交差する方向に相対移動させながら前記ノズルからインクを吐出させる画像形成動作と、前記媒体と前記複数のヘッドの相対位置を前記所定方向に相対移動させる動作と、を繰り返し実行する印刷装置の印刷データを、コンピューターに作成させるためのプログラムであって、或る画像形成動作時に印刷に使用する前記ノズルと、当該ノズルに前記或る画像形成動作時に形成させるドットの前記媒体上における前記所定方向の位置である第1の位置とを対応付けることと、前記ヘッドごとに、前記或る画像形成動作時に前記ノズルに形成させるドットの前記媒体上における前記交差する方向の位置である第2の位置を対応付けることと、或るヘッドが備える前記ノズル列の前記所定方向における一端側の端部の前記ノズルである一端部ノズルに、当該一端部ノズルに対応付けられた前記第1の位置及び前記第2の位置に相当する前記画素データの群であるデータ群の一部を、前記或る画像形成動作時の当該一端部ノズルの前記印刷データとして割り付け、前記或るヘッドが備える前記ノズル列の前記所定方向における他端側の端部の前記ノズルである他端部ノズルであり、当該一端部ノズルと同じ前記第1の位置及び前記第2の位置が対応付けられた他端部ノズルに、前記データ群の別の一部を、別の画像形成動作時の当該他端部ノズルの前記印刷データとして割り付けることと、を前記コンピューターに実行させるためのプログラム。
このようなプログラムによれば、複数のヘッドがノズル列方向に並んだ印刷装置であっても、画素データを割り付けることができ、各ヘッドの使用率を出来る限り同じにする印刷データを作成することができる。
===印刷システムについて===
図1は、プリンター1の全体構成ブロック図であり、図2Aは、プリンター1の概略断面図であり、図2Bは、プリンター1の概略上面図である。以下、インクジェットプリンター(プリンター1)とコンピューター60が接続された印刷システムを例に挙げて実施形態を説明する。コンピューター60は、プリンター1と通信可能に接続されており、プリンター1に画像を印刷させるための印刷データをプリンター1に出力する。
コントローラー10は、プリンター1の制御を行うための制御ユニットである。インターフェース部11はコンピューター60とプリンター1との間でデータの送受信を行うためのものである。CPU12はプリンター1全体の制御を行うための演算処理装置である。メモリー13はCPU12のプログラムを格納する領域や作業領域等を確保するためのものである。CPU12はユニット制御回路14により各ユニットを制御する。なお、プリンター1内の状況を検出器群50が監視し、その検出結果に基づいて、コントローラー10は各ユニットを制御する。
搬送ユニット20は、媒体Sが連続する方向(搬送方向)に、媒体Sを上流側から下流側に搬送するものである。モーターによって駆動する搬送ローラー21によって印刷前のロール状の媒体Sを印刷領域に供給し、その後、印刷済みの媒体Sを巻取機構によりロール状に巻き取る。なお、印刷中に印刷領域に位置する媒体を下からバキューム吸着することで、媒体Sを所定の位置に保持することができる。
駆動ユニット30は、ヘッドユニット40を、媒体Sの搬送方向に対応するX方向と媒体Sの紙幅方向に対応するY方向(交差する方向に相当)とに自在に移動させるものである。駆動ユニット30は、ヘッドユニット40をX方向(所定方向に相当)に移動させるX軸ステージ31と、ヘッドユニット40をY方向に移動させるY軸ステージ32と、これらを移動させるモーター(不図示)とで、構成されている。
ヘッドユニット40は、画像を形成するためのものであり、複数のヘッド41を有する。ヘッド41の下面には、インク吐出部であるノズルが複数設けられ、各ノズルにはインクが充填された圧力室が設けられている。なお、ノズルからのインク吐出方式は、駆動素子(ピエゾ素子)に電圧をかけて、圧力室を膨張・収縮させることによりインクを吐出するピエゾ方式でもよいし、発熱素子を用いてノズル内に気泡を発生させ、その気泡によってインクを吐出するサーマル方式でもよい。
図3は、ヘッドユニット40における複数のヘッド41の配置を示す図である。なお、ヘッド41およびノズルの配置をヘッドユニット40の上面から仮想的に見た図である。ここでは、ヘッドユニット40が15個のヘッド41(1)〜41(15)を有するとする。各ヘッド41のノズル面には、イエローインクを吐出するイエローノズル列Yと、マゼンタインクを吐出するマゼンタノズル列Mと、シアンインクを吐出するシアンノズル列Cと、ブラックインクを吐出するブラックノズル列Kが形成されている。各ノズル列はノズルを360個ずつ備え、360個のノズルは紙幅方向に一定の間隔(360dpi)で整列している。図示するように紙幅方向の奥側のノズルから順に小さい番号(正の整数の番号)を付す(#1〜#360)。
製造上の問題等により、ヘッドユニット40内において複数のヘッド41は千鳥状に配置されている。即ち、紙幅方向に隣り合うヘッド(例:41(1),41(2))は搬送方向にずれて配置されている。また、説明のため、紙幅方向の奥側のヘッド41から順に、第1ヘッド41(1)、第2ヘッド41(2)…と呼ぶ。
そして、紙幅方向に隣り合う2つのヘッド(例:41(1)・41(2))の端部の10個のノズルが重複している。具体的には、紙幅方向に隣り合う2つのヘッド(41(1),41(2))のうち、奥側のヘッド(41(1))の手前側端部の10個のノズル#351〜#360の紙幅方向の位置と、手前側のヘッド(41(2))の奥側端部の10個のノズル#1〜#10の紙幅方向の位置が等しい。ゆえに、ヘッドユニット40内において、複数のノズルがヘッドユニット40の幅長さに亘って紙幅方向に一定の間隔(360dpi)で並ぶことになる。
次に、印刷手順について説明する。まず、搬送ユニット20により印刷領域に媒体Sを供給する。そして、X軸ステージ31にてヘッドユニット40をX方向(媒体の搬送方向)に移動させながらノズルからインクを吐出する画像形成動作と、Y軸ステージ32によりX軸ステージ31を介して、ヘッドユニット40をY方向(紙幅方向)に移動する動作と、を繰り返す。その結果、先の画像形成動作により形成されたドット位置とは異なる位置に、後の画像形成動作によりドットを形成することができ、印刷領域に位置する媒体Sに対して2次元の画像を印刷することができる。こうして印刷領域に位置する媒体Sへの印刷が終了すると、搬送ユニット20により印刷が未だなされていない媒体部分が印刷領域に供給され、印刷領域の媒体に画像が印刷される。以下の説明では、1回の画像形成動作(ヘッドユニット40をX方向に移動させながら画像を形成する動作)を「パス」と呼ぶ。
===比較例の印刷方法===
図4は、2つのヘッド41を1つのヘッドと見立てた仮想1ヘッドを説明する図であり、図5は、仮想1ヘッドによる比較例の印刷方法を説明する図である。図3に示すように、プリンター1は15個のヘッド41を備えるが、以下、説明の簡略のため、2個のヘッド41を用いて説明する。また、各ヘッド41が有するノズル列数を1つとし、ノズル列に属するノズル数を8個(#1〜#8)とする。そして、第1ヘッド41(1)のY方向手前側の2個のノズル#7,#8と、第2ヘッド41(2)のY方向奥側の2個のノズル#1,#2が重複しているとする。
ここで、第1ヘッド41(1)と第2ヘッド41(2)を組み合わせて1つの大きなヘッドと見立てたヘッドを「仮想1ヘッド」と呼ぶ。各ヘッド41のノズル数が8個であり、重複するノズル数が2個であるため、仮想1ヘッドではノズル数が14個(##1〜##14)となる。例えば、仮想1ヘッドのノズル##1が、第1ヘッド41(1)のノズル#1に対応し、仮想1ヘッドのノズル##7が、第1ヘッド41(1)のノズル#7、及び、第2ヘッド41(2)のノズル#1と対応する。
比較例の印刷方法は、仮想1ヘッドのY方向奥側と手前側の端部ノズルとが、他の1つのノズルと同じ機能を果たす印刷方法とする(所謂、部分オーバーラップ印刷)。即ち、所定の画素に対して端部ノズルでないノズルは1つのノズルでドットを形成するのに対して、同じ所定の画素に対して端部ノズルはY方向奥側と手前側の2つの端部ノズルでドットを形成する。ここで、図4に示す仮想1ヘッドのY方向奥側の4個の端部ノズル(##1〜##4・△)を「上部POLノズル」と呼び、仮想1ヘッドのY方向手前側の4個の端部ノズル(##11〜##14・□)を「下部POLノズル」と呼ぶ。
図5の左図は、比較例の印刷方法におけるパスごとの仮想1ヘッドの位置関係を示す図である。図では、ノズルピッチを「2D」(図3の360dpi)とし、Y方向に並ぶラスターライン(X方向に沿うドット列)の間隔(以下「ノズル間ピッチ」と呼ぶ、Y方向の印刷解像度に相当)を「D」とする。そして、印刷開始時にも終了時にもヘッドユニット40の搬送量を一定とし、図中では搬送量を「5D」とする。即ち、比較例の印刷方法では、ヘッドユニット40をX方向に移動しながらインクを吐出する画像形成動作と、媒体に対してヘッドユニット40をY方向手前側に搬送量5Dだけ移動する動作とを繰り返す。また、図5では、上端印刷処理及び下端印刷処理を実施しない。
ここで、1つのドットが形成される媒体上の単位領域を「画素領域」と呼び、画素領域は画素データと対応する。図5の右図は、X方向に並ぶ4個の画素領域とその画素領域に形成されるドットを示す。なお、上部POLノズルにて形成されるドットを「△」で示し、下部POLノズルにて形成されるドットを「□」で示し、それ以外のドットを「○」で示す。図示するように、斜線の画素領域と白い画素領域が交互に並び、斜線の画素領域のX方向の位置(以下、水平位置と呼ぶ)を「1」とし、白い画素領域の水平位置を「2」とする。そして、比較例の印刷方法では、仮想1ヘッドごとに、各パスでドットを形成する画素領域の水平位置を決定する。例えば、図5の左図に示すように、パス1、パス4、パス5…のように仮想1ヘッドが斜線で示されたパスでは、水平位置が1である画素領域にドットが形成される。一方、パス2、パス3、パス6…のように仮想1ヘッドが白で示されたパスでは、水平位置が2である画素領域にドットが形成される。
また、ここでは、図4に示すように、第1ヘッド41(1)と第2ヘッド41(2)の重複する2つのノズルのうちの一方のノズルだけを使用する。例えば、第1ヘッド41(1)のノズル#7は使用するが、それに対応する第2ヘッド41(2)のノズル#1は使用しないとし、第1ヘッド41(1)のノズル#8は使用しないが、それに対応する第2ヘッド41(2)のノズル#2は使用する。そして、図5では、仮想1ヘッドにおける各ヘッド41のノズルを区別するために、仮想1ヘッドにおける第1ヘッド41(1)のノズル##1〜##7を細線で示し、仮想1ヘッドにおける第2ヘッド41(2)のノズル##8〜##14を太線で示す。印刷に使用するノズルを実線で示し、印刷に使用しないノズルを点線で示す。また、媒体上に形成されるラスターラインのY方向の位置を「ラスター位置」と呼ぶ。図5の右図に示すように、画像を構成するラスターラインに対して、Y方向の奥側から順に小さい番号を付ける。比較例の印刷方法では、印刷開始のラスターラインが0番目のラスターライン(L0)であり、印刷終了のラスターラインが22番目のラスターライン(L22)である。
ラスターラインごとに、ラスターラインを形成するノズルの構成が異なる。例えば、0番目のラスターラインは、第1ヘッド41(1)の上部POLノズル(△)と第2ヘッド41(2)の下部POLノズル(□)によって斜線の画素領域にドットが形成され、第1ヘッド41(1)のノズル(○)によって白の画素領域にドットが形成される。そのため、X方向に並ぶ画素領域のうちの3/4の画素領域が第1ヘッド41(1)のノズルに割り当てられ、残りの1/4の画素領域が第2ヘッド41(2)のノズルに割り当てられる。ゆえに、図5の右図に示すように、0番目のラスターラインでは、第1ヘッド41(1)の使用率が75%となり、第2ヘッドの使用率が25%となる。
一方、1番目のラスターラインでは、第1ヘッド41(1)のノズルによって斜線の画素領域にドットが形成され、第2ヘッド41(2)のノズルによって白の画素領域にドットが形成されるので、各ヘッド41の使用率が同じ50%となる。2番目のラスターラインでは、第1ヘッド41(1)の上部POLノズルと第2ヘッド41(2)の下部POLノズルによって斜線の画素領域にドットが形成され、第2ヘッド41(2)のノズルによって白の画素領域にドットが形成されるので、第1ヘッド41(2)の使用率が25%となり、第2ヘッド41(2)の使用率が75%となる。
このように、比較例の印刷方法では、0番目や2番目のラスターライン(L0,L2)のように、第1ヘッド41(1)の使用率と第2ヘッド41(2)の使用率が異なるラスターラインが形成される(各ヘッド41の使用率が50%でないラスターラインが形成される)。また、ラスターラインによって各ヘッド41の使用率が異なる。これは、比較例の印刷方法では、Y方向に並ぶ第1ヘッド41(1)と第2ヘッド41(2)を1つの仮想1ヘッドと見立て、仮想1ヘッドにおけるY方向奥側の端部ノズル(##1〜##4)を上部POLノズルに設定し、仮想1ヘッドにおけるY方向手前側の端部ノズル(##11〜##14)を下部POLノズルに設定するからである。即ち、上部POLノズルと下部POLノズルが異なるヘッド41に属するからである。この場合、POLノズルが割り当てられるラスターラインでは、異なるヘッド41の上部POLノズルと下部POLノズルとで、水平位置が同じである画素領域に、ドットが形成されることになり、第1ヘッド41(1)と第2ヘッド41(2)の使用率が異なってしまう。
製造誤差などにより、ヘッド41ごとにインク吐出特性にばらつきが生じる(例えば、インク吐出量やインク滴の飛翔方向にばらつきが生じる)。そのため、比較例の印刷方法では、第1ヘッド41(1)と第2ヘッド41(2)の使用率が異なるラスターラインが、一方のヘッド41の特性の影響を強く受けてしまう。例えば、0番目のラスターライン(L0)は、第1ヘッド41(1)の特性の影響を強く受けたラスターラインとなる。また、比較例の印刷方法で形成された画像では、第1ヘッド41(1)の影響を強く受けたラスターラインや第2ヘッド41(2)の影響を強く受けたラスターラインが混在する。その結果、画像に濃度むらが生じたり、画像上にすじが生じたりする等、印刷画像の画質が劣化してしまう虞がある。
===本実施形態の印刷方法===
図6は、2つのヘッド41を個々のヘッドとして組み合わせた仮想2ヘッドを説明する図であり、図7は、仮想2ヘッドによる本実施形態の印刷方法を説明する図である。前述の比較例の印刷方法(図4)では、Y方向に並ぶ第1ヘッド41(1)と第2ヘッド41(2)を1つのヘッド(仮想1ヘッド)と見立てているため、第1ヘッド41(1)のY方向奥側の端部ノズルが上部POLノズルに設定され、第2ヘッド41(2)のY方向手前側の端部ノズルが下部POLノズルに設定されている。これに対して、本実施形態の印刷方法では、Y方向に並ぶ第1ヘッド41(1)と第2ヘッド41(2)を組み合わせた仮想ヘッド(仮想2ヘッド)においても、第1ヘッド41(1)と第2ヘッド41(2)を個々のヘッド41として扱い、ヘッド41ごとに上部POLノズルと下部POLノズルを設定する。なお、第1ヘッド41(1)と第2ヘッド41(2)の端部が重複しているため、第1ヘッド41(1)のノズル#1から第2ヘッド41(2)のノズル#8に亘って、仮想2ヘッドのノズルにおいて連番のノズル番号を付ける。Y方向奥側のノズルから順に小さい番号を付ける(##1〜##14)。また、ここでも、重複する2つのノズルのうちの一方のノズルを使用するとし、第1ヘッド41(1)のノズル#8と第2ヘッド41(2)のノズル#1は不使用ノズルとする。
そして、第1ヘッド41(1)のノズル#1,#2に対応する仮想2ヘッドのノズル##1,##2が上部POLノズル(△)に設定され、第1ヘッド41(1)のノズル#6,#7に対応する仮想2ヘッドのノズル##6,##7が下部POLノズル(□)に設定される。一方、第2ヘッド41(2)のノズル#2,#3に対応する仮想2ヘッドのノズル##8,##9が上部POLノズル(△)に設定され、第2ヘッド41(2)のノズル#7,#8に対応する仮想2ヘッドのノズル##13,##14が下部POLノズル(□)に設定される。
比較例の印刷方法(図5)と同様に、本実施形態の印刷方法(図7)でも、ノズルピッチを2Dとして、ノズル間ピッチをDとし、ヘッドユニット40のY方向手前側への搬送量を5Dとする。また、図7では、上端印刷処理および下端印刷処理を実施していない。ところで、比較例の印刷方法では、第1ヘッド41(1)と第2ヘッド41(2)を1つのヘッド(仮想1ヘッド)と見立てているため、各パスで仮想1ヘッドに割り当てられる画素領域の水平位置は1つである。即ち、同じパスであれば、第1ヘッド41(1)に割り当てられる画素領域の水平位置と第2ヘッド41(2)に割り当てられる画素領域の水平位置とが等しい。
これに対して、本実施形態の印刷方法では、第1ヘッド41(1)と第2ヘッド41(2)を個々のヘッドとして扱うため、各パスで第1ヘッド41(1)と第2ヘッド41(2)に割り当てられる画素領域の水平位置が異なっている。例えば、パス4において、第1ヘッド41(1)には水平位置が2の画素領域(斜線の画素領域)が割り当てられ、第2ヘッド41(2)には水平位置が1の画素領域(白の画素領域)が割り当てられている。
これは、本実施形態では、ヘッド41ごとに上部POLノズルと下部POLノズルを設定し、第1ヘッド41(1)の下部POLノズルと第2ヘッド41(2)の上部POLノズルとがY方向に並ぶからである。例えば、パス3の第2ヘッド41(2)の下部POLノズル(□)と相方となるノズルは、パス5の第2ヘッド41(2)の上部POLノズル(△)である。そのため、パス3の第2ヘッド41(2)とパス5の第2ヘッド41(2)には、同じ水平位置の画素領域を割り当てる必要がある。そして、パス3の第2ヘッド41(2)の下部POLノズルの直ぐ上の第2ヘッド41(2)の通常のノズル(○)は、パス5の第1ヘッド41(1)の下部POLノズル(□)と同じラスター位置にドットを形成するため、パス3の第2ヘッド41(2)とパス5の第1ヘッド41(1)には、異なる水平位置の画素領域を割り当てる必要がある。よって、パス5の第1ヘッド41(1)と第2ヘッド41(2)にはそれぞれ異なる水平位置の画素領域が割り当てられる。
このように、本実施形態の印刷方法では、Y方向に並ぶヘッド41ごとに上部POLノズルと下部POLノズルが設定される。その結果、同じヘッド41の上部POLノズルと下部POLノズルに、同じ水平位置の画素領域が割り当てられる。例えば、0番目のラスターライン(L0)では、第1ヘッド41(1)の上部POLノズル及び下部POLノズルに、斜線の画素領域が割り当てられ、2番目のラスターライン(L2)では、第2ヘッド41(2)の上部POLノズル及び下部POLノズルに、白の画素領域が割り当てられる。
そして、ヘッドユニット40の搬送量の調整により、1つのラスター位置に対して、第1ヘッド41(1)と第2ヘッド41(2)の両方のノズルが割り当てられる。そのため、同じヘッド41の上部POLノズルと下部POLに割り当てられた画素領域と異なる画素領域には、異なるヘッド41の通常のノズルが割り当てられる。例えば、0番目のラスターラインでは、第1ヘッド41(1)の上部POLノズル及び下部POLノズルに斜線の画素領域が割り当てられ、第2ヘッド41(2)の通常ノズルに白の画素領域が割り当てられる。また、2番目のラスターラインでは、第2ヘッド41(2)の上部POLノズル及び下部POLノズルに白の画素領域が割り当てられ、第1ヘッド41(1)の通常のノズルに斜線の画素領域が割り当てられる。
つまり、本実施形態の印刷方法によれば、水平位置が1である斜線の画素領域と水平位置が2である白の画素領域のうちの一方の画素領域に対して、第1ヘッド41(1)と第2ヘッド41(2)のうちの一方のヘッド41の上部POLノズル(△)及び下部POLノズル(□)とが割り当てられ、他方の画素領域に対して他方のヘッド41の通常のノズル(○)が割り当てられる。そのため、上部POLノズル及び下部POLノズルが割り当てられるラスターラインであっても、第1ヘッド41(1)の使用率と第2ヘッド41(2)の使用率を同じ50%ずつにすることが出来る。また、上部POLノズルと下部POLノズルが割り当てられないラスターラインにおいても、斜線の画素領域と白の画素領域のうちの一方の画素領域に第1ヘッド41(1)の通常のノズルが割り当てられ、他方の画素領域に第2ヘッド41(2)の通常のノズルが割り当てられ、第1ヘッド41(1)と第2ヘッド41(2)の各使用率が同じ50%となる。よって、本実施形態の印刷方法では、図7にも示すように、全てのラスターライン(L0〜L22)において、第1ヘッド41(1)の使用率と第2ヘッド41(2)の使用率が同じ50%ずつとなる。
このように、第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じにしてラスターラインを形成することで(出来る限り一定にすることで)、2つのヘッド41のうちの一方のヘッド41の特性の影響を強く受けたラスターラインが形成されてしまうことを防止できる。その結果、本実施形態の印刷方法では、ヘッド41の特性差による画像の画質劣化を抑制することができる。なお、本実施形態の印刷方法(図7)と比較例の印刷方法(図5)では、ノズル数およびノズル間ピッチ、ヘッドユニットの搬送量が一定であるため、各ラスターラインに割り当てられるノズルの構成(組み合わせ)は同じである。しかし、比較例と本実施形態とではPOLノズルの設定の仕方が異なるため、本実施形態では、同じヘッド41のPOLノズルを同じ画素領域に割り当てることができ、第1ヘッド41(1)と第2ヘッド41(2)使用率を一定にすることが出来ている。
図8は、上端・下端印刷処理を実施する本実施形態の印刷方法を説明する図である。前述の図7では、媒体のY方向奥側の上端部を印刷する際にも(印刷開始時にも)、媒体のY方向手前側の下端部を印刷する際にも(印刷終了時にも)、ヘッドユニット40の搬送量が一定である。そのため、印刷開始時および終了時における媒体に対するヘッドユニット40の飛び出し量が大きい。そこで、図8では、印刷開始時にはヘッドユニット40の搬送量「D」を通常印刷時「5D」よりも小さくする上端印刷と、印刷終了時にはヘッドユニット40の搬送量「D」を通常印刷時「5D」よりも小さくする下端印刷とを実施する。その結果、図8の印刷では図7の印刷に比べて媒体に対するヘッドユニット40の飛び出し量を小さくすることが出来る。
上端・下端印刷では、通常印刷では形成しきれないドットを形成するとする。そのため、上端・下端印刷で形成可能なドットがあっても、そのドットが通常印刷で形成可能であれば、そのドットを通常印刷で形成させる。即ち、図8の印刷方法では、先のパスで形成可能なドットよりも後のパスで形成可能なドットを優先させて、後のパスでドットを形成する。なお、図8では、パス1〜パス4が上端印刷のパスに相当し、パス10〜パス13が下端印刷のパスに相当する。
上端・下端印刷では、通常印刷時とは異なり、第1ヘッド41(1)と第2ヘッド41(2)の各端部ノズルを上部POLノズルおよび下部POLノズルに固定して設定しない。上端・下端印刷では、通常印刷の上部POLノズル及び下部POLと相方となるノズル(即ち、同じラスター位置、同じ画素領域(水平位置)が割り当てられるノズル)を上部POLノズル又は下部POLノズルに設定する。例えば、通常印刷のパス5の第1ヘッド41(1)の上部POLノズル##1,##2(△)と相方となる上端印刷のパス1の第1ヘッド41(1)のノズル##5,##6が、下部POLノズル(□)に設定される。同様に、通常印刷のパス9の第2ヘッド41(2)の下部POLノズル##13,##14(□)と相方となる下端印刷のパス13の第2ヘッド41(2)のノズル##9,##10が、上部POLノズル(△)に設定される。
また、上端・下端印刷では、通常印刷時とは異なり、同じパスにおいてヘッド41ごとに割り当てる画素領域の水平位置を異ならせない。上端・下端印刷では、同じパスであれば、第1ヘッド41(1)にも第2ヘッド41(2)にも同じ水平位置の画素領域が割り当てられる。例えば、パス1では、第1ヘッド41(1)にも第2ヘッド41(2)にも、水平位置が1である斜線の画素領域が割り当てられる。これは、上端・下端印刷では、通常印刷の上部POLノズル及び下部POLノズルと相方となるノズルを、上部POLノズル及び下部POLノズルに設定し、また、ヘッドユニット40の搬送量Dが短いからである。この場合、通常印刷の上部POLノズル又は下部POLノズルと相方となる上端・下端印刷のノズルがヘッド41の繋ぎ目をまたぐ場合があるからである。例えば、パス6の第1ヘッド41(1)の上部POLノズル(△)と相方となる上端印刷のパス2のノズル##7,##8が下部POLノズル(□)に設定される。この下部POLノズルに設定されたノズル##7,##8に割り当てる画素領域を同じにする必要がある。ただし、ノズル##7,##8は異なるヘッド41に属する。よって、上端・下端印刷では、第1ヘッド41(1)と第2ヘッド41(2)に同じ水平位置の画素領域を割り当てる。
このように、通常印刷の上部POLノズル及び下部POLノズルと相方となる上端・下端印刷のノズルを上部POLノズル及び下部POLノズルに設定するため、異なるヘッド41の上部POLノズルと下部POLノズルとが組みになる場合がある。例えば、パス6の上部POLノズル##1とパス2の下部POLノズル##7は同じ第1ヘッド41(1)に属する。これらのノズルによって形成される5番目のラスターライン(L5)では、第1ヘッド41(1)の使用率が100%となり、第2ヘッド41(2)の使用率が0%となる。そして、パス6の上部POLノズル##2とパス2の下部POLノズル##8は異なるヘッド41に属する。これらのノズルによって形成される7番目のラスターライン(L7)では、第1ヘッド41(1)の使用率が75%となり、第2ヘッド41(2)の使用率が25%となる。そして、通常印刷のノズル同士で上部POLノズルと下部POLノズルの組となったラスターラインでは、全て第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じ50%にすることが出来る。そのため、比較例の印刷方法(図5)に比べて、この図8の印刷方法の方が、ほとんどのラスターラインに関して第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じにすることができ、画質劣化が抑制される。また、第1ヘッド41(1)と第2ヘッド41(2)の使用率を100%から50%に徐々に切替えていくことによって、ヘッド41の特性による画質劣化を緩和することができる。
以上をまとめると、図7に示すように、上端・下端印刷を実施しない場合、必ず同じヘッド41に属する上部POLノズルと下部POLノズルを組にすることができ、全てのラスターラインに関して第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じ50%にすることができる。ただし、媒体に対するヘッドユニット40の飛び出し量が大きくなってしまう。これに対して、図8に示すように、上端・下端印刷を実施する場合、媒体に対するヘッドユニット40の飛び出し量を小さくすることができるが、一部のラスターラインにおいて第1ヘッド41(1)と第2ヘッド41(2)の使用率が異なってしまう。
なお、本実施形態の印刷方法では、通常印刷では、Y方向に並ぶ第1ヘッド41(1)と第2ヘッド41(2)を個別に扱い、ヘッド41ごとに上部POLノズル及び下部POLノズルを設定し、また、同じパスにおいて各ヘッド41に割り当てる画素領域の水平位置も異ならせている。これに対して、上端・下端印刷では、ヘッド41ごとに上部POLノズル及び下部POLノズルを設定せず、また、同じパスにおいて各ヘッド41に割り当てる画素領域の水平位置を同じにする。そのため、通常印刷では、第1ヘッド41(1)と第2ヘッド41(2)を個々のヘッドとして組み合わせた「仮想2ヘッド」と見立て、上端・下端印刷では、第1ヘッド41(1)と第2ヘッド41(2)を1つの大きなヘッドとして組み合わせた「仮想1ヘッド」と見立てることができる。
===印刷データの作成===
<プリンタードライバーについて>
コンピューター60には、アプリケーションプログラムから出力された画像データを印刷データに変換し、印刷データをプリンター1に出力するためのプログラム(プリンタードライバー)がインストールされている。プリンタードライバーは、CD−ROMなどの記録媒体(コンピューターが読み取り可能な記録媒体)に記録されていたり、インターネットを介してコンピューターにダウンロード可能であったりする。プリンタードライバーは、メモリーに記憶されたプログラムに従って、コンピューター60のハードウェア資源を利用して、以下の処理を実行する。
以下、印刷データの作成フローを説明する。プリンタードライバーは、まず、解像度変換処理を実施する。解像度変換処理は、アプリケーションプログラムから出力された画像データを、媒体に印刷する際の解像度に変換する処理である。なお、解像度変換処理後の画像データは、RGB色空間により表される多階調(例えば256階調)のRGBデータである。画像データは、印刷画像を構成する画素に関する画素データから構成される。
次に、プリンタードライバーは色変換処理を実施する。色変換処理は、プリンター1にて印刷可能なように、プリンター1が有するインクの色に応じて、RGBデータをCMYK色空間により表されるCMYKデータに変換する処理である。その後、プリンタードライバーはハーフトーン処理を実施する。ハーフトーン処理は、高階調数のデータを、プリンター1が形成可能な階調数のデータに変換する処理である。例えば、ハーフトーン処理により、256階調を示すデータが、4階調を示す2ビットデータに変換される。ハーフトーン処理後の画素データは、画素領域に形成するドットに関するデータである。例えば、4階調の画素データであれば、「大ドット形成」「中ドット形成」「小ドット形成」「ドット無し」の何れかが示される。
最後にプリンタードライバーは、「ノズル割り付け処理」を実施する。ノズル割り付け処理は、マトリクス状に配置された画素データから構成される画像データを、プリンター1に送信すべきデータ順に並び替える処理である。即ち、ノズル割り付け処理では、パスごとに、各ノズルに割り付ける画素データが決定される(詳細は後述)。そして、プリンタードライバーは、これらの処理を経て作成された印刷データをプリンター1に送信する。プリンター1は受信した印刷データに基づき、印刷を実施する。
<ノズル割り付け処理>
図9は、ノズル割り付け処理を実施するためにプリンタードライバーが参照する印刷に関するパラメーターテーブルである。パラメーターテーブルには、ノズル間ピッチ(ラスターラインのY方向の間隔)と、ヘッドユニット40の搬送量と、開始ノズルおよび終了ノズルと、開始ラスター位置および終了ラスター位置と、水平位置とが記憶されている。なお、開始ノズル及び終了ノズルは、印刷に使用可能なノズルの範囲を示し、開始ラスター位置および終了ラスター位置は各印刷の開始時と終了時の仮想ヘッドのノズル##1が対応するラスター位置を示す。これらの値は、印刷モードや用紙サイズによって変動する。また、これらのパラメーターテーブルは、プリンター1側のメモリー13に記憶されていても良いし、コンピューター60にプリンタードライバーをインストールする際にコンピューター60側のメモリーに記憶されるようにしても良い。
パスごとに、各ヘッド41で使用する画素データを画像データの中から抽出し、各ノズルに割り付ける順番に画素データを並べ替えるために、プリンタードライバーは、該当パスにおいて、各ヘッド41のノズルが印刷に使用する使用ノズルであるか否かを決定し、その使用ノズルがドットを形成すべきラスター位置(第1の位置に相当)及び水平位置(第2の位置に相当)を決定する必要がある。そのために、ここでは、プリンタードライバーは、図9のパラメーターテーブルを参照し、第1ヘッド41(1)と第2ヘッド41(2)を組み合わせた仮想ヘッドに関して「仮想ヘッドテーブル」を作成する。
プリンタードライバーは、印刷順のパスごとにノズル割り付け処理を実施して印刷データをプリンター1に送信する。即ち、全てのパスのノズル割り付け処理が終了する前に、ノズル割り付け処理が終了した印刷データをプリンター1に送信する。そうすることで、印刷を早く開始することができ、また、仮想ヘッドテーブルや、並べ替えた印刷データを記憶する記憶領域を、パスごとに上書きすることができ、メモリー容量を小さくすることが出来る。ただし、これに限らず、全てのパスのノズル割り付け処理が終了した後に、印刷データをまとめてプリンター1に送信してもよい。以下、図8の印刷方法を実施するために、上端印刷・通常印刷・下端印刷の順に各印刷に関するノズル割り付け処理を説明する。
<上端印刷>
図10Aから図10D及び図11Aから図11Cは、上端印刷のパス1の仮想ヘッドテーブルを作成する様子を示す図である。前述のように、上端印刷および後述の下端印刷では、第1ヘッド41(1)と第2ヘッド41(2)のノズルに対して予め上部POLノズル及び下部POLノズルを設定せず、また、2つのヘッド41に割り当てる画素領域の水平位置を等しくする。よって、プリンタードライバーは、上端・下端印刷では、第1ヘッド41(1)と第2ヘッド41(2)を1つの大きなヘッドとして見立てた仮想1ヘッドに関するヘッドテーブルを作成すると言える。なお、上端・下端印刷の仮想1ヘッドは図示しないが、図6の仮想2ヘッドのノズル##1〜##14が全て通常のノズル(○)であるヘッドである。
プリンタードライバーは、上端印刷のパス1から順に、仮想ヘッドテーブルを作成する。仮想ヘッドテーブルには、図10Aに示すように、ヘッド位置と、水平位置と、仮想ヘッドのノズル##1〜##14のノズル種別とが、記憶されている。「ヘッド位置」とは、該当パスの仮想ヘッドのノズル##1が対応するラスター位置である。「水平位置」は、該当パスにて仮想ヘッド(即ち、第1ヘッド41(1)及び第2ヘッド41(2))がドットを形成すべき画素領域のX方向の位置を示す。「ノズル種別」では、各ノズル##1〜##14が印刷に使用する「使用ノズル」であるのか、印刷に使用しない「不使用ノズル」であるのかが示される。また、図8に示す印刷方法の場合には、上部POLノズルと下部POLノズルは他の通常のノズルとは区別して記憶される。
プリンタードライバーは、図9のパラメーターテーブルの中の上端印刷に関するパラメーターテーブルを参照し、パス1のヘッド位置、及び、水平位置を決定する。パス1のヘッド位置は、パラメーターテーブルの開始ラスター位置に相当するため「−8」となる。また、パラメーターテーブルでは、水平位置が「1,2,2,1」と記憶されている。この水平位置を小さいパスから順に割り当てればよく、パス1の水平位置は「1」となる。上端印刷では第1ヘッド41(1)と第2ヘッド41(2)を1つのヘッド(仮想1ヘッド)として扱うため、仮想ヘッドテーブルに記憶させる水平位置は1個だけである。なお、パス2以降のヘッド位置は、「開始ラスター位置+(搬送量/ノズル間ピッチ)×(該当パス−パス1)」により算出することが出来る。
そして、パラメーターテーブルの開始ノズルが##1であり、終了ノズルが##14であるため、プリンタードライバーは、図10Aの中央図に示すように、まず、仮想ヘッドの全てのノズル##1〜##14を「使用ノズル」に決定する。このように上端印刷に関するパラメーターテーブルでは、第1ヘッド41(1)及び第2ヘッド41(2)を1つのヘッドと見立てた仮想ヘッドにおける使用ノズルの範囲を示す(印刷に使用するノズルを規定するための情報を記憶する)。そうすることで、ヘッド41ごとに使用ノズルの範囲を記憶する場合に比べて、パラメーターテーブルの数を少なくすることができ、メモリー容量を削減することができる。
次に、上端印刷のパス1のヘッド位置(−8)が印刷開始位置(0番目のラスター位置)よりもY方向奥側に位置するため、プリンタードライバーは印刷領域外のラスター位置が割り当てられるノズルを「不使用ノズル」に決定する。例えば、印刷領域内の開始ノズルは、「(印刷開始位置−ヘッド位置)/(ノズルピッチ/ノズル間ピッチ)+1」により算出することができる。よって、パス1における印刷領域内の開始ノズルは「##5(=(0−(−8))/(2D/D)+1)」となる。よって、プリンタードライバーは、図10Aの右図に示すように、仮想ヘッドのノズル##1〜##4を不使用ノズルに決定する。なお、図10Aの左図に示すように、不使用ノズルを白丸(○)で示し、使用ノズルを黒丸(●)で示す。
図8に示す印刷方法では、上端印刷の或るパスで形成可能なドットよりも、そのパスよりも後続のパスで形成可能なドットを優先させる。即ち、上端印刷の或るパスのノズルが形成可能なラスター位置と、そのパスよりも後続のパスのノズルが形成可能なラスター位置を比較し、位置が一致する場合には上端印刷の或るパスのノズルを不使用ノズルに決定する。そうすることで、ドットが二重に形成されてしまうことを防止できる。そのため、上端印刷のパスの仮想ヘッドテーブルを作成するために、プリンタードライバーは、上端印刷の或るパスのノズルが形成可能なラスター位置と、そのパスよりも後続のパスのノズルが形成可能なラスター位置との比較処理を行う。また、図8の印刷方法のように、パスごとにドットを形成する画素領域が設定される場合には、該当パスの水平位置と後続のパスの水平位置も比較する。
プリンタードライバーは、まず、図10Bから図10Dに示すように、パス1の使用ノズルで形成可能な各ラスター位置(及び水平位置)と、パス1よりも後続の上端印刷のパス2〜4における使用ノズルで形成可能な各ラスター位置(及び水平位置)との比較を行う。なお、プリンタードライバーは、上端印刷の範囲を、図9のパラメーターテーブルの「終了ラスター位置」によって判断する。例えば、上端印刷の最後のパスは、「(終了ラスター位置−開始ラスター位置)/(搬送量/ノズル間ピッチ)+1」により算出することができる。ここでは、パス4(=((−5)−(−8))/(D/D)+1)までが上端印刷であると判断される。また、プリンタードライバーは、後続のパス2〜4の各ヘッド位置と、ノズルピッチと、ノズル間ピッチとに基づき、パス2〜4の使用ノズルで形成可能な各ラスター位置を算出することができる。
図10Bに示すように、パス1の使用ノズルで形成可能な各ラスター位置とパス2の使用ノズルで形成可能な各ラスター位置は一致せず、また、パス1とパス2では水平位置も一致しない。よって、仮想ヘッドテーブルは図10Aの右図から変化しない。同様に、図10Cに示すように、パス1の使用ノズルで形成可能な各ラスター位置とパス3の使用ノズルで形成可能な各ラスター位置は一致するが、パス1とパス3では水平位置が一致しない。よって、仮想ヘッドテーブルは図10Aの右図から変化しない。また、図10Dに示すように、パス1の使用ノズルで形成可能な各ラスター位置とパス4の使用ノズルで形成可能な各ラスター位置は一致せず、仮想ヘッドテーブルは図10Aの右図から変化しない。
図8に示す印刷方法ではパス4から通常印刷となる。そのため、次に、プリンタードライバーは、図9に示す通常印刷に関するパラメーターテーブルを参照し、パス1の使用ノズルで形成可能な各ラスター位置(及び水平位置)と、通常印刷の使用ノズルで形成可能な各ラスター位置(及び水平位置)を比較する。まず、プリンタードライバーは、第1ヘッド41(1)の通常印刷・上部POLノズル・下部POLノズルのテーブルを参照し、通常の使用ノズルがノズル##3〜##5であり、第1ヘッド41(1)の上部POLノズルがノズル##1,##2であり、第1ヘッド41(1)の下部POLノズルがノズル##6,##7であると判断し、また、第1ヘッド41(1)の水平位置が1(斜線の画素領域)であることを判断する。同様にして、第2ヘッド41(2)に関しても使用ノズル等を判断する。その結果、図11Aに示すように、パス1のノズル##7〜##9はパス5の通常のノズル(○)とラスター位置が一致し、更に、パス1とパス5では水平位置が一致する。よって、プリンタードライバーは、パス1のノズル##7〜##9を不使用ノズルに変更する。こうすることで、2重にドットが形成されてしまうことを防止できる。
また、パス1のノズル##5,##6はパス5の上部POLノズル(△)と、ラスター位置が一致し、且つ、水平位置が一致する。図8の印刷方法では、通常印刷のあるパスの上部POLノズル(△・一端部ノズルに相当)は、そのパスよりも前のパスの下部POLノズル(□・他端部ノズルに相当)と組になる。よって、パス1のノズル##5,##6は、パス5の上部POLノズルの相方となるノズルである。よって、プリンタードライバーは、パス1のノズル##5,##6を下部POLノズルに変更する。こうすることで、所定の水平位置の画素領域に対して2つのノズルでドットを形成することができる。また、パス1のノズル##10,##11はパス5の下部POLノズル(□)とラスター位置が一致し、且つ、水平位置が一致する。しかし、図8の印刷方法では、あるパスの下部POLノズル(□)は、そのパスよりも後のパスの上部POLノズル(△)と組になる。即ち、パス1のノズル##10,##11はパス5の下部POLノズルの相方となるノズルではない。よって、プリンタードライバーは、パス1のノズル##10,##11を不使用ノズルに変更する。
同様にして、プリンタードライバーは、図11Bに示すように、パス1の使用ノズルで形成可能なラスター位置とパス6の使用ノズルで形成可能なラスター位置とが一致しないと判断し、図11Aの仮想ヘッドテーブルを変更しない。そして、プリンタードライバーは、パス1とパス7の比較を行った結果、図11Cに示すように、パス1の使用ノズル##12〜##14で形成可能なラスター位置と、パス7の通常のノズル(○)で形成可能なラスター位置が一致すると判断する。更に、パス1とパス7では水平位置が一致する。よって、プリンタードライバーは、パス1のノズル##12〜##14を不使用ノズルに変更する。
このように、プリンタードライバーは、パス1の使用ノズルで形成可能なラスター位置が、後続パスの使用ノズルで形成可能なラスター位置と重複しなくなるまで、パス1と後続のパスにおいて、ラスター位置および水平位置の比較処理を実施する。こうして、パス1の仮想ヘッドテーブル(図11C)が完成する。プリンタードライバーは、他の上端印刷のパス2〜4に関しても同様にして仮想ヘッドテーブルを作成する。
<通常印刷>
図12は、通常印刷のパス5の仮想ヘッドテーブルを説明する図である。前述のように、通常印刷では、Y方向に並ぶ第1ヘッド41(1)と第2ヘッド41(2)を個々のヘッドとして扱うので、図9に示すパラメーターテーブルにおいても、第1ヘッド41(1)のテーブルと第2ヘッド41(2)のテーブルに分かれている。ここでは、プリンタードライバーは、第1ヘッド41(1)と第2ヘッド41(2)を個々のヘッドとして組み合わせた仮想2ヘッド(図6)に関する仮想ヘッドテーブルを作成する。
プリンタードライバーは、まず、パス5のヘッド位置を算出する。ヘッド位置は、仮想ヘッドにおけるノズル##1に対応するラスター位置であり、第1ヘッド41(1)のノズル#1に対応するラスター位置である。パス5は通常印刷の最初のパスであるため、プリンタードライバーは、第1ヘッド41(1)の通常印刷のテーブルを参照し、開始ラスター位置「0」をパス5のヘッド位置「0」とする。なお、パス5よりも後のヘッド位置は、「0+(該当パス−パス5)×(搬送量/ノズル間ピッチ)」により算出することが出来る。
次に、プリンタードライバーは、第1ヘッド41(1)と第2ヘッド41(2)のそれぞれの通常印刷のテーブルを参照し、水平位置を決定する。通常印刷では、第1ヘッド41(1)と第2ヘッド41(2)に対して異なる水平位置が設定されるため、プリンタードライバーは、仮想ヘッドテーブルに水平位置を2つ記憶させる。パス5では、第1ヘッド41(1)の水平位置が1となり、第2ヘッド41(2)の水平位置が2となる。
次に、プリンタードライバーは、第1ヘッド41(1)の通常印刷のテーブルを参照し、ノズル##3〜##5を「使用ノズル(●)」として記憶させ、第2ヘッド41(2)の通常印刷のテーブルを参照し、ノズル##10〜##12を「使用ノズル(●)」として記憶させる。その後、プリンタードライバーは、第1ヘッド41(1)の上部POLノズルのテーブルを参照し、ノズル##1,##2を「上部POLノズル(▲・一端部ノズルに相当)」として記憶させ、第1ヘッド41(1)の下部POLノズルのテーブルを参照し、ノズル##6,##7を「下部POLノズル(■・他端部ノズルに相当)」として記憶させる。同様に、プリンタードライバーは、第2ヘッド41(2)の上部POLノズルのテーブルを参照し、ノズル##8,##9を「上部POLノズル(▲)」として記憶させ、第2ヘッド41(2)の下部POLノズルのテーブルを参照し、ノズル##13,##14を「下部POLノズル(■)」として記憶させる。
図8の印刷方法では通常印刷では形成できないドットを上端・下端印刷で形成するとし、通常印刷で形成されるドットを上端・下端印刷で形成可能なドットよりも優先させる。そのため、通常印刷の仮想ヘッドテーブルの作成処理では、上端印刷とは異なり、該当パスの使用ノズルで形成可能なラスター位置及び水平位置と後続パスの使用ノズルで形成可能なラスター位置及び水平位置との比較処理を行わない。そのため、図12に示すように、プリンタードライバーは、仮想ヘッドのノズル##1〜##14のノズル種別を記憶させることによって、通常印刷のパス5の仮想ヘッドテーブルの作成が終了する。他の通常印刷のパスに関しても同様にして仮想ヘッドテーブルを作成する。
本実施形態では、1つのラスターラインを形成する第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じにするために、ヘッド41ごとに上部POLノズルと下部POLノズルを設定する。そのために、印刷に関するパラメーターテーブル(図9)において、ヘッド41ごとに、通常の使用ノズルと上部POLノズルと下部POLノズルとが設定されている。プリンタードライバーは、このパラメーターテーブルに基づいて印刷データを作成することで、図8に示すように、第1ヘッド41(1)と第2ヘッド41(2)の使用率が等しいラスターラインで構成される画像を印刷することができ、各ヘッド41の特性が緩和された画像を印刷することができる。なお、図9のパラメーターテーブルにおいて、通常印刷・上部POLノズル・下部POLノズルのテーブルの開始ノズル及び終了ノズルが、通常印刷に使用するノズルを規定するための情報に相当し、上部POLノズル・下部POLノズルのテーブルの開始ノズル及び終了ノズルが、通常印刷に使用するノズルの中の一端部ノズル及び他端部ノズルに相当するノズルを規定するための情報に相当する。
<下端印刷>
図13は、ダミーテーブルを説明する図であり、図14A及び図14Bは、下端印刷のパス10の仮想ヘッドテーブルを説明する図である。下端印刷領域においても通常印刷を実施した場合に形成されるドットの位置(ラスター位置と水平位置)に、下端印刷のノズルがドットを形成するようにする。そのために、プリンタードライバーは、下端印刷の仮想ヘッドテーブルを作成する前に、ダミーテーブルを作成する。ダミーテーブルは、下端印刷が開始するパス10以降も通常印刷が行われると仮定し、パス10以降のパスで形成されるラスターラインの位置(第3の位置に相当)及び水平位置を示すものである。
プリンタードライバーは、ダミーテーブルを作成するために、ダミー印刷(仮想下端印刷)に関するパラメーターテーブルを参照する。なお、下端印刷では通常印刷の下部POLノズルと相方となるノズルを上部POLノズルに設定するため、通常印刷のように固定のノズルがPOLノズルに設定されない。ダミー印刷では、第1ヘッド41(1)に対応するノズル##1〜##7が通常の使用ノズル(●)として設定され、第2ヘッド41(2)に対応するノズル##8〜##14が通常の使用ノズル(●)として設定される。よって、ダミーテーブルには、ダミー印刷で形成されるドットのラスター位置と水平位置だけを記憶させればよい。
プリンタードライバーは、まず、通常印刷の最後のパス9から通常印刷の搬送量(5D)でヘッドユニット40が搬送されたとし、仮想下端のパス10’のヘッド位置を「L25(=通常印刷の終了ラスター位置+(搬送量/ノズル間ピッチ)=20+(5D/D))」と算出する。この算出したヘッド位置(L25)と、ノズルピッチ(2D)と、ノズル間ピッチ(D)とに基づき、仮想下端のパス10’の使用ノズルのラスター位置及び水平位置をダミーテーブルに記憶させる。また、図8の印刷方法では最後のラスター位置が「L46」であるため、46番よりも後のラスター位置はダミーテーブルに記憶させない。こうして、プリンタードライバーは、通常印刷を遷移させたダミー印刷のラスター位置が46番よりも大きくなるまで(図13ではパス14’まで)、ダミーテーブルにラスター位置及び水平位置を記憶させる。なお、通常印刷では、各ヘッド41に異なる水平位置1,2がパスごとに交互に割り当てられるため、ダミー印刷においても、図13に示すように、パスごとに、ヘッド41ごとに異なる水平位置を割り当てる。
次に、プリンタードライバーは、下端印刷の仮想ヘッドテーブルを作成する。図14の下端印刷のパス10の仮想ヘッドテーブルを例に挙げて説明する。まず、プリンタードライバーは、これまでと同様に、下端印刷のパラメーターテーブルを参照し、ヘッド位置(25)及び水平位置(2)を決定する。なお、下端印刷では、第1ヘッド41(1)と第2ヘッド41(2)を1つの仮想ヘッドとして扱うため、仮想ヘッドテーブルに記憶されている水平位置は1つである。
次に、プリンタードライバーは、下端印刷のパラメーターテーブルにおける開始ノズルと終了ノズルを参照し、ノズル##1〜##14を使用ノズル(●)に記憶させる。なお、上端印刷と同様に、下端印刷に関するパラメーターテーブルでは、第1ヘッド41(1)及び第2ヘッド41(2)を1つのヘッドと見立てた仮想ヘッドにおける使用ノズルの範囲を示す。そうすることで、ヘッド41ごとに使用ノズルの範囲を記憶する場合に比べて、パラメーターテーブルの数を少なくすることができ、メモリー容量を削減することができる。
その後、プリンタードライバーは、パス10の使用ノズル##1〜##14が対応する各ラスター位置及び水平位置と、ダミーテーブルに記憶されたラスター位置及び水平位置とを比較する。パス10では、図14Aに示すように、ノズル##1〜##11のラスター位置及び水平位置と、ダミーテーブルのラスター位置及び水平位置が一致するので、ノズル##1〜##11は使用ノズルとして記憶されたままとなる。一方、プリンタードライバーは、ダミーテーブルに記憶されたデータと一致しないノズル##12〜##14を不使用ノズルに変更する。そして、プリンタードライバーはラスター位置及び水平位置が一致したデータをダミーテーブルから削除する(図14Aでは一致したデータに×印が付けられている)。こうすることで、下端印刷で形成すべきドットを形成することができ、2重にドットが形成されてしまうことを防止できる。
通常印刷のパスの下部POLノズル(□・他端部ノズルに相当)は、そのパスよりも後のパスの上部POLノズル(△・一端部ノズルに相当)と組になる。そこで、プリンタードライバーは、図14Bに示すように、下端印刷のパス10の使用ノズルの中に、通常印刷のパスの下部POLノズル(□)と相方となるノズルがあるか否かを判断する。即ち、プリンタードライバーは、通常印刷のパスの下部POLノズルのラスター位置及び水平位置と、パス10の使用ノズルのラスター位置及び水平位置とが一致するか否かを判断する。図14Bに示すように、パス8の下部POLノズル(□)のラスター位置及び水平位置が、パス10の使用ノズル##1,##2のラスター位置及び水平位置と一致する。よって、プリンタードライバーは、パス10のノズル##1,##2を上部POLノズル(▲)に変更する。こうすることで、所定の水平位置の画素領域に対して2つのノズルでドットを形成することができる。
こうして、パス10の仮想ヘッドテーブルの作成が終了する。プリンタードライバーは、ダミーテーブルに記憶されたデータ(ラスター位置及び水平位置)が下端印刷にて全て形成されるまで、下端印刷のパスの仮想ヘッドテーブルを作成する。
<抽出・並べ替え処理>
図15Aは、第1ヘッド41(1)と第2ヘッド41(2)の構成に関するパラメーターテーブルを説明する図であり、図15Bは、仮想ヘッドテーブルを実際のヘッドテーブルに置き換える処理を説明する図である。図16Aは、画素がマトリクス状に構成された画像データ(ハーフトーン処理後の画像データ)を示す図であり、図16Bは、各ヘッド41用に並べ替えられたラスターデータを示す図である。図16Aの正方形(小さいマス目)は画像を構成する画素を示し、画素の中に記された数字が画素データに相当し、ドット形成の有無やドットの種類を示す。X方向に並ぶ画素データによって、1つのラスターラインが印刷される。このX方向に並ぶ画素データ群を「ラスターデータ」と呼ぶ。そして、Y方向奥側に位置するラスターデータから順に小さい番号を付す。画像データのうち、Y方向の最も奥側に位置するラスターデータが印刷開始位置の0番目のラスターデータに相当する。
ここまで、プリンタードライバーによるパスごとの仮想ヘッドテーブルの作成方法について説明している。次に、プリンタードライバーは、仮想ヘッドテーブルに基づき、図16Aに示す画像データの中から各ヘッド41の使用ノズルに割り付けるラスターデータ(全部又は一部)を抽出し、並べ替える処理を実施する。即ち、プリンタードライバーは、画像データを構成する画素データを印刷に使用するノズルに割り付けて印刷データを作成する。なお、画像データはインクの色(YMCK)ごとに作成される。そのため、プリンタードライバーは色ごとにラスターデータの抽出・並べ替え処理を実施する。
ところで、プリンタードライバーは、第1ヘッド41(1)と第2ヘッド41(2)を組み合わせた仮想ヘッドに関する情報を示した仮想ヘッドテーブルを作成している。そのため、仮想ヘッドテーブルに記憶された仮想ヘッドのノズルに対するノズル種別を、実際のヘッド41のノズルに対応付ける必要がある。また、仮想ヘッドのノズルがドットを形成すべき位置を示す情報を、実際のヘッド41のノズルがドットを形成すべき位置を示す情報に置き換える必要がある。そこで、本実施形態では、図15Bに示すように、仮想ヘッドテーブルに対して、第1ヘッドテーブルと第2ヘッドテーブルを作成する。
第1ヘッドテーブル及び第2ヘッドテーブルには、ヘッド位置と、水平位置と、開始ノズル及び終了ノズルと、ノズル種別へのアドレスとが記憶される。ヘッド位置は、実際の各ヘッド41のノズル#1が対応するラスター位置を示し、水平位置は、各ヘッド41の使用ノズルが形成すべき画素領域の位置(1か2)を示す。開始ノズルは、各ヘッド41において使用可能なノズルのうちの番号が最も小さいノズル(即ち、Y方向奥側のノズル)を示し、終了ノズルは、各ヘッド41において使用可能なノズルのうちの番号が最も大きいノズル(即ち、Y方向手前側のノズル)を示す。ノズル種別へのアドレスは、実際のヘッド41の開始ノズルが対応する仮想ヘッドのノズル番号を示す。
プリンタードライバーは、仮想ヘッドテーブルから第1ヘッドテーブル及び第2ヘッドテーブルを作成するために、図15Aに示すヘッド構成に関するパラメーターテーブルを参照する。ヘッド構成に関するパラメーターテーブルには、各ヘッド41に属するノズル数(ノズル数に相当)と、各ヘッド41のY方向の間隔(ヘッド間隔に相当)と、重複領域の不使用ノズル数とが記憶されている。図示するように、第1ヘッド41(1)に属するノズル数は8個であり、第2ヘッド41(2)に属するノズル数も8個であることが分かる。なお、このパラメーターテーブルは、プリンター1のメモリー13が記憶していても良いし、コンピューター60のメモリーが記憶していても良い。
そして、本実施形態では、第1ヘッド41(1)と第2ヘッド41(2)のY方向の間隔(ヘッド間隔)をノズル数で表す。図6に示すように、第1ヘッド41(1)のY方向手前側の端部の2個のノズル(#7,#8)と、第2ヘッド41(2)のY方向奥側の端部の2個のノズル(#1,#2)とが重複している。そのため、図15Aのパラメーターテーブルでは、ヘッド間隔を「2個」と記憶する。なお、第1ヘッド41(1)と第2ヘッド41(2)が重複しておらず、例えば、第2ヘッド41(2)のノズル#1が、第1ヘッド41(1)のノズル#8よりも、ノズルピッチ長さだけY方向手前側に位置する場合は、ヘッド間隔を0とする。また、第2ヘッド41(2)のノズル#1が、第1ヘッド41(1)のノズル#8よりも、ノズルピッチの整数倍の長さだけY方向手前側に位置する場合は、ヘッド間隔を負の数のノズル数とする。
第1ヘッド41(1)と第2ヘッド41(2)が重複している場合、重複している2つのノズルを使用することもでき、また、重複している2つのノズルのうちの一方のノズルだけを使用することもできる。そこで、図15Aのパラメーターテーブルには重複領域の不使用ノズル数を記憶する。第1ヘッド41(1)では、重複領域の手前側の不使用ノズル数が「1個」と記憶されている。これは、第1ヘッドの重複領域のノズル#7,#8のうちY方向手前側の1個のノズル#8を不使用ノズルにすることを意味する。同様に、第2ヘッド41(2)では、重複領域の奥側の不使用ノズル数が「1個」と記憶されているので、第2ヘッド41(2)の重複領域のノズル#1,#2のうちY方向奥側の1個のノズル#1を不使用ノズルとする。即ち、重複領域の不使用ノズル数により、重複している2つのノズルの両方を使用するのか、それとも一方のノズルだけを使用するのかを、判断することができる。
なお、例えば、図7の印刷方法において、パス3の仮想ヘッドにおける下部POLノズル##7は、第1ヘッド41(1)のノズル#7と第2ヘッド41(2)のノズル#1に対応するが、第2ヘッド41(2)のノズル#1を不使用ノズルとする。そのため、0番目のラスターラインにおける第1ヘッド41(1)と第2ヘッド41(2)の使用率を一定にすることができる。仮に、第2ヘッド41(2)のノズル#1も使用ノズルに設定すると、斜線の画素領域の1/4は第2ヘッド41(2)によって形成されることになる。そうすると、第1ヘッド41(1)と第2ヘッド41(2)の使用率が一定にならなくなってしまう。そのため、第1ヘッド41(1)の使用率と第2ヘッド41(2)の使用率が同じになるように、重複する2つのノズルの使用を決定するとよい。ただし、本実施形態では、第1ヘッド41(1)と第2ヘッド41(2)の使用率を一定にするために重複する2つのノズルの一方を使用するが、これに限らず、両方のノズルを使用しても良い。この場合、第1ヘッド41(1)と第2ヘッド41(2)の使用率が一定にならなくなってしまうが、比較例の印刷方法(図5)に比べれば、第1ヘッド41(1)の使用率と第2ヘッド41(2)の使用率の差が小さく、第1ヘッド41(2)の使用率と第2ヘッド41(2)の使用率が同じであるラスターライン数が多い。よって、画質劣化を緩和できる。
図15Bは、通常印刷のパス5の仮想ヘッドテーブルから第1ヘッドテーブル及び第2ヘッドテーブルを作成する様子を示す。仮想ヘッドのノズル##1は第1ヘッド41(1)のノズル##1に相当するため、プリンタードライバーは、仮想ヘッドテーブルのヘッド位置「0」を、第1ヘッドテーブルのヘッド位置に記憶させる。次に、プリンタードライバーは、ノズルピッチ(2D)、ノズル間ピッチ(D)、図15Aのパラメーターテーブルの第1ヘッド41(1)に属するノズル数(8個)、及び、重複ノズル数(2個)に基づき、第2ヘッド41(2)のヘッド位置を算出する。第2ヘッド41(2)のヘッド位置は、式「第1ヘッドのヘッド位置+(ノズルピッチ/ノズル間ピッチ)×(第1ヘッドに属するノズル数−重複ノズル数)」により算出することができる。図15Bでは、第2ヘッド41(2)のヘッド位置が「12(=0+(2D/D)×(8−2))」と算出される。このように、図15Aのパラメーターテーブルによって、Y方向に並ぶ各ヘッド41のヘッド位置を算出することができ、各ヘッド41に属するノズルに対応するラスター位置を算出することができる(後述)。
次に、プリンタードライバーは、仮想ヘッドテーブルに記憶されている2つの水平位置(図15Bでは1,2)を、第1ヘッドテーブルと第2ヘッドテーブルに順に記憶させる。なお、通常印刷ではヘッド41ごとに水平位置を異ならせるが、上端・下端印刷では全てのヘッド41において水平位置が同じである。よって、プリンタードライバーは、上端・下端印刷のパスでは、仮想ヘッドテーブルに記憶されている1つの水平位置を第1ヘッドテーブルと第2ヘッドテーブルに記憶させる。
次に、プリンタードライバーは、図15Aのパラメーターテーブルを参照し、各ヘッド41に属するノズル数と、重複領域の不使用ノズル数とに基づいて、開始ノズルと終了ノズルを決定する。第1ヘッド41(1)では8個のノズル#1〜#8のうちの、Y方向手前側の1個のノズル#8を不使用ノズルとする。よって、第1ヘッド41(1)で使用可能なノズル数は7個(#1〜#7)となり、開始ノズルが「#1」となり、終了ノズルが「#7」となる。一方、第2ヘッド41(2)では8個のノズル#1〜#8のうちの、Y方向奥側の1個のノズル#1を不使用ノズルとする。よって、第2ヘッド41(2)の使用可能なノズル数は7個(#2〜#8)となり、開始ノズルが「#2」となり、終了ノズルが「#8」となる。
次に、プリンタードライバーは、仮想ヘッドのノズル番号(##i)と実際のヘッド41のノズル番号(#i)とを対応付け、ノズル種別へのアドレスを算出する。図6に示すように、各ヘッド41のノズルに対してY方向奥側のノズルから順に正の整数の番号が付けられ(#1・#2…)、仮想ヘッドのノズルに対してY方向奥側のノズルから順に正の整数の番号が付けられている(##1・##2…)。そして、仮想ヘッドのノズル番号(##1〜##14)は、第1ヘッド41(1)のY方向奥側のノズル#1から順に、第2ヘッド41(2)のY方向手前側のノズル#8まで加算されている。即ち、Y方向奥側を基準位置としている。そこで、プリンタードライバーは、まず、第1ヘッド41(1)の開始ノズル#1に対応する仮想ヘッドのノズル(即ち、ノズル種別へのアドレス)を算出する。プリンタードライバーは、第1ヘッド41(1)が、仮想ヘッドのノズル加算の基準位置(Y方向の最も奥側)に位置するので、第1ヘッド41(1)の開始ノズル「#1」は仮想ヘッドのノズル「##1」に相当すると判断する。そこで、プリンタードライバーは、第1ヘッドテーブルのノズル種別へのアドレスを「##1」と記憶させる。
次に、プリンタードライバーは、第2ヘッド41(2)の開始ノズル#2に対応する仮想ヘッドのノズル番号を算出する。Y方向奥側からN番目のヘッドの開始ノズル#iに対応する仮想ヘッドのノズル番号は、式「N−1番目のヘッドまでに属する合計ノズル数−N番目のヘッドまでの重複領域の合計ノズル数+1+(開始ノズル#i−ノズル#1)」により算出することができる。第2ヘッドの開始ノズル#2に対応する仮想ヘッドのノズル番号は、「##8(=8−2+1+(2−1))」と算出される。よって、プリンタードライバーは、第2ヘッドテーブルのノズル種別へのアドレスを「##8」と記憶させる。こうして、プリンタードライバーは、仮想ヘッドテーブルから第1ヘッドテーブル及び第2ヘッドテーブルを作成する。
その後、プリンタードライバーは、図16Bに示すように、画像データの中から各ヘッド41の使用ノズルに対応するラスターデータ(全部又は一部)を抽出し、プリンター1に転送する順にラスターデータを並べ替える。そのために、コンピューター60には、ヘッド41ごと(ノズル列ごと)に、各ノズル#1〜#8のラスターデータを記憶させる記憶領域(バッファ)が設けられている。
まず、プリンタードライバーは、第1ヘッドテーブルの開始ノズル#1及びノズル種別へのアドレス##1と、仮想ヘッドテーブルのノズル種別を参照する。その結果、プリンタードライバーは、仮想ヘッドテーブルのノズル##1が「上部POLノズル」であるから、第1ヘッド41(1)のノズル#1が印刷に使用される上部POLノズルであると判断する。そこで、プリンタードライバーは、第1ヘッドテーブルのヘッド位置(0)を参照し、第1ヘッド41(1)のノズル#1に割り付けるラスターデータは、0番目のラスターデータであると判断し、画像データの中から0番目のラスターデータを抽出する。そして、プリンタードライバーは、第1ヘッドテーブルの水平位置(1)を参照し、第1ヘッド41(1)のノズル#1は水平位置が1である画素領域(図8に示す斜線の画素領域)にドットを形成すると判断し、抽出したラスターデータに水平位置1用のマスクを乗じる。水平位置1用のマスクは、水平位置が2である画素領域に対応する画素データがドットを形成するデータであってもドットを形成しないデータに変更する。更に、ノズル#1は上部POLノズルである。そのため、水平位置が1である画素領域の半分の画素領域にドットを形成すればよく、プリンタードライバーは、0番目のラスターデータに水平位置1用のマスクが乗じられたデータに、更に上部POL用マスクを乗じる。その後、プリンタードライバーは、第1ヘッド41(1)のノズル#1に対応する記憶領域に、マスク済みの0番目のラスターデータ(画素データの群であるデータ群の一部に相当)を記憶させる。
なお、上端印刷のパス1において、パス5の第1ヘッド41(1)のノズル#1(上部POLノズル)と組になる第1ヘッドのノズル#5(下部POLノズル)に対して、水平位置が1である0番目のラスターデータの残りのデータが割り付けられている。こうすることで、0番目のラスターラインの水平位置が1である画素領域には、第1ヘッド41(1)のノズル#1とノズル#5でドットを形成することができる。
こうして、プリンタードライバーは、第1ヘッド41(1)の開始ノズル#1から順に、ノズル種別へのアドレスが示す仮想ヘッドのノズルを順に割り当てていく。プリンタードライバーは、開始ノズル#1の次の第1ヘッド41(1)のノズル#2が仮想ヘッドのノズル##2に対応すると判断し、ノズル#2が上部POLノズルであると判断する。実際のヘッド41のノズル#iに対応するラスター位置は、式「ヘッド位置+(ノズルピッチ/ノズル間ピッチ)×(ノズル#i−ノズル#1)」により算出することができる。ノズル#2に対応するラスター位置は、「2番目のラスター位置(=0+(2D/D)×(2−1))」と算出される。よって、プリンタードライバーは、画像データの中から2番目のラスターデータを抽出し、所定のマスク処理を行った2番目のデータを、第1ヘッド41(1)のノズル#2に対応する記憶領域に記憶させる。
同様にして、プリンタードライバーは、終了ノズル#7まで、各ノズルに対応するラスターデータを画像データから抽出し、抽出したデータを各ノズルに対応する記憶領域に記憶させる。なお、POLノズルでない通常のノズルには、図16Bに示すノズル#3に対応するデータのように、抽出したラスターデータに水平位置1用のマスクだけを乗じる。また、下部POLノズルには、上部POLノズルとは異なる位置にドットが形成されるように、抽出したラスターデータに上部POL用マスクとは異なる下部POL用マスクを乗じる。そして、プリンタードライバーは、終了ノズルがノズル#7までであるため、それよりも後のノズル#8は仮想ヘッドのノズルに対応しないと判断する。即ち、プリンタードライバーは、ノズル#8は不使用ノズルであると判断し、第1ヘッド41(1)のノズル#8に対応する記憶領域に、ドットを形成しないデータ(NULLデータ)を記憶させる。こうして、パス5にて、第1ヘッド41(1)の各ノズル#1〜#8に割り付けるデータの並べ替えが終了する。
なお、図16Bでは、通常印刷のパス5を例に挙げているため仮想ヘッドのノズル種別の中に「不使用ノズル」が存在しないが、上端・下端印刷では仮想ヘッドのノズル種別の中に不使用ノズルが存在する(例えば、図11Cのノズル##1)。プリンタードライバーは、仮想ヘッドの不使用ノズルと対応する実際のヘッド41のノズルの記憶領域にも、「NULLデータ」を記憶させる。
同様にして、プリンタードライバーは、第2ヘッド41(2)の各ノズル#1〜#8に割り付けるデータの並べ替えを行う。プリンタードライバーは、第2ヘッドテーブルを参照し、開始ノズルがノズル#2であるため、それよりも前のノズル#1が不使用ノズルであると判断する。よって、プリンタードライバーは、第2ヘッド41(2)のノズル#1に対応する記憶領域にNULLデータを記憶させる。
次に、プリンタードライバーは、第2ヘッドテーブルの開始ノズル#2とノズル種別へのアドレス##8とに基づき、第2ヘッド41(1)のノズル#2が仮想ヘッドのノズル##8の上部POLノズルに相当すると判断する。そして、プリンタードライバーは、第2ヘッドテーブルのヘッド位置(12)を参照し、第2ヘッド41(1)のノズル#2に割り付けるラスターデータは14番目のラスターデータ(=12+(2D/D)×(ノズル#2−ノズル#1))であると判断する。そうして、プリンタードライバーは、画像データの中から14番目のラスターデータを抽出し、水平位置2用のマスクと、上部POL用マスクを乗じる。なお、水平位置2用のマスクは、水平位置が1である画素領域に対応する画素データを、ドットを形成しないデータに変更するマスクである。こうして、マスク済みの14番目のラスターデータを、第2ヘッド41(2)のノズル#2に対応する記憶領域に記憶させる。
このように、プリンタードライバーは、第2ヘッド41(2)の残りのノズル#3から終了ノズル#8までの各ノズルに対応する仮想ヘッドのノズル番号、ノズル種別、ラスター位置を算出し、各ノズルに割り付けるべきデータを各ノズルの記憶領域に記憶させる。こうして、パス5にて、第2ヘッド41(2)の各ノズル#1〜#8に割り付けるデータの並べ替えが終了する。
以上の処理により、プリンタードライバーは、パス5に関するノズル割り付け処理を終了する。ヘッド41ごとに並べ替えられたデータ(図16B)は、プリンタードライバーによってプリンター1に送信される。プリンター1は、受信したデータに基づき、パス5における第1ヘッド41(1)及び第2ヘッド41(2)の印刷を制御する。その結果、図8に示す印刷方法を実現できる。
以上をまとめると、本実施形態では、プリンタードライバーは、ノズル列方向に並ぶ複数のヘッド41を組み合わせて仮想ヘッドと見立てて、パスごとに、仮想ヘッドのノズル種別(例えば、使用ノズルや不使用ノズル)と、仮想ヘッドのノズルがドットを形成すべき媒体上の位置を規定するための情報(ヘッド位置や水平位置)を記憶した「仮想ヘッドテーブル」を作成する。その後、プリンタードライバーは、作成した仮想ヘッドテーブルと、図15Aのヘッド構成に関するパラメーターテーブルとを参照し、実際のヘッド41に属するノズルのノズル種別と、実際のヘッド41に属するノズルにドットを形成させる媒体上の位置を規定するための情報とを取得する(即ち、第1ヘッドテーブル及び第2ヘッドテーブルを作成する)。言い換えれば、ヘッド構成に関するパラメーターテーブル(各ヘッドに属するノズル数とヘッド間隔)に基づいて、各ヘッド41の使用ノズル(上部PLノズル、下部POLノズルを含む)に、ラスター位置(第1の位置に相当)を対応付ける。そうして、実際のヘッド41の各ノズルに割り付けるデータを画像データの中から抽出し、プリンター1に送信する順にデータを並べ替える。
そして、通常印刷の印刷データを作成する際には、ヘッド41ごとに上部POLノズルと下部POLノズルを設定し、組となる上部POLノズル及び下部POLノズルには、即ち、ラスター位置及び水平位置が同じノズルには、そのラスター位置及び水平位置に相当するラスターデータを分配して割り付ける。そうすることで、図7や図8に示す印刷方法のように、第1ヘッド41(1)と第2ヘッド41(2)の使用率を同じにすることができる。
また、Y方向に並ぶ各ヘッド41に属するノズル数と、各ヘッド41のY方向の間隔とを、コンピューター60またはプリンター1が記憶することによって、仮想ヘッドのノズルと実際のヘッド41のノズルとを対応付けることができる。その結果、Y方向に複数のヘッド41が並ぶプリンター1であっても、各ヘッド41のノズル種別と、各ヘッド41のノズルに割り付けるべきラスターデータを決定することができる。
また、第1ヘッドテーブル及び第2ヘッドテーブルに、実際のヘッド41のノズルのうちの仮想ヘッドのノズルと対応するノズルの範囲(開始ノズル及び終了ノズル)と、実際のヘッド41の開始ノズルに対応する仮想ヘッドのノズル番号(ノズル種別へのアドレス)とを記憶させることにより、第1ヘッドテーブル及び第2ヘッドテーブルにおいて各ヘッド41に属するノズルのノズル種別を新たに記憶させる必要がなくなる。また、第1ヘッドテーブル及び第2ヘッドテーブルにおいて、各ヘッド41に属するノズルに対応する仮想ヘッドのノズル番号をそれぞれ記憶させる必要がなくなる。よって、第1ヘッドテーブル及び第2ヘッドテーブルの作成処理を容易にでき、メモリー容量を小さくすることができる。
本実施形態では、プリンタードライバーが、ノズル割り付け処理を実施する(ヘッド41ごとに上部POLノズル及び下部POLノズルを設定する)。そのため、プリンタードライバーをインストールしたコンピューター60とプリンター1のコントローラー10が「制御部」に該当し、プリンター1及びコンピューター60を接続した印刷システムが「印刷装置」に該当する。ただし、これに限らず、プリンタードライバーの処理をプリンター1内のコントローラー10が実施してもよく、この場合、プリンター1のコントローラー10が制御部(コンピューター)に該当し、プリンター1単体が印刷装置に該当する。
なお、本実施形態では、第1ヘッド41(1)と第2ヘッド41(2)の端部が重複するため、図6に示すように、第1ヘッド41(1)のY方向奥側のノズル#1から第2ヘッド41(2)のY方向手前側のノズル#8に亘って、ノズル番号を連番とした仮想ヘッドを想定し、まず、仮想ヘッドのノズルに関してノズル種別等を決定している。ただし、第1ヘッド41(1)と第2ヘッド41(2)の端部が重複しないノズルでは、仮想ヘッドテーブルを作成することなく、直接に第1ヘッドテーブル及び第2ヘッドテーブルを作成してもよい。この場合、各ヘッドテーブルには、ヘッド位置、水平位置、各ヘッド41に属するノズル#1〜#8のノズル種別が記憶されることになる。そして、この場合には、実際のヘッド41のノズル番号を仮想ヘッドのノズル番号に対応付ける処理を省略することができる。
また、図15Aのヘッド構成に関するテーブルでは、第1ヘッド41(1)と第2ヘッド41(2)のY方向のヘッド間隔をノズル数で表しているがこれに限らない。例えば、ヘッド間隔を長さで示してもよい。ヘッド間隔として各ヘッド41の端部ノズルの間隔が記憶されている場合、プリンタードライバーは、各ヘッド41の端部ノズルの間隔とノズルピッチとに基づいて、実際のヘッド41のノズル番号を仮想ヘッドのノズル番号に対応付けることができる。また、ヘッド間隔がラスター数で表されていても良く、この場合、プリンタードライバーは、ヘッド間隔であるラスター数とノズルピッチとノズル間ピッチとに基づいて、実際のヘッド41のノズル番号を仮想ヘッドのノズル番号に対応付けることができる。また、第1ヘッド41(1)と第2ヘッド41(2)のY方向のヘッド間隔に相当する値を記憶するに限らず、ヘッド間隔を算出できる値を記憶しても良い。例えば、基準位置に対する第1ヘッド41(1)の位置と基準位置に対する第2ヘッド41(2)の位置とを各々記憶していれば、ヘッド間隔を算出することができる。
また、本実施形態では、図15Aのヘッド構成に関するテーブルにおいて、重複領域の不使用ノズル数を記憶させているが、これに限らない。Y方向に並ぶヘッド41の端部ノズルが重複しない場合には、重複領域の不使用ノズル数(又は使用ノズル数)を記憶させる必要がない。また、重複領域の不使用ノズル数が変化しない場合では、例えば、図16Bに示す各ノズルに対応した記憶領域に、変更不可なデータとして予めNULLデータを記憶させるようにしてもよい。
また、本実施形態では、プリンタードライバーが、図15Bに示すように、仮想ヘッドテーブルから第1ヘッドテーブルと第2ヘッドテーブルを作成しているが、これに限らない。プリンタードライバーが、仮想ヘッドテーブルの情報から直接に、実際のヘッド41のノズルと仮想ヘッドのノズルとを対応付け、ラスターデータの抽出・並べ替え処理を行ってもよい。
===その他の実施の形態===
上記の各実施形態は、主としてインクジェットプリンターを有する印刷システムについて記載されているが、印刷データの作成方法等の開示が含まれている。また、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
<プリンターについて>
前述の実施形態では、印刷領域に搬送された連続用紙に対して、ヘッドユニット40を媒体搬送方向に移動しながら画像を形成する動作と、ヘッドユニット40を紙幅方向に移動する動作と、を繰り返して画像を形成し、その後、未だ印刷されていない媒体部分を印刷領域に搬送するプリンターを例に挙げているがこれに限らない。例えば、ヘッドを移動方向に移動しながら単票紙に画像を形成する動作と、ヘッドに対して単票紙を移動方向と交差する搬送方向に搬送する動作と、を繰り返すプリンターでもよい。