【手続補正書】
【提出日】平成16年11月11日(2004.11.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】請求項６
【補正方法】変更
【補正の内容】
【請求項６】
フォントの構造体であって、
（１）文字基本情報と書体変形情報により文字骨格を生成する手順は、
１）文字基本情報から中心ベクトルからなる文字骨格を生成する、
２）文字骨格の中心線ベクトルの点座標を書体変形情報の移動情報により移動する、
（２）書体ウェイト変形情報により文字骨格を変形する手順は、
１）文字骨格の中心線ベクトルの点座標を書体ウェイト変形情報の中心線ベクト
ル変形情報により移動する、
２）その際、中心線ベクトルの太さ情報を太さ情報を元に変更する、
（３）文字骨格と書体部品情報により文字を組み立てる手順は、
文字骨格の中心線ベクトルと部品太さ情報を使用して、対応する部品を書体部品情報から取り出し変形して配置する、
（４）書体部首情報により部品の結合部分を補正する手順は、
配置された部品同士を書体部首情報の部品結合情報によって結合し、文字を完成させる、
（５）部品から塗潰し用ペアベクトルを生成する手順は、
完成された文字から横方向で塗り潰すために中心線ベクトルの点を基準点とする塗潰し開始ベクトルと塗潰し終了ベクトルを生成する、
（６）塗潰し用ペアベクトルを処理して塗り潰された文字を生成する手順は、
塗潰し開始ベクトルを開始点として、塗潰し終了ベクトルを終了点とする線分を
描画することによって塗り潰された書体を生成する、
ことを特徴とする筆順等の情報を持ったインテリジェントフォントの描画方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】発明の詳細な説明
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、ワープロ専用機やワープロソフトに使用されている書体形式であるフォントに関するものである。
【０００２】
【従来の技術】
従来、ワープロ専用機やワープロソフトに使用されている書体形式は、ドットフォントが実用に共されている。
実用のドットフォントは、拡大するとギザギザが目立った文字になるという重大な欠点があった。この状態を図２（ａ）に示す。
【０００３】
この改善策として、トゥルータイプフォントに代表されるアウトラインフォントが開発された。このアウトラインフォントは、ドットフォントに比較すると、拡大してもギザギザがなくなり、なめらかな表現になるので、現在、アウトラインフォントが主流になってきている。
【０００４】
しかし、アウトラインフォントは、文字詰め等に頻繁に利用されるフォントの長体平体化により、とりわけ拡大すると縦棒と横棒のバランスが崩れた文字となる欠点がある。この状態を図２（ｂ）に示す。
さらに、アウトラインフォントは、アウトライン（輪郭）を描画し、中を塗りつぶすことによって文字を生成するため、２段階の描画手順となり、描画速度で劣る問題があった。
また、従来のドットフォント或いはアウトラインフォントは、１書体を作成するには、必要な文字すべて（ＪＩＳでは約７千文字）をデザインし、デジタル化することが必要であった。
さらに、日本を含む漢字圏においては、今後、筆順などの情報が欲しくても、アウトラインフォントは、そのフォント生成過程により、拡張性に限界を有している。
【０００５】
【発明が解決しようとする課題】
解決しようとする問題点は、現在、フォントの主流であるアウトラインフォントでは、表現力に限界があり、業界からフォントに要求される性能に応えることができない点である。
【０００６】
【課題を解決するための手段】
本発明は、従来のフォント技術とは根本的に異なる、筆順に従った中心線情報を解析し、この中心線に対する距離や先端情報・角情報などの外郭データを解析し、これらのデータを中心線に持たせ、データベース化することでインテリジェントフォントとすることを最も主要な特徴とする。
【０００７】
先ず、本発明を説明する際に使用する用語の定義や解説を述べる。
部首とは、文字を構成する要素である。
部品とは、部首を構成する要素である。
書体とは、特定のコード体系に対応するすべての文字を用意した文字の集合体である。
コード体系の種類には、ＪＩＳコード体系（日本で使用）、シフトＪＩＳコード体系（日本語ＤＯＳ等で使用）、ＥＵＣコード体系（ＵＮＩＸで使用）、ＢＧコード体系（中国で使用）、ＣＮＳコード体系（中国で使用）、ＫＳＣコード体系（韓国で使用）、ユニ（ＵＮＩ）コード体系（ＷｉｎｄｏｗｓＮＴで使用）などがある。
ファミリー書体とは、同一の特徴を有する太さなどの違う書体の集合である。
ウェイトとは、ファミリー書体で太さなどの違う書体を区別するための名称である。ウェイト１〜ウェイト１２で表現し、ウェイト１を細い書体、ウェイト１２を太い書体として使用する。
【０００８】
以下は、インテリジェントフォントのデータベースを説明するために使用する用語の説明である
基準点とは、ローカル座標系の原点のことであるリスト構造とは、項目がある順序にしたがって並んでいる集合のことである。
ブロックとは、同一の性質を持つ情報を集めた集合である。
オフセットとは、ブロックの先頭からのデータ位置である。
定義場所（定義位置）とは、データが格納されているファイル名、またはファイルの先頭からの位置である。
【０００９】
本発明に係るインテリジェントフォントは、筆順などの高度な情報を持つことを特徴とし、文字を構成する中心線ベクトルと書体を特徴付ける太さや角情報などを持った部品を組み合わせることによって文字を生成することを特徴とする。
本発明に係るインテリジェントフォントは、データベース（以下、ＤＢと略す。）管理情報、文字基本情報、文字基本ウェイト情報、書体変形情報、書体ウェイト変形情報、書体部品情報、書体部首情報、描画用書体情報、などから構成される。
本発明に係るインテリジェントフォントの全体的な概念図を図１に示す。
【００１０】
さらに、データベースの構造を図１６及び図１７に示す。以下に詳述する。
「ＤＢ管理情報」
フォントのコード体系は、シフトＪＩＳコード体系、ユニ（ＵＮＩ）コード体系、ＥＵＣコード体系などが使用できる。これらの情報はそれぞれのコード体系テーブルにまとめられる。
ＤＢ管理情報は、ＤＢ管理テーブル、コード体系管理情報、コード体系テーブル、基本情報テーブル、書体管理テーブル、書体コード体系管理情報、書体コード体系テーブル、書体部品テーブル、書体部首テーブル、書体変形情報テーブル、描画用書体管理テーブルからなる。
ＤＢ管理テーブルには、データブロック個数、ブロック識別番号およびコード体系管理情報の定義場所、文字基本情報の定義場所、文字基本ウェイト情報の定義場所、書体管理テーブルの定義場所が格納される。
コード体系管理情報には、コード体系テーブルの個数、コード体系テーブル識別番号、コード体系テーブルの定義場所が格納される。
コード体系テーブルには、コード及びコードに対応した基本情報テーブルのオフセット値が格納される。
基本情報テーブルには、コードに対応した文字の文字基本情報のオフセット値及び、文字基本ウエイト情報のオフセット値が格納される。
書体管理テーブルには、書体名、書体コード体系管理情報の定義場所、書体部品テーブルの定義場所、書体部首テーブルの定義場所、書体変形情報テーブルの定義場所、書体変形情報の定義場所、書体ウェイト変形情報の定義場所、書体部品情報の定義場所、書体部首情報の定義場所、描画用ウェイト書体管理テーブルが格納される。
書体部品テーブルには、書体部品数、書体部品識別番号、書体部品情報のオフセットを格納する。
書体部首テーブルには、書体部首数、書体部首識別番号、書体部首情報のオフセットを格納する。
書体コード体系管理情報には、書体コード体系テーブル個数、書体コード体系テーブル識別番号、書体コード体系テーブル定義場所を格納する。
書体コード体系テーブルには、コード及びコードに対応した書体基本テーブルのオフセット値が格納される。
書体変形情報テーブルには、コードに対応した文字の書体変形情報のオフセット値、及び書体ウエイト変形情報のオフセット値が格納される。
描画用書体管理テーブルには、描画書体数、それぞれの描画用書体に書体名、ウェイト、描画用書体情報定義場所を格納する。
【００１１】
「文字基本情報」
文字基本情報は、インテリジェントフォントの基本的構造であり、全書体に共通する情報を持つ。
文字基本情報の構成要素は、文字を構成する部首情報を格納する部首リスト情報、部首を構成する部品情報を格納する部品リスト情報、文字の骨格をなす中心線ベクトル、筆順情報、その他文字に対して全書体に共通する情報などである。
中心線ベクトルは、図１１に示されるように、塗りつぶされた文字の両端から同一幅を取って生成するものである。
部首情報は、部首番号と部品リンク情報からなる。
部品情報は、部品番号と中心線ベクトルの制御点とからなる。
文字基本情報の中心線ベクトルは、全ての書体の書体変形情報の元となる情報である。
文字基本情報の部首リンク情報と部品リンク情報はリスト構造になる。
文字基本情報の中心線ベクトルは複数の点を有する曲線で構成される。
点は、点の属性と、点の座標値を持つ。点の属性は、終点、曲線、制御点、連続点の区別を持ち、４ビットを使用し、第１ビット目を終点、第２ビット目を曲線、第３ビット目を制御点、第４ビット目を連続点とする。記述は（属性、Ｘ座標、Ｙ座標）とする。
曲線は、ベジェ曲線を使用するが、他の曲線（ＮＢＡＳ曲線等）も使用できる。
以下の記載においても同様である。
文字基本情報の中心線ベクトルの数は、画数と同じ数である。
文字基本情報の中心線ベクトルは、部品リンク情報に付随する。
筆順情報は、部品リンク情報のリンク順である。
部首リンク情報に格納される番号は、漢和辞典の部首索引に画数毎に掲載されている部首に番号を付し、同じ部首であっても形状が違うものにおいては次の番号を付し区別して使用する。
部品リンク情報に格納される番号は、横棒、縦棒、釣針はね、かぎはね、かぎ棒、かぎ払い、けものはね左はね棒、右はね、左払い、右払い、横流れ、うちあげ、さんずい、点、長点、しんにゅうなどに番号を付して使用する。
文字基本ウェイト情報は、ウェイト（太さなど）の違う書体を生成するときに必要な情報を持つものである。
文字基本ウェイト情報の構成要素は、中心線ベクトルの移動変形情報、部品の太さ変形情報及び、文字を判別するために必要な島情報（黒い部分に囲まれた白い部分の情報）などである。島情報については、図８に示す。
文字基本ウェイト情報は、ウェイトの違う書体を生成するための基本的構造である。文字基本ウェイト情報は、ウェイトの変化に伴う部品の位置の変化、形の変化、太さの変化に対応するために、中心線ベクトルの移動変形情報、部品の太さ変形情報を持つ。
文字基本ウェイト情報は、文字を判別するために必要な島（白い部分）を残すために、島情報を持つ。
文字基本ウェイト情報は、全ての書体の書体ウェイト変形情報の元となる情報である。文字基本ウェイト情報には、ウエイト１、ウエイト１２のウエイト情報を格納する。
中心線ベクトルの移動変形情報は、文字基本情報の中心線ベクトルを構成する点座標の移動情報として持つものである。
部品の太さ変形情報は、中心線ベクトルを構成する点座標に太さの変化情報として持つものである。
島情報は、文字の島（白い部分）を囲む中心線ベクトルとの関係をリンク構造で持つものである。
【００１２】
「文字基本ウェイト情報」
文字基本ウェイト情報は、ウェイト（太さなど）の違う書体を生成するときに必要な情報を持つ。文字基本ウェイト情報の構成要素は、中心線ベクトルの移動変形情報、太さ情報及び、文字を判別するために必要な島情報（黒い部分に囲まれた白い部分の情報）などである。
文字基本ウェイト情報は、ウェイトの違う書体を生成するための基本的構造である。文字基本ウェイト情報は、ウェイトの変化に伴う部品の位置の変化、形の変化、太さの変化に対応するために、中心線ベクトルの移動変形情報、太さ情報を持つ。
文字基本ウェイト情報は、文字を判別するために必要な島（白い部分）を残すために、島情報を持つ。
文字基本ウェイト情報は、全ての書体の書体ウェイト変形情報の元となる情報である。
文字基本ウェイト情報は、ウェイト１、ウェイト１２のウェイト情報を格納する。
中心線ベクトルの移動変形情報は、文字基本情報の中心線ベクトルを構成する点座標の移動情報として持つ。記述は、（中心線ベクトル番号、点番号、Ｘ方向移動量、Ｙ方向移動量）とする。
太さ情報は、中心線ベクトルを構成する点座標に太さ情報として持つ。記述は、（中心線ベクトル番号、点番号、太さ位置、属性、右方向太さ量、左方向太さ量）とする。
太さ位置は、次の点の位置を１０００として、中心線ベクトル上の任意の位置の太さ情報として使用する。
太さ量は、中心線ベクトルの任意の位置の接線に対して垂直な方向への距離として表現される。
島情報は、文字の島（白い部分）を保持するための情報である。
島情報は、島情報中心点座標、隣接中心線ベクトル情報を持つ。
島情報中心点座標は、文字の島の中心点の座標である。
隣接中心線ベクトル情報は、島を囲む中心線ベクトルの情報である。
島情報中心点座標は点の座標値を持つ。記述は、（Ｘ座標、Ｙ座標）とする。
隣接中心線ベクトル情報は、島情報中心点座標と部品の一番近い位置とのなす角度として表現される。記述は、（中心線ベクトル番号、角度）とする。
書体変形情報は、書体を特徴付ける中心ベクトルの変形情報を持つものである。
書体変形情報の構成要素は、文字基本情報の中心線ベクトルと比較した位置の変形情報、部品変形情報などである。
書体変形情報は、書体を特徴付ける中心線ベクトルの変形情報を、文字基本情報の中心線ベクトルを構成する点座標の移動変化情報として持つものである。
文字に対する変形は書体変形情報で書体用中心線ベクトルを生成するときに行われる。
【００１３】
「書体変形情報」
書体変形情報は、書体を特徴付ける中心線ベクトルの変形情報を持つ。
書体変形情報は、書体を特徴付ける中心線ベクトルの変形情報を、文字基本情報の中心線ベクトルを構成する点座標の移動情報として持つ。記述は、（中心線ベクトル番号、点番号、Ｘ方向移動量、Ｙ方向移動量）とする。
書体変形情報は、描画用書体生成時に書体用中心線ベクトルを生成するときに行われる。
【００１４】
「書体ウェイト変形情報」
書体ウェイト変形情報は、ウェイトによって変化する情報を持つ。
書体ウェイト変形情報の構成要素は、中心線ベクトルのウェイト１、ウェイト１２の中心線ベクトルの移動変形情報と、太さ情報などである。
書体ウェイト変形情報によって、書体変形情報から生成された書体用中心線ベクトルを、指定されたウェイトに対応した書体用中心線ベクトルに変換する。同時に中心線ベクトルに太さ情報を付加する。太さ情報は、部品を中心線ベクトルに結合する際の太さを制御するために使用される。
書体ウェイト変形情報は、文字基本ウェイト情報を元に生成されるが、書体ウェイト変形情報はウェイトの違う書体サンプルが多いほどより明確な書体の特徴を反映できる。
書体ウェイト変形情報は、ウェイト１、ウェイト１２の中心線ベクトル変形情報と、太さ情報を線形的に変化させることによって、中間のウェイト書体を生成することも可能である。
中心線ベクトル変形情報は、文字基本情報と書体変形情報によって求められた中心線ベクトルを構成する点座標の移動情報である。記述は、（中心線ベクトル番号、点番号、Ｘ方向移動量、Ｙ方向移動量）とする。
太さ情報は、中心線ベクトルを構成する点座標に太さ情報を付加して持つ。記述は、（中心線ベクトル番号、点番号、太さ位置、属性、右方向太さ量、左方向太さ量）とする。
太さ位置は、次の点の位置を１０００として、中心線ベクトル上の任意の位置の太さ情報として使用する。
【００１５】
「書体部品情報」
書体部品情報は、書体を特徴付ける数十個の部品の情報を持つ。
書体部品情報の構成要素は、部品中心線ベクトル、太さ情報、付随情報、角情報などである。
部品中心線ベクトルは、複数の点からなる曲線で表現される。記述は、（属性、Ｘ座標、Ｙ座標）とする。
太さ情報は、部品中心線ベクトルを構成する点座標に太さ情報を付加して持つ。
記述は、（中心線ベクトル番号、点番号、太さ位置、属性、右方向太さ量、左方向太さ量）とする。
付随情報は、外郭形状を定義するための情報で筆文字などの複雑な形状を表現するために記述されたベクトル情報である。場合によってはベクトルを生成するプログラムなどが格納される。記述は、（定義タイプ、記述場所、引数個数、引数１、引数２、、、、）とする。
定義タイプは、単純ベクトル情報、ベクトル定義ファイル、ベクトル生成プログラム、などである。
角情報は、始点隣接法、終点隣接法、角情報ベクトルとして定義される。
始点隣接法、終点隣接法は、角情報ベクトルの始点終点に隣接する太さ情報との結合形態を定義し、種類としては滑らかに隣接する太さ情報と結合される場合と、交差し交点によって結合される場合があり、その結合形態を番号として格納する。
角情報ベクトルは、中心線ベクトルの点あるいは中心線ベクトルの点に付随する太さ情報からの相対位置として格納される。記述は、（基準点種別、点番号、基準点位置、相対Ｘ座標、相対Ｙ座標）とする。
基準点種別は、基準点を中心線ベクトル上の点、右太さ情報ベクトル上の点、左太さ情報ベクトル上の点を区別するために使用する。
基準点位置は、次の点の位置を１０００として、基準点ベクトル上の任意の位置情報として使用する。以上の関係を図６に示す。
【００１６】
「書体部首情報」
書体部首情報は、部首を構成する部品同士の接続法の情報を持つ。
書体部首情報の構成要素は、部品番号リスト、接続情報などである。
書体部首情報は、部品と部品の結合部分を接続部角情報を元に結合処理を行う。
書体部首情報によって、部品だけでは表現できない結合部分の滑らかな接続を実現できる。
部品番号リストは、部首を構成する部品番号をリスト構造で格納する。
接続情報は、部品と部品が結合されたときの部品形状の変更を記述し、部品切断情報、接続部角情報などが格納される。
部品切断情報は、部品の一端が他の部品と結合するとき結合される部品からはみ出さないための処理をする必要がある部分を定義する。
部品切断情報は、切断部品を、結合部品の中心線ベクトルで切断し、切断された部品を文字生成に使用する。記述は、（切断種別、引数個数、結合ベクトル番号、切断ベクトル番号、中心線ベクトル点番号）とする。
切断種別は、切断断面の形状記述用に使用するが、本発明においては、書体部首情報を自動で生成するために０を格納する。
結合ベクトル番号と切断ベクトル番号は、部品番号リストの格納順番を使用する。
接続部角情報は、部品と部品が結合されたときの外郭線の形状が変化する部分を定義する。
接続部角情報は、始点隣接法、終点隣接法、接続部角情報ベクトルとして定義される。
始点隣接法、終点隣接法は、接続部角情報ベクトルの始点・終点に隣接する太さ情報との結合形態を定義し、種類としては滑らかに隣接する太さ情報と結合される場合と、交差し交点によって結合される場合があり、その結合形態を番号として格納する。
接続部角情報ベクトルは、中心線ベクトルの点、あるいは中心線ベクトルの点に付随する太さ情報番号、または交差する部品の太さ情報の交点からの相対位置として格納されるために、記述は、（基準点種別１、基準点種別２、接続ベクトル番号１、接続ベクトル番号２、点番号１、点番号２、属性、相対Ｘ座標、相対Ｙ座標）とする。
基準点種別１および基準点種別２は、基準点を中心線ベクトル上の点、右太さ情報ベクトル上の点、左太さ情報ベクトル上の点、２つのベクトルの交点かを区別するために使用する。
基準点種別２が０以外のとき２つのベクトルの交点を角情報ベクトルの基準点とする接続ベクトル番号１と接続ベクトル番号２は、部品番号リストの格納順番を使用する。
基準点位置は、次の点の位置を１０００として、基準点ベクトル上の任意の位置情報として使用する。
【００１７】
「描画用書体」
描画用書体は、文字描画用の情報を持つ。
描画用書体の構成要素は、描画用書体情報、コードテーブル、描画用ペアベクトル情報などである。ペアベクトルについては、図１５に示す。
描画用書体は、書体選択時に生成される。文字描画時は指定されたコードから描画用ペアベクトルを取り出し描画する。
描画用書体情報には、コード体系識別番号、コードテーブル定義場所、描画用ペアベクトル情報定義場所が格納される。
コードテーブルには、コード及びコードに対応した描画用ペアベクトル情報のオフセット値が格納される。
描画用ペアベクトル情報には、コード毎に中心線ベクトルの数、中心線ベクトル、ペアベクトルの数、ペアベクトルが格納される。
ペアベクトルには、塗潰し開始ベクトル、塗潰し終了ベクトルが格納される。
ペアベクトルの座標は、中心線ベクトルの点からの相対座標で示され、記述は、（中心線ベクトル番号、点番号、基準点位置、Ｘ相対座標、Ｙ相対座標）とする。
基準点位置は、次の点の位置を１０００として、基準点ベクトル上の任意の位置情報として使用する。
【００１８】
本発明を実施するにあたり、インテリジェントフォントを作成したり、管理するツールが必要になるが、このためには自作プログラム、公知のプログラムやツールを使用する。
これらに必要な機能を以下に説明する。
「インテリジェントフォントの作成、および管理システムの説明」
インテリジェントフォントの作成、および管理するために使用するシステムは、下記の機能を有する。
（１）１２００×１２００ドットのドットフォントを呼出、表示する機能、およびインテリジェントフォントに変換、加工する機能、
（２）インテリジェントフォントのデータベースを管理する機能、および上記の（１）で変換、加工された情報をインテリジェントフォントのデータベースに格納する機能。
これらの各機能を、以下に詳述する。
（１）１２００×１２００ドットのドットフォントを呼出し表示する機能およびインテリジェントフォントに変換、加工する機能、
１）呼出し対象の画像フォーマットは、ＢＭＰ、ＴＩＦＦ、 ＪＰＥＧなどを使用する。ＴＩＦＦ，ＪＰＥＧなどはドットフォントに変換されて使用される。
２）呼出法としては、スキャナーから直接呼び出す方法、または、ファイルから呼び出す方法がある。
３）呼出す時点で１２００×１２００ドット以外のデータは、１２００×１２００ドットに変換する。
４）画面に表示されたドットフォントは、拡大して細部を確認することが可能である。
５）ドットフォントをインテリジェントフォントに変換、加工する機能を有する
（２）インテリジェントフォントのデータベースを管理する機能および上記の（１）で変換、加工された情報をインテリジェントフォントのデータベースに格納する機能。
インテリジェントフォントのデータ構造を構築、修正、管理するために以下の機能を有する。
１）ＤＢ管理テーブルを構築、修正、管理する機能がある。
２）コード体系管理情報を構築、修正、管理する機能がある。
本発明では、ＪＩＳコード体系を使用して説明するが、他のコード体系にも対応できることが必要である。
３）コード体系テーブルを構築、修正、管理する機能がある。
４）基本情報テーブルを構築、修正、管理する機能がある。
５）文字基本情報を構築、修正、管理する機能がある。
６）文字基本ウェイト情報を構築、修正、管理する機能がある。
７）書体管理テーブルを構築、修正、管理する機能がある。
８）書体コード体系管理情報を構築、修正、管理する機能がある。
９）書体コード体系テーブルを構築、修正、管理する機能がある。
１０）書体変形情報テーブルを構築、修正、管理する機能がある。
１１）書体部品テーブルを構築、修正、管理する機能がある。
１２）書体部首テーブルを構築、修正、管理する機能がある。
１３）書体変形情報を構築、修正、管理する機能がある。
１４）書体ウェイト変形情報を構築、修正、管理する機能がある。
１５）書体部品情報を構築、修正、管理する機能がある。
１６）書体部首情報を構築、修正、管理する機能がある。
１７）描画用書体管理テーブルを構築、修正、管理する機能がある。
１８）描画用書体情報を構築、修正、管理する機能がある。
１９）コードテーブルを構築、修正、管理する機能がある。
２０）描画用ペアベクトル情報を構築、修正、管理する機能がある。
【００１９】
前記（２）インテリジェントフォントのデータベースを管理する機能について、その各々を更に詳述すると、
１）ＤＢ管理テーブルを構築、修正、管理する機能には、
ａ）ブロック個数の修正、更新機能がある、
ｂ）項目の追加、削除機能がある、
ｃ）ブロック識別番号を修正する機能がある、
ｄ）ブロック定義場所を修正する機能がある。
２）コード体系管理情報を構築、修正、管理する機能には、
ａ）コード体系テーブル個数の修正、更新機能がある、
ｂ）項目の追加、削除機能がある、
ｃ）コード体系テーブル識別番号を修正する機能がある、
ｄ）コード体系テーブル定義場所を修正する機能がある。
３）コード体系テーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）コードの修正機能がある、
ｃ）基本情報テーブルオフセットを修正する機能がある。
４）基本情報テーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）文字基本情報オフセットを修正する機能がある、
ｃ）文字基本ウェイト情報オフセットを修正する機能がある。
５）文字基本情報を構築、修正、管理する機能には、
ａ）文字基本情報部首リスト情報を構築、修正、管理する機能がある、
ｂ）文字基本情報部首情報を構築、修正、管理する機能がある、
ｃ）文字基本情報部品リスト情報を構築、修正、管理する機能がある、
ｄ）文字基本情報部品情報を構築、修正、管理する機能がある、
ｅ）文字基本情報中心線ベクトルを構築、修正、管理する機能がある。
【００２０】
６）文字基本ウェイト情報を構築、修正、管理する機能には、
ａ）文字基本ウェイト中心線ベクトルリスト情報を構築、修正、管理する機能がある、
ｂ）文字基本ウェイト中心線ベクトル構造を構築、修正、管理する機能がある、
ｃ）文字基本ウェイト中心線ベクトル移動変形情報を構築、修正、管理する機能がある、
ｄ）文字基本ウェイト太さリスト情報を構築、修正、管理する機能がある、
ｅ）文字基本ウェイト太さ構造を構築、修正、管理する機能がある、
ｆ）文字基本ウェイト太さ情報を構築、修正、管理する機能がある、
ｇ）文字基本ウェイト島リスト情報の構築、修正、管理する機能がある、
ｈ）文字基本ウェイト島構造を構築、修正、管理する機能がある、
ｉ）文字基本ウェイト島情報を構築、修正、管理する機能がある。
７）書体管理テーブルの構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）書体名の修正機能がある、
ｃ）書体コード体系管理情報定義場所の修正機能がある、
ｄ）書体部品テーブル定義場所の修正機能がある、
ｅ）書体部首テーブル定義場所の修正機能がある、
ｆ）書体変形情報テーブル定義場所の修正機能がある、
ｇ）書体変形情報定義場所の修正機能がある、
ｈ）書体ウェイト変形情報定義場所の修正機能がある、
ｉ）書体部品情報定義場所の修正機能がある、
ｊ）書体部首情報定義場所の修正機能がある、
ｋ）描画用ウェイト書体管理テーブル定義場所の修正機能がある。
８）書体コード体系管理情報を構築、修正、管理する機能には、
ａ）書体コード体系テーブル個数を修正、更新機能がある、
ｂ）項目の追加、削除機能がある、
ｃ）コード体系識別番号を修正する機能がある、
ｄ）書体コード体系テーブル定義場所を修正する機能がある。
９）書体コード体系テーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）コードの修正機能がある、
ｃ）書体変形情報テーブルオフセットを修正する機能がある。
１０）書体変形情報テーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）書体変形情報オフセットを修正する機能がある、
ｃ）書体ウェイト変形情報オフセットを修正する機能がある。
【００２１】
１１）書体部品テーブルを構築、修正、管理する機能には、
ａ）書体部品個数を修正、更新する機能がある、
ｂ）項目の追加、削除機能がある、
ｃ）書体部品識別番号を修正する機能がある、
ｄ）書体部品情報オフセットを修正する機能がある。
１２）書体部首テーブルを構築、修正、管理する機能には、
ａ）書体部首個数を修正、更新機能がある、
ｂ）項目の追加、削除機能がある、
ｃ）書体部首識別番号を修正する機能がある、
ｄ）書体部首情報オフセットを修正する機能がある。
１３）書体変形情報を構築、修正、管理する機能には、
ａ）中心線ベクトル移動リスト情報を構築、修正、管理する機能がある、
ｂ）中心線ベクトル移動構造を構築、修正、管理する機能がある。
１４）書体ウェイト変形情報を構築、修正、管理する機能には、
ａ）書体ウェイト中心線ベクトルリスト情報を構築、修正、管理する機能がある
ｂ）書体ウェイト中心線ベクトル構造を構築、修正、管理する機能がある、
ｃ）書体ウェイト中心線ベクトル移動情報を構築、修正、管理する機能がある、
ｄ）書体ウェイト太さ変形リスト情報を構築、修正、管理する機能がある、
ｅ）書体ウェイト太さ変形構造を構築、修正、管理する機能がある、
ｆ）書体ウェイト太さ情報を構築、修正、管理する機能がある。
１５）書体部品情報を構築、修正、管理する機能には、
ａ）部品中心線ベクトルリスト情報を構築、修正、管理する機能がある、
ｂ）部品中心線ベクトル構造を構築、修正、管理する機能がある、
ｃ）部品中心線ベクトル情報を構築、修正、管理する機能がある、
ｄ）部品太さリスト情報を構築、修正、管理する機能がある、
ｅ）部品太さ構造を構築、修正、管理する機能がある、
ｆ）部品太さ情報を構築、修正、管理する機能がある、
ｇ）部品付随リスト情報を構築、修正、管理する機能がある、
ｈ）部品付随構造を構築、修正、管理する機能がある、
ｉ）部品付随情報を構築、修正、管理する機能がある、
ｊ）部品角リスト情報を構築、修正、管理する機能がある、
ｋ）部品角構造を構築、修正、管理する機能がある、
ｌ）部品角情報を構築、修正、管理する機能がある。
【００２２】
１６）書体部首情報を構築、修正、管理する機能には、
ａ）部品番号リスト情報を構築、修正、管理する機能がある、
ｂ）部品接続リスト情報を構築、修正、管理する機能がある、
ｃ）部品接続構造を構築、修正、管理する機能がある、
ｄ）部品接続情報を構築、修正、管理する機能がある。
１７）描画用書体管理テーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）書体名の修正機能がある、
ｃ）ウェイト値の修正機能がある、
ｄ）描画用書体情報定義場所を修正する機能がある、
ｅ）描画用書体情報の追加、削除機能がある。
１８）描画用書体情報を構築、修正、管理する機能には、
ａ）コード体系識別番号を修正する機能がある、
ｂ）コードテーブル定義場所を修正する機能がある、
ｃ）描画用ペアベクトル情報定義場所を修正する機能がある。
１９）コードテーブルを構築、修正、管理する機能には、
ａ）項目の追加、削除機能がある、
ｂ）コードの修正機能がある、
ｃ）描画用ペアベクトル情報オフセットを修正する機能がある。
２０）描画用ペアベクトル情報を構築、修正、管理する機能には、
ａ）描画用中心線ベクトルリスト情報を構築、修正、管理する機能がある、
ｂ）描画用中心線ベクトル構造を構築、修正、管理する機能がある、
ｃ）描画用中心線ベクトル情報を構築、修正、管理する機能がある、
ｄ）描画用ペアベクトルリスト情報を構築、修正、管理する機能がある、
ｅ）描画用ペアベクトル構造を構築、修正、管理する機能がある、
ｆ）描画用ペアベクトル情報を構築、修正、管理する機能がある。
【００２３】
【発明の実施の形態】
「インテリジェントフォント作成手順」
本発明は、インテリジェントフォント作成の前段階として全書体に共通する
（１）「文字基本情報」の作成手順、
（２）「文字基本ウェイト情報」の作成手順と、前記の基本情報を使用して、インテリジェントフォント作成手順である、
（３）複数の文字から「書体部品情報」を求める手順、
（４）複数の文字から「書体部首情報」を求める手順、
（５）複数の文字から「書体変形情報」を求める手順、
（６）「文字基本ウェイト情報」から「書体ウェイト変形情報」を求める手順から作成された書体によって、文字を構成する部品の中心線ベクトルと書体を特徴付ける外郭線を組み合わせることによって文字を生成することができる筆順等の情報を持ったインテリジェントフォントを実現した。
【００２４】
以下に、各手順を詳述する。
（１）「文字基本情報」の作成手順は、
コード体系の総ての文字に対して以下の処理を行う。
１）ウェイト３の１２００×１２００ドットの塗りつぶされた文字を用意する。
２）文字を構成する部首の部首構造を文字基本情報の対応する文字基本構造に格納する。
３）部首を構成する部品の部品構造を部首構造に格納する。
４）文字を構成する部首以外の部品の部品構造を文字基本情報の対応する文字基本構造に格納する。
５）文字を構成する部品の中心線ベクトルを生成し塗りつぶされた文字に合わせて部品構造に格納する。
（２）「文字基本ウェイト情報」の作成手順は、
コード体系の総ての文字に対して以下の処理を行う。
１）ウェイト３の１２００×１２００ドットの塗りつぶされた文字を用意する。
２）中心線ベクトル変異情報に０を格納する。
３）それぞれの中心線ベクトルの点にたいして太さ情報を付加し、ウェイト３を基準ウェイトの太さ情報として対応する文字基本ウェイト情報に格納する。
４）塗りつぶされた文字の白い部分の中心を指定した島情報中心点座標と、島情報に関連する中心線ベクトルを隣接中心線ベクトル情報として、島情報に格納する、島情報は対応する文字基本ウェイト情報に格納する。
ウエイト３の塗りつぶされた文字について、中心線ベクトルと太さ情報、および島情報の中心点を図１２に示す。
５）ウェイト１の１２００×１２００ドットの塗りつぶされた文字を用意する。
６）塗りつぶされた文字に合わせて中心線ベクトルの点を移動し、文字基本情報の中心線ベクトルから変異を中心線ベクトル変異情報として、対応する文字基本ウェイト情報に格納する。
７）塗りつぶされた文字に合わせて中心線ベクトルの点の太さ情報を変更し、太さ情報として、対応する文字基本ウェイト情報に格納する。
８）塗りつぶされた文字に合わせて島情報の中心点を移動し、島情報中心点座標を島情報として、対応する文字ウェイト構造に格納する。
ウェイト３と比較したウェイト１の文字基本ウェイト情報である中心線ベクトル、および島情報中心点の関係を図１３に示す。
９）ウェイト１２の１２００×１２００ドットの塗りつぶされた文字を用意する。
１０）塗りつぶされた文字に合わせて中心線ベクトルの点を移動し、文字基本情報の中心線ベクトルから変異を中心線ベクトル変異情報として、対応する文字基本ウェイト情報に格納する。
１１）塗りつぶされた文字に合わせて中心線ベクトルの点の太さ情報を変更し、太さ情報として、対応する文字基本ウェイト情報に格納する。
１２）塗りつぶされた文字に合わせて島情報の中心点を移動し、島情報中心点座標を島情報として、対応する文字ウェイト構造に格納する。
ウェイト３と比較したウェイト１２の文字基本ウェイト情報である中心線ベクトル移動変形情報を図１４に示す。
【００２５】
（３）複数の文字から「書体部品情報」を求める手順は、
１）部品を抽出するための数十文字を用意する。
部品化しやすい手書き原稿あるいはアウトラインフォントの文字を用意する（例えば一九七）。
２）用意した文字の中心線を求める。
用意した文字が手書き原稿の場合、スキャナーを用いて２値で読み込み、１２００×１２００ドットのデータを用意する。
用意した文字がアウトラインフォントデータの場合コンピューター上で塗りつぶし処理を行い、１２００×１２００ドットのデータを用意する。
１２００×１２００ドットのデータを細め処理を行い、一ドット幅のデータに変換する。
一ドット幅のデータの中心をたどりながら、短直線で構成される連続線に変換する。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換し、これを中心線とする。
３）用意した文字の外郭線を求める。
用意した文字が手書き原稿の場合、スキャナーを用いて読込み、２値の１２００×１２００ドットのデータを用意する。
１２００×１２００ドットのデータを一ドット幅の外郭データに変換する。
一ドット幅の外郭データの中心をたどりながら、短直線で構成される連続線を求める。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを外郭線とする。
用意した文字がアウトラインフォントの場合、そのアウトラインデータはそのまま外郭線とする。
４）直線と曲線で構成される連続線の中心線と文字基本情報の中心線ベクトルを対応付けることによって、書体変形情報の変形情報を求める。
文字基本情報の同じ文字を構成するそれぞれの中心線ベクトルと同じ部位にある、直線と曲線で構成される連続線を角度と位置により分類し、文字基本情報の中心線ベクトルからの変異情報を求める。
文字基本情報の中心線ベクトルと変異情報から部品の中心線ベクトルを求める。
５）部品の中心線ベクトルと外郭線から中心線ベクトルを構成する点情報を基準点とする部品の外郭線情報を求める。
中心線ベクトルの点座標からベクトルの進行方向に垂直な線分を求める。
求めた線分と外郭線の交点と中心線ベクトルの点座標の距離を部品の太さ情報とする。中心線ベクトルの端点の太さ情報を基準点として角情報とする。
その他の交点同士を繋ぐ外郭線が単純曲線でないとき、太さに付随する外郭線として保持する中心線ベクトル、太さ情報、付随情報、角情報を１つの部品とする。
６）上記の処理を繰り返し、中心線ベクトルと外郭線情報から「書体部品情報」を求める。
以上の手順をについて、文字「牛」についての説明を図５に示す。
【００２６】
（４）複数の文字から「書体部首情報」を求める手順は、
１）部首を抽出するための数十文字を用意する。
２）用意した文字の中心線を求める。
３）用意した文字の外郭線を求める。
４）中心線と「文字基本情報」から中心線ベクトルを求める。
５）「書体部品情報」と中心線ベクトルから文字を生成し、用意した文字との比較を行う。
６）用意した文字にフィットするように部品の太さを補正する。
中心線ベクトルの点座標からベクトルの進行方向に垂直な線分を求める。
求めた線分と外郭線との交点と、中心線ベクトルの点座標との距離を部品の太さとする。
７）フィットさせた文字の外郭線と用意した文字の外郭線とから、部品と部品の接合部の形状を表現する外郭線を特定し、接合部の外郭線情報を生成する。
端点と端点が接続する場合両角情報展開を禁止し、交点を結ぶ外郭線を接続部角情報とする。
端点とそれ以外で接続する場合ではみ出していないとき、部品切断情報とする。
端点とそれ以外で接続する場合ではみ出すとき、はみ出した部分の外郭線を接続部角情報とする。
８）上記の処理を繰り返し、「書体部首情報」を求める。
【００２７】
（５）複数の文字から「書体変形情報」を求める手順は、
１）「書体変形情報」を求めるための数十文字から数百文字を用意する。
２）用意した文字の中心線を求める。
３）用意した文字の外郭線を求める。
４）中心線と「文字基本情報」から中心線ベクトルを求める。
５）「書体部品情報」と「書体部首情報」と中心線ベクトルから文字を生成し用意した文字との比較を行う。
６）用意した文字の該当する部位の部品と重ね差異を求める。その差異が部品が太いことを示す場合には部品を細くし、差異が部品が細いことを示す場合には部品を細める処理を行い、差異が部品が位置ずれを示す場合には該当する部品の中心線ベクトルを構成する点を移動する。
移動した中心線ベクトルが以前求めた中心線ベクトルと同一になるまで上記の処理を繰返す。
７）上記の補正した太さと、補正した位置から「書体変形情報」を求める。
上記の中心線ベクトルを求める方法を図４に示す。
書体の全ての文字の中心線ベクトルに対して同一分類に所属する補正情報を適応し書体変形情報を求める。
【００２８】
（６）「文字基本ウェイト情報」から「書体ウェイト変形情報」を求める手順は、
１）通常の文字生成手順において、「書体ウェイト変形情報」を使用する部分で「文字基本ウェイト情報」を使用し、指定されたウェイトの文字を生成する。
２）「文字基本ウェイト情報」の島情報が生成した文字に存在するか調べる。
対を成す中心線ベクトルの間に島が存在するか判別する。
３）島が存在するまで関連する中心線ベクトルの位置太さを補正する。
太さ補正量を２ドットとして、対を成す中心線ベクトルを島方向とは反対側に太さ補正量の半分位置補正する。
４）すべての島が存在するように上記の補正処理をくり返す。
５）上記の処理をウェイト１〜ウェイト１２まで繰り返し、「書体ウェイト変形情報」を求める。
ウエイト３，５，および９の書体についての「書体ウエイト変形情報」を図９に示す。
【００２９】
「インテリジェントフォント描画システムの説明」
本発明のインテリジェントフォント描画システムは、以下の機能を有する。
（１）登録されているファミリー名称と、ウェイトを指定することによってＪＩＳコードに対応する総ての文字の描画用ペアベクトルを用意する機能。
（２）コードが呼ばれたときに描画用ペアベクトルを使用し塗潰しを行う機能。
本発明のインテリジェントフォント描画システムによる文字生成は、以下の手順で行われる。
（１）文字基本情報と書体変形情報により文字骨格を生成する手順、
（２）書体ウェイト変形情報により文字骨格を変形する手順、
（３）文字骨格と書体部品情報により文字を組み立てる手順、
（４）書体部首情報により部品の結合部分を補正する手順、
（５）部品から塗潰し用ペアベクトルを生成する手順、
（６）塗潰し用ペアベクトルを処理して塗り潰された文字を生成する手順からなる。
描画システムの手順を図３に示す。
【００３０】
上記手順を詳述すると、
（１）文字基本情報と書体変形情報により文字骨格を生成する手順は、
１）文字基本情報から中心ベクトルからなる文字骨格を生成する、
２）文字骨格の中心線ベクトルの点座標を書体変形情報の移動情報により移動する。
（２）書体ウェイト変形情報により文字骨格を変形する手順は、
１）文字骨格の中心線ベクトルの点座標を書体ウェイト変形情報の中心線ベクトル変形情報により移動する、
書体ウェイト変形情報を用いて変形した文字骨格と部品から文字を生成する過程を図１０に示す。
２）その際中心線ベクトルの太さ情報を太さ情報を元に変更する。
（３）文字骨格と書体部品情報により文字を組み立てる手順は、
文字骨格の中心線ベクトルと部品太さ情報を使用して、対応する部品を書体部品情報から取り出し変形して配置する。
（４）書体部首情報により部品の結合部分を補正する手順は、
配置された部品同士を書体部首情報の部品結合情報によって結合し文字を完成させる。
部品情報から生成された文字と書体部首情報を用いて修正された文字を図７にしめす。
（５）部品から塗潰し用ペアベクトルを生成する手順は、
完成された文字から横方向で塗り潰すために中心線ベクトルの点を基準点とする塗潰し開始ベクトルと塗潰し終了ベクトルを生成する。
描画用ペアベクトルを図１５に示す。
（６）塗潰し用ペアベクトルを処理して塗潰された文字を生成する手順は、
塗潰し開始ベクトルを開始点として、塗潰し終了ベクトルを終了点とする線分を描画することによって塗り潰された書体を生成する。
なお、（１）から（５）までの手順は、書体選択時あるいは使用書体選定時に行ってしまい、（６）の手順だけを文字描画時に行う。
【００３１】
以下、本発明に係るインテリジェントフォントの実施例を図面を用いて更に詳述するが、本発明はこの実施例により限定されるものではない。
【実施例１】
この実施例では、自社作成のテオン角ゴシック体であるウェイト３の文字「牛」について作成するインテリジェントフォントのデータ構造について、図面を用いて説明する。他の文字についても同様である。
「ＤＢ管理情報」
ＤＢ管理情報には、図１６および図１７に示されるているように、ＤＢ管理テーブル、コード体系管理情報、コード体系テーブル、基本情報テーブル、書体管理テーブル、書体コード体系管理情報、書体コード体系テーブル、書体部品テーブル、書体部首テーブル、書体変形情報テーブル、描画用書体管理テーブルが格納されている。
（１）ＤＢ管理テーブルの内容
ＤＢ管理テーブルのブロック個数には、図１６に矢印（→）の数で関係が示される５が格納される。
ブロック識別番号にはコード体系管理情報を示す１が、ブロック定義場所には、１６進数で１００Ｈ（以下、Ｈはヘキサの略であり、１６進数を示す。）が格納される。
ブロック識別番号には文字基本情報を示す２が、ブロック定義場所には１Ｆ６００Ｈが格納される。
ブロック識別番号には文字基本ウェイト情報を示す３が、ブロック定義場所には２１Ｆ６００Ｈが格納される。
ブロック識別番号には基本情報テーブルを示す４が、ブロック定義場所には０ＦＣ００Ｈが格納される。
ブロック識別番号には、書体管理テーブルを示す５が、ブロック定義場所には、
"syotai.tbl"が格納される。
（２）コード体系管理情報の内容
コード体系テーブルのコード体系テーブル個数には１が格納される。
コード体系テーブル識別番号にはＪＩＳコード体系を示す１が格納され、コード体系テーブル定義場所には２００Ｈが格納される。
（３）文字「牛」に対応するコード体系テーブルの内容
文字「牛」の区点コードは２１７７番であるから、２１７７番目のコードの欄には３５６ＤＨが、基本情報テーブルオフセットには４６０８Ｈが格納される。
（４）に対応する基本情報テーブルの内容
２１７７番目の文字基本情報オフセットには８Ｂ５３ＦＨが、文字基本ウェイト情報オフセットには２Ｂ８Ａ３ＢＨが格納される。
（５）書体管理テーブルの内容
書体名には「テオン角（丸）ゴシック体」が、書体コード体系管理情報定義場所には、"THEON.CTB"が、書体部品テーブル定義場所には"THEON.PTB"が、書体部首テーブル定義場所には"THEON.BTB"が、書体変形情報テーブル定義場所には"THEON.TTB"が、書体変形情報定義場所には"THEON.TDT"が、書体ウェイト変形情報定義場所には"THEON.WDT"が、書体部品情報定義場所には"THEON.PDT"が、書体部首情報定義場所には"THEON.BDT"が、描画用書体管理テーブルには"DRAWFONT.TBL"が格納される。
（６）テオンファミリー書体に対応する書体コード体系管理情報の内容
書体コード体系管理情報のコード体系テーブル個数には１が格納される。
コード体系識別番号にはＪＩＳコード体系を示す１が格納され、書体コード体系テーブル定義場所には１００Ｈが格納される。
（７）テオンファミリー書体の牛に対応する書体コード体系テーブルの内容
２１７７番目のコードには３５６ＤＨが、書体変形情報テーブルオフセットには４６０８Ｈが格納される。
（８）テオンファミリー書体の牛に対応する書体情報テーブルの内容
２１７７番目の書体変形情報オフセットには８Ｂ５３ＦＨが、書体ウェイト情報オフセットには２２Ｄ４ＦＣＨが格納される。
（９）テオンファミリー書体の牛で使用する書体部品テーブルの内容
書体部品テーブルの書体部品個数は３２個、横棒に対応する部品の書体部品識別番号には１が、書体部品情報オフセットには１００Ｈが格納される。
縦棒に対応する部品の書体部品識別番号には２が、書体部品情報オフセットにはＤ００Ｈが格納される。
左払いに対応する部品の書体部品識別番号には１０が、書体部品情報オフセットには１２１００Ｈが格納される。
（１０）テオンファミリー書体の文字「牛」で使用する書体部首テーブルの内容
書体部首テーブルの部首個数には３００が格納される。
文字「牛」に対応する部首の書体部首識別番号には５０が、書体部首情報オフセットには０ＦＡ０Ｈが格納される。
（１１）描画用書体管理テーブルの内容
描画用書体数には１が格納される。
書体名にはテオン角（丸）ゴシック体が、ウェイトには５が、描画用書体位置には"THEON050.DRW"が格納される。
【００３２】
「牛の文字基本情報」
部首個数には１が格納される。
部首番号には５０が格納される。
部品個数には４が格納される。
部品番号には１０が格納される。
部品中心線ベクトル点個数には４が格納される。
中心線ベクトルの点個数は４であるから、その点座標値には（２，３５２，１０２３）、（４，３０１，８７３）、（４，２３９，７５４）、（１，１１５，６０１）が格納される。
部品番号には１が格納される。
部品中心線ベクトル点個数には２が格納される。
中心線ベクトルの点個数２について、その点座標値には（０，２７４，８１７）、（１，１０３７，８１５）が格納される。
部品番号には１が格納される。
部品中心線ベクトル点個数には２が格納される
中心線ベクトルの点個数２について、その点座標値には（０，５７，５２３）、（１，１１１９，５２３）が格納される。
部品番号には２が格納される。
部品中心線ベクトル点個数には２が格納される。
中心線ベクトルの点個数２について、その点座標値には（０，５９５，１１０６）、（１，５９５，１０９）が格納される。
【００３３】
「牛の文字基本ウェイト情報」
ウェイト番号には１が格納される。
移動変形情報個数には１０が格納される。
移動変形情報個数１０について、その移動変形情報には（１，１，５，５）、（１，２，６，２）、（１，３，５，３）、（１，４，５，２）、（２，１，６，２）、（２，２，−２，３）、（３，１，１，１）、（３，２，−１，１） 、（４，１，０，３）、（４，２，０，−３）が格納される。
太さ情報個数には１０が格納される。
太さ情報個数１０について、その太さ情報には（１，１，０，２，１０，１０）、（１，２，０，４，１０，１０）、（１，３，０，４，１０，１０）、（１，４，０，１，１０，１０）、（２，１，０，０，１０，１０）、（２，２，０，１，１０，１０）、（３，１，０，０，１０，１０）、（３，２，０，１，１０，１０）、（４，１，０，０，１０，１０）、（４，２，０，１，１０，１０）
が格納される。
島情報個数には１が格納される。
島情報個数１について、その島情報中心点座標には（ ３８１，６５２）が格納される。
隣接中心線ベクトル情報個数には４が格納される。
隣接中心線ベクトル情報個数４について、その隣接中心線ベクトル情報には、（１，１３５）、（４，０）、（２，９０）、（３，２７０）が格納される。
ウェイト番号には３が格納される。
移動変形情報個数には０が格納される。
太さ情報個数には１０が格納される。
太さ情報個数１０について、その太さ情報には（１，１，０，２，３，３０）、（１，２，０，４，３０，３０）、（１，３，０，４，３０，３０）、（１，４，０，１，３０，３０）、（２，１，０，０，３０，３０）、（２，２，０，１，３０，３０）、（３，１，０，０，３０，３０）、（３，２，０，１，３０，３０）、（４，１，０，０，３０，３０）、（４，２，０，１，３０，３０）が格納される。
島情報個数には１が格納される。
島情報個数１について、その島情報中心点座標には（３７２，６６４）が格納される。
隣接中心線ベクトル情報個数には４が格納される。
隣接中心線ベクトル情報個数４について、その隣接中心線ベクトル情報には、（１，１３５）、（４，０）、（２，９０）、（３，２７０）が格納される。
ウェイト番号には１２が格納される。
移動変形情報個数には１０が格納される。
移動変形情報個数１０について、その移動変形情報には（１，１，−５６，−５２）、（１，２，−６５，−２３）、（１，３，−５９，−３７）、（１，４，−５２，−２７）、（２，１，−６７，−２９）、（２，２，１２，−２９）、（３，１，−３，−８）、（３，２，３，−８）、（４，１，０，−３４）、（４，２，０，２８）が格納される。
太さ情報個数には１０が格納される。
太さ情報個数１０について、その太さ情報には（１，１，０，２，１２０，１２０）、（１，２，０，４，１２０，１２０）、（１，３，０，４，１２０，１２０）、（１，４，０，１，１２０，１２０）、（２，１，０，０，１２０，１２０）、（２，２，０，１，１２０，１２０）、（３，１，０，０，１２０，１２０）、（３，２，０，１，１２０，１２０）、（４，１，０，０，１２０，１２０）、（４，２，０，１，１２０，１２０）が格納される。
島情報個数には１が格納される。
島情報個数１について、その島情報中心点座標には（３４１，６９１）が格納される。
隣接中心線ベクトル情報個数には４が格納される。
隣接中心線ベクトル情報個数４について、その隣接中心線ベクトル情報には、（１，１３５）、（４，０）、（２，９０）、（３，２７０）が格納される。
【００３４】
「牛の書体変形情報」
書体変形情報個数には１０が格納される。
書体変形情報個数１０について、その書体変形情報には（１，１，−３６，−４０）、（１，２，−４３，−５０）、（１，３，−３９，−６９）、（１，４，−４，１００）、（２，１，−５０，−４４）、（２，２，−１３，−４４）、（３，１，−１８，−１３）、（３，２，２，−１３）、（４，１，８，−４８）、（４，２，８，２８）が格納される。
【００３５】
「牛の書体ウェイト変形情報」
ウェイト番号には１が格納される。
移動変形情報個数には１０が格納される。
移動変形情報個数１０について、その移動変形情報には（１，１，５，５）、（１，２，６，２）、（１，３，５，３）、（１，４，５，２）、（２，１，６，２）、（２，２，−２，３）、（３，１，１，１）、（３，２，−１，１） 、（４，１，０，３）、（４，２，０，−３）が格納される。
太さ情報には０が格納される。
ウェイト番号には３が格納される。
移動変形情報個数には０が格納される。
太さ情報には０が格納される。
ウェイト番号には１２が格納される。
移動変形情報個数には１０が格納される。
移動変形情報個数１０について、その移動変形情報には（１，１，−５４，−５１）、（１，２，−６２，−２２）、（１，３，−５７，−３５）、（１，４，−４９，−２４）、（２，１，−６４，−２４）、（２，２，１５，−２４）、（３，１，−３，−８）、（３，２，３，−８）、（４，１，０，−３４）、（４，２，０，２８）が格納される。
太さ情報には０が格納される。
【００３６】
「牛で使用する書体部品情報」
部品番号には１が格納される。
部品中心線ベクトル点個数には、２が格納される。
部品中心線ベクトル点個数２について、その部品中心線ベクトルには（０，０，３０）、（１，１０５６，３０）が格納される。
太さ情報個数には、２が格納される。
太さ情報個数２について、その太さ情報には、（１，０，０，３０，３０）、（２，０，１，３０，３０）が格納される。
角情報個数には２が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，１，０，０，０）（３，１，０，０，０）が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，２，０，０，０）（３，２，０，０，０）が格納される。
付随情報個数には０が格納される。
部品番号には２が格納される。
部品中心線ベクトル点個数には２が格納される。
部品中心線ベクトル点個数２について、その部品中心線ベクトルには（０，３０，０）、（１，３０，１０８０）が格納される。
太さ情報個数には、２が格納される。
太さ情報個数２について、その太さ情報には、（１，０，０，３０，３０）、（２，０，１，３０，３０）が格納される。
角情報個数には２が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，１，０，０，０）（３，１，０，０，０）が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，２，０，０，０）（３，２，０，０，０）が格納される。
付随情報個数には０が格納される。
部品番号には１０が格納される。
部品中心線ベクトル点個数には４が格納される。
部品中心線ベクトル点個数４について、その部品中心線ベクトルには（２，２４４，４０２）、（４，１９２，２７９）、（４，１２８，１６３）、（１，５０，４１）が格納される。
太さ情報個数には、４が格納される。
太さ情報個数４について、その太さ情報には、（１，０，２，３０，３０）、（２，０，４，３０，３０）、（３，０，４，３０，３０）、（４，０，４，３０，３０）が格納される。
角情報個数には２が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，１，０，０，０）（３，１，０，０，０）が格納される。
角情報始点隣接方には２が格納される。
角情報終点隣接法には２が格納される。
角情報ベクトル点個数には２が格納される。
角情報ベクトル点個数２について、その角情報ベクトルには（２，４，０，０，０）（３，４，０，０，０）が格納される。
付随情報個数には０が格納される。
【００３７】
「牛の書体部首情報」
部首番号には５０が格納される。
部品番号個数には４が格納される。
部品番号には（１０）、（１）、（１）、（２）が格納される。
部品切断情報個数には１が格納される。
部品切断情報には（０，２，１，２）。
【００３８】
「ＤＢ管理情報作成」
ＤＢ管理情報作成は、インテリジェントフォント作成管理システムを使用して行う。
（１）ＤＢ管理テーブルの生成手順
ＤＢ管理テーブルのブロック個数には、図１６に矢印（→）の本数で関連を示す５を格納する。
ブロック識別番号にコード体系管理情報を示す１を、ブロック定義場所には１００Ｈを格納する。
ブロック識別番号に文字基本情報を示す２を、ブロック定義場所には１Ｆ６００Ｈを格納する。
ブロック識別番号に文字基本ウェイト情報を示す３を、ブロック定義場所には２１Ｆ６００Ｈを格納する。
ブロック識別番号に基本情報テーブルを示す４を、ブロック定義場所には０ＦＣ００Ｈを格納する。
ブロック識別番号に書体管理テーブルを示す５を、ブロック定義場所には"syotai.tbl"を格納する。
（２）コード体系管理情報の生成手順
コード体系管理情報のコード体系テーブル個数には、図１６に矢印（→）で関連を示す１を格納する。
コード体系テーブル識別番号にＪＩＳコード体系を示す１を格納し、コード体系テーブル定義場所に２００Ｈを格納する。
（３）文字「牛」に対応するコード体系テーブルの生成手順
２１７７番目のコードに３５６ＤＨを、基本情報テーブルオフセットに４６０８Ｈを格納する。
（４）文字「牛」に対応する基本情報テーブルの生成手順
２１７７番目の文字基本情報オフセットに８Ｂ５３ＦＨを、文字基本ウェイト情報オフセットに２Ｂ８Ａ３ＢＨを格納する。
（５）書体管理テーブルの生成手順
書体名に「テオン角ゴシック体」を、
書体コード体系管理情報定義場所に"THEON.CTB"を、
書体部品テーブル定義場所に"THEON.PTB"を、
書体部首テーブル定義場所に"THEON.BTB"を、
書体変形情報テーブル定義場所に"THEON.TTB"を、
書体変形情報定義場所に"THEON.TDT"を、
書体ウェイト変形情報定義場所に"THEON.WDT"を、
書体部品情報定義場所に"THEON.PDT"を、
書体部首情報定義場所に"THEON.BDT"を、
描画用書体管理テーブルに"DRAWFONT.TBL"を
それぞれ格納する。
【００３９】
（６）テオンファミリー書体に対応する書体コード体系管理情報の作成手順
書体コード体系管理情報のコード体系テーブル個数には、図１６に矢印（→）で示す１を格納する。
コード体系識別番号にＪＩＳコード体系を示す１を格納する、書体コード体系テーブル定義場所に１００Ｈを格納する。
（７）テオンファミリー書体の牛に対応する書体コード体系テーブルの作成手順
２１７７番目のコードに３５６ＤＨを、書体変形情報テーブルオフセットに自動生成により作成した書体変形情報テーブルオフセットを格納する。
（８）テオンファミリー書体の牛に対応する書体情報テーブルの作成手順
２１７７番目の書体変形情報オフセットに自動生成された書体変形情報のオフセットが格納される。また書体ウェイト情報オフセットに自動生成された書体ウェイト情報のオフセットが格納される。
（９）テオンファミリー書体の牛で使用する書体部品テーブルの生成手順
書体部品テーブルの書体部品個数に自動生成で作成された部品数が格納される。
横棒に対応する部品の書体部品識別番号には１が、書体部品情報オフセットに自動生成で作成された横棒の書体部品情報データのオフセットが格納される。
縦棒に対応する部品の書体部品識別番号には２が、書体部品情報オフセットに自動生成で作成された縦棒の書体部品情報データのオフセットが格納される。
左払いに対応する部品の書体部品識別番号には１０が、書体部品情報オフセットに自動生成で作成された左払いの書体部品情報データのオフセットが格納される。
（１０）テオンファミリー書体の牛で使用する書体部首テーブルの生成手順
書体部首テーブルの部首個数に自動生成で作成された部首個数が格納される。
牛に対応する部首の書体部首識別番号には５０が、書体部首情報オフセットに自動生成で作成された牛の書体部首情報データのオフセットが格納される。
【００４０】
「牛の文字基本情報作成手順」
牛の文字基本情報は、インテリジェントフォント作成管理システムを使用して行う。
「テオン書体」ウェイト３の１２００×１２００の塗りつぶされた牛の文字を用意し、
部首個数に１を格納する。
部首番号に５０を格納する。
部品個数に４を格納する。
部品番号に１０を格納する。
文字基本情報中心線ベクトル構築機能により、部品中心線ベクトル点個数には画面に表示され指定されているベクトルデータの点個数が格納される。
また、中心線ベクトルの点座標値には、画面に表示され指定されているベクトルデータの座標が格納される。
部品番号には１が格納される。
文字基本情報中心線ベクトル構築機能により、部品中心線ベクトル点個数には画面に表示され指定されているベクトルデータの点個数が格納される。
また、中心線ベクトルの点座標値には、画面に表示され指定されているベクトルデータの座標が格納される。
部品番号には１が格納される。
文字基本情報中心線ベクトル構築機能により、部品中心線ベクトル点個数には画面に表示され指定されているベクトルデータの点個数が格納される。
また、中心線ベクトルの点座標値には、画面に表示され指定されているベクトルデータの座標が格納される。
部品番号には２が格納される。
文字基本情報中心線ベクトル構築機能により、部品中心線ベクトル点個数には画面に表示され指定されているベクトルデータの点個数が格納される。
また、中心線ベクトルの点座標値には、画面に表示され指定されているベクトルデータの座標が格納される。
用意した「テオン書体」は破棄される。
【００４１】
「牛の文字基本ウェイト情報作成手順」
牛の文字基本ウェイト情報は、インテリジェントフォント作成管理システムを使用して行う。
「テオン書体」ウェイト１の１２００×１２００の塗りつぶされた牛の文字を用意する。
ウェイト番号には１を格納する。
文字基本ウェイト中心線ベクトル移動変形情報の構築機能により、文字基本情報中心線ベクトルと対応するウェイトの中心線ベクトルを指定することにより、移動変形情報個数および移動変形情報が格納される。
文字基本ウェイト太さ情報の構築機能により、中心線ベクトルと外郭線ベクトルを指定して中心線ベクトルに対応する太さ情報の個数および太さ情報が格納される。
文字基本ウェイト島情報の構築機能により、島を形成する中心線ベクトルを指定することにより、島情報個数、島情報中心点座標、隣接中心線ベクトル情報が格納される。
島情報については、図８に示す。
「テオン書体」ウェイト３の１２００×１２００の塗りつぶされた牛の文字を用意する。
ウェイト番号には３を格納する。
文字基本ウェイト中心線ベクトル移動変形情報の構築機能により、文字基本情報中心線ベクトルと対応するウェイトの中心線ベクトルを指定することにより、移動変形情報個数および移動変形情報が格納される。
文字基本ウェイト太さ情報の構築機能により、中心線ベクトルと外郭線ベクトルを指定して、中心線ベクトルに対応する太さ情報の個数および太さ情報が格納される。
文字基本ウェイト島情報の構築機能により、島を形成する中心線ベクトルを指定することにより、島情報個数、島情報中心点座標、隣接中心線ベクトル情報が格納される。
「テオン書体」ウェイト１２の１２００×１２００の塗りつぶされた牛の文字を用意する。
ウェイト番号には１２を格納する。
文字基本ウェイト中心線ベクトル移動変形情報の構築機能により、文字基本情報中心線ベクトルと対応するウェイトの中心線ベクトルを指定することにより、移動変形情報個数および移動変形情報が格納される。
文字基本ウェイト太さ情報の構築機能により、中心線ベクトルと外郭線ベクトルを指定して、中心線ベクトルに対応する太さ情報の個数および太さ情報が格納される。
文字基本ウェイト島情報の構築機能により、島を形成する中心線ベクトルを指定することにより、島情報個数、島情報中心点座標、隣接中心線ベクトル情報が格納される。
用意した「テオン書体」は破棄される。
【００４２】
「書体部品情報の自動生成手順」
「テオン角ゴシック体」の「書体部品情報」を求めるため、指定した塗りつぶされた３０文字を用意する。
用意した文字をスキャナーで読み込み２値の１２００×１２００ドットのデータにする。
１２００×１２００ドットのデータを細め処理を行い、一ドット幅のデータに変換する。
一ドット幅のデータの中心をたどりながら、短直線で構成される連続線に変換する、短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを中心線とする。
スキャナーで読み込んだ１２００×１２００ドットのデータを一ドット幅の外郭データに変換する。
一ドット幅の外郭データの中心をたどりながら、短直線で構成される連続線を求める。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを外郭線とする。
文字基本情報の同じ文字を構成するそれぞれの中心線ベクトルと同じ部位にある、直線と曲線で構成される連続線を角度と位置により分類し、文字基本情報の中心線ベクトルからの変異情報を求める。
文字基本情報の中心線ベクトルと変異情報から部品の中心線ベクトルを求める。
中心線ベクトルの点座標からベクトルの進行方向に垂直な線分を求める。
求めた線分と外郭線の交点と中心線ベクトルの点座標の距離を部品の太さ情報とする。
中心線ベクトルの端点の太さ情報を基準点として角情報とする。
その他の交点同士を繋ぐ外郭線が単純曲線でないとき、太さに付随する外郭線として保持する中心線ベクトル、太さ情報、付随情報、角情報を１つの部品とし書体部品情報として格納する。
以上の部品の生成を図５に示す。
用意した「テオン角ゴシック体」は破棄される。
【００４３】
「書体部首情報の自動生成手順」
「テオン角ゴシック体」の「書体部首情報」を求めるため、指定した塗りつぶされた８０文字を用意する。
用意した文字をスキャナーで読み込み２値の１２００×１２００ドットのデータにする。
１２００×１２００ドットのデータを細め処理を行い、一ドット幅のデータに変換する。
一ドット幅のデータの中心をたどりながら、短直線で構成される連続線に変換する。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを中心線とする。
スキャナーで読み込んだ１２００×１２００ドットのデータを一ドット幅の外郭データに変換する。
一ドット幅の外郭データの中心をたどりながら、短直線で構成される連続線を求める。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを外郭線とする。
文字基本情報の同じ文字を構成するそれぞれの中心線ベクトルと同じ部位にある、直線と曲線で構成される連続線を角度と位置により分類し、文字基本情報の中心線ベクトルからの変異情報を求める。
文字基本情報の中心線ベクトルと変異情報から部品の中心線ベクトルを求める。
「書体部品情報」と中心線ベクトルから文字を生成する。
中心線ベクトルの点座標からベクトルの進行方向に垂直な線分を求める。
求めた線分と外郭線の交点と中心線ベクトルの点座標の距離を部品の太さとし、部品から生成した文字の太さ補正処理を行う。
文字の外郭線と部品から生成した文字の外郭線と部品の接合状況で、部品の端点と端点が接続する場合、外郭線を接続部角情報とする。
また部品の端点とそれ以外で接続する場合で、はみ出していないとき、部品切断情報とする。
はみ出すとき端点に対応する中心線ベクトルと外郭線をから角情報を求め、部品と部品の接合部の形状を表現する外郭線を接続部角情報とする。
以上の角情報については、図６に示す。
用意した「テオン角ゴシック体」は破棄される。
【００４４】
「書体変形情報の自動生成手順」
「テオン角ゴシック体」の「書体変形情報」を求めるため、指定した塗りつぶされた２００文字用意する。
用意した文字をスキャナーで読み込み２値の１２００×１２００ドットのデータを用意する。
読み込んだ１２００×１２００ドットのデータを細め処理を行い、一ドット幅のデータに変換する。
一ドット幅のデータの中心をたどりながら、短直線で構成される連続線に変換する。
短直線で構成される連続線の凹凸を曲線と直線で近似することによって直線と曲線で構成される連続線に変換しこれを中心線とする。
文字基本情報の同じ文字を構成するそれぞれの中心線ベクトルと同じ部位にある
、直線と曲線で構成される連続線を角度と位置により分類し、文字基本情報の中心線ベクトルと対応付けることにより変異情報を求め、変異情報と文字基本情報の中心線ベクトルから文字の中心線ベクトルを求める。
「書体部品情報」と「書体部首情報」と中心線ベクトルから文字を生成する。
生成した文字の部品と塗りつぶされた文字の部位を重ね差異を求める。
差異が部品が太いことを示す場合、部品を細くし、差異が部品が細いことを示す場合、部品を細める処理を行い、差異が部品が位置ずれを示す場合、該当する部品の中心線ベクトルを構成する点を移動する。
移動したした中心線ベクトルが以前求めた中心線ベクトルと同一になるまで上記の処理を繰返す。
４００文字以外の文字は、文字基本情報の中心線ベクトルと用意した文字の文字基本情報の情報を比較し、文字を構成する部首あるいは部品で最も近い自動生成した書体変形情報を適応する。
用意した「テオン角ゴシック体」は破棄される。
【００４５】
「書体ウェイト変形情報の生成手順」
文字生成手順で「書体ウェイト変形情報」を使用する部分で「文字基本ウェイト情報」を使用し指定されたウェイト１の文字を生成する。
「文字基本ウェイト情報」の島情報が生成した文字に存在するとき、対を成す中心線ベクトルの間に島が存在しないとき、太さ補正量を２ドットとして、対を成す中心線ベクトルの太さ補正処理を行うと同時に島情報中心点座標と反対方向に太さ補正量の半分位置補正を行い、島（白い部分）が出現するまで上記の処理を繰り返し、行った補正情報を書体ウェイト変形情報とする、。
すべての島が存在するように上記の補正処理をくり返す。
また上記の処理をウェイト１〜ウェイト１２まで繰り返し「書体ウェイト変形情報」を求める。
以上の処理を、図９に示す。
【００４６】
【実施例２】
この実施例では、実施例１で作成したインテリジェントフォントのデータ構造に基づいて、筆順情報を持ったインテリジェントフォント描画処理について説明する。他の文字についても同様である。
「インテリジェントフォント描画処理の説明」
「テオン角ゴシックウェイト３」の描画用書体を生成する手順
描画用書体管理テーブルの書体名に「テオン角ゴシックウェイト３」が格納される。
描画用書体管理テーブルのウェイトにウェイト３を示す３が格納される。
描画用書体管理テーブルの描画用書体情報定義場所に"THEONKG3.DDT"が格納される。
描画用書体情報のコード体系識別にはＪＩＳコード体系を示す１が格納される。
描画用書体情報のコードテーブル定義場所には１００Ｈが格納される。
描画用書体情報の描画用ペアベクトル情報定義場所には１５０００Ｈが格納される。
文字「牛」について描画ベクトルを求めるまでの手順を説明する。
牛の文字基本情報から中心ベクトルからなる文字骨格を生成する。
文字骨格の中心線ベクトルの点座標を書体変形情報の移動情報により移動する。
文字骨格の中心線ベクトルの点座標を書体ウェイト変形情報の中心線ベクトル変形情報により移動する。
その際中心線ベクトルの太さ情報を太さ情報を元に変更する。
配置された部品同士を書体部首情報の部品結合情報によって結合し文字を完成させる完成された文字から横方向で塗り潰すために中心線ベクトルの点を基準点とす
る塗潰し開始ベクトルと塗潰し終了ベクトルを生成する。
生成した中心線ベクトルと塗潰し開始ベクトルと塗潰し終了ベクトルを描画用ペアベクトル情報として"THEONKG3.DDT"に格納する。
格納する内容は、牛の文字に対応するコードテーブルの内容は２１７７番目のコードには３５６ＤＨが、描画用ペアベクトル情報オフセットには１９６０８Ｈが格納される。
描画用ペアベクトル情報の中心線ベクトルの数には４が格納される、。
中心線ベクトルの数４について、その１の中心線座標には（１，１，２，３１６，９８３）、（４，２５８，８２３）、（４，２００，６８５）、（１，１１１，７０１）が格納される。
その２の中心線座標には（０，２２４，７７３）、（１，１０２４，７７３）が格納される。
その３の中心線座標には（０，３９，５１０）、（１，１１２１，５１０）が格納される。
その４の中心線座標には（０，６０３，１０５８）、（１，６０３，１３７）が格納される。
ペアベクトル数には６が格納される。
ペアベクトル数６について、その１の塗潰し開始ベクトルには（１，１，０，０，−２６，−２９）、（１，１，０，１，−３９，２）が、塗潰し終了ベクトルには（１，１，０，０，−２６，−２９）、（１，１，０，１，５１，２）が格納される。
その２の塗潰し開始ベクトルには（１，１，０，２，−３９，２）、（１，１，３３３，４，−３４，−１７）、（１，１，６６６，４，−３４，−１７）、（１，２，０，１，−４０，−２０）が、塗潰し終了ベクトルには（１，１，０，２，５１，２）、（１，１，３３３，４，３４，１７）、（１，１，６６６，４，３４，１７）、（１，２，０，１，６７，−１７）が格納される。
その３の塗潰し開始ベクトルには（２，１，０，０，−４０，−２０）、（２，２，０，１，２９，３５）が、塗潰し終了ベクトルには（２，１，０，０，６７，−１７）、（２，１，０，１，２９，３５）が格納される。
その４の塗潰し開始ベクトルには（３，１，０，０，２６，−３０）、（３，２，０，１，−１５，３０）が、塗潰し終了ベクトルには（３，１，０，０，１２，−３０）、（３，２，０，１，１２，３０）が格納される。
その５の塗潰し開始ベクトルには（４，１，０，０，−６，−３０）、（４，２，０，１，−６，３０）が、塗潰し終了ベクトルには（４，１，０，０，６，−３０）、（４，２，０，１，６，３０）が格納される。
その６の塗潰し開始ベクトルには（５，１，０，０，−３０，９）、（５，２，０，１，３０，９）が、塗潰し終了ベクトルには（５，１，０，０，−３０，１９）、（５，２，０，１，３０，１９）が格納される。
【００４７】
「テオン角ゴシックウェイト３」の描画手順
「テオン角ゴシックウェイト３」の牛の文字の描画を１００×２００ドットで描画する手順を説明する。
書体名「テオン角ゴシックウェイト３」をキーにして、描画用書体管理テーブルから描画用書体情報定義場所の"THEONKG3".DDTを取り出す。
描画用書体情報からコードテーブル定義場所の１００Ｈを取り出す。
描画用書体情報から描画用ペアベクトル情報定義場所の１５００Ｈを取り出す。
牛のコードから２１７７番目のコードテーブルに格納されている描画用ペアベクトル情報オフセットの１９６０８Ｈを取り出す、。
描画用書体情報から３４６０８Ｈの位置から中心線ベクトルとペアベクトルを取り出す。
中心線ベクトルのＸ座標には０．０８３３３（１００／１２００）、Ｙ座標には０．１６６６６（２００／１２００）を掛けて座標変換を行う。
ペアベクトルには０．１６６６６を掛けて変換し、ペアベクトルの座標を基準点からの相対座標ではなく絶対座標に変換する。
Ｙ座標を０から２００まで１ステップづつ変化させ、それぞれのペアベクトルに該当するＹ座標が存在するとき塗り潰し開始ベクトルのＸ座標から塗り潰し、終了ベクトルのＸ座標まで線を描画する。
【００４８】
【発明の効果】
以上説明したように、本発明に係る筆順等の情報を持ったインテリジェントフォントは、本発明の手順で構築されたデータベースであるので、筆順などの高度な情報を持つことを特徴とし、文字を構成する中心線ベクトルと書体を特徴付ける太さや角情報などを持った部品を組み合わせることによって文字を生成することができることを特徴とする。
従来のドットフォント或いはアウトラインフォントは、１書体を作成するには、必要な文字すべて（ＪＩＳでは約７千文字）をデザインしデジタル化することが必要があったが、本発明に係るインテリジェントフォントは、数十から数百文字をデザインし、それらの関係をデータベース化することによって、実際に使用するフォントは、そのデータベースからの生成過程によって描画されるために、従来の３０分の１以下の作業量で１書体を生成できるという効果を奏する。
また、本発明に係るインテリジェントフォントは、部品や中心線を変更することによって、文字を新たにデザインすることなく、違った雰囲気を持ったファミリー書体をも生成することができるという効果を奏する。
さらに、従来のアウトラインフォントの描画方法は、先ず、輪郭線を描画し、その後、内外の判定をし、塗りつぶし終点を判定しながら、輪郭線の内側を塗りつぶし作業を行う２工程で行われていたために時間が掛かったが、本発明の筆順等の情報を持ったインテリジェントフォントは、描画のために中心線データと中心線を基準点とす塗潰し開始ベクトルと塗潰し開始ベクトルから構成されるために塗潰し開始ベクトルを始点として、塗潰し開始ベクトルを終点とする直線を描画するだけの１工程のみによる描画方法を採用したので、従来のアウトラインフォントの描画方法に比べて高速な描画が可能になるという効果を奏する。