(57)【特許請求の範囲】
【請求項１】
サイズＸ正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズＹ（Ｙ＜Ｘ）正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、該ベジェ曲線を表すデータに含まれるある曲線と、該ベジェ曲線の開始点と終了点を結ぶ直線との距離がある値Ｌ以下のものを直線で近似する第１の近似工程、
前記第１の近似工程で曲線と直線の距離がＬより大きいがその距離がＬ’（Ｌ’＞Ｌ）以下の長さのベジェ曲線を、該ベジェ曲線の開始点と該ベジェ曲線を２つに分割する分割点とを結ぶ直線と、該分割点と該ベジェ曲線の終了点とを結ぶ直線の２本の直線で近似する第２の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第３の近似工程、のいずれか１以上を備え、
前記第２の近似工程は、
サイズＸ正方の精度でデザインされた文字をサイズＹ正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズＹ正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点を分割点とした時、ベジェ曲線の開始点と分割点を結ぶ直線と分割点とベジェ曲線の終了点を結ぶ直線の２本の直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを２本の直線データに変換することを特徴とするアウトラインフォント圧縮方法。
【請求項２】
サイズＸ正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズＹ（Ｙ＜Ｘ）正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、該ベジェ曲線を表すデータに含まれるある曲線と、該ベジェ曲線の開始点と終了点を結ぶ直線との距離がある値Ｌ以下のものを直線で近似する第１の近似工程、
前記第１の近似工程で曲線と直線の距離がＬより大きいがその距離がＬ’（Ｌ’＞Ｌ）以下の長さのベジェ曲線を、該ベジェ曲線の開始点と該ベジェ曲線を２つに分割する分割点とを結ぶ直線と、該分割点と該ベジェ曲線の終了点とを結ぶ直線の２本の直線で近似する第２の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第３の近似工程、のいずれか１以上を備え、
前記第３の近似工程は、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点の法線が前記直線の中点を通り、その曲率としてＮ通りのパターンを持つベジェ曲線をあらかじめパターン番号と対応を付けで定義しておくテーブルを有し、
サイズＸ正方の精度でデザインされた文字をサイズＹ正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズＹ正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
前記テーブルに定義されたＮ通りのパターン曲線の１つでその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを前記パターン曲線に対応するパターン番号に変換することを特徴とするアウトラインフォント圧縮方法。
【請求項３】
近似前の輪郭ピクセルの階調値と近似後の輪郭ピクセルの階調値との差は、
人間の目で区別できない最大の階調値誤差がサイズＸ正方の精度での距離に換算した上でベジェ曲線と近似線の距離が前記距離を越えないことを条件として該当する前記第１ないし第３の近似工程のいずれかで近似する請求項１または２のいずれか１項に記載のアウトラインフォント圧縮方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＬＣＤ（Liquid Crystal Device：液晶表示装置）などの表示デバイスを持つ機器において文字表示を行う際、アウトラインフォントを用いることで１つのデータから品質の高い文字を自由なサイズで表示できる。
【０００２】
アウトラインフォントは輪郭線の計算や輪郭線内部の塗りつぶし計算が必要なことから従来計算処理能力の高いコンピュータでの使用が主であったが、近年携帯電話のような組み込み型機器においても処理能力の向上によりアウトラインフォントが使用されるようになってきた。
【０００３】
しかし組み込み型機器に搭載されるメモリの容量は小さいことが多く、少ないメモリ内にできるだけ多くの機能を実装するため、格納するデータのサイズは小さくすることが要求されている。
【０００４】
組み込み型機器が搭載する表示デバイスでは、必要とされる文字サイズに上限があることに配慮し、本発明は従来のアウトラインフォントデータのサイズを低減することを目指すものである。
【０００５】
本発明により生成されたアウトラインフォントデータは、文字表示を行うさまざまな機器に搭載可能で利用範囲が広い。特に、従来、データサイズが大きいことから採用が困難とされてきた曲線を多用したタイプフェースのフォントに関して本発明は圧縮率が高いことから利用価値が高い。
【背景技術】
【０００６】
従来、アウトラインフォントのデータのサイズを小さくする方法として、座標値や隣り合う座標との相対値をハフマン符号化などを用いてエントロピー圧縮する方法（特許文献１参照）や輪郭の書き順に並べられた直線や曲線を表すコードの連続性を元にコード化し圧縮する（特許文献２参照）などの可逆圧縮方法が知られている。
【０００７】
一方、本発明と同様に、近似を用いたサイズ低減方法として、解像度を低下させる方法、例えば10000×10000ピクセルでデザインされたアウトラインデータを、表示デバイス上でデザイン性を損なわない程度（例えば256×256ピクセル）の解像度まで低下させて表現することで各座標を表すために必要なビット数を低減し、その結果データサイズを小さくし、小さくしたサイズで適切な直線・曲線の数式を割り当てる方法（特許文献３参照）が知られている。また、この方法では10000×10000のピクセルで座標(3000,5000)から座標(3025,4990)までの直線は256×256ピクセルの解像度では座標(77,128)から座標(77,128)までの距離０の直線となり、省略が可能なためデータサイズを低減できる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０６−１４９２１５号公報
【特許文献２】特開２００１−０４４８５０号公報
【特許文献３】特表２００４−５１６４９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記可逆圧縮方法では圧縮率に限界があるため元データのサイズが大きいものは圧縮後も大きいサイズになるという問題があった。
【００１０】
また上記解像度を低下させる方法では表示デバイスに256階調の表示能力がある場合、アウトラインデータの解像度低下を256×256ピクセルまでであれば、アンチエイリアシング技術により元デザインとのずれをカバーできる。しかし実際のデバイス上では40×40ピクセル以上の文字を描画する必要が無い（例えば、一部の組み込み型機器における画面表示）場合でも、アウトラインデータの解像度を40×40ピクセルまで低減させるとアンチエイリアシング技術を用いても元デザインとのずれをカバーしきれず、意図しない表示結果となるため上記可逆圧縮方法と同様、圧縮率に限界があるといえる。
【００１１】
上記のような問題を解決するために本発明は、アウトラインフォントデータを構成するベジェ曲線の一部に対し人間がデザインの違いを感じないレベルで近似を行ってアウトラインフォントデータのサイズを小さくするアウトラインフォント圧縮方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するために本発明は、サイズＸ正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズＹ（Ｙ＜Ｘ）正方以下であると分かっている場合、アウトラインデータに含まれるベジェ曲線を表すデータのうち、ある曲線と直線との距離がある値Ｌ以下のものを直線で近似する第１の近似工程、前記第１の近似工程で曲線と直線の距離がＬ以上であるがその距離がＬ’(Ｌ’＞Ｌ)以下の長さのベジェ曲線を２本の直線で近似する第２の近似工程、および、前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第３の近似工程、のいずれか１以上を備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、アウトラインフォントデータを構成するベジェ曲線の一部に対し、従来の圧縮方法では圧縮率に限界がある場合でも、表示デバイスに出力される文字のサイズの上限が決定している場合、人間がデザインの違いを感じないレベルで近似を行ってアウトラインフォントデータのサイズを小さくするので、輪郭に曲線が多いデザインのフォントに対して特に高い圧縮効果を得ることができるという有利性がある。
【図面の簡単な説明】
【００１４】
【図１】本発明のアウトラインフォント圧縮方法の構成を示す図である。
【図２】一般的なアウトラインフォントのデータ記述方法を示す図である。
【図３】ベジェ曲線の直線近似方法を説明するための図である。
【図４】ベジェ曲線の２直線近似方法を説明するための図である。
【図５】ベジェ曲線の曲線パターン近似方法を説明するための図である。
【図６】近似する曲線パターンをベジェ曲線とした場合の例を示す図である。
【図７】近似閾値を説明するための図であって、（ａ）空間周波数とコントラスト感受性の相関を示す図であり、（ｂ）携帯電話のLCDでの空間周波数の求め方を説明する図である。
【図８】パターン番号とパターン化したベジェ曲線との対応関係を表したテーブルの例である。
【図９】近似する曲線パターンをスプライン曲線とした場合の例を示す図である。
【図１０Ａ】本発明の実施形態に係る変換処理動作を説明するフローチャートである。
【図１０Ｂ】本発明の実施形態に係る変換処理動作を説明するフローチャートである。
【図１０Ｃ】本発明の実施形態に係る変換処理動作を説明するフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態を、図面を参照しながら説明する。
［実施の形態］
図１は、本発明の実施形態に係るアウトラインフォント圧縮方法の概略構成を示すブロック図である。図１において本発明の実施形態に係るアウトラインフォント圧縮方法は、例えば256×256ピクセルでデザインされたアウトラインフォントデータを格納するアウトラインデータファイル１１と、アウトラインデータファイル１１から例えば256×256ピクセルのアウトラインフォントデータを読み出すアウトラインデータファイル読込部１２と、読み出した例えば256×256ピクセルアウトラインフォントデータに対し座標解像度を低下処理する座標解像度低下部１３と、座標解像度が低下処理されたアウトラインフォントデータに対し近似によって曲線のデータの一部を直線のデータに変換する近似線変換部１４と、近似線変換が終了したすべてのアウトラインフォントデータに対しエントロピー圧縮を施すエントロピー圧縮部１５と、エントロピー圧縮が済んだ圧縮アウトラインデータをファイル出力する圧縮アウトラインデータファイル出力部１６と、出力された圧縮アウトラインデータを格納する圧縮アウトラインデータファイル１７から構成される。上記構成のうち、近似によって曲線のデータの一部を直線のデータに変換する近似線変換部１４を除くその他の構成は上述した可逆圧縮方法や解像度を低下させる方法において実質的に採用されていると考えられる。
【００１６】
図２は、一般的なアウトラインフォントのデータ記述方法を示す図である。一般にアウトラインフォントのデータは、データの性質などを記述したヘッダ部分と各文字の輪郭を記述する部分から構成される。本実施形態では図２に示すように文字の輪郭を記述するデータとして座標値と各座標を結ぶ線の種類を、閉曲線のある１点から順に並べて記述されたものとする。また、本実施形態では元のアウトラインデータが256×256ピクセルのサイズでデザインされており、表示デバイスでは最大40×40ピクセルのサイズまでしか描画しないものとする。
【００１７】
上記のような前提のもとに図１に示した処理を順に実行し、座標解像度低下部１３によって座標解像度が低下処理されたアウトラインフォントデータに対し近似線変換部１４により近似によって曲線のデータの一部を直線のデータに変換する処理を実行する。近似線変換部１４でのデータの変換は、図２に示すような文字についてまず文字の輪郭データに対してベジェ曲線の部分を見つけ、近似が可能であるかを判断し、近似により変換が行われた場合はベジェ曲線の部分を近似後のデータに置き換えて出力する、という処理を実行するものである。そして本発明では、この変換処理の中において、ベジェ曲線に対する、直線近似、２直線近似、および、曲線パターン近似を含む。
【００１８】
図３は、ベジェ曲線の直線近似方法を説明するための図である。図３においてアウトラインフォントの輪郭の一部を構成するベジェ曲線は点a0,a1,a2,a3の４点で表され、a0が開始点、a3が終了点、a1,a2が制御点となる。これを直線a0-a3で近似したいような場合、このベジェ曲線で直線a0-a3から最も離れた点pまでの距離Ｌが「近似閾値（後述する）」以下であった場合には、このベジェ曲線を１本の直線a0-a3で近似する。これにより、ベジェ曲線を表していた、[ベジェ曲線]+[a0のX座標値]+[a0のY座標値]+[a1のX座標値]+[a1のY座標値]+[a2のX座標値]+[a2のY座標値]+[a3のX座標値]+[a3のY座標値]（図２参照）は、[直線]+[a0のX座標値]+[a0のY座標値]+[a3のX座標値]+[a3のY座標値]に置き換えられて近似線変換部１４から出力される。これにより、アウトラインフォントデータのサイズを小さくすることができる。
【００１９】
図４は、ベジェ曲線の２直線近似方法を説明するための図である。図４では、図３におけるようなベジェ曲線の直線近似ができなかった場合、ベジェ曲線をa0からpまでのベジェ曲線とpからa3までのベジェ曲線の２つに分け、それぞれのベジェ曲線が図３に示した上記の近似条件を満たす場合には、２本の直線a0-pとp-a3でベジェ曲線を表し、これをベジェ曲線の２直線近似として近似線変換部１４から出力することで、図２と同様、アウトラインフォントデータのサイズを小さくすることができる。なお、これ以上ベジェ曲線を分割して直線近似をしても圧縮効果がなくなるのでこれ以上の分割は行わないものとする。
【００２０】
図５は、ベジェ曲線の曲線パターン近似方法を説明するための図である。図５において、アウトラインフォントの輪郭の一部を構成するベジェ曲線を予め定義されたパターン化された曲線（後述する）に近似したい場合、ベジェ曲線の開始点(x1,y1)終了点(x4,y4)とする直線の垂線方向における距離が最も離れる点pとの距離Lを「近似閾値（後述する）」と比較し、図５に示した距離Lが「近似閾値（後述する）」以下であった場合には、このベジェ曲線を予め定義されたパターン化された曲線で近似する。パターン化された曲線による近似では、開始点、終了点の２点の座標とパターン番号として５ビットのデータで表す。これによりベジェ曲線の曲線パターン近似方法でもアウトラインフォントデータのサイズを小さくすることができる。
【００２１】
図６は、近似する曲線パターンをベジェ曲線とした場合の例を示す図である。図６に示すようにパターン化する曲線をベジェ曲線とする場合は、２つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までの32通りとしたパターンを定義する。定義した32通りのパターンはパターン番号と対応付けてテーブル（図８参照）に格納しておき利用する。なお、開始点(x1,y1)終了点(x4,y4)制御点(x2,y2),(x3,y3)のベジェ曲線をパターン化したベジェ曲線と近似する場合には、パターン化した曲線の開始点、終了点がベジェ曲線と同じになるように拡大、縮小、回転を施し、テーブルに格納されている32通りのパターンとそれぞれ比較する。
【００２２】
図７（ａ）、（ｂ）は、上記した近似閾値を説明するための図である。256×256ピクセルでデザインされたアウトラインフォントデータを40×40ピクセルのサイズで表示する場合、輪郭線がその中間を通るピクセルは階調値で表すことで輪郭のギザギザをなくす手法がアンチエイリアシングであり、このアンチエイリアシング手法はよく知られている。例えば40×40ピクセルにおける１ピクセルの中心を通る輪郭直線の上半分が塗りつぶし領域である場合、このピクセルの階調値は256階調では128となる。しかし、人間が携帯電話のLCD上に描かれた文字の輪郭にあたるピクセルを見るとき、階調値がある程度変化しても違和感がない。この変化量の指針として、従来から「コントラスト感受性値」が用いられており、人間が区別できない階調値の差は「256階調÷コントラスト感受性値」と表せる。図７（ｂ）に示すように、携帯電話のLCDが約170dpiで、人間の目から約30cm離れた位置から見られることから、視野角７度で120サイクル、つまり空間周波数が17(サイクル/度)になる。したがってコントラスト感受性は図７（ａ）に示すグラフより20程度であることが導き出され、人間の区別できない階調値誤差は12.8となる。256×256で表現される座標値の位置ずれが１の場合、40×40での階調値ずれは40である。従って256×256で表現される座標値の許容可能な位置ずれ＝「近似閾値」は、12.8÷40＝0.32である。なお、「コントラスト感受性値」や「空間周波数」について知りたければ文献「K.T.スペアー、S.W.レムクール著、“視覚の情報処理”、1986年、サイエンス社発行」を参照されたい。
【００２３】
図８は、パターン番号とパターン化したベジェ曲線との対応関係を表したテーブルの例である。パターン化したベジェ曲線は、上述したように２つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までの32通りとしたパターンを定義されているので、それに対応してパターン番号が付されている。なおベジェ曲線は後述する式３のように表される。
【００２４】
図９は、近似する曲線パターンをスプライン曲線とした場合の例を示す図である。図９に示すようにスプライン曲線近似は、１つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/2の位置とし、Y座標が-16から15までの32通りとしたパターンを定義する。定義した32通りのパターンはパターン番号と対応付けてテーブル（図示せず）に格納しておき利用する。
【００２５】
図１０Ａないし図１０Ｃは、本発明の実施形態に係る変換処理動作を説明するフローチャートである。図１０Ａないし図１０Ｃのフローチャートに基づいて変換処理動作を説明すると、ステップS1においてアウトラインデータの先頭から座標値(X, Y)を読み出す。ステップS2では、ステップS1で読み込んだ座標値を開始点(x1, y1)とする。ついでステップS3では、アウトラインデータから線の種類を読み出す。ステップS4では、ステップS3で読み出した線の種類がベジェ曲線であればステップS5へ進み、そうでなければアウトラインデータから終了点の座標を読み出した後ステップS36へ進む。
【００２６】
ステップS5では、アウトラインデータから座標値(X, Y)を読み出す。ステップS6では、ステップS5で読み出した座標値をベジェ曲線の制御点１(x2, y2)とする。ステップS7では、アウトラインデータから座標値(X, Y)を読み出す。ステップS8では、ステップS7で読み出した座標値をベジェ曲線の制御点２(x3, y3)とする。ステップS9では、アウトラインデータから座標値(X, Y)を読み出す。ステップS10では、ステップS9で読み出した座標値をベジェ曲線の終了点(x4,y4)とする。
【００２７】
ステップS11では、開始点、制御点１、制御点２、終了点の４点からベジェ曲線の (1)を導出する。
【００２８】
【数１】
0005372226.tif 000002
【００２９】
ステップS12では、ベジェ曲線の開始点と終了点を結ぶ直線Sの式(2)を導出する。
【００３０】
【数２】
0005372226.tif 000003
【００３１】
ステップS13では、直線Sの垂線方向において直線Sとベジェ曲線が最も離れた距離にあるベジェ曲線上の点Pを式(1)、式(2)から計算する。ステップS14では、式(2)とステップS13で求めた点Pの座標値から、直線Sと点Pの距離Lを計算する。ステップS15では、距離Lを表示デバイス上で描画される最大サイズでの距離lに換算する。ステップS16では、距離l = 階調誤差値lが人間の目で区別できる階調誤差の限界値M以下のときステップS17へ進み、そうでなければステップS18へ進む。ステップS17では、ベジェ曲線は直線Sで近似されるため、線種「ベジェ曲線」座標値「制御点１」「制御点２」という元のアウトラインデータを、線種「直線」に置き換えて出力しステップS33へ進む。
【００３２】
ステップS17では、ベジェ曲線は直線Sで近似されるため、線種「ベジェ曲線」座標値「制御点１」「制御点２」という元のアウトラインデータを、線種「直線」に置き換えて出力しステップS33へ進む。ステップS18では、パターン曲線の開始点を開始点(x1, y1)に、終了点を(x4, y4)に置いた時のベジェ曲線で近似する場合の式(３)、あるいはスプライン曲線で近似する場合の式(４)を導出する。
【００３３】
【数３】
0005372226.tif 000004
【００３４】
上記式(3)において、２つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までについてｑをパターン番号と見てその番号に対応するパターン化したベジェ曲線を求めると図８に示したテーブルが得られる。
【００３５】
【数４】
0005372226.tif 000005
【００３６】
ステップS19では、パターン番号qに０を代入する。ステップS20では、直線Sの垂線方向において、ベジェ曲線と近似曲線が最も離れている場合の距離Ｌを、パターン番号qに対応するベジェ曲線の式(3)と式(1)から計算する。ステップS21では、パターン番号qの値を１増加させる。ステップS22では、パターン番号qの値が３２のときステップS23へ進み、そうでなければステップS20へ進む。ステップS23では、ステップS19〜S22のループの中でLが最も小さい値であった場合のパターン番号をQとする。ステップS24では、パターンQでの距離Lを表示デバイス上で描画される最大サイズでの距離lに換算する。ステップS25では、距離l = 階調誤差値lが人間の目で区別できる階調誤差の限界値M以下のときステップS26へ進み、そうでなければステップS27へ進む。
【００３７】
ステップS26では、ベジェ曲線はパターン化された近似曲線で近似されるため、線種「ベジェ曲線」座標値「制御点１」「制御点２」という元のアウトラインデータを、線種「パターン曲線」と「パターン番号Q」に置き換えて出力しステップS37へ進む。ステップS27では、開始点(x1, y1)と点P(xp, yp)を結ぶ直線S1の式(5)を導出する。
【００３８】
【数５】
0005372226.tif 000006
【００３９】
ステップS28では、直線S1の垂線方向において、開始点(x1, y1)から点P(xp, yp)までを結ぶベジェ曲線と直線S1とが最も離れる場合の距離L1を式(1)、式(5)から計算する。ステップS29では、ステップS28で求めた距離L1を表示デバイス上で描画される最大サイズでの距離l1に換算する。ステップS30では、距離l1 = 階調誤差値l1が人間の目で区別できる階調誤差の限界値M以下のときステップS31へ進み、そうでなければステップS36へ進む。
【００４０】
ステップS31では、点P(xp, yp)と終了点(x4, y4)を結ぶ直線S2の式(6)を導出する。
【００４１】
【数６】
0005372226.tif 000007
【００４２】
ステップS32では、直線S2の垂線方向において、点P(xp, yp) から終了点(x4, y4)までを結ぶベジェ曲線と直線S2とが最も離れる場合の距離L2を式(1)、式(6)から計算する。ステップS33では、ステップS32で求めた距離L2を表示デバイス上で描画される最大サイズでの距離l2に換算する。ステップS34では、距離l2= 階調誤差値l2が人間の目で区別できる階調誤差の限界値M以下のときステップS35へ進み、そうでなければステップS36へ進む。
【００４３】
ステップS35では、ベジェ曲線は２本の直線で近似されるため、線種「ベジェ曲線」座標値「制御点１」「制御点２」という元のアウトラインデータを、線種「直線」、座標値「点P(xp, yp)」、線種「直線」に置き換えて出力しステップS37へ進む。ステップS36では、ベジェ曲線の変換処理は起こらないため元のデータのまま出力する。ステップS37では、終了点の座標値(x4, y4)を次の線の開始点(x1, y1)として代入する。ステップS38では、輪郭線を書き終え、閉曲線が完成していれば終了し、そうでなければステップS3へ戻る。
【００４４】
このフローをすべての文字において行うことでアウトラインフォントファイル全体を圧縮することが可能となる。上記したフローでは本発明に係る第１ないし第３の近似工程すべてを用いて近似処理を実行する例について説明したが、このフローを基に本発明に係る第１ないし第３の近似工程のいずれか１以上の近似処理を実行するように変更することもできる。
【００４５】
この処理を行った後、すべての座標値と座標を結ぶ線の種類についてそれぞれの出現頻度の統計を取り、ハフマン符号化など既存のエントロピー圧縮処理を行う。
【００４６】
以上説明したことを概観すれば本発明は以下のような構成を備えるものである。
（付記１）サイズＸ正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズＹ（Ｙ＜Ｘ）正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、
ある曲線と直線との距離がある値Ｌ以下のものを直線で近似する第１の近似工程、
前記第１の近似工程で曲線と直線の距離がＬ以上であるがその距離がＬ’(Ｌ’＞Ｌ)以下の長さのベジェ曲線を２本の直線で近似する第２の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第３の近似工程、のいずれか１以上を備えることを特徴とするアウトラインフォント圧縮方法。
【００４７】
（付記２）前記第１の近似工程は、
サイズＸ正方の精度でデザインされた文字をサイズＹ正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズＹ正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データをベジェ曲線の開始点と終了点を結ぶ直線データに変換する付記１記載のアウトラインフォント圧縮方法。
【００４８】
（付記３）前記第２の近似工程は、
サイズＸ正方の精度でデザインされた文字をサイズＹ正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズＹ正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点をＡとした時、ベジェ曲線の開始点とＡを結ぶ直線とＡとベジェ曲線の終了点を結ぶ直線の２本の直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを２本の直線データに変換する付記１記載のアウトラインフォント圧縮方法。
【００４９】
（付記４）前記第３の近似工程は、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点の法線が前記直線の中点を通り、その曲率としてＮ通りのパターンを持つベジェ曲線をあらかじめパターン番号と対応を付けで定義しておくテーブルを有し、
サイズＸ正方の精度でデザインされた文字をサイズＹ正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズＹ正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
前記テーブルに定義されたＮ通りのパターン曲線の１つでその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを前記パターン曲線に対応するパターン番号に変換する付記１記載のアウトラインフォント圧縮方法。
【００５０】
（付記５）近似前の輪郭ピクセルの階調値と近似後の輪郭ピクセルの階調値との差は、
人間の目で区別できない最大の階調値誤差がサイズＸ正方の精度での距離に換算した上でベジェ曲線と近似線の距離が前記距離を越えないことを条件として該当する前記第１ないし第３の近似工程のいずれかで近似する付記２ないし４のいずれかに記載のアウトラインフォント圧縮方法。
【００５１】
（付記６）ベジェ曲線の一部を前記第１ないし第３の近似工程のいずれかを用いて直線または曲線に変換した後、さらに変換後の開始点・終了点及びベジェ曲線の制御点を表す座標値を纏めてエントロピー符号化により圧縮する付記１記載のアウトラインフォント圧縮方法。
【００５２】
（付記７）前記第３の近似工程において、
あらかじめ定義しておく曲線が、制御点が開始点と終了点を結ぶ直線の中点を通る垂線上にあり、その曲率としてＮ通りのパターンを持つスプライン曲線である付記４記載のアウトラインフォント圧縮方法。
【産業上の利用可能性】
【００５３】
本発明は、上記３つの近似工程を有効に用いることでベジェ曲線を少ないデータ量で表すことが可能となるため、特に曲線部分の多いデザインのフォントに対して大幅なデータの低減を可能となるので組み込み型機器が搭載する表示デバイスに有効である。
【符号の説明】
【００５４】
１１  アウトラインデータファイル
１２  アウトラインデータファイル読込部
１３  座標解像度低下部
１４  近似線変換部
１５  エントロピー圧縮部
１６  圧縮アウトラインデータファイル出力部
１７  圧縮アウトラインデータファイル
【図１】
0005372226.tif 000008
【図２】
0005372226.tif 000009
【図３】
0005372226.tif 000010
【図４】
0005372226.tif 000011
【図５】
0005372226.tif 000012
【図６】
0005372226.tif 000013
【図７】
0005372226.tif 000014
【図８】
0005372226.tif 000015
【図９】
0005372226.tif 000016
【図１０Ａ】
0005372226.tif 000017
【図１０Ｂ】
0005372226.tif 000018
【図１０Ｃ】
0005372226.tif 000019