(57)【要約】【課題】フォントの変形を行なう際に、単一のアルゴリズムで様々な変形の効果を取り入れることが可能な方法の提供。【解決手段】文字フォントと、文字フォントが描かれる平面上に値を持つ関数を対応させ、任意に決定できる平面上のベクトル場を用いて、その関数を移流方程式によって値を移動させ、移動後の関数に対応するフォントを描画することで、フォントの変形効果を得る。【選択図】　　　　図１
2004061674.tif 000002
【特許請求の範囲】
【請求項１】
文字フォントと、文字フォントが描かれる平面上に値をもつ関数φを対応させ、
関数の定義された平面上に値をもつベクトル場
【数１】
2004061674.tif 000015
を用いて、微分方程式
【数２】
2004061674.tif 000016
の任意の時刻ｔにおける解φを計算し、
この解φに対応する文字を描画することでフォント変形の効果を得る、フォント変形方法。
【請求項２】
請求項１に記載の方法に従ってフォントを変形させる手順を記録した記録媒体。
【請求項３】
文字フォントを画面上に表示するに足る文字情報を記憶する記憶装置と、請求項１の方法に従って変形作業を行演算装置と、変形作業を行うに足る作業用記憶装置と、操作者の入力を受け付ける入力装置と、変形の結果を描画する出力装置を持つことを特徴とするフォント変形装置。
【請求項４】
請求項１に記載の方法について、関数φの初期値はフォント内部で正の一定値、外部では内部の値よりも小さな値の一定値をとるものとし、Ａを任意の実数、Ａ（ｔ）をフォントの面積としたとき、ベクトル場
【数３】
2004061674.tif 000017
の選び方として、
【数４】
2004061674.tif 000018
と選んだフォント変形方法。
【請求項５】
請求項１に記載の方法について、関数φの初期値はフォント内部で正の一定値、外部では内部の値よりも小さな値の一定値をとるものとし、Ａを任意の実数、Ａ（ｔ）をフォントの面積としたとき、ベクトル場
【数５】
2004061674.tif 000019
の選び方として、
【数６】
2004061674.tif 000020
と選んだフォント変形方法。
【請求項６】
請求項１に記載の方法について、関数φの初期値はフォント内部で正の一定値、外部では内部の値よりも小さな値の一定値をとるものとし、Ａを任意の実数、Ａ（ｔ）をフォントの面積としたとき、ベクトル場
【数７】
2004061674.tif 000021
の選び方として、
【数８】
2004061674.tif 000022
と選んだフォント変形方法。
【請求項７】
請求項４に記載のベクトル場を用いて、請求項１に記載の方法を用いてフォントを変形する手順を記録した記録媒体。
【請求項８】
請求項５に記載のベクトル場を用いて、請求項１に記載の方法を用いて、フォントを変形する手順を記載した記録媒体。
【請求項９】
請求項６に記載のベクトル場を用いて、請求項１に記載の方法を用いて、フォントを変形する手順を記載した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フォントデータを表示する機器全般に属し、その最終表示機器（ディスプレイ、プリンター等）に依らず適用できる。
【０００２】
【発明が解決しようとする課題】
フォントの描画において、アウトラインフォントでは、拡大、縮小、回転といった効果を加えることができるが、フォントの形そのものを変形させ、違った印象を与えるフォントに変形させることはできない。字体そのものの変形効果を得るものとして、元の字体が定義された矩形領域と一対一に対応がつく形状の境界領域に射影を行うというもの（特開平５−１０８０５１号公報）や、文字パターンを丸文字に変形するもの（特開平５−１３４６５１号公報）があるが、これら従来のフォント変形方法では、フォント変形の方法がほぼ固定されており、その変形の効果を様々に変えるということはできず、単一の変形効果しか得られないものであった。本発明では、単一の方法の上で、様々な変形の効果が得られるフォント変形方法とそれを実行できる装置を提供する。
【０００３】
【課題を解決するための手段】
フォントを定義する平面上に実数値関数φ＝φ（ｘ，ｙ）を考え、フォントのアウトラインを表す集合をΓとしたとき、アウトラインを関数φの等高線として定義するか、または、フォントの内部をφの値がある値以上である領域であるとか、ある値以下である領域としてフォントを定義する。
【０００４】
フォントの変形を行うということはアウトラインの変形を行うということであり、すなわち、上の関数の値を動かしていくということである。
【０００５】
関数値ｆ（ｘ，ｙ）が与えられた速度ベクトル場
【０００６】
【数９】
2004061674.tif 000003
【０００７】
に沿って移動していく様子をあらわす微分方程式は、移流方程式としてよく知られているものであり、以下のような形をしている。
【０００８】
【数１０】
2004061674.tif 000004
【０００９】
本発明では、この移流方程式を用いてフォントと対応した関数を移流させ、結果としてフォントのアウトラインを変形させようというものである。
【００１０】
つまり、アウトラインがどのように変形するかは移流方程式に与える速度ベクトル場の選択の仕方によって決定するため、この速度ベクトル場に応じて、様々な変形の仕方を得ることができる。
【００１１】
【発明の実施の形態】
（実施例１）
変形を行いたいフォントを囲む矩形領域の画像データを持つ（図１）のＶＲＡＭの情報を（図１）の作業用のメモリーにコピーする。このとき、取り出した矩形領域のｘ方向の画素数をｎｘ、ｙ方向の画素数をｎｙとして、メモリー上にの大きさの配列をとり、その各成分には、対応する画素のビット（０または１）を代入する。
【００１２】
変形のための速度場として、
【００１３】
【数１１】
2004061674.tif 000005
【００１４】
とすると、このベクトルは、アウトライン上でのみ存在する、アウトラインの単位法線ベクトルとなる。
【００１５】
フォントの面積を表すものとして、
【００１６】
【数１２】
2004061674.tif 000006
【００１７】
を定義する。ここで、Ωはフォントを囲む矩形領域を示し、
【００１８】
【数１３】
2004061674.tif 000007
【００１９】
はΩ内にある値の総和であるとする。
【００２０】
仮想的な時刻ｔに対して、移流方程式
【００２１】
【数１４】
2004061674.tif 000008
【００２２】
の定常解は、面積がＡとなるようにフォントを均等に太らせた結果をもたらす配列ｆの値を与える。
【００２３】
一般に上のプロセスで得られるｆの値は０、１の値ではなく、０〜１付近の実数値となるので、もとの２値表現にもどすために
【００２４】
【数１５】
2004061674.tif 000009
【００２５】
と変換する。
【００２６】
作業用メモリー上にある配列ｆの値をＶＲＡＭの上に書き込み、表示を完了させる。
【００２７】
（実施例２）
変形を行いたいフォントを囲む矩形領域の画像データを持つＶＲＡＭの情報を作業用のメモリーにコピーする。このとき、取り出した矩形領域のｘ方向の画素数をｎｘ、ｙ方向の画素数をｎｙとして、メモリー上にｎｘ×ｎｙの大きさの配列をとり、その各成分には、対応する画素のビット（０または１）を代入する。
【００２８】
変形のための速度場として、
【００２９】
【数１６】
2004061674.tif 000010
【００３０】
とすると、このベクトルは、アウトライン上でのみ存在し、大きさがアウトラインの曲率で、アウトラインの外向き法線方向ベクトルとなる（図２）。
【００３１】
フォントの面積を表すものとして、
【００３２】
【数１７】
2004061674.tif 000011
【００３３】
を定義する。ここで、Ωはフォントを囲む矩形領域を示し、
【００３４】
【数１８】
2004061674.tif 000012
【００３５】
はΩ内にある値の総和であるとする。
【００３６】
仮想的な時刻ｔに対して、移流方程式
【００３７】
【数１９】
2004061674.tif 000013
【００３８】
の定常解は、面積がＡであって、フォントの丸みをました結果をもたらす配列ｆの値を与える。
【００３９】
また、の符号を反転したものを用いることにより、フォントの角を強調した結果をもたらすことができる。
【００４０】
一般に上のプロセスで得られるｆの値は０、１の値ではなく、０〜１付近の実数値となるので、もとの２値表現にもどすために
【００４１】
【数２０】
2004061674.tif 000014
【００４２】
と変換する。
【００４３】
配列ｆの値をＶＲＡＭの上に書き込み、表示を完了させる。
【００４４】
【発明の効果】
本発明は、フォントを幾何学的対象として扱うのでなく、フォントと平面上で定義される関数との対応をつけたあとに、その関数の平面上のベクトル場による移動させるという手法を用いるために、以下のような効果が現れる。
【００４５】
与えるベクトル場によって様々な変形の効果が得られる。
【００４６】
処理方法がフォントの描画部分と切り離されているため、どのような方法であれ、一度画面上に書き込まれてしまえば（ＶＲＡＭに書き込まれてしまえば）、本発明の変形処理を加えることができる。
【００４７】
フォントに対応付けられる関数を定義する平面と、実際に描画される平面は切り離されているため、変形後の関数を写像してフォントに戻す平面もまた自由に選択できる。つまり、変形結果を表示機器（ディスプレイ、プリンター等）の解像度に応じて出力できる。
【図面の簡単な説明】
【図１】実施例１、実施例２を構成するシステムの概要である。
【図２】実施例２における初期のベクトル場の様子である。
【図１】
2004061674.tif 000023
【図２】
2004061674.tif 000024