(57)【要約】      （修正有）【課題】同一階調のデータが現れる度にその階調の展開に用いるパターンデータを変更する構成において、片方向記録時と双方向記録時とにおける記録結果を整合させる。【解決手段】パターンデータの識別情報の初期値と各ラスタデータに含まれる多値データの数とに基づいて、プリントバッファ１０４に最初に格納された多値データに対応する識別情報とプリントバッファ１０４に最後に格納された多値データに対応する識別情報とを複数のラスタデータ分、階調値毎に取得する取得手段と、記録ヘッドの走査毎に記録ヘッドの走査方向に基づいて両識別情報のうち一方の識別情報を選択し、該選択した識別情報に基づいてパターンバッファからパターンデータを読み出すとともに、そのパターンデータを用いて多値データからビットマップデータを生成する生成手段と、当該ビットマップデータに基づいて記録ヘッドによる記録を制御する記録制御手段とを具備する。【選択図】図３
2010221700.tif 000002
【特許請求の範囲】
【請求項１】
多値データを含むラスタデータに基づいて記録ヘッドを双方向に走査させて記録を行う記録装置であって、
複数のラスタデータを格納するプリントバッファと、
前記双方向のうちの所定方向に対応して多値データを順に前記プリントバッファに格納するバッファ制御手段と、
多値データの階調値に対応するパターンデータを格納するパターンバッファと、
前記パターンデータの識別情報の初期値と各ラスタデータに含まれる多値データの数とに基づいて、前記プリントバッファに最初に格納された多値データに対応する識別情報と前記プリントバッファに最後に格納された多値データに対応する識別情報とを前記複数のラスタデータ分、階調値毎に取得する取得手段と、
前記記録ヘッドの走査毎に前記記録ヘッドの走査方向に基づいて前記両識別情報のうち一方の識別情報を選択し、該選択した識別情報に基づいて前記パターンバッファからパターンデータを読み出すとともに、そのパターンデータを用いて多値データからビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータに基づいて前記記録ヘッドによる記録を制御する記録制御手段と
を具備することを特徴とする記録装置。
【請求項２】
前記生成手段は、
前記多値データの階調値毎に前記選択した識別情報を更新する更新手段
を具備することを特徴とする請求項１記載の記録装置。
【請求項３】
前記取得手段は、
ラスタデータを順に入力し、前記プリントバッファに最初に格納した多値データに対応する識別情報と前記プリントバッファに最後に格納した多値データに対応する識別情報とをそれぞれ格納する識別情報バッファ
を具備することを特徴とする請求項１記載の記録装置。
【請求項４】
前記取得手段は、
同じラスタデータに含まれる多値データの数を階調値毎にカウントするカウント手段
を更に具備することを特徴とする請求項１記載の記録装置。
【請求項５】
前記取得手段は、
あるラスタデータについて前記プリントバッファに最後に格納した多値データに対応する識別情報に基づいて、それ以降のラスタデータの前記プリントバッファに最初に格納される多値データに対応する識別情報を決める
ことを特徴とする請求項１記載の記録装置。
【請求項６】
多値データの階調値に対応するパターンデータを格納するパターンバッファを有し、多値データを含むラスタデータに基づいて記録ヘッドを双方向に走査させて記録を行う記録装置の処理方法であって、
バッファ制御手段が、前記双方向のうちの所定方向に対応して多値データを順にプリントバッファに格納する工程と、
取得手段が、前記パターンデータの識別情報の初期値と各ラスタデータに含まれる多値データの数とに基づいて、前記プリントバッファに最初に格納された多値データに対応する識別情報と前記プリントバッファに最後に格納された多値データに対応する識別情報とを前記複数のラスタデータ分、階調値毎に取得する工程と、
生成手段が、前記記録ヘッドの走査毎に前記記録ヘッドの走査方向に基づいて前記両識別情報のうち一方の識別情報を選択し、該選択した識別情報に基づいて前記パターンバッファからパターンデータを読み出すとともに、そのパターンデータを用いて多値データからビットマップデータを生成する工程と、
記録制御手段が、前記生成手段により生成されたビットマップデータに基づいて前記記録ヘッドによる記録を制御する工程と
を含むことを特徴とする記録装置の処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置及びその処理方法に関する。
【背景技術】
【０００２】
記録媒体に対して記録を行なう記録装置が知られている。記録装置は、ホスト等からデータを受け取ると、当該受け取ったデータを２値のビットマップデータに展開する。そして、そのビットマップデータを記録ヘッドに転送することで記録を行なう。ホストから記録装置には、２値のビットマップデータや多値データが送られる。多値データで送られる場合、記録装置側で展開処理が行なわれる。この展開タイミングとしては、バッファにデータを格納する時のＨＶ変換時や、バッファに多値データのまま格納する場合であれば記録ヘッド側（記録ヘッド制御部）へデータを送信する時等が挙げられる。
【０００３】
上述した展開に際して、各画素の階調に対して固定の展開テーブル（パターンデータ）しか設けられていない場合、同一階調のときは同一の展開パターンが得られることになる。このような固定パターンへの展開では、ノズルの汚れや吐出量のばらつきを起因としたスジやムラなどが生じてしまう可能性がある。
【０００４】
これに対処するため、各画素の階調に対して複数のパターンデータを持ち、当該複数のマトリックスの中からいずれかを選択して展開を行なう手法が知られている。この場合、各階調に対応するパターンが固定とならないため、ノズル汚れ等の影響を受け難くなる。
【０００５】
ここで、複数のパターンデータの中からいずれかを選択する手法は、いくつか提案されている。例えば、カラム位置によって選択する方法、乱数の発生によりランダムに選択する方法、同一階調のデータが現れる度にその階調の展開に用いるパターンデータを変更する方法などがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−１４１６１７号公報
【特許文献２】特開２００４−２０９７６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
同一階調のデータが現れる度にその階調の展開に用いるパターンデータを変更して選択する方法では、同じデータを往路方向のみで記録した場合と、往路及び復路の双方向で記録した場合とでは、記録結果が整合しない場合があった。
【０００８】
ここで、この記録結果の不整合について説明する。往路記録に際して往路方向からラスタを展開する場合、ラスタ先頭にパターン番号の初期値を持たせ、その初期値に基づいて順番にパターンデータを選択し、その選択したマトリックスを用いてラスタ内の各データを展開していく。これに対して、復路記録に際して復路方向から展開する場合には、ラスタ終端にパターン番号の初期値を持たせ、その初期値に基づいて順番にパターンデータを選択し、その選択したマトリックスを用いてラスタ内の各データを展開していく。この結果、ラスタ先頭から展開を開始する場合と、ラスタ終端から展開を開始する場合とでは、同一位置の同一階調のデータであっても、展開後のパターンが異なってくる。つまり、順ラスタ方向（往路方向）からの展開に際して、データが現れる毎にマトリックスを変更していくと、そのラスタ内の各階調の個数により、逆ラスタ方向（復路方向）からの展開に際して初期値となるラスタ終端でのパターンが異なってしまう。
【０００９】
本発明は、上記課題に鑑みてなされたものであり、同一階調のデータが現れる度にその階調の展開に用いるパターンデータを変更する構成において、片方向記録時と双方向記録時とにおける記録結果を整合させるようにした技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の一態様は、多値データを含むラスタデータに基づいて記録ヘッドを双方向に走査させて記録を行う記録装置であって、複数のラスタデータを格納するプリントバッファと、前記双方向のうちの所定方向に対応して多値データを順に前記プリントバッファに格納するバッファ制御手段と、多値データの階調値に対応するパターンデータを格納するパターンバッファと、前記パターンデータの識別情報の初期値と各ラスタデータに含まれる多値データの数とに基づいて、前記プリントバッファに最初に格納された多値データに対応する識別情報と前記プリントバッファに最後に格納された多値データに対応する識別情報とを前記複数のラスタデータ分、階調値毎に取得する取得手段と、前記記録ヘッドの走査毎に前記記録ヘッドの走査方向に基づいて前記両識別情報のうち一方の識別情報を選択し、該選択した識別情報に基づいて前記パターンバッファからパターンデータを読み出すとともに、そのパターンデータを用いて多値データからビットマップデータを生成する生成手段と、前記生成手段により生成されたビットマップデータに基づいて前記記録ヘッドによる記録を制御する記録制御手段とを具備することを特徴とする。
【発明の効果】
【００１１】
本発明は、同一階調のデータが現れる度にその階調の展開に用いるパターンデータを変更する構成において、片方向記録時と双方向記録時とにおける記録結果を整合させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施の形態に係わるインクジェット記録装置１の外観構成の一例を示す斜視図。
【図２】図１に示す記録装置１の機能的な構成の一例を示す図。
【図３】本発明の一実施の形態に係わる記録システムの機能的な構成の一例を示す図。
【図４】受信バッファ１０２からラスタ制御部１０３に送られる受信データの概要の一例を示す図。
【図５】各階調に対応した展開パターンの一例を示す図。
【図６】各階調に対応して展開テーブルを選択する方法の概要を説明するための図。
【図７】図３に示す記録装置１における処理の流れの一例を示すフローチャート。
【図８】変形実施形態の一例を示す図。
【図９】ラスタデータの展開処理の概要の一例を示す図。
【図１０】図３に示す右端情報メモリ１０５及び左端情報メモリ１０６に格納されるパターン番号の一例を示す図。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。以下の説明においては、インクジェット記録方式を用いた記録装置を例に挙げて説明する。記録装置としては、例えば、記録機能のみを有するシングルファンクションプリンタであってもよいし、また、例えば、記録機能、ＦＡＸ機能、スキャナ機能等の複数の機能を有するマルチファンクションプリンタであってもよい。また、例えば、カラーフィルタ、電子デバイス、光学デバイス、微小構造物等を所定の記録方式で製造するための製造装置であってもよい。
【００１４】
なお、以下の説明において、「記録」とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わない。更に人間が視覚で知覚し得るように顕在化したものであるか否かも問わず、広く記録媒体上に画像、模様、パターン、構造物等を形成する、又は媒体の加工を行なう場合も表す。
【００１５】
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、布、プラスチック・フィルム、金属板、ガラス、セラミックス、樹脂、木材、皮革等、インクを受容可能なものも表す。
【００１６】
更に、「インク」とは、上記「記録」の定義と同様広く解釈されるべきものである。従って、記録媒体上に付与されることによって、画像、模様、パターン等の形成又は記録媒体の加工、或いはインクの処理（例えば、記録媒体に付与されるインク中の色剤の凝固または不溶化）に供され得る液体を表す。
【００１７】
図１は、本発明の一実施の形態に係わるインクジェット記録装置１の外観構成の一例を示す斜視図である。
【００１８】
インクジェット記録装置（以下、記録装置と呼ぶ）１は、インクジェット方式に従ってインクを吐出して記録を行なうインクジェット記録ヘッド（以下、記録ヘッドと呼ぶ）３をキャリッジ２に搭載する。そして、キャリッジ２を所定方向（矢印Ａ）に往復移動させて記録を行なう。記録装置１は、記録紙などの記録媒体Ｐを給紙機構５を介して給紙し、記録位置まで搬送する。そして、その記録位置において記録ヘッド３から記録媒体Ｐにインクを吐出することで記録を行なう。
【００１９】
記録装置１のキャリッジ２には、記録ヘッド３の他、例えば、インクカートリッジ６が搭載される。インクカートリッジ６は、記録ヘッド３に供給するインクを貯留する。なお、インクカートリッジ６は、キャリッジ２に対して着脱自在になっている。
【００２０】
図１に示す記録装置１は、カラー記録が可能である。そのため、キャリッジ２には、マゼンタ（Ｍ）、シアン（Ｃ）、イエロ（Ｙ）、ブラック（Ｋ）のインクをそれぞれ収容する４つのインクカートリッジが搭載されている。これら４つのインクカートリッジは、それぞれ独立して着脱できる。
【００２１】
本実施形態に係わる記録ヘッド３は、熱エネルギを利用してインクを吐出するインクジェット方式を採用している。そのため、記録ヘッド３は、電気熱変換体を備えている。電気熱変換体は、各吐出口のそれぞれに対応して設けられ、記録信号に応じて対応する電気熱変換体にパルス電圧を印加する。これにより、対応する吐出口からインクが吐出される。
【００２２】
図２は、図１に示す記録装置１の機能的な構成の一例を示す図である。
【００２３】
記録装置１は、多値データの各階調に対応して複数の展開テーブル（パターンデータ）を保持し、その中のいずれかを用いて多値データをビットマップデータに展開する。そして、このビットマップデータに基づいて階調記録を行なう。本実施形態に係わる記録装置１においては、同一階調のデータが現れる度にその階調の展開に用いる展開テーブルを変更する。これにより、同じ階調のデータであっても、展開パターンが異なってくる。
【００２４】
ここで、コントローラ６００は、ＭＰＵ６０１、ＲＯＭ６０２、特殊用途集積回路（ＡＳＩＣ）６０３、ＲＡＭ６０４、システムバス６０５、Ａ／Ｄ変換器６０６などを具備して構成される。ここで、ＲＯＭ６０２は、後述する制御シーケンスに対応したプログラム、所要のテーブル、その他の固定データを格納する。ＡＳＩＣ６０３は、キャリッジモータＭ１の制御、搬送モータＭ２の制御を行なう。また、ＡＳＩＣ６０３は、記録ヘッド３を制御するための制御信号の生成も行なう。ＲＡＭ６０４は、画像データの展開領域やプログラム実行のための作業用領域等として用いられる。システムバス６０５は、ＭＰＵ６０１、ＡＳＩＣ６０３、ＲＡＭ６０４を相互に接続してデータの授受を行なう。Ａ／Ｄ変換器６０６は、後述するセンサ群から入力されるアナログ信号をＡ／Ｄ変換し、変換後のデジタル信号をＭＰＵ６０１に供給する。
【００２５】
６２０は、スイッチ群であり、電源スイッチ６２１、プリントスイッチ６２２、回復スイッチ６２３などを具備して構成される。６３０は、装置状態を検出するためのセンサ群であり、位置センサ６３１、温度センサ６３２等から構成される。
【００２６】
ＡＳＩＣ６０３は、記録ヘッド３による記録走査に際して、ＲＡＭ６０４の記憶領域に直接アクセスしながら記録ヘッド３に対して記録素子（吐出用ヒータ）を駆動するためのデータを転送する。
【００２７】
キャリッジモータＭ１は、キャリッジ２を矢印Ａ方向に往復走査させるための駆動源であり、キャリッジモータドライバ６４０は、キャリッジモータＭ１の駆動を制御する。搬送モータＭ２は、記録媒体Ｐを搬送するための駆動源であり、搬送モータドライバ６４２は、搬送モータＭ２の駆動を制御する。記録ヘッド制御部６４４は、記録制御手段として機能し、コントローラ６００から入力される記録データに基づいて記録ヘッド３を制御する。記録ヘッド３は、記録媒体Ｐの搬送方向と直交する方向（以下、走査方向と呼ぶ）に走査される。記録ヘッド３による記録は、片方向記録又は双方向記録のいずれかの記録モードにより行なわれる。
【００２８】
また、６１０は、画像データの供給源となるコンピュータ（或いは、画像読取用のリーダやデジタルカメラなど）であり、例えば、ホスト装置などと総称される。ホスト装置６１０と記録装置１との間では、インタフェース（以下、Ｉ／Ｆと呼ぶ）６１１を介して画像データ、コマンド、ステータス信号等の授受が行なわれる。この画像データは、例えば、ラスタ形式のデータ（以下、ラスタデータと呼ぶ）で入力される。
【００２９】
図３は、図２に示すコントローラ６００の機能的な構成の一例を示す図である。
【００３０】
コントローラ６００は、Ｉ／Ｆ６１１と、受信バッファ１０２と、プリントバッファ１０４と、展開部１０７と、取得部１１３とを具備して構成される。更に、コントローラ６００には、記録方向保持部１０８と、展開テーブル格納部（パターンバッファ）１０９と、セレクタ１１０と、ワークメモリ１１１と、テーブル取得部１１２とが具備される。
【００３１】
Ｉ／Ｆ６１１は、ホスト装置６１０からラスタ形式のデータ（すなわち、ラスタデータ）を受け取る。受信バッファ１０２は、Ｉ／Ｆ６１１がホスト装置６１０から受信したデータを受信データとして一時的に格納する。受信バッファ１０２に格納されたデータは、ラスタデータ（以下、ラスタと略して呼ぶ場合もある）から構成される。受信バッファ１０２に格納されたラスタデータは、後述するラスタ制御部１０３へラスタ毎に送られる。
【００３２】
次に、パターン番号を取得する取得部１１３について説明する。取得部１１３は、ラスタ制御部１０３と、右端情報メモリ１０５と、左端情報メモリ１０６とを具備して構成される。
【００３３】
取得部１１３は、パターン番号の初期値を左端情報メモリ１０６に格納する。例えば、記録装置１の電源オン後に最初に受信するラスタデータに対する初期値や、複数ページの画像を含むジョブが入力された場合に、そのジョブの最初のラスタデータに対する初期値等を格納する。パターン番号の初期値は、各階調に対応して格納される。なお、パターン番号は、各展開テーブルに対応して設けられる番号である。ラスタ左端の初期値は、任意に設定できる。左端情報メモリ１０６には、例えば、所定値（例えば、１）が設定される。
【００３４】
左端情報メモリ１０６は、第１の格納手段（識別情報バッファ）として機能し、ラスタ先頭（ラスタ左端）の識別情報（以下、パターン番号と呼ぶ）の初期値を格納する。右端情報メモリ１０５は、第２の格納手段（識別情報バッファ）として機能し、ラスタ終端（ラスタ右端）のパターン番号を格納する。なお、バターン番号については後述する。
【００３５】
ラスタ制御部１０３は、バッファ制御を実施し、受信バッファ１０２に格納された受信データをプリントバッファ１０４に格納する。具体的には、受信バッファ１０２からデータをラスタ毎に取得し、その取得したラスタをＨＶ（horizontal-vertical）変換し、その変換後のデータをプリントバッファ１０４に格納する。この格納に際して、ラスタ制御部１０３は、ラスタ内の各データ（多値データ）の階調を判断する。そして、左端情報メモリ１０６に格納された各階調に対応した展開テーブルのパターン番号を取得し、同一階調の多値データが現れる度に当該取得したパターン番号をカウントアップ又はカウントダウンする。これにより、１ラスタに含まれる各多値データに展開テーブル（パターンテーブル）を設定する。１ラスタ分の展開テーブルの設定が済むと、ラスタ制御部１０３は、カウントアップ又はカウントダウンされた各階調に対応した展開テーブルのパターン番号を右端情報メモリ１０５に格納する。つまり、右端情報メモリ１０５に格納されるパターン番号は、左端情報メモリ１０６に格納されたパターン番号と同一階調の多値データの数に基づいて定められる。別の表現をすると、左端情報メモリ１０６は、最初に格納した多値データに対応するパターン番号を格納し、右端情報メモリ１０５は、最後に格納した多値データに対応するパターン番号を格納する。なお、本実施形態では、ラスタデータをプリントバッファ１０４に格納する前に、パターン番号を取得する場合について説明するが、ラスタデータをプリントバッファ１０４に格納した後に、パターン番号を取得するように構成しても構わない。
【００３６】
記録方向保持部１０８は、記録ヘッド３の走査方向、すなわち記録方向を示す記録方向指定情報を保持する。この記録方向指定情報は、ラスタ毎に保持される。
【００３７】
展開テーブル格納部１０９は、展開テーブル（パターンデータ）を格納するマトリックス格納手段として機能する。展開テーブルは、各階調に対して複数保持される。展開テーブルのサイズは、多値データを量子化するときの量子化数（階調数）に依存する。なお、本実施形態においては、同一階調の多値データの展開に用いる展開テーブルには、連番からなるパターン番号が割り当てられているものとする。
【００３８】
セレクタ１１０は、記録方向指定情報に基づいて記録方向を判断し、往路記録時には左端情報メモリ１０６のデータを選択し、復路記録時には右端情報メモリ１０５のデータを選択する。これにより、記録方向に応じたパターン番号がワークメモリ１１１に格納される。なお、左端情報メモリ１０６をパターン番号の取得先として選択するか、右端情報メモリ１０５をパターン番号の取得先として選択するかの切り替えは、例えば、記録ヘッド３の記録幅に対応した記録が完了する度に行なわれる。
【００３９】
テーブル取得部１１２は、ラスタデータの展開に際して、展開テーブル格納部１０９から展開テーブルを取得する。この展開テーブルの取得は、ラスタ毎に行なわれる。具体的には、ワークメモリ１１１に展開されたパターン番号を初期値として取得し、その後、同一階調の多値データが現れる度に当該取得したパターン番号をカウントアップ又はカウントダウンしつつ、パターン番号に対応する展開テーブルを順次取得する。
【００４０】
展開部１０７は、プリントバッファ１０４から１ラスタ毎にデータを取得し、当該取得したラスタをビットマップデータに展開する。この展開には、テーブル取得部１１２により取得された展開テーブルを用いて行なわれる。展開部１０７により展開されたビットマップデータは、記録ヘッド制御部６４４に送られる。これにより、記録ヘッド制御部６４４は、このビットマップデータに基づいて記録ヘッド３を制御して記録を行なう。
【００４１】
図４は、受信バッファ１０２からラスタ制御部１０３に送られる受信データの概要の一例を示す図である。
【００４２】
受信バッファ１０２からラスタ制御部１０３には、ラスタ先頭（ラスタ左端）から１ラスタづつ送られる。ラスタ制御部１０３では、送られてきたラスタをＨＶ変換してプリントバッファ１０４にカラム単位で格納するとともに、多値データ２０１の階調値に基づいて展開テーブルのパターン番号を更新していく。受信バッファ１０２からラスタ制御部１０３へは、Ｍ方向に転送される。ここで、２０５は、（転送の）最初の画素を示し、２０６は、最後の画素を示す。ラスタ制御部１０３は、ＨＶ変換処理が終了すると、その時点でのパターン番号を右端情報メモリ１０５に書き込む。
【００４３】
上述した通り、各階調は、展開パターン（展開テーブル）を複数個持っている。例えば、各階調に対応して展開テーブルが１〜４までの４種類設けられる場合には、図５に示すように、その展開結果は４ビット（２×２）のデータに展開される。ラスタ制御部１０３では、図６に示すように、例えば、各階調のデータが現れる度にパターン番号を切り替えるとともに、また、パターン番号が４番（最大値）になれば１番（最小値）に戻す。これにより、同一階調のデータであっても、その展開に用いるパターンを変更させることができる。
【００４４】
ここで、図９を用いて、ラスタデータの展開処理の概要について説明する。
【００４５】
図９（ａ）には、図３に示すプリントバッファ１０４に格納されている多値データの一例が示される。ここでは、説明を簡単にするために、プリントバッファ１０４のサイズが、方向Ａに９画素、方向Ｂに３画素である場合を例に挙げる。
【００４６】
プリントバッファ１０４は、１ラスタあたり９画素の領域を３ラスタ分（Ｎ，Ｎ＋１，Ｎ＋２）備えている。この場合、プリントバッファ１０４には、３種類（００、０１、０２）の階調データが格納されている。方向Ａは記録ヘッドの走査方向であり、方向Ｂは電気熱変換体（記録素子）の配列方向である。
【００４７】
次に、図６で説明した展開テーブルのパターン番号の割り当てについて具体例を挙げて説明する。ここで、図９（ｂ）は、図９（ａ）に示す階調データ０１に対してパターン番号を割り当てた場合を示し、図９（ｃ）は、図９（ａ）に示す階調データ０２に対してパターン番号を割り当てた場合を示している。
【００４８】
パターン番号の割り当てに際しては、図９（ｂ）に示すように、まず、ラスタＮにおける階調データ０１に対して、方向Ａに沿ってパターン番号を割り当てる。そして、ラスタＮ＋１、ラスタＮ＋２についても同様にしてパターン番号を順に割り当てる。また、階調データ０２に対しても、図９（ｃ）に示すように、階調データ０１の場合と同様にして割り当てを行なう。なお、図９（ｂ）及び図９（ｃ）における画素の斜線部は、対象の階調データがない画素を示している。
【００４９】
次に、図１０を用いて、図３に示す右端情報メモリ１０５及び左端情報メモリ１０６に格納されるパターン番号について説明する。ここでは、説明を簡単にするために、双方向記録モード設定時に、右端情報メモリ１０５及び左端情報メモリ１０６において、３ラスタ分の情報が保持される場合を例に挙げている。
【００５０】
図１０（ａ）は、図９（ｂ）に示すパターン番号が割り当てられている場合に、右端情報メモリ１０５及び左端情報メモリ１０６に格納されるパターン番号を示している。ここで、１０５Ａは、階調データ０１について右端情報メモリ１０５に格納されたパターン番号を示しており、１０６Ａは、階調データ０１について左端情報メモリ１０６に格納されたパターン番号を示している。右端情報メモリ１０５Ａには、左から順に、各ラスタにおける右端のパターン番号が格納されている。例えば、図９（ｂ）に示すように、ラスタＮにおける階調データ０１の右端のパターン番号は「１」である。従って、図１０（ａ）に示す右端情報メモリ１０５Ａのアドレス１には「１」が格納されている。また、図９（ｂ）に示すように、ラスタＮにおける階調データ０１の左端のパターン番号は「１」である。従って、図１０（ａ）に示す左端情報メモリ１０６Ａのアドレス１には「１」が格納されている。同様に、図９（ｂ）に示すように、ラスタＮ＋１における階調データ０１の右端のパターン番号は「４」である。従って、図１０（ａ）に示す右端情報メモリ１０５Ａのアドレス２には「４」が格納されている。また、図９（ｂ）に示すように、ラスタＮ＋１における階調データ０１の左端のパターン番号は「２」である。従って、図１０（ａ）に示す左端情報メモリ１０６Ａのアドレス２には「２」が格納されている。同様に、ラスタＮ＋２における階調データ０１の場合には、図１０（ａ）に示すように、右端情報メモリ１０５Ａのアドレス３には「２」が格納されており、左端情報メモリ１０６Ａのアドレス３には「１」が格納されている。このようにラスタＮ＋１以降のラスタについては、右端情報メモリ１０５に格納された多値データに対応するパターン番号に基づいて、左端情報メモリ１０６に格納される多値データに対応するパターン番号が決められることになる。なお、片方向記録モードが設定されている場合には、左端情報メモリ１０６Ａの全てのアドレスには、所定値（例えば、１）が格納されることになる。
【００５１】
図１０（ｂ）は、図９（ｃ）に示すパターン番号が割り当てられている場合に、右端情報メモリ１０５及び左端情報メモリ１０６に格納されるバターン番号を示している。ここで、１０５Ｂは、階調データ０２について右端情報メモリ１０５に格納されたパターン番号を示しており、１０６Ｂは、階調データ０２について左端情報メモリ１０６に格納されたパターン番号を示している。この場合も、図９（ｂ）及び図１０（ａ）で説明した場合と同様に、階調データ０２に対する右端のパターン番号及び左端のパターン番号がそれぞれのメモリに格納されている。なお、片方向記録モードが設定されている場合には、左端情報メモリ１０６Ｂの全てのアドレスには、所定値（例えば、１）が格納されることになる。
【００５２】
なお、図３に示すラスタ制御部１０３には、上述したパターン番号の割り当てを行なうために、パターン番号を保持するレジスタが設けられる。また、図９（ｂ）に示すように、ラスタＮにおいて、パターン番号の初期値を「１」としている。そして、パターン番号は、図６で説明した更新ルール（割当ルール）に基づいて設定される。
【００５３】
ここで、図７を用いて、図３に示す記録装置１における処理の流れの一例について説明する。ここでは、ホスト装置６１０からデータを受信した後の処理について説明する。
【００５４】
記録装置１は、ホスト装置６１０からデータを受信すると、受信バッファ１０２において、その受信したデータを受信データとして格納する（Ｓ１０１）。ラスタ制御部１０３は、受信バッファ１０２から１ラスタ毎にデータを取得し、その取得したラスタをＨＶ変換するとともに、ラスタ内の各データの階調を判断する（Ｓ１０２）。そして、各データの階調に対応して展開テーブルのパターン番号を更新する（Ｓ１０３）。このパターン番号の更新では、左端情報メモリ１０６から各階調に対応したパターン番号の初期値を取得し、その初期値に基づいて各データに対してパターン番号を設定していく。例えば、同一階調のデータが現れるごとにパターン番号をカウントアップし、該当するパターン番号を各データに設定する。
【００５５】
パターン番号の更新が終わると、ラスタ制御部１０３は、多値データのラスタをプリントバッファ１０４に格納する（Ｓ１０４）。このとき、ラスタ制御部１０３は、ラスタ（１ラスタ分）分の処理完了時点でのパターン番号（終端値）を右端情報メモリ１０５に格納する。なお、双方向記録モード時であれば、ラスタ制御部１０３は、図１０（ａ）及び図１０（ｂ）で説明した手順に従って、パターン番号（初期値）を左端情報メモリ１０６（１０６Ａ、１０６Ｂ）に格納する。このＳ１０２〜Ｓ１０５までの処理は、全ラスタ（複数のラスタデータ分）を処理するまで繰り返し行なわれる（Ｓ１０６でＮＯ）。
【００５６】
ここで、Ｓ１０５までの処理が終了すると、記録装置１は、展開処理を開始する。この処理が開始すると、記録装置１は、まず、セレクタ１１０において、展開対象となるラスタの展開方向（記録方向）を判断する。この判断は、記録方向保持部１０８に保持された記録方向指定情報に基づいて行なわれる。ここで、往路方向へ記録を行なう場合（Ｓ１０７でＹＥＳ）、セレクタ１１０は、左端情報メモリ１０６のデータを選択する。これにより、左端情報メモリ１０６に格納されたパターン番号がワークメモリ１１１に格納される（Ｓ１０８）。また、復路方向へ記録を行なう場合（Ｓ１０７でＮＯ）、セレクタ１１０は、右端情報メモリ１０５のデータを選択する。これにより、右端情報メモリ１０５に格納されたパターン番号がワークメモリ１１１に格納される（Ｓ１０９）。
【００５７】
パターン番号の初期値がワークメモリ１１１に読み出されると、記録装置１は、展開部１０７において、記録方向保持部１０８に保持された記録方向指定情報に基づいてデータの展開方向を確認する。展開方向の確認後、記録装置１は、展開部１０７において、プリントバッファ１０４から多値データを読み出すとともに、テーブル取得部１１２において、ワークメモリ１１１に格納されたパターン番号の初期値に基づいて展開テーブルを取得する。そして、記録装置１は、展開部１０７において、当該取得された展開テーブルと展開方向とに基づいて多値データをビットマップデータに展開する（Ｓ１１０）。例えば、順ラスタ方向（往路方向）の展開では、左端情報メモリ１０６からパターン番号の初期値を読み出し、同一階調のデータが現れるごとにそのパターン番号をカウントアップしていく。逆ラスタ方向（復路方向）の展開では、右端情報メモリ１０５からパターン番号の初期値を読み出し、同一階調のデータが現れるごとにそのパターン番号をカウントダウンしていく。すなわち、記録ヘッド３の走査毎に当該記録ヘッド３の走査方向に基づいて両識別情報（左端情報メモリ１０６及び右端情報メモリ１０５におけるパターン番号）のうち一方の識別情報を選択する。そして、当該選択した識別情報に基づいてパターンデータ（展開テーブル）を読み出す。
【００５８】
なお、更新したパターン番号は、その都度、ワークメモリ１１１に記憶させる。展開部１０７においてビットマップデータへと展開されたデータは、展開部１０７から記録ヘッド制御部６４４へと送られる（Ｓ１１１）。これにより、記録ヘッド制御部６４４は、このビットマップデータに基づいて記録ヘッド３を制御して記録を行なう。このＳ１０７〜Ｓ１１２までの処理は、全ラスタを処理するまで繰り返し行なわれる（Ｓ１１２でＮＯ）。
【００５９】
なお、図７を用いて説明した処理の流れは、あくまで一例であり、この処理の流れに限定されず、適宜変更できる。例えば、記録ヘッド制御部６４４へのビットマップデータの送信は、全ラスタのビットマップデータの展開が終了した後に行なうようにしてもよい。また、例えば、上述したいくつかの処理を並行して行なうようにしてもよい。
【００６０】
以上説明したように本実施形態によれば、同一階調のデータが現れる度にその階調の展開に用いる展開テーブルを変更する構成において、片方向記録時と双方向記録時とにおける記録結果を整合させることができる。また、上述した構成によれば、入力データを多値データのままプリントバッファ１０４に格納するため、メモリの容量を抑えることができる。更に、階調値毎に複数の展開テーブルを保持し、そのいずれかを用いて展開を行なうためスジやムラを抑制できる。
【００６１】
また、上述した通り、ラスタ先頭（ラスタ左端）の初期値を任意に設定することができるため、初期値を任意に設定するようにした場合には、複数ラスタ間で縦方向に同じデータが続く場合であっても、パターンの固定化を防ぐことができる。
【００６２】
以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【００６３】
例えば、上述した実施形態においては、多値データを各階調、４ビットの展開パターン４個の中からビットマップデータに展開する場合を例に挙げて説明したが、これに限られない。例えば、展開パターンを固定してもよい。また、展開パターンとして、２ビットや８ビットに展開する展開テーブルを用いて展開を行なうようにしてもよい。
【００６４】
また、上述した実施形態においては、１つの多値データから１つのプレーンに展開する場合を例に挙げて説明したが、１つの多値データから複数プレーンに展開するようにしてもよい。この場合、パターン番号の初期値と終端値とをプレーン数分持ち、また展開テーブルもプレーン数分持つ。例えば、図８は、１つの多値データから２つのプレーンに展開を行なう展開テーブルの一例を示している。図８に示す展開テーブルは、例えば、大ノズルと小ノズルとを同時に展開する場合などに有効である。この場合、例えば、展開テーブルＡを小ノズル用のプレーン、展開テーブルＢを大ノズルのプレーンとして展開する。
【００６５】
また、上述した実施形態においては、パターン番号の更新を全ての階調データを対象として行なうか、任意の１又は複数の階調を対象として行なうか等については言及していないが、これはいずれであってもよい。なお、後者の場合には、例えば、メモリ容量を抑えることができる。
【図１】
2010221700.tif 000003
【図２】
2010221700.tif 000004
【図３】
2010221700.tif 000005
【図４】
2010221700.tif 000006
【図５】
2010221700.tif 000007
【図６】
2010221700.tif 000008
【図７】
2010221700.tif 000009
【図８】
2010221700.tif 000010
【図９】
2010221700.tif 000011
【図１０】
2010221700.tif 000012