(57)【特許請求の範囲】
【請求項１】
文字または図形を表示画面に表示する文字図形表示装置であって、
表示されるべき文字または図形の骨格を表す骨格データを取得する骨格データ取得手段であって、該骨格データは、該文字または該図形のストロークを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複数のサンプル点の座標データを含む、骨格データ取得手段と、
該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣接する２つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決定するメインドットパターン形状決定手段と、
該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しないように配置することによって、該文字または該図形を表示するための表示データを生成する表示データ生成手段と
を備えた、文字図形表示装置。
【請求項２】
前記表示データ生成手段は、前記複数のメインドットパターンによって形成される段差を埋めるように少なくとも１つのサブドットパターンを配置することによって、前記表示データを生成する、請求項１に記載の文字図形表示装置。
【請求項３】
前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線の傾きに応じて、前記メインドットパターンの形状を正方形および菱形の一方に決定する、請求項１に記載の文字図形表示装置。
【請求項４】
前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線が斜め線であるか否かを判定し、該２つのサンプル点を結ぶ直線が斜め線であると判定された場合には、前記メインドットパターンの形状を、一対の対角線の一方及び他方がそれぞれ、前記文字あるいは図面の高さ方向及び幅方向に平行となる菱形に決定し、該２つのサンプル点を結ぶ直線が斜め線でないと判定された場合には、前記メインドットパターンの形状を、隣接する２辺の一方及び他方がそれぞれ、前記文字あるいは図面の高さ方向及び幅方向に平行となる正方形に決定する、請求項１に記載の文字図形表示装置。
【請求項５】
前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線の傾きθが、０°≦θ＜２５°、６５°≦θ＜１１３°、１５５°≦θ＜２０５°、２４５°≦θ＜２９５°または３３５°≦θ＜３６０°の場合には、該２つのサンプル点を結ぶ直線が斜め線でないと判定し、それ以外の場合には、該２つのサンプル点を結ぶ直線が斜め線であると判定する、請求項４に記載の文字図形表示装置。
【請求項６】
前記メインドットパターン形状決定手段は、前記文字または前記図形を構成する線の太さに応じて、前記メインドットパターンの各辺の画素数を決定する、請求項１に記載の文字図形表示装置。
【請求項７】
前記文字または前記図形を構成する線の太さは、該文字または該図形のサイズ、または、該文字または該図形を構成する線の本数に応じて設定される、請求項１に記載の文字図形表示装置。
【請求項８】
前記表示データ生成手段は、前記表示画面がスクロール中である場合、または、ストロークの傾きが所定の方向に近い場合には、前記サブドットパターンを配置しない、請求項２に記載の文字図形表示装置。
【請求項９】
前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を正方形に決定した場合において、前記表示データ生成手段は、前記２つのサンプル点のうちの一方のサンプル点に対応する前記表示画面における画素を中心として、各辺が所定の画素数の正方形のメインドットパターンを配置し、前記表示画面において前記２つのサンプル点を結ぶ直線に対応する画素上で、該配置されたメインドットパターンの中心画素からＸ座標値またはＹ座標値の差が該所定の画素数である画素を中心として、各辺が該所定の画素数の正方形のメインドットパターンを配置することによって、前記表示データを生成する、請求項４に記載の文字図形表示装置。
【請求項１０】
前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの左右にそれぞれ段差部が形成されている場合には、該２つのメインドットパターンのそれぞれの中心画素のＹ座標の差をΔＹとして、互いに直交する２辺の長さが│ΔＹ│−１である直角二等辺三角形に含まれる全ての画素をサブドットパターンとして設定し、
前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの上下にそれぞれ段差部が形成されている場合には、該２つのメインドットパターンのそれぞれの中心画素のＸ座標の差をΔＸとして、互いに直交する２辺の長さが│ΔＸ│−１である直角二等辺三角形に含まれる全ての画素をサブドットパターンとして設定する、請求項９に記載の文字図形表示装置。
【請求項１１】
前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を菱形に決定した場合において、前記表示データ生成手段は、前記文字または前記図形を構成する線の太さをＷとして、画素数Ｗに（２）１／２を乗じた値に最も近い奇数を画素数Ｗ’として求め、２本の対角線の長さがそれぞれ前記画素数Ｗ’である菱形形状のメインドットパターンを、前記表示画面上に、該菱形形状のメインドットパターンの中心画素が前記２つのサンプル点を結ぶ直線に対応する画素上に位置するよう配置することによって、前記表示データを生成する、請求項４に記載の文字図形表示装置。
【請求項１２】
前記表示データ生成手段は、前記表示画面において前記２つのサンプル点を結ぶ直線に対応する画素上で、前記配置されたメインドットパターンの中心画素とのＸ座標値の差の絶対値とＹ座標値の差の絶対値との和が前記画素数Ｗ’以上となる画素を中心として、前記菱形形状のメインドットパターンを配置する、請求項１１に記載の文字図形表示装置。
【請求項１３】
前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの対応する辺に沿って、該２つのメインドットパターンが互いにずれることにより段差が形成されている場合には、該２つのメインドットパターンの対応する辺における両側において最も外側に位置する各端部の画素のＸ座標値を、それぞれ、Ｘ１およびＸ２（但しＸ１＜Ｘ２）として、Ｘ座標値がＸ１以上Ｘ２以下の範囲で、それぞれの段差部内に位置する全ての画素をサブドットパターンとして設定する、請求項１１に記載の文字図形表示装置。
【請求項１４】
前記表示データ生成手段は、前記ストロークの終点が他のストロークの始点と重なる場合には、該ストロークの終点および該他のストロークの始点の位置に合成パターンを配置することによって、前記表示データを生成し、該合成パターンは、該ストロークの終点に配置されるべきメインドットパターンと該他のストロークの始点に配置されるべきメインドットパターンとをあらかじめ合成したものである、請求項１に記載の文字図形表示装置。
【請求項１５】
文字または図形を表示画面に表示する表示する文字図形表示方法であって、
表示されるべき文字または図形の骨格を表す骨格データを取得するステップであって、該骨格データは、該文字または該図形のストロークを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複数のサンプル点の座標データを含む、ステップと、
該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣接する２つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決定するステップと、
該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しないように配置することによって、該文字または該図形を表示するための表示データを生成するステップと
を包含する、文字図形表示方法。
【請求項１６】
請求項１５に記載の文字図形表示方法の各ステップをコンピュータによって実行させるための文字図形表示プログラム。
【請求項１７】
請求項１６に記載の文字図形表示プログラムが記録されたコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、液晶表示デバイス等のような表示デバイスを有し、表示デバイスの表示画面に文字または図形を表示することができるパーソナルコンピュータ、ワードプロセッサ等の文字図形表示装置、その文字図形表示装置の表示画面に文字または図形を表示させるための文字図形表示方法、その文字図形表示方法の各ステップをコンピュータに実行させるための文字図形表示プログラム、その文字図形表示プログラムが記録されたコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
パーソナルコンピュータ、携帯電話等の文字表示装置に設けられた表示デバイスは、複数の画素が設けられた表示画面を備えており、各画素の輝度を制御することによって、表示画面に文字、図形等の画像が表示される。このような表示デバイスにおいて、表示画面に文字を表示する場合には、表示される文字を構成する画素を、文字を構成する線の幅（太さ）を任意の画素数として選択することによって、任意のサイズで文字を表示することができる。【０００３】
表示画面に文字を表示する場合には、例えば、文字の骨格（芯）形状を定義する骨格データに基づいて、表示画面における画素が選択される。骨格データとは、文字の骨格（芯）形状を構成する全ての線分（ストローク）に関する座標データであり、所定の骨格平面座標において各ストロークの形状が特定されるように各ストローク上に設定された複数のサンプル点の座標データによって構成されている。そして、表示される各文字毎に、骨格データに基づいて各文字の骨格形状を構成する全てのストロークのサンプル点の座標値をスケーリングして、表示画面における座標系（実ピクセル座標系）において各サンプル点に対応する画素をそれぞれ求めて、表示サイズに基づいて設定された所定の線幅になるように、その画素の周辺の画素の輝度値を設定する。これにより、表示画面に所定サイズで文字を表示することができる。【０００４】
このような文字表示方法によれば、任意のサイズで文字を表示することができるために、表示画面のサイズに対応した表示サイズで文字を表示することができる。従って、例えば表示画面が大きい場合にも、表示画面のサイズに対応させて表示される文字を構成する各線の幅を太く表示して、表示文字のサイズを大きくすることができる。【０００５】
また、このように文字の線幅を太く表示する場合には、表示される文字の視認性を向上させるために、表示文字を構成する骨格画素のみならず、その周辺の画素の輝度値を制御する処理も行われており、これにより、表示文字を構成する線を滑らかに、しかも均整のとれた線幅に表示することができる。しかしながら、このような処理を実行する場合には、ＣＰＵ等の演算制御装置に対する負荷が大きくなるという問題がある。このために、例えば、携帯電話機のような各種機能が設けられている機器の場合には、演算制御装置に対する負荷をできるだけ低減する必要があり、上述したような処理を効率的に行うことが可能なアルゴリズムが要求されている。【０００６】
特許文献１（特開２０００−２６７６４４公報）には、表示文字の骨格画素の周辺画素の輝度値を効率よく制御する方法が開示されている。この特許文献１に開示された方法では、異なる解像度のそれぞれに対して設定された複数のフォントデータを処理装置に記憶し、記憶されたフォントデータの中から２種類のフォントデータを選択し、選択された２種類のフォントデータから所望サイズのフォントデータを補間処理で求めることによって、ストロークの間隔を調整して、中間サイズ用フォントデータを生成し、生成された中間サイズ用フォントデータを多階調データに変換するようになっている。また、ストロークデータから任意の線幅のビットマップデータを生成する際に、ストロークの始点に対して、表示される文字の線幅に対応する一辺が所定画素数の正方形を構成する画素を設定し、以降は、設定された正方形を構成する画素と、ストロークのサンプル点との位置関係によって、表示に必要な画素を設定することによって、各サンプル点に対してそれぞれ設定される正方形を構成する画素が重複して設定されないようにすることによって、処理効率を向上させている。
【特許文献１】特開２０００−２６７６４４公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献１に開示されている従来技術では、ストロークの傾きが変化しても、設定される画素によって形成される正方形の形状は変化せずに一定になっている。このために、水平方向および垂直方向に沿った線分（横線および縦線）におけるそれぞれの端点では、コーナー部が水平方向および垂直方向にそれぞれ沿った辺によって直角に形成されことによって、ゴシック体のように各端点が明確に表示されることになるが、斜め方向の線分については、それぞれの端点において、同様に、コーナー部が水平方向および垂直方向にそれぞれ沿った辺によって直角に形成されることによって、斜め方向に対して直角になっている各コーナー部分が、横線および縦線におけるそれぞれの端点のコーナー部よりも強調されて表示されることになり、文字を構成するストローク（線分）の傾き角度によっては、表示される文字の書体が横線および縦線の場合と比較して大きく変化していると認識されるおそれがある。【０００８】
さらに、前記特許文献１に開示されている従来技術では、ストロークの傾き角度の大きさにかかわらず、同一サイズの正方形が描画されるが、表示される線幅の太さは傾き角度によって変化するために、文字の線幅にばらつきが生じるという問題もある。【０００９】
本発明は、上記従来の問題を解決するものであり、その目的は、文字または図形を構成する線分が斜め方向に傾いている場合にも、横線および縦線と同様の書体で表示されていると認識できるように、文字または図形を高品位に表示することが可能な文字図形表示装置、文字図形表示方法、文字図形表示プログラムおよびその文字図形表示プログラムが記録された記録媒体を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の文字図形表示装置は、文字または図形を表示画面に表示する文字図形表示装置であって、表示されるべき文字または図形の骨格を表す骨格データを取得する骨格データ取得手段であって、該骨格データは、該文字または該図形のストロークを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複数のサンプル点の座標データを含む、骨格データ取得手段と、該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣接する２つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決定するメインドットパターン形状決定手段と、該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しないように配置することによって、該文字または該図形を表示するための表示データを生成する表示データ生成手段とを備えている。【００１１】
好ましくは、前記表示データ生成手段は、前記複数のメインドットパターンによって形成される段差を埋めるように少なくとも１つのサブドットパターンを配置することによって、前記表示データを生成する。【００１２】
好ましくは、前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線の傾きに応じて、前記メインドットパターンの形状を正方形および菱形の一方に決定する。【００１３】
好ましくは、前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線が斜め線であるか否かを判定し、該２つのサンプル点を結ぶ直線が斜め線であると判定された場合には、前記メインドットパターンの形状を菱形に決定し、該２つのサンプル点を結ぶ直線が斜め線でないと判定された場合には、前記メインドットパターンの形状を正方形に決定する。【００１４】
好ましくは、前記メインドットパターン形状決定手段は、前記２つのサンプル点を結ぶ直線の傾きθが、０°≦θ＜２５°、６５°≦θ＜１１３°、１５５°≦θ＜２０５°、２４５°≦θ＜２９５°または３３５°≦θ＜３６０°の場合には、該２つのサンプル点を結ぶ直線が斜め線でないと判定し、それ以外の場合には、該２つのサンプル点を結ぶ直線が斜め線であると判定する。【００１５】
好ましくは、前記メインドットパターン形状決定手段は、前記文字または前記図形を構成する線の太さに応じて、前記メインドットパターンの各辺の画素数を決定する。【００１６】
好ましくは、前記文字または前記図形を構成する線の太さは、該文字または該図形のサイズ、または、該文字または該図形を構成する線の本数に応じて設定される。【００１７】
好ましくは、前記表示データ生成手段は、前記表示画面がスクロール中である場合、または、ストロークの傾きが所定の方向に近い場合には、前記サブドットパターンを配置しない。【００１８】
好ましくは、前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を正方形に決定した場合において、前記表示データ生成手段は、前記２つのサンプル点のうちの一方のサンプル点に対応する前記表示画面における画素を中心として、各辺が所定の画素数の正方形のメインドットパターンを配置し、前記表示画面において前記２つのサンプル点を結ぶ直線に対応する画素上で、該配置されたメインドットパターンの中心画素からＸ座標値またはＹ座標値の差が該所定の画素数である画素を中心として、各辺が該所定の画素数の正方形のメインドットパターンを配置することによって、前記表示データを生成する。【００１９】
好ましくは、前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの左右にそれぞれ段差部が形成されている場合には、該２つのメインドットパターンのそれぞれの中心画素のＹ座標の差をΔＹとして、互いに直交する２辺の長さが│ΔＹ│−１である直角二等辺三角形に含まれる全ての画素をサブドットパターンとして設定し、前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの上下にそれぞれ段差部が形成されている場合には、該２つのメインドットパターンのそれぞれの中心画素のＸ座標の差をΔＸとして、互いに直交する２辺の長さが│ΔＸ│−１である直角二等辺三角形に含まれる全ての画素をサブドットパターンとして設定する。【００２０】
好ましくは、前記メインドットパターン形状決定手段が、前記メインドットパターンの形状を菱形に決定した場合において、前記表示データ生成手段は、前記文字または前記図形を構成する線の太さをＷとして、画素数Ｗに（２）１／２を乗じた値に最も近い奇数を画素数Ｗ’として求め、２本の対角線の長さがそれぞれ前記画素数Ｗ’である菱形形状のメインドットパターンを配置することによって、前記表示データを生成する。【００２１】
好ましくは、前記表示データ生成手段は、前記表示画面において前記２つのサンプル点を結ぶ直線に対応する画素上で、前記配置されたメインドットパターンの中心画素とのＸ座標値の差の絶対値とＹ座標値の差の絶対値との和が前記画素数Ｗ’以上となる画素を中心として、前記菱形形状のメインドットパターンを配置する。【００２２】
好ましくは、前記表示データ生成手段は、互いに隣接して配置された２つのメインドットパターンの対応する辺に沿って、該２つのメインドットパターンが互いにずれることにより段差が形成されている場合には、該２つのメインドットパターンの対応する辺における両側において最も外側に位置する各端部の画素のＸ座標値を、それぞれ、Ｘ１およびＸ２（但しＸ１＜Ｘ２）として、Ｘ座標値がＸ１以上Ｘ２以下の範囲で、それぞれの段差部内に位置する全ての画素をサブドットパターンとして設定する。【００２３】
好ましくは、前記表示データ生成手段は、前記ストロークの終点が他のストロークの始点と重なる場合には、該ストロークの終点および該他のストロークの始点の位置に合成パターンを配置することによって、前記表示データを生成し、該合成パターンは、該ストロークの終点に配置されるべきメインドットパターンと該他のストロークの始点に配置されるべきメインドットパターンとをあらかじめ合成したものである。【００２４】
本発明の文字図形表示方法は、文字または図形を表示画面に表示する表示する文字図形表示方法であって、表示されるべき文字または図形の骨格を表す骨格データを取得するステップであって、該骨格データは、該文字または該図形のストロークを表すストロークデータを含み、該ストロークデータは、該ストロークに対応する複数のサンプル点の座標データを含む、ステップと、該文字または該図形を構成する線の太さと、該ストロークに対応する該複数のサンプル点のうち互いに隣接する２つのサンプル点の座標データとに基づいて、メインドットパターンの形状を決定するステップと、該決定された形状をそれぞれ有する複数のメインドットパターンを互いに重複しないように配置することによって、該文字または該図形を表示するための表示データを生成するステップとを包含する。【００２５】
また、本発明は、前記文字図形表示方法の各ステップをコンピュータによって実行させるための文字図形表示プログラムである。【００２６】
また、本発明は、前記文字図形表示プログラムが記録されたコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００２７】
本発明によれば、文字または図形を構成する線の太さに応じてストローク上にメインドットパターンを配置するとともに、各メインドットパターンの間にメインドットパターンの位置関係に基づいて形状が決定されるサブドットパターンを配置することによって、任意の太さのストロークを、ストロークの傾きに適した太さおよび端点を有するように表示することができ、文字の視認性を向上させることが可能となる。さらに、メインドットパターンおよびサブドットパターンを互いに重ならないように配置することによって、冗長な処理を回避して、高速に文字表示を行うことが可能となる。さらに、画面スクロール中には、サブドットパターンを配置せず、メインドットパターンによって文字のおおまかな形状のみを設定することにより、高速に文字表示を行うことが可能となる。【００２８】
従って、本発明によれば、携帯電話機などのように、処理速度が低い機器に文字表示装置が搭載される場合でも、負荷を低くして、高速に、高品位な文字表示を行うことが可能となる。
【図面の簡単な説明】
【００２９】
【図１】図１は、本発明の実施形態に係る文字表示装置の構成を示すブロック図である。
【図２】図２は、図１の文字表示装置における骨格データの構造例を示す図である。
【図３】図３は、漢字「木」の骨格形状を表す骨格データの一例を示す図である。
【図４】図４は、図３の漢字「木」の骨格データの骨格を座標平面上に表示した例を示す図である。
【図５】図５は、本発明の実施形態に係る文字表示プログラムによる処理手順について説明するためのフローチャートである。
【図６】図６は、図５のステップＳ１０５０の処理手順について説明するためのフローチャートである。
【図７】図７は、ストロークデータの一例を示す図である。
【図８】図８は、図７の骨格データ構造におけるストロークＡから、実ピクセル座標系における表示データ（画素データ）を生成処理する場合の説明図である。
【図９】図９は、図７の骨格データ構造におけるストロークＢから、実ピクセル座標系における表示データを生成処理する場合の説明図である。
【図１０】図１０は、図１０は、図７の骨格データ構造におけるストロークＣから、実ピクセル座標系における表示データを生成処理する場合の説明図である。
【図１１】図１１は、図６のステップＳ２０３０の処理手順について説明するためのフローチャートである。
【図１２】図１２は、図７および図８に示されるストロークＡを、表示太さを示すドット数Ｗが「９」の場合において、ストロークＡの始点Ｐｓと終点Ｐｅとを結ぶ直線（ストローク）上に位置するサンプル点から最初に選択された座標位置Ｐ２の画素と、始点Ｐｓに対応する画素とをそれぞれ中心として、一辺が９ドットの正方形のメインドットパターンによって表示した状態を示す図である。
【図１３】図１３は、図７のストロークＡを、９ドットの表示太さで表示する場合に生成される表示データに基づいて表示デバイス２を制御して得られる表示状態を示す図である。
【図１４】図１４は、図６のステップＳ２０４０の処理手順について説明するためのフローチャートである。
【図１５】図１５は、図７のストロークＢを、太さＷを９ドットとして処理する場合における、座標データ１のサンプル点（始点Ｐｓ）に対応する座標位置を中心として設定された菱形形状のメインドットパターンをそれぞれ示す図である。
【図１６】図１６は、図７のストロークＣを、太さＷを９ドットとして処理する場合における、座標データ１のサンプル点（始点Ｐｓ）に対応する座標位置を中心として設定された菱形形状のメインドットパターンをそれぞれ示す図である。
【図１７】図１７は、図７に示されたストロークＢを、９ドットの表示太さで表示する場合に生成される表示データに基づいて表示デバイス２を制御して得られる表示状態をそれぞれ示す図である。
【図１８】図１８は、図７に示されたストロークＣを、９ドットの表示太さで表示する場合に生成される表示データに基づいて表示デバイス２を制御して得られる表示状態をそれぞれ示す図である。
【図１９】図１９は、２本のストロークＡ、Ｃによる折れ線を描画する様子を表す図である。
【図２０】図２０は、正方形と菱形とを合成したパターンを表す図である。
【図２１】図２１は、図１１におけるステップＳ３０１０の描画処理の詳細を説明する図である。
【図２２】図２２は、図１１におけるステップＳ３１１０の描画処理の詳細を説明する図である。
【図２３】図２３は、図１４におけるステップＳ４０２０の描画処理の詳細を説明する図である。
【図２４】図２４は、図１４におけるステップＳ４１１０の描画処理の詳細を説明する図である。
【符号の説明】
【００３０】
１  文字表示装置
２  表示デバイス
３  制御部
４  ＣＰＵ
５  主メモリ
６  入力デバイス
７  補助記憶装置
８  文字表示プログラム
９  骨格データ
【発明を実施するための最良の形態】
【００３１】
以下に、本発明の実施形態について、図面を参照しながら説明する。以下の説明では、本発明の実施形態として文字表示装置を例示して説明するが、これは、本発明が、文字のみを表示することが可能な文字表示装置に限定されることを意図したものではない。文字および図形は同様に扱えることが自明であることから、文字または図形（すなわち、文字のみ、または、図形のみ、または、文字および図形の両方）を表示することが可能な文字図形表示装置に本発明を適用することができることもまた自明である。このような文字図形表示装置もまた本発明の範囲内である。【００３２】
図１は、本発明の文字表示装置の実施形態の一例の構成を示すブロック図である。この文字表示装置１は、例えば、パーソナルコンピュータであり、文字等の所定の画像がカラー表示可能な表示画面を有する表示デバイス２と、表示デバイス２の表示画面に文字等の所定の画像が表示されるように表示デバイス２を制御する制御部３とを備えている。制御部３は、ＣＰＵ４と主メモリ５とを有しており、主メモリ５に、表示デバイス２と、入力デバイス６と、補助記憶装置７とがそれぞれ接続されている。【００３３】
表示デバイス２の表示画面は、複数の正方形の画素（ピクセル）がマトリクス状に設けられており、制御部３が、各画素の輝度値をそれぞれ独立して制御することによって、表示画面に文字等が表示される。【００３４】
なお、表示デバイス２が一般的なカラー液晶表示デバイスである場合、１つの画素に対して、赤色、青色および緑色にそれぞれ発光する３つのサブピクセルが割り当てられる。そして、各サブピクセルの明るさの度合いを表す輝度値を、制御部３によって制御することにより、各画素のそれぞれの色が制御され、文字等がカラー表示される。【００３５】
補助記憶装置７には、制御部３によって表示デバイス２に文字の表示動作を実行させる文字表示プログラム８と、表示デバイス２に表示される全ての文字に対して、それぞれの骨格形状を定義する骨格データとが記憶されている。骨格データとは、文字の骨格（芯）形状を構成する全ての線分（ストローク）に関するデータであり、表示デバイス２おいて表示可能な全ての文字について、各文字毎にそれぞれの骨格データが設定されている。【００３６】
制御部３に設けられたＣＰＵ４は、文字表示装置１の全体を監視して制御するとともに、補助記憶装置７に格納された文字表示プログラム８を、主メモリ５に格納して、その文字表示プログラム８を実行することによって、表示デバイス２の表示画面に、画像としての文字を表示する。【００３７】
制御部３に設けられた主メモリ５は、入力デバイス６から入力されるデータ、表示デバイス２に文字を表示するための骨格データ、文字表示プログラム８を実行するために必要な文字表示プログラム等を一時的に格納する。主メモリ５は、ＣＰＵ４によってアクセスされる。【００３８】
ＣＰＵ４は、補助記憶装置７に格納された文字表示プログラム８を主メモリ５に格納して、入力デバイス６から入力される文字情報に基づいて、主メモリ５に格納された文字表示プログラム８を実行することにより、文字パターン（画素データ）を生成する。生成される文字パターンは、入力デバイス６から入力された文字情報に基づいて、表示デバイス２の表示画面上に設けられた所定個数の画素のそれぞれに対して輝度値を設定したものである。生成された文字パターンは、主メモリ５に一旦格納された後、表示デバイス２に出力される。文字パターンが表示デバイス２に出力されるタイミングは、ＣＰＵ４によって制御される。【００３９】
入力デバイス６にて入力される文字情報には、例えば、文字を識別する文字コード、文字の大きさを示す文字サイズ等が含まれる。入力デバイス６としては、文字コード、文字の大きさ等を入力することが可能な任意のタイプの入力デバイスを使用することができる。例えば、キーボード、マウス、ペン入力装置等が、入力デバイス６として好適に使用される。【００４０】
補助記憶装置７としては、文字表示プログラム８および骨格データ９を格納することが可能な任意のタイプの記憶装置を使用することができ、例えば、制御装置３に対して着脱可能になった記録媒体が補助記憶装置７として使用することができる。このような記録媒体としては、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、フロッピー（登録商標）ディスク、ＭＤ、ＤＶＤ、ＩＣカード、光カード等が挙げられる。【００４１】
なお、文字表示プログラム８および骨格データ９は、補助記憶装置７に格納されることに限定されない。例えば、文字表示プログラム８および骨格データ９は、主メモリ５に格納されてもよく、また、ＲＯＭ（図示せず）に格納されてもよい。ＲＯＭは、例えば、マスクＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＲＯＭなどであってもよい。ＲＯＭ方式の場合には、そのＲＯＭを交換するだけで、各種処理のバリエーションを容易に実現することができる。従って、ＲＯＭ方式は、携帯型の端末装置や携帯電話機などに対して好適に適用することができる。【００４２】
さらに、文字表示プログラム８および骨格データ９を格納する記録媒体は、上記ディスク、カード等の記憶装置、半導体メモリ等のように、プログラムあるいはデータを固定的に担持する媒体以外に、通信ネットワークにおいてプログラムあるいはデータを通信するために使用される通信媒体のように、プログラムあるいはデータを流動的に担持する媒体であってもよい。【００４３】
文字表示装置１がインターネットを含む通信回線に接続するための手段を備えている場合には、その通信回線から文字表示プログラム８および骨格データ９をダウンロードすることができる。この場合、ダウンロードに必要なローダープログラムは、ＲＯＭ（図示せず）に予め格納されていてもよく、また、補助記憶装置７から制御部３にインストールされてもよい。【００４４】
このような文字表示装置１としては、例えばパーソナルコンピュータが挙げられる。パーソナルコンピュータの場合には、デスクトップ型、ラップトップ型のいずれであってもよい。なお、本発明の文字表示装置としては、パーソナルコンピュータに限らず、カラー表示あるいはモノクロ表示が可能な表示デバイスを有する電子機器、情報機器であってもよい。例えば、文字表示装置１は、カラー液晶表示デバイスを備えたワードプロセッサ等の電子機器、携帯情報ツールである携帯情報端末、ＰＨＳ等の携帯電話機、一般の電話機、ＦＡＸ等の通信機器であってもよい。【００４５】
図２は、図１に示す補助記憶装置７に格納されている１つの文字に対する骨格データのデータ構造の一例を示している。図２に示す骨格データ構造は、文字を特定するための文字コードと、その文字コードにて特定された１つの文字の骨格を構成する全てのストロークの総数Ｍ（Ｍは１以上の整数）を示すストローク総数と、それぞれのストロークを特定するために必要な情報であるストロークデータとによって構成されている。文字コードにて特定される文字の骨格データ（スケルトンデータ）は、予め定義されて補助記憶装置７に格納されている。【００４６】
ストロークデータは、各ストロークを、所定の大きさを有する骨格座標平面上、例えば、座標点の個数が２５６×２５６のＸ−Ｙ座標平面にて構成された骨格座標平面上において、各ストロークを特定するために必要な複数のサンプル点の座標データであり、１つの文字の骨格を形成する全てのストロークのそれぞれに対して、前記座標平面上において１つのストロークを特定するために必要とされるサンプル点の総数Ｎ（Ｎは１以上の整数）と、Ｎ個のサンプル点それぞれの座標値である座標データとによって構成されている。【００４７】
サンプル点の総数Ｎは、文字を構成するストロークの種類によって異なり、例えば、文字を構成する縦線および横線のような直線のストロークの場合、それぞれのストロークの始点および終点の２個のサンプル点が設定される。また、文字を構成する曲線のストロークでは、曲線が特定されるように、曲線の状態に応じて、始点および終点と、それらの間に位置する１個以上の座標点がサンプル点として設定される。従って、１つのストロークは、ストロークデータとして記録されているＮ個の座標データにてそれぞれ示される各サンプル点を直線で結ぶことによって前記骨格座標平面上において特定される。この骨格座標平面は、通常のＸ−Ｙ座標と同様に、左下の座標を原点（０，０）とし、上方向をＹ座標の正方向、右方向をＸ座標の正方向に定義している。【００４８】
このように、１つの骨格データには、Ｍ個のストロークデータ１３が含まれ、Ｍ個のストロークのそれぞれに対してＮ個のサンプル点の座標データがそれぞれ設定されている。【００４９】
図３は、漢字「木」の骨格データ構造を示しており、図４は、その骨格データ（スケルトンデータ）によって骨格座標平面にて示される骨格形状を示している。【００５０】
図３において、漢字「木」の骨格データ９には、漢字「木」を指定するための文字コードが「４４５８」（ＪＩＳ区点コード、４４区５８点）であること、ストローク数が「４」であることが示されている。そして、４個のストローク＃１〜＃４のそれぞれに対して、それぞれ所定の個数のサンプル点のストロークデータが設定されている。ストローク＃１は、漢字「木」を構成する横線のストローク、ストローク＃２は、漢字「木」を構成する縦線のストローク、ストローク＃３および＃４は、漢字「木」を構成する左右の各斜め線（曲線）のそれぞれのストロークである。【００５１】
ストローク＃１は、直線（横線）であるので、ストロークデータとしては、始点と終点の２個のサンプル点の座標データが、その順番で格納されており、サンプル点の個数Ｎとして「２」が設定され、サンプル点として、始点および終点の座標データ１および２として（４，１９２）、（２４５，１９２）がそれぞれ設定されている。ストローク＃２は、直線（縦線）であるので、ストロークデータとしては、始点と終点の２個のサンプル点の座標データがその順番で格納されており、サンプル点の数Ｎとして「２」が設定され、始点としての座標データ１（１２８，２５５）および終点としての座標データ２（１２８，０）がそれぞれ設定されている。【００５２】
ストローク＃３は、左側の斜線であり、緩やかな曲線になっているので、ストロークデータとしては、始点と終点の２個のサンプル点以外に３個のサンプル点の座標データが格納されており、サンプル点の数Ｎとして「５」が設定され、５個のサンプル点の座標データとして、座標データ１（１２１，１９２）、座標データ２（９７，１４１）、座標データ３（７２，１０３）、座標データ４（４１，６９）、座標データ５（４，４２）が、始点から終点にかけて順番に設定されている。ストローク＃４は、右側の斜線であり、緩やかな曲線になっているので、ストロークデータとしては、始点と終点の２個のサンプル点以外に３個のサンプル点が格納されており、サンプル点の数Ｎとして「５」が設定され、５個のサンプル点の各座標データとして、座標データ１（１３５，１９２）、座標データ２（１５６，１４６）、座標データ３（１８２，１０７）、座標データ４（２１３，７２）、座標データ５（２５１，４２）が、始点から終点にかけて順番に設定されている。【００５３】
図４は、図３に示す漢字「木」の骨格形状を表す全てのストロークを、骨格座標平面上に表示したものである。【００５４】
図４において、ストローク＃１は、始点（０，１９２）と終点（２５５，１９２）とを結ぶ直線として示され、ストローク＃２は、始点（１２８，２５５）と終点（１２８，０）とを結ぶ直線として示される。ストローク＃３は、５個のサンプル点（１２１，１９２）、（９７，１４１）、（７２，１０３）、（４１，６９）および（４，４２）を順番に直線で結んだものとして示される。ストローク＃４は、５個のサンプル点（１３５，１９２）、（１５６，１４６）、（１８２，１０７）、（２１３，７２）および（２５１，４２）を順番に直線で結んだものとして示される。【００５５】
図５は、ＣＰＵ４によって実行される、文字表示プログラム８による処理手順を説明するためのフローチャートである。以下に、文字表示プログラム８の具体的な処理手順を、各処理毎に詳細に説明する。【００５６】
まず、入力デバイス６から文字コードおよび文字サイズ（フォントサイズ）からなる文字情報が入力されると、ＣＰＵ４は、入力された文字情報を取得する（図５のステップＳ１０００参照、以下同様）。例えば、漢字「木」を、表示デバイス２の表示画面に表示させる場合には、入力デバイス６から文字情報として、文字コードとして４４５８番（ＪＩＳ区点コード、４４区５８点）が入力される。文字サイズは、実ピクセル座標系に表示される文字の全体の幅および高さのサイズが、それぞれ画素数として入力される。【００５７】
ステップＳ１０００にて入力された文字情報が取得されると、入力された文字コードに対応する１文字分の骨格データ９が、補助記憶装置７から読み出されて主メモリ５に格納される（ステップＳ１０１０）。漢字「木」の場合には、図３に示す漢字「木」の骨格データ９が読み出される。【００５８】
ステップＳ１０１０にて骨格データ９が読み出されると、骨格データ９に設定された各ストローク毎に、全てのサンプル点がスケーリングされる（ステップＳ１０２０）。スケーリングとは、ある大きさを有する座標平面上の座標を、異なる大きさの座標平面上の座標にマッピングする演算処理のことであり、本発明では、骨格座標平面における各ストロークの全てのサンプル点の座標データを、表示デバイス２の表示画面における実ピクセル座標系の座標データに変換する演算処理である。実ピクセル座標系は、それぞれが正方形になった各画素がマトリクス状に配置された表示画面における各画素を、Ｘ−Ｙ座標における座標点の座標データとして示しており、骨格座標平面と同様に、１つの文字に対して、左下の画素を原点（０，０）とし、上方向をＹ座標の正方向、右方向をＸ座標の正方向として定義している。実ピクセル座標系の座標点は、正方形の各画素にそれぞれ対応しており、正方形の各画素によって、表示画面における１ドットがそれぞれ構成されている。【００５９】
なお、以下の説明においては、簡単のために、骨格座標平面の座標と、実ピクセル座標系の座標とが一致しているものとして説明する。【００６０】
ステップＳ１０２０でのスケーリングが終了すると、入力された文字サイズに従って、骨格データに設定された各ストロークの表示太さ（線幅）Ｗがそれぞれ設定される（ステップＳ１０３０）。この処理の詳細については、後述する。【００６１】
ステップＳ１０３０にて各ストロークの表示太さＷがそれぞれ決定されると、補助記憶装置７から読み出された骨格データ構造に設定された最初のストロークのストロークデータが取り出される（ステップＳ１０４０）。【００６２】
ステップＳ１０４０にて、骨格データ構造から最初のストロークデータ１３が取り出されると、取り出された１つのストロークのストロークデータに基づいて、実ピクセル座標系においてそのストロークを、設定された表示太さＷとして表示するために必要な表示データを生成する（ステップＳ１０５０）。この処理の詳細については、後述する。【００６３】
ステップＳ１０５０にて、最初のストロークの表示データが生成されると、骨格データ構造に含まれる全てのストロークについて、ステップＳ１０４０〜ステップＳ１０５０の処理が完了しているかが判定される（ステップＳ１０６０）。全てのストロークに対して表示データが生成されていない場合（判定結果が「偽（Ｎ）」の場合）には、ステップＳ１０４０に戻って、骨格データ構造において、すでに表示データが生成されているストローク（最初のストローク）の次のストローク（２番目のストローク）について、同様の処理が実施され、太さＷの表示データ（画素データ）が生成される。このようにして、全てのストロークに対する処理が完了し、全てのストロークに対する表示データが生成されている場合（判定結果が「真（Ｙ）」の場合）には、文字表示処理が完了し、生成された表示データが、表示デバイス２に供給されて、表示デバイス２において、設定された太さＷの線幅で、文字が表示される。【００６４】
次に、図５に示す文字表示プログラム８の処理手順におけるステップＳ１０３０の表示太さの設定処理の詳細について説明する。【００６５】
ストロークの表示太さＷは、表示画面に表示される文字のサイズが大きくなるにつれて太くなるように設定される。この場合、例えば、表示画面における実ピクセル座標系に表示される文字サイズの幅および高さのいずれかが４０ドット（画素）を超えない場合には、表示太さＷとして１ドットが設定される。これにより、実ピクセル座標系における正方形の各画素（１ドット）を線幅として表示デバイス２の表示画面に文字が表示される。【００６６】
表示される文字の全体幅および高さのサイズが、ともに４０ドットを超えるが、いずれか一方が８０ドットを超えない場合には、表示太さＷとして３ドット（画素）が設定され、設定されたドット数を一辺とする１つの正方形（３ドット×３ドット）または菱形を、１つのメインドットパターンとして、そのメインドットパターンを線幅として文字を表示するための画素が設定される。以下同様に、表示される文字の全体幅および全体高さのサイズが、ともに８０ドットを超えるが、いずれか一方が１２８ドットを超えない場合には、表示太さＷとして５ドット（画素）が設定され、一辺が５ドットの正方形または菱形を１つのメインドットパターンに設定する。表示される文字の全体幅および高さのサイズが、ともに１２８ドットを超えるが、いずれか一方が１９２ドットを超えない場合には、表示太さＷとして７ドット（画素）が設定されて、一辺が７ドットの正方形または菱形を１つのメインドットパターンに設定する。表示される文字の全体幅および高さのサイズが、ともに１９２ドットを超える場合には、表示太さＷとして９ドットが設定されて、一辺が９ドットの正方形または菱形を１つのメインドットパターンに設定する。【００６７】
なお、上述のストロークの表示太さＷの設定方法は、表示される文字のサイズが大きくなるにつれて表示文字の線幅を太くすることにより、表示される文字サイズに適した文字の表示を得るようにした一例を示しているが、文字のサイズにかかわらずに、表示太さＷを一定に設定しても良い。また、文字の画数に応じて表示太さＷを小さく設定してもよい。【００６８】
次に、図５の文字表示プログラム８による処理手順における各ストロークに対する表示データの生成処理（ステップＳ１０５０）の詳細を、図６に基づいて説明する。図６は、図５に示すストロークの表示データ生成処理（ステップＳ１０５０）のサブルーチンを示すフローチャート、図７は、図６に示すストロークの表示データ生成処理が実施される文字のストロークデータの一例を示す表である。【００６９】
まず、表示される文字の全てのストロークのストロークデータ１３を、骨格データ構造から取得する（ステップＳ２０１０）。この場合、各ストローク毎に、ストロークデータとして順番に記録されている最初の２つのサンプル点の座標データ１および２番目の座標データ２がそれぞれ取得される。【００７０】
例えば、図７に示すストロークＡのストロークデータは、サンプル点の数が２個であるので、ストロークＡは直線であり、ストロークＡの始点を示す座標データ１（２７，０）と、終点を示す座標データ２（０，９）とが取り出される。ストロークＢも、同様に、サンプル点の数が２個であるので、直線の始点を示す座標データ１（１２，０）と終点を示す座標データ２（０，２７）とが取り出される。さらに、ストロークＣも、同様にサンプル点の数が２個であるので直線であり、直線の始点を示す座標データ１（１５，０）と終点を示す座標データ２（０，２７）とが取り出される。【００７１】
なお、図８は、図７の骨格データ構造におけるストロークＡから、実ピクセル座標系における表示データ（画素データ）を生成処理する場合の説明図、図９は、図７の骨格データ構造におけるストロークＢから、実ピクセル座標系における表示データを生成処理する場合の説明図、図１０は、図７の骨格データ構造におけるストロークＣから、実ピクセル座標系における表示データを生成処理する場合の説明図である。【００７２】
ステップＳ２０１０において、骨格データ９におけるストロークに対して、２つのサンプル点の座標データが取り出されると、取り出された２つのサンプル点を結ぶ直線が斜め線であるかの判定が実施される（ステップＳ２０２０）。【００７３】
具体的には、骨格座標平面において、座標データ１および２にて示されるサンプル点同士を結ぶ直線について、Ｘ軸の正方向に対する傾きをθとして、０≦θ＜２５°、６５°≦θ＜１１３°、１５５°≦θ＜２０５°、２４５°≦θ＜２９５°または３３５°≦θ＜３６０°である場合には、斜め線ではない（縦線または横線）と判定し、それ以外の場合には斜め線であると判定する。【００７４】
このステップＳ２０２０において、座標データ１および座標データ２にてそれぞれ示されるサンプル点を結ぶ直線が斜め線として判定された場合には、ステップＳ２０４０にて、メインドットパターンを菱形に設定して表示データが生成され、斜め線でなく縦線または横線と判定された場合には、ステップＳ２０３０にて、メインドットパターンを正方形に設定して表示データが生成される。【００７５】
図７に示すストロークデータでは、ストロークＡは、図８に示すように、Ｘ軸の正方向に対する傾きθが１６１．６°となるため斜め線ではないと判定され、ステップＳ２０３０にて、メインドットパターンを正方形に設定して表示データが生成される。ストロークＢは、図９に示すように、Ｘ軸の正方向に対する傾きθが１１４．０°となるため、斜め線であると判定され、ステップＳ２０４０にてメインドットパターンを菱形に設定して表示データが生成される。ストロークＣでは、図１０に示すように、Ｘ軸の正方向に対する傾きθが１１９．１°となるため、斜め線であると判定され、ステップＳ２０４０にてメインドットパターンを菱形に設定して表示データが生成される。【００７６】
ステップＳ２０２０において、ストロークが斜め線でないと判定されると、図５のステップＳ１０３０にて決定された表示太さＷとなるように、一辺が所定のドット数の正方形のメインドットパターンによって、ステップＳ２０２０で取得された座標データ１および座標データ２のサンプル点を結ぶ直線の表示データが生成される（ステップＳ２０３０）。この処理の詳細については後述する。なお、正方形のメインドットパターンの代わりに、矩形のメインドットパターンを用いてもよい。【００７７】
これに対して、ステップＳ２０２０において、ストロークが斜め線と判定されると、図５のステップＳ１０３０にて決定された表示太さＷとなるように、一辺が所定のドット数の菱形のメインドットパターンによって、ステップＳ２０２０で取得された２つの座標データ１および座標データ２のサンプル点を結ぶ直線の表示データが生成される（ステップＳ２０４０）。この処理の詳細についても後述する。【００７８】
ステップＳ２０３０またはステップＳ２０４０において、各ストロークにおける最初と２番目のサンプル点の座標データを結ぶ直線の表示太さＷに関する表示データが得られると、各ストロークにおいて、ストロークデータとして３番目のサンプル点の座標データ３が存在するかを確認し、座標データ３が存在する場合には、ステップＳ２０１０〜ステップＳ２０３０またはステップＳ２０４０までの処理が繰り返されて、座標データ２と座標データ３との点を結ぶ直線の表示データを生成する（ステップＳ２０５０）。そして、１つのストロークについて、骨格データ構造に含まれるサンプル点を順番に結んだ直線について表示データが生成されると、図５のフローチャートにおけるステップＳ１０５０のストロークの表示データ生成処理が終了する。【００７９】
図１１は、図６に示すステップＳ２０２０において、斜め線でないと判定されることによってステップＳ２０３０にて実施される正方形のメインドットパターンの表示データの生成処理手順を示すフローチャートである。以下に、この図１１と、図７のストロークＡに対する説明図である図８に基づいて、正方形のメインドットパターンによる表示データ生成処理の手順について説明する。【００８０】
図８では、図７に示すストロークＡに対して、表示太さＷ＝９として、実ピクセル座標系において、一辺が９ドット（画素）の正方形をメインドットパターンとして設定するようになっている。【００８１】
図６に示すステップＳ２０２０において、ストロークが斜め線でないと判定された場合には、ステップＳ２０１０にて取得された２つのサンプル点の座標データから、最初に取得された座標データ１に対応するストロークＡの始点Ｐｓを中心点Ｆとして、図５のステップ１０３０で設定された表示太さＷに対応する一辺がＷドットの正方形のメインドットパターンを構成する画素を設定する。そして、この始点Ｐｓを、点Ｇに設定する（ステップＳ３０１０）。【００８２】
次に、ブレゼンハムのアルゴリズムによって、点Ｇに対して終点Ｐｅ側に隣接するストロークＡ上の画素の座標を求めて新たな点Ｇに設定する（ステップＳ３０２０）。その後、ストロークの始点Ｐｓと終点Ｐｅとを結ぶ直線が縦線であるかを判定する（ステップＳ３０３０）。この場合、ストロークＡに対応する直線とＸ軸となす角θが、４５°≦θ＜１３５°または２２５°≦θ＜３１５°を満たす場合には縦線と判定する。なお、ストロークＡに対応する直線とＸ軸となす角θが上記範囲に無い場合には、横線と判定される。【００８３】
始点Ｐｓと終点Ｐｅとを結ぶストロークの直線が縦線であると判定された場合には、ステップＳ３０７０に進み、縦線ではないと判定された場合には、ステップＳ３０４０に進む。【００８４】
図８に示す場合には、ストロークの始点Ｐｓと終点Ｐｅとを結ぶ直線のＸ軸の正方向に対する傾きθは、前述したように、θ＝１１４．０°になっているために、縦線ではなく横線であると判定され、ステップＳ３０４０の処理が実行される。【００８５】
ステップＳ３０４０においては、新たに設定された点Ｇに対応する実ピクセル座標系のＸ座標値と、中心点Ｆに対応する実ピクセル座標系のＸ座標値との差の絶対値｜ΔＸ｜が、表示太さＷを示すドット数（＝Ｗ）と一致するかを判定する。そして、絶対値｜ΔＸ｜がドット数Ｗと一致する場合（｜ΔＸ｜＝Ｗ）には、ステップＳ３０５０に進む。【００８６】
図８において、Ｗ＝９であり、点Ｇは、点Ｆに隣接していることから、｜ΔＸ｜＝１であるために、ステップＳ３１００に進む。そして、ステップＳ３１００において、点Ｇが、ストロークの終点Ｐｅに対応していないことを確認し、ステップＳ３０２０に戻って、点Ｇに対して終点Ｐｅ側に隣接するストロークＡ上の画素の座標を求め、新たな点Ｇとする。そして、ストロークの始点Ｐｓと終点Ｐｅとを結ぶ直線が縦線であるかを確認し（ステップＳ３０３０）、新たに設定された点Ｇに対応する実ピクセル座標系のＸ座標値と、中心点Ｆに対応する実ピクセル座標系のＸ座標値との差の絶対値｜ΔＸ｜が、表示太さＷを示すドット数（＝Ｗ）と一致するかを判定する（ステップＳ３０４０）。以後、ステップＳ３０４０において｜ΔＸ｜＝Ｗでない場合には、｜ΔＸ｜＝Ｗになるまで、ステップＳ３１００〜ステップＳ３０２０〜Ｓ３０３０〜ステップＳ３０４０の処理を繰り返す。【００８７】
図８に、ストロークＡの始点Ｐｓに対して、ブレゼンハムのアルゴリズムによって順次求められる画素の点Ｇを、「×」印で示す。【００８８】
なお、ステップＳ３１００において、点Ｇが、ストロークの終点Ｐｅに対応している場合には、ステップＳ３１１０に進み、点Ｇを中心とした一辺のドット数がＷの正方形のメインドットパターンを構成する画素を設定して、図６のステップＳ２０５０に進む。【００８９】
ステップＳ３０４０において、｜ΔＸ｜＝Ｗになると、ステップＳ３０５０に進み、設定された点Ｇを中心として一辺のドット数がＷの正方形のメインドットパターンを構成する画素が設定される。このとき、ステップＳ３０４０において、点Ｇに対応する画素のＸ座標値と、中心点Ｆに対応する画素のＸ座標値との差の絶対値がストロークの表示太さを示すドット数Ｗと一致することが確認されているために、点Ｇを中心として設定されるメインドットパターンと、中心点Ｆを中心とするメインドットパターンとは重なることなく、Ｘ方向に相互に接した状態になる。そして、メインドットパターンの中心になった点Ｇを、新たな中心点Ｆとする。【００９０】
図１２は、図７および図８に示されるストロークＡの始点Ｐｓを中心点Ｆとして、表示太さを示すドット数Ｗが「９」の場合に設定される正方形のメインドットパターン２１と、そのメインドットパターンに隣接して設定された正方形のメインドットパターン２２とを示している。ストロークＡの始点Ｐｓを中心点Ｆとして設定されるメインドットパターン２１は白抜きで示しており、そのメインドットパターン２１に接して設定されるメインドットパターン２２は黒ベタで示している。【００９１】
このように、ステップＳ３０５０において、一辺が表示太さＷを示すドット数に等しい正方形のメインドットパターン２１および２２が相互に隣接して設定されると、ステップＳ３０６０において、各メインドットパターン２１および２２の中心である点Ｆおよび点ＧのＹ座標の差の絶対値｜ΔＹ｜を計算する。そして、１＜｜ΔＹ｜の場合には、メインドットパターン２１および２２のＹ軸方向のずれによって形成される各段差部において、各メインドットパターン２１および２２にそれぞれ接するとともに、Ｘ方向およびＹ方向にそれぞれ相互に隣接して並んだ各「｜ΔＹ｜−１」個の画素のそれぞれのＸ方向およびＹ方向の長さを一辺とする二等辺三角形に含まれる全ての画素を、サブドットパターンとして選択する。すなわち、その二等辺三角形の内部に画素の全てが含まれている画素のみならず、その二等辺三角形の内部に画素の一部が含まれている画素もサブドットパターンとして選択する。【００９２】
図７のストロークＡを、９ドットの表示太さで表示する図１２の場合は、ストロークＡの始点Ｐｓを中心点Ｆとした９ドット×９ドットの正方形のメインドットパターン２１を構成する８１個の画素の座標データと、このメインドットパターン２１に隣接する９ドット×９ドットの正方形のメインドットパターン２２を構成する８１個の画素の座標データとが、表示データ（画素データ）として設定される。この場合、各メインドットパターン２１および２２のＹ軸方向の差の絶対値｜ΔＹ｜は「３」になっていることから、メインドットパターン２１および２２のＹ軸方向にずれて形成されるそれぞれの段差部において、各メインドットパターン２１および２２にそれぞれ接するとともに、Ｘ方向およびＹ方向に相互に隣接して並んだ２個の画素のそれぞれのＸ方向およびＹ方向の長さを一辺とする二等辺三角形に含まれる３個の画素（図１２に網掛け模様にて示す）が、サブドットパターン２３および２４としてそれぞれ設定される。【００９３】
このようにしてサブドットパターンが設定されると、ステップＳ３１２０において、点ＧがストロークＡの終点Ｐｅに対応していないかを確認し、ストロークの終点Ｐｅに対応していない場合には、ステップＳ３０２０に戻り、以後、同様の処理を繰り返す。【００９４】
点Ｇがストロークの終点Ｐｅであることが確認されると、図６のステップＳ２０５０に進み、１つのストロークに含まれる全ての座標位置についての処理が終了したことを確認する。そして、１つのストロークに含まれる全ての座標位置についての処理が終了していることが確認されると、図５のステップＳ１０５０に進み、文字を構成する他のストロークについても同様の処理が実施されて、文字を構成する全てのストロークについての表示データが生成される。【００９５】
なお、上記の説明では、ステップＳ３０３０において、ストロークの始点Ｐｓと終点Ｐｅを結ぶ直線が縦線でなく横線とみなされる場合の処理手順を説明したが、ステップＳ３０３０において、ストロークの始点Ｐｓと終点Ｐｅを結ぶ直線が縦線であると判定される場合には、ステップＳ３０７０に進み、ステップＳ３０７０において、ステップＳ３０２０にて求められた隣接する座標位置の点Ｇおよび中心点Ｆの実ピクセル座標系におけるＹ座標値の差の絶対値｜ΔＹ｜が、表示太さＷを示すドット数（＝Ｗ）と一致するかを判定する。絶対値｜ΔＹ｜がドット数Ｗと一致する（｜ΔＹ｜＝Ｗ）場合には、ステップＳ３０８０に進み、点Ｇを中心とした一辺のドット数Ｗの正方形のメインドットパターンを設定する。このとき、ステップＳ３０７０において、点Ｇおよび中心点Ｆに対応する画素のＹ座標値の差の絶対値がストロークの表示太さを示すドット数Ｗと一致することが確認されているために、点Ｇを中心として設定されるメインドットパターンは、中心点Ｆに対して設定されたメインドットパターンとは重なることなく、Ｙ方向に相互に接した状態になる。【００９６】
ステップＳ３０７０において、絶対値｜ΔＹ｜がドット数Ｗと一致しない場合には、ステップＳ３１００に進み、ステップＳ３１００にて点Ｇが、ストロークの終点Ｐｅでないことを確認し、ステップＳ３０２０に戻って、点Ｇに隣接する画素の座標位置をブレゼンハムのアルゴリズムによって求めて点Ｇとし、以後、ステップＳ３０３０〜ステップＳ３０７０の処理を繰り返す。【００９７】
このようにして、ステップＳ３０７０において、一辺が表示太さＷを示すドット数に等しい正方形のメインドットパターンが設定されると、ステップＳ３０９０において、点Ｇと直前の中心点Ｆとの実ピクセル座標系におけるＸ座標値の差の絶対値｜ΔＸ｜を演算し、１＜｜ΔＸ｜の場合には、点Ｇを中心とするメインドットパターンと、点Ｆを中心とするメインドットパターンとがＸ軸方向にずれることによって段差部が形成されているものとして、その各段差部において、各メインドットパターンにそれぞれ接するとともに、Ｘ方向およびＹ方向に相互に隣接して並んだ各「｜ΔＸ｜−１」個の画素のそれぞれのＸ方向およびＹ方向の長さを一辺とする二等辺三角形に含まれる全ての画素を、サブドットパターンとして設定する。【００９８】
なお、ステップＳ３０６０およびステップＳ３０９０によるサブドットパターンの設定処理は、表示画面がスクロール中である場合には、省略してもよい。また、ストロークの傾きが水平方向または垂直方向に近い場合においても省略されてもよい。このことにより、線分の段差を埋めるパターンが出力結果の見た目に与える影響が軽微な場面では、描画処理を少なくして描画速度を優先することが可能である。【００９９】
このようにしてサブドットパターンが選択されると、ステップＳ３１２０において、点Ｇがストロークの終点Ｐｅに対応していないかを確認し、ストロークの終点Ｐｅに対応していない場合には、ステップＳ３０２０に戻り、ステップＳ３０２０以降の処理を繰り返す。【０１００】
ステップＳ３１２０において、点Ｇがストロークの終点Ｐｅに対応していることが確認されると、前述したように、図６のステップＳ２０５０に進み、１つのストロークに含まれる全ての座標位置についての処理が終了したことを確認する。そして、１つのストロークに含まれる全ての座標位置についての処理が終了していることが確認されると、図５のステップＳ１０５０に進み、文字を構成する他のストロークについても同様の処理が実施されて、文字を構成する全てのストロークについての表示データが生成される。【０１０１】
図１３は、図７のストロークＡを、９ドットの表示太さで表示する場合に生成される表示データに基づいて表示デバイス２を制御して得られる表示状態を示している。このように、文字を構成するストロークが縦線でなくて横線とみなされる場合にも、相互に隣接するメインドットパターンの間の段差部にサブドットパターンが形成されていることによって、太さＷのメインドットパターン同士が、滑らかに連続して表示され、ストロークを太く表示する場合における視認性が著しく向上する。【０１０２】
以上の説明は、図６のステップＳ２０２０において、ストロークデータとして順番に記録されている最初のサンプル点の座標データ１と２番目のサンプル点の座標データ２とを結ぶ直線が斜め線でない（縦線または横線）と判定された場合の処理についてであったが、以下に、図６のステップＳ２０２０において、座標データ１のサンプル点と２番目の座標データ２のサンプル点とを結ぶ直線が斜め線と判定された場合のステップＳ２０４０の具体的な処理を、図１４のフローチャートに基づいて説明する。【０１０３】
なお、この場合にも、ブレゼンハムのアルゴリズムによって、ストロークＡの始点Ｐｓと終点Ｐｅとを結ぶ直線（ストローク）上に位置する座標の点Ｇとして、始点Ｐｓから順番に隣接する画素が設定される。図７のストロークＢおよびストロークＣに対して、ブレゼンハムのアルゴリズムによって抽出される点Ｇおよび中心点Ｆを、図９および図１０に示す。【０１０４】
始点Ｐｓと終点Ｐｅとを結ぶ直線が斜め線であると判定されると、まず、図５のフローチャートのステップＳ１０３０において、設定された表示太さＷに「（２）１／２」を乗算（Ｗ×（２）１／２）し、その乗算結果に最も近い１以上の奇数Ｗ’を求める（図１４のステップＳ４０１０参照、以下同様）。【０１０５】
ステップＳ４０１０において、１以上の奇数Ｗ’が求められると、始点Ｐｓ（座標データ１のサンプル点）に対応する画素を中心点Ｆとして、求められたＷ’が、２本の各対角線のそれぞれのドット数となる菱形形状をメインドットパターンに設定する（ステップＳ４０２０）。【０１０６】
図１５および１６は、それぞれ、図７のストロークＢおよびストロークＣを、太さＷを９ドットとして処理する場合における、座標データ１のサンプル点（始点Ｐｓ）に対応する座標位置を中心点Ｆとして設定された菱形形状のメインドットパターン２１をそれぞれ白抜きで示している。それぞれの菱形形状のメインドットパターン２１は、表示太さＷ＝９であるので、ステップＳ４０１０において、Ｗ’は、９×（２）１／２＝１２．７３に最も近い奇数である１３を対角線の長さのドット数として設定している。【０１０７】
このようにして、ストロークの始点Ｐｓに対する菱形形状のメインドットパターンが設定されると、ブレゼンハムのアルゴリズムによって、点Ｇに対して終点Ｐｅ側に隣接する画素の座標を求めて、新たな点Ｇとする（ステップＳ４０３０）。ブレゼンハムのアルゴリズムは公知であるために説明を省略する。【０１０８】
ステップＳ４０３０において、点Ｇ求められると、求められた点Ｇと中心点Ｆとに対応する実ピクセル座標系のＸ座標値の差の絶対値｜ΔＸ｜と、それぞれのＹ座標値の差の絶対値｜ΔＹ｜との合計が、ステップＳ４０１０で求められたＷ’以上（｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’）になっているかを判定する（ステップＳ４０４０）。【０１０９】
ステップＳ４０４０において｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’を満足しない場合には、ステップＳ４０９０に進み、点Ｇがストロークの終点Ｐｅに対応していないことを確認して、ステップＳ４１２０に戻り、点Ｇに対して終点Ｐｅ側に隣接する画素の座標を求めて、新たな点Ｇとし（ステップＳ４０３０）、｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’になっているかを判定する（ステップＳ４０４０）。以後、｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’になるまで、ステップＳ４０９０〜Ｓ４１２０〜ステップＳ４０３０〜ステップＳ４０４０の処理を繰り返す。【０１１０】
そして、｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’を満足する点Ｇが得られると、その点を中心点Ｆとして、２本の各対角線がそれぞれドット数Ｗ’となった菱形形状をメインドットパターンに設定する（ステップＳ４０５０）。【０１１１】
このようにして設定される菱形形状のメインドットパターンは、｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’を満足するために、直前に中心点Ｆを中心として設定された菱形形状のメインドットパターンとは重なるおそれがない。【０１１２】
なお、点Ｇがストロークの終点Ｐｅに対応していれば、その点Ｇ（終点Ｐｅ）の画素をメインドットパターン中心Ｆとして、２本の各対角線がそれぞれドット数Ｗ’となった菱形形状をメインドットパターンに設定し（ステップＳ４１００）、処理を終了する。【０１１３】
図７に示されたストロークＢでは、図９に示すように、始点Ｐｓの座標（１２，０）に対して、ブレゼンハムのアルゴリズムで求められた座標（８，９）の点Ｇにおいて、ΔＸの絶対値とΔＹの絶対値との和は１３（＝Ｗ’）（｜ΔＸ｜＝５、｜ΔＹ｜＝９）となり、ステップＳ４０４０における｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’の条件を満たすため、図１５に示すように、座標（８，９）の点Ｇを中心として、各対角線が１３ドットの菱形形状がメインドットパターン３２（黒ベタで示す）として設定される。【０１１４】
また、図７に示されたストロークＣでは、図１０に示すように、始点Ｐｓの座標（１５，０）に対して、ブレゼンハムのアルゴリズムで求められた座標（１０，９）の点Ｇにおいて、ΔＸの絶対値とΔＹの絶対値との和は１４（｜ΔＸ｜＝５、｜ΔＹ｜＝９）となってＷ’（＝１３）によりも大きくなる。よって、座標（１０，９）の点Ｇが、ステップＳ４０４０における｜ΔＸ｜＋｜ΔＹ｜≧Ｗ’の条件を満たすため、図１６に示すように座標（１０，９）の点Ｇを中心とした各対角線が１３ドットの菱形形状がメインドットパターン３２（黒ベタで示す）として設定される。この場合、ΔＸの絶対値とΔＹの絶対値との和が、ドット数Ｗ’に等しくなく、１ドットの差が存在するために、それぞれが菱形形状のメインドットパターン３１およびメインドットパターン３２の間には、相互に対向する辺に沿って間隙（図１６にハッチで示す）が形成されることになる。【０１１５】
このようにして、ステップＳ４０５０において、図１５および図１６に示すように、対角線が表示太さＷに対応した長さになった菱形形状のメインドットパターン３２がメインドットパターン３１に隣接して設定されると、各メインドットパターン３１および３２における相互に近接した近接辺（間隙が形成されることなく密着した辺、または、両者の間に間隙が形成された辺、図１５および図１６に一括して辺Ｂとして示す）に沿って各メインドットパターン３１および３２同士がずれた状態になっており、従って、それぞれ近接辺Ｂと、それぞれの近接辺Ｂに対して直交する各メインドットパターン３１および３２の辺Ｃおよび辺Ａとによって段差部がそれぞれ形成されている。そして、それらの段差部を埋めるように、サブドットパターン３３（網掛け模様で示す）がそれぞれ設定される（ステップＳ４０６０）。【０１１６】
各サブドットパターン３３は、各メインドットパターン３１および３２におけるそれぞれの近接辺Ｂにおける両側において最も外側に位置する各端部の画素のＸ座標値を、それぞれＸ１およびＸ２（但しＸ１＜Ｘ２）とすると、Ｘ座標値がＸ１以上Ｘ２以下の範囲で、それぞれの段差部内に位置する全ての画素が、サブドットパターン３３として設定される。【０１１７】
その後、点Ｇに対応する実ピクセル座標系のＸ座標値と中心点Ｆに対応する実ピクセル座標系の画素のＸ座標値との差の絶対値｜ΔＸ｜と、それぞれのＹ座標値の差の絶対値｜ΔＹ｜との合計が、ステップＳ４０１０で求められたＷ’よりも大きくなっているか（｜ΔＸ｜＋｜ΔＹ｜＞Ｗ’）を判定する（ステップＳ４０７０）。そして、｜ΔＸ｜＋｜ΔＹ｜＞Ｗ’を満足する場合には、各メインドットパターン３１および３２における近接辺同士が密着していないために、それらの間に間隙を形成する画素が存在することになり、その間隙を形成する画素の全てを補正用ドットパターン３４として設定する（ステップＳ４０８０）。【０１１８】
このようにして、メインドットパターン、サブドットパターンおよび補正用ドットパターンが設定されると、点Ｇがストロークの終点Ｐｅに対応しているかを確認し（ステップＳ４１１０）、ストロークの終点Ｐｅに対応していない場合には、ステップＳ４０３０に戻り、ステップＳ４０３０以降の動作が繰り返される。【０１１９】
なお、ステップＳ４０６０およびステップＳ４０８０におけるサブドットパターンおよび補正用ドットパターンの設定処理は、表示画面がスクロール中である場合には、省略してもよい。また、ストロークの傾きが４５度方向または１３５度方向または２２５度方向または３１５度方向に近い場合においても省略されてもよい。このことにより、線分の段差を埋めるパターンが出力結果の見た目に与える影響が軽微な場面では、描画処理を少なくして描画速度を優先することが可能である。【０１２０】
その後、点Ｇがストロークの終点Ｐｅに対応していることが確認されると（ステップＳ４１１０）、図６のステップＳ２０５０に戻り、１つのストロークにおける全ての座標点に対する処理が終了したかを確認し、１つのストロークに対して全ての座標点に対する処理が終了している場合には、図５のステップＳ１０６０に戻り、１つの文字に含まれる全てのストロークに対する表示データの生成処理が終了しているかを確認し、全てのストロークに対する表示データの生成処理が終了している場合に、１つの文字に対する表示データの生成処理は完了する。【０１２１】
なお、図１７および図１８は、図７に示されたストロークＢおよびＣを、９ドットの表示太さで表示する場合に生成される表示データに基づいて表示デバイス２を制御して得られる表示状態をそれぞれ示している。いずれの場合にも、各ストロークのそれぞれの端点においては、相互に直交する斜め線によってそれぞれのコーナー部が形成されており、しかも、各メインドットパターンの間における段差が緩和されて視認されるために、視認性が著しく向上している。【０１２２】
図１９は、前記ストロークＣを描画した終点Ｒを始点としてストロークＡを描画する場合において、ストロークＡおよびストロークＣの各々の始点と終点とを結ぶ直線上の点を矩形で表した図である。ここで、Ｒで示した点においてストロークＡの始点はストロークＣの終点と重なっている。このように、あるストロークの始点が他のストロークの終点に重なり合っている場合の描画手順は以下のようになる。【０１２３】
基本的に、ストロークＣについては、図１４で示した同様の手順に従って描画を行い、ストロークＡについては、上述したように図１１で示した同様の手順によって描画を行うが、点Ｒのように始点と終点とが重なる場合においては、始点および終点のメインドットパターン描画処理（具体的には、図１１におけるステップＳ３０１０、ステップＳ３１１０、図１４におけるステップＳ４０２０、ステップＳ４１００の描画処理）が、以下の手順によって行われる。【０１２４】
図１１におけるステップＳ３０１０の描画処理は、図２１に示される手順で処理される。以下、図２１の描画処理手順について説明する。【０１２５】
ステップＳ７０１０：現在の処理点Ｇおよび直前の描画中心点Ｆを始点に設定する。ストロークの始点が他のストロークの終点と重なっている場合（すなわち、ストロークの始点の座標が他のストロークの終点の座標と同一である場合）には、ステップＳ３０１０の処理を終える。そうでない場合はステップＳ７０２０に進む。【０１２６】
ステップＳ７０２０：始点を中心に幅、高さが共にストロークの太さＷの正方形を描画し、ステップＳ３０１０の処理を終える。【０１２７】
図１１におけるステップＳ３１１０の描画処理は、図２２に示される手順で処理される。以下、図２２の描画処理手順について説明する。【０１２８】
ステップＳ５０１０：ストロークの終点が他のストロークの始点と重なっている場合（すなわち、ストロークの終点の座標が他のストロークの始点の座標と同一である場合）には、ステップＳ５０２０に進む。そうでない場合はステップＳ５０３０に進む。【０１２９】
ステップＳ５０２０：他のストロークの始点と終点が重なっているストロークが斜め線であるかどうかを図６におけるステップＳ２０２０と同様の方法によって判定する。斜め線であると判定された場合はステップＳ５０４０に進み、そうでない場合はステップＳ５０３０に進む。【０１３０】
ステップＳ５０３０：点Ｇを中心に幅、高さが共にストロークの太さＷの正方形を描画し、ステップＳ３１１０の処理を終える。【０１３１】
ステップＳ５０４０：点Ｇを中心に幅、高さが共にストロークの太さＷの正方形と、高さＷ’の菱形との合成パターンを描画し、ステップＳ３１１０の処理を終える。【０１３２】
ここで、Ｗ’は、図１４におけるステップＳ４０１０と同様の方法により求められる。【０１３３】
上記合成パターンは図２０に示したように、正方形と菱形とを合成したもので、予めメモリ上に生成されたパターンである。すなわち、合成パターンの描画は、菱形と正方形とを重ね合わせることにより個々に描画するのではなく、予め生成している合成パターンを単純にコピーすることによって描画を行うことによって達成される。これにより、重複して画素を塗りつぶす無駄が削減されるため高速化が実現される。なお、予めメモリ上に生成した前記合成パターンを、２つの線分の傾きをパラメータとしてキャッシュメモリのような仕組みで保持しておき再利用することで、合成の処理を削減することができる。【０１３４】
図１４におけるステップＳ４０２０の描画処理は、図２３に示される手順で処理される。以下、図２３の描画処理手順について説明する。【０１３５】
ステップＳ８０１０：現在の処理点Ｇおよび直前の描画中心点Ｆを始点に設定する。ストロークの始点が他のストロークの終点と重なっている場合（すなわち、ストロークの始点の座標が他のストロークの終点の座標と同一である場合）には、ステップＳ４０２０の処理を終える。そうでない場合はステップＳ８０２０に進む。【０１３６】
ステップＳ８０２０：始点を中心に２本の対角線が共にＷ’の菱形を描画し、ステップ４０２０の処理を終える。【０１３７】
図１４におけるステップＳ４１１０の描画処理は、図２４に示される手順で処理される。以下、図２４の描画処理手順について説明する。【０１３８】
ステップＳ６０１０：ストロークの終点が他のストロークの始点と重なっている場合（すなわち、ストロークの終点の座標が他のストロークの始点の座標と同一である場合）には、ステップＳ６０２０に進む。そうでない場合はステップＳ６０３０に進む。【０１３９】
ステップＳ６０２０：他のストロークの始点と終点が重なっているストロークが斜め線であるかどうかを図６におけるステップＳ２０２０と同様の方法によって判定する。斜め線であると判定された場合はステップＳ６０４０に進み、そうでない場合はステップＳ６０３０に進む。【０１４０】
ステップＳ６０３０：点Ｇを中心に幅、高さが共にストロークの太さＷの正方形と、高さＷ’の菱形との合成パターンを描画し、ステップＳ４１１０の処理を終える。合成パターンの描画方法は、図２２のステップＳ５０４０における合成パターンの描画方法と同様である。【０１４１】
ステップＳ６０４０：点Ｇを中心に２本の対角線が共にＷ’の菱形を描画し、ステップＳ４１１０の処理を終える。【０１４２】
以上のように、本発明によれば、文字または図形のストロークを任意の線幅で表示する場合に、ストロークの傾きに適した太さおよび端点を有するように表示されるために、表示サイズを大きくする場合にも、文字または図形の視認性が著しく向上する。さらに、複数のメインドットパターンを互いに重複しないように配置し、メインドットパターンとサブドットパターンとを重複しないように配置することによって、冗長な処理を回避することができ、文字図形表示処理を高速に行うことが可能となる。さらに、画面スクロール中に、サブドットパターンの配置処理を実施せずに、メインドットパターンによって文字または図形の概略形状のみを表示することにより、文字図形表示処理をさらに高速に行うことが可能となる。【０１４３】
以上、本発明の好ましい実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
【産業上の利用可能性】
【０１４４】
本発明によれば、携帯電話機、液晶テレビジョン等のように文字または図形を表示画面に表示する表示デバイスを備えた電子機器等において、文字または図形のストロークを任意の線幅で表示する場合に、ストロークの傾きに適した太さおよび端点を有するように表示することができ、しかも、高速、かつ、高品位に文字または図形を表示させることができる。
【図１】
0004761477.tif 000002
【図２】
0004761477.tif 000003
【図３】
0004761477.tif 000004
【図４】
0004761477.tif 000005
【図５】
0004761477.tif 000006
【図６】
0004761477.tif 000007
【図７】
0004761477.tif 000008
【図８】
0004761477.tif 000009
【図９】
0004761477.tif 000010
【図１０】
0004761477.tif 000011
【図１１】
0004761477.tif 000012
【図１２】
0004761477.tif 000013
【図１４】
0004761477.tif 000014
【図１５】
0004761477.tif 000015
【図１６】
0004761477.tif 000016
【図２１】
0004761477.tif 000017
【図２２】
0004761477.tif 000018
【図２３】
0004761477.tif 000019
【図２４】
0004761477.tif 000020
【図１３】
0004761477.tif 000021
【図１７】
0004761477.tif 000022
【図１８】
0004761477.tif 000023
【図１９】
0004761477.tif 000024
【図２０】
0004761477.tif 000025