(57)【特許請求の範囲】
【請求項１】
ビットマップデータを変形して出力する出力装置であって、
ビットマップデータを格納しているビットマップデータ格納部と、
前記ビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化部と、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成部と、
前記構成部が構成した変形後のビットマップデータを出力する出力部を具備し、
前記構成部は、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換手段と、
前記第二の座標情報が示す位置の色を、前記ベクトル化部が取得した第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定手段と、
前記逆変換手段による第二の座標情報の取得、および前記色決定手段によるドットの色の決定を、出力するビットマップデータの全てのドットに対して行なうように制御する制御手段を具備し、
前記色決定手段は、
前記ベクトル化部が取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より上に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直上のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より下に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直下のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする出力装置。
【請求項２】
ビットマップデータを変形して出力する出力装置であって、
ビットマップデータを格納しているビットマップデータ格納部と、
前記ビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化部と、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成部と、
前記構成部が構成した変形後のビットマップデータを出力する出力部を具備し、
前記構成部は、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換手段と、
前記第二の座標情報が示す位置の色を、前記ベクトル化部が取得した第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定手段と、
前記逆変換手段による第二の座標情報の取得、および前記色決定手段によるドットの色の決定を、出力するビットマップデータの全てのドットに対して行なうように制御する制御手段を具備し、
前記色決定手段は、
前記ベクトル化部が取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より左に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直左のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より右に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直右のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする出力装置。
【請求項３】
ビットマップデータを格納しているビットマップデータ格納部と、
前記ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、
前記ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、
ビットマップデータのデータ変換のルールを示す情報であり、所定の領域のビットマップの情報と、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールを、１以上保持しているルール保持部と、
前記変換ルールに基づいて、前記ビットマップデータの一部を変換する変換部と、
前記変換部における変換結果、および前記ジャギー除去処理部の処理結果に基づいて構成されるデータを出力する出力部を具備する出力装置。
【請求項４】
前記所定の領域は、ｎ×ｍ（ｎおよびｍは自然数）の矩形領域である請求項３記載の出力装置。
【請求項５】
前記ｎおよびｍは３である請求項４記載の出力装置。
【請求項６】
ビットマップデータを変形して出力する出力方法であって、
格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成ステップと、
前記変形後のビットマップデータを出力する出力ステップを具備し、
前記構成ステップは、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換ステップと、
前記第二の座標情報が示す位置の色を、前記第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定ステップと、
前記第二の座標情報を取得するステップ、および前記決定したドットの色を第一の座標情報のドットの色とするステップを、出力するビットマップデータの全てのドットに対して行なうように制御する制御ステップを具備し、
前記色決定ステップは、
前記ベクトル化ステップで取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より上に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直上のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より下に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直下のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする出力方法。
【請求項７】
ビットマップデータを変形して出力する出力方法であって、
格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成ステップと、
前記変形後のビットマップデータを出力する出力ステップを具備し、
前記構成ステップは、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換ステップと、
前記第二の座標情報が示す位置の色を、前記第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定ステップと、
前記第二の座標情報を取得するステップ、および前記決定したドットの色を第一の座標情報のドットの色とするステップを、出力するビットマップデータの全てのドットに対して行なうように制御する制御ステップを具備し、
前記色決定ステップは、
前記ベクトル化ステップで取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より左に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直左のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より右に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直右のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする出力方法。
【請求項８】
格納されているビットマップデータを取得するビットマップデータ取得ステップと、
前記ビットマップデータのジャギーを除去するジャギー除去処理ステップと、
ビットマップデータのデータ変換のルールを示す情報であり、所定の領域のビットマップの情報と、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールに基づいて、前記ビットマップデータの一部を変換する変換ステップと、
前記変換するステップにおける変換結果、および前記ジャギーを除去するステップの処理結果に基づいて構成されるデータを出力する出力ステップを具備する出力方法。
【請求項９】
ビットマップデータを変形して出力する処理を行うプログラムであって、
コンピュータに、
格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成ステップと、
前記変形後のビットマップデータを出力する出力ステップを実行させるためのプログラムであって、
前記構成ステップは、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換ステップと、
前記第二の座標情報が示す位置の色を、前記第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定ステップと、
前記第二の座標情報を取得するステップ、および前記決定したドットの色を第一の座標情報のドットの色とするステップを、出力するビットマップデータの全てのドットに対して行なうように制御する制御ステップを具備し、
前記色決定ステップは、
前記ベクトル化ステップで取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より上に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直上のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より下に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直下のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とするプログラム。
【請求項１０】
ビットマップデータを変形して出力する処理を行うプログラムであって、
コンピュータに、
格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、
所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成ステップと、
前記変形後のビットマップデータを出力する出力ステップを実行させるためのプログラムであって、
前記構成ステップは、
処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換ステップと、
前記第二の座標情報が示す位置の色を、前記第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定ステップと、
前記第二の座標情報を取得するステップ、および前記決定したドットの色を第一の座標情報のドットの色とするステップを、出力するビットマップデータの全てのドットに対して行なうように制御する制御ステップを具備し、
前記色決定ステップは、
前記ベクトル化ステップで取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合であって、
前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より左に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直左のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より右に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直右のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とするプログラム。
【請求項１１】
コンピュータに、
格納されているビットマップデータを取得するビットマップデータ取得ステップと、
前記ビットマップデータのジャギーを除去するジャギー除去処理ステップと、
ビットマップデータのデータ変換のルールを示す情報であり、所定の領域のビットマップの情報と、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールに基づいて、前記ビットマップデータの一部を変換する変換ステップと、
前記変換ステップにおける変換結果、および前記ジャギーを除去処理ステップの処理結果に基づいて構成されるデータを出力する出力ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットマップデータを印刷する装置や、ビットマップデータをディスプレイに表示する装置等の出力装置に関するものである。
【背景技術】
【０００２】
従来の出力装置として、２値のビットマップデータから輪郭ベクトルを抽出し、この輪郭ベクトルに対し、拡大または縮小の処理を行った後、平滑化を行い、この輪郭ベクトルデータ内を塗りつぶすことでビットマップデータを得る画像処理装置が開示されている（例えば特許文献１参照）。【０００３】
このような出力装置においては、ビットマップデータから、輪郭ベクトルを抽出した後、この輪郭ベクトルに対して拡大や縮小を行ってビットマップデータを得ることにより、拡大や縮小を行った場合においても、ジャギーのないスムーズな輪郭を有するビットマップデータを得ることが可能である。
【特許文献１】特開平８−１１５４１６号公報（第１頁、第１図等）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記出力装置においては、輪郭ベクトルの取れない細かい模様等は、縮小後のビットマップデータにおいては再現されないという課題があった。【０００５】
また、上記出力装置においては、２値以外のデータについては、輪郭ベクトルが得られず、２値以外のビットマップデータには利用できないという課題があった。【０００６】
また、ビットマップデータが表わす画像の形状によっては、そのビットマップデータに適した輪郭ベクトルが得られない場合がある。この場合、輪郭ベクトル内を塗りつぶして得られるビットマップデータが、元のビットマップデータと、印象の異なるものとなってしまうという課題があった。
【課題を解決するための手段】
【０００７】
本発明に係る出力装置は、ビットマップデータを変形して出力する出力装置であって、ビットマップデータを格納しているビットマップデータ格納部と、前記ビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化部と、前記ビットマップデータ内の所定の位置に対して所定の位置関係にあるドットを、複数有する変形後のビットマップデータを構成する構成部と、前記構成部が構成した変形後のビットマップデータを出力する出力部を具備し、前記構成部は、前記第一のベクトルデータと、前記ビットマップデータのドットの色とに基づいて決定した前記所定の位置の色を、前記所定の位置関係にあるドットの色とする。
かかる構成により、変形後のビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【０００８】
また、本発明に係る出力装置は、ビットマップデータを変形して出力する出力装置であって、ビットマップデータを格納しているビットマップデータ格納部と、前記ビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化部と、前記ベクトル化部が取得した第一のベクトルデータを変形して第二のベクトルデータを取得するベクトルデータ変換部と、前記第二のベクトルデータと前記ビットマップデータに基づいて、変形後のビットマップデータを構成する構成部と、前記構成部が構成した変形後のビットマップデータを出力する出力部を具備する。
かかる構成により、変形後のビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【０００９】
また、本発明に係る出力装置は、ビットマップデータを変形して出力する出力装置であって、ビットマップデータを格納しているビットマップデータ格納部と、前記ビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化部と、所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成部と、前記構成部が構成した変形後のビットマップデータを出力する出力部を具備し、前記構成部は、処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換手段と、前記第二の座標情報が示す位置の色を、前記ベクトル化部が取得した第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定手段と、前記逆変換手段による第二の座標情報の取得、および前記色決定手段によるドットの色の決定を、出力するビットマップデータの全てのドットに対して行なうように制御する制御手段を具備する。
かかる構成により、変形後のビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【００１０】
また、前記出力装置において、前記色決定手段が、前記ベクトル化部が取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合において、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より上に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直上のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より下に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直下のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする。
かかる構成により、色を決定する処理を簡略化して、処理速度を速くすることができる。【００１１】
また、前記出力装置において、前記色決定手段が、前記ベクトル化部が取得した第一のベクトルデータが示す線が、前記第二の座標情報が示す位置を含むドットの中を通過する関係にある場合において、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より左に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直左のドットの色とし、前記第二の座標情報が示す位置が、前記第一ベクトルデータが示す線より右に位置する場合には、前記第二の座標情報が示す位置の色を、前記第二の座標情報が示す位置を含むドットの直右のドットの色に決定し、当該決定した色を前記第一の座標情報のドットの色とする。
かかる構成により、色を決定する処理を簡略化して、処理速度を速くすることができる。【００１２】
また、本発明に係る出力装置は、ビットマップデータを格納しているビットマップデータ格納部と、前記ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、前記ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、ビットマップデータのデータ変換のルールを示す情報であり、所定の領域のビットマップの情報と、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールを、１以上保持しているルール保持部と、前記変換ルールに基づいて、前記ビットマップデータの一部を変換する変換部と、前記変換部における変換結果、および前記ジャギー除去処理部の処理結果に基づいて構成されるデータを出力する出力部を具備する。
かかる構成により、変形後のビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。また、ビットマップデータの変換に用いる辞書を提供することとなり、対象となるビットマップデータの特性を生かすように、辞書の変換の内容をチューニングする機会を与えることができる。これにより、ビットマップデータにあわせたジャギー処理を行うことが可能となる。【００１３】
また、前記出力装置において、前記所定の領域を、ｎ×ｍ（ｎおよびｍは自然数）の矩形領域とした。
かかる構成により、ルール変換を行う処理を簡略化して、処理速度を速くすることができる。【００１４】
また、前記出力装置において、前記ｎおよびｍを３とした。
かかる構成により、変換による得られる効果を保ちつつ、変換ルールとして保持する情報を少なくすることができるため、出力装置が保持すべき記憶媒体の容量が少なくて良い。【００１５】
また、本発明に係る出力装置は、カラーのビットマップデータを格納しているビットマップデータ格納部と、前記ビットマップデータ格納部からビットマップデータを取得するビットマップデータ取得部と、前記ビットマップデータのジャギーを除去する処理を行うジャギー除去処理部と、前記ジャギー除去処理部の処理結果に基づいて構成されるデータを出力する出力部を具備する。
かかる構成により、変形後のビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【００１６】
また、前記出力装置において、前記ジャギー除去処理部が、カラーのビットマップデータのドットの明度に基づいてジャギーを検出するジャギー検出手段と、前記検出したジャギーを除去するジャギー除去手段を具備する。
かかる構成により、カラーのビットマップデータを変形して得られるビットマップデータとしてジャギーの少ない、滑らかなアウトラインを有するカラーのビットマップデータを得ることができる。【００１７】
また、前記出力装置において、前記ジャギー除去処理部が、ジャギー箇所として、前記ビットマップデータの階段状のすべての直線部を検出し、当該検出した階段状のすべての直線部に対して、前記直線部の中点と、前記直線部と隣接する直線部の中点で構成される直線を結びベクトルデータを構成するベクトルデータ構成手段をさらに具備する。
かかる構成により、さらに滑らかなアウトラインを有するカラーのビットマップデータを得ることができる。【００１８】
また、前記出力装置において、前記ベクトルデータ構成手段が構成したベクトルデータが示す直線がドットの中を通過する関係にある場合に、前記ドットの上部の色を、前記ドットの上のドットの色とし、および前記ドットの下部の色を、前記ドットの下のドットの色に決定する色決定手段をさらに具備する。
かかる構成により、色を決定する処理を簡略化して、処理速度を速くすることができる。【００１９】
また、前記出力装置において、前記ベクトルデータ構成手段が構成したベクトルデータが示す直線がドットの中を通過する関係にある場合に、前記ドットの左の色を、前記ドットの左のドットの色とし、および前記ドットの右の色を、前記ドットの右のドットの色に決定する色決定手段をさらに具備する。
かかる構成により、色を決定する処理を簡略化して、処理速度を速くすることができる。
【発明の効果】
【００２０】
この発明によれば、ジャギーを除去した品質のよいビットマップデータを出力することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、出力装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。【００２２】
（実施の形態１）
図１は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ジャギー除去処理部１０４、印刷部１０５を具備する。ジャギー除去処理部１０４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２を具備する。【００２３】
入力受付部１０１は、ビットマップデータを印刷する指示を受け付ける。この指示は、通常、印刷対象のビットマップデータを識別するデータ識別子を有する。入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。入力受付部１０１は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。【００２４】
ビットマップデータ格納部１０２は、ビットマップデータを格納している。ビットマップデータのデータ構造は問わない。ビットマップデータは、Microsoft（登録商標） Bitmap等のいかなるラスタデータでも良い。ビットマップデータ格納部１０２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。なお、本実施の形態におけるビットマップデータとは、色を持つ点の集まりにより構成される画像データであり、その各点をドットと呼ぶこととする。この各ドットは、そのドットの色を、色を示す色情報として保持している。この色情報は、白黒等の２値の情報であってもよいし、３値以上の多値の情報であってもよい。なお、本実施の形態においては、３値以上の多値の情報を含むドットにより構成される画像を、グレースケール画像も含めて、カラー画像とする。また、この色情報がどのように色を表現する情報であるかは問わない。例えば、ＲＧＢ情報であってもよく、ＣＭＹ情報であってもよい。また、輝度情報、彩度情報、色調情報を組み合わせたもの等であってもよい。この色情報のデータ構造は問わない。かかることは他の実施の形態においても同様である。【００２５】
ビットマップデータ取得部１０３は、入力受付部１０１が受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。ビットマップデータ取得部１０３は、通常、ＭＰＵやメモリ等から実現され得る。ビットマップデータ取得部１０３がビットマップデータを取得するための処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００２６】
ジャギー除去処理部１０４は、ビットマップデータ取得部１０３が取得したビットマップデータのジャギーを除去する処理を行う。ジャギー除去の方法は何でも良い。ジャギー除去の好適なアルゴリズムは後述する。ジャギー除去処理部１０４は、通常、ＭＰＵやメモリ等から実現され得る。ジャギー除去処理部１０４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００２７】
印刷部１０５は、ジャギー除去処理部１０４がジャギー除去したデータを印刷する。印刷部１０５は、例えば、プリンタとそのドライバーソフトを有する。なお、印刷部１０５は、外部のプリンタに対して印刷指示をするソフトウェアであると考えても良い。なお、印刷部１０５が、印刷時に、印刷対象のビットマップデータを、出力する画像サイズは変更せず、解像度だけが印刷部１０５の印刷可能な解像度となるように、補間して、データ量の増加したビットマップデータを作成するようにしてもよい。そして、これにより得られたデータ量の増加したビットマップデータを印刷するようにしてもよい。また、印刷部１０５は、ベクトルデータにより構成される画像データについては、演算を行なってビットマップデータに変換する処理、いわゆるラスタライズを行った後、この変換したデータを出力する。このようなベクトルデータをビットマップデータに変換する処理は、周知技術であるので、ここでは詳細な説明は省略する。【００２８】
ジャギー検出手段１０４１は、ビットマップデータ取得部１０３が取得したビットマップデータのジャギー箇所を検出する。ジャギー検出手段１０４１は、例えば、以下のような処理によりジャギー箇所を検出する。ジャギー検出手段１０４１は、ビットマップデータの画像の全ての位置において縦方向または横方向にジャギーをチェックする。ジャギー検出手段１０４１は、複数の直線を検知し、複数の直線の始点と終点を取得する。ジャギー検出手段１０４１は、ある直線と隣あう直線が所定の範囲内の段差を有している場合に、ジャギーの箇所であると判断する。なお、「所定の範囲」とは、どのような値の範囲であってもよく、一つの値であってもよい。例えば、１ドットであってもよいし、１ドットから数ドットまでの範囲でも、１ドットから数十ドットまでの範囲でも良い。ただし、ジャギーの検出が容易であることから考えると、「所定の範囲」を１ドットとして、１ドットの段差だけをジャギーの段差と判断することが好適である。【００２９】
ベクトルデータ構成手段１０４２は、ジャギー検出手段１０４１で検出したジャギー箇所の階段状のすべての直線部に対して、当該直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結びベクトルデータを構成する。ここで、ベクトルデータは、例えば、直線の始点と終点の座標値を有する。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２は、通常、ＭＰＵやメモリ等から実現され得る。「ほぼ中点」とは、完全な中点が望ましいが、ユーザから見て段差が解消される地点であれば良い。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００３０】
以下、本印刷装置の動作について図２のフローチャートを用いて説明する。
（ステップＳ２０１）入力受付部１０１は、ビットマップデータを印刷する指示を受け付けたか否かを判断する。印刷指示を受け付ければステップＳ２０２に行き、印刷指示を受け付けなければステップＳ２０１に戻る。【００３１】
（ステップＳ２０２）ビットマップデータ取得部１０３は、ステップＳ２０１で受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。【００３２】
（ステップＳ２０３）ジャギー除去処理部１０４は、ステップＳ２０２で取得したビットマップデータのジャギーを除去する処理を行う。ジャギー除去の処理の結果、ジャギー除去されたデータが出力される。ジャギー除去の処理の詳細については後述する。
（ステップＳ２０４）印刷部１０５は、ステップＳ２０３でジャギー除去したデータを印刷する。処理を終了する。【００３３】
以下、ステップＳ２０３のジャギー除去処理の動作について図３のフローチャートを用いて説明する。
（ステップＳ３０１）ジャギー検出手段１０４１は、ビットマップデータの輪郭を抽出する。輪郭抽出の結果、ビットマップデータの輪郭を構成する複数の直線の座標値（ｘ１，ｙ１，ｘ２，ｙ２）群が出力される。（ｘ１，ｙ１）はｉ番目の直線の始点の座標値である。（ｘ２，ｙ２）はｉ番目の直線の終点の座標値である。【００３４】
（ステップＳ３０２）ジャギー検出手段１０４１は、カウンタｉに１を代入する。
（ステップＳ３０３）ジャギー検出手段１０４１は、ステップＳ３０１で出力した複数の直線の座標値群のｉ番目の直線の座標値（ｘ１，ｙ１，ｘ２，ｙ２）を取得する。【００３５】
（ステップＳ３０４）ジャギー検出手段１０４１は、ステップＳ３０１で出力した複数の直線の座標値群に、ｉ＋１番目の直線の座標値が存在するか否かを判断する。ｉ＋１番目の直線の座標値が存在すればステップＳ３０５に行き、ｉ＋１番目の直線の座標値が存在しなければステップＳ３１３に飛ぶ。【００３６】
（ステップＳ３０５）ジャギー検出手段１０４１は、ｉ＋１番目の直線の座標値（ｘ３，ｙ３，ｘ４，ｙ４）を取得する。（ｘ３，ｙ３）はｉ＋１番目の直線の始点の座標値である。（ｘ４，ｙ４）はｉ＋１番目の直線の終点の座標値である。
（ステップＳ３０６）ジャギー検出手段１０４１は、（ｘ２，ｙ２）、（ｘ３，ｙ３）に基づいて２直線間の段差を算出する。段差は、２点（ｘ２，ｙ２）、（ｘ３，ｙ３）間の距離である。【００３７】
（ステップＳ３０７）ジャギー検出手段１０４１は、ステップＳ３０６で算出した段差が一定以上であるか否かを判断する。段差が一定以上であればステップＳ３０８に行き、段差が所定の範囲内でなければステップＳ３０３に戻る。「所定の範囲」とは、どのような値の範囲であってもよく、一つの値であってもよい。例えば、１ドットであってもよいし、１ドットから数ドットの間であっても良い。かかる判断が、ジャギーが存在するか否かの判断である。【００３８】
（ステップＳ３０８）ベクトルデータ構成手段１０４２は、ｉ番目の直線の中点（（ｘ１＋ｘ２）／２，（ｙ１＋ｙ２）／２）を算出する。
（ステップＳ３０９）ベクトルデータ構成手段１０４２は、ｉ＋１番目の直線の中点（（ｘ３＋ｘ４）／２，（ｙ３＋ｙ４）／２）を算出する。【００３９】
（ステップＳ３１０）ベクトルデータ構成手段１０４２は、ステップＳ３０８およびステップＳ３０９の算出結果を用いて、ベクトルデータを構成する。ベクトルデータは、（（ｘ１＋ｘ２）／２，（ｙ１＋ｙ２）／２，（ｘ３＋ｘ４）／２，（ｙ３＋ｙ４）／２）である。
（ステップＳ３１１）ベクトルデータ構成手段１０４２は、ステップＳ３１０で構成したベクトルデータを一時格納する。
（ステップＳ３１２）カウンタｉを１インクリメントする。ステップＳ３０３に戻る。【００４０】
（ステップＳ３１３）ベクトルデータ構成手段１０４２は、ステップＳ３０１で出力したビットマップデータの輪郭を構成する複数の直線の座標値群と、ステップＳ３１１で一時格納した１以上のベクトルデータから、輪郭を構成するベクトルデータを決定する。具体的には、ステップＳ３０１で出力したビットマップデータの輪郭を構成する複数の直線の座標値群のうち、ジャギーを構成しないと判断された直線の座標値データと、ステップＳ３１１で一時格納した１以上のベクトルデータをビットマップデータの輪郭を構成するベクトルデータとする。最終的なベクトルデータの具体例は後述する。かかる最終的なベクトルデータは、ジャギーのないなめらかな輪郭を構成するデータである。処理を終了する。【００４１】
また、ステップＳ２０３のジャギー除去処理の他の動作について説明する。つまり、ジャギー除去処理は、図３における処理に限らない。ここで説明するジャギー除去処理では、画像データの全ドットを調査する。具体的には、画像データのサイズを横（ｘ座標）ａドット、縦（ｙ座標）ｂドットとする。かかる場合、ｙ座標を０からｂ−１まで動かし、各ｙ座標の値の時に、x座標を０からａ−１までスキャンする。つまり、プログラム（例えば、C言語）で記載すれば、「ｆｏｒ（ｙ＝０；ｙ＜ｂ；ｙ＋＋）｛ｆｏｒ（ｘ＝０；ｘ＜ａ；ｘ＋＋）  ｛Ｓｃａｎ（）；｝｝」のような２重ループをもちいて、全ドットで関数Ｓｃａｎを実行する。関数Ｓｃａｎにおいては、「その位置がジャギーの段差であるかどうか」を調べる。Ｓｃａｎ実行後、段差であると確定したら、ベクトルデータ格納部にｘとｙに基づく情報を追加格納していく。ジャギーの段差であるかどうかの判断の基準は、ドットの明るさを使用する。ドットの明るさは、例えば、ドットの持つＲ（赤）Ｇ（緑）Ｂ（青）成分から「Ｂｌｉｇｈｔ  ＝  Ｂ＋Ｒ＊２＋Ｇ＊４」を計算することで得られる。例えば、判断対象となるドットと、そのドットに隣接するドットとの明るさの違いを判断する。これらのドット間の明るさの差が、あらかじめ設定した閾値よりも大きい場合、これらのドット間の明るさが大幅に異なると判断し、それ以外は明るさが類似すると判断することとする。そして、判断対象となるドットを含む、明るさの類似する複数の連続したドットが、これらに隣接する複数の連続したドットに対して、明るさの大幅に異なるものである場合、判断対象となるドットを含む連続したドットが、段差を有するか判断する。そして、この段差の高さが、あらかじめ設定した所定の範囲内のドット数である場合、この段差をジャギーの段差と判断する。所定のドット数は何ドットであってもよい。「所定の範囲」とは、どのような値の範囲であってもよく、一つの値であってもよい。例えば、１ドットであってもよいし、１ドットから数ドットまでの範囲でも、１ドットから数十ドットまでの範囲でも良い。ただし、ジャギーの検出が容易であることから考えると、「所定の範囲」を１ドットとして、１ドットの段差だけをジャギーの段差と判断することが好適である。また、この段差を挟んで連続するドットの数がジャギーの長さに相当する。例えば、段差の高さが１ドットである場合において、もし長さが１ドットのジャギーであれば、それは４５度の階段である。もし、１に対して大きい値（例えば１００ドット）であれば、それは緩やかな傾きのジャギーとなる。【００４２】
なお、ジャギーの段差であるかどうかの判断の基準は、ドットの明るさ以外の色情報、例えば、彩度や、色調の情報や、Ｒ，Ｇ，Ｂの情報等から判断するようにしてもよい。ただし、人間の目には、彩度や、色調等の違いよりも、明るさの違いを識別しやすい特性があることから、ドットの明るさにより、ジャギーを検出することが好適である。【００４３】
以下、本実施の形態における印刷装置の具体的な動作について説明する。図４は、印刷対象のビットマップデータである。図５は、図４のビットマップデータが有するジャギー（階段部分）を拡大した図である。本印刷装置は、ユーザから図４のビットマップデータの印刷指示を受け付けた、とする。かかる場合、本印刷装置は、図４のビットマップデータを読み出し、図５のジャギーの箇所を検出する。そして、図６に示すように所定の範囲内の段差がある二の直線の中点（ＡおよびＢ）を結ぶ直線を示す座標値を出力する。この直線の始点はＡであり、終点はＢである。かかる処理を、図４のビットマップデータのすべての輪郭に対して繰り返すと、図７に示すなめらかな直線群を有するデータが得られる。そして、本印刷装置は、図８のデータを印刷する。【００４４】
図８の画像を印刷するもとになるベクトルデータの例を図９に示す。図９のベクトルデータは、３７３本の線からなることを示す。また、図９のベクトルデータにおいて、各線は、始点、通過点、終点を有する。「始点」「通過点」「終点」は、それぞれｘ座標値、ｙ座標値を有する。図８の画像は、図９のベクトルデータを実行することにより出力され得る。このとき、ベクトルデータの示す線が通る部分については、この線が通過するドットが輪郭となるようにビットマップデータの補間が行われる。この結果、滑らかな輪郭のビットマップデータが得られる。ベクトルデータを輪郭のビットマップとして変換する処理については、公知技術であるので、詳細な説明は省略する。【００４５】
以上、本実施の形態によれば、ビットマップデータの大きさを変更せずに、ジャギーを除去したビットマップデータを印刷できる。【００４６】
なお、本実施の形態によれば、ビットマップデータの内容は問わないことは言うまでもない。ただし、ビットマップデータが流体解析（気体や液体の流れの解析）の結果を示すビットマップデータである場合、特に効果的である。流体の流れがスムーズに表現され、解析結果を見るユーザにとって、より分かり易くかつ、ユーザに、解析結果に対する疑義を生じさせない。【００４７】
また、実施の形態において、画像データは、二値画像でも、カラー画像でも良い。画像データがカラー画像である場合、直近の色を用いてジャッギーを除去することが好適である。具体的には、図２２から図２４に示す図を用いて説明する。図２２がジャッギーを有する変換前のカラーのビットマップデータである。かかるビットマップデータを上述したように、1ドットずつずらしてチェック（スキャン）し、ドットの明るさを取得する。連続するドットの明るさが縦または横方向で大幅に異なったまま連続していたら、ジャギーの段差であると判断する。例えば、図２２において、情報処理装置は、画像データの中央あたりにジャッギーが存在すると判断する。そして、図２３に示すように、直近の色（ここでは、下方または上方の色）を用いて段差を消去すべく、ドットの色を変更する。かかる処理を説明した図が図２４である。なお、図２２から図２４の小さな矩形領域は、複数のドットを有する。なお、かかることは、他の実施の形態においても同様である。【００４８】
また、本実施の形態においては、ベクトルデータ構成手段１０４２が、ジャギー検出手段１０４１で検出したジャギー箇所の階段状のすべての直線部に対して、当該直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結びベクトルデータを構成するようにしたが、ユーザから見て段差が解消される地点であれば、ジャギー箇所の直線部およびこれに隣接する直線部の、それぞれの中点以外の位置に基づいて構成した直線によりベクトルデータを構成してもよいことはいうまでもない。例えば、直線部およびこれに隣接する直線部の、それぞれの３分の１の位置を通過する直線を示すベクトルデータを構成するようにしてもよい。また、構成するベクトルデータは直線以外の線を示すベクトルデータであってもよい。例えば、直線部およびこれに隣接する直線部の、中点を通る垂線を接線とする曲線を示すベクトルデータを構成するようにしてもよい。ただし、処理を簡略化して、処理速度を向上させる観点から、ベクトルデータ構成手段１０４２が構成するベクトルデータは、ジャギー箇所の直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結んで構成したベクトルデータを構成することが好ましい。【００４９】
ここで、ベクトルデータは、例えば、直線の始点と終点の座標値を有する。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２は、通常、ＭＰＵやメモリ等から実現され得る。「ほぼ中点」とは、完全な中点が望ましいが、ユーザから見て段差が解消される地点であれば良い。ジャギー検出手段１０４１、ベクトルデータ構成手段１０４２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００５０】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における印刷装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、格納されているビットマップデータを取得するビットマップデータ取得ステップと、ビットマップデータのジャギーを除去する処理を行うジャギー除去処理ステップと、ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする印刷指示ステップを実行させるためのプログラムである。【００５１】
また、このプログラムは、コンピュータに、格納されているカラーのビットマップデータを取得するステップと、前記ビットマップデータのジャギーを除去するステップと、前記ジャギー除去処理部の処理結果に基づいて構成されるデータを出力するステップを実行させるためのプログラムである。【００５２】
（実施の形態２）
図１０は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ルール保持部１００１、変換部１００２、ジャギー除去処理部１００４、印刷部１０５を具備する。ジャギー除去処理部１００４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１００４２を具備する。【００５３】
ルール保持部１００１は、ビットマップデータのデータ変換のルールを示す変換ルールを保持している。ルール保持部１００１は、所定の領域のビットマップデータと、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールを、１以上保持している。変換ルールのデータ構造は問わない。変換ルールの具体例については、後述する。ルール保持部１００１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。【００５４】
変換部１００２は、ルール保持部１００１が保持している変換ルールに基づいて、ビットマップデータの一部を変換する。変換部１００２は、通常、ＭＰＵやメモリ等から実現され得る。変換部１００２のデータ変換の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００５５】
ジャギー除去処理部１００４は、変換部１００２が変換した箇所を除くジャギーの箇所について、当該ジャギーを除去する処理を行う。つまり、変換部１００２による変換が、ジャキー除去の処理に優先される。ジャギー除去処理部１００４は、通常、ＭＰＵやメモリ等から実現され得る。ジャギー除去処理部１００４の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００５６】
ベクトルデータ構成手段１００４２は、変換部１００２が変換した変換結果を優先させて、その他のジャギー検出手段１０４１で検出したジャギー箇所の階段状のすべての直線部に対して、当該直線部のほぼ中点と、当該直線部と隣接する直線部のほぼ中点で構成される直線を結びベクトルデータを構成する。【００５７】
以下、本印刷装置の動作について図１１のフローチャートを用いて説明する。
（ステップＳ１１０１）入力受付部１０１は、ビットマップデータを印刷する指示を受け付けたか否かを判断する。印刷指示を受け付ければステップＳ１１０２に行き、印刷指示を受け付けなければステップＳ１１０１に戻る。【００５８】
（ステップＳ１１０２）ビットマップデータ取得部１０３は、ステップＳ１１０１で受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。【００５９】
（ステップＳ１１０３）変換部１００２は、ルール保持部１００１が保持している変換ルールに基づいて、ステップＳ１１０２で取得したビットマップデータの一部を変換する。この変換処理の詳細については後述する。【００６０】
（ステップＳ１１０４）ジャギー除去処理部１０４は、ステップＳ１１０３で変換処理を行ったビットマップデータのジャギーを除去する処理を行う。ジャギー除去の処理の結果、ジャギー除去されたデータが出力される。ジャギー除去の処理の詳細については後述する。
（ステップＳ１１０５）印刷部１０５は、ステップＳ１１０４でジャギー除去したデータを印刷する。処理を終了する。【００６１】
以下、ステップＳ１１０３の変換処理の動作について図１２のフローチャートを用いて説明する。
（ステップＳ１２０１）変換部１００２は、カウンタｉに１を代入する。
（ステップＳ１２０２）変換部１００２は、ビットマープデータからｉ番目のマトリクスを取得する。マトリクスとは、ｎ×ｍ（ｎ，ｍは整数）のドットパターンである。なお、マトリクスは、３×３のドットパターンであることが好適である。保持するドットパターンのデータ量が少なく、かつ、変換ルールを適用して意義がある場合が多いからである。なお、マトリクスの代わりに矩形ではないドットパターン、例えばクロス形状のドットパターンや、隣接していない複数のドットにより構成されるドットパターン等を用いるようにしてもよいが、処理を簡単にすることで、高速な処理を実現できるという観点からは、マトリクスを用いることが好適である。通常、ｉが１の時のマトリクスは、ビットマープデータの左上のドットからｎ×ｍのドットパターンを取得する。また、例えば、ｉが２の時は、ｉが１の時のマトリクスから１ドット右にずらしてｎ×ｍのドットパターンを取得する。【００６２】
（ステップＳ１２０３）変換部１００２は、ステップＳ１２０２でｉ番目のマトリクスが取得できたか否かを判断する。ｉ番目のマトリクスが取得できればステップＳ１２０４に行き、ｉ番目のマトリクスが取得できなければ処理を終了する。
（ステップＳ１２０４）変換部１００２は、カウンタｊに１を代入する。【００６３】
（ステップＳ１２０５）変換部１００２は、ルール保持部１００１からｊ番目の変換前マトリクスを取得する。なお、ここでは、ルール保持部１００１のルールは、変換前マトリクスと変換後マトリクスの対応表である。ルールの具体例は後述する。【００６４】
（ステップＳ１２０６）変換部１００２は、ｊ番目の変換前マトリクスが存在するか否か（つまり、ｊ番目のルールが存在するか否か）を判断する。ｊ番目の変換前マトリクスが存在すればステップＳ１２０７に行き、ｊ番目の変換前マトリクスが存在しなければステップＳ１２０２に戻る。【００６５】
（ステップＳ１２０７）変換部１００２は、ステップＳ１２０２で取得したｉ番目のマトリクスと、ステップＳ１２０５で取得したｊ番目の変換前マトリクスが一致するか否かを判断する。一致する場合はステップＳ１２０８に行き、一致しない場合はステップＳ１２１２に飛ぶ。【００６６】
（ステップＳ１２０８）変換部１００２は、ルール保持部１００１からｊ番目の変換後マトリクスを取得する。変換後マトリクスは、変換前マトリクスの変換後の画像を構成するベクトルデータである。本実施の形態においては、変換後マトリクスは、変換後の画像の輪郭を示すベクトルデータ、およびその輪郭内の領域の色を定義する色情報を有している。
（ステップＳ１２０９）変換部１００２は、ｉ番目のマトリクスをｊ番目の変換後マトリクスに書き換える。【００６７】
（ステップＳ１２１０）変換部１００２は、ステップＳ１２０９において書き換えたビットマップデータの箇所を一時登録する。ビットマップデータの箇所は、例えば、ビットマップデータの全体の中での相対的な位置座標を示すデータで特定する。
（ステップＳ１２１１）カウンタｉを１インクリメントする。ステップＳ１２０２に戻る。
（ステップＳ１２１２）カウンタｊを１インクリメントする。ステップＳ１２０５に戻る。【００６８】
以下、ステップＳ１１０４のジャギー除去処理の動作について説明する。ジャギー除去処理の動作は、基本的には、実施の形態１で説明したジャギー除去処理の動作と同様である。ただし、ステップＳ１１０４のジャギー除去処理において、ステップＳ１２１０で一時登録されたビットマップデータの箇所に関して、ジャギー除去処理は行わない。変換ルールが適用された箇所であるからである。【００６９】
以下、本実施の形態における印刷装置の具体的な動作について説明する。図１３は、ルール保持部１００１が保持している変換ルール管理表である。変換ルール管理表は、「ＩＤ」「変換前マトリクス」「変換後マトリクス」を有するレコードを１以上保持している。「ＩＤ」はレコードを識別する情報であり、表管理上の要請のために存在する。変換ルール管理表は、ビットマップデータの輪郭の中に属性値「変換前マトリクス」のマトリクスに合致するパターンがある場合に、当該パターンを属性値「変換後マトリクス」が示すマトリクスに書き換える、というルールを保持していることとなる。【００７０】
かかる場合、印刷装置は、例えば、図１４の「ｅ」を示すジャギーを有するビットマップデータを変換する場合に、図１５に示すように、図１３の変換ルール管理表の「ＩＤ＝１」のルールが適用される。そして、連続的に変換ルールを適用した後、実施の形態１で述べたジャギー除去処理を行えば、ユーザに違和感がなく、丸みを帯びた「ｅ」を示すビットマップデータが印刷される。【００７１】
ベクトルデータにより構成される画像は、出力の都度、演算を行なってビットマップデータに変更されて出力されるため、画像を拡大・縮小したり変形したりしても、輪郭の処理などがその都度行なわれ、出力の解像度に見合った画質が維持される。この結果、滑らかな輪郭の画像が出力されることとなる。【００７２】
なお、本実施の形態において、変換処理を行わず、ジャギー除去処理のみを行えば（つまり、実施の形態１における処理のみを適用すれば）、図１４の「ｅ」を示すビットマップデータは、図１６のようになる。図１６の「ｅ」を示すビットマップデータは、ユーザにとって極めて不自然である。【００７３】
以上、本実施の形態によれば、ビットマップデータの大きさを変更せずに、ジャギーを除去した画像が印刷できる。また、所定のルールを適用することにより、チューニングが行え、ユーザの感覚に合致した極めて自然なビットマップデータが印刷できる。【００７４】
なお、本実施の形態によれば、変換ルールは、図１３に示すルールであったが、他のルールでも良い。ただし、変換ルールは、変換前の３×３のドットパターンと、変換後の３×３のドットパターンの画像を構成するベクトルデータを有し、変換ルールは、変換前のドットパターンに合致するドットパターンを前記変換後のベクトルデータに変換することを示すルールであることは好ましい。【００７５】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における印刷装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、格納されているビットマップデータを取得するビットマップデータ取得ステップと、格納している変換ルールに基づいて、ビットマップデータの一部を変換する変換ステップと、変換ステップにおける変換結果のビットマップデータのジャギーを除去する処理を行うジャギー除去処理ステップと、ジャギー除去処理ステップにおける処理結果に基づいて構成されるデータを印刷する指示をする印刷指示ステップを実行させるためのプログラムである。【００７６】
また、このプログラムは、コンピュータに、格納されているビットマップデータを取得するステップと、前記ビットマップデータのジャギーを除去するステップと、ビットマップデータのデータ変換のルールを示す情報であり、所定の領域のビットマップの情報と、当該所定の領域の変換後の画像を構成するベクトルデータを示す情報を対で有する変換ルールに基づいて、前記ビットマップデータの一部を変換するステップと、前記変換するステップにおける変換結果、および前記ジャギーを除去するステップの処理結果に基づいて構成されるデータを出力するステップを実行させるためのプログラムである。【００７７】
（実施の形態３）
本実施の形態において、携帯電話や携帯端末等のデータを携帯電話や携帯端末等から受信して、印刷する印刷装置について説明する。図１７は、本発明の実施の形態における印刷装置の構成を示すブロック図である。本印刷装置は、データ受信部１７０１、データ拡大部１７０２、ルール保持部１００１、変換部１７０３、ジャギー除去処理部１００４、印刷部１０５を具備する。ジャギー除去処理部１００４は、ジャギー検出手段１０４１、ベクトルデータ構成手段１００４２を具備する。【００７８】
データ受信部１７０１は、携帯電話や携帯端末等が保持しているデータを携帯電話や携帯端末等から受信する。受信手段は、赤外線などの無線通信手段が好適であるが、有線の通信手段でも良い。【００７９】
データ拡大部１７０２は、データ受信部１７０１が受信したデータを拡大する。拡大するサイズは、所定のサイズであり、例えば、Ａ４サイズである。画像データを拡大する技術は公知技術であるので、詳細な説明は省略する。データ拡大部１７０２は、通常、ＭＰＵやメモリ等から実現され得る。データ拡大部１７０２の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。【００８０】
変換部１７０３は、ルール保持部１００１の変換ルールに基づいて、データ拡大部１７０２が拡大したデータの一部を変換する。変換部１７０３のデータ変換方法は、変換部１００２と同様であるので、詳細な説明は省略する。なお、データ拡大部１７０２のデータ拡大処理により、ジャギーが増加する。そして、変換部１７０３、ジャギー除去処理部１００４の処理により、なめらかな画像が得られる。【００８１】
以下、本印刷装置の動作について説明する。本印刷装置は、例えば、カメラ付き携帯電話で撮影した画像を受信し、印刷する。印刷の際に、上述した変換処理、ジャギー除去処理を行う。【００８２】
まず、ユーザは、カメラ付き携帯電話で画像を撮影する。そして、撮影した画像を印刷装置に送信する。次に、印刷装置は、撮影画像を受信する。次に、印刷装置は、予め決められたサイズ、例えば、Ａ４サイズに画像を拡大する。次に、印刷装置は、上述した変換ルールに基づいて、拡大したデータの一部を変換する。そして、印刷装置は、上述したジャギー除去処理を行う。以上の処理により、ユーザは、カメラ付き携帯電話で撮影した画像について、拡大され、かつ、輪郭がかめらかになった高品質な画像を取得できる。【００８３】
以上、本実施の形態によれば、携帯電話等の端末から受信したビットマップデータを拡大し、印刷できる。その際、極めてなめらかな、自然な画像データを得ることができる。具体的には、例えば、携帯電話等が保持しているデータ（例えば、カメラ付き携帯電話で撮影したデータ）は、解像度が小さく、通常の方法で印刷すればジャギーが目立つが、本実施の形態における発明によれば、非常に美しい画像を印刷できる。【００８４】
なお、本実施の形態において変換部、ルール保持部は必須ではない。つまり、本実施の形態における印刷装置は、携帯電話等から受信したデータを拡大し、ジャギー除去処理を行い、印刷するだけでも良い。また、本実施の形態における印刷装置は、携帯電話等から受信したデータを拡大もせずに、ジャギー除去処理を行い、印刷するだけでも良い。さらに、本実施の形態における印刷装置は、データ拡大部も必須ではない。つまり、本実施の形態における印刷装置は、携帯電話等から受信したデータを変換ルールに基づいて変換し、ジャギー除去処理を行い、印刷するだけでも良い。【００８５】
また、本実施の形態における変換ルールは、例えば、図１８に示す変換ルールでも良い。図１８に示す変換ルールは、「パターン」「例外適用」「非適用」の項目で管理されている。「パターン」とは、変換前のドットパターンである。「例外適用」は、変換後のドットパターンである。「非適用」は、変換前のドットパターン「パターン」のデータをジャギー除去処理（実施の形態１等で説明）のみを行って、変換ルールを適用しなかった場合の処理後データである。なお、図１８に示す変換ルールは、実施の形態２において用いても良い。【００８６】
さらに、図１９の元データに対して、図１８に示す変換ルールを適用すれば、図２０に示すデータとなる。なお、図１９の元データに対して、図１８に示す変換ルールを適用しなければ図２１に示すデータとなる。【００８７】
なお、前記実施の形態１から３においては、印刷装置を用いて説明を行ったが、本発明は、表示装置や、他の印刷装置や表示装置に出力用のデータを送信する送信装置等の出力装置においても適用可能なものである。【００８８】
（実施の形態４）
図２６は、本発明の実施の形態４に係る出力装置の構成を示すブロック図である。本実施の形態４に係る出力装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ベクトル化部２６２、構成部２６３、および出力部２６４を備えている。
ベクトル化部２６２は、前記実施の形態１において示したジャギー検出手段１０４１とベクトルデータ構成手段１０４２とを備えている。
構成部２６３は、逆変換手段２６３１、色決定手段２６３２、および制御手段２６３３とを備えている。【００８９】
入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３の構成については、前記実施の形態１と同様であるので説明は省略する。【００９０】
なお、例えば、ビットマップデータ格納部１０２内のビットマップデータを参照して処理を進める場合等のように、ビットマップデータをビットマップ格納部１０２から取得する必要がない場合等には、ビットマップデータ取得部１０３を省略してもよい。また、ビットマップデータ取得部１０３を省略して、ベクトル化部２６２等が必要に応じてビットマップデータをビットマップデータ格納部１０２から取得するようにしてもよい。また、ビットマップデータ格納部１０２にビットマップデータが格納された場合に処理を開始するようにした場合等のように、この出力装置による処理の開始を指示するための入力が不要な場合などには、入力受付部１０１を省略するようにしてもよい。【００９１】
ベクトル化部２６２は、ビットマップデータ取得部１０３が取得したビットマップデータの少なくとも一部から第一のベクトルデータを取得する。ベクトル化部２６２は、例えば、ビットマップデータ取得部１０３が取得したビットマップデータのジャギーを除去するために用いられるベクトルデータを取得する。また、ビットマップデータの輪郭を構成するベクトルデータを、ビットマップデータから取得してもよい。このベクトルデータをどのように取得するかは問わない。ここでは例として、前記実施の形態１において説明したベクトルデータ構成手段と同様に、ジャギー検出手段１０４１とベクトルデータ構成手段１０４２とを用いて、前記実施の形態１と同様の処理によりベクトルデータを取得する場合について説明するが、他の手段や処理を用いて行うようにしてもよい。例えば、前記実施の形態２と同様の処理によりベクトルデータを取得するようにしてもよい。【００９２】
構成部２６３は、所定の演算の逆関数と、ビットマップデータ取得部１０３が取得したビットマップデータと、第一のベクトルデータとに基づいて変形後のビットマップデータを構成する。ここで、所定の演算とは、ビットマップデータ取得部１０３が取得したビットマップデータに対して、所定の変形を行うための演算である。変形前のビットマップデータに対して所定の演算を行うことにより、変形後に得られるビットマップデータが得られる。変換前のビットマップデータ内の座標情報を、この所定の演算の関数に渡すと、変換後のビットマップデータ内の座標情報が得られる。この関数を変更することにより、ビットマップデータの変形のしかたも変化する。変形前のビットマップデータの座標情報ｘ，ｙが、この関数によって、変形後のビットマップデータの座標情報Ｘ，Ｙに変換されるとすると、関数ｆは（Ｘ，Ｙ）＝ｆ（ｘ，ｙ）で表わされる。なお、座標情報は、ビットマップデータ内の位置を指定するための情報であり、例えば２次元の座標値等である。座標情報のデータ構造は問わない。このような所定の演算の関数に基づいて変形前のビットマップデータの座標情報を変換して、変形後のビットマップデータの座標情報を得ることで、変形後のビットマップデータを構成することが可能である。しかし、本実施の形態においては、所定の演算の関数の逆関数に基づいて変形後のビットマップデータを構成する。構成部２６３は、通常、ＭＰＵとメモリとの組み合わせ等により実現され得る。構成部２６３の処理手順は、通常、ソフトウエアで実現され、当該ソフトウエアはＲＯＭ等の記録媒体に記録されている。ただし、専用回路等のハードウエアで実現してもよい。【００９３】
逆変換手段２６３１は、処理対象のドットの座標情報である第一の座標情報を、前述した所定の演算の関数ｆの逆関数ｆ−１により変換して第二の座標情報を取得する。具体的には、処理対象のドットとは、構成部２６３による処理の対象となるドットであり、構成部２６３が構成する変形後のビットマップデータの各ドットのことである。また、第一の座標情報とは、処理対象のドットを示すための座標情報である。また、第二の座標情報は、第一の座標情報を、逆関数ｆ−１により変換することにより得られる座標情報である。この第二の座標情報は、ビットマップデータ取得部１０３が取得した変形前のビットマップデータ内の位置を指定するための座標情報である。第一、第二の座標情報は、例えば２次元の座標値である。第一、第二の座標情報のデータ構造は問わない。この所定の演算の逆関数による変換とは、例えば、座標値の変換等である。逆変換手段２６３１は、通常、ＭＰＵとメモリとの組み合わせ等により実現され得る。逆変換手段２６３１の処理手順は、通常、ソフトウエアで実現され、当該ソフトウエアはＲＯＭ等の記録媒体に記録されている。ただし、専用回路等のハードウエアで実現してもよい。【００９４】
色決定手段２６３２は、第二の座標情報が示す位置の色を、ベクトル化部２６２が取得した第一のベクトルデータ、およびビットマップデータのドットの色に基づいて決定し、この決定したドットの色を第一の座標情報の示すドットの色とする。以下、第二の座標情報が示す位置の色の決定の処理について具体的に説明する。なお、第二の座標情報が示す位置を含むドットを、第二の座標情報が示すドット、と称す。また、第二の座標情報が示す位置の色のことを、第二の座標情報の色、と称す。また、第一のベクトルデータの示す線が、第二の座標情報が示す位置を含むドットの中を通過する関係にない場合を、第一のベクトルデータと第二の座標情報が示すドットが非通過の関係にあることとする。また、第一のベクトルデータの示す線が、第二の座標情報が示す位置を含むドットの中を通過する関係にある場合を、第一のベクトルデータと第二の座標情報が示すドットが通過の関係にあることとする。【００９５】
色決定手段２６３２は、第一のベクトルデータと第二の座標情報が示すドットが非通過の関係にある場合、第二の座標情報が示すドットの色を、この第二の座標情報の変換元となる第一の座標情報を含むドットの色として取得する。【００９６】
一方、色決定手段２６３２は、第一のベクトルデータと第二の座標情報が示すドットが通過の関係にある場合、第二の座標情報が示す座標位置と、第一のベクトルデータの位置と、第二の座標情報が示すドットの周辺のドットの色とに基づいて、第二の座標情報の色を決定する。または、第二の座標情報が示す座標位置と、第一のベクトルデータの位置と、第二の座標情報が示すドットおよびその周辺のドットの色とに基づいて、第二の座標情報が示す位置の色を決定する。【００９７】
この色を決定する処理はどのような処理であってもよい。例えば、第二の座標情報が示す位置が、第一のベクトルデータの示す線より上に位置する場合には、第二の座標情報が示すドットの上に隣接するするドット、すなわち直上のドット、の色を、第二の座標情報の色に決定するようにする。そして、第二の座標情報が示す位置が、第一のベクトルデータの示す線より下に位置する場合には、前記第二の座標情報が示すドットの下に隣接するドット、すなわち直下のドット、の色を、前記第二の座標情報の色に決定する。第一のベクトルデータの示す線上に第二の座標情報が示す位置がある場合、第二の座標情報の色は、第二の座標情報が示すドットの上に隣接するドットの色に決定するようにしてもよいし、第二の座標情報が示すドットの下に隣接するドットの色に決定するようにしてもよい。また、第二の座標情報が示すドットの周辺のドットの色の状況等から、第二の座標情報の色をどのように決定するか判定するようにしてもよい。【００９８】
または、第二の座標情報が示す位置が、第一のベクトルデータの示す線より左に位置する場合には、第二の座標情報が示すドットの左に隣接するドット、すなわち直左のドット、の色を、第二の座標情報の色とする。そして、第二の座標情報が示す位置が、第一のベクトルデータより右に位置する場合には、第二の座標情報が示すドットの右に隣接するドット、すなわち直右のドット、の色を、第二の座標情報の色に決定するようにしてもよい。第一のベクトルデータの示す線上に第二の座標情報が示す位置がある場合、第二の座標情報の色は、第二の座標情報が示すドットの右に隣接するドットの色に決定するようにしてもよいし、第二の座標情報が示すドットの左に隣接するドットの色に決定するようにしてもよい。また、第二の座標情報が示すドットの周辺のドットの色の状況等から、第二の座標情報の色をどのように決定するか判定するようにしてもよい。【００９９】
あるいは、第二の座標情報が示す位置が、第一のベクトルデータより上に位置する場合には、第二の座標情報が示すドットの上に隣接するドットの色とその両隣のドットの色とを平均化して得られる色を、第二の座標情報の色としてもよい。第二の座標情報が示す位置が、第一のベクトルデータより下に位置する場合には、第二の座標情報が示すドットの下に隣接するドットの色とその両隣のドットの色とを平均化して得られる色を、第二の座標情報の色としてもよい。ただし、第二の座標情報の色は、第二の座標情報が示すドットに隣接する１つのドットの色のみから決定することが、鮮明な画像を得るためには好適である。【０１００】
色決定手段２６３２は、このようにして決定された第二の座標情報の色を、この第二の座標情報の変換元となる第一の座標情報が特定するドットの色として取得する。色決定手段２６３２は、取得したドットの色を、例えば、メモリ等に一時的に格納する。色決定手段２６３２は、通常、ＭＰＵとメモリとの組み合わせ等により実現され得る。色決定手段２６３２の処理手順は、通常、ソフトウエアで実現され、当該ソフトウエアはＲＯＭ等の記録媒体に記録されている。ただし、専用回路等のハードウエアで実現してもよい。【０１０１】
制御手段２６３３は、逆変換手段２６３１による第二の座標情報の取得、および色決定手段２６３３による第一の座標情報が示すドットの色の決定が、構成部２６３が構成するビットマップデータの全てのドットに対して行なわれるように制御する。制御手段２６３３が、構成部２６３の構成する変換後のビットマップデータのどの位置のドットから逆変換手段２６３１および色決定手段２６３３に処理を開始させるかは問わない。制御手段２６３３は、通常、ＭＰＵとメモリとの組み合わせ等により実現され得る。制御手段２６３３の処理手順は、通常、ソフトウエアで実現され、当該ソフトウエアはＲＯＭ等の記録媒体に記録されている。ただし、専用回路等のハードウエアで実現してもよい。【０１０２】
出力部２６４は、構成部２６３が構成した変形後のビットマップデータを出力する。出力とは、ディスプレイへの表示、プリンタによる印刷、外部の装置への送信等を含む概念である。出力部２６４は、ディスプレイやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。なお、色決定手段２６３２が取得したドットの色を、色決定手段２６３２がメモリ等に一時的に格納する代わりに、出力部２６４がメモリ等に一時的に格納するようにしてもよい。出力部２６４は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。【０１０３】
以下、本出力装置の動作について、図２７のフローチャートを用いて説明する。
（ステップＳ２７０１）入力受付部１０１は、ビットマップデータを出力する指示を受け付けたかを判断する。出力する指示を受け付ければステップＳ２７０２へ進み、受け付けなければ、ステップＳ２７０１に戻る。【０１０４】
（ステップＳ２７０２）ビットマップデータ取得部１０３は、ステップＳ２７０１で受け付けた指示に基づいて、ビットマップデータ格納部１０２からビットマップデータを読み出す。【０１０５】
（ステップＳ２７０３）ベクトル化部２６２は、ステップ２７０２で取得したビットマップデータをベクトル化して第一のベクトルデータを取得する。このベクトル化処理は、ここでは、前記実施の形態１において図３のフローチャートを用いて説明した、ベクトルデータを作成する処理と同様である。ベクトル化処理の説明は省略する。【０１０６】
（ステップＳ２７０４）構成部２６３は、ステップ２７０２で取得したビットマップデータと、ステップＳ２７０３により取得した第一のベクトルデータと、前述した所定の演算の逆関数とに基づいて変形後のビットマップデータを構成する。この変形後のビットマップデータを構成する処理の詳細については後述する。【０１０７】
（ステップＳ２７０５）出力部２６４は、構成部２６３の色決定手段２６３２から、構成部２６３が構成した変形後のビットマップデータを取得し、このビットマップデータを出力する。【０１０８】
以下、ステップＳ２７０４の構成部２６３の変形後のデータを構成する処理について、図２８のフローチャートを用いて説明する。
（ステップＳ２８０１）制御手段２６３３は、カウンタｉに１を代入する。
（ステップＳ２８０２）逆変換手段２６３１は、構成部２６３から変形後のビットマップデータとして出力されることとなるビットマップデータのｉ番目のドットの座標情報であるｉ番目の第一の座標情報を取得する。【０１０９】
（ステップＳ２８０３）逆変換手段２６３１は、ステップＳ２８０２で取得したｉ番目の第一の座標情報を、所定の演算の逆関数により変換して、ｉ番目の第二の座標情報を取得する。【０１１０】
（ステップＳ２８０４）色決定手段２６３２は、ステップＳ２７０２でビットマップデータ取得部１０３が読み出したビットマップデータにおいて、ベクトル化部２６２が取得した第一のベクトルデータと、ステップＳ２８０３で取得したｉ番目の第二の座標情報が示すドットとが、通過の関係にあるか否か判定する。通過の関係にある場合、ステップＳ２８０５へ進み、通過の関係にない場合、ステップＳ２８０７に進む。【０１１１】
（ステップＳ２８０５）色決定手段２６３２は、ステップＳ２８０３により取得したｉ番目の第二の座標情報が示すドット内における、第一のベクトルデータが示す線と、ｉ番目の第二の座標情報が示す位置との位置関係を取得する。【０１１２】
（ステップＳ２８０６）色決定手段２６３２は、ステップＳ２８０５により取得した位置関係に基づいて、ｉ番目の第二の座標情報が示すドットの周辺、またはｉ番目の第二の座標情報が示すドットおよびその周辺のドットの色から、ｉ番目の第二の座標情報が示す位置の色を決定する。
（ステップＳ２８０７）色決定手段２６３２は、ｉ番目の第二の座標情報が示すドットの色を、ｉ番目の第二の座標情報の色に決定する。【０１１３】
（ステップＳ２８０８）色決定手段２６３２は、ステップＳ２８０６またはステップＳ２８０７で決定された色を、ｉ番目のドットの色として取得する。そして、その色をメモリ等に格納する。【０１１４】
（ステップＳ２８０９）制御手段２６３３は、構成部２６３が構成する変形後のビットマップデータにｉ＋１番目のドットが存在するか否かを判断する。存在する場合、ステップＳ２８１０に進み、存在しない場合、処理を終了する。
（ステップＳ２８１０）制御手段２６３３は、カウンタｉを１インクリメントして、ステップＳ２８０２へ戻る。【０１１５】
次に具体例について説明する。ここでは、地図の画像データであるビットマップデータを、変形して配置することで、鳥瞰図を作成し、これをディスプレイ上に出力する場合について説明する。
図２９は、本実施の形態４に係る具体例を説明するための、ビットマップデータを示す図であり、このビットマップデータは、地図の画像データである。【０１１６】
図３０は、本実施の形態４に係る具体例を説明するための、ディスプレイに表示するための鳥瞰図のビットマップデータを示す図である。このビットマップデータは、図２９に示した地図の画像データを基に作成されている。【０１１７】
図２９に示すようなビットマップデータを変形して、図３０に示すような鳥瞰図を作成する場合、図２９のビットマップデータにおける座標情報ｘ，ｙを、図３０のディスプレイ上における座標情報Ｘ，Ｙに変換する演算を行われる。この変換における関数を（Ｘ，Ｙ）＝ｆ（ｘ，ｙ）とすると、変形前のビットマップデータの座標情報に対して、この関数ｆによる変換を行い、変換により得られた座標情報の示す位置の色を取得することにより、変形後に得られるビットマップデータが得られることとなる。【０１１８】
しかし、本実施の形態においては、ビットマップデータに対して変形を行うための所定の演算ｆを行う代わりに、構成部２６３が構成する変形後のビットマップデータのドットの位置を表す座標情報、すなわち第一の座標情報（Ｘ，Ｙ）について、前述した所定の演算の関数の逆関数である（ｘ，ｙ）＝ｆ−１（Ｘ，Ｙ）を用いた演算を行い、変形前のビットマップデータにおける座標情報、すなわち第二の座標情報（ｘ，ｙ）を得る。そして、この第二の座標情報（ｘ，ｙ）が示す位置の色を、第一の座標情報（Ｘ，Ｙ）を含むドットの色として取得する。例えば、図３０の点Ａの第一の座標情報（Ｘ１，Ｙ１）を逆関数ｆ−１により変換して、図２９に示したビットマップデータ上の点ａの第二の座標情報（ｘ１，ｙ１）を得て、点ａの示す位置の色を、変形後のビットマップデータの点Ａ（Ｘ１，Ｙ１）を含むドットの色とする。これを、図３０のビットマップデータの全ドットに対して繰り返すことで、変形後のビットマップデータを得ることができる。このとき、ビットマップデータには変形が行われるため、第一の座標情報を、ドットを単位とした整数値で表示したとしても、この座標を逆関数により変換して得られる第二の座標情報は、必ずしも整数値とはならない。【０１１９】
図３１は、第一の座標情報を逆関数により変換して得られた第二の座標情報を、変形前のビットマップデータ上に示した模式図である。図３１に示すように、第二の座標情報ｂが示すドットを、第一のベクトルデータが示す線３１０が通過していないため、第二の座標情報ｂの色は、この第二の座標情報ｂが示すドット３１ｂの色と同じ色に決定される。そして、この色を、この第二の座標情報ｂの変換元である第一の座標情報を含むドットの色として、色決定手段２６３２がメモリ等に格納する。【０１２０】
第二の座標情報ｃ，ｄが示す位置を含むドットには、第一のベクトルデータが示す線３１０が通過しているため、第二の座標情報ｃ，ｄの色は、第一のベクトルデータが示す線３１０と、第二の座標情報ｃ，ｄとの位置関係、およびこの第二の座標情報ｃ，ｄが示すドット３１ｃの上下に隣接するドットの色とから決定される。第二の座標情報ｃが示す位置は、第一のベクトルデータが示す線よりも上に位置するため、第二の座標情報ｃの色は、第二の座標情報ｃが示すドット３１ｃの上に隣接するドット３１ｅの色に決定される。また、第二の座標情報ｄが示す位置は、第一のベクトルデータが示す線３１０よりも下に位置するため、第二の座標情報ｄの色は、第二の座標情報ｄが示すドット３１ｃの下に隣接するドット３１ｆの色に決定される。そして、これらの色を、変換元の第一の座標情報を含むドットの色として、色決定手段２６３２がメモリ等に格納する。すなわち、これらの色が、変形後のビットマップデータの各ドットの色となる。【０１２１】
このような処理を、変形後のビットマップデータの全ドットについて、繰り返して行い、変形後のビットマップデータのすべてのドットの色が色決定手段２６３２によりメモリ等に格納されると、変形後のビットマップデータが、出力部２６４から、ディスプレイ等に出力される。【０１２２】
図３２から図３６は、本実施の形態に係る出力装置における、変形したビットマップデータを構成する処理を具体的に説明するための、ビットマップデータを示す模式図である。以下、図３２から図３６を用いて、この処理を具体的に説明する。なお、図において、黒丸は、第一または第二の座標情報である。白色で示されているドットの色は第一の色であり、また、斜線で示されているドットの色は第２の色である。この第一の色と第二の色とは互いに異なる色であるとする。また、第一の色と第二の色は白、黒には限らない。なお、ここでは、説明を容易にするために、ビットマップデータが第一または第二の色をもつドットから構成される場合について説明する。しかし、前記実施の形態１において説明した、カラー画像からジャギーを検出する技術や、カラー画像のジャギーを除去するためのベクトルデータを取得する技術等を利用することにより、本発明が、ビットマップデータが２色以上の複数の色を持つドットにより構成されている場合においても適用できるものであることは、言うまでもない。【０１２３】
まず、ビットマップデータ取得部１０３が取得した図３２に示すようなビットマップデータから、ベクトル化部２６２が、第一のベクトルデータ３２を取得する。ここでは、ベクトル化部２６２は、例として、連続した第二の色を持つドットが、１ドットの段差を構成する部分をジャギーとして判断して、第一のベクトルデータ３２を構成している。第一のベクトルデータ３２は、例えば、座標値（ｘ１１，ｙ１１）および座標値（ｘ１２，ｙ１２）と、座標値（ｘ１３，ｙ１３）および座標値（ｘ１４，ｙ１４）を有するデータである。座標値（ｘ１１，ｙ１１）および座標値（ｘ１２，ｙ１２）は直線の始点と終点を指定する座標値である。座標値（ｘ１３，ｙ１３）および座標値（ｘ１４，ｙ１４）は直線の始点と終点を指定する座標値である。【０１２４】
次に、逆変換手段２６３１が、図３３に示すような構成部２６３が構成する変形後のビットマップデータの、１つのドットの第一の座標情報に対して、所定の演算の逆関数ｆ−１による変換を行う。なお、図３３においては、便宜上、各ドットの第一の座標情報を、各ドットの中心の黒丸で表している。【０１２５】
この逆関数ｆ−１による変換で得られることとなる第二の座標情報を、変形前のビットマップデータ上に表示した図が図３４である。例えば、変形後のビットマップデータ上の第一の座標情報３３ａ，３３ｂ，３３ｃ，３３ｄが、逆関数ｆ−１による変換によって、第二の座標情報３４ａ，３４ｂ，３４ｃ，３４ｄにそれぞれ変換される。【０１２６】
そして、図３４に示したビットマップデータ上に示される第二の座標情報の色を決定し、この決定した色を、第二の座標情報の変換元の第一の座標情報を含むドットの色として、色決定手段２６３２が取得する。例えば、図３４の第二の座標情報３４ａ，３４ｂ，３４ｃ，３４ｄの色を、それぞれ、図３３の第一の座標情報３３ａ，３３ｂ，３３ｃ，３３ｄを含むドットの色として取得する。【０１２７】
このとき、図３４に示す変形前のビットマップデータにおいて、第一のベクトルデータ３２と第二の座標情報が示すドットとが通過の関係にない場合、この第二の座標情報が示すドットの色を、この第二の座標情報の色として決定する。これを変換元の第一の座標情報を含むドットの色として、色決定手段２６３２が取得する。【０１２８】
第一のベクトルデータ３２と第二の座標情報が示すドットとが通過の関係にある場合、この第二の座標情報が示す位置が第一のベクトルデータ３２の上にあるか下にあるかを判定する。そして、下にある場合には、この第二の座標情報が含まれるドットの下に隣接するドットの色を、この第二の座標情報の色として決定する。また、上にある場合には、この第二の座標情報が含まれるドットの上に隣接するドットの色を、この第二の座標情報の色として決定する。そして、この決定した色を、変換元の第一の座標情報を含むドットの色として、色決定手段２６３２が取得する。このような処理を、変形後のビットマップデータのドットのすべてに対して行うことで、最終的に得られるビットマップデータは、図３５に示すような画像データとなる。【０１２９】
図３６は、この第二の座標情報の色の決定の処理を、本実施の形態とは異なる処理で行った場合に得られる変形後のビットマップデータを示す図である。第一のベクトルデータ３２を利用しないため、図３４に示した変形前のビットマップデータの第二の座標情報の色は、第二の座標情報が示すドットの色に決定される。そして、この決定された第二の座標情報の色が、第二の座標情報の変換元の第一の座標情報を含むドットの色として取得されることにより、図３６に示すような、変形後のビットマップデータが得られる。【０１３０】
例えば、図３４においては、図３３の第一の座標情報３３ｂを逆関数により変換して得られる第二の座標情報３４ｂが示すドットを、第一のベクトルデータ３２の示す線が通過している。そして、第二の座標情報３４ｂが示す位置は、第一のベクトルデータ３２が示す線よりも下にある。このため、本実施の形態においては、この第二の座標情報３４ｂの色は、第二の座標情報３４ｂが示すドットの下に隣接するドットの色、ここでは、第二の色に決定される。そして、図３５に示すように、第二の座標情報３４ｂの変換元である第一の座標情報３３ｂを含むドットの色は、第二の色となる。これにより、第一の座標情報３３ｂを含むドットの近傍は、ジャギーの目立たない滑らかな画像となる。【０１３１】
これに対し、第二の座標情報の色の決定を、本実施の形態とは異なる処理で行った場合、第二の座標情報３４ｂの色は、第二の座標情報３４ｂが示すドットの色に決定される。第二の座標情報３４ｂが示すドットの色は、図３４に示すように、第一の色であるため、第二の座標情報３４ｂの色は、第一の色に決定される。そして、図３６に示すように、第二の座標情報３４ｂの変換元である第一の座標情報３３ｂを含むドットの色は、第一の色となる。これにより、図３５に示す本実施の形態により得られる変形後のビットマップデータの画像と比べて、第一の座標情報３３ｂを含むドットの近傍は、ジャギーの目立つ画像となる。【０１３２】
また、図３４においては、図３３の第一の座標情報３３ｄを逆関数により変換して得られる第二の座標情報３４ｄが示すドットを、第一のベクトルデータ３２の示す線が通過している。そして、第二の座標情報３４ｄが示す位置は、第一のベクトルデータ３２が示す線よりも下にある。このため、本実施の形態においては、この第二の座標情報３４ｄの色は、第二の座標情報３４ｄが示すドットの下に隣接するドットの色、ここでは、第一の色に決定される。そして、図３５に示すように、第二の座標情報３４ｄの変換元である第一の座標情報３３ｄを含むドットの色は、第一の色となる。これにより、第一の座標情報３３ｄを含むドットの近傍は、ジャギーの目立たない滑らかな画像となる。【０１３３】
これに対し、第二の座標情報の色の決定を、本実施の形態とは異なる処理で行った場合、第二の座標情報３４ｄの色は、第二の座標情報３４ｄが示すドットの色に決定される。第二の座標情報３４ｄが示すドットの色は、図３４に示すように、第二の色であるため、第二の座標情報３４ｄの色は、第２の色に決定される。そして、図３６に示すように、第二の座標情報３４ｄの変換元である第一の座標情報３３ｄを含むドットの色は、第二の色となる。これにより、図３５に示す本実施の形態により得られる変形後のビットマップデータの画像と比べて、第一の座標情報３３ｄを含むドットの近傍は、ジャギーの目立つ画像となる。【０１３４】
なお、あらかじめ変形前のビットマップデータに対して、ジャギーを除去する処理をしてから、逆関数により変換した座標の色を決定することも考えられる。しかしながら、変形前のビットマップデータの解像度が低い場合などでは、ジャギーを除去するためのドットの補間には限界がある。例えば、図３１のようなビットマップデータにおいては、座標３１ｂ，３１ｃが含まれるドットは、これ以上分割できないため、このドットをジャギーと考えると、変形前にはジャギーが除去できない。したがって、変形後のビットマップデータは、図３１に示すようなジャギーが目立つビットマップデータとなる。【０１３５】
また、ビットマップデータを変形した後に、ジャギー処理を行うことも考えられる。しかしながら、この場合、ビットマップデータの変形によって、変形前のビットマップデータのジャギーも変形されるため、ジャギーの形状が複雑化する。特に変形が拡大や縮小以外の変形である場合には、ビットマップデータの変形によって、ジャギーの形状が複雑化しやすい。この結果、ジャギー除去を行う処理が複雑化し、ジャギー除去に要する時間が長くなってしまう等の問題が起こりうる。また、変形後のビットマップデータに対してジャギー処理を行うために、一旦変形したビットマップデータを格納しておくための、メモリ等の新たなハードウエア資源が必要となってしまい、装置の小型化等が図りにくくなってしまう。【０１３６】
以上、本実施の形態によれば、ビットマップデータを変形する場合において、ビットマップデータのジャギーの発生している箇所をベクトル化した第一のベクトルデータを取得し、変形後のビットマップデータの各ドットを示す第一の座標情報を、逆関数を用いて変換して第二の座標情報を得るようにし、この第二の座標情報が示す位置の色を、ビットマップデータと第一のベクトルデータを利用して決定し、これを第二の座標情報の変換元となる第一の座標情報を含む変形後のビットマップデータのドットの色として取得するようにした。これにより、変形後のビットマップデータとして、ジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【０１３７】
なお、本実施の形態においては、構成部２６３は、変形前のビットマップデータ内の所定の位置に対して所定の位置関係にあるドットであって、ベクトル化部２６２が取得した第一のベクトルデータと変形前のビットマップデータのドットの色とに基づいて決定した前述した所定の位置の色を有するドットを複数有する変形後のビットマップデータを構成するものであればよい。【０１３８】
例えば、本実施の形態においては、構成部２６３が、変形前のビットマップデータの所定の位置の座標情報に対して、所定の演算の関数ｆによる変換を行うことで、変形前のビットマップの所定の位置に対して、この関数ｆにより決定される位置関係にある複数のドットにより構成される変形後のビットマップデータを構成するようにしてもよい。このとき、変形後のビットマップデータの各ドットの色を、変形前のビットマップデータの座標情報が示す位置の色とする。そして、この色は、前記実施の形態４と同様に、変形前のビットマップデータのドットの色と、第一のベクトルデータと、座標情報が示す位置に基づいて決定するようにする。かかることは他の実施の形態においても同様である。【０１３９】
なお、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記実施の形態における出力装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、ビットマップデータを変形して出力する処理を行うプログラムであって、格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、前記ビットマップデータ内の所定の位置に対して所定の位置関係にあるドットであって、前記第一のベクトルデータと前記ビットマップデータのドットの色とに基づいて決定した前記所定の位置の色を有するドットを複数有する変形後のビットマップデータを構成する構成ステップと、前記変形後のビットマップデータを出力する出力ステップとを実行させるためのプログラムである。【０１４０】
また、この出力装置を実現するプログラムは、ビットマップデータを変形して出力する処理を行うプログラムであって、コンピュータに、格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、所定の演算の逆関数と、前記ビットマップデータと、前記第一のベクトルデータに基づいて変形後のビットマップデータを構成する構成ステップと、前記変形後のビットマップデータを出力する出力ステップを実行させるためのプログラムであって、前記構成ステップは、処理対象のドットの座標情報である第一の座標情報を、前記所定の演算の逆関数により変換して第二の座標情報を取得する逆変換ステップと、前記第二の座標情報が示す位置の色を、前記第一のベクトルデータ、および前記ビットマップデータのドットの色に基づいて決定し、当該決定したドットの色を前記第一の座標情報のドットの色とする色決定ステップと、前記第二の座標情報を取得するステップ、および前記決定したドットの色を第一の座標情報のドットの色とするステップを、出力するビットマップデータの全てのドットに対して行なうように制御する制御ステップを具備するプログラムである。【０１４１】
（実施の形態５）
図３７は、本発明の実施の形態５に係る出力装置の構成を示す図である。本実施の形態５に係る出力装置は、入力受付部１０１、ビットマップデータ格納部１０２、ビットマップデータ取得部１０３、ベクトル化部２６２、構成部２６３、および出力部２６４を備えている。ベクトル化部２６２は、ジャギー検出手段１０４１とベクトルデータ構成手段とを備えている。構成部２６３は、色決定手段２６３１、逆変換手段２６３２、および制御手段２６３３とを備えている。【０１４２】
本実施の形態は、前記実施の形態４において説明した出力装置において、ベクトル化部２６２において取得した第一のベクトルデータを、ベクトルデータ変換部３５１により変形して、第二のベクトルデータを取得するようにした。そして、構成部２６３が、この第二のベクトルデータと、ビットマップデータ格納部１０２に格納されているビットマップデータとに基づいて、変形後のビットマップデータを構成するようにしたものである。【０１４３】
ベクトルデータ変換部３５１は、ベクトル化部３５１が取得した第一のベクトルデータを変形して第二のベクトルデータを取得する。この第一のベクトルデータの変形は、所定の演算の関数により、第一のベクトルデータを変換することにより行われる。ベクトルデータ変換部３５１は、通常、ＭＰＵとメモリとの組み合わせ等により実現され得る。ベクトルデータ変換部３５１の処理手順は、通常、ソフトウエアで実現され、当該ソフトウエアはＲＯＭ等の記録媒体に記録されている。ただし、専用回路等のハードウエアで実現してもよい。【０１４４】
構成部２６３は、前記実施の形態４と同様の構成を有しており、前記実施の形態４に説明した処理と同様の処理により、第一のベクトルデータとビットマップデータ格納部１０２に格納されているビットマップデータに基づいて変形後のビットマップデータを構成する。ただし、本実施の形態においては、構成部２６３は、前記実施の形態４において説明した、ビットマップデータの第一の座標情報を第二の座標情報に変換する演算に用いる逆関数ｆ−１として、ベクトル変換部３５１が第一のベクトルデータを変換して第二のベクトルデータを構成する際に用いた関数ｆの逆関数ｆ−１を、ベクトルデータ変換部３５１から取得し、利用するものとする。【０１４５】
本実施の形態に係る出力装置の動作を、図３８のフローチャートを用いて説明する。なお、ステップＳ３８０１以外の動作については、図２７において説明した動作と同様であるので、説明を省略する。【０１４６】
（ステップＳ３８０１）ベクトルデータ変換部３５１により、ステップＳ２７０３により取得した第一のベクトルデータを、所定の演算の関数ｆにより変換して第二のベクトルデータを取得する。なお、ステップＳ３８０１においては、第一のベクトルデータが示す線およびこれを変形して得られる第二のベクトルデータが示す線だけを、ビットマップデータ化して、ディスプレイ等に出力してやるようにしてもよい。このようにすることで、第一のビットマップデータに対して、どのような変形を行うか、すなわち、どのような関数による演算を行って変形を行うかを、実際にビットマップデータを変形する前に、視覚的にユーザが確認することが可能となる。【０１４７】
図３９から図４３は、本実施の形態に係る出力装置による、変形したビットマップデータを構成する処理を具体的に説明するための、ビットマップデータを示す模式図であり、以下、図３９から図４５を用いて、この処理を具体的に説明する。なお、図において、白色で示されているドットの色は第一の色であり、また、斜線で示されているドットの色は第２の色である。また、第一の色と第２の色とは互いに異なる色であるとする。また、第一の色と第二の色は白、黒には限らない。なお、ここでは、説明を容易にするために、ビットマップデータが第一または第二の色をもつドットから構成される場合について説明する。しかし、前記実施の形態１において説明した、カラー画像からジャギーを検出する技術や、カラー画像のジャギーを除去するためのベクトルデータを取得する技術等を利用することにより、本発明が、ビットマップデータが２色以上の複数の色を持つドットにより構成されている場合においても適用できるものであることは、言うまでもない。【０１４８】
まず、図３９に示すように、ビットマップデータ取得部１０３が取得したビットマップデータから、ベクトル化部２６２が、第一のベクトルデータ３９を取得する。第一のベクトルデータ３９は、例えば、座標値（ｘ２１，ｙ２１）および座標値（ｘ２２，ｙ２２）と、座標値（ｘ２３，ｙ２３）および座標値（ｘ２４，ｙ２４）を有するデータである。座標値（ｘ２１，ｙ２１）および座標値（ｘ２２，ｙ２２）は直線の始点と終点を指定する座標値である。座標値（ｘ２３，ｙ２３）および座標値（ｘ２４，ｙ２４）は直線の始点と終点を指定する座標値である。ここでは、ベクトル化部２６２は、例として、連続した第二の色を持つドットが、１ドットの段差を構成する部分をジャギーとして判断して、第一のベクトルデータ３９を構成している。【０１４９】
次に、ベクトルデータ変換部３５が、第一のベクトルデータ３９に対して所定の演算の関数ｆによる変換を行い、第二のベクトルデータ４０を取得する。この第二のベクトルデータ４０が示す線を、変形後のビットマップデータ上に示した図が、図４０である。第二のベクトルデータ３９は、例えば、座標値（Ｘ２１，Ｙ２１）および座標値（Ｘ２２，Ｙ２２）と、座標値（Ｘ２３，Ｙ２３）および座標値（Ｘ２４，Ｙ２４）を有するデータである。なお、座標値（ｘ２１，ｙ２１）、座標値（ｘ２２，ｙ２２）、座標値（ｘ２３，ｙ２３）、および座標値（ｘ２４，ｙ２４）を、関数ｆにより変換して得られる座標値が、座標値（Ｘ２１，Ｙ２１）、座標値（Ｘ２２，Ｙ２２）座標値（Ｘ２３，Ｙ２３）、および座標値（Ｘ２４，Ｙ２４）である。【０１５０】
次に、逆変換手段２６３１が、図４０に示すような変形後のビットマップデータの１つのドットの第一の座標情報に対して、第一のベクトルデータを第二のベクトルデータに変換するための関数ｆの、逆関数ｆ−１を用いた変換を行う。なお、図４０においては、便宜上、各ドットの座標を、各ドットの中央の黒丸で表している。この変換で得られる第二の座標情報を、変形前のビットマップデータ上に表示した図が図４１である。例えば、図４０に示した変形後のビットマップデータ上の第一の座標情報４２ａ，４２ｂ，４２ｃ，４２ｄが、逆関数ｆ−１による変換により、第二の座標情報４３ａ，４３ｂ，４３ｃ，４３ｄにそれぞれ変換される。【０１５１】
そして、色決定手段２６３２が、図４１に示した第二の座標情報の色を決定し、この決定した色を、変換元の第一の座標情報を含む変換後のビットマップデータのドットの色として取得する。例えば、図４１の第二の座標情報４３ａ，４３ｂ，４３ｃ，４３ｄの色を、図４０の第一の座標情報４２ａ，４２ｂ，４２ｃ，４２ｄを含むドットの色として取得する。【０１５２】
このとき、図４３に示す変形前のビットマップデータにおいて、第二の座標情報が示すドットを、第一のベクトルデータが示す線３９が通過しない場合、この第二の座標情報が含まれるドットの色を、この第二の座標情報の示す位置の色として決定する。この決定した色を変換元の第一の座標情報を含むドットの色として取得する。【０１５３】
第二の座標情報が示すドットを、第一のベクトルデータが示す線３９が通過する場合、この第二の座標情報の示す位置が第一のベクトルデータ３９の上にあるか下にあるかを判定する。そして、下にある場合には、この第二の座標情報が示すドットの下に隣接するドットの色を、この第二の座標情報の色として決定する。また、上にある場合には、この第二の座標情報が示すドットの上に隣接するドットの色を、この第二の座標情報の色として決定する。【０１５４】
そして、この決定した色を変換元の第一の座標情報が示す位置のドットの色として取得する。このような処理を、変形後のビットマップデータのドットのすべてに対して行うことで、最終的に得られるビットマップデータは、図４２に示すような画像データとなる。なお、図４２において、ドット４４ａ，４４ｂ，４４ｃ，４４ｄは、それぞれ、図４０の第一の座標情報４２ａ，４２ｂ，４２ｃ，４２ｄを含むドットである。【０１５５】
図４３は、第二の座標情報の色の決定の処理において、本実施の形態と同様の処理を行わなかった場合に得られる変形後のビットマップデータを示す図である。第一のベクトルデータ３９は利用せず、図４１に示した変形前のビットマップデータの第二の座標情報の色は、第二の座標情報が示すドットの色に決定される。そして、この決定された第二の座標情報の色が、第二の座標情報の変換元の第一の座標情報を含むドットの色として取得されることにより、図４３に示すような、変形後のビットマップデータが得られる。【０１５６】
例えば、図４１においては、図４０の第一の座標情報４２ｂを逆関数により変換して得られる第二の座標情報４３ｂが示すドットを、第一のベクトルデータ３９の示す線が通過している。そして、第二の座標情報４３ｂが示す位置は、第一のベクトルデータ３９が示す線よりも下にある。このため、本実施の形態においては、この第二の座標情報４３ｂの色は、第二の座標情報４３ｂが示すドットの下に隣接するドットの色、ここでは、第二の色に決定される。そして、図４２に示すように、第二の座標情報４３ｂの変換元である第一の座標情報４２ｂを含むドット４４ｂの色は、第二の色となる。これにより、ドット４４ｂの近傍は、ジャギーの目立たない滑らかな画像となる。【０１５７】
これに対し、第二の座標情報の色の決定を、本実施の形態とは異なる処理で行った場合、第二の座標情報４３ｂの色は、第二の座標情報４３ｂが示すドットの色に決定される。第二の座標情報４３ｂが示すドットの色は、図４１に示すように、第一の色であるため、第二の座標情報４３ｂの色は、第一の色に決定される。そして、図４３に示すように、第二の座標情報４３ｂの変換元である第一の座標情報４２ｂを含むドット４５ｂの色は、第一の色となる。これにより、図４２に示す本実施の形態により得られる変形後のビットマップデータの画像と比べて、ドット４５ｂの近傍は、ジャギーの目立つ画像となる。【０１５８】
また、図４１においては、図４０の第一の座標情報４２ｄを逆関数により変換して得られる第二の座標情報４３ｄが示すドットを、第一のベクトルデータ３９の示す線が通過している。そして、第二の座標情報４３ｄが示す位置は、第一のベクトルデータ３９が示す線よりも下にある。このため、本実施の形態においては、この第二の座標情報４３ｄの色は、第二の座標情報４３ｄが示すドットの下に隣接するドットの色、ここでは、第一の色に決定される。そして、図４２に示すように、第二の座標情報４３ｄの変換元である第一の座標情報４２ｄを含むドット４４ｄの色は、第一の色となる。これにより、ドット４４ｄの近傍は、ジャギーの目立たない滑らかな画像となる。【０１５９】
これに対し、第二の座標情報の色の決定を、本実施の形態とは異なり、第一のベクトルデータ３９を利用せずに行った場合、第二の座標情報４３ｄの色は、第二の座標情報４３ｄが示すドットの色に決定される。第二の座標情報４３ｄが示すドットの色は、図４１に示すように、第二の色であるため、第二の座標情報４３ｄの色は、第二の色に決定される。そして、図４３に示すように、第二の座標情報４３ｄの変換元である第一の座標情報４２ｄを含むドット４５ｄの色は、第二の色となる。これにより、図４２に示す本実施の形態により得られる変形後のビットマップデータの画像と比べて、ドット４５ｄの近傍は、ジャギーの目立つ画像となる。【０１６０】
なお、逆関数ｆ−１により変換して得られた第二の座標情報が示す位置の色を、その第二の座標情報が示すドットの色とするか、あるいは、そのドットに隣接するドットの色とするかを、第二のベクトルデータ４０と、変形後のビットマップデータの第一の座標情報との位置関係から、あらかじめ、決定するようにしてもよい。例えば、変形後のビットマップデータのドットを、第二のベクトルデータ４０の示す線が通過しており、かつ、そのドットに含まれる第一の座標情報が示す位置が、第二のベクトルデータの示す線の下に位置する場合においては、逆関数ｆ−１による変換によりに得られる第二の座標情報の色を、その第二の座標情報が示すドットの下に位置するドットの色に決定するようにしてもよい。【０１６１】
以上、本実施の形態によれば、ビットマップデータを変形する場合において、ビットマップデータの少なくとも一部をベクトル化した第一のベクトルデータを取得し、この第一のベクトルデータを変形して第二のベクトルデータを取得し、変形後に得られることとなるビットマップデータの各ドットを示す第一の座標情報を、第一のベクトルデータを第二のベクトルデータに変形する演算の逆関数を用いて変換して、第二の座標情報を得るようにし、この第二の座標情報の色を、ビットマップデータと第一のベクトルデータを利用して決定し、これを第一の座標情報を含む変形後のビットマップデータのドットの色として取得するようにした。これにより、変形後のビットマップデータとして、ジャギーの少ない、滑らかなアウトラインを有するビットマップデータを得ることができる。【０１６２】
なお、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記各実施の形態における出力装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、ビットマップデータを変形して出力する処理を行うプログラムであって、コンピュータに、格納されているビットマップデータの少なくとも一部から第一のベクトルデータを取得するベクトル化ステップと、前記第一のベクトルデータを変形して第二のベクトルデータを取得するベクトルデータ変換ステップと、前記第二のベクトルデータと前記ビットマップデータに基づいて、変形後のビットマップデータを構成する構成ステップと、前記変形後のビットマップデータを出力する出力ステップを実行させるためのプログラムである。【０１６３】
なお、上記各実施の形態において説明したプログラムにおいて、情報を取得するステップや、情報を出力するステップなどでは、ハードウェアでしか行われない処理、例えば、情報を出力するステップにおける出力デバイスなどで行われる処理は、少なくとも含まれない。【０１６４】
なお、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。【０１６５】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体、例えば、ＣＤ−ＲＯＭなどの光ディスクや磁気ディスク、半導体メモリなど、に記録されたプログラムが読み出されることによって実行されてもよい。【０１６６】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１６７】
本発明にかかる出力装置は、ジャギーを除去したビットマップデータを出力することができるという効果を有し、ビットマップデータを印刷する印刷装置や、ビットマップデータを表示する表示装置等の出力装置として有用である。
【図面の簡単な説明】
【０１６８】
【図１】本発明の実施の形態１における印刷装置の構成を示すブロック図。
【図２】本発明の実施の形態１における印刷装置の動作について説明するフローチャート。
【図３】本発明の実施の形態１におけるジャギー除去処理の動作について説明するフローチャート。
【図４】本発明の実施の形態１における印刷対象のビットマップデータを示す図。
【図５】本発明の実施の形態１におけるビットマップデータが有するジャギーを拡大した図。
【図６】本発明の実施の形態１におけるジャギー除去の処理を説明する図。
【図７】本発明の実施の形態１におけるジャギー除去の処理を説明する図。
【図８】本発明の実施の形態１におけるビットマップデータの印刷例を示す図。
【図９】本発明の実施の形態１におけるベクトルデータの例を示す図。
【図１０】本発明の実施の形態２における印刷装置の構成を示すブロック図。
【図１１】本発明の実施の形態２における印刷装置の動作について説明するフローチャート。
【図１２】本発明の実施の形態２における変換処理の動作について説明するフローチャート。
【図１３】本発明の実施の形態２における変換ルール管理表を示す図。
【図１４】本発明の実施の形態２におけるジャギーを有するビットマップデータを示す図。
【図１５】本発明の実施の形態２における変換ルールの適用を説明するための図。
【図１６】本発明の実施の形態２における変換処理を行わず場合のビットマップデータを示す図。
【図１７】本発明の実施の形態３における印刷装置の構成を示すブロック図。
【図１８】本発明の実施の形態３における他の変換ルールを示す図。
【図１９】本発明の実施の形態３における変換前の元データを示す図。
【図２０】本発明の実施の形態３における変換ルールを適用した変換後のデータを示す図。
【図２１】本発明の実施の形態３における変換ルールを適用しない変換後のデータを示す図。
【図２２】本発明の実施の形態１における変換前のビットマップデータを示す図。
【図２３】本発明の実施の形態１における変換後のビットマップデータを示す図。
【図２４】本発明の実施の形態１における変換処理を説明する図。
【図２５】従来の従来技術におけるビットマップデータの印刷例を示す図。
【図２６】本発明の実施の形態４における出力装置の構成を示すブロック図。
【図２７】本発明の実施の形態４における出力装置の動作を説明するためのフローチャート。
【図２８】本発明の実施の形態４における変形後のビットマップデータを構成するための動作を説明するためのフローチャート。
【図２９】本発明の実施の形態４における出力装置の動作を説明するための変換前のビットマップデータの例を示す図。
【図３０】本発明の実施の形態４における出力装置の動作を説明するための変換後のビットマップデータの例を示す図。
【図３１】本発明の実施の形態４における出力装置の、第二の座標情報の色を決定する処理を説明する図。
【図３２】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図３３】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図３４】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図３５】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図３６】本発明の実施の形態４における出力装置の、第一のベクトルデータを利用しない場合の動作を説明するための模式図。
【図３７】本発明の実施の形態５における出力装置の構成を示すブロック図。
【図３８】本発明の実施の形態５における出力装置の動作を説明するためのフローチャート。
【図３９】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図４０】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図４１】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図４２】本発明の実施の形態４における出力装置の動作を説明するための模式図。
【図４３】本発明の実施の形態４における出力装置の、第一のベクトルデータを利用しない場合の動作を説明するための模式図。
【図１】
0004181604.tif 000002
【図２】
0004181604.tif 000003
【図３】
0004181604.tif 000004
【図４】
0004181604.tif 000005
【図５】
0004181604.tif 000006
【図６】
0004181604.tif 000007
【図７】
0004181604.tif 000008
【図８】
0004181604.tif 000009
【図９】
0004181604.tif 000010
【図１０】
0004181604.tif 000011
【図１１】
0004181604.tif 000012
【図１２】
0004181604.tif 000013
【図１３】
0004181604.tif 000014
【図１４】
0004181604.tif 000015
【図１５】
0004181604.tif 000016
【図１６】
0004181604.tif 000017
【図１７】
0004181604.tif 000018
【図１８】
0004181604.tif 000019
【図１９】
0004181604.tif 000020
【図２０】
0004181604.tif 000021
【図２１】
0004181604.tif 000022
【図２２】
0004181604.tif 000023
【図２３】
0004181604.tif 000024
【図２４】
0004181604.tif 000025
【図２５】
0004181604.tif 000026
【図２６】
0004181604.tif 000027
【図２７】
0004181604.tif 000028
【図２８】
0004181604.tif 000029
【図２９】
0004181604.tif 000030
【図３０】
0004181604.tif 000031
【図３１】
0004181604.tif 000032
【図３２】
0004181604.tif 000033
【図３３】
0004181604.tif 000034
【図３４】
0004181604.tif 000035
【図３５】
0004181604.tif 000036
【図３６】
0004181604.tif 000037
【図３７】
0004181604.tif 000038
【図３８】
0004181604.tif 000039
【図３９】
0004181604.tif 000040
【図４０】
0004181604.tif 000041
【図４１】
0004181604.tif 000042
【図４２】
0004181604.tif 000043
【図４３】
0004181604.tif 000044