(57)【要約】本発明は、ビットマップデータを格納しているビットマップデータ格納部と、ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、ジャギー除去処理部の処理結果に基づいて構成されるデータを印刷する印刷部を具備する印刷装置であり、かかる印刷装置は、ビットマップデータを印刷する場合に、サイズを小さくしないでジャギーを除去することができる。
2005032826.tif 000002
【特許請求の範囲】
【請求項１】
ビットマップデータを格納しているビットマップデータ格納部と、
前記ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、
前記ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、
前記ジャギー除去処理部の処理結果に基づいて構成されるデータを印刷する印刷部を具備する印刷装置。
【請求項２】
前記ジャギー除去処理部は、
前記ビットマップデータのジャギー箇所を検出するジャギー検出手段と、
前記ジャギー検出手段で検出したジャギー箇所の階段状のすべての直線部に対して、前記直線部の中点と、前記直線部と隣接する直線部の中点で構成される直線を結びベクトルデータを構成するベクトルデータ構成手段を具備する請求の範囲第１記載の印刷装置。
【請求項３】
ビットマップデータのデータ変換のルールを示す変換ルールを保持しているルール保持部と、
前記変換ルールに基づいて、前記ビットマップデータの一部を変換する変換部をさらに具備し、
前記印刷部は、前記変換部における変換結果、および前記ジャギー除去処理部の処理結果に基づいて構成されるデータを印刷する請求の範囲第１項または請求の範囲第２項いずれか記載の印刷装置。
【請求項４】
前記変換ルールは、変換前の３×３のドットパターンと、変換後の３×３のドットパターンを有し、前記変換ルールは、前記変換前のドットパターンに合致するドットパターンを前記変換後のドットパターンに変換することを示すルールである請求の範囲第３項記載の印刷装置。
【請求項５】
コンピュータに、
格納されているビットマップデータを取得するビットマップデータ取得ステップと、
前記ビットマップデータのジャギーを除去する処理を行うジャギー除去処理ステップと、
前記ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする印刷指示ステップを実行させるためのプログラム。
【請求項６】
コンピュータに、
格納している変換ルールに基づいて、前記ビットマップデータの一部を変換する変換ステップをさらに実行させ、
前記印刷指示ステップは、前記変換ステップにおける変換結果、および前記ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする請求の範囲第５項記載のプログラム。
【発明の詳細な説明】
【技術分野】  本発明は、ビットマップデータを印刷する装置等に関するものである。
【背景技術】  従来のビットマップデータを印刷する印刷装置は、ジャギーを除くために解像度を上げると、印刷される画像を小さく印刷する。等倍に印刷しようとすると、解像度は変わらず、ジャギーを有する画像を印刷する。
例えば、図４に示す「１００×７０」のサイズを有する５０ｄｐｉのビットマップデータをそのまま印刷する場合には、ジャギーを有する画像が印刷される。また、解像度を２倍の１００ｄｐｉにセットして印刷すると「５０×３５」のサイズになる（図２５参照）。つまり、従来の印刷装置は、ビットマップデータを印刷する場合に、サイズを小さくしないでジャギーを除去することはできなかった。
【発明の開示】
本発明の印刷装置は、ビットマップデータを格納しているビットマップデータ格納部と、ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、ジャギー除去処理部の処理結果に基づいて構成されるデータを印刷する印刷部を具備する。
この構成により、ビットマップデータを印刷する場合に、サイズを小さくしないでジャギーを除去することができる。
また、上記の印刷装置において、ジャギー除去処理部が、ビットマップデータのジャギー箇所を検出するジャギー検出手段と、ジャギー検出手段で検出したジャギー箇所の階段状のすべての直線部に対して、直線部の中点と、当該直線部と隣接する直線部の中点で構成される直線を結びベクトルデータを構成するベクトルデータ構成手段を具備する。
この構成により、さらになめらかなビットマップデータを印刷できる。
また、上記の印刷装置において、ビットマップデータのデータ変換のルールを示す変換ルールを保持しているルール保持部と、変換ルールに基づいて、前記ビットマップデータの一部を変換する変換部をさらに具備し、印刷部は、変換部における変換結果、およびジャギー除去処理部の処理結果に基づいて構成されるデータを印刷する。
この構成により、さらになめらかで自然なビットマップデータを印刷できる。
【図面の簡単な説明】  図１は、本発明の実施の形態１における印刷装置の構成を示すブロック図である。
図２は、本発明の実施の形態１における印刷装置の動作について説明するフローチャートである。
図３は、本発明の実施の形態１におけるジャギー除去処理の動作について説明するフローチャートである。
図４は、本発明の実施の形態１における印刷対象のビットマップデータを示す図である。
図５は、本発明の実施の形態１におけるビットマップデータが有するジャギーを拡大した図である。
図６は、本発明の実施の形態１におけるジャギー除去の処理を説明する図である。
図７は、本発明の実施の形態１におけるジャギー除去の処理を説明する図である。
図８は、本発明の実施の形態１におけるビットマップデータの印刷例を示す図である。
図９は、本発明の実施の形態１におけるベクトルデータの例を示す図である。
図１０は、本発明の実施の形態２における印刷装置の構成を示すブロック図である。
図１１は、本発明の実施の形態２における印刷装置の動作について説明するフローチャートである。
図１２は、本発明の実施の形態２における変換処理の動作について説明するフローチャートである。
図１３は、本発明の実施の形態２における変換ルール管理表を示す図である。
図１４は、本発明の実施の形態２におけるジャギーを有するビットマップデータを示す図である。
図１５は、本発明の実施の形態２における変換ルールの適用を説明するための図である。
図１６は、本発明の実施の形態２における変換処理を行わず場合のビットマップデータを示す図である。
図１７は、本発明の実施の形態３における印刷装置の構成を示すブロック図である。
図１８は、本発明の実施の形態３における他の変換ルールを示す図である。
図１９は、本発明の実施の形態３における変換前の元データを示す図である。
図２０は、本発明の実施の形態３における変換ルールを適用した変換後のデータを示す図である。
図２１は、本発明の実施の形態３における変換ルールを適用しない変換後のデータを示す図である。
図２２は、本発明の実施の形態１における変換前のビットマップデータを示す図である。
図２３は、本発明の実施の形態１における変換後のビットマップデータを示す図である。
図２４は、本発明の実施の形態１における変換処理を説明する図である。
図２５は、従来の従来技術におけるビットマップデータの印刷例を示す図である。
【発明を実施するための最良の形態】  以下、印刷装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
（実施の形態１）
図１は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ジャギー除去処理部１０４、印刷部１０５を具備する。ジャギー除去処理部１０４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２を具備する。
入力受付部１０１は、ビットマップデータを印刷する指示を受け付ける。この指示は、通常、印刷対象のビットマップデータを識別するデータ識別子を有する。入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。入力受付部１０１は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
ビットマップデータ格納部１０２は、ビットマップデータを格納している。ビットマップデータのデータ構造は問わない。ビットマップデータは、Ｍｉｃｒｏｓｏｆｔ  Ｂｉｔｍａｐ等のいかなるラスタデータでも良い。ビットマップデータ格納部１０２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
ビットマップデータ取得部１０３は、入力受付部１０１が受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。ビットマップデータ取得部１０３は、通常、ＭＰＵやメモリ等から実現され得る。ビットマップデータ取得部１０３がビットマップデータを取得するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
ジャギー除去処理部１０４は、ビットマップデータ取得部１０３が取得したビットマップデータのジャギーを除去する処理を行う。ジャギー除去の方法は何でも良い。ジャギー除去の好適なアルゴリズムは後述する。ジャギー除去処理部１０４は、通常、ＭＰＵやメモリ等から実現され得る。ジャギー除去処理部１０４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
印刷部１０５は、ジャギー除去処理部１０４がジャギー除去したデータを印刷する。印刷部１０５は、例えば、プリンタとそのドライバーソフトを有する。なお、印刷部１０５は、外部のプリンタに対して印刷指示をするソフトウェアであると考えても良い。
ジャギー検出手段１０４１は、ビットマップデータ取得部１０３が取得したビットマップデータのジャギー箇所を検出する。ジャギー検出手段１０４１は、例えば、以下のような処理によりジャギー箇所を検出する。ジャギー検出手段１０４１は、ビットマップデータの画像の全ての位置において縦方向または横方向にジャギーをチェックし、複数の直線を検知し、複数の直線の始点と終点を取得する。ジャギー検出手段１０４１は、ある直線と隣あう直線が一定以上の段差がある場合に、ジャギーの箇所であると判断する。なお、「一定以上」とは、２ドット以上でも１０ドット以上でも良い。
ベクトルデータ構成手段１０４２は、ジャギー検出手段１０４１で検出したジャギー箇所の階段状のすべての直線部に対して、当該直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結びベクトルデータを構成する。ここで、ベクトルデータは、例えば、直線の始点と終点の座標値を有する。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２は、通常、ＭＰＵやメモリ等から実現され得る。「ほぼ中点」とは、完全な中点が望ましいが、ユーザから見て段差が解消される地点であれば良い。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
以下、本印刷装置の動作について図２のフローチャートを用いて説明する。
（ステップＳ２０１）入力受付部１０１は、ビットマップデータを印刷する指示を受け付けたか否かを判断する。印刷指示を受け付ければステップＳ２０２に行き、印刷指示を受け付けなければステップＳ２０１に戻る。
（ステップＳ２０２）ビットマップデータ取得部１０３は、ステップＳ２０１で受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。
（ステップＳ２０３）ジャギー除去処理部１０４は、ステップＳ２０２で取得したビットマップデータのジャギーを除去する処理を行う。ジャギー除去の処理の結果、ジャギー除去されたデータが出力される。ジャギー除去の処理の詳細については後述する。
（ステップＳ２０４）印刷部１０５は、ステップＳ２０３でジャギー除去したデータを印刷する。処理を終了する。
以下、ステップＳ２０３のジャギー除去処理の動作について図３のフローチャートを用いて説明する。
（ステップＳ３０１）ジャギー検出手段１０４１は、ビットマップデータの輪郭を抽出する。輪郭抽出の結果、ビットマップデータの輪郭を構成する複数の直線の座標値（ｘ１，ｙ１，ｘ２，ｙ２）群が出力される。（ｘ１，ｙ１）はｉ番目の直線の始点の座標値である。（ｘ２，ｙ２）はｉ番目の直線の終点の座標値である。
（ステップＳ３０２）ジャギー検出手段１０４１は、カウンタｉに１を代入する。
（ステップＳ３０３）ジャギー検出手段１０４１は、ステップＳ３０１で出力した複数の直線の座標値群のｉ番目の直線の座標値（ｘ１，ｙ１，ｘ２，ｙ２）を取得する。
（ステップＳ３０４）ジャギー検出手段１０４１は、ステップＳ３０１で出力した複数の直線の座標値群に、ｉ＋１番目の直線の座標値が存在するか否かを判断する。ｉ＋１番目の直線の座標値が存在すればステップＳ３０５に行き、ｉ＋１番目の直線の座標値が存在しなければステップＳ３１３に飛ぶ。
（ステップＳ３０５）ジャギー検出手段１０４１は、ｉ＋１番目の直線の座標値（ｘ３，ｙ３，ｘ４，ｙ４）を取得する。（ｘ３，ｙ３）はｉ＋１番目の直線の始点の座標値である。（ｘ４，ｙ４）はｉ＋１番目の直線の終点の座標値である。
（ステップＳ３０６）ジャギー検出手段１０４１は、（ｘ２，ｙ２）、（ｘ３，ｙ３）に基づいて２直線間の段差を算出する。段差は、２点（ｘ２，ｙ２）、（ｘ３，ｙ３）間の距離である。
（ステップＳ３０７）ジャギー検出手段１０４１は、ステップＳ３０６で算出した段差が一定以上であるか否かを判断する。段差が一定以上であればステップＳ３０８に行き、段差が一定以上でなければステップＳ３０３に戻る。「一定」とは、２でも、それ以上でも良い。かかる判断が、ジャギーが存在するか否かの判断である。
（ステップＳ３０８）ベクトルデータ構成手段１０４２は、ｉ番目の直線の中点（（ｘ１＋ｘ２）／２，（ｙ１＋ｙ２）／２）を算出する。
（ステップＳ３０９）ベクトルデータ構成手段１０４２は、ｉ＋１番目の直線の中点（（ｘ３＋ｘ４）／２，（ｙ３＋ｙ４）／２）を算出する。
（ステップＳ３１０）ベクトルデータ構成手段１０４２は、ステップＳ３０８およびステップＳ３０９の算出結果を用いて、ベクトルデータを構成する。ベクトルデータは、（（ｘ１＋ｘ２）／２，（ｙ１＋ｙ２）／２，（ｘ３＋ｘ４）／２，（ｙ３＋ｙ４）／２）である。
（ステップＳ３１１）ベクトルデータ構成手段１０４２は、ステップＳ３１０で構成したベクトルデータを一時格納する。
（ステップＳ３１２）カウンタｉを１インクリメントする。ステップＳ３０３に戻る。
（ステップＳ３１３）ベクトルデータ構成手段１０４２は、ステップＳ３０１で出力したビットマップデータの輪郭を構成する複数の直線の座標値群と、ステップＳ３１１で一時格納した１以上のベクトルデータから、輪郭を構成するベクトルデータを決定する。具体的には、ステップＳ３０１で出力したビットマップデータの輪郭を構成する複数の直線の座標値群のうち、ジャギーを構成しないと判断された直線の座標値データと、ステップＳ３１１で一時格納した１以上のベクトルデータをビットマップデータの輪郭を構成するベクトルデータとする。最終的なベクトルデータの具体例は後述する。かかる最終的なベクトルデータは、ジャギーのないなめらかな輪郭を構成するデータである。処理を終了する。
また、ステップＳ２０３のジャギー除去処理の他の動作について説明する。つまり、ジャギー除去処理は、図３における処理に限らない。ここで説明するジャギー除去処理では、画像データの全ドットを調査する。具体的には、画像データのサイズを横（ｘ座標）ａドット、縦（ｙ座標）ｂドットとする。かかる場合、ｙ座標を０からｂ−１まで動かし、各ｙ座標の値の時に、ｘ座標を０からａ−１までスキャンする。つまり、プログラム（例えば、Ｃ言語）で記載すれば、「ｆｏｒ（ｙ＝０；ｙ＜ｂ；ｙ＋＋）｛ｆｏｒ（ｘ＝０；ｘ＜ａ；ｘ＋＋）  ｛Ｓｃａｎ（）；｝｝」のような２重ループをもちいて、全ドットで関数Ｓｃａｎを実行する。関数Ｓｃａｎにおいては、「その位置がジャギーの段差であるかどうか」を調べる。Ｓｃａｎ実行後、段差であると確定したら、ベクトルデータ格納部にｘとｙに基づく情報を追加格納していく。ジャギーの段差であるかどうかの判断の基準は、ドットの明るさを使用する。そのドットのＲ（赤）Ｇ（緑）Ｂ（青）成分から明るさ「Ｂｌｉｇｈｔ  ＝  Ｂ＋Ｒ＊２＋Ｇ＊４」を計算し、その明るさが縦または横方向で大幅に異なったまま連続していたら、ジャギーの段差であると判断する。この連続の程度がジャギーの長さに相当する。例えば、もし長さが１ドットのジャギーであれば、それは４５度の階段である。もし、１に対して大きい値（例えば１００ドット）であれば、それは緩やかな傾きのジャギーとなる。
以下、本実施の形態における印刷装置の具体的な動作について説明する。図４は、印刷対象のビットマップデータである。図５は、図４のビットマップデータが有するジャギー（階段部分）を拡大した図である。本印刷装置は、ユーザから図４のビットマップデータの印刷指示を受け付けた、とする。かかる場合、本印刷装置は、図４のビットマップデータを読み出し、図５のジャギーの箇所を検出する。そして、図６に示すように一定以上の段差がある二の直線の中点（ＡおよびＢ）を結ぶ直線を示す座標値を出力する。この直線の始点はＡであり、終点はＢである。かかる処理を、図４のビットマップデータのすべての輪郭に対して繰り返すと、図７に示すなめらかな直線群を有するデータが得られる。そして、本印刷装置は、図８のデータを印刷する。
図８の画像を印刷するもとになるベクトルデータの例を図９に示す。図９のベクトルデータは、３７３本の線からなることを示す。また、図９のベクトルデータにおいて、各線は、始点、通過点、終点を有する。「始点」「通過点」「終点」は、それぞれｘ座標値、ｙ座標値を有する。図８の画像は、図９のベクトルデータを実行することにより出力され得る。
以上、本実施の形態によれば、ビットマップデータの大きさを変更せずに、ジャギーを除去したビットマップデータを印刷できる。
なお、本実施の形態によれば、ビットマップデータの内容は問わないことは言うまでもない。ただし、ビットマップデータが流体解析（気体や液体の流れの解析）の結果を示すビットマップデータである場合、特に効果的である。流体の流れがスムーズに表現され、解析結果を見るユーザにとって、より分かり易くかつ、ユーザに、解析結果に対する疑義を生じさせない。
また、実施の形態において、画像データは、二値画像でも、カラー画像でも良い。画像データがカラー画像である場合、直近の色を用いてジャッギーを除去することが好適である。具体的には、図２２から図２４に示す図を用いて説明する。図２２がジャッギーを有する変換前のカラーのビットマップデータである。かかるビットマップデータを上述したように、１ドットずつずらしてチェック（スキャン）し、ドットの明るさを取得する。連続するドットの明るさが縦または横方向で大幅に異なったまま連続していたら、ジャギーの段差であると判断する。例えば、図２２において、情報処理装置は、画像データの中央あたりにジャッギーが存在すると判断する。そして、図２３に示すように、直近の色（ここでは、下方または上方の色）を用いて段差を消去すべく、ドットの色を変更する。かかる処理を説明した図が図２４である。なお、図２２から図２４の小さな矩形領域は、複数のドットを有する。なお、かかることは、他の実施の形態においても同様である。
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における印刷装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、格納されているビットマップデータを取得するビットマップデータ取得ステップと、ビットマップデータのジャギーを除去する処理を行うジャギー除去処理ステップと、ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする印刷指示ステップを実行させるためのプログラムである。
（実施の形態２）
図１０は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ルール保持部１００１、変換部１００２、ジャギー除去処理部１００４、印刷部１０５を具備する。ジャギー除去処理部１００４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１００４２を具備する。
ルール保持部１００１は、ビットマップデータのデータ変換のルールを示す変換ルールを保持している。変換ルールのデータ構造は問わない。変換ルールの具体例については、後述する。ルール保持部１００１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
変換部１００２は、ルール保持部１００１が保持している変換ルールに基づいて、ビットマップデータの一部を変換する。変換部１００２は、通常、ＭＰＵやメモリ等から実現され得る。変換部１００２のデータ変換の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
ジャギー除去処理部１００４は、変換部１００２が変換した箇所を除くジャギーの箇所について、当該ジャギーを除去する処理を行う。つまり、変換部１００２による変換が、ジャキー除去の処理に優先される。ジャギー除去処理部１００４は、通常、ＭＰＵやメモリ等から実現され得る。ジャギー除去処理部１００４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
ベクトルデータ構成手段１００４２は、変換部１００２が変換した変換結果を優先させて、その他のジャギー検出手段１０４１で検出したジャギー箇所の階段状のすべての直線部に対して、当該直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結びベクトルデータを構成する。
以下、本印刷装置の動作について図１１のフローチャートを用いて説明する。
（ステップＳ１１０１）入力受付部１０１は、ビットマップデータを印刷する指示を受け付けたか否かを判断する。印刷指示を受け付ければステップＳ１１０２に行き、印刷指示を受け付けなければステップＳ１１０１に戻る。
（ステップＳ１１０２）ビットマップデータ取得部１０３は、ステップＳ１１０１で受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。
（ステップＳ１１０３）変換部１００２は、ルール保持部１００１が保持している変換ルールに基づいて、ステップＳ１１０２で取得したビットマップデータの一部を変換する。この変換処理の詳細については後述する。
（ステップＳ１１０４）ジャギー除去処理部１０４は、ステップＳ１１０３で変換処理を行ったビットマップデータのジャギーを除去する処理を行う。ジャギー除去の処理の結果、ジャギー除去されたデータが出力される。ジャギー除去の処理の詳細については後述する。
（ステップＳ１１０５）印刷部１０５は、ステップＳ１１０４でジャギー除去したデータを印刷する。処理を終了する。
以下、ステップＳ１１０３の変換処理の動作について図１２のフローチャートを用いて説明する。
（ステップＳ１２０１）変換部１００２は、カウンタｉに１を代入する。
（ステップＳ１２０２）変換部１００２は、ビットマープデータからｉ番目のマトリクスを取得する。マトリクスとは、ｎ×ｍ（ｎ，ｍは整数）のドットパターンである。なお、マトリクスは、３×３のドットパターンであることが好適である。変換ルールを適用して意義がある場合が多いからである。通常、ｉが１の時のマトリクスは、ビットマープデータの左上のドットからｎ×ｍのドットパターンを取得する。また、例えば、ｉが２の時は、ｉが１の時のマトリクスから１ドット右にずらしてｎ×ｍのドットパターンを取得する。
（ステップＳ１２０３）変換部１００２は、ステップＳ１２０２でｉ番目のマトリクスが取得できたか否かを判断する。ｉ番目のマトリクスが取得できればステップＳ１２０４に行き、ｉ番目のマトリクスが取得できなければ処理を終了する。
（ステップＳ１２０４）変換部１００２は、カウンタｊに１を代入する。
（ステップＳ１２０５）変換部１００２は、ルール保持部１００１からｊ番目の変換前マトリクスを取得する。なお、ここでは、ルール保持部１００１のルールは、変換前マトリクスと変換後マトリクスの対応表である。ルールの具体例は後述する。
（ステップＳ１２０６）変換部１００２は、ｊ番目の変換前マトリクスが存在するか否か（つまり、ｊ番目のルールが存在するか否か）を判断する。ｊ番目の変換前マトリクスが存在すればステップＳ１２０７に行き、ｊ番目の変換前マトリクスが存在しなければステップＳ１２０２に戻る。
（ステップＳ１２０７）変換部１００２は、ステップＳ１２０２で取得したｉ番目のマトリクスと、ステップＳ１２０５で取得したｊ番目の変換前マトリクスが一致するか否かを判断する。一致する場合はステップＳ１２０８に行き、一致しない場合はステップＳ１２１２に飛ぶ。
（ステップＳ１２０８）変換部１００２は、ルール保持部１００１からｊ番目の変換後マトリクスを取得する。
（ステップＳ１２０９）変換部１００２は、ｉ番目のマトリクスをｊ番目の変換後マトリクスに書き換える。
（ステップＳ１２１０）変換部１００２は、ステップＳ１２０９において書き換えたビットマップデータの箇所を一時登録する。ビットマップデータの箇所は、例えば、ビットマップデータの全体の中での相対的な位置座標を示すデータで特定する。
（ステップＳ１２１１）カウンタｉを１インクリメントする。ステップＳ１２０２に戻る。
（ステップＳ１２１２）カウンタｊを１インクリメントする。ステップＳ１２０５に戻る。
以下、ステップＳ１１０４のジャギー除去処理の動作について説明する。ジャギー除去処理の動作は、基本的には、実施の形態１で説明したジャギー除去処理の動作と同様である。ただし、ステップＳ１１０４のジャギー除去処理において、ステップＳ１２１０で一時登録されたビットマップデータの箇所に関して、ジャギー除去処理は行わない。変換ルールが適用された箇所であるからである。
以下、本実施の形態における印刷装置の具体的な動作について説明する。図１３は、ルール保持部１００１が保持している変換ルール管理表である。変換ルール管理表は、「ＩＤ」「変換前マトリクス」「変換後マトリクス」を有するレコードを１以上保持している。「ＩＤ」はレコードを識別する情報であり、表管理上の要請のために存在する。変換ルール管理表は、ビットマップデータの輪郭の中に属性値「変換前マトリクス」のマトリクスに合致するパターンがある場合に、当該パターンを属性値「変換後マトリクス」が示すマトリクスに書き換える、というルールを保持していることとなる。
かかる場合、印刷装置は、例えば、図１４の「ｅ」を示すジャギーを有するビットマップデータを変換する場合に、図１５に示すように、図１３の変換ルール管理表の「ＩＤ＝１」のルールが適用される。そして、連続的に変換ルールを適用した後、実施の形態１で述べたジャギー除去処理を行えば、ユーザに違和感がなく、丸みを帯びた「ｅ」を示すビットマップデータが印刷される。なお、本実施の形態において、変換処理を行わず、ジャギー除去処理のみを行えば（つまり、実施の形態１における処理のみを適用すれば）、図１４の「ｅ」を示すビットマップデータは、図１６のようになる。図１６の「ｅ」を示すビットマップデータは、ユーザにとって極めて不自然である。
以上、本実施の形態によれば、ビットマップデータの大きさを変更せずに、ジャギーを除去した画像が印刷できる。また、所定のルールを適用することにより、チューニングが行え、ユーザの感覚に合致した極めて自然なビットマップデータが印刷できる。
なお、本実施の形態によれば、変換ルールは、図１３に示すルールであったが、他のルールでも良い。ただし、変換ルールは、変換前の３×３のドットパターンと、変換後の３×３のドットパターンを有し、変換ルールは、変換前のドットパターンに合致するドットパターンを前記変換後のドットパターンに変換することを示すルールであることは好ましい。
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における印刷装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、格納されているビットマップデータを取得するビットマップデータ取得ステップと、格納している変換ルールに基づいて、ビットマップデータの一部を変換する変換ステップと、変換ステップにおける変換結果のビットマップデータのジャギーを除去する処理を行うジャギー除去処理ステップと、ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする印刷指示ステップを実行させるためのプログラムである。
（実施の形態３）
本実施の形態において、携帯電話や携帯端末等のデータを携帯電話や携帯端末等から受信して、印刷する印刷装置について説明する。図１７は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、データ受信部１７０１、データ拡大部１７０２、ルール保持部１００１、変換部１７０３、ジャギー除去処理部１００４、印刷部１０５を具備する。ジャギー除去処理部１００４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１００４２を具備する。
データ受信部１７０１は、携帯電話や携帯端末等が保持しているデータを携帯電話や携帯端末等から受信する。受信手段は、赤外線などの無線通信手段が好適であるが、有線の通信手段でも良い。
データ拡大部１７０２は、データ受信部１７０１が受信したデータを拡大する。拡大するサイズは、所定のサイズであり、例えば、Ａ４サイズである。画像データを拡大する技術は公知技術であるので、詳細な説明は省略する。データ拡大部１７０２は、通常、ＭＰＵやメモリ等から実現され得る。データ拡大部１７０２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
変換部１７０３は、ルール保持部１００１の変換ルールに基づいて、データ拡大部１７０２が拡大したデータの一部を変換する。変換部１７０３のデータ変換方法は、変換部１００２と同様であるので、詳細な説明は省略する。なお、データ拡大部１７０２のデータ拡大処理により、ジャギーが増加する。そして、変換部１７０３、ジャギー除去処理部１００４の処理により、なめらかな画像が得られる。
以下、本印刷装置の動作について説明する。本印刷装置は、例えば、カメラ付き携帯電話で撮影した画像を受信し、印刷する。印刷の際に、上述した変換処理、ジャギー除去処理を行う。
まず、ユーザは、カメラ付き携帯電話で画像を撮影する。そして、撮影した画像を印刷装置に送信する。次に、印刷装置は、撮影画像を受信する。次に、印刷装置は、予め決められたサイズ、例えば、Ａ４サイズに画像を拡大する。次に、印刷装置は、上述した変換ルールに基づいて、拡大したデータの一部を変換する。そして、印刷装置は、上述したジャギー除去処理を行う。以上の処理により、ユーザは、カメラ付き携帯電話で撮影した画像について、拡大され、かつ、輪郭がかめらかになった高品質な画像を取得できる。
以上、本実施の形態によれば、携帯電話等の端末から受信したビットマップデータを拡大し、印刷できる。その際、極めてなめらかな、自然な画像データを得ることができる。具体的には、例えば、携帯電話等が保持しているデータ（例えば、カメラ付き携帯電話で撮影したデータ）は、解像度が小さく、通常の方法で印刷すればジャギーが目立つが、本実施の形態における発明によれば、非常に美しい画像を印刷できる。
なお、本実施の形態において変換部、ルール保持部は必須ではない。つまり、本実施の形態における印刷装置は、携帯電話等から受信したデータを拡大し、ジャギー除去処理を行い、印刷するだけでも良い。また、本実施の形態における印刷装置は、携帯電話等から受信したデータを拡大もせずに、ジャギー除去処理を行い、印刷するだけでも良い。さらに、本実施の形態における印刷装置は、データ拡大部も必須ではない。つまり、本実施の形態における印刷装置は、携帯電話等から受信したデータを変換ルールに基づいて変換し、ジャギー除去処理を行い、印刷するだけでも良い。
また、本実施の形態における変換ルールは、例えば、図１８に示す変換ルールでも良い。図１８に示す変換ルールは、「パターン」「例外適用」「非適用」の項目で管理されている。「パターン」とは、変換前のドットパターンである。「例外適用」は、変換後のドットパターンである。「非適用」は、変換前のドットパターン「パターン」のデータをジャギー除去処理（実施の形態１等で説明）のみを行って、変換ルールを適用しなかった場合の処理後データである。なお、図１８に示す変換ルールは、実施の形態２において用いても良い。
さらに、図１９の元データに対して、図１８に示す変換ルールを適用すれば、図２０に示すデータとなる。なお、図１９の元データに対して、図１８に示す変換ルールを適用しなければ図２１に示すデータとなる。
【産業上の利用可能性】  本発明にかかる印刷装置は、ビットマップデータのサイズを小さくしないでジャギーを除去することができるという効果を有し、ビットマップデータを印刷する印刷装置として有用である。
図面の参照符号の一覧表
１０１  入力受付部
１０２  ビットマップデータ格納部
１０３  ビットマップデータ取得部
１０４、１００４  ジャギー除去処理部
１０５  印刷部
１００１  ルール保持部
１００２、１７０３  変換部
１０４１  ジャギー検出手段
１０４２  ベクトルデータ構成手段
１７０１  データ受信部
１７０２  データ拡大部
１００４２  ベクトルデータ構成手段
【図１】
2005032826.tif 000003
【図２】
2005032826.tif 000004
【図３】
2005032826.tif 000005
【図４】
2005032826.tif 000006
【図５】
2005032826.tif 000007
【図６】
2005032826.tif 000008
【図７】
2005032826.tif 000009
【図８】
2005032826.tif 000010
【図９】
2005032826.tif 000011
【図１０】
2005032826.tif 000012
【図１１】
2005032826.tif 000013
【図１２】
2005032826.tif 000014
【図１３】
2005032826.tif 000015
【図１４】
2005032826.tif 000016
【図１５】
2005032826.tif 000017
【図１６】
2005032826.tif 000018
【図１７】
2005032826.tif 000019
【図１８】
2005032826.tif 000020
【図１９】
2005032826.tif 000021
【図２０】
2005032826.tif 000022
【図２１】
2005032826.tif 000023
【図２２】
2005032826.tif 000024
【図２３】
2005032826.tif 000025
【図２４】
2005032826.tif 000026
【図２５】
2005032826.tif 000027
【国際調査報告】
2005032826.tif 000028
2005032826.tif 000029