(57)【要約】【課題】文字データ、文字コードおよびビットマップサイズに応じて、見かけの大きさが揃った、ばらつきのない読み易い文字列を示すデータを生成すること。【解決手段】  本発明の文字データ生成装置は、文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するタイプ判定手段と、前記少なくとも1つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整する調整手段と、前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成する文字データ生成手段とを備える。【選択図】図８
2006195230.tif 000002
【特許請求の範囲】
【請求項１】
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するタイプ判定手段と、
前記少なくとも1つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整する調整手段と、
前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成する文字データ生成手段と
を備えた文字データ生成装置。
【請求項２】
前記少なくとも１つの対象ストロークと前記指定枠との前記位置関係は、前記少なくとも１つの対象ストロークと前記指定枠との間の角度、前記少なくとも１つの対象ストロークを前記指定枠に投影させた長さおよび前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離のうちの少なくとも１つである、請求項１に記載の文字データ生成装置。
【請求項３】
前記調整手段は、前記少なくとも１つの対象ストロークが該当するタイプと前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整する、請求項１に記載の文字データ生成装置。
【請求項４】
前記調整手段は、前記少なくとも１つの対象ストロークの位置および形状のうち、少なくとも一方を調整する、請求項１に記載の文字データ生成装置。
【請求項５】
前記調整手段は、前記少なくとも１つの対象ストロークの端点と前記指定枠との間の距離に基づいて、前記少なくとも１つの対象ストロークを調整する、請求項１に記載の文字データ生成装置。
【請求項６】
前記指定枠は、縦枠と横枠とを有し、
前記調整手段は、前記少なくとも１つの対象ストロークの端点と前記縦枠との間の距離を所定量だけ調整し、前記端点と前記横枠との間の距離を前記所定量とは異なる量だけ調整する、請求項１に記載の文字データ生成装置。
【請求項７】
前記文字データ生成装置は、前記少なくとも１つの対象ストロークを調整するか否かを示すデータを格納する格納手段を更に備え、
前記データは、前記文字に対応付けられた文字コードと前記指定枠の大きさとに対応付けられており、
前記調整手段は、前記文字コードと前記指定枠の大きさとに基づいて前記データを参照することによって、前記少なくとも１つの対象ストロークを調整する、請求項１に記載の文字データ生成装置。
【請求項８】
前記複数のタイプは、「線」、「面」および「点」を含み、
前記タイプ判定手段は、前記少なくとも１つの対象ストロークと前記指定枠との間の角度に基づいて、前記少なくとも１つの対象ストロークの該当するタイプが「線」および「面」のうちの一方であるか、「点」であるかを判定する、請求項１に記載の文字データ生成装置。
【請求項９】
前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークが該当するタイプが「線」であるか「面」であるかを判定する、請求項８に記載の文字データ生成装置。
【請求項１０】
前記少なくとも１つの対象ストロークが該当するタイプが「点」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークの位置が前記文字の端であるか否かを判定し、
前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整する、請求項８に記載の文字データ生成装置。
【請求項１１】
前記少なくとも１つの対象ストロークが該当するタイプが「面」であると判定された場合には、前記タイプ判定手段は、前記少なくとも１つの対象ストロークを前記指定枠に投影させた長さに基づいて、前記少なくとも１つの対象ストロークの大きさを判定し、
前記調整手段は、前記大きさに関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整する、請求項９に記載の文字データ生成装置。
【請求項１２】
前記少なくとも１つの対象ストロークが該当するタイプが「線」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークの位置が前記文字の端であるか否かを判定し、
前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整する、請求項９に記載の文字データ生成装置。
【請求項１３】
コンピュータに文字データ生成処理を実行させるためのプログラムであって、
前記文字データ生成処理は、
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するステップと、
前記少なくとも１つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整するステップと、
前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成するステップと
を包含する、プログラム。
【請求項１４】
文字データ生成処理をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記文字データ生成処理は、
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するステップと、
前記少なくとも１つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整するステップと、
前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成するステップと
を包含する、記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解像度が低い表示装置（例えば、液晶ディスプレイ、ＥＬディスプレイ、プラズマディスプレイ、ＣＲＴ）に好適に用いられ、文字の形状を示す文字データを生成する文字データ生成装置、コンピュータに文字データ生成処理を実行させるためのプログラムおよび、このプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
同一型の文字の一揃いは、フォントと称される。フォントには、文字コード（例えばＪＩＳコード、シフトＪＩＳコード、ＥＵＣコード、ＪＩＳ区点コード、ＵＮＩＣＯＤＥ）が割り当てられている。フォントは、コードの全てを網羅する文字を含んでいてもよいし、例えば、文字のうち、かな類のみまたは、数字のみでもあり得る。
【０００３】
図１は、複数の文字を示す。Ｗ３は、ボディ枠を示す。ボディ枠は、複数の文字が文字列として縦または横に並べられたときに、最低必要とされる字間や行間を含む枠である。ボディ枠は、同一フォント内の全ての文字のそれぞれでは同一のサイズを有する。Ｗ２は、レター枠を示す。レター枠は、文字がデザインされる枠の基本サイズとして定義されている。レター枠は、同一フォント内の全ての文字のそれぞれでは同一のサイズを有する。Ｗ１は、文字枠を示す。文字枠は、文字が実際にデザインされる範囲を示す。文字枠は、文字のそれぞれでは互いに異なったサイズを有する。
【０００４】
図１（ａ）は、文字「十」を示す。図１（ｂ）は、文字「今」を示す。図１（ｃ）は、文字「国」を示す。図１（ｄ）は、文字「工」を示す。図１（ａ）および図１（ｄ）に示すように、文字枠は、それぞれの文字に対して異なるサイズの矩形によって表されている。例えば、「十」の文字枠は「エ」の文字枠よりも大きい矩形で表されている。
【０００５】
なお、図１（ａ）、図１（ｂ）、図１（ｃ）および図１（ｄ）では、簡略化のため、文字の骨格形状を表すストロークデータによって文字を示しているが、文字の輪郭形状を表すアウトラインデータによって文字を示すことがありえる。
【０００６】
特許文献１には、文字の形状を表すデータを生成する文字データ生成装置の一例が記載されている。この文字データ生成装置は、解像度が低い表示装置（例えば、液晶ディスプレイ、ＥＬディスプレイ、プラズマディスプレイ、ＣＲＴ）に文字列を表示する際に、文字サイズに応じて、レター枠に対する文字枠の比率を変化させることによって、自然でバランスのとれた読みやすい文字列を示すデータを生成する。
【０００７】
この文字データ生成装置によれば、生成された文字の文字枠のサイズに相当するビットマップサイズが、人間が文字を見る場合に１ドットの量子化誤差が大きく影響するようなサイズ未満である場合には、文字の上下左右がレター枠に接する方向に、文字枠の縦方向および横方向の拡縮率をそれぞれ変化させることによって、文字を同じ大きさに揃えて、ばらつきがない読み易い文字列を示すデータを生成できる。
【０００８】
この文字データ生成装置によれば、ビットマップサイズが、人間が文字を見る場合に１ドットの量子化誤差があまり影響しないようなサイズ以上である場合には、文字枠とレター枠との比率を所定の比率に保持することによって、読み易い文字列を示すデータを生成できる。
【０００９】
この文字データ生成装置によれば、ビットマップサイズが、人間が文字を見る場合に１ドットの量子化誤差が大きく影響するサイズ以上で、かつ、１ドットの量子化誤差があまり影響しないサイズ未満である場合には、文字の上下および左右のいずれか一方がレター枠に接する方向に、文字枠の縦方向および横方向を同じ拡縮率で変化することによって、文字を同じ大きさに揃えて、ばらつきのない読み易い文字列を示すデータを生成できる。
【００１０】
特許文献２には、文字データ生成装置の他の例が記載されている。この文字データ生成装置は、解像度が低い表示装置（例えば、液晶ディスプレイ、ＥＬディスプレイ、プラズマディスプレイ、ＣＲＴ）に文字列を表示する際に、文字サイズに応じて、文字データの頂点部分をオーバーハングさせるか否かを判断し、文字データを調整することによって、文字バランスが整い、ラインの揃った読みやすい文字列を示すデータを生成する。例えば、欧文（アルファベット）の場合には、ベースライン、アッセンダーライン、ディセンダーライン、Ｘ−ラインなどのラインに合わせてデザインされる（図２参照）。デザインの形状によっては、文字の高さが不揃いに見えるために、わざとラインよりはみ出させて見え方を揃ったように補正されている。
【００１１】
ただし、ビットマップサイズが、人間が文字を見る場合に１ドットの量子化誤差が大きく影響するサイズでは、ラインよりわざとはみ出させたデザインが強調され、逆に不揃いになる場合があり（図３参照）、これを強制的に調整し、文字バランスを整え（図４参照）、読みやすい文字列を示すデータを生成しえる。
【特許文献１】特願２００３−１６５７４８号
【特許文献２】特開平８−２９７４８２号
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかし、特許文献１に記載された従来技術では、レター枠に接するように文字枠の倍率を変える。従って、図５に示される形状を有する文字や図形において、レター枠に接するように文字枠の倍率を変えた場合、図５（ｂ）に示される形状を有する図形は図５（ａ）に示される形状を有する文字に比べて小さく見え、図５（ｃ）に示される形状を有する図形は図５（ａ）に示される形状を有する図形に比べて大きく見える。
【００１３】
例えば、図６（ａ）に示される文字の大きさを基準とした場合、図６（ｂ）に示される図形に対応する文字枠は図５（ｂ）に示される図形に対応する文字枠より大きくし、図６（ｃ）に示される図形に対応する文字枠は図５（ｃ）に示される図形に対応する文字枠より小さくすることによって、見た目の大きさがそろって読みやすくなる。
【００１４】
なお、図５（ａ）は文字「井」を示すが、文字「十」を示し得る。図５（ｂ）は文字「今」および文字「奉」を示し得る。図５（ｃ）は文字「国」および文字「囲」を示し得る。
【００１５】
また、１文字の中に、図５（ａ）、図５（ｂ）および図５（ｃ）で示された要素を合わせ持つ文字も存在する。たとえば、文字「杏」に含まれる「木」の上の部分は、図５（ａ）で示された要素を有し、文字「杏」に含まれる「口」の下の部分は、図５（ｃ）で示された要素を有し、文字「尹」の上の部分は、図５（ｃ）で示された要素を有し、下の部分は、図５（ｂ）で示された要素を有する。
【００１６】
特許文献１に記載の従来技術では、このような文字を含む文字列を示すデータをディスプレイに出力した場合、文字枠がレター枠に接する方向に拡大するように文字データを調整するか、または文字枠とレター枠との比率を保ったままで拡縮するように文字データを調整することしかできない。従って、図６（ａ）、図６（ｂ）および図６（ｃ）で示された文字（図形）の形状によって各文字の見た目の大きさを調整したり、１文字の中に図５（ａ）、図５（ｂ）および図５（ｃ）で示された各要素を併せ持つ場合に文字のストローク毎に調整し、より見やすい文字列を出力することができなかった。
【００１７】
また、特許文献２に記載の従来技術では、アウトラインフォントの高さに基づいてアウトラインフォントの頂点の座標値をオーバーハングさせるか否かを判断させるだけである。従って、「Ｊ」の下カーブの頂点の座標や「Ｃ」の上下カーブの頂点の座標をオーバーハングさせるか（図３参照）、「Ｊ」の下カーブの頂点の座標や「Ｃ」の上下カーブの頂点の座標をオーバーハングさせないか（図４参照）のどちらかの処理しかできない。この技術は、欧文（アルファベット）のように、ベースライン、キャピタルライン、アッセンダーライン、ディセンダーライン、Ｘ−ラインなどのラインに合わせてデザインされている文字では、たいへん有効な技術であるが、例えば「国」や「囲」などの漢字文字（図５（ｃ）参照）の場合、図６（ｃ）に示すように、図５（ｃ）に示すレター枠の位置より引っ込めないと図６に示すように、文字（図形）を同じ大きさに見せることができない。すなわち、特許文献２に記載の従来技術でのオーバーハングするか否かだけの判断だけではなく、引っ込める判断を加えないと漢字の場合、見かけ上、同じ大きさに見せることができなかった。  
【００１８】
本発明は、上記課題に鑑みてなされたものであり、文字の形状や文字の大きさを調整することによって、見やすい文字列を示すデータを生成できる文字データ生成装置、コンピュータに文字データ生成処理を実行させるためのプログラムおよび、このプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明の文字データ生成装置は、文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するタイプ判定手段と、前記少なくとも1つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整する調整手段と、前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成する文字データ生成手段とを備え、これにより、上記目的が達成される。
【００２０】
前記少なくとも１つの対象ストロークと前記指定枠との前記位置関係は、前記少なくとも１つの対象ストロークと前記指定枠との間の角度、前記少なくとも１つの対象ストロークを前記指定枠に投影させた長さおよび前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離のうちの少なくとも１つでよい。
【００２１】
前記調整手段は、前記少なくとも１つの対象ストロークが該当するタイプと前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整してもよい。
【００２２】
前記調整手段は、前記少なくとも１つの対象ストロークの位置および形状のうち、少なくとも一方を調整してもよい。
前記調整手段は、前記少なくとも１つの対象ストロークの端点と前記指定枠との間の距離に基づいて、前記少なくとも１つの対象ストロークを調整してもよい。
【００２３】
前記指定枠は、縦枠と横枠とを有し、前記調整手段は、前記少なくとも１つの対象ストロークの端点と前記縦枠との間の距離を所定量だけ調整し、前記端点と前記横枠との間の距離を前記所定量とは異なる量だけ調整してもよい。
【００２４】
前記文字データ生成装置は、前記少なくとも１つの対象ストロークを調整するか否かを示すデータを格納する格納手段を更に備え、前記データは、前記文字に対応付けられた文字コードと前記指定枠の大きさとに対応付けられており、前記調整手段は、前記文字コードと前記指定枠の大きさとに基づいて前記データを参照することによって、前記少なくとも１つの対象ストロークを調整してもよい。
【００２５】
前記複数のタイプは、「線」、「面」および「点」を含み、前記タイプ判定手段は、前記少なくとも１つの対象ストロークと前記指定枠との間の角度に基づいて、前記少なくとも１つの対象ストロークの該当するタイプが「線」および「面」のうちの一方であるか、「点」であるかを判定してもよい。
【００２６】
前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークが該当するタイプが「線」であるか「面」であるかを判定してもよい。
【００２７】
前記少なくとも１つの対象ストロークが該当するタイプが「点」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークの位置が前記文字の端であるか否かを判定し、前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整してもよい。
【００２８】
前記少なくとも１つの対象ストロークが該当するタイプが「面」であると判定された場合には、前記タイプ判定手段は、前記少なくとも１つの対象ストロークを前記指定枠に投影させた長さに基づいて、前記少なくとも１つの対象ストロークの大きさを判定し、前記調整手段は、前記大きさに関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整してもよい。
【００２９】
前記少なくとも１つの対象ストロークが該当するタイプが「線」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記少なくとも１つの対象ストロークの端点との間の距離に基づいて、前記少なくとも１つの対象ストロークの位置が前記文字の端であるか否かを判定し、前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記少なくとも１つの対象ストロークを調整してもよい。
【００３０】
本発明のプログラムは、コンピュータに文字データ生成処理を実行させるためのプログラムであって、前記文字データ生成処理は、文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するステップと、前記少なくとも１つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整するステップと、前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成するステップとを包含し、これにより、上記目的が達成される。
本発明の記録媒体は、文字データ生成処理をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記文字データ生成処理は、文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するステップと、前記少なくとも１つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整するステップと、前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成するステップとを包含し、これにより、上記目的が達成される。
【発明の効果】
【００３１】
本発明の文字データ生成装置、コンピュータに文字データ生成処理を実行させるためのプログラムおよび、このプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、文字データ、文字コードおよびビットマップサイズに応じて、見かけの大きさが揃った、ばらつきのない読み易い文字列を示すデータを生成できる。特に、解像度が中から低の表示装置に最適な文字列を表示できる。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照して本発明の実施の形態を説明する。
【００３３】
はじめに、本明細書で用いる用語を説明する。  図７は、文字を構成するストロークを複数の要素に分類するためのしきい値を示す。複数の要素は、例えば、「線面」、「点」、「横面」、「縦面」、「横線」、「縦線」、「横面小」、「横面中」、「横面大」、「縦面小」、「縦面中」、「縦面大」、「横線端」、「縦線端」、「点端」を含む。
【００３４】
図７（ａ）は、文字を構成するストロークを「線面」または「点」に分類するためのしきい値を示す。図７（ｂ）は、文字を構成するストロークを「横面」、「縦面」、「横線」または「縦線」に分類するためのしきい値を示す。図７（ｃ）は、文字を構成するストロークを「横面小」、「横面中」、「横面大」、「縦面小」、「縦面中」または「縦面大」に分類するためのしきい値を示す。図７（ｄ）は、文字を構成するストロークを「横線端」または「縦線端」に分類するためのしきい値を示す。図７（ｅ）は、文字を構成するストロークを「点端」に分類するためのしきい値を示す。
「線面」は、ストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３またはＮｏ．４の範囲であるストロークの要素である。「点」は、ストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３およびＮｏ．４の範囲でないストロークの要素である。
【００３５】
「横面」は、「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．１の範囲であるストロークの要素である。「縦面」は、「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．２の範囲であるストロークの要素である。
【００３６】
「横線」は、「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．１の範囲でないストロークの要素である。「縦線」は、「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．２の範囲でないストロークの要素である。
【００３７】
「横面小」は、「横面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．１の長さ以上Ｎｏ．２の長さ未満のストロークの要素である。「横面中」は、「横面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．２の長さ以上Ｎｏ．３の長さ未満のストロークの要素である。「横面大」は、「横面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．３の長さ以上のストロークの要素である。
【００３８】
「縦面小」は、「縦面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．４の長さ以上Ｎｏ．５の長さ未満のストロークの要素である。「縦面中」は、「縦面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．５の長さ以上Ｎｏ．６の長さ未満のストロークの要素である。「縦面大」は、「縦面」であると判定されたストロークのうち、図７（ｃ）に示されたＮｏ．６の長さ以上のストロークの要素である。
【００３９】
「横線端」は、「横線」であると判定されたストロークのうち、ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．２の範囲であるストロークの要素である。「縦線端」は、「横線」であると判定されたストロークのうち、ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．１の範囲であるストロークの要素である。
【００４０】
「点端」は、「点」であると判定されたストロークのうち、ストロークの端点と文字枠との距離が、図７（ｅ）に示されたＮｏ．１の範囲であるストロークの要素である。
【００４１】
なお、文字を構成するストロークを複数の要素に分類するためのしきい値は、図７に示された例に限定されない。「線面」であるか「点」であるかを判定するためのしきい値は、上記しきい値に限定されない。「横面」であるか「縦面」であるかを判定するためのしきい値は、上記しきい値に限定されない。「横線」であるか「縦線」であるかを判定するためのしきい値は、上記しきい値に限定されない。「横面小」であるか「横面中」であるか「横面大」であるかを判定するためのしきい値は、上記しきい値に限定されない。「縦面小」であるか「縦面中」であるか「縦面大」であるかを判定するためのしきい値は、上記しきい値に限定されない。「横線端」であるか「縦線端」であるかお判定するためのしきい値は、上記しきい値に限定されない。「点端」であるか否かを判定するためのしきい値は、上記しきい値に限定されない。これらのしきい値は、任意である。
【００４２】
図８は、本発明の実施の形態の文字データ生成装置１００の一例を示す。文字データ生成装置１００は、文字データ入力手段１と、サイズ指定入力手段２と、文字コード入力手段３と、拡縮手段４と、判定手段５と、調整テーブル格納手段６と、調整手段７と、出力手段８とを含む。
【００４３】
文字データ生成装置１００は、例えばパーソナルコンピュータでありえる。パーソナルコンピュータには、ディスクトップ型またはラップトップ型、ノート型などの任意のタイプのコンピュータが含まれる。または、文字データ生成装置１００はワードプロセッサでありえる。さらに、文字データ生成装置１００は、サーバー装置でありえる。サーバー装置には、特に表示デバイスが含まれなくてもよい。文字データ生成装置１００は、液晶表示デバイスを備えた電子機器や、携帯情報ツールである携帯情報端末や、ＰＨＳを含む携帯電話装置や一般の電話機／ＦＡＸなどの通信機器（通信装置）などでありえる。
【００４４】
文字データ入力手段１には、文字を示す文字データが入力される。文字データは、例えば、文字の形状を示す。例えば、文字データは、ベクトルデータであり得る。ベクトルデータは、例えば、ストローク型やアウトライン型、ビットマップ型を含む。
【００４５】
図９は、文字を構成するストロークを示す。図９（ａ）は、文字「十」を構成するストロークを示す。図９（ｂ）は、文字「今」を構成するストロークを示す。図９（ｃ）は、文字「国」を構成するストロークを示す。図９（ｄ）は、文字「繰」を構成するストロークを示す。図９（ｅ）は、文字「莞」を構成するストロークを示す。
【００４６】
図１０は、文字データを示す。図１０（ａ）は、文字「十」を示す文字データを示す。図１０（ｂ）は、文字「今」を示す文字データを示す。図１０（ｃ）は、文字「国」を示す文字データを示す。図１０（ｄ）は、文字「繰」を示す文字データを示す。図１０（ｅ）は、文字「莞」を示す文字データを示す。
【００４７】
以下、図９と図１０とを参照して、文字データを説明する。
【００４８】
文字「十」を示す文字データは、例えば、テーブルによって示される（図１０（ａ）参照）。テーブルは、複数の領域を含む。複数の領域には、複数のデータが入力されている。領域０１に文字コードが入力されている。文字コードは、「十」を示す区点コード「２９２９」である。領域０２に文字を構成するストロークの数が入力されている。ストロークの数は、「十」を構成するストローク数２である。領域０４にストロークの番号が入力されている。ストロークの番号は、例えば、図９（ａ）に示すストローク＃１−１に対応して「１」である。領域０５にストロークを示す座標の数が入力されている。座標の数は、例えば、ストローク＃１−１に対応して、「２」である。領域０６にストロークの種類が入力されている。ストロークの種類は、例えば、ストローク＃１−１に対応して、「直線」である。領域０７にストロークの両端の座標値が入力されている。ストロークの両端の座標値は、例えば、ストローク＃１−１に対応して、（８，１３７）と（２４７，１３７）とである。
【００４９】
文字「今」を示す文字データは、例えば、テーブルによって示される（図１０（ｂ）参照）。テーブルは、複数の領域を含む。複数の領域には、複数のデータが入力されている。領域０１に文字「今」の区点コード「２６０３」が入力されている。領域０２に文字「今」を構成するストロークの数「９」が入力されている。領域０４に図９（ｂ）に示すストローク＃２−１の番号「１」が入力されている。領域０５に、例えば、ストローク＃２−１を示す座標の数「２」が入力されている。領域０６に、例えば、ストローク＃２−１の種類「直線」が入力されている。領域０７に、例えば、ストローク＃２−１の両端の座標値（１２８，２５０）と（８９，２１５）とが入力されている。
【００５０】
文字「国」を示す文字データは、例えば、テーブルによって示される（図１０（ｃ）参照）。テーブルは、複数の領域を含む。複数の領域には、複数のデータが入力されている。領域０１に文字「国」の区点コード「２５８１」が入力されている。領域０２に文字「国」を構成するストロークの数「１０」が入力されている。領域０４に図９（ｃ）に示すストローク＃３−１の番号「１」が入力されている。領域０５に、例えば、ストローク＃３−１を示す座標の数「２」が入力されている。領域０６に、例えば、ストローク＃３−１の種類「直線」が入力されている。領域０７に、例えば、ストローク＃３−１の両端の座標値（２１，２４０）と（２１，１５）とが入力される。
【００５１】
以下、再び、図８を参照して、文字データ生成装置１００の構成の説明を続ける。
【００５２】
サイズ指定入力手段２には、文字のレター枠に対応するビットマップサイズを示すデータが入力される。入力されたビットマップサイズを示すデータは、サイズ指定入力手段２に接続された拡縮手段４および調整テーブル６に供給される。ビットマップサイズは、例えば１以上の整数値である。
【００５３】
文字コード入力手段３には、文字コードを示すデータが入力される。入力された文字コードを示すデータは、文字コード入力手段３に接続された調整テーブル６に供給される。
【００５４】
拡縮手段４は、サイズ指定入力手段２から供給されるビットマップサイズを参照して、文字の大きさを拡縮する。
【００５５】
例えば、文字データ入力手段１から供給される文字データが文字「十」のストロークデータ（図１０（ａ）参照）で、サイズ指定入力手段２から供給されるビットマップサイズが２４である場合には、ストローク＃１−１に対応する領域０７（図１０（ａ）参照）に入力されている座標（８，１３７）は、ｎｘ＝ｉｎｔ（８／２５５×（２４−１））で計算され、ｎｘ＝１となり、ｎｙ＝ｉｎｔ（１３７／２５５×（２４−１））で計算され、ｎｙ＝１２になり、座標は（１，１２）に縮小される。
【００５６】
図１１は、縮小された座標値を示す。座標値ｘを縮小することによって、縮小後の座標値ｎｘが生成される。座標値ｙを縮小することによって、縮小後の座標値ｎｙが生成される。
【００５７】
図１１（ａ）は、図１０（ａ）に示された座標値を縮小した座標値を示す。図１１（ｂ）は、図１０（ｂ）に示された座標値を縮小した座標値を示す。図１１（ｃ）は、図１０（ｃ）に示された座標値を縮小した座標値を示す。図１１（ｄ）は、図１０（ｄ）に示された座標値を縮小した座標値を示す。図１１（ｅ）は、図１０（ｅ）に示された座標値を縮小した座標値を示す。
【００５８】
図１２は、縮小された文字データによって示された文字を示す。図１２（ａ）は、図１１（ａ）に示された文字データによって示された文字を示す。図１２（ｂ）は、図１１（ｂ）に示された文字データによって示された文字を示す。図１２（ｃ）は、図１１（ｃ）に示された文字データによって示された文字を示す。図１２（ｄ）は、図１１（ｄ）に示された文字データによって示された文字を示す。図１２（ｅ）は、図１１（ｅ）に示された文字データによって示された文字を示す。
【００５９】
以下、再び、図８を参照して、文字データ生成装置１００の構成の説明を続ける。
【００６０】
判定手段５は、拡縮手段４によって拡縮されたデータに基づいて、ストロークの要素を判定する。判定手段５は、Ａ判定手段と、Ｂ判定手段と、Ｃ判定手段と、Ｄ判定手段と、Ｅ判定手段とを含む。
【００６１】
Ａ判定手段は、図７（ａ）に示されたしきい値を参照する。Ｂ判定手段は、図７（ｂ）に示されたしきい値を参照する。Ｃ判定手段は、図７（ｃ）に示されたしきい値を参照する。Ｄ判定手段は、図７（ｄ）に示されたしきい値を参照する。Ｅ判定手段は、図７（ｅ）に示されたしきい値を参照する。
【００６２】
図１１（ａ）および図１２（ａ）に示される文字「十」の場合、Ａ判定手段は、ストローク＃１−１と文字枠との角度は０度（ｔａｎ＝（１２−１２）／（２２−１））であり、ストローク＃１−１の要素は「線面」であると判定する。Ｂ判定手段は、ｙ座標値１２は、２４ドットの６％である１ドット内ではないので、ストローク＃１−１の要素は「横線」であると判定する。Ｄ判定手段は、ｘ座標１は２４ドットの６％である１ドット内なので、ストローク＃１−１の要素は「横線端」であると判定する。
【００６３】
調整テーブル格納手段６は、対象ストロークを調整するか否かを示す調整テーブルを格納する。調整テーブルは、サイズ指定入力手段２によって入力されたビットマップサイズ（指定枠の大きさ）と文字コード入力手段によって入力された文字コードとの関係に応じてストロークの座標位置をどのように調整するかを示す。
【００６４】
図１３は、調整テーブルを示す。例えば、サイズ指定入力手段２によって入力されたビットマップサイズが２４で、文字コードが０１６０（文字は「＋」）である場合、判定は「Ｎｏｎ」を示す。判定「Ｎｏｎ」は、調整手段７によってストロークの座標位置を調整しないことを示す。例えば、サイズ指定入力手段２によって入力されたビットマップサイズが２４で、文字コードが１６０１（文字は「亜」）である場合、判定は「Ｎｕｌｌ」を示す。「Ｎｕｌｌ」は、調整手段７によってストロークの座標位置を調整することを示す。
以下、再び、図８を参照して、文字データ生成装置１００の構成の説明を続ける。
【００６５】
調整手段７は、判定手段５によって判定された結果に従ってストロークの座標位置を調整する。調整テーブル６に判定内容が記載されている場合には、その記載内容に従う。調整手段７は、Ａ調整手段と、Ｂ調整手段と、Ｃ調整手段と、Ｄ調整手段とを含む。
【００６６】
Ａ判定手段は、図７（ａ）に示されたしきい値を参照する。Ｂ判定手段は、図７（ｂ）に示されたしきい値を参照する。Ｃ判定手段は、図７（ｃ）に示されたしきい値を参照する。Ｄ判定手段は、図７（ｄ）に示されたしきい値を参照する。Ｅ判定手段は、図７（ｅ）に示されたしきい値を参照する。
【００６７】
図１１（ａ）および図１２（ａ）に示される文字「十」の場合、図１１（ａ）に示されたストローク＃１−１の要素が「横線端」であると判定されたので、ストローク＃１−１の座標（１，１２），（２２，１２）は図１１（ａ）に記載されたように、指定枠に接するように、座標を（０，１２），（２３，１２）に調整する。
【００６８】
出力手段８は、例えばディスプレイ装置であり得る。ディスプレイ装置は、液晶ディスプレイ、ＥＬディスプレイ、プラズマディスプレイ、ＣＲＴなどを含む。出力手段８は、表示デバイスを備えた電子機器や情報機器（電子情報装置）などの任意の情報表示装置で構成することができる。また、出力手段８は、例えば通信装置であり得る。通信装置としては、インターネットなどに接続される装置などが使用され得る。  以上、図７〜図１３を参照して、本発明の実施の形態の文字データ生成装置１００を説明した。
【００６９】
例えば、図８を参照して説明した例では、判定手段５が「文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するタイプ判定手段」に対応し、調整手段７が「前記少なくとも1つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整する調整手段」に対応し、判定手段５、調整手段７および出力手段８が「前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成する文字データ生成手段」に対応する。しかし、本発明の文字データ生成装置１００が図８に示されるものに限定されるわけではない。上述した各手段の機能が達成される限りは、任意の構成を有する文字データ生成装置が本発明の範囲内に含まれ得る。
文字コードは、例えば、文字を識別するための文字コードであり得る。文字コードは、例えば、ＪＩＳコードやシフトＪＩＳコード、ＥＵＣコード、ＪＩＳ区点コード、ＵＮＩＣＯＤＥを含む。
【００７０】
文字データ入力手段１と、サイズ指定入力手段２と、文字コード入力手段３とは、例えば、通信手段であり得る。通信手段としては、ＬＡＮ、ＷＡＮ、携帯電話網、有線通信網、無線通信網、コンピュータと周辺機器とを接続するためのインターフェイス、コンピュータ内部のバスなどが使用され得る。文字データ入力手段１が通信手段である場合には、文字データ生成装置１００の外部から、文字データ入力手段１に、文字データが入力される。サイズ指定入力手段２が通信手段である場合には、文字データ生成装置１００の外部から、サイズ指定入力手段２に、ビットマップサイズを示すデータが入力される。文字コード入力手段３が通信手段である場合には、文字データ生成装置１００の外部から、文字コード入力手段３に、文字コードを示すデータが入力される。
【００７１】
なお、文字データ入力手段１と、サイズ指定入力手段２と、文字コード入力手段３とに、予め文字データ、ビットマップサイズを示すデータ、文字コードを示すデータが格納されていることがあり得る。  例えば、図８に示される実施の形態で説明した各手段は、ハードウェアによって実現されてもよいし、ソフトウェアによって実現されてもよいし、ハードウェアとソフトウェアとによって実現されてもよい。ハードウェアによって実現される場合でも、ソフトウェアによって実現される場合でも、ハードウェアとソフトウェアとによって実現される場合でも、本発明の文字データ生成装置によって文字データ生成処理が実行され得る。
【００７２】
図１４は、本発明の実施の形態の文字データ生成処理手順を示す。以下、図１４を参照して、本発明の実施の形態の文字データ生成処理手順をステップごとに説明する。
【００７３】
ステップＳ１：文字データ入力手段１から文字データが入力される。例えば文字「十」を示す文字データ（図１０（ａ）参照）が入力される。文字「今」を示す文字データ（図１０（ｂ）参照）が入力される。さらに、文字「国」を示す文字データ（図１０（ｃ）参照）が入力される。
【００７４】
ステップＳ２：サイズ指定入力手段２からビットマップサイズが入力される。例えば、サイズ「２４」が入力される。サイズ「３６」が入力される。または、サイズ「４８」が入力される。
【００７５】
ステップＳ３：文字コード入力手段３から文字コードが入力される。例えば、文字「十」の文字コード「２９２９番（ＪＩＳ区点コード）」が入力される。文字「今」の文字コード「２６０３番（ＪＩＳ区点コード）」が入力される。または、文字「国」の文字コード「２５８１番（ＪＩＳ区点コード）」が入力される。
【００７６】
ステップＳ４：拡縮手段４は、文字データによって示された文字を拡縮する。例えば、文字入力手段１から文字「十」を示す文字データが入力され（ステップＳ１参照）、サイズ指定入力手段２からサイズ「２４」を示すデータが入力された（ステップＳ２参照）場合には、ストローク＃１−１に対応する領域０７（図１０（ａ）参照）に入力されている座標（８，１３７）は、ｎｘ＝ｉｎｔ（８／２５５×（２４−１））で計算され、ｎｘ＝１となり、ｎｙ＝ｉｎｔ（１３７／２５５×（２４−１））で計算され、ｎｙ＝１２になる。従って、座標は、（１，１２）に縮小される。図１１（ａ）は、図１０（ａ）に示された座標値を縮小した座標値を示す。図１２（ａ）は、図１１（ａ）に示された文字データによって示された文字を示す。
【００７７】
例えば、文字入力手段１から文字「今」を示す文字データが入力され（ステップＳ１参照）、サイズ指定入力手段２からサイズ「２４」を示すデータが入力された（ステップＳ２）場合には、図１１（ｂ）に示された座標値が生成され、図１２（ｂ）に示された文字が示される。
【００７８】
また、例えば、文字入力手段１から文字「国」を示す文字データが入力され（ステップ１参照）、サイズ指定入力手段２からサイズ「２４」を示すデータが入力された（ステップ２）場合には、図１１（ｃ）に示された座標値が生成され、図１２（ｃ）に示された文字が示される。
【００７９】
ステップＳ５：Ｎ＝１にセットする。これは、１文字に含まれるストローク数分を処理する時の初期値として使われる。
【００８０】
ステップＳ６：調整テーブル６を参照して、入力された文字データによって示される文字を構成するＮ番目のストロークが調整テーブル６によって示されているか否かを判定する。
【００８１】
示されている（Ｙｅｓ）と判定された場合には、処理は、ステップＳ７に進む。
示されていない（Ｎｏ）と判定された場合には、処理は、ステップＳ８に進む。
【００８２】
ステップＳ７：サイズ指定入力手段によって入力されたビットマップサイズが「２４」で、文字コードが「０１６０（文字は「＋」）」である場合には、ストロークの判定要素がＮになっているため（図１３参照）、調整手段７の調整はおこなわない。
【００８３】
ステップＳ８：判定手段５は、文字を構成するストロークのうち対象ストロークと文字に対応する指定枠との位置関係に基づいて、位置関係を示す複数のタイプのうち対象ストロークが該当するタイプ（ストロークの要素）を判定する。判定手段５によって実行される判定処理手順の詳細は、後述される。
【００８４】
ステップＳ９：調整手段６は、対象ストロークが該当するタイプに基づいて、対象ストロークを示すパラメータ（例えば、ストロークの位置）を調整する。調整手段６によって実行される調整処理手順の詳細は、後述される。
【００８５】
ステップ１０：処理の対象であるストロークが最後のストロークであるか否かを判定する。最後のストロークである（Ｙｅｓ）場合には、処理は、ステップＳ１１に進む。最後のストロークでない（Ｎｏ）場合には、Ｎ＝Ｎ＋１にして、処理は、ステップＳ１６に進む。
【００８６】
ステップＳ６〜ステップＳ１０を繰り返すことによって、調整された対象ストロークを含む文字の形状を示す文字データを生成する。
【００８７】
ステップ１１：調整された文字データを出力する。
【００８８】
図１５は、判定手段５によって実行される判定処理手順を示す。以下、図１５を参照して、判定手段５によって実行される判定処理の詳細をステップごとに説明する。判定処理手順は、Ａ判定手段によって実行される判定処理手順Ａと、Ｂ判定手段によって実行される判定処理手順Ｂと、Ｃ判定手段によって実行される判定処理手順Ｃと、Ｄ判定手段によって実行される判定処理手順Ｄと、Ｅ判定手段によって実行される判定処理手順Ｅとを含む。
【００８９】
図１５（ａ）は、ステップＳＡ１〜ステップＳＡ８を含む判定処理手順Ａを示す。図１５（ｂ）は、ステップＳＢ１〜ステップＳＢ８を含む判定処理手順Ｂを示す。図１５（ｃ）は、ステップＳＣ１〜ステップＳＣ１２を含む判定処理手順Ｃを示す。図１５（ｄ）は、ステップＳＤ１〜ステップＳＤ４を含む判定処理手順Ｄを示す。図１５（ｅ）は、ステップＳＥ１〜ステップＳＥ２を含む判定処理手順Ｅを示す。
【００９０】
以下、判定処理手順Ａを説明する。
【００９１】
ステップＳＡ１：文字「十」を構成する複数のストロークのうち最初のストロークと文字「十」の文字枠との角度を計算する。具体的には、ストローク＃１−１と文字枠との角度が、図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３またはＮｏ．４の範囲であるか否かを判定する。
【００９２】
範囲でない（Ｎｏ）場合には、処理は、ステップＳＡ２に進む。範囲である（Ｙｅｓ）場合には、処理は、ステップＳＡ３に進む。
【００９３】
ストローク＃１−１の座標値に基づいて、角度を計算する場合には、ストローク＃１−１と文字枠との角度は０度（＝Ａｔａｎ（（１２−１２）／（２２−１）））となり、ストローク＃１−１と文字枠との角度は図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３またはＮｏ．４の範囲であると判定される。
【００９４】
ステップＳＡ２：ストロークの要素は「点」であると判定される。判定後、処理は、判定処理手順Ｂに進む。
【００９５】
ステップＳＡ３：ストロークの要素は「線面」であると判定される。判定後、処理は、判定処理手順Ｂに進む。
【００９６】
文字「今」を構成する複数のストロークのうち最初のストローク＃２−１と文字「今」の文字枠との角度を計算する場合には、ストローク＃２−１と文字枠との角度は、４５度（＝Ａｔａｎ（（１９−２３）／（８−１２）））となり、ストローク＃２−１と文字枠との角度は図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３またはＮｏ．４の範囲でないと判定される。処理はステップＳＡ２に進み、ストローク＃２−１は「点」であると判定される。
文字「国」を構成する複数のストロークのうち最初のストローク＃３−１と文字「国」の文字枠との角度を計算する場合には、ストローク＃３−１と文字枠との角度は、２７０度（＝Ａｔａｎ（（２−２１）／（２−２）））となり、ストローク＃３−１と文字枠との角度は図７（ａ）に示されたＮｏ．１、Ｎｏ．２、Ｎｏ．３またはＮｏ．４の範囲であると判定される。処理は、ステップＳＡ３に進み、ストローク＃３−１は「線面」であると判定される。
【００９７】
以下、判定処理手順Ｂを説明する。
【００９８】
ステップＳＢ１：「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．１の範囲であるか否かを判定する。
【００９９】
角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ距離が、図７（ｂ）に示されたＮｏ．１の範囲である（Ｙｅｓ）場合には、処理は、ステップＳＢ２に進む。「Ｎｏ」の場合には、処理は、ステップＳＢ３に進む。
【０１００】
ステップＳＢ２：判定の対象であるストロークの要素は、「横面」であると判定する。判定後、処理は、判定処理手順Ｃに進む。
【０１０１】
ステップＳＢ３：「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．２の範囲であるか否かを判定する。
【０１０２】
角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ距離が、図７（ｂ）に示されたＮｏ．２の範囲である（Ｙｅｓ）場合には、処理は、ステップＳＢ４に進む。「Ｎｏ」の場合には、処理は、ステップＳＢ５に進む。
【０１０３】
ステップＳＢ４：判定の対象であるストロークの要素は、「縦面」であると判定する。判定後、処理は、判定処理手順Ｃに進む。
【０１０４】
ステップＳＢ５：「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．１の範囲でないか否かを判定する。
【０１０５】
角度が、図７（ａ）に示されたＮｏ．２またはＮｏ．４の範囲であり、かつ距離が、図７（ｂ）に示されたＮｏ．１の範囲でない（Ｙｅｓ）場合には、処理は、ステップＳＢ６に進む。「Ｎｏ」の場合には、処理は、ステップＳＢ７に進む。
【０１０６】
ステップＳＢ６：判定の対象であるストロークの要素は、「横線」であると判定する。判定後、処理は、判定処理手順Ｃに進む。
【０１０７】
ステップＳＢ７：「線面」であると判定されたストロークのうち、「線面」であると判定されたストロークと文字枠との角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ「線面」であると判定されたストロークと文字枠との距離が、図７（ｂ）に示されたＮｏ．２の範囲でないか否かを判定する。
【０１０８】
角度が、図７（ａ）に示されたＮｏ．１またはＮｏ．３の範囲であり、かつ距離が、図７（ｂ）に示されたＮｏ．２の範囲でない（Ｙｅｓ）場合には、処理は、ステップＳＢ８に進む。「Ｎｏ」の場合には、処理は、判定処理手順Ｃに進む。
【０１０９】
ステップＳＢ８：判定の対象であるストロークの要素は、「縦線」であると判定する。判定後、処理は、判定処理手順Ｃに進む。
【０１１０】
例えば、文字「十」を構成する複数のストロークのうち「線面」であると判定されたストローク＃１−１は、図７（ａ）のＮｏ．４に該当し、指定枠からの距離としてストローク＃１−１の座標値に基づいて計算をおこなうと、指定枠からの垂直方向の距離は、指定枠の下から１２、指定枠の上から１１になる。サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図７（ｂ）のＮｏ．１の１＝ｉｎｔ（２４×０．０６）とすると、図７（ａ）のＮｏ．４の角度範囲で、指定枠からの垂直方向の距離が、図７（ｂ）の条件でＮｏ．１を含まず、それ以上になるので、「横線」と判定され、処理は、判定処理手順Ｃに進む。
【０１１１】
例えば、文字「今」を構成する複数のストロークのうち「点」であると判定されたストローク＃２−１は、ステップＳＢ１、ステップＳＢ３、ステップＳＢ５、ステップＳＢ７のうちのどの条件も満たさないので、処理は、判定処理手順Ｃに進む。
【０１１２】
例えば、文字「国」を構成する複数のストロークのうち「線面」であると判定されたストローク＃３−１は、ステップＳＢ１で図７（ａ）のＮｏ．３に該当し、指定枠からの距離としてストローク＃３−１の座標値から計算をおこなうと、指定枠からの水平方向の距離は、指定枠の左から２、指定枠の右から２１になる。サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図７（ｂ）のＮｏ．２の２＝ｉｎｔ（２４×０．０８）とすると、図７（ａ）のＮｏ．３の角度範囲で、指定枠からの垂直方向の距離が、図７（ｂ）の条件でＮｏ．２以下になるので、「縦面」と判定され、処理は、判定処理手順Ｃに進む。
【０１１３】
以下、判定処理手順Ｃを説明する。
【０１１４】
ステップＳＣ１：「横面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．１の長さ以上Ｎｏ．２の長さ未満のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．１の長さ以上Ｎｏ．２の長さ未満のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ２に進む。「Ｎｏ」の場合には、処理は、ステップＳＣ３に進む。
【０１１５】
ステップＳＣ２：判定の対象であるストロークの要素は、「横面小」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１１６】
ステップＳＣ３：「横面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．２の長さ以上Ｎｏ．３の長さ未満のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．２の長さ以上Ｎｏ．３の長さ未満のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ４に進む。「Ｎｏ」の場合には、処理は、ステップＳＣ５に進む。
【０１１７】
ステップＳＣ４：判定の対象であるストロークの要素は、「横面中」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１１８】
ステップＣＳ５：「横面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．３の長さ以上のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．３の長さ以上のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ６に進む。「Ｎｏ」の場合には、処理は、ステップＳＣ７に進む。
【０１１９】
ステップＳＣ６：判定の対象であるストロークの要素は、「横面大」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１２０】
ステップＳＣ７：「縦面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．４の長さ以上Ｎｏ．５の長さ未満のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．４の長さ以上Ｎｏ．５の長さ未満のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ８に進む。「Ｎｏ」の場合には、処理は、ステップＳＣ９に進む。
【０１２１】
ステップＳＣ８：判定の対象であるストロークの要素は、「縦面小」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１２２】
ステップＳＣ９：「縦面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．５の長さ以上Ｎｏ．６の長さ未満のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．５の長さ以上Ｎｏ．６の長さ未満のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ１０に進む。「Ｎｏ」の場合には、処理は、ステップＳＣ１１に進む。
【０１２３】
ステップＳＣ１０：判定の対象であるストロークの要素は、「縦面中」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１２４】
ステップＳＣ１１：「縦面」であると判定されたストロークが、図７（ｃ）に示されたＮｏ．６の長さ以上のストロークであるか否かを判定する。図７（ｃ）に示されたＮｏ．６の長さ以上のストロークである（Ｙｅｓ）と判定された場合には、処理は、ステップＳＣ１２に進む。「Ｎｏ」の場合には、処理は、判定処理手順Ｄに進む。
【０１２５】
ステップＳＣ１２：判定の対象であるストロークの要素は、「縦面大」であると判定する。判定後、処理は、判定処理手順Ｄに進む。
【０１２６】
例えば、文字「十」を構成する複数のストロークのうち、「横線」であると判定されたストローク＃１−１は、ステップＳＣ１、ステップＳＣ３、ステップＳＣ５、ステップＳＣ７、ステップＳＣ９、ステップＳＣ１１のどの条件も満たさないので、処理は、判定処理手順Ｄに進む。
【０１２７】
例えば、文字「今」を構成する複数のストロークのうち、「点」と判定されたストローク＃２−１は、ステップＳＣ１、ステップＳＣ３、ステップＳＣ５、ステップＳＣ７、ステップＳＣ９、ステップＳＣ１１のどの条件も満たさないので、処理は、判定処理手順Ｄに進む。
【０１２８】
例えば、文字「国」を構成する複数のストロークのうち、「縦面」と判定されたストローク＃３−１は、長さが２０＝（２１−２＋１）である。さらに、サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図７（ｃ）のＮｏ．１は６＝ｉｎｔ（２４×０．２５）、Ｎｏ．２は１０＝ｉｎｔ（２４×０．４）、Ｎｏ．３は１８＝ｉｎｔ（２４×０．７５）、Ｎｏ．４は６＝ｉｎｔ（２４×０．２５）、Ｎｏ．５は１０＝ｉｎｔ（２４×０．４）、Ｎｏ．６は１８＝ｉｎｔ（２４×０．７５）であり、条件がＮｏ．６以上となる。したがって、ステップＳＣ１１で、「縦面大」と判定され、処理は、判定処理手順Ｄに進む。
【０１２９】
以下、判定処理手順Ｄを説明する。
【０１３０】
ステップＳＤ１：「横線」であると判定されたストロークが、ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．２の範囲であるストロークであるか否かを判定する。ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．２の範囲である（Ｙｅｓ）と判定された場合には、処理は、ステップＳＤ２に進む。「Ｎｏ」の場合には、処理は、ステップＳＤ３に進む。
【０１３１】
ステップＳＤ２：判定の対象であるストロークの要素は、「横線端」であると判定する。判定後、処理は、判定処理手順Ｅに進む。
【０１３２】
ステップＳＤ３：「横線」であると判定されたストロークが、ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．１の範囲であるストロークであるか否かを判定する。ストロークの端点と文字枠との距離が、図７（ｄ）に示されたＮｏ．１の範囲である（Ｙｅｓ）と判定された場合には、処理は、ステップＳＤ４に進む。「Ｎｏ」の場合には、処理は、判定処理手順Ｅに進む。
【０１３３】
ステップＳＤ４：判定の対象であるストロークの要素は、「縦線端」であると判定する。判定後、処理は、判定処理手順Ｅに進む。
【０１３４】
例えば、文字「十」を構成する複数のストロークのうち、「横線」であると判定されたストローク＃１−１の端点（１，１２）と（２２，１２）とは、いずれも指定枠（文字枠）から１離れている。さらに、サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図７（ｄ）のＮｏ．１は１＝ｉｎｔ（２４×０．０５）、Ｎｏ．２は１＝ｉｎｔ（２４×０．０５）であり、条件はＮｏ．２以下になる。従って、ステップＳＤ３で、「縦線端」と判定され、処理は、判定処理手順Ｅに進む。
【０１３５】
例えば、文字「今」を構成する複数のストロークのうち、「点」と判定されたストローク＃２−１は、ステップＳＤ１、ステップＳＤ３のどの条件も満たさないので、処理は、判定処理手順Ｅに進む。
【０１３６】
例えば、文字「国」を構成する複数のストロークのうち、「縦面大」と判定されたストローク＃３−１は、ステップＳＤ１、ステップＳＤ３のどの条件も満たさないので、処理は、判定処理手順Ｅに進む。
【０１３７】
以下、判定処理手順Ｅを説明する。
【０１３８】
ステップＳＥ１：「点」であると判定されたストロークが、ストロークの端点と文字枠との距離が、図７（ｅ）に示されたＮｏ．１の範囲であるストロークであるか否かを判定する。図７（ｅ）に示されたＮｏ．１の範囲である（Ｙｅｓ）と判定された場合には、処理は、ステップＳＥ２に進む。「Ｎｏ」の場合には、処理は、ステップＳ９（図１４参照）に進む。
【０１３９】
ステップＳＥ２：判定の対象であるストロークの要素は、「点端」であると判定する。判定後、処理は、ステップＳ９（図１４参照）に進む。
【０１４０】
例えば、文字「十」を構成する複数のストロークのうち、「縦線端」と判定されたストローク＃１−１は、ステップＳＥ１の条件を満たさないので、処理は、ステップＳ９に進む。
【０１４１】
例えば、文字「今」を構成する複数のストロークのうち、「点」と判定されたストローク＃２−１の端点（１２，２３）は、指定枠に接している。サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図７（ｄ）のＮｏ．１は１＝ｉｎｔ（２４×０．０５）であり、条件はＮｏ．１以下になる。従って、ステップＳＥ２で、「点端」と判定され、処理は、ステップＳ９に進む。
【０１４２】
例えば、文字「国」を構成する複数のストロークのうち、「縦面大」と判定されたストローク＃３−１は、ステップＳＥ１の条件を満たさないので、処理は、ステップＳ９に進む。
【０１４３】
判定処理手順Ａ〜判定処理手順Ｄを実行することによって、図７（ａ）に示された文字「十」を構成するストローク＃１−１の両端は「縦線端」であると判定され、図７（ｂ）に示された「今」を構成するストローク＃２−１の右上端は「点端」であると判定され、図７（ｃ）に示された「国」を構成するストローク＃３−１は「縦面大」であると判定された。
【０１４４】
図１６は、調整手段７によって実行される調整処理手順を示す。調整処理手順は、Ａ調整手段によって実行される調整処理手順ａと、Ｂ調整手段によって実行される調整処理手順ｂと、Ｃ調整手段によって実行される調整処理手順ｃと、Ｄ調整手段によって実行される調整処理手順ｄとを含む。調整処理手順ｂは、調整処理手順ｂ１と、調整処理手順ｂ２と、調整処理手順ｂ３とを含む。調整処理手順ｃは、調整処理手順ｃ１と、調整処理手順ｃ２と、調整処理手順ｃ３とを含む。
【０１４５】
図１６（ａ）は、ステップＳａ１〜ステップＳａ８を含む調整処理手順ａを示す。図１６（ｂ−１）は、ステップＳｂ１１〜ステップＳｂ１８を含む調整処理手順ｂ１を示す。図１６（ｂ−２）は、ステップＳｂ２１〜ステップＳｂ２８を含む調整処理手順ｂ２を示す。図１６（ｂ−３）は、ステップＳｂ３１〜ステップＳｂ３８を含む調整処理手順ｂ３を示す。図１６（ｃ−１）は、ステップＳｃ１１〜ステップＳｃ１８を含む調整処理手順ｃ１を示す。図１６（ｃ−２）は、ステップＳｃ２１〜ステップＳｃ２８を含む調整処理手順ｃ２を示す。図１６（ｃ−３）は、ステップＳｃ３１〜ステップＳｃ３８を含む調整処理手順ｃ３を示す。図１６（ｄ）は、ステップＳｄ１〜ステップＳｄ３を含む調整処理手順ｄを示す。
【０１４６】
図１７は、指定ビットマップサイズと調整処理手順との関係を示す。図１７（ａ）は、指定ビットマップサイズと調整処理手順ａとの関係を示す。図１７（ｂ）は、指定ビットマップサイズと調整処理手順ｂとの関係を示す。図１７（ｃ）は、指定ビットマップサイズと調整処理手順ｃとの関係を示す。図１７（ｄ）は、指定ビットマップサイズと調整処理手順ｄとの関係を示す。
【０１４７】
以下、図１６および図１７を参照して、調整手段７によって実行される調整処理の詳細をステップごとに説明する。
【０１４８】
以下、図１６（ａ）および図１７（ａ）を参照して調整処理手順ａを説明する。
【０１４９】
ステップＳａ１：Ａ調整手段は、調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳａ２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳａ３に進む。
【０１５０】
ステップＳａ２：Ａ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｂ１に進む。
【０１５１】
ステップＳａ３：Ａ調整手段は、調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳａ４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳａ５に進む。
【０１５２】
ステップＳａ４：Ａ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｂ１に進む。
【０１５３】
ステップＳａ５：Ａ調整手段は、調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳａ６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳａ７に進む。
【０１５４】
ステップＳａ６：Ａ調整手段は、Ｎ番目のストロークの端点が指定枠からＭドット分ストロークのベクトル方向に延長するように、Ｎ番目のストロークを調整する。調整後、処理は、調整処理手順ｂ１に進む。
【０１５５】
ステップＳａ７：Ａ調整手段は、調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「点端」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、調整処理手順ｂ１に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳａ８に進む。
【０１５６】
ステップＳａ８：Ａ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｂ１に進む。
【０１５７】
以下、図１６（ｂ−１）および図１７（ｂ）を参照して調整処理手順ｂ１を説明する。
【０１５８】
ステップＳｂ１１：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ１２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ１３に進む。
【０１５９】
ステップＳｂ１２：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１６０】
ステップＳｂ１３：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ１４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ１５に進む。
【０１６１】
ステップＳｂ１４：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠からＡドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１６２】
ステップＳｂ１５：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ１６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ１７に進む。
【０１６３】
ステップＳｂ１６：Ｂ調整手段は、Ｎ番目のストロークの端点が指定枠からＢドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１６４】
ステップＳｂ１７：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面大」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、ステップＳｂ１８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｂ２に進む。
【０１６５】
ステップＳｂ１８：Ｂ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｃ１に進む。
【０１６６】
以下、図１６（ｂ−２）および図１７（ｂ）を参照して調整処理手順ｂ２を説明する。
【０１６７】
ステップＳｂ２１：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ２２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ２３に進む。
【０１６８】
ステップＳｂ２２：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１６９】
ステップＳｂ２３：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ２４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ２５に進む。
【０１７０】
ステップＳｂ２４：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠からＣドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１７１】
ステップＳｂ２５：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ２６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ２７に進む。
【０１７２】
ステップＳｂ２６：Ｂ調整手段は、Ｎ番目のストロークの端点が指定枠からＤドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１７３】
ステップＳｂ２７：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面中」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ２８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｂ３に進む。
【０１７４】
ステップＳｂ２８：Ｂ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｃ１に進む。
【０１７５】
以下、図１６（ｂ−３）および図１７（ｂ）を参照して調整処理手順ｂ３を説明する。
【０１７６】
ステップＳｂ３１：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ３２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ３３に進む。
【０１７７】
ステップＳｂ３２：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１７８】
ステップＳｂ３３：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ３４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ３５に進む。
【０１７９】
ステップＳｂ３４：Ｂ調整手段は、Ｎ番目のストロークの端点を指定枠からＥドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１８０】
ステップＳｂ３５：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｂ３６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｂ３７に進む。
【０１８１】
ステップＳｂ３６：Ｂ調整手段は、Ｎ番目のストロークの端点が指定枠からＦドット離すように調整する。調整後、処理は、調整処理手順ｃ１に進む。
【０１８２】
ステップＳｂ３７：Ｂ調整手段は、調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「横面小」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、ステップＳｂ３８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｃ１に進む。
【０１８３】
ステップＳｂ３８：Ｂ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｃ１に進む。
【０１８４】
以下、図１６（ｃ−１）および図１７（ｃ）を参照して調整処理手順ｃ１を説明する。
【０１８５】
ステップＳｃ１１：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ１２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ１３に進む。
【０１８６】
ステップＳｃ１２：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｄに進む。
【０１８７】
ステップＳｃ１３：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ１４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ１５に進む。
【０１８８】
ステップＳｃ１４：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠からＧドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０１８９】
ステップＳｃ１５：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ１６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ１７に進む。
【０１９０】
ステップＳｃ１６：Ｃ調整手段は、Ｎ番目のストロークの端点が指定枠からＨドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０１９１】
ステップＳｃ１７：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面大」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、ステップＳｃ１８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｃ２に進む。
【０１９２】
ステップＳｃ１８：Ｃ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｄに進む。
【０１９３】
以下、図１６（ｃ−２）および図１７（ｃ）を参照して調整処理手順ｃ２を説明する。
【０１９４】
ステップＳｃ２１：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ２２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ２３に進む。
【０１９５】
ステップＳｃ２２：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｄに進む。
【０１９６】
ステップＳｃ２３：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ２４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ２５に進む。
【０１９７】
ステップＳｃ２４：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠からＧドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０１９８】
ステップＳｃ２５：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ２６に進む。「Ｎｏ」
と判定された場合には、処理は、ステップＳｃ２７に進む。
【０１９９】
ステップＳｃ２６：Ｃ調整手段は、Ｎ番目のストロークの端点が指定枠からＨドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０２００】
ステップＳｃ２７：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面中」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、ステップＳｃ２８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｃ３に進む。
【０２０１】
ステップＳｃ２８：Ｃ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｄに進む。
【０２０２】
以下、図１６（ｃ−３）および図１７（ｃ）を参照して調整処理手順ｃ３を説明する。
【０２０３】
ステップＳｃ３１：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ３２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ３３に進む。
【０２０４】
ステップＳｃ３２：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、調整処理手順ｄに進む。
【０２０５】
ステップＳｃ３３：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．１のサイズ以上Ｎｏ．２のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ３４に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ３５に進む。
【０２０６】
ステップＳｃ３４：Ｃ調整手段は、Ｎ番目のストロークの端点を指定枠からＫドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０２０７】
ステップＳｃ３５：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．２のサイズ以上Ｎｏ．３のサイズ以下である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｃ３６に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｃ３７に進む。
【０２０８】
ステップＳｃ３６：Ｃ調整手段は、Ｎ番目のストロークの端点が指定枠からＬドット離すように調整する。調整後、処理は、調整処理手順ｄに進む。
【０２０９】
ステップＳｃ３７：Ｃ調整手段は、調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．３のサイズ以上である否かを判定する。調整対象となるＮ番目のストロークの要素が「縦面小」であり、かつビットマップサイズがＮｏ．３のサイズ以上である（Ｙｅｓ）と判定された場合には、ステップＳｃ３８に進む。「Ｎｏ」と判定された場合には、処理は、調整処理手順ｄに進む。
【０２１０】
ステップＳｃ３８：Ｃ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、調整処理手順ｄに進む。
【０２１１】
以下、図１６（ｄ）および図１７（ｄ）を参照して調整処理手順ｄを説明する。
【０２１２】
ステップＳｄ１：Ｄ調整手段は、調整対象となるＮ番目のストロークの要素が「横線端」であり、かつビットマップサイズがＮｏ１のサイズ未満である否かを判定する。調整対象となるＮ番目のストロークの要素が「横線端」であり、かつビットマップサイズがＮｏ．１のサイズ未満である（Ｙｅｓ）と判定された場合には、処理は、ステップＳｄ２に進む。「Ｎｏ」と判定された場合には、処理は、ステップＳｄ３に進む。
【０２１３】
ステップＳｄ２：Ｄ調整手段は、Ｎ番目のストロークの端点を指定枠に接する方向に調整する。調整後、処理は、ステップＳ１０（図１４参照）に進む。
【０２１４】
ステップＳｄ３：Ｄ調整手段は、Ｎ番目のストロークの端点を調整しない。処理は、ステップＳ１０（図１４参照）に進む。
【０２１５】
例えば、文字「十」を構成する複数のストロークのうち、「縦線端」であると判定されたストローク＃１−１は、サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、図１７（ｄ）のＮｏ．１に記載された４８以下であるので、指定枠に接する方向で調整し（ステップＳｄ２）、座標（１，１２）が座標（０，１２）に調整され、座標（２２，１２）が座標（２３，１２）に調整され、処理は、ステップ１０に進む。
【０２１６】
例えば、文字「今」を構成する複数のストロークのうち、「点端」と判定されたストローク＃２−１の右上端は、サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、指定ビットマップサイズの範囲が、Ｎｏ．１のサイズ以上、Ｎｏ．２のサイズ未満なので、指定枠に接する方法で調整する。
【０２１７】
座標（１２，２３）は、すでに指定枠に接しているので（１２，２３）は調整されない。
【０２１８】
例えば、文字「国」を構成する複数のストロークのうち、「縦面大」と判定されたストローク＃３−１は、サイズ指定入力手段２によって入力されたビットマップサイズが２４の場合、指定ビットマップサイズの範囲が、Ｎｏ．１のサイズ以上、Ｎｏ．２のサイズ未満なので、指定枠から１ドット離すように調整される。
【０２１９】
座標（２，２１）が座標（２，２２）に調整され、座標（２，２）が座標（２，１）に調整される。処理は、ステップ１０に進む。  以上、図１４〜図１７を参照して、図１０（ａ）に示された文字「十」を示す文字データ、図１０（ｂ）に示された文字「今」を示す文字データおよび図１０（ｃ）に示された文字「国」を示す文字データを対象とする文字データ生成処理手順をステップごとに説明した。本発明の実施の形態の文字データ生成処理手順を実行することによって、文字「十」を示す文字データ、文字「今」を示す文字データおよび文字「国」を示す文字データが処理され、図１２（ａ）に示される文字「十」を示す文字データ、１２（ｂ）に示される文字「今」を示す文字データおよび１２（ｃ）に示される文字「国」を示す文字データが生成される。
なお、文字「十」、文字「今」および文字「国」以外の文字を示す文字データ（例えば、図９（ｄ）に示された文字「操」を示す文字データ、図９（ｅ）に示された文字「莞」を示す文字データ）を対象としても、図１４〜図１７を参照して説明したような文字データ生成処理手順を実行することができる。文字データ生成処理手順を実行することによって、例えば、文字「操」を示す文字データおよび文字「莞」を示す文字データが処理され、図１２（ｄ）に示される文字「操」を示す文字データおよび１２（ｅ）に示される文字「莞」を示す文字データが生成される。
例えば、図１４に示された例では、ステップＳ８が「文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記位置関係を示す複数のタイプのうち前記少なくとも１つの対象ストロークが該当するタイプを判定するステップ」に対応し、ステップＳ９が「前記少なくとも１つの対象ストロークが該当するタイプに基づいて、前記少なくとも１つの対象ストロークを規定するパラメータを調整するステップ」に対応し、ステップＳ１１が「前記調整された少なくとも１つの対象ストロークを含む文字の形状を示す文字データを生成するステップ」に対応する。しかし、本発明の文字データ生成処理は、上述した各ステップを実行し得る限り、任意の手順を有し得る。
【０２２０】
例えば、本発明の文字データ生成装置には、文字データ生成処理を実行させるためのプログラムが格納されていてもよい。
文字データ生成処理プログラムは、文字データ生成装置の出荷時に、評価装置に含まれる格納手段に予め格納されていてもよい。あるいは、文字データ生成装置の出荷後に、プログラムを格納手段に格納するようにしてもよい。例えば、ユーザがインターネット上の特定のウェブサイトからプログラムを有料または無料でダウンロードし、そのダウンロードされたプログラムを文字データ生成装置にインストールするようにしてもよい。プログラムがフレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなどのコンピュータ読み取り可能な記録媒体に記録されている場合には、入力装置を用いて評価処理を文字データ生成装置にインストールするようにしてもよい。インストールされたプログラムは、格納手段に格納される。
【０２２１】
以上のように、本発明の好ましい実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
【産業上の利用可能性】
【０２２２】
本発明は、例えば、地上波ディジタルＴＶなどは、映像だけでなく、番組表や、その他の情報を映し出すために、文字が使われる場面が多くなってきている。それらのＴＶで文字を見る場合、画面の解像度と見たい文字の大きさから、２４ドット前後から４８ドット前後のビットマップサイズの文字が使われることが多く、本発明を利用することで、より見やすい文字をＴＶに映し出すことができる。
【０２２３】
また、ＴＶに限らず、野球場やサッカー場にあるような電光掲示板での利用が考えられる。携帯電話などの小さな画面でも画面の解像度があがって、２４ドット前後から４８ドット前後のビットマップサイズの文字が使われることが多くなれば、利用の価値がある。
【図面の簡単な説明】
【０２２４】
【図１（ａ）】文字「十」を示す図である。
【図１（ｂ）】文字「今」を示す図である。
【図１（ｃ）】文字「国」を示す図である。
【図１（ｄ）】文字「工」を示す図である。
【図２】ベースライン、アッセンダーライン、ディセンダーライン、Ｘ−ラインなどのラインに合わせてデザインされた欧文（アルファベット）を示す図である。
【図３】下カーブの頂点の座標または上下カーブの頂点の座標がオーバーハングされた文字を示す図である。
【図４】下カーブの頂点の座標または上下カーブの頂点の座標がオーバーハングされていない文字を示す図である。
【図５】レター枠に接するように文字枠の倍率が変えられた文字を示す図である。
【図６】見た目の大きさを揃えた文字を示す図である。
【図７（ａ）】文字を構成するストロークを「線面」または「点」に分類するためのしきい値を示す図である。
【図７（ｂ）】文字を構成するストロークを「横面」、「縦面」、「横線」または「縦線」に分類するためのしきい値を示す図である。
【図７（ｃ）】文字を構成するストロークを「横面小」、「横面中」、「横面大」、「縦面小」、「縦面中」または「縦面大」に分類するためのしきい値を示す図である。
【図７（ｄ）】文字を構成するストロークを「横線端」または「縦線端」に分類するためのしきい値を示す図である。
【図７（ｅ）】文字を構成するストロークを「点端」に分類するためのしきい値を示す図である。
【図８】本発明の実施の形態の文字データ生成装置１００の一例を示す図である。
【図９（ａ）】文字「十」を構成するストロークを示す図である。
【図９（ｂ）】文字「今」を構成するストロークを示す図である。
【図９（ｃ）】文字「国」を構成するストロークを示す図である。
【図９（ｄ）】文字「繰」を構成するストロークを示す図である。
【図９（ｅ）】文字「莞」を構成するストロークを示す図である。
【図１０（ａ）】文字「十」を示す文字データを示す図である。
【図１０（ｂ）】文字「今」を示す文字データを示す図である。
【図１０（ｃ）】文字「国」を示す文字データを示す図である。
【図１０（ｄ）】文字「繰」を示す文字データを示す図である。
【図１０（ｅ）】文字「莞」を示す文字データを示す図である。
【図１１（ａ）】図１０（ａ）に示された座標値を縮小した座標値を示す図である。
【図１１（ｂ）】図１０（ｂ）に示された座標値を縮小した座標値を示す図である。
【図１１（ｃ）】図１０（ｃ）に示された座標値を縮小した座標値を示す図である。
【図１１（ｄ）】図１０（ｄ）に示された座標値を縮小した座標値を示す図である。
【図１１（ｅ）】図１０（ｅ）に示された座標値を縮小した座標値を示す図である。
【図１２（ａ）】図１１（ａ）に示された文字データによって示された文字を示す図である。
【図１２（ｂ）】図１１（ｂ）に示された文字データによって示された文字を示す図である。
【図１２（ｃ）】図１１（ｃ）に示された文字データによって示された文字を示す図である。
【図１２（ｄ）】図１１（ｄ）に示された文字データによって示された文字を示す図である。
【図１２（ｅ）】図１１（ｅ）に示された文字データによって示された文字を示す図である。
【図１３】調整テーブルを示す図である。
【図１４】本発明の実施の形態の文字データ生成処理手順を示すフローチャートである。
【図１５（ａ）】ステップＳＡ１〜ステップＳＡ８を含む判定処理手順Ａを示すフローチャートである。
【図１５（ｂ）】ステップＳＢ１〜ステップＳＢ８を含む判定処理手順Ｂを示すフローチャートである。
【図１５（ｃ）】ステップＳＣ１〜ステップＳＣ１２を含む判定処理手順Ｃを示すフローチャートである。
【図１５（ｄ）】ステップＳＤ１〜ステップＳＤ４を含む判定処理手順Ｄを示すフローチャートである。
【図１５（ｅ）】ステップＳＥ１〜ステップＳＥ２を含む判定処理手順Ｅを示すフローチャートである。
【図１６（ａ）】ステップＳａ１〜ステップＳａ８を含む調整処理手順ａを示すフローチャートである。
【図１６（ｂ−１）】ステップＳｂ１１〜ステップＳｂ１８を含む調整処理手順ｂ１を示すフローチャートである。
【図１６（ｂ−２）】ステップＳｂ２１〜ステップＳｂ２８を含む調整処理手順ｂ２を示すフローチャートである。
【図１６（ｂ−３）】ステップＳｂ３１〜ステップＳｂ３８を含む調整処理手順ｂ３を示すフローチャートである。
【図１６（ｃ−１）】ステップＳｃ１１〜ステップＳｃ１８を含む調整処理手順ｃ１を示すフローチャートである。
【図１６（ｃ−２）】ステップＳｃ２１〜ステップＳｃ２８を含む調整処理手順ｃ２を示すフローチャートである。
【図１６（ｃ−３）】ステップＳｃ３１〜ステップＳｃ３８を含む調整処理手順ｃ３を示すフローチャートである。
【図１６（ｄ）】ステップＳｄ１〜ステップＳｄ３を含む調整処理手順ｄを示すフローチャートである。
【図１７（ａ）】指定ビットマップサイズと調整処理手順ａとの関係を示す図である。
【図１７（ｂ）】指定ビットマップサイズと調整処理手順ｂとの関係を示す図である。
【図１７（ｃ）】指定ビットマップサイズと調整処理手順ｃとの関係を示す図である。
【図１７（ｄ）】指定ビットマップサイズと調整処理手順ｄとの関係を示す図である。
【符号の説明】
【０２２５】
１  文字データ入力手段
２  サイズ指定入力手段
３  文字コード入力手段
４  拡縮手段
５  判定手段
６  調整テーブル格納手段
７  調整手段
８  出力手段
１００  文字データ生成装置
【図１（ａ）】
2006195230.tif 000003
【図１（ｂ）】
2006195230.tif 000004
【図１（ｃ）】
2006195230.tif 000005
【図１（ｄ）】
2006195230.tif 000006
【図２】
2006195230.tif 000007
【図７（ａ）】
2006195230.tif 000008
【図７（ｂ）】
2006195230.tif 000009
【図７（ｃ）】
2006195230.tif 000010
【図７（ｄ）】
2006195230.tif 000011
【図７（ｅ）】
2006195230.tif 000012
【図８】
2006195230.tif 000013
【図９（ａ）】
2006195230.tif 000014
【図９（ｂ）】
2006195230.tif 000015
【図９（ｃ）】
2006195230.tif 000016
【図９（ｄ）】
2006195230.tif 000017
【図９（ｅ）】
2006195230.tif 000018
【図１０（ａ）】
2006195230.tif 000019
【図１０（ｂ）】
2006195230.tif 000020
【図１０（ｃ）】
2006195230.tif 000021
【図１０（ｄ）】
2006195230.tif 000022
【図１０（ｅ）】
2006195230.tif 000023
【図１１（ａ）】
2006195230.tif 000024
【図１１（ｂ）】
2006195230.tif 000025
【図１１（ｃ）】
2006195230.tif 000026
【図１１（ｄ）】
2006195230.tif 000027
【図１１（ｅ）】
2006195230.tif 000028
【図１３】
2006195230.tif 000029
【図１４】
2006195230.tif 000030
【図１５（ａ）】
2006195230.tif 000031
【図１５（ｂ）】
2006195230.tif 000032
【図１５（ｃ）】
2006195230.tif 000033
【図１５（ｄ）】
2006195230.tif 000034
【図１５（ｅ）】
2006195230.tif 000035
【図１６（ａ）】
2006195230.tif 000036
【図１６（ｂ−１）】
2006195230.tif 000037
【図１６（ｂ−２）】
2006195230.tif 000038
【図１６（ｂ−３）】
2006195230.tif 000039
【図１６（ｃ−１）】
2006195230.tif 000040
【図１６（ｃ−２）】
2006195230.tif 000041
【図１６（ｃ−３）】
2006195230.tif 000042
【図１６（ｄ）】
2006195230.tif 000043
【図１７（ａ）】
2006195230.tif 000044
【図１７（ｂ）】
2006195230.tif 000045
【図１７（ｃ）】
2006195230.tif 000046
【図１７（ｄ）】
2006195230.tif 000047
【図３】
2006195230.tif 000048
【図４】
2006195230.tif 000049
【図５】
2006195230.tif 000050
【図６】
2006195230.tif 000051
【図１２（ａ）】
2006195230.tif 000052
【図１２（ｂ）】
2006195230.tif 000053
【図１２（ｃ）】
2006195230.tif 000054
【図１２（ｄ）】
2006195230.tif 000055
【図１２（ｅ）】
2006195230.tif 000056
【手続補正書】
【提出日】平成18年5月30日(2006.5.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記対象ストロークが「線」、「面」および「点」のいずれのタイプに該当するかを判定するタイプ判定手段と、
前記対象ストロークが該当するタイプに基づいて、前記対象ストロークを規定するパラメータを調整する調整手段と、
前記調整された対象ストロークを含む文字の形状を示す文字データを生成する文字データ生成手段とを備え、
前記タイプ判定手段は、前記対象ストロークと前記指定枠との間の角度に基づいて、前記対象ストロークが「線」および「面」であるか、「点」であるかを判定することを特徴とする、文字データ生成装置。
【請求項２】
前記タイプ判定手段は、前記対象ストロークと前記指定枠との間の角度と、前記指定枠と前記対象ストロークの端点との間の距離に基づいて、前記対象ストロークが「線」であるか「面」であるかを判定する、請求項１に記載の文字データ生成装置。
【請求項３】
前記タイプ判定手段は、前記対象ストロークを前記指定枠に投影させた長さに基づいて、前記該当するタイプが「面」と判定された前記対象ストロークの種別を判定する、請求項２に記載の文字データ生成装置。
【請求項４】
前記調整手段は、前記対象ストロークのタイプと前記指定枠の大きさとに基づいて、前記対象ストロークを調整する、請求項１〜３のいずれかに記載の文字データ生成装置。
【請求項５】
前記調整手段は、前記対象ストロークの位置および形状のうち、少なくとも一方を調整する、請求項１〜３のいずれかに記載の文字データ生成装置。
【請求項６】
前記調整手段は、前記対象ストロークの端点と前記指定枠との間の距離に基づいて、前記対象ストロークを調整する、請求項１〜３のいずれかに記載の文字データ生成装置。
【請求項７】
前記対象ストロークが「点」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記対象ストロークの端点との間の距離に基づいて、前記対象ストロークの位置が前記文字の端であるか否かを判定し、
前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記対象ストロークを調整する、請求項１に記載の文字データ生成装置。
【請求項８】
前記対象ストロークが「面」であると判定された場合には、前記タイプ判定手段は、前記対象ストロークを前記指定枠に投影させた長さに基づいて、前記対象ストロークの大きさを判定し、
前記調整手段は、前記大きさに関する判定結果と前記指定枠の大きさとに基づいて、前記対象ストロークを調整する、請求項２に記載の文字データ生成装置。
【請求項９】
前記対象ストロークが「線」であると判定された場合には、前記タイプ判定手段は、前記指定枠と前記対象ストロークの端点との間の距離に基づいて、前記対象ストロークの位置が前記文字の端であるか否かを判定し、
前記調整手段は、前記位置に関する判定結果と前記指定枠の大きさとに基づいて、前記対象ストロークを調整する、請求項２に記載の文字データ生成装置。
【請求項１０】
コンピュータに文字データ生成処理を実行させるためのプログラムであって、
前記文字データ生成処理は、
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記対象ストロークが「線」、「面」および「点」のいずれのタイプに該当するかを判定するステップと、
前記対象ストロークが該当するタイプに基づいて、前記対象ストロークを規定するパラメータを調整するステップと、
前記調整された対象ストロークを含む文字の形状を示す文字データを生成するステップとを包含し、
前記タイプを判定するステップは、前記対象ストロークと前記指定枠との間の角度に基づいて、前記対象ストロークの該当するタイプが「線」および「面」であるか、「点」であるかを判定し、前記対象ストロークと前記指定枠との間の角度と、前記指定枠と前記対象ストロークの端点との間の距離に基づいて、前記対象ストロークが「線」であるか「面」であるかを判定することを特徴とする、プログラム。
【請求項１１】
文字データ生成処理をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記文字データ生成処理は、
文字を構成するストロークのうち少なくとも１つの対象ストロークと前記文字に対応する指定枠との位置関係に基づいて、前記対象ストロークが「線」、「面」および「点」のいずれのタイプに該当するかを判定するステップと、
前記対象ストロークが該当するタイプに基づいて、前記対象ストロークを規定するパラメータを調整するステップと、
前記調整された対象ストロークを含む文字の形状を示す文字データを生成するステップとを包含し、
前記タイプを判定するステップは、前記対象ストロークと前記指定枠との間の角度に基づいて、前記対象ストロークの該当するタイプが「線」および「面」であるか、「点」であるかを判定し、前記対象ストロークと前記指定枠との間の角度と、前記指定枠と前記対象ストロークの端点との間の距離に基づいて、前記該当するタイプが「線」であるか「面」であるかを判定することを特徴とする、記録媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００８９
【補正方法】変更
【補正の内容】
【００８９】
図１５（ａ）は、ステップＳＡ１〜ステップＳＡ３を含む判定処理手順Ａを示す。図１５（ｂ）は、ステップＳＢ１〜ステップＳＢ８を含む判定処理手順Ｂを示す。図１５（ｃ）は、ステップＳＣ１〜ステップＳＣ１２を含む判定処理手順Ｃを示す。図１５（ｄ）は、ステップＳＤ１〜ステップＳＤ４を含む判定処理手順Ｄを示す。図１５（ｅ）は、ステップＳＥ１〜ステップＳＥ２を含む判定処理手順Ｅを示す。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図１５（ａ）
【補正方法】変更
【補正の内容】
【図１５（ａ）】
2006195230.tif 000057
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図１５（ｂ）
【補正方法】変更
【補正の内容】
【図１５（ｂ）】
2006195230.tif 000058
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図１５（ｃ）
【補正方法】変更
【補正の内容】
【図１５（ｃ）】
2006195230.tif 000059
【手続補正６】
【補正対象書類名】図面
【補正対象項目名】図１５（ｄ）
【補正方法】変更
【補正の内容】
【図１５（ｄ）】
2006195230.tif 000060
【手続補正７】
【補正対象書類名】図面
【補正対象項目名】図１５（ｅ）
【補正方法】変更
【補正の内容】
【図１５（ｅ）】
2006195230.tif 000061
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図１６（ａ）
【補正方法】変更
【補正の内容】
【図１６（ａ）】
2006195230.tif 000062
【手続補正９】
【補正対象書類名】図面
【補正対象項目名】図１６（ｂ−１）
【補正方法】変更
【補正の内容】
【図１６（ｂ−１）】
2006195230.tif 000063
【手続補正１０】
【補正対象書類名】図面
【補正対象項目名】図１６（ｂ−２）
【補正方法】変更
【補正の内容】
【図１６（ｂ−２）】
2006195230.tif 000064
【手続補正１１】
【補正対象書類名】図面
【補正対象項目名】図１６（ｂ−３）
【補正方法】変更
【補正の内容】
【図１６（ｂ−３）】
2006195230.tif 000065
【手続補正１２】
【補正対象書類名】図面
【補正対象項目名】図１６（ｃ−１）
【補正方法】変更
【補正の内容】
【図１６（ｃ−１）】
2006195230.tif 000066
【手続補正１３】
【補正対象書類名】図面
【補正対象項目名】図１６（ｃ−２）
【補正方法】変更
【補正の内容】
【図１６（ｃ−２）】
2006195230.tif 000067
【手続補正１４】
【補正対象書類名】図面
【補正対象項目名】図１６（ｃ−３）
【補正方法】変更
【補正の内容】
【図１６（ｃ−３）】
2006195230.tif 000068
【手続補正１５】
【補正対象書類名】図面
【補正対象項目名】図１６（ｄ）
【補正方法】変更
【補正の内容】
【図１６（ｄ）】
2006195230.tif 000069