(57)【要約】【課題】表現力を高くする。【解決手段】構造化ベクトルグラフィックス（ＶＧ）の第２形状データと、第２形状データに対応する形状番号との組を格納する部１０２と、指定番号に対応する第２形状データに対応する形状を復元する部１０４と、形状差評価値を算出する部１０５と、最小値と、値に対応する第２形状データとを算出する部１０６と、最小値と閾値とを比較する部１０７と、最小値が閾値以下である場合には第１形状データによる形状と最小値に対応する第２形状データによる形状との差分形状を示す差分形状データを算出する部１０８とを具備し、最小値が閾値より大きいとき第１形状データを構造化ＶＧ形状データとして部１０２に格納し、最小値が閾値以下のとき差分形状データを構造化ＶＧ形状データとして部１０２に格納する。【選択図】図１
2008084188.tif 000002
【特許請求の範囲】
【請求項１】
データソースからベクトルグラフィックスの第１の形状データを取得する取得手段と、
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータであるベクトルグラフィックスの構造化された第２の形状データと、該第２の形状データに対応する形状番号との組を複数格納する第１の格納手段と、
複数の前記第２の形状データから、指定された前記形状番号に対応する第２の形状データを読み出す第１の読み出し手段と、
前記読み出された第２の形状データを元に、該第２の形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記第１の形状データに対応するベクトルグラフィックス形状と、前記復元されたベクトルグラフィックス形状との、２つの形状が類似しているほど値が低くなる形状差評価値を算出する第１の算出手段と、
複数の前記形状差評価値のうちの最小の形状差評価値と、該形状差評価値に対応する第２の形状データとを算出する第２の算出手段と、
前記最小の形状差評価値と形状差評価値閾値とを比較する比較手段と、
前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記第１の形状データによる形状と、前記最小の形状差評価値に対応する第２の形状データによる形状との差分形状を示す差分形状データを算出する第３の算出手段と、を具備し、
前記最小の形状差評価値が前記形状差評価値閾値より大きい場合には、前記第１の形状データを構造化されたベクトルグラフィックス形状データとして前記第１の格納手段に格納し、前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記差分形状データを構造化ベクトルグラフィックス形状データとして前記第１の格納手段に格納することを特徴とするベクトルグラフィックス形状データ生成装置。
【請求項２】
前記取得手段は、データソースからベクトルグラフィックスの第１の形状データを取得することを特徴とする請求項１に記載のベクトルグラフィックス形状データ生成装置。
【請求項３】
前記取得手段は、
データソースからアウトラインフォントデータを取得する取得手段と、
前記取得されたアウトラインフォントデータを１つずつの輪郭に分離する分離手段と、
前記分離された１つの輪郭をベクトルグラフィックスの第１の形状データに変換する変換手段と、を含み、
前記生成装置は、前記分離された輪郭と、前記出力された構造化ベクトルグラフィックス形状データとを対応付けた輪郭情報を格納する第２の格納手段をさらに具備する請求項１に記載のベクトルグラフィックス形状データ生成装置。
【請求項４】
前記取得手段は、
データソースからフォント種別情報と文字コードを取得する取得手段と、
フォント種別情報と文字コードとに対応するアウトラインフォントデータを複数格納する第２の格納手段と、
複数の前記アウトラインフォントデータから、前記取得したフォント種別情報と文字コードとに対応するアウトラインフォントデータを読み出す第２の読み出し手段と、
前記読み出されたアウトラインフォントデータを１つずつの輪郭に分離する分離手段と、
前記分離された１つの輪郭をベクトルグラフィックスの第１の形状データに変換する変換手段と、を含み、
前記生成装置は、
前記分離された輪郭と、前記前記取得したフォント種別情報および文字コードと、前記出力された構造化ベクトルグラフィックス形状データとを対応付けてある輪郭情報を格納する第３の格納手段と、
前記取得したフォント種別情報および文字コードに対応する輪郭情報を読み出す第３の読み出し手段と、をさらに具備し、
前記第１の読み出し手段は、前記輪郭情報に含まれている形状データに対応する第２の形状データを優先的に読み出すことを特徴とする請求項１に記載のベクトルグラフィックス形状データ生成装置。
【請求項５】
前記取得手段は、
データソースからフォント種別情報と文字コードを取得する取得手段と、
フォント種別情報と文字コードとに対応するアウトラインフォントデータを複数格納する第２の格納手段と、
複数の前記アウトラインフォントデータから、前記取得したフォント種別情報と文字コードとに対応するアウトラインフォントデータを読み出す第２の読み出し手段と、
前記読み出されたアウトラインフォントデータを１つずつの輪郭に分離する分離手段と、
前記分離された１つの輪郭をベクトルグラフィックスの第１の形状データに変換する変換手段と、を含み、
前記生成装置は、
フォント種別情報および文字コードと、該フォント種別および文字コードに対応する文字の部分情報との組を文字構造情報として複数格納する第３の格納手段と、
複数の前記文字構造情報から、前記取得したフォント種別情報および文字コードに対応する文字構造情報を読み出す第３の読み出し手段と、
前記分離された輪郭と、前記前記取得したフォント種別情報および文字コードと、前記読み出された文字構造情報と、前記出力された構造化ベクトルグラフィックス形状データと、を対応付けてある輪郭情報を格納する第４の格納手段と、
前記取得したフォント種別情報および文字コードに対応する輪郭情報を読み出す第４の読み出し手段と、
を具備し、
前記第１の読み出し手段は、前記輪郭情報および前記文字構造情報に含まれている形状データに対応する第２の形状データを優先的に読み出すことを特徴とする請求項１に記載のベクトルグラフィックス形状データ生成装置。
【請求項６】
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータである構造化ベクトルグラフィックス形状データの形状番号をデータソースから取得する第１の取得手段と、
構造化ベクトルグラフィックス形状データと、該形状データに対応する形状番号との組を複数格納する格納手段と、
複数の前記形状データから、前記取得された形状番号に対応する形状データを読み出す読み出し手段と、
前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行う前処理手段と、
描画形式を決定する数値である描画パラメータを取得する第２の取得手段と、
前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行う描画手段と、
前記描画処理を施したベクトルグラフィックス形状を画像データとして提示する提示手段と、を具備することを特徴とするベクトルグラフィックス形状描画装置。
【請求項７】
データソースからアウトラインフォント番号を取得する取得手段と、
前記取得されたアウトラインフォント番号に対応するアウトラインフォントデータを１つずつの輪郭に分離した輪郭と、請求項１に記載の出力手段が出力する構造化ベクトルグラフィックス形状データとを対応付けた輪郭情報を格納する第２の格納手段と、
前記取得されたアウトラインフォント番号に対応する輪郭情報を前記第２の格納手段から読み出す第２の読み出し手段と、
構造化ベクトルグラフィックス形状データと、該形状データに対応する指定番号との組を複数格納する第３の格納手段と、
複数の前記形状データから、前記読み出された輪郭情報に対応するすべての形状データを読み出す第３の読み出し手段と、
前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行う前処理手段と、
描画形式を決定する数値である描画パラメータを取得する第２の取得手段と、
前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行う描画手段と、
前記描画処理を施したベクトルグラフィックス形状を画像データとして提示する提示手段と、を具備することを特徴とするベクトルグラフィックス形状描画装置。
【請求項８】
データソースからフォント種別情報および文字コードを取得する取得手段と、
請求項４に記載の第３の格納手段と、
前記取得されたフォント種別情報および文字コードに対応する輪郭情報を前記第３の格納手段から読み出す第４の読み出し手段と、
構造化ベクトルグラフィックス形状データと、該形状データに対応する指定番号との組を複数格納する第４の格納手段と、
複数の前記形状データから、前記読み出された輪郭情報に対応するすべての形状データを読み出す第５の読み出し手段と、
前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行う前処理手段と、
描画形式を決定する数値である描画パラメータを取得する第２の取得手段と、
前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行う描画手段と、
前記描画処理を施したベクトルグラフィックス形状を画像データとして提示する提示手段と、を具備することを特徴とするベクトルグラフィックス形状描画装置。
【請求項９】
データソースからベクトルグラフィックスの第１の形状データを取得し、
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータであるベクトルグラフィックスの構造化された第２の形状データと、該第２の形状データに対応する形状番号との組を複数格納する第１の格納手段を用意し、
複数の前記第２の形状データから、指定された前記形状番号に対応する第２の形状データを読み出し、
前記読み出された第２の形状データを元に、該第２の形状データに対応するベクトルグラフィックス形状を復元し、
前記第１の形状データに対応するベクトルグラフィックス形状と、前記復元されたベクトルグラフィックス形状との、２つの形状が類似しているほど値が低くなる形状差評価値を算出し、
複数の前記形状差評価値のうちの最小の形状差評価値と、該形状差評価値に対応する第２の形状データとを算出し、
前記最小の形状差評価値と形状差評価値閾値とを比較し、
前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記第１の形状データによる形状と、前記最小の形状差評価値に対応する第２の形状データによる形状との差分形状を示す差分形状データを算出し、
前記最小の形状差評価値が前記形状差評価値閾値より大きい場合には、前記第１の形状データを構造化されたベクトルグラフィックス形状データとして前記第１の格納手段に格納し、前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記差分形状データを構造化ベクトルグラフィックス形状データとして前記第１の格納手段に格納することを特徴とするベクトルグラフィックス形状データ生成方法。
【請求項１０】
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータである構造化ベクトルグラフィックス形状データの形状番号をデータソースから取得し、
構造化ベクトルグラフィックス形状データと、該形状データに対応する形状番号との組を複数格納する格納手段を用意し、
複数の前記形状データから、前記取得された形状番号に対応する形状データを読み出し、
前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元し、
前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行い、
描画形式を決定する数値である描画パラメータを取得し、
前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行い、
前記描画処理を施したベクトルグラフィックス形状を画像データとして提示することを特徴とするベクトルグラフィックス形状描画装置。
【請求項１１】
コンピュータを、
データソースからベクトルグラフィックスの第１の形状データを取得する取得手段と、
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータであるベクトルグラフィックスの構造化された第２の形状データと、該第２の形状データに対応する指定番号との組を複数格納する第１の格納手段と、
複数の前記第２の形状データから、指定された前記形状番号に対応する第２の形状データを読み出す第１の読み出し手段と、
前記読み出された第２の形状データを元に、該第２の形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記第１の形状データに対応するベクトルグラフィックス形状と、前記復元されたベクトルグラフィックス形状との、２つの形状が類似しているほど値が低くなる形状差評価値を算出する第１の算出手段と、
複数の前記形状差評価値のうちの最小の形状差評価値と、該形状差評価値に対応する第２の形状データとを算出する第２の算出手段と、
前記最小の形状差評価値と形状差評価値閾値とを比較する比較手段と、
前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記第１の形状データによる形状と、前記最小の形状差評価値に対応する第２の形状データによる形状との差分形状を示す差分形状データを算出する第３の算出手段として機能させ、
前記最小の形状差評価値が前記形状差評価値閾値より大きい場合には、前記第１の形状データを構造化されたベクトルグラフィックス形状データとして前記第１の格納手段に格納し、前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記差分形状データを構造化ベクトルグラフィックス形状データとして第１の格納手段に格納することを特徴とするベクトルグラフィックス形状データ生成プログラム。
【請求項１２】
コンピュータを、
ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータである構造化ベクトルグラフィックス形状データの形状番号をデータソースから取得する第１の取得手段と、
構造化ベクトルグラフィックス形状データと、該形状データに対応する形状番号との組を複数格納する格納手段と、
複数の前記形状データから、前記取得された形状番号に対応する形状データを読み出す読み出し手段と、
前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元する復元手段と、
前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行う前処理手段と、
描画形式を決定する数値である描画パラメータを取得する第２の取得手段と、
前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行う描画手段と、
前記描画処理を施したベクトルグラフィックス形状を画像データとして提示する提示手段として機能させるためのベクトルグラフィックス形状描画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を描画するためのベクトルグラフィックス形状データ生成装置、描画装置、方法およびプログラムに関する。
【背景技術】
【０００２】
ＨＤＴＶや、ＨＤ ＤＶＤ、次世代家庭用ゲーム機など、映像機器の高精細（ＨＤ：High Definition）化にともない、高精細ＣＧ（Computer Graphics）画像中にベクトルグラフィックスや、アウトラインフォントを高品質に、かつ効率よく描画する技術の必要性が今後高まると考えられる。
【０００３】
グラフィックス用ＬＳＩであるＧＰＵ（Graphics Processing Unit）を用いて、効率よくベクトルグラフィックスを描画する手法として、近年のＧＰＵに搭載されているピクセルシェーダによりピクセル単位で２次Ｂｅｚｉｅｒ曲線の内外判定が可能であることを利用して、線分と２次Ｂｅｚｉｅｒ曲線の２種類の輪郭によって構成される閉曲線の描画をＧＰＵにより実行する手法がある（例えば、非特許文献１参照）。  
具体的には閉曲線を、単一の２次Ｂｅｚｉｅｒ曲線で構成される部分と、曲線を含まない直線のみで構成される輪郭部分に分割し、単一の２次Ｂｅｚｉｅｒ曲線輪郭部分をピクセルシェーダによって描画し、直線輪郭部分を三角形分割により描画する。ピクセルシェーダを用いたピクセル単位で２次Ｂｅｚｉｅｒ曲線の内外判定により、表示解像度に依存しない滑らかな曲線の描画が行える。
【０００４】
この手法では予めＣＰＵ上で直線輪郭部分の内部を三角形分割する必要がある。しかし、ＧＰＵのステンシルバッファ機能を利用することで輪郭情報を直接ＧＰＵ上で描画することが可能になる。これによりビデオメモリ上に格納した輪郭情報からアウトラインフォントを描画することが可能となる。
【非特許文献１】C. Loop and J. Blinn, “Resolution Independent Curve Rendering using Programmable Graphics Hardware,” In Proc. of ACM SIGGRAPH2005, pp.1000-1009.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、日本語アウトラインフォントを表示するためには、字画数の多い漢字の輪郭形状を保持する必要がある。１文字の漢字の輪郭形状は、数百から数千の頂点座標から構成される。日本語フォントは数千から数万文字の字種数があり、また、丸ゴシックや角ゴシック、明朝体などのデザイン上の種別が存在する。したがって、グラフィックスメモリなど限られたメモリ領域に効率よく文字フォントの形状情報を格納する技術が必要となる。
【０００６】
この発明は、上述した事情を考慮してなされたものであり、より表現力の高いインタラクティブアプリケーションを実現するベクトルグラフィックス形状データ生成装置、描画装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決するため、本発明のベクトルグラフィックス形状データ生成装置は、データソースからベクトルグラフィックスの第１の形状データを取得する取得手段と、ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータであるベクトルグラフィックスの構造化された第２の形状データと、該第２の形状データに対応する形状番号との組を複数格納する第１の格納手段と、複数の前記第２の形状データから、指定された前記形状番号に対応する第２の形状データを読み出す第１の読み出し手段と、前記読み出された第２の形状データを元に、該第２の形状データに対応するベクトルグラフィックス形状を復元する復元手段と、前記第１の形状データに対応するベクトルグラフィックス形状と、前記復元されたベクトルグラフィックス形状との、２つの形状が類似しているほど値が低くなる形状差評価値を算出する第１の算出手段と、複数の前記形状差評価値のうちの最小の形状差評価値と、該形状差評価値に対応する第２の形状データとを算出する第２の算出手段と、前記最小の形状差評価値と形状差評価値閾値とを比較する比較手段と、前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記第１の形状データによる形状と、前記最小の形状差評価値に対応する第２の形状データによる形状との差分形状を示す差分形状データを算出する第３の算出手段と、を具備し、前記最小の形状差評価値が前記形状差評価値閾値より大きい場合には、前記第１の形状データを構造化されたベクトルグラフィックス形状データとして前記第１の格納手段に格納し、前記最小の形状差評価値が前記形状差評価値閾値以下である場合には、前記差分形状データを構造化ベクトルグラフィックス形状データとして前記第１の格納手段に格納することを特徴とする。
【０００８】
本発明のベクトルグラフィックス形状描画装置は、ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータである構造化ベクトルグラフィックス形状データの形状番号をデータソースから取得する第１の取得手段と、構造化ベクトルグラフィックス形状データと、該形状データに対応する形状番号との組を複数格納する格納手段と、複数の前記形状データから、前記取得された形状番号に対応する形状データを読み出す読み出し手段と、前記読み出された形状データを元に、該形状データに対応するベクトルグラフィックス形状を復元する復元手段と、前記復元されたベクトルグラフィックス形状の頂点の定義順序の変換処理と、頂点座標をスケーリング前の座標に変換する処理とからなる前処理を行う前処理手段と、描画形式を決定する数値である描画パラメータを取得する第２の取得手段と、前処理された前記ベクトルグラフィックス形状を前記描画パラメータに基づいて描画処理を行う描画手段と、前記描画処理を施したベクトルグラフィックス形状を画像データとして提示する提示手段と、を具備することを特徴とする。
【発明の効果】
【０００９】
本発明のベクトルグラフィックス形状データ生成装置、描画装置、方法およびプログラムによれば、より表現力の高いインタラクティブアプリケーションを実現することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照しながら本発明の実施形態に係るベクトルグラフィックス形状データ生成装置、描画装置、方法およびプログラムについて詳細に説明する。  
まず、本発明の実施形態の概略を簡単に説明する。  
グラフィックス専用ＬＳＩであるＧＰＵに搭載されているピクセルシェーダを利用してＣＧ画像中に曲線で輪郭が定義されるベクトルグラフィックスやアウトラインフォントを高品質にかつ効率よく描画する技術がある（上記のC. Loop and J. Blinnの文献に開示されている）。この技術を用いＧＰＵによって高速にアウトラインフォント描画を行うためには、文字の形状情報をビデオメモリ上に配置する必要があるが、日本語の文章を表示する場合、字画数および字種数の多い漢字の形状データがビデオメモリを消費してしまうという問題がある。
【００１１】
そこで本発明の実施形態では、フォントの種別（例えば、角ゴシックフォント、丸ゴシックフォント）が異なっていても同じ字の場合には文字形状が類似していること、また漢字の部首が共通の字の場合に部首の形状が類似していることに着目し、参照情報と差分情報からなるベクトルグラフィックス形状データ構造を生成するベクトルグラフィックス形状データ生成装置を説明する。また、実施形態では、構造化されたベクトルグラフィックス形状データに基づく描画装置を説明する。これらの装置により、ＧＰＵを用いて日本語を表示する際のビデオメモリの消費量を削減でき、より多彩な種類のフォントを高速に表示でき、インタラクティブアプリケーションの表現力が向上する。
【００１２】
より詳細には、実施形態のベクトルグラフィックス形状データ生成装置は、形状が類似している２つのアウトライン形状について、一方の形状の頂点座標と、他方の形状の頂点座標との間の距離が、アウトライン形状全体の大きさに比べ十分小さい場合に、この距離を形状間の差分形状情報として保持する。差分形状情報は、元のアウトライン形状よりも少ない情報量で十分精度よく形状を表現できる。  
実施形態のベクトルグラフィックス形状データ生成装置は、漢字の部分（へん、つくり）形状間の類似性、およびフォントの種類が異なる同一の文字間の形状の類似性に着目し、前述した差分形状情報の算出手段、元となる形状情報、差分形状情報の格納手段を備える。また、実施形態のベクトルグラフィックス形状データ生成装置は、グラフィックスパイプラインを用い、本発明の実施形態で説明する手法によって格納されたアウトラインフォント形状情報を効率的に描画する手段を備える。
【００１３】
実施形態による手法を用いることにより、グラフィックスプロセッサでアウトラインフォントを描画する際の、フォントの形状情報の格納に要するビデオメモリの量を削減することが可能となる。これにより、より多くの種類の文字情報、フォント種別をビデオメモリに格納することが可能となるだけでなく、アプリケーションに必要となる他のデータをビデオメモリに並存することが可能となるため、より表現力の高いインタラクティブアプリケーションが実現可能となる。
【００１４】
なお、本発明の実施形態に係るベクトルグラフィックス形状データ生成装置、描画装置は、次世代グラフィックス処理エンジンへの搭載や、文字の表示にアウトラインフォントデータを用いるミドルウェアへの搭載が期待できる。
【００１５】
（第１の実施形態）  
第１の実施形態では、ベクトルグラフィックスの形状データと、形状類似度閾値を入力し、構造化されたベクトルグラフィックスの形状データを生成する装置の例を示す。
【００１６】
本実施形態のベクトルグラフィックス形状データ生成装置について図１を参照して説明する。  
本実施形態のベクトルグラフィックス形状データ生成装置は、図１に示すように、入力部１０１、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、形状差評価値算出部１０５、形状探索処理制御部１０６、構造化ベクトルグラフィックス形状データ生成手法選択部１０７、差分形状算出部１０８、出力部１０９、構造化ベクトルグラフィックス形状記録部１１０を備えている。
【００１７】
入力部１０１は、データソースからベクトルグラフィックスの形状データを入力とすると同時に、ベクトルグラフィックス形状データを受け取った旨を形状探索処理制御部１０６に伝える。ベクトルグラフィックス形状データについては後に図３を参照して説明する。ベクトルグラフィックス形状データのベクトルグラフィックス形状については後に図２を参照して説明する。
【００１８】
構造化ベクトルグラフィックス形状格納部１０２は、構造化されたベクトルグラフィックス形状データを格納する。構造化されたベクトルグラフィックス形状データについては後に図４を参照して説明する。
【００１９】
構造化ベクトルグラフィックス形状読み出し部１０３は、構造化ベクトルグラフィックス形状データを特定する形状番号を形状探索処理制御部１０６から入力し、この形状番号に基づき、構造化ベクトルグラフィックス形状格納部１０２から１つの構造化ベクトルグラフィックス形状データを読み出す。
【００２０】
ベクトルグラフィックス形状復元部１０４は、構造化ベクトルグラフィックス形状データを特定する形状番号に基づき構造化ベクトルグラフィックス形状読み出し部１０３から読み出された構造化ベクトルグラフィックス形状データからベクトルグラフィックス形状データを復元する。ベクトルグラフィックス形状復元部１０４の詳細な動作については後に図５を参照して説明する。
【００２１】
形状差評価値算出部１０５は、ベクトルグラフィックス形状復元部１０４によって復元されたベクトルグラフィックス形状データと、入力部１０１で入力されたベクトルグラフィックス形状データとの形状差評価値を算出する。形状差評価値は、２つのベクトルグラフィックス形状データに対応する２つのベクトルグラフィックス形状がどれほど類似しているかを示す指標である。形状評価値が低いほど、２つのベクトルグラフィックス形状は類似している。形状差評価値算出部１０５の詳細な動作については後に図６を参照して説明する。
【００２２】
形状探索処理制御部１０６は、形状差評価値算出部１０５から形状評価値を受け取る。形状探索処理制御部１０６は、構造化ベクトルグラフィックス形状格納部１０２に格納されているそれぞれの構造化ベクトルグラフィックス形状データと、入力部１０１で入力されたベクトルグラフィックス形状データとの形状差評価値を一時的にメモリ（図示せず）に格納する。そして、形状探索処理制御部１０６は、メモリに格納された形状評価値のうちの最も形状が似ていることを示す形状差評価値（最小値を示す）と、この形状差評価値に対応する構造化ベクトルグラフィックス形状データと、を構造化ベクトルグラフィックス形状データ生成手法選択部１０７に渡す。すなわち、形状探索処理制御部１０６は、構造化ベクトルグラフィックス形状格納部１０２に格納されている全ての構造化ベクトルグラフィックス形状データを復元したベクトルグラフィックス形状のうち、入力部１０１で入力されたベクトルグラフィックス形状に最も類似した形状を探索する処理を行う。
【００２３】
構造化ベクトルグラフィックス形状データ生成手法選択部１０７は、形状探索処理制御部１０６によって探索された、最も類似したベクトルグラフィックス形状間の形状差評価値と、予め設定されている形状差評価値閾値とを比較し、この比較結果に基づいて、入力部１０１で入力されたベクトルグラフィック形状データのデータ生成手法を選択する。形状差評価値閾値は、入力部１０１等を介してユーザによって外部から入力されてもよいし、予めベクトルグラフィックス形状データ生成装置ごとに設定されていてもよい。
【００２４】
差分形状算出部１０８は、形状探索処理制御部１０６で算出された形状差評価値に対応する構造化ベクトルグラフィックス形状データ（構造化ベクトルグラフィックス形状格納部１０２に格納されていた形状データのうちの１つのデータ）と、入力部１０１で入力されたベクトルグラフィックス形状データを入力し、構造化ベクトルグラフィックス形状データ生成手法選択部１０７から入力部１０１で入力されたベクトルグラフィックス形状についての差分形状データを算出する。この差分形状データの例は後に図４を参照して説明する。
【００２５】
出力部１０９は、入力部１０１で入力されたベクトルグラフィックス形状データまたは差分形状算出部１０８で算出された差分形状データを構造化ベクトルグラフィックス形状データとして出力する。
【００２６】
構造化ベクトルグラフィックス形状記録部１１０は、出力部１０９で出力された構造化ベクトルグラフィックス形状データを構造化ベクトルグラフィックス形状格納部１０２に記録する。
【００２７】
［ベクトルグラフィックス形状］  
次に、ベクトルグラフィックス形状について図２を参照して説明する。図２は、入力部１０１が入力するベクトルグラフィックス形状データが示すベクトルグラフィックス形状例を示したものである。  
入力部１０１が入力するベクトルグラフィックス形状データが示すベクトルグラフィックス形状は、線分または２次Ｂｅｚｉｅｒ曲線を連結した１つの閉曲線の輪郭を構成要素とする。線分は両端点の２つの頂点によって定義される。曲線は２次Ｂｅｚｉｅｒ制御点である３つの頂点（例えば、Ｐ０、Ｐ１、Ｐ２）によって定義される。ベクトルグラフィックスの形状の頂点の定義方向（図２では、時計の回る向き）に対し、右側に存在する領域、すなわち図２では、２次Ｂｅｚｉｅｒ曲線輪郭の閉曲線で囲まれる領域をベクトルグラフィックス形状の内部と定義する。
【００２８】
［ベクトルグラフィックス形状データ］  
次に、入力部１０１が入力するベクトルグラフィックス形状データの内容の一例について図３を参照して説明する。図３は、図２で示した入力部１０１に入力されるベクトルグラフィックス形状のデータ構成図を示したものである。
【００２９】
形状データは、最初に「アウトライン開始記号」があり、その後、起点となる頂点Ｐ０の座標値が定義される。座標値は（ｘ，ｙ）の要素を持つ２次元座標で表される。ついで、頂点Ｐ０，Ｐ１，Ｐ２を制御点とする２次Ｂｅｉｚｅｒ曲線を示すために、「２次Ｂｅｚｉｅｒ曲線記号」が定義され、頂点Ｐ１，Ｐ２の座標値が定義される。ついで、頂点Ｐ２から頂点Ｐ３までの線分を示すために、「線分記号」が定義され、線分の終点である頂点Ｐ３の座標値が定義される。このように輪郭線を構成する頂点と、その頂点間を結ぶ直線または曲線に関する情報を順に定義してゆき、最後に輪郭線の開始点となる頂点Ｐ６＝Ｐ０まで定義すると、「アウトライン終了記号」を定義し、輪郭線の終端であることを示す。
【００３０】
［構造化ベクトルグラフィックス形状データ］  
次に、例えば、構造化ベクトルグラフィックス形状格納部１０２が格納している構造化ベクトルグラフィックス形状データについて図４を参照して説明する。図４は、構造化ベクトルグラフィックス形状データの構成図を示したものである。  
構造化ベクトルグラフィックス形状データとは、ベクトルグラフィックス形状データを以下に述べるフォーマットに従うように定義したデータ構造である。換言すれば、構造化ベクトルグラフィックス形状データは、ベクトルグラフィックスの形状データを特定のフォーマットに従うように加工したデータである。  
図４の左に示す構造化ベクトルグラフィックス形状データ４０１は、１つの構造化ベクトルグラフィックス形状データにより形状が定義される例である。データの内部構造を以下に説明する。まず、形状特定するための「形状番号Ｓ」が定義される。ついで、頂点の定義方向を反転するか否かの「頂点回転方向Ｃ」が定義される。構造化ベクトルグラフィックス形状データは時計回りに頂点を定義するため、反時計回りに頂点が定義されたベクトルグラフィックス形状データの場合、頂点の定義順序を逆転し、定義順序の逆転を行ったという情報を「頂点回転方向Ｃ」に保持する。ついで、「スケーリング座標値Ｋ」が定義される。構造化ベクトルグラフィックス形状データは頂点座標の定義範囲が０≦ｘ，ｙ≦１の範囲で定義されるようにスケーリングされる。そのためスケーリング前のベクトルグラフィックスの頂点の定義範囲を「スケーリング座標値Ｋ」に保持する。続く「アウトライン開始記号」から「アウトライン終了記号」までの構成は図２の構成と同様である。
【００３１】
図４の右に示す構造化ベクトルグラフィックス形状データ４０２は、参照形状となる構造化ベクトルグラフィックス形状データとの差分によって形状が定義される例である。すなわち、上記の差分形状データである。構造化ベクトルグラフィックス形状データ４０２は、例えば、差分形状算出部１０８で算出される。データの内部構造を以下に説明する。まず、「形状番号Ｓ」は４０１と同一の機能を持つ。ついで、「参照形状番号Ｒ」は参照となる構造化ベクトルグラフィックス形状データの番号を示す。「頂点回転方向Ｃ」、「スケーリング座標値Ｋ」は４０１と同一の機能を持つ。続く「アウトライン開始記号」から「アウトライン終了記号」内部の、頂点の定義方法は４０１と異なる。「参照頂点番号Ｎ０、相対座標Ｖ０」として定義される頂点座標Ｐ’０は以下のように計算される。「参照頂点番号Ｎ０」とは、参照形状番号Ｒで指定される構造化ベクトルグラフィックス形状データ中の頂点番号Ｎ０番目の頂点を示す。「相対座標Ｖ０」とは、Ｎ０番目の頂点座標からＶ０の相対位置に頂点Ｐ’０が存在することを示す。頂点座標の定義方法以外の「アウトライン開始記号」、「線分記号」、「２次Ｂｅｚｉｅｒ曲線記号」、「アウトライン終了記号」の機能は４０１と同一である。
【００３２】
［構造化ベクトルグラフィックス形状データからベクトルグラフィックス形状への復元］  
次に、ベクトルグラフィックス形状復元部１０４の動作の一例について図５を参照して説明する。図５は、ベクトルグラフィックス形状復元部１０４により実現される処理を示した図である。構造化ベクトルグラフィックス形状読み出し部１０３は、指定された形状番号の構造化ベクトルグラフィックス形状データを、構造化ベクトルグラフィックス形状格納部１０２から読み出し、ベクトルグラフィックス形状復元部１０４に渡す。
【００３３】
まず、形状番号Ｓで指定される構造化ベクトルグラフィックス形状データの復元を行うものとし、形状番号Ｓの構造化ベクトルグラフィックス形状データを読み込み、メモリ領域ＶＧ（Ｓ）に代入する（ステップＳ５０１）。ＶＧ（Ｓ）は、形状番号Ｓの構造化ベクトルグラフィックス形状データを示す。ＶＧ（Ｓ）に定義されている参照形状番号Ｒで定義される形状が、さらに参照形状Ｒ２を持つかどうかを確認する（ステップＳ５０２）。もしＲが参照形状Ｒ２を持つ場合、すなわちＶＧ（Ｒ）が４０２の形式のデータである場合には、ＶＧ（Ｒ）について再帰的に図５で示される形状復元処理を行う（ステップＳ５０３）。もしＲが４０１の形式のデータである場合には、ＶＧ（Ｓ）のデータを順次読み進めるため、データ構造のアウトライン開始記号にデータの読み出しポインタを設定する（ステップＳ５０４）。
【００３４】
ＶＧ（Ｓ）のデータ構造の読み出しのループの終端処理として、読み出しポインタがＶＧ（Ｓ）の最後まで到達したかを確認する（ステップＳ５０５）。読み出しポインタがＶＧ（Ｓ）の最後まで到達していない場合には、ＶＧ（Ｓ）から現在ポイントされている参照頂点番号Ｎと相対座標Ｖを読み込む（ステップＳ５０６）。ＶＧ（Ｒ）から参照頂点番号Ｎで参照されている頂点座標Ｐを読み込む（ステップＳ５０７）。頂点座標Ｐ＋相対座標Ｖを出力する（ステップＳ５０８）。読み出しポインタを次の情報へ進める（ステップＳ５０９）。ステップＳ５０５で、読み出しポインタがデータ構造の最後まで到達した場合には形状復元処理を終了する。
【００３５】
［ベクトルグラフィックス形状の比較］  
次に、形状差評価値算出部１０５の動作の一例について図６を参照して説明する。  
まず、入力部１０１で入力されたベクトルグラフィックス形状データをＶＧ１に代入する（ステップＳ６０１）。ついで、ＶＧ１の形状正規化処理を行い、処理結果をＶＧ１Ａに代入する（ステップＳ６０２）。形状正規化処理については後に図７を参照して説明する。ついで、ベクトルグラフィックス形状復元部１０４で復元されたベクトルグラフィックス形状をＶＧ２に代入する（ステップＳ６０３）。ついで、ＶＧ１ＡとＶＧ２との間の差分形状情報Ｄを算出する（ステップＳ６０４）。ついで、差分形状情報Ｄから形状差評価値Ｌを算出し、出力する（ステップＳ６０５）。ステップＳ６０４とステップＳ６０５の処理ついては後に図８、図９、図１０を参照して説明する。
【００３６】
次に、図６のステップＳ６０２で行われる形状正規化処理について図７を参照して説明する。  
まず、ベクトルグラフィックス形状ＶＧ１Ａの頂点の定義順序が反時計回りの場合、頂点の定義順序が時計回りとなるように再定義する（ステップＳ７０１）。ついで、全ての頂点Ｐｉ（Ｘｉ，Ｙｉ）（０≦ｉ＜ｎ）について、座標を調査し、Ｘ座標についての最小値Ｘｍｉｎ，最大値Ｘｍａｘ、Ｙ座標についての最小値Ｙｍｉｎ、最大値Ｘｍａｘを求める（ステップＳ７０２）。ついで、全ての頂点について、以下の式により座標変換を行う。
【００３７】
Ｘａｉ＝（  Ｘｉ  −  Ｘｍｉｎ  ）  ／  （  Ｘｍａｘ  −  Ｘｍｉｎ  ），
Ｙａｉ＝（  Ｙｉ  −  Ｙｍｉｎ  ）  ／  （  Ｙｍａｘ  −  Ｙｍｉｎ  ）
このスケーリングによって変換された頂点を頂点Ｐａｉ（Ｘａｉ，Ｙａｉ）（０≦ｉ＜ｎ）と定義する（ステップＳ７０３）。ステップＳ７０２とステップＳ７０３の処理により、ベクトルグラフィック形状の座標値が０から１の範囲となるように変換される。ついで、全ての頂点Ｐａｉ（Ｘａｉ，Ｙａｉ）について、Ｘａｉ＋Ｙａｉが最小であり、かつ、その中でＹａｉが最小である頂点Ｐａｉを与えるインデックスをｊと定義する（ステップＳ７０４）。頂点Ｐａｊ＝Ｐｂ０，Ｐａ（ｊ＋１）＝Ｐｂ１…となるように、頂点Ｐｂｋ（０≦ｋ＜ｎ）を定義し、新たに定義されたベクトルグラフィックス形状データをＶＧ１Ａに代入する（ステップＳ７０５）。ステップＳ７０４とステップＳ７０５の処理によって、ベクトルグラフィックス形状の最も左上の点から頂点が開始されるように頂点定義順序が変換される。
【００３８】
次に、ステップＳ６０４の差分形状情報Ｄを算出する処理について図８、図９、図１０を参照して説明する。  
差分形状情報とは、２つのベクトルグラフィックス形状において、頂点の定義順序を入れ換えることなく、一方の形状のある頂点に最も近い他方の形状の頂点を対応付け、そして、その２つの頂点間の距離を求めたものである。図８に示す２つのベクトルグラフィック形状を例として説明する。入力形状８０１で示される形状が入力され正規化された形状ＶＧ１Ａであるとし、参照形状８０２で示される形状が参照形状ＶＧ２であるとする。図８に示した形状は単純な形状であるため、頂点Ｐ０は頂点Ｐ’０に対応し、頂点Ｐ５は頂点Ｐ’２に対応していることがわかる。
【００３９】
差分形状情報を求める処理を以下に説明する。まず、入力形状８０１の各頂点が参照形状８０２のどの頂点に最も距離が近いかを算出する。これにはＤＰマッチングという公知の手法を応用する。図９のように参照形状頂点列（Ｐ’０〜Ｐ’４）と入力形状頂点列（Ｐ０〜Ｐ８）との格子で表される配列を定義する。そのうえで、図１０で示される処理を行う。まず、図９の最も左上の頂点組（Ｐ０，Ｐ’０）上にポインタＴを配置する（ステップＳ１００１）。ついで、ポインタＴが最も右下の頂点組に到達したかを確認する（ステップＳ１００２）。もし到達していなければ、ポインタＴが頂点組（Ｐｉ，Ｐ’ｊ）上にある場合、以下の３種類の頂点座標間の距離を求め、最も小さい距離となる頂点組上にポインタを移動する（ステップＳ１００３）。
【００４０】
Ｄ１＝Ｐ（ｉ＋１）Ｐ’ｊ
Ｄ２＝ＰｉＰ’（ｊ＋１）
Ｄ３＝Ｐ（ｉ＋１）Ｐ’（ｊ＋１）
ステップＳ１００２でポインタＴが最も右下の頂点組に到達した場合には、ポインタＴの移動経路情報を出力する（ステップＳ１００４）。図９の黒丸と矢印は、図８の形状について図１０の処理結果を図示したものである。このようにして、図８の入力形状８０１の各頂点に最も距離が近い参照形状８０２上の頂点が求まる。
【００４１】
一方、ステップＳ６０５では、以上の処理で求められた差分形状情報Ｄから、差分形状評価値Ｌを求める。差分形状評価は、対応する頂点間の距離の平均として定義する。すなわち、入力形状の頂点をＰ（ｉ）（０≦ｉ＜ｎ）、Ｐ（ｉ）に対応する参照形状の頂点をＰｒｅｆ（ｉ）（０≦ｉ＜ｎ）とすると、差分形状評価値はＬの式で求められる。
【００４２】
Ｌ＝（Σ（ｉ＝０…ｎ−１）｜Ｐ（ｉ）−Ｐｒｅｆ（ｉ）｜）／ｎ
＜差分形状評価値を、入力形状と参照形状との重畳領域の面積によって求める手法＞  
ステップＳ６０５の処理において、差分形状評価値として入力形状と参照形状の対応頂点間の距離の平均値を用いる代わりに、入力形状と参照形状の重畳領域の面積を用いることも可能である。
【００４３】
［ベクトルグラフィックス形状の探索］  
次に、図１の形状探索処理制御部１０６の動作の一例について図１１を参照して説明する。  
まず、探索処理中に形状差評価値を格納する値ＬＭに初期値を代入する（ステップＳ１１０１）。本実施形態では形状差評価値は値が小さいほど類似度が高いため、ＬＭの初期値は∞とする。ついで、構造化ベクトルグラフィックス形状格納部１０２上で構造化ベクトルグラフィックス形状データを指定するインデックス番号Ｆに初期値を代入する（ステップＳ１１０２）。ついで、構造化ベクトルグラフィックス形状格納部１０２上の全ての構造化ベクトルグラフィックス形状データについて、形状差評価値を算出したかを判定する（ステップＳ１１０３）。もしすべてのデータについて判定していなければ、現在のインデックス番号Ｆで指定される形状データについて、ベクトルグラフィックス形状復元部１０４によりベクトルグラフィックス形状ＶＧ（Ｆ）を得る（ステップＳ１１０４）。ＶＧ（Ｆ）について形状差評価値算出部１０５で形状差評価値Ｌ（Ｆ）を求める（ステップＳ１１０５）。Ｌ（Ｆ）とＬＭの値の大きさを比較する（ステップＳ１１０６）。Ｌ（Ｆ）＜ＬＭであれば、ＬＭにＬ（Ｆ）を代入する（ステップＳ１１０７）。構造化ベクトルグラフィックス形状格納部１０２上の次の形状について調査するために、インデックスＦを進める（ステップＳ１１０８）。構造化ベクトルグラフィックス形状格納部１０２上の全てのベクトルグラフィックス形状について評価を行った場合には、形状差評価値の最小値ＬＭと、ＬＭを与えるＦ、ＶＧ（Ｆ）を出力する（ステップＳ１１０９）。
【００４４】
＜参照回数の上限値を指定する手法＞  
次に、ベクトルグラフィックス形状復元部１０４での形状の参照回数に上限値を設定して、形状の復元処理に要する処理時間を抑制することについて説明する。  
ある形状を表現する構造化ベクトルグラフィックス形状データにおいて、図４の４０２で示される参照形状番号を含む形式の構造化ベクトルグラフィックス形状データの参照回数が多いと、図５で示される形状復元処理での再帰処理の回数が増加し、形状の復元処理に要する処理時間が増大してしまう。
【００４５】
形状の復元処理の要する処理時間の増大を防ぐためには、参照回数の上限値ＲＭを形状探索処理制御部１０６に入力し、ベクトルグラフィックス形状復元部１０４においてあるベクトルグラフィックス形状復元処理を行う場合に、その形状の参照回数がＲＭ以上であるには形状の復元を行わず、形状差評価値算出部１０５の形状差評価値算出処理における比較対象からはずす。これにより、参照回数が上限値以上の形状が参照形状となることはなくなり、構造化ベクトルグラフィックス形状データの参照回数を一定値以内に抑えることができる。
【００４６】
［構造化ベクトルグラフィックス形状データ生成手法の選択と出力］  
次に、構造化ベクトルグラフィックス形状データ生成手法の選択と構造化ベクトルグラフィックス形状データの出力について説明する。  
構造化ベクトルグラフィックス形状データ生成手法選択部１０７では、入力された形状差評価値閾値ＬＴと、形状探索処理制御部１０６によって求められた、入力部１０１によって入力されたベクトルグラフィックス形状に最も類似する構造化ベクトルグラフィックス形状格納部１０２に格納されている構造化ベクトルグラフィックス形状との形状差評価値ＬＭの比較を行う。
【００４７】
ＬＴ＜ＬＭである場合には、入力された形状に十分近い形状が構造化ベクトルグラフィックス形状格納部１０２に格納されていないものとし、入力形状を図４の４０１のデータ構造で出力部１０９より出力する。一方、ＬＴ≧ＬＭである場合には、差分形状算出部１０８において差分形状情報Ｄを求め、差分形状情報Ｄを図４の４０２のデータ構造で出力部１０９より出力する。差分形状算出部１０８の差分形状算出処理は、ステップＳ６０４における処理と同一である。  
最後に、出力部１０９によって出力された構造化ベクトルグラフィックス形状データは、構造化ベクトルグラフィックス形状記録部１１０により、構造化ベクトルグラフィックス形状格納部１０２に格納される。
【００４８】
＜対応頂点間の距離の最大値を指定する手法＞  
形状差評価値算出部１０５がステップＳ６０５で差分形状評価値として入力形状と参照形状の対応頂点間の距離の平均値を用いる場合に、対応頂点間の距離の最大値を指定する手法について説明する。
【００４９】
上記では、ステップＳ６０５での差分形状評価値Ｌを、対応する頂点組間の距離の平均として定義しているが、たとえ差分形状評価値Ｌが十分小さい場合でも、例えばある１つの頂点組間の距離のみが非常に大きい場合には、この頂点間の相対座標を十分精度よく表現できない可能性がある。
【００５０】
この問題を防ぐ手法として、対応頂点間の距離の最大値ＤＭａｘを形状差評価値算出部１０５に入力し、対応頂点組間の距離が１つでもＤＭａｘを上回る場合には、形状差評価値算出部１０５の形状差評価値算出処理における比較対象からはずす処理を追加してもよい。これにより、対応頂点間の距離は必ずＤＭａｘ以内に収まるため、距離ＤＭａｘ以内の距離を十分精度よく表現できる数値形式を相対距離の数値形式として用いることが可能となる。
【００５１】
｛第１の実施形態の効果｝  
差分形状算出部１０８において生成される構造化ベクトルグラフィックス形状データ中の相対座標値（２次元ベクトル）は、入力形状と参照形状の形状差が小さいほど、ベクトルグラフィックスの頂点の定義領域１辺の長さ１に対し、小さい値となる。そのため、形状差評価値閾値ＬＴを適切な値に設定することで、例えば構造化ベクトルグラフィックス形状データ４０１のデータ構造において頂点座標の値を３２ビット浮動小数点で表すのに対し、構造化ベクトルグラフィックス形状データ４０２の相対座標値は１６ビット浮動小数点で表しても十分精度よくベクトルグラフィックスの形状を表現することが可能となる。  
したがって、類似したベクトルグラフィックス形状が多数存在する場合、構造化ベクトルグラフィックス形状データ４０２のデータ構造でベクトルグラフィックス形状を格納することで、格納に必要となるデータ領域のサイズを小さく抑えることが可能となる。
【００５２】
（第２の実施形態）  
第２の実施形態では、アウトラインフォントデータと、形状類似度閾値を入力し、構造化されたベクトルグラフィックスの形状データおよびアウトラインフォントデータの輪郭情報を記録する装置の例を示す。
【００５３】
本実施形態のベクトルグラフィックス形状データ生成装置について図１２を参照して説明する。以下、既に説明した装置部分と同様なものは同一の番号を付してその説明を省略する。  
本実施形態のベクトルグラフィックス形状データ生成装置は、入力部１２０１、輪郭分離部１２０２、アウトラインフォント輪郭情報記録部１２０３、アウトラインフォント輪郭情報格納部１２０４、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、形状差評価値算出部１０５、形状探索処理制御部１０６、構造化ベクトルグラフィックス形状データ生成手法選択部１０７、差分形状算出部１０８、出力部１０９を備えている。
【００５４】
入力部１２０１は、データソースからアウトラインフォントデータを入力とすると同時に、アウトラインフォントデータを受け取った旨を形状探索処理制御部１０６に伝える。アウトラインフォント形状については後に図１３を参照して説明する。
【００５５】
輪郭分離部１２０２は、入力部１２０１で入力されたアウトラインフォントデータを１つずつの輪郭に分離する。輪郭分離部１２０２は、分離された１つの輪郭を構成するデータ（輪郭情報）を形状差評価値算出部１０５に出力する。輪郭情報は、ベクトルグラフィックス形状データである。また、輪郭分離部１２０２は、形状番号と輪郭番号をアウトラインフォント輪郭情報記録部１２０３に出力する。入力部１２０１で入力されたアウトラインフォントデータは、輪郭分離部１２０２においてアウトラインフォントデータ中の輪郭１つずつに分離され、形状差評価値算出部１０５に入力される。また、輪郭分離部１２０２は、図１２の出力部１０９で出力される１つの輪郭についての構造化ベクトルグラフィックス形状データと、入力部１２０１で入力されたアウトラインフォントデータ中の輪郭情報を対応付けるため、アウトラインフォント中の輪郭の通し番号をアウトラインフォント輪郭情報記録部１２０３に渡す。
【００５６】
アウトラインフォント輪郭情報記録部１２０３は、輪郭分離部１２０２から出力された輪郭情報と出力部１０９から出力された構造化ベクトルグラフィックス形状データとを対応付ける情報をアウトラインフォント輪郭情報格納部１２０４に記録する。アウトラインフォント輪郭情報記録部１２０３は、輪郭の通し番号と、出力部１０９から出力された構造化ベクトルグラフィックス形状データを対応付け、アウトラインフォント輪郭情報格納部１２０４に記録する。
【００５７】
アウトラインフォント輪郭情報格納部１２０４は、上記輪郭情報と、構造化ベクトルグラフィックス形状データとを対応付ける情報を格納する。
【００５８】
次に、アウトラインフォント形状の一例について図１３を参照して説明する。図１３は、入力部１２０１に入力されるアウトラインフォント形状の例を示したものである。入力部１２０１に入力されるアウトラインフォント形状は、複数のベクトルグラフィックス形状から構成される。
【００５９】
次に、図１３のアウトラインフォント形状のデータの内容の一例について図１４を参照して説明する。図１４は、図１３で示した入力部１２０１に入力されるアウトラインフォント形状のデータ構成図を示したものである。アウトラインフォントデータは、図３におけるベクトルグラフィックス形状における「アウトライン開始記号」から「アウトライン終了記号」までの情報を複数保持できる。  
次に、アウトラインフォント輪郭情報の内容について図１５を参照して説明する。図１５は、アウトライン輪郭情報のデータ構成図を示したものである。アウトライン輪郭情報内には、アウトラインフォントの輪郭ごとに輪郭通し番号と対応する構造化ベクトルグラフィックス形状データの形状番号が定義されている。
【００６０】
｛第２の実施形態の効果｝  
一般にアウトラインフォント形状は複数の輪郭によって構成されている。第１の実施形態では、単一の輪郭を持つベクトルグラフィックス形状を処理対象とするものである。本実施形態では複数の輪郭から構成されるアウトラインフォント形状を１つずつの輪郭に分離することで、第１の実施形態のベクトルグラフィックス形状データ生成装置における処理対象をアウトラインフォントデータに拡張することができる。
【００６１】
（第３の実施形態）  
第３の実施形態では、明朝体や丸ゴシック、ボールド体やイタリック体などのフォント種別情報と文字コード、および形状類似度閾値を入力し、構造化されたベクトルグラフィックスの形状データおよびアウトラインフォントデータの輪郭情報を記録する装置の例を示す。
【００６２】
本実施形態のベクトルグラフィックス形状データ生成装置について図１６を参照して説明する。  
本実施形態のベクトルグラフィックス形状データ生成装置は、図１６に示すように、入力部１６０１、アウトラインフォントデータ格納部１６０２、アウトラインフォントデータ読み出し部１６０３、形状探索処理制御部１６０４、アウトラインフォント輪郭情報記録部１６０５、アウトラインフォント輪郭情報格納部１６０６、アウトラインフォント輪郭情報読み出し部１６０７、輪郭分離部１６０８、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、形状差評価値算出部１０５、構造化ベクトルグラフィックス形状データ生成手法選択部１０７、差分形状算出部１０８、出力部１０９、構造化ベクトルグラフィックス形状記録部１１０を備えている。
【００６３】
入力部１６０１は、データソースからフォント種別情報と文字コードを入力すると同時に、ベクトルグラフィックス形状データを受け取った旨を形状探索処理制御部１６０４に伝える。
【００６４】
アウトラインフォントデータ格納部１６０２は、フォント種別情報と文字コードとに対応づけてあるアウトラインフォントデータとを格納する。
【００６５】
アウトラインフォントデータ読み出し部１６０３は、入力部１６０１に入力されたフォント種別情報と文字コードとに対応するアウトラインフォントデータをアウトラインフォントデータ格納部１６０２から読み出す。アウトラインフォントデータ読み出し部１６０３は、読み出したアウトラインフォントデータと、これに対応するフォント種別情報と文字コードとを輪郭分離部１６０８に渡す。
【００６６】
輪郭分離部１６０８は、アウトラインフォントデータ読み出し部１６０３から受け取ったアウトラインフォントデータを１つずつの輪郭に分離する。輪郭分離部１６０８は、分離された１つの輪郭を構成するデータ（輪郭情報）を形状差評価値算出部１０５に出力する。輪郭情報は、ベクトルグラフィックス形状データに対応する。また、輪郭分離部１６０８は、フォント種別情報と、文字コードとをアウトラインフォント輪郭情報記録部１６０５に出力する。
【００６７】
形状探索処理制御部１６０４は、構造化ベクトルグラフィックス形状格納部１０２に格納されている構造化ベクトルグラフィックス形状データのうち、フォント種別情報と文字コードとを用いて比較候補の絞込みを行った一部のデータを復元したベクトルグラフィックス形状のうち、輪郭分離部１６０８から出力されたベクトルグラフィックス形状に最も類似した形状を探索する処理を行う。形状探索処理制御部１６０４は、入力部１６０１に入力されたフォント種別情報および文字コードに対応するアウトラインフォント輪郭情報の集合ＣＡをアウトラインフォント輪郭情報読み出し部１６０７から得る。例えば、丸ゴシック体の「あ」に対応する文字コードが入力された場合に、予めアウトラインフォント輪郭情報格納部１６０６に角ゴシック体の「あ」に対応する文字コードの輪郭情報が格納されている場合には、角ゴシック体の「あ」の輪郭情報を読み出す。形状探索処理制御部１６０４は、輪郭情報の集合ＣＡに含まれる形状番号を優先的に探索する。
【００６８】
アウトラインフォント輪郭情報記録部１６０５は、アウトラインフォント輪郭情報格納部１６０６に輪郭分離部１６０８から出力されたフォント種別情報および文字コードと、出力部１０９から出力された構造化ベクトルグラフィックス形状データとを対応付けるアウトラインフォント輪郭情報データを記録する。
【００６９】
アウトラインフォント輪郭情報格納部１６０６は、輪郭分離部１６０８から出力されたフォント種別情報および文字コードと出力部１０９から出力された構造化ベクトルグラフィックス形状データとを対応付けるアウトラインフォント輪郭情報データを格納する。この輪郭情報データは後に図１７を参照して説明する。
【００７０】
アウトラインフォント輪郭情報読み出し部１６０７は、指定されたフォント種別および文字コードに対応するアウトラインフォント輪郭情報をアウトラインフォント輪郭情報格納部１６０６から読み出す。
【００７１】
第２の実施形態のベクトルグラフィックス形状データ生成装置が外部からアウトラインフォントデータを入力していたのに対し、第３の実施形態のベクトルグラフィックス形状データ生成装置では、装置内部にアウトラインフォントデータのアウトラインフォントデータ格納部１６０２と、入力部１６０１から入力されたフォント種別および文字コードに対応するアウトラインフォントデータをアウトラインフォントデータ格納部１６０２から読み出すアウトラインフォントデータ読み出し部１６０３を備えている点が異なる。
【００７２】
また、第３の実施形態のベクトルグラフィックス形状データ生成装置では、第２の実施形態と比較して、アウトラインフォント輪郭情報格納部１６０６に格納される輪郭情報に対しても、フォント種別および文字コードの情報を付加している。アウトラインフォント輪郭情報格納部１６０６に格納される輪郭情報のデータ構成を図１７に示す。
【００７３】
｛第３の実施形態の効果｝  
フォントの種別が「明朝体、ゴシック体」と異なっても、文字コードが一致していれば文字の類似度は高い。本実施形態では、同一の文字コードであるアウトラインフォントの輪郭情報に含まれる構造化ベクトルグラフィックス形状データを優先的に探索することで、形状探索処理制御部１６０４において形状探索数が少ない場合でも、十分類似度が高いベクトルグラフィックス形状データを探索することが可能となる。
【００７４】
（第４の実施形態）  
第４の実施形態では、第３の実施形態の構成に加え、文字の部分構造を参照することにより、部分構造が共通である文字のアウトラインフォントの輪郭情報に含まれる構造化ベクトルグラフィックス形状データを優先的に探索する類似度が高いベクトルグラフィックス形状データの形状データおよびアウトラインフォントデータの輪郭情報を記録する装置の例を示す。
【００７５】
本実施形態のベクトルグラフィックス形状データ生成装置について図１８を参照して説明する。  
本実施形態のベクトルグラフィックス形状データ生成装置は、図１８に示すように、入力部１６０１、アウトラインフォントデータ格納部１６０２、アウトラインフォントデータ読み出し部１６０３、輪郭分離部１６０８、文字構造情報読み出し部１８０１、文字構造情報格納部１８０２、形状検索処理制御部１８０３、アウトラインフォント輪郭情報記録部１８０４、アウトラインフォント輪郭情報格納部１８０５、アウトラインフォント輪郭情報読み出し部１８０６、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、形状差評価値算出部１０５、構造化ベクトルグラフィックス形状データ生成手法選択部１０７、差分形状算出部１０８、出力部１０９、構造化ベクトルグラフィックス形状記録部１１０を備えている。
【００７６】
文字構造情報読み出し部１８０１は、文字構造情報格納部１８０２から入力部１６０１に入力されたフォント種別および文字コードに対応する文字構造情報を読み出す。文字構造情報とは、フォント種別および文字コードによって特定される文字の「へん」、「つくり」の情報である。文字構造情報は、例えば、「板」という文字は「木」と「反」という文字から構成されているという情報を示す。
【００７７】
文字構造情報格納部１８０２は、フォント種別および文字コードによって特定される文字の部分情報を格納する。部分情報は、例えば、文字の左側部分と、文字の右側部分である。文字構造情報格納部１８０２は、例えば、フォント種別および文字コードによって特定される漢字の「偏（へん）」、「旁（つくり）」の情報を格納する。
【００７８】
形状検索処理制御部１８０３は、構造化ベクトルグラフィックス形状格納部１０２に格納されている構造化ベクトルグラフィックス形状データのうち、文字構造情報読み出し部１８０１から受け取った、フォント種別情報、文字コード、および文字構造情報を用いて、比較候補の絞込みを行った一部のデータを復元したベクトルグラフィックス形状のうち、輪郭分離部１６０８から出力されたベクトルグラフィックス形状に最も類似した形状を探索する処理を行う。
【００７９】
アウトラインフォント輪郭情報記録部１８０４は、輪郭分離部１６０８から受け取った形状番号、輪郭番号、フォント種別情報、および文字コードと、文字構造情報読み出し部１８０１から受け取った文字構造情報と、出力部１０９から受け取った構造化ベクトルグラフィックス形状データとを対応付けるアウトラインフォント輪郭情報を、アウトラインフォント輪郭情報格納部１８０５に記録する。
【００８０】
アウトラインフォント輪郭情報格納部１８０５は、アウトラインフォント輪郭情報記録部１８０４でのアウトラインフォント輪郭情報を格納する。アウトラインフォント輪郭情報格納部１８０５に格納されるアウトラインフォント輪郭情報のデータ構成の一例を図１９に示す。図１９に示すように、本実施形態のアウトラインフォント輪郭情報は、フォント種別、文字コード、文字構造情報、輪郭番号、形状番号からなる。
【００８１】
アウトラインフォント輪郭情報読み出し部１８０６は、指定された、フォント種別および文字コードに対応するアウトラインフォント輪郭情報をアウトラインフォント輪郭情報格納部１８０５から読み出す。
【００８２】
第３の実施形態のベクトルグラフィックス形状データ生成装置が文字コードを利用して類似したベクトルグラフィックス形状を優先的に探索していたのに対し、第４の実施形態のベクトルグラフィックス形状データ生成装置は、文字コードに加え、装置内部に文字構造情報を格納する文字構造情報格納部１８０２と、フォント種別および文字コードに対応した文字構造情報読み出し部１８０１とを備えている点が異なる。また、第４の実施形態のベクトルグラフィックス形状データ生成装置では、アウトラインフォント輪郭情報格納部１８０５に格納される輪郭情報に対し、輪郭番号および形状番号に加えて、フォント種別、文字コード、文字構造情報を付加している点も異なる。
【００８３】
形状検索処理制御部１８０３では、入力部１６０１に入力されたフォント種別情報、文字コードおよび文字構造情報に対応するアウトラインフォント輪郭情報の集合ＣＡをアウトラインフォント輪郭情報読み出し部１８０６から得る。例えば「板」の文字に対応する文字コードが入力された場合、予めアウトラインフォント輪郭情報格納部１８０５に「机」の字に対応する文字コードのアウトラインフォント輪郭情報が格納されている場合には、アウトラインフォント輪郭情報読み出し部１８０６は、「板」も「机」も「木」という部分構造を持つため、「机」の輪郭情報を読み出す。「机」以外の字でも「木」および「反」の部分構造を持つ字（例えば「坂」、「阪」の字）の輪郭情報を読み出す。形状検索処理制御部１８０３では、構造化ベクトルグラフィックス形状読み出し部１０３によって構造化ベクトルグラフィックス形状を読み出す際に、輪郭情報の集合ＣＡに含まれる形状番号を優先的に読み出す。
【００８４】
｛第４の実施形態の効果｝  
「板」と「机」はどちらも「木へん」であるなど、漢字は部分構造をもつ。「板」の「木」の部分形状と「机」の「木」の部分構造は形状の類似度が高い。本実施形態では、文字構造情報格納部１８０２を用い、部分構造が共通である文字のアウトラインフォントの輪郭情報に含まれる構造化ベクトルグラフィックス形状データを優先的に探索することで、形状検索処理制御部１８０３において形状探索数が少ない場合でも、十分類似度が高いベクトルグラフィックス形状データを探索することを実現することができる。
【００８５】
（第５の実施形態）  
本実施形態以降では、構造化ベクトルグラフィックス形状データの描画装置について説明する。本実施形態では構造化ベクトルグラフィックス形状番号を入力し、入力された形状番号に対応する構造化ベクトルグラフィックスの描画結果を出力する装置の例を示す。
【００８６】
本実施形態のベクトルグラフィックス描画装置は、図２０に示すように、入力部２００１、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、ベクトルグラフィックス形状描画前処理部２００２、ベクトルグラフィックス形状描画部２００３、提示部２００４を備えている。
【００８７】
入力部２００１は、データソースから構造化ベクトルグラフィックス形状データを特定する形状番号を受け付け、この形状番号を構造化ベクトルグラフィックス形状読み出し部１０３に渡す。  
ベクトルグラフィックス形状描画前処理部２００２は、ベクトルグラフィックス形状復元部１０４で復元されたベクトルグラフィックスを描画する前の処理を行う。
【００８８】
ベクトルグラフィックス形状描画部２００３は、ベクトルグラフィックス形状描画前処理部２００２で前処理されたベクトルグラフィックス形状を、予め設定されている描画パラメータに基づき描画処理を行う。描画パラメータは、入力部２００１等を介してユーザによって外部から入力されてもよいし、予めベクトルグラフィックス描画装置ごとに設定されていてもよい。描画パラメータは、描画形式を決定する数値であり、例えば、描画する大きさ、色情報を決定するための数値である。ベクトルグラフィックス形状描画部２００３の処理は、例えば、上記の“C. Loop and J. Blinn, “Resolution Independent Curve Rendering using Programmable Graphics Hardware,” In Proc. of ACM SIGGRAPH2005, pp.1000-1009.”に開示されている手法を使用する。
【００８９】
提示部２００４は、ベクトルグラフィックス形状描画部２００３による描画結果を画像データとして提示する。
【００９０】
［描画処理］  
以下、ベクトルグラフィックス描画装置の処理の詳細について説明する。  
入力部２００１に入力された構造化ベクトルグラフィックス形状番号に基づき、構造化ベクトルグラフィックス形状格納部１０２に該当する構造化ベクトルグラフィックス形状データが構造化ベクトルグラフィックス形状読み出し部１０３によって読み出され、ベクトルグラフィックス形状復元部１０４によって復元される処理は、第１の実施形態での処理と同様である。
【００９１】
次に、ベクトルグラフィックス形状描画前処理部２００２の処理内容を説明する。  
ベクトルグラフィックス形状復元部１０４によって復元されたベクトルグラフィックス形状は、図７のステップＳ７０１と同様の処理により頂点の定義順序が時計回りに統一されている。そのため、構造化ベクトルグラフィックス形状データ内の「頂点回転方向Ｃ」を参照し、元のベクトルグラフィックス形状データが反時計回りに定義されていた場合は、反時計回りの順になるように頂点の定義順序を変換する。
【００９２】
また、頂点座標の定義範囲が０≦ｘ，ｙ≦１の範囲で定義されるようにスケーリングされる。そのためスケーリング前のベクトルグラフィックスの頂点の定義範囲に戻すために、構造化ベクトルグラフィックス形状データ内の「スケーリング座標値Ｋ」を用いて、以下の式により各頂点（Ｘａｉ，Ｙａｉ）（０≦ｉ＜ｎ）、を（Ｘｉ，Ｙｉ）に変換する。
【００９３】
Ｘｉ＝Ｘａｉ×（Ｋ（Ｘｍａｘ）−Ｋ（Ｘｍｉｎ））＋Ｋ（Ｘｍｉｎ），
Ｙｉ＝Ｙａｉ×（Ｋ（Ｙｍａｘ）−Ｋ（Ｙｍｉｎ））＋Ｋ（Ｙｍｉｎ）
描画結果は提示部２００４によって画像データとして出力される。
【００９４】
｛第５の実施形態の効果｝  
第１の実施形態の処理によって構造化ベクトルグラフィックス形状格納部１０２に格納された構造化ベクトルグラフィックス形状は形状番号Ｓによって指定することが可能である。本実施形態で示したベクトルグラフィックス描画装置は、形状番号Ｓを入力し、対応するベクトルグラフィックス形状の描画結果を画像データとして出力することができる。
【００９５】
（第６の実施形態）  
本実施形態ではアウトラインフォント番号を入力し、入力されたアウトラインフォント番号に対応する構造化ベクトルグラフィックスの描画結果を出力する装置の例を示す。
【００９６】
本実施形態のベクトルグラフィックス描画装置は、図２１に示すように、入力部２１０１、アウトラインフォント輪郭情報読み出し部２１０２、アウトラインフォント輪郭情報格納部１２０４、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、ベクトルグラフィックス形状描画前処理部２００２、ベクトルグラフィックス形状描画部２００３、提示部２００４を備えている。
【００９７】
入力部２１０１は、データソースからアウトラインフォント番号を入力し、この番号をアウトラインフォント輪郭情報読み出し部２１０２に渡す。  
アウトラインフォント輪郭情報読み出し部２１０２は、入力部２１０１で入力されたアウトラインフォント番号に対応するアウトラインフォント輪郭情報を、アウトラインフォント輪郭情報格納部１２０４から読み出す。
【００９８】
［描画処理］  
以下、ベクトルグラフィックス描画装置の処理の詳細について説明する。  
入力部２１０１に入力されたアウトラインフォント番号に対応するアウトラインフォント輪郭情報が、アウトラインフォント輪郭情報格納部１２０４からアウトラインフォント輪郭情報読み出し部２１０２によって読み出される。アウトラインフォント輪郭情報には、複数の輪郭が含まれるため、図２１の構造化ベクトルグラフィックス形状読み出し部１０３からベクトルグラフィックス形状描画前処理部２００２までは、それぞれの輪郭について処理が行われる。
【００９９】
アウトラインフォント輪郭情報に含まれる各輪郭について、構造化ベクトルグラフィックス形状格納部１０２中の該当する構造化ベクトルグラフィックス形状データが構造化ベクトルグラフィックス形状読み出し部１０３によって読み出され、ベクトルグラフィックス形状復元部１０４によって復元される処理、および、ベクトルグラフィックス形状描画前処理部２００２における処理は、第５の実施形態と同様である。
【０１００】
｛第６の実施形態の効果｝  
第２の実施形態の処理によってアウトラインフォント輪郭情報格納部１２０４に格納されたアウトラインフォント輪郭情報は、アウトラインフォント番号Ｆによって指定することが可能である。本実施形態で示した描画装置は、アウトラインフォント番号Ｆを入力し、対応するベクトルグラフィックス形状の描画結果を画像データとして出力することができる。
【０１０１】
（第７の実施形態）  
本実施形態ではフォント種別および文字コードを入力し、入力されたフォント種別および文字コードに対応する構造化ベクトルグラフィックスの描画結果を出力する装置の例を示す。
【０１０２】
本実施形態のベクトルグラフィックス描画装置は、図２２に示すように、入力部１６０１、アウトラインフォント輪郭情報格納部１６０６、アウトラインフォント輪郭情報読み出し部１６０７、構造化ベクトルグラフィックス形状格納部１０２、構造化ベクトルグラフィックス形状読み出し部１０３、ベクトルグラフィックス形状復元部１０４、ベクトルグラフィックス形状描画前処理部２００２、ベクトルグラフィックス形状描画部２００３、提示部２００４を備えている。
【０１０３】
［描画処理］  
以下、ベクトルグラフィックス描画装置の処理の詳細について説明する。  
入力部１６０１に入力されたフォント種別および文字コードに対応するアウトラインフォント輪郭情報が、アウトラインフォント輪郭情報格納部１６０６からアウトラインフォント輪郭情報読み出し部１６０７によって読み出される。アウトラインフォント輪郭情報には、複数の輪郭が含まれるため、図２２の構造化ベクトルグラフィックス形状読み出し部１０３からベクトルグラフィックス形状描画前処理部２００２までは、それぞれの輪郭について処理が行われる。
【０１０４】
アウトラインフォント輪郭情報に含まれる各輪郭について、構造化ベクトルグラフィックス形状格納部１０２中の該当する構造化ベクトルグラフィックス形状データが構造化ベクトルグラフィックス形状読み出し部１０３によって読み出され、ベクトルグラフィックス形状復元部１０４によって復元される処理、およびベクトルグラフィックス形状描画前処理部２００２における処理は、第５の実施形態と同様である。
【０１０５】
｛第７の実施形態の効果｝  
第３の実施形態または第４の実施形態の処理によってアウトラインフォント輪郭情報格納部１６０６に格納されたアウトラインフォント輪郭情報は、フォント種別および文字コードによって指定することが可能である。本実施形態で示した装置は、フォント種別および文字コードを入力し、対応するベクトルグラフィックス形状の描画結果の画像データとして出力することができる。
【０１０６】
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した実施形態のベクトルグラフィックス形状データ生成装置および描画装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フレキシブルディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ±Ｒ、ＤＶＤ±ＲＷなど）、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をＣＰＵで実行させれば、上述した実施形態のベクトルグラフィックス形状データ生成装置および描画装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。  
また、記憶媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーションシステム）や、データベース管理ソフト、ネットワーク等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行してもよい。  
さらに、本願発明における記憶媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、ＬＡＮやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。  
また、記憶媒体は１つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記憶媒体に含まれ、媒体の構成は何れの構成であってもよい。
【０１０７】
なお、本願発明におけるコンピュータまたは組み込みシステムは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。  
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
【０１０８】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【０１０９】
【図１】本発明の第１の実施形態に係るベクトルグラフィックス形状データ生成装置のブロック図。
【図２】ベクトルグラフィックス形状の一例を示す図。
【図３】ベクトルグラフィックス形状データの一例を示す図。
【図４】構造化ベクトルグラフィックス形状データの一例を示す図。
【図５】図１のベクトルグラフィックス形状復元部の動作の一例を示すフローチャート。
【図６】図１の形状差評価値算出部の動作の一例を示すフローチャート。
【図７】図６のステップＳ６０２の形状正規化処理の一例を示すフローチャート。
【図８】ベクトルグラフィックス形状の入力形状の一例と参照形状の一例を示すフローチャート。
【図９】図８の形状に入力形状と参照形状に対応するＤＰマッチングを示す図。
【図１０】ＤＰマッチングの処理の一例を示すフローチャート。
【図１１】図１の形状探索処理制御部１０６の動作の一例を示すフローチャート。
【図１２】本発明の第２の実施形態に係るベクトルグラフィックス形状データ生成装置のブロック図。
【図１３】アウトラインフォント形状の一例を示す図。
【図１４】アウトラインフォント形状データの一例を示す図。
【図１５】第２の実施形態でのアウトラインフォント輪郭情報データの一例を示す図。
【図１６】本発明の第３の実施形態に係るベクトルグラフィックス形状データ生成装置のブロック図。
【図１７】第３の実施形態でのアウトラインフォント輪郭情報データの一例を示す図。
【図１８】本発明の第４の実施形態に係るベクトルグラフィックス形状データ生成装置のブロック図。
【図１９】第４の実施形態でのアウトラインフォント輪郭情報データの一例を示す図。
【図２０】本発明の第５の実施形態に係る描画装置のブロック図。
【図２１】本発明の第６の実施形態に係る描画装置のブロック図。
【図２２】本発明の第７の実施形態に係る描画装置のブロック図。
【符号の説明】
【０１１０】
１０１、１２０１、１６０１、２００１、２１０１…入力部、１０２…構造化ベクトルグラフィックス形状格納部、１０３…構造化ベクトルグラフィックス形状読み出し部、１０４…ベクトルグラフィックス形状復元部、１０５…形状差評価値算出部、１０６、１６０４、１８０３…形状探索処理制御部、１０７…構造化ベクトルグラフィックス形状データ生成手法選択部、１０８…差分形状算出部、１０９…出力部、１１０…構造化ベクトルグラフィックス形状記録部、４０１、４０２…構造化ベクトルグラフィックス形状データ、８０１…入力形状、８０２…参照形状、１２０２、１６０８…輪郭分離部、１２０３、１６０５、１８０４…アウトラインフォント輪郭情報記録部、１２０４、１６０６、１８０５…アウトラインフォント輪郭情報格納部、１６０２…アウトラインフォントデータ格納部、１６０３…アウトラインフォントデータ読み出し部、１６０７、１８０６、２１０２…アウトラインフォント輪郭情報読み出し部、１８０１…文字構造情報読み出し部、１８０２…文字構造情報格納部、２００２…ベクトルグラフィックス形状描画前処理部、２００３…ベクトルグラフィックス形状描画部、２００４…提示部。
【図１】
2008084188.tif 000003
【図２】
2008084188.tif 000004
【図３】
2008084188.tif 000005
【図４】
2008084188.tif 000006
【図５】
2008084188.tif 000007
【図６】
2008084188.tif 000008
【図７】
2008084188.tif 000009
【図８】
2008084188.tif 000010
【図９】
2008084188.tif 000011
【図１０】
2008084188.tif 000012
【図１１】
2008084188.tif 000013
【図１２】
2008084188.tif 000014
【図１３】
2008084188.tif 000015
【図１４】
2008084188.tif 000016
【図１５】
2008084188.tif 000017
【図１６】
2008084188.tif 000018
【図１７】
2008084188.tif 000019
【図１８】
2008084188.tif 000020
【図１９】
2008084188.tif 000021
【図２０】
2008084188.tif 000022
【図２１】
2008084188.tif 000023
【図２２】
2008084188.tif 000024