(57)【要約】  本発明は、文章を作成した環境と同じフォントを持たない環境において、データ量を増やすことなく、文字のレイアウトや見た目を同じに表示することを目的とする。本発明では、文章作成側でフォントメトリック情報生成手段（２０）を用いてフォントメトリック情報を生成する。次に、これを情報通信手段（３０）を介して文章表示側まで送信し、文章表示側で、このフォントメトリック情報に合わせて、文字変形手段（４０）を用いて文章表示側に既存のフォントを変形して、文章表示手段（４２）によりその表示画面上の指定の位置に文字を描画する。【特許請求の範囲】
【請求項１】
フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、
テキストを形成する文字コードおよび文字書体に基づき生成するフォントメトリック情報生成手段を有する情報処理装置。
【請求項２】
前記フォントメトリック情報生成手段は、
テキスト情報を入手する手段と、
前記テキスト情報の文字コードおよび文字書体を特定する手段と、
その特定した該文字コードおよび文字書体に対して前記フォントメトリック情報を生成する手段と
を有する、請求項１に記載の情報処理装置。
【請求項３】
前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報とを少なくとも有する、請求項１に記載の情報処理装置。
【請求項４】
テキスト情報作成時のフォントデータの特徴を示すフォントメトリック情報に合わせて、
使用可能なフォントデータを変形する文字変形手段を有する情報処理装置。
【請求項５】
前記フォントメトリック情報を入手する入手手段をさらに有する請求項４に記載の情報処理装置。
【請求項６】
前記入手手段で入手した前記フォントメトリック情報を記憶する記憶手段をさらに有し、
前記文字変形手段は、該記憶手段で記憶した該フォントメトリック情報を次回以降の前記フォントデータの変形に再利用する、請求項５に記載の情報処理装置。
【請求項７】
前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報と、複数の文字書体のフォントデータ間で共通な情報として文字の基準線情報とを少なくとも有し、
前記文字変形手段は、該文字枠の大きさの情報と該最小外接枠の位置および大きさの各情報と該基準線情報との相互関係に応じて、該フォントデータに含まれる座標値を変更する、請求項４のいずれかに記載の情報処理装置。
【請求項８】
前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報とを少なくとも有する、請求項４に記載の情報処理装置。
【請求項９】
前記文字枠の大きさの情報は、前記文字枠の高さと該文字枠の幅の各情報を含んでいる、請求項８に記載の情報処理装置。
【請求項１０】
前記最小外接枠の位置および大きさの各情報は、前記フォントデータの座標値の最大値、最小値から求められる、請求項８に記載の情報処理装置。
【請求項１１】
前記フォントメトリック情報は、前記文字書体間で共通な共通情報として文字の基準線情報をさらに有している、請求項８に記載の情報処理装置。
【請求項１２】
前記文字の基準線情報は、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインのうち該文字が挟まれる少なくとも二つの情報を有している請求項１１に記載の情報処理装置。
【請求項１３】
前記フォントメトリック情報のうち、前記共通情報を共有化してデータ容量を削減している、請求項１１に記載の情報処理装置。
【請求項１４】
前記共通情報の抽出処理はそれぞれの値が判る特定文字のみの生成により行っている、請求項１１に記載の情報処理装置。
【請求項１５】
前記文字変形手段は、前記フォントメトリック情報のうち、各文字に関連するパラメータのみで前記送信先のフォントデータを変形する、請求項４に記載の情報処理装置。
【請求項１６】
前記フォントメトリック情報生成手段は、
読み込んだ文字を生成する文字生成手段と、
生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得手段と、
該生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する最小外接枠データ生成手段と
を有する、請求項１に記載の情報処理装置。
【請求項１７】
前記フォントメトリック情報生成手段は、
読み込んだ文字が英文字かどうかを判定する文字種判定手段と、
該読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定する手段と、
該基準線情報が生成されていない場合に、該基準線情報を生成する基準線情報生成手段と
を更に有し、
前記文字生成手段は、該基準線情報を生成している場合に、該基準線情報を用いて該文字を生成する、請求項１６に記載の情報処理装置。
【請求項１８】
前記基準線情報生成手段は、生成した特定文字から前記基準線情報を抽出する、請求項１７に記載の情報処理装置。
【請求項１９】
前記文字変形手段による変形後のフォントメトリック情報を用いて文字を生成し、この生成した文字を表示画面上の所定の位置に描画する文章表示手段をさらに有する、請求項４に記載の情報処理装置。
【請求項２０】
フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、
テキストを形成する文字コードおよび文字書体から生成するフォントメトリック情報生成ステップをコンピュータに実行させるための情報処理プログラム。
【請求項２１】
送信元でフォントデータが生成されたときの文字の特徴を示すフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形する文字変形ステップをコンピュータに実行させるための情報処理プログラム。
【請求項２２】
前記フォントメトリック情報生成ステップは、
読み込んだ文字を生成する文字生成ステップと、
生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得ステップと、
該生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する
最小外接枠データ生成ステップとをコンピュータに実行させるための請求項２０に記載の情報処理プログラム。
【請求項２３】
前記フォントメトリック情報生成ステップは、
読み込んだ文字が英文字かどうかを判定する文字種判定ステップと、
該読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定するステップと、
該基準線情報が生成されていない場合に、該基準線情報を生成する基準線情報生成ステップとをコンピュータに実行させるための情報処理プログラムであって、
前記文字生成ステップは、該基準線情報を生成している場合に、該基準線情報を用いて該文字を生成する請求項２２に記載の情報処理プログラム。
【請求項２４】
前記基準線情報生成ステップは、生成した特定文字から前記基準線情報を抽出する請求項２２に記載の情報処理プログラム。
【請求項２５】
前記文字変形ステップによる変形後のフォントメトリック情報を用いて文字を生成し、この生成した文字を表示画面上の所定の位置に描画する文章表示ステップをコンピュータに実行させるための請求項２１に記載の情報処理プログラム。
【請求項２６】
請求項２０に記載の情報処理プログラムの各ステップを記録したコンピュータ読み取り可能な可読記録媒体。
【請求項２７】
請求項２１に記載の情報処理プログラムの各ステップを記録したコンピュータ読み取り可能な可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文章（テキスト）を作成した環境と、同じフォントを持たない環境において、文章のレイアウトおよび見た目のイメージを再現可能とする携帯電話装置やパーソナルコンピュータ、さらにはサーバ装置などの情報処理装置、これを用いた情報処理システム、これに用いられる情報処理プログラムおよび、これが記録されたコンピュータ読み取り可能な可読記録媒体に関する。
【背景技術】
【０００２】
従来、文章データは、後述する従来技術１のように作成されている。しかし、この技術では、文章を表示する際に、文章を作成した環境と同じフォントを持った場合においては表示側の機器環境が同じであれば文章作成元と同じように表示されるが、同じフォントを持たない場合には表示側の機器環境が同じであってもフォントのデザインが異なり同じように表示されないという問題があった。この従来技術１の問題点を解決するために、後述する従来技術２や従来技術３のようなものが提案されている。また、従来技術４のように、手書き風のフォントを作成する技術も提案されている。これらの技術について、以下に順次詳細に説明する。
（従来技術１）
従来技術１では、文章データが、複数の文字コードからなる文字列、書体、文字の大きさ、文字列の開始位置などの情報で表されている。【０００３】
文章を表示する際に、文章を作成した環境と同じフォントを持った場合においては表示側の機器環境が同じであれば文章作成元と同じように表示されるが、同じフォントを持たない場合には表示側の機器環境が同じであってもフォントのデザインが異なり同じように表示されなかった。つまり、フォントのデザインの違いによりレイアウトが崩れる場合がある。【０００４】
例えば図２６の例では、文章作成元においてはフォント１が使用されており、文章を表示する際には文章表示先側でフォント１がなく、フォント２を使用して表示した場合に、”Book”の文字幅が変わっており結果的にレイアウトが崩れてしまう。これは以下の理由による。即ち、従来、文字の大きさをポイント(pt)やドット当で指定するが、それが示すものは文字枠の高さである。図２６の場合ではフォント１、フォント２とも高さはhで同じである。しかしながら、文字毎に文字幅が違う。フォント１では’B’の文字幅はw11、’o’の文字幅はw12、’k’の文字幅はw13であり、フォント２では’B’の文字幅はw21、’o’の文字幅はw22、’k’の文字幅はw23であり、フォント１とフォント２で各文字の文字幅が違う。このため、トータルの文字幅も違い、レイアウトが崩れている。【０００５】
これによって、図２７のような場合においては、文字幅の違いのため、フォント１では文章全体が表示側の画面枠内に収まっているものが、フォント２では表示側の画面枠内に収まらず、はみ出した一部の文字が表示されていない。【０００６】
（従来技術２）
図２７のように、文章が画面枠内に表示しきれない問題を解決するための技術として、特許文献１の技術が知られている。この技術では、主に、次のような点からなっている。（１）複数のフォントを用意しておき、文章作成元と同じフォントがない場合には、出来るだけ近いフォントを選ぶ。（２）表示する際に、代替したフォントで生成した文字が文章作成元と同じ幅になるように、文字の前後の余白を調整する。（３）余白で調整できない場合は、文章作成元と同じ幅になるように水平方向に拡大/縮小する。これにより、文字の大きさが文字枠の高さだけでなく、文字枠の幅も同じになりレイアウトが保たれる。【０００７】
（１）方法として、従来技術２の実施例においては、ElseWarePANOSE(商標)字体整合システムに従って決定されることが示してある。これは、フォントの特徴をファミリーの種類、セリフのスタイル、重み、割合、コントラスト、ストロークの変化、アームのスタイル、欧字の形状、中線、およびＸ高さなどに関する情報を元に、距離計算を行い最も近いフォントを選ぶというものである。
（従来技術３）
従来技術３として、Adobe(R) PDF（Portable Document Format）が知られている。これは、アメリカのAdobe社が開発した文書表示用のファイル形式である。この形式のファイルには、「.PDF」という拡張子が付く。テキスト情報の他に、フォントやレイアウト、画像の情報などがファイル内に含まれているので、どのようなプラットフォームでも作成されたときのレイアウトを再現できる。1999年に発表されたバージョン1.3からはフォントを埋め込むことが可能となっている。これにより文章作成元と同じフォントを持たない文章表示先においても同じレイアウトと同じ見た目を実現している。
（従来技術４）
従来技術４として、特許文献２の技術が知られている。この技術は、手書きで書いた文字の癖を持ったフォントを生成するというものであり、標準書体を用意しておき、スキャナー等から手書きのイメージを取得して、標準書体からの差を特徴データとして持ち、標準書体を変形することで手書き風フォントを作る。特徴データとしてはストロークの傾きや、太さ、ハネ量や丸み量等を持つことが記載されている。
【特許文献１】特開平７−５６９０９号公報
【特許文献２】特開平５−２９８３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来の構成では、以下に示す問題点がある。【０００９】
従来技術１では、文章を表示する際に、文章を作成した環境と同じフォントを持った場合においては表示側の機器環境が同じであれば文章作成元と同じように表示されるが、同じフォントを持たない場合には表示側の機器環境が同じであってもフォントのデザインが異なり同じように表示されない。【００１０】
従来技術２では、表示側で文章作成元の文字枠の大きさと同じにすることにより文章のレイアウトは保たれるものの、文字の見た目の大きさが大きく違う場合がある。【００１１】
例えば図２８では、図２６のフォント２の各文字の文字幅をフォント１に合うように水平方向に拡大/縮小している。具体的には’B’の文字幅をw21からw11になるように水平方向に拡大/縮小、’o’の文字幅をw22からw12になるように水平方向に拡大/縮小、’k’の文字は画をw23からw13になるように水平方向に拡大/縮小している。これにより、文字枠の大きさは同じになりレイアウトの崩れは防げるが、文字の大きさや、大文字と小文字の大きさの比率などが大きく違うために、図２６のフォント１と比較してフォント２の変形後の見た目は大きく違う。【００１２】
具体的には、ベースラインの位置がフォント１ではh13で高めであるのに対して、フォント２ではh23になっており、これはh13よりもかなり低めである。また、大文字と小文字の大きさの比率、つまりh11-h13の距離:h12-h13の距離とh21-h23の距離:h22-h23の距離が大きく違い、フォント２の方がフォント１に比べて小文字の比率が大きくなってしまっている。さらに、各文字の大きさも違う。例えば、’B’ではフォント１がL11,R11,h11,h13で囲まれた部分が文字の最小外接枠であり、フォント２がL31、R31,h21,h23で囲まれた部分が文字の最小外接枠であるが、それぞれの大きさが違う。また，最小外接枠の位置自体も違う。【００１３】
また、図２９のように元の文字枠の大きさが同じ場合には、文字の拡大/縮小はしない
が、文字の大きさ、つまり、文字の最小外接枠はフォント１では高さh1,幅w1であり、フォント２では高さh2、幅w2となっており大きく違う。これを出来る限り防ぐためには、フォントを多数用意しておき、文章作成元に近いフォントと出来るだけ近いものを選ぶことになるが、必ずしも見た目が近いフォントがあるとは限らないし、また、多数の書体を用意するにはデータの保存領域が大きくなってしまう。【００１４】
従来技術３では、Adobe(R) PDFでは、レイアウトおよび見た目を同じにすることができるが、フォントデータを埋め込むために本来の文章に対して付加するデータが非常に多くなってしまう。例えば、マイクロソフト・ウィンドウズ（登録商標）（MicrosoftWindows(登録商標)）システムで一般に使われている「MS明朝」では400文字程度埋め込んだ場合に使用した文字にもよるが、おおよそ100KB程度の付加データになってしまう。【００１５】
従来技術４は、手書きの癖を持ったフォントを生成するためのものであって、後述する本発明の目的であるレイアウトや見た目を同じにするものではない。また、手書きの特徴データはあくまでも、元になる文字(標準書体)に対しての相対的な差分(変異)データであって、他の文字（標準書体とは違う書体）に適用した場合には、その文字からの差分になってしまい、文字が大きく変わってしまう。【００１６】
本発明は、上記従来の問題を解決するもので、文章を作成した環境と同じフォントを持たない環境において、データ量を増やすことなく、文字のレイアウトや見た目を同じに表示することができる携帯電話装置やパーソナルコンピュータ、さらにはサーバ装置などのなどの情報処理装置、これに用いられる情報処理プログラムおよび、これが記録されたコンピュータ読み取り可能な可読記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の情報処理装置は、フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体に基づき生成するフォントメトリック情報生成手段を有しており、そのことにより上記目的が達成される。なお、送信元および送信先以外に、記録媒体経由もあり得る。【００１８】
また、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報生成手段は、テキスト情報を入手する手段と、前記テキスト情報の文字コードおよび文字書体を特定する手段と、その特定した該文字コードおよび文字書体に対して前記フォントメトリック情報を生成する手段とを有する。【００１９】
さらに、好ましくは、本発明の情報処理装置において、テキスト情報作成時のフォントデータの特徴を示すフォントメトリック情報に合わせて、使用可能なフォントデータを変形する文字変形手段を有する。【００２０】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報を入手する入手手段をさらに有する。【００２１】
さらに、好ましくは、本発明の情報処理装置において、前記入手手段で入手した前記フォントメトリック情報を記憶する記憶手段をさらに有し、前記文字変形手段は、該記憶手段で記憶した該フォントメトリック情報を次回以降の前記フォントデータの変形に再利用する。【００２２】
本発明の情報処理装置は、フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成するフォントメトリック情報生成手段を有しており、そのことにより上記目的が達成される。【００２３】
また、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報生成手段は、送信元または送信先よりテキストを受信する手段と、前記送信元の文字コードおよび文字書体を特定する手段と、その特定した該文字コードおよび文字書体から前記フォントメトリック情報を生成する手段とを有する。【００２４】
本発明の情報処理装置は、送信元でフォントデータが生成されたときの文字の特徴を示すフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形する文字変形手段を有しており、そのことにより上記目的が達成される。【００２５】
また、好ましくは、本発明の情報処理装置において、前記送信元からの前記フォントメトリック情報を受信する受信手段をさらに有する。【００２６】
さらに、好ましくは、本発明の情報処理装置において、前記受信手段で入手した前記フォントメトリック情報を記憶する記憶手段をさらに有し、前記文字変形手段は、該記憶手段で記憶した該フォントメトリック情報を次回以降の前記フォントデータの変形に再利用する。【００２７】
さらに、好ましくは、本発明の情報処理装置において、前記文字の特徴は、表示される文字の大きさおよび形状である。【００２８】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報と、複数の文字書体のフォントデータ間で共通な情報として文字の基準線情報とを少なくとも有し、前記文字変形手段は、該文字枠の大きさの情報と該最小外接枠の位置および大きさの各情報と該基準線情報との相互関係に応じて、該フォントデータに含まれる座標値を変更する。【００２９】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報とを少なくとも有する。【００３０】
さらに、好ましくは、本発明の情報処理装置において、前記文字枠の大きさの情報は、前記文字枠の高さと該文字枠の幅の各情報を含んでいる。【００３１】
さらに、好ましくは、本発明の情報処理装置において、前記最小外接枠の位置および大きさの各情報は、前記フォントデータの座標値の最大値、最小値から求められる。【００３２】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報は、前記文字書体間で共通な共通情報として文字の基準線情報をさらに有している。【００３３】
さらに、好ましくは、本発明の情報処理装置において、前記文字の基準線情報は、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインのうち該文字が挟まれる少なくとも二つの情報を有している。【００３４】
さらに、好ましくは、本発明の情報処理装置において、前記文字の基準線情報は、前記ベースラインと前記キャップライン、該ベースラインと前記ミーンライン、該ベースラインと前記アセンダライン、該ベースラインと該アセンダラインと該ミーンライン、前記ディセンダラインと該ミーンライン、該ディセンダラインと該アセンダラインと該ミーンラインのうちの少なくともいずれかの組の情報を有している。【００３５】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報のうち、前記共通情報を共有化してデータ容量を削減している。【００３６】
さらに、好ましくは、本発明の情報処理装置において、前記共通情報の抽出処理はそれぞれの値が判る特定文字のみの生成により行っている。【００３７】
さらに、好ましくは、本発明の情報処理装置において、前記文字変形手段は、前記フォントメトリック情報のうち、各文字に関連するパラメータのみで前記送信先のフォントデータを変形する。【００３８】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報生成手段は、読み込んだ文字を生成する文字生成手段と、生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得手段と、該生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する最小外接枠データ生成手段とを有する。【００３９】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報生成手段は、読み込んだ文字が英文字かどうかを判定する文字種判定手段と、該読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定する手段と、該基準線情報が生成されていない場合に、該基準線情報を生成する基準線情報生成手段とを更に有し、前記文字生成手段は、該基準線情報を生成している場合に、該基準線情報を用いて該文字を生成する。【００４０】
さらに、好ましくは、本発明の情報処理装置において、前記フォントメトリック情報生成手段は、前記最小外接枠データ生成手段による処理後に、前記読み込んだ文字で該処理が終わっていない文字がまだ残っているかどうかを判定し、該文字が残っている場合には、前記文字種判定手段による処理から処理を繰り返し、該文字が残っていない場合には前記フォントメトリック情報生成手段による処理を終了する手段を有する。【００４１】
さらに、好ましくは、本発明の情報処理装置において、前記基準線情報生成手段は、生成した特定文字から前記基準線情報を抽出する。【００４２】
さらに、好ましくは、本発明の情報処理装置において、前記基準線情報生成手段は、第１の特定文字を生成し、その高さ位置から前記基準線情報としてベースラインデータおよびキャップラインデータを生成する手段と、第２の特定文字を生成し、その高さ位置から該基準線情報としてベースラインデータおよびアセンダラインデータを生成する手段と、第３の特定文字を生成し、その高さ位置から該基準線情報としてディセンダラインデータおよびミーンラインデータを生成する手段とのうち少なくともいずれかの手段とを有して該基準線情報を生成する。【００４３】
さらに、好ましくは、本発明の情報処理装置において、前記第１の特定文字は英大文字の’H’、前記第２の特定文字は英小文字の’h’、 前記第３の特定文字は英小文字の’p’である。なお、’H’、’h’および’p’以外もあり得る。【００４４】
さらに、好ましくは、本発明の情報処理装置において、前記文字変形手段は、変形元のフォントのフォントメトリック情報を生成する手段を有し、
読み込んだ文字が英大文字の場合に、ベースラインとキャップラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=キャップライン
該読み込んだ文字が英小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か’s’か’u’か’v’か’w’か’x’か’z’の場合に、該ベースラインとミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=ミーンライン
該読み込んだ文字が英小文字の’ｌ’の場合に、該ベースラインとアセンダラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=アセンダライン
該読み込んだ文字が英小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’の場合に、該ベースラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
該読み込んだ文字が英小文字の’g’か’p’か’q’か’y’の場合に、ディセンダラインと該ミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=ミーンライン  ymid=ベースライン
該読み込んだ文字が英小文字の’j’の場合に、該ディセンダラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=アセンダライン  ymid=ミーンライン
該読み込んだ文字が英文字でない文字の場合に、当該文字を構成する座標データを次の変形式で変形する手段とのうち、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
いずれかの手段で該変形元のフォントのフォントメトリック情報を前記送信元のフォントメトリック情報に合わせて変形し、この変形すべき文字がなくなるまでこれを該文字毎に繰り返す。なお、(x，y)、 (x’ ，y’)、xmaxおよびxminなどの各記号の定義は後述する実施形態を参照する。【００４５】
さらに、好ましくは、本発明の情報処理装置において、前記文字変形手段による変形後のフォントメトリック情報を用いて文字を生成し、この生成した文字を表示画面上の所定の位置に描画する文章表示手段をさらに有する。【００４６】
本発明の情報処理システムは、フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成するフォントメトリック情報生成手段が設けられ、該テキストと共に該フォントメトリック情報を送信する送信元の情報処理装置と、該送信元より該テキストと共に送られた該フォントメトリック情報に合わせて、自装置側が保持するフォントデータを変形する文字変形手段が設けられた送信先の情報処理装置とを有しており、そのことにより上記目的が達成される。【００４７】
また、好ましくは、本発明の情報処理システムにおいて、前記送信元および送信先の各情報処理装置はそれぞれパーソナルコンピュータである。【００４８】
本発明の情報処理システムは、テキストを送信可能とする送信元の情報処理装置と、該送信元より該テキストを受信する受信手段および、該受信手段で受信した該テキストを形成する文字コードおよび文字書体を特定し、その特定した該文字コードおよび文字書体から、該送信元でフォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を生成するフォントメトリック情報生成手段が設けられた中継側の情報処理装置と、該中継側より該テキストと共に送られて来た該フォントメトリック情報に合わせて、送信先装置側が保持するフォントデータを変形する文字変形手段が設けられた送信先の情報処理装置とを有しており、そのことにより上記目的が達成される。【００４９】
また、好ましくは、本発明の情報処理システムにおいて、前記送信元の情報処理装置はパーソナルコンピュータ、前記中継側の情報処理装置はサーバ装置、前記送信先の情報処理装置は携帯電話装置である。【００５０】
本発明の情報処理システムは、送信元の情報処理装置と情報の送受信を可能とする送信先の情報処理装置と、該送信先からの送信元のテキストを受信する受信手段および、該受信手段で受信した該テキストを形成する文字コードおよび文字書体を特定し、その特定した該文字コードおよび文字書体から、該送信元でフォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を生成するフォントメトリック情報生成手段が設けられた中継側の情報処理装置とを有し、該送信先の情報処理装置は、該中継側から送られて来た該フォントメトリック情報に合わせて、送信先装置側が保持するフォントデータを変形する文字変形手段が設けられており、そのことにより上記目的が達成される。【００５１】
また、好ましくは、本発明の情報処理システムにおいて、前記送信先の情報処理装置は携帯電話装置、前記中継側の情報処理装置はサーバ装置である。【００５２】
さらに、好ましくは、本発明の情報処理システムにおいて、前記送信先の情報処理装置は、前記受信手段で入手した前記フォントメトリック情報を記憶する記憶手段と、該記憶手段で記憶した該フォントメトリック情報を、次回以降の前記フォントデータの変形に再利用する。【００５３】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字の特徴は、表示される文字の大きさおよび形状である。【００５４】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報は、文字枠の大きさの情報と、該文字枠の内側に設けられる文字の最小外接枠の位置および大きさの各情報とを少なくとも含む。【００５５】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字枠の大きさの情報は、前記文字枠の高さと該文字枠の幅の各情報を含んでいる。【００５６】
さらに、好ましくは、本発明の情報処理システムにおいて、前記最小外接枠の位置および大きさの各情報は、前記フォントデータの座標値の最大値・最小値から求められる。【００５７】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報は、前記文字書体間で共通な共通情報として文字の基準線情報をさらに有している。【００５８】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字の基準線情報は、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインのうち該文字が挟まれる少なくとも二つの情報を有している。【００５９】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字の基準線情報は、前記ベースラインと前記キャップライン、該ベースラインと前記ミーンライン、該ベースラインと前記アセンダライン、該ベースラインと該アセンダラインと該ミーンライン、前記ディセンダラインと該ミーンライン、該ディセンダラインと該アセンダラインと該ミーンラインのうちの少なくともいずれかの組の情報を有している。【００６０】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報のうち、前記共通情報を共有化してデータ容量を削減している。【００６１】
さらに、好ましくは、本発明の情報処理システムにおいて、前記共通情報の抽出処理はそれぞれの値が判る特定文字のみの生成により行っている。【００６２】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字変形手段は、前記フォントメトリック情報のうち、各文字に関連するパラメータのみで前記送信先のフォントデータを変形する。【００６３】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報生成手段は、読み込んだ文字を生成する文字生成手段と、生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得手段と、該生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する最小外接枠データ生成手段とを有する。【００６４】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報生成手段は、読み込んだ文字が英文字かどうかを判定する文字種判定手段と、該読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定する手段と、該基準線情報が生成されていない場合に、該基準線情報を生成する基準線情報生成手段とを更に有し、前記文字生成手段は、該基準線情報を生成している場合に、該基準線情報を用いて該文字を生成する。【００６５】
さらに、好ましくは、本発明の情報処理システムにおいて、前記フォントメトリック情報生成手段は、前記最小外接枠データ生成手段による処理後に、前記読み込んだ文字のうち該処理が終わっていない文字がまだ残っているかどうかを判定し、該文字が残っている場合には、前記文字種判定手段による処理から処理を繰り返し、該文字が残っていない場合には前記フォントメトリック情報生成手段による処理を終了する手段を有する。【００６６】
さらに、好ましくは、本発明の情報処理システムにおいて、前記基準線情報生成手段は、生成した特定文字から前記基準線情報を抽出する。【００６７】
さらに、好ましくは、本発明の情報処理システムにおいて、前記基準線情報生成手段は、第１の特定文字を生成し、その高さ位置から前記基準線情報としてベースラインデータおよびキャップラインデータを生成する手段と、第２の特定文字を生成し、その高さ位置から該基準線情報としてベースラインデータおよびアセンダラインデータを生成する手段と、第３の特定文字を生成し、その高さ位置から該基準線情報としてディセンダラインデータおよびミーンラインデータを生成する手段とのうち少なくともいずれかの手段とを有して該基準線情報を生成する。【００６８】
さらに、好ましくは、本発明の情報処理システムにおいて、前記第１の特定文字は英大文字の’H’、前記第２の特定文字は英小文字の’h’、 前記第３の特定文字は英小文字
の’p’である。【００６９】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字変形手段は、変形元のフォントのフォントメトリック情報を生成する手段を有し、
読み込んだ文字が英大文字の場合に、ベースラインとキャップラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=キャップライン
該読み込んだ文字が英小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か
’s’か’u’か’v’か’w’か’x’か’z’の場合に、該ベースラインとミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=ミーンライン
該読み込んだ文字が英小文字の’ｌ’の場合に、該ベースラインとアセンダラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=アセンダライン
該読み込んだ文字が英小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’の場合に、該ベースラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
該読み込んだ文字が英小文字の’g’か’p’か’q’か’y’の場合に、ディセンダラインと該ミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=ミーンライン  ymid=ベースライン
該読み込んだ文字が英小文字の’j’の場合に、該ディセンダラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=アセンダライン  ymid=ミーンライン
該読み込んだ文字が英文字でない文字の場合に、当該文字を構成する座標データを次の変形式で変形する手段とのうち、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
いずれかの手段で該変形元のフォントのフォントメトリック情報を前記送信元のフォントメトリック情報に合わせて変形し、変形すべき文字がなくなるまでこれを該文字毎に繰り返す。【００７０】
さらに、好ましくは、本発明の情報処理システムにおいて、前記文字変形手段による変形後のフォントメトリック情報を用いて文字を生成し、この生成した文字を表示画面上の所定の位置に描画する文章表示手段をさらに有する。【００７１】
本発明の情報処理プログラムは、フォントデータが生成されたときの文字の特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成するフォントメトリック情報生成ステップをコンピュータに実行させるためのものであり、そのことにより上記目的が達成される。【００７２】
本発明の情報処理プログラムは、送信元でフォントデータが生成されたときの文字の特徴を示すフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形する文字変形ステップをコンピュータに実行させるためのものであり、そのことにより上記目的が達成される。【００７３】
また、好ましくは、本発明の情報処理プログラムにおいて、前記フォントメトリック情報生成ステップは、読み込んだ文字を生成する文字生成ステップと、生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得ステップと、該生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する最小外接枠データ生成ステップとをコンピュータに実行させる。【００７４】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記フォントメトリック情報生成ステップは、読み込んだ文字が英文字かどうかを判定する文字種判定ステップと、該読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定するステップと、該基準線情報が生成されていない場合に、該基準線情報を生成する基準線情報生成ステップとをコンピュータに実行させるための情報処理プログラムであって、前記文字生成ステップは、該基準線情報を生成している場合に、該基準線情報を用いて該文字を生成する。【００７５】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記フォントメトリック情報生成ステップは、前記最小外接枠データ生成ステップによる処理後に、前記読み込んだ文字のうち該処理が終わっていない文字がまだ残っているかどうかを判定し、該文字が残っている場合には、前記文字種判定ステップによる処理から処理を繰り返し、該文字が残っていない場合には前記フォントメトリック情報生成ステップによる処理を終了するステップをコンピュータに実行させる。【００７６】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記基準線情報生成ステップは、生成した特定文字から前記基準線情報を抽出する。【００７７】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記基準線情報生成ステップは、第１の特定文字を生成し、その高さ位置から前記基準線情報としてベースラインデータおよびキャップラインデータを生成するステップと、第２の特定文字を生成し、その高さ位置から該基準線情報としてベースラインデータおよびアセンダラインデータを生成するステップと、第３の特定文字を生成し、その高さ位置から該基準線情報としてディセンダラインデータおよびミーンラインデータを生成するステップとのうち少なくともいずれかのステップをコンピュータに実行させて該基準線情報を生成する。【００７８】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記第１の特定文字は英大文字の’H’、前記第２の特定文字は英小文字の’h’、 前記第３の特定文字は英小文
字の’p’である。【００７９】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記文字変形ステップは、変形元のフォントのフォントメトリック情報を生成するステップを有し、
読み込んだ文字が英大文字の場合に、ベースラインとキャップラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形するステップと、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=キャップライン
該読み込んだ文字が英小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か’s’か’u’か’v’か’w’か’x’か’z’の場合に、該ベースラインとミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形するステップと、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=ミーンライン
該読み込んだ文字が英小文字の’ｌ’の場合に、該ベースラインとアセンダラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形するステップと、x= (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=アセンダライン
該読み込んだ文字が英小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’の場合に、該ベースラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形するステップと、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
該読み込んだ文字が英小文字の’g’か’p’か’q’か’y’の場合に、ディセンダラインと該ミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形するステップと、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=ミーンライン  ymid=ベースライン
該読み込んだ文字が英小文字の’j’の場合に、該ディセンダラインと該アセンダラインに挟まれた文字で、かつ、中間の基準線として該ミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形するステップと、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=アセンダライン  ymid=ミーンライン
該読み込んだ文字が英文字でない文字の場合に、当該文字を構成する座標データを次の変形式で変形するステップとのうち、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
いずれかのステップをコンピュータに実行させて該変形元のフォントのフォントメトリック情報を前記送信元のフォントメトリック情報に合わせて変形し、変形すべき文字がなくなるまでこれを該文字毎に繰り返す。【００８０】
さらに、好ましくは、本発明の情報処理プログラムにおいて、前記文字変形ステップによる変形後のフォントメトリック情報を用いて文字を生成し、この生成した文字を表示画面上の所定の位置に描画する文章表示ステップをコンピュータに実行させる。【００８１】
本発明の可読記録媒体は、本発明のフォントメトリック情報生成機能の上記情報処理プログラムの各ステップを記録したコンピュータ読み取り可能な可読記録媒体であって、そのことにより上記目的が達成される。【００８２】
本発明の可読記録媒体は、本発明の文字変形処理機能の上記情報処理プログラムの各ステップを記録したコンピュータ読み取り可能な可読記録媒体であって、そのことにより上記目的が達成される。【００８３】
上記構成により、以下、本発明の作用を説明する。【００８４】
本発明にあっては、フォント情報自体はやり取りせずに、文章を作成した環境と同じフォントを持たない環境において、フォント付加情報（ここではフォントメトリック情報）だけをやり取りして、より少ない伝達情報でデータ量を増やすことなく、文章の文字のレイアウトや見た目を同じに再現することが可能となる。【００８５】
送信元の文章作成側で、フォントメトリック情報生成手段を用いてフォントメトリック情報を生成する。ここで、フォントメトリック情報とは、文字のデザイン形状を定める情報であって、文字によらず共通の情報である共通部分と、文字毎に情報が違う個別部分からなっている。一方、送信先の文章表示側では、フォント変形を行う際に、これらのフォントメトリック情報を、情報通信手段の受信手段を用いて入手する。文章表示側では、入手したフォントメトリック情報を利用して、文字変形手段を用いて、文章表示側に既存のフォントを変形し、所定の位置に表示する。これにより、文章を作成した環境と同じフォントを持たない環境において、データ量を増やすことなく、文章表示側の表示画面上において、文字のレイアウトや見た目を文章作成側と同じに表示することが可能となる。
【発明の効果】
【００８６】
以上により、本発明によれば、送信元の文章作成側の元の文章からフォントメトリック情報を生成し、文章表示先の文章表示側において、フォントメトリック情報を利用してフォントを変形するため、元の文章と同じレイアウトを保つことができ、且つ、文字の大きさなども同じにできて、送信元と送信先で文字表示を見た目にも近いものとすることができる。【００８７】
また、フォントメトリック情報は文字を表すフォントデータに比べ、データ量が小さく、文章作成側の本来の文章に付加するデータ量を、フォントデータを埋め込んで表示するＰＤＦを用いた場合よりも少なくすることができる。
【図面の簡単な説明】
【００８８】
【図１】図１は、本発明の情報処理システムの基本原理を示すブロック図である。
【図２】図２は、図１の情報処理システムの実施形態１における要部構成例を示すブロック図である。
【図３】図３は、図１の情報処理システムの実施形態２における要部構成例を示すブロック図である。
【図４】図４は、図１の情報処理システムの実施形態３における要部構成例を示すブロック図である。
【図５】図５は、本発明のフォントメトリックを示す図であって、（ａ）は漢字の表示画面図、（ｂ）は英文字の表示画面図である。
【図６】図６は、本発明の実施形態４を示すフォントメトリック情報のデータフォーマット図である。
【図７】図７は、本発明のフォントメトリック情報を元にしたフォント変形処理を示す図であって、（Ａ）は、本発明のフォントメトリック情報として文字枠の大きさと、文字の最小外接枠の大きさと位置を持った場合を示す図、（Ｂ）は、本発明のフォントメトリック情報として、文字枠の大きさと、文字の最小外接枠の大きさと位置、さらには基準線をもつ場合を示す図である。
【図８】図８は、図１のフォントメトリック情報生成手段２０の実施形態５において、図６のフォントメトリック情報の生成処理動作を示すフローチャートである。
【図９】図９は、図８のステップＳ１０５の共通部分情報生成処理を詳細に示したフローチャートである。
【図１０】図１０は、図１の文字変形手段４０の実施形態６において、文章作成元のフォントメトリック情報を元に、文章表示側での文字の生成動作を示すフローチャートである。
【図１１】図１１は、文章作成元のフォントの例を示した図である。
【図１２】図１２は、文章作成元のフォントメトリック情報の共通部分の情報生成に必要な、’H’’h’’p’を示した図である。
【図１３】図１３は、文章作成元のフォントの文字枠、および文字の最小外接枠を示した図である。
【図１４】図１４は、文章作成元のフォントメトリック情報のデータ例を示した図である。
【図１５】図１５は、本実施形態６の文字の変形に使用するフォントを示した図である。
【図１６】図１６は、本実施形態６の文字の変形に使用するフォントの文字枠、および文字の最小外接枠を示した図である。
【図１７】図１７は、本実施形態６の文字の変形に使用するフォントのフォントメトリック情報の共通部分の情報生成に必要な’H’’h’’p’を示した図である。
【図１８】図１８は、本実施形態６の文字の変形に使用するフォントのフォントメトリック情報のデータの例を示した図である。
【図１９】図１９は、実施形態６の変形前の’b’の座標データを示した図である。
【図２０】図２０は、実施形態６の変形後の’b’の座標データを示した図である。
【図２１】図２１は、変形前の’門’の座標データを示した図である。
【図２２】図２２は、実施形態６の変形後の’門’の座標データを示した図である。
【図２３】図２３は、アウトラインフォントの一例を示した図である。
【図２４】図２４は、ストロークフォントの一例を示した図である。
【図２５】図２５は、文字の変形のパターンをテーブルにした図である。
【図２６】図２６は、従来の技術の文字表示例を示す図である。
【図２７】図２７は、フォントの違いによりレイアウトが崩れる例を示した図である。
【図２８】図２８は、従来技術２の技術を適用した表示結果を示す図である。
【図２９】図２９は、従来技術２において、文字枠の大きさが同じでも文字の大きさが異なる場合があること示す図である。
【符号の説明】
【００８９】
１０  文章作成手段
１１  文章作成の際に使われるフォントＡ
２０  フォントメトリック情報生成手段
２１  文章作成の際に使われたフォントと同じフォントＡ
３０  情報通信手段
４０  文字変形手段
４１  文章作成の際に使われたフォントとは別のフォントＢ
４２  文章表示手段
１００，１０１，１０２，１０３  情報処理システム
１  フォントメトリック情報生成を行うＰＣ
Ａ２００  制御部
Ａ２１０  ＣＰＵ
Ａ２２０  主メモリ
Ａ３００  通信デバイス
Ａ４００  補助記憶装置
Ａ４１０  文章作成プログラム
Ａ４２０  フォントメトリック情報生成プログラム
Ａ４３０  フォントデータＡ
２  フォントを変形し文章表示を行うＰＣ
Ｂ２００  制御部
Ｂ２１０  ＣＰＵ
Ｂ２２０  主メモリ
Ｂ３００  通信デバイス
Ｂ４００  補助記憶装置
Ｂ４１０  文章表示プログラム
Ｂ４１１  フォントデータの変形処理プログラム
Ｂ４２０  フォントデータＢ
３  文章作成を行うＰＣ
Ｃ２００  制御部
Ｃ２１０  ＣＰＵ
Ｃ２２０  主メモリ
Ｃ３００  通信デバイス
Ｃ４００  補助記憶装置
Ｃ４１０  文章作成プログラム
Ｃ４２０  フォントデータＡ
４  サーバ
Ｄ２００  制御部
Ｄ２１０  ＣＰＵ
Ｄ２２０  主メモリ
Ｄ３００  通信デバイス
Ｄ４００  補助記憶装置
Ｄ４１０  フォントメトリック情報生成プログラム
Ｄ４２０  フォントデータＤ
５  携帯電話装置
Ｅ２００  制御部
Ｅ２１０  ＣＰＵ
Ｅ２２０  主メモリ
Ｅ３００  通信デバイス
Ｅ４００  補助記憶装置
Ｅ４１０  文章表示プログラム
Ｅ４１１  フォントデータの変形処理
Ｅ４２０  フォントデータＢ
６  携帯電話装置
Ｆ２００  制御部
Ｆ２１０  ＣＰＵ
Ｆ２２０  主メモリ
Ｆ３００  通信デバイス
Ｆ４００  補助記憶装置
Ｆ４１０  文章表示プログラム
Ｆ４１１  フォントデータ変形処理
Ｆ４２０  フォントデータ
Ｆ４３０  キャッシュ領域
７  サーバ
Ｇ２００  制御部
Ｇ２１０  ＣＰＵ
Ｇ２２０  主メモリ
Ｇ３００  通信デバイス
Ｇ４００  補助記憶装置
Ｇ４１０  フォントメトリック情報生成プログラム
Ｇ４２０  フォントＤ
【発明を実施するための最良の形態】
【００９０】
以下に、本発明の各種情報処理装置を組み合わせた情報処理システムの各実施形態１〜３、これらの各実施形態１〜３に用いる本発明のフォントメトリック情報の実施形態４、これらの各実施形態１〜３に用いる本発明のフォントメトリック情報生成手段の実施形態５、これらの各実施形態１〜３に用いる本発明の文字変形手段の実施形態６について、図面を参照しながら詳細に説明する前に、本発明の各種情報処理装置を組み合わせた情報処理システムの基本原理について説明する。【００９１】
図１は、本発明の情報処理システムの基本原理を示すブロック図である。【００９２】
図１において、本発明の情報処理システム１００は、文章作成手段１０と、文章作成用の記憶手段（以下、フォントＡ１１という）と、本発明の特徴部分を構成するフォントメトリック情報生成手段２０と、フォントメトリック情報生成用の記憶手段（以下、フォントＡ２１という）と、情報通信手段３０と、本発明の別の特徴部分を構成する文字変形手段４０と、文字変形用の情報記憶手段（以下、フォントＢ４１という）と、文章表示手段４２とを有しており、同じフォントを持たない環境において、送信元の文章作成側の文章のレイアウトおよび見た目のイメージを、送信先の文章表示側で同じに再現可能とするものである。【００９３】
文章作成手段１０は、送信元で文章（テキスト）を作成する文章作成側の手段であり、フォントＡ１１には文章作成の際に使われるフォントＡが文章作成用に記憶されていることを示している。この文章作成手段１０およびフォントＡ１１で一つの装置、例えば文章作成機能を持ったパーソナルコンピュータ（ＰＣ）などが構成可能である。【００９４】
フォントメトリック情報生成手段２０は、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成する部分であり、フォントＡ２１には文章作成の際に使われたフォントＡと同じフォントＡがフォントメトリック情報生成用に記憶されていることを示している。このフォントメトリック情報生成手段２０およびフォントＡ２１で一つの装置、例えばフォントメトリック情報を生成するサーバ装置などである。なお、これらの文章作成手段１０、フォントＡ１１、フォントメトリック情報生成手段２０およびフォントＡ２１で一つの装置、例えば文章作成機能とその文章からフォントメトリック情報を生成する機能を持ったパーソナルコンピュータ（ＰＣ）などであってもよい。【００９５】
このフォントメトリック情報は、図５Ａおよび図５Ｂを用いて実施形態４で詳細に説明するが、少なくとも文字枠の大きさと、その内側に設けられる文字の最小外接枠の位置および大きさの情報を含んでいる。【００９６】
情報通信手段３０は、文章（テキスト）データおよびフォントメトリック情報を送信元から送信先に伝達（送受信；送信手段と受信手段）するためのものであり、有線でも無線でもよい。【００９７】
文字変形手段４０は、フォントを変形する手段であり、フォントＢ４１には送信元で文章作成の際に使われたフォントＡとは違うフォントＢが記憶されていること、即ち、同じフォントを持たない環境を示している。文字変形手段４０は、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形するものである。【００９８】
文章表示手段４２は、文字変形手段４０で変形された文字を表示画面上に表示するものである。これらの文字変形手段４０、フォントＢ４１および文章表示手段４２で一つの装置、例えば電子情報機器としての携帯電話装置などが構成可能である。【００９９】
これによって、文章を作成した環境と同じフォントを持たない環境において、送信元の文章作成側の元の文章からフォントメトリック情報を生成し、文章表示先の文章表示側において、このフォントメトリック情報に合わせてフォントを変形するため、データ量を増やすことなく、転送元の文字のレイアウトや見た目を転送先で同じに表示することができる。【０１００】
（実施形態１）
本実施形態１では、情報処理システムとして、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報を、文章データ（テキスト）を形成する文字コードおよび文字書体から生成するフォントメトリック情報生成手段２０が設けられ、情報通信手段３０を介して、テキストと共にフォントメトリック情報を送信可能とする通信元の情報処理装置と、通信元よりテキストと共に送られたフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形する文字変形手段４０が設けられた送信先の情報処理装置とを有する場合について説明する。【０１０１】
図２は、図１の情報処理システムの実施形態１における要部構成例を示すブロック図である。【０１０２】
図２において、本実施形態１の情報処理システム１０１は、文章作成およびフォントメトリック情報生成を行うパーソナルコンピュータ１（以下、ＰＣ１という）と、フォントメトリック情報を使ってフォントを変形し文章表示を行うパーソナルコンピュータ２（以下、ＰＣ２という）とを有している。【０１０３】
ＰＣ１は、制御部Ａ２００と、通信デバイスＡ３００と、補助記憶装置Ａ４００とを有している。【０１０４】
制御部Ａ２００は、中央演算処理装置Ａ２１０（以下、ＣＰＵＡ２１０という）と、ワークメモリなどとして働く主メモリＡ２２０とを有している。【０１０５】
通信デバイスＡ３００は、作成した文章データおよびフォントメトリック情報の伝達（送信）を行う。【０１０６】
補助記憶装置Ａ４００は、文章作成プログラムＡ４１０と、フォントメトリック情報生成プログラムＡ４２０と、フォントデータＡ４３０とを有している。【０１０７】
文章作成プログラムＡ４１０は、一般的に良く知られている文章作成用のプログラムでよい。【０１０８】
フォントメトリック情報生成プログラムＡ４２０は、前述したが、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成するステップをＣＰＵＡ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する例えば図８および図９で示した処理に該当する。【０１０９】
フォントデータＡ４３０は、文章作成プログラムＡ４１０およびフォントメトリック情報生成プログラムＡ４２０で使用される。【０１１０】
一方、ＰＣ２は、制御部Ｂ２００と、通信デバイスＢ３００と、補助記憶装置Ｂ４００とを有している。【０１１１】
制御部Ｂ２００は、中央演算処理装置Ｂ２１０（以下、ＣＰＵＢ２１０という）と、ワークメモリなどとして働く主メモリＢ２２０とを有している。【０１１２】
通信デバイスＢ３００は、通信デバイスＡ３００で作成された文章データおよびフォントメトリック情報の伝達（受信）を行う。【０１１３】
補助記憶装置Ｂ４００は、文章表示プログラムＢ４１０と、フォントデータＢ４２０とを有している。【０１１４】
文章表示プログラムＢ４１０は、フォントメトリック情報を用いたフォントデータの変形処理プログラムＢ４１１を有している。このフォントデータ変形処理プログラムＢ４１１は、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形するステップをＣＰＵＡ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する図１０のステップＳ３０１〜ステップＳ３１５で示される各処理に対応している。【０１１５】
フォントデータＢ４２０は、前述したフォントデータＡとは違うフォントデータＢ（送信先の自装置側が保持するフォントデータ）を有し、即ち、同じフォントを持たない環境であり、文章表示プログラムＢ４１０で使用される場合に、このフォントメトリック情報に合わせてフォントデータＢを変形して用いる。【０１１６】
この場合にも、文章を作成した環境と同じフォントを持たない環境において、送信元の文章作成側の元の文章からフォントメトリック情報を生成し、文章表示先の文章表示側において、このフォントメトリック情報に合わせてフォントを変形するため、データ量を増やすことなく、転送元の文字のレイアウトや見た目を転送先で同じに表示することができる。【０１１７】
（実施形態２）
本実施形態２では、情報処理システムとして、送信元ではフォントメトリック情報を生成せず、これを中継側のサーバで生成させて送信先に送る場合である。
即ち、本実施形態２では、文章データ（テキスト）を、情報通信手段３０を介して送信可能とする送信元の情報処理装置と、この通信元より情報通信手段３０を介して送られてきたテキストを形成する文字コードおよび文字書体を特定し、その特定した文字コードおよび文字書体から、その通信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報を生成するフォントメトリック情報生成手段２０が設けられた中継側の情報処理装置と、この中継側より情報通信手段３０を介してテキストと共に送られて来たフォントメトリック情報に合わせて、送信先装置側が保持するフォントデータを変形する文字変形手段４０が設けられた送信先の情報処理装置とを有する場合について説明する。【０１１８】
図３は、図１の情報処理システムの実施形態２における要部構成例を示すブロック図である。【０１１９】
図３において、本実施形態２の情報処理システム１０２は、文章作成を行う送信元のＰＣ３と、フォントメトリック情報の生成を行う中継側のサーバ４と、このフォントメトリック情報を使ってフォントを変形して表示画面上に文章表示を行う送信先の携帯電話装置５とを有している。【０１２０】
ＰＣ３は、制御部Ｃ２００と、通信デバイスＣ３００と、補助記憶装置Ｃ４００とを有している。【０１２１】
制御部Ｃ２００は、ＣＰＵＣ２１０と、ワークメモリとして働く主メモリＣ２２０とを有している。【０１２２】
通信デバイスＣ３００は、作成した文章データの伝達（送信）を行う。【０１２３】
補助記憶装置Ｃ４００は、文章作成プログラムＣ４１０と、フォントデータＣ４２０とを有している。このフォントデータＣ４２０はフォントデータＡに対応し、文章作成プログラムで使用される。【０１２４】
文章作成プログラムＣ４１０は、一般的に良く知られているものでよい。【０１２５】
一方、サーバ４は、制御部Ｄ２００と、通信デバイスＤ３００と、補助記憶装置Ｄ４００とを有している。【０１２６】
制御部Ｄ２００は、ＣＰＵＤ２１０と、ワークメモリとして働く主メモリＤ２２０とを有している。【０１２７】
通信デバイスＤ３００は、ＰＣ３で作成された文章データの伝達やサーバ４で作成するフォントメトリック情報の伝達を行う。【０１２８】
補助記憶装置Ｄ４００は、フォントメトリック情報生成プログラムＤ４１０と、フォントＤ４２０とを有している。【０１２９】
フォントメトリック情報生成プログラムＤ４１０は、前述したが、送信元のＰＣ３から送られてきたテキストを形成する文字コードおよび文字書体、さらに送信元がどの機種かを特定し、その特定した文字コードおよび文字書体から、その送信元の機種でフォントデータＡが生成されたときの特徴を示すフォントメトリック情報を生成するステップをＣＰＵＤ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する例えば図８および図９で示した処理に該当する。【０１３０】
フォントデータＤ４２０は、フォントデータＡに対応したフォントデータＣ４２０や、フォントデータＢに対応したフォントデータＥ４２０の他、送信元の各機種に応じた各種フォントデータを含んでいるものとする。【０１３１】
次に、携帯電話装置５は、制御部Ｅ２００と、通信デバイスＥ３００と、補助記憶装置Ｅ４００とを有している。【０１３２】
制御部Ｅ２００は、ＣＰＵＥ２１０と、ワークメモリとして働く主メモリＥ２２０とを有している。【０１３３】
通信デバイスＥ３００は、ＰＣ３で作成された文章データや、サーバ４で生成されたフォントメトリック情報の伝達（受信）を行う。【０１３４】
補助記憶装置Ｅ４００は、文章表示プログラムＥ４１０と、フォントデータＢに対応したフォントデータＥ４２０とを有している。【０１３５】
文章表示プログラムＥ４１０は、フォントメトリック情報を用いたフォントデータＢの変形処理プログラムＥ４１１を含んでいる。このフォントデータの変形処理プログラムＥ４１１は、中継側のサーバ４から文章データ（テキスト）と共に送られて来たフォントデータＡのフォントメトリック情報に合わせて、送信先の自携帯電話装置５側が保持するフォントデータＢを変形するステップをＣＰＵＥ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する図１０のステップＳ３０１〜ステップＳ３１５で示される各処理に対応している。【０１３６】
フォントデータＥ４２０は、前述したフォントデータＡとは違うフォントデータＢ（送信先の自装置側が保持するフォントデータ）を有しており、即ち、同じフォントを持たない環境であり、文章表示プログラムＥ４１０でフォントデータＢが使用されるところ、フォントデータＡのフォントメトリック情報に合わせてフォントデータＢを変形して文字表示に用いる。【０１３７】
この場合にも、文章を作成した環境と同じフォントを持たない環境において、送信元の文章と共にサーバ４から送られてきたフォントメトリック情報を生成し、転送先の携帯電話装置の表示画面上において、このフォントメトリック情報に合わせてフォントを変形するため、データ量を増やすことなく、転送元の文字のレイアウトや見た目を転送先で同じに表示することができる。【０１３８】
このように、ＰＣ３で作成された文章が、例えば、Microsoft Windows（登録商標）シ
ステムのＷＯＲＤ（商標）やＥＸＣＥＬ（商標）、ＰｏｗｅｒＰｏｉｎｔ（商標）の文章であれば、サーバ４においてフォントメトリック情報の生成に加え、ＳＶＧやＰＤＦに変換し、携帯電話装置５の表示画面上に表示することも可能である。ＰＣ３の文章をサーバ４でＳＶＧ−Ｔ（ＳＶＧ−ＴはＳＶＧのサブセット）に変換し、携帯電話装置５側に転送するサービスは既に「ぎゃらも！ビュー」(http://view.galamo.com/svr004/translate/jsp/index.jsp)がある。【０１３９】
（実施形態３）
本実施形態３では、情報処理システムとして、送信元の機種に応じたフォントメトリック情報を所定の内部メモリなどに予め用意しておき、それに合わせて文字表示させる場合であって、新機種のように送信元の機種に応じたフォントメトリック情報がない場合に、中継側のサーバにその新機種のフォントメトリック情報を取りに行って文字変形する場合である。【０１４０】
本実施形態３では、情報通信手段３０を介して情報の送受信を可能とする送信先の情報処理装置と、この送信先から情報通信手段３０を介して送られてきたテキストを形成する文字コードおよび文字書体を特定し、その特定した文字コードおよび文字書体から、送信元でフォントデータが生成されたときの特徴を示すフォントメトリック情報を生成するフォントメトリック情報生成手段２０が設けられた中継側の情報処理装置とを有しており、送信先の情報処理装置は、中継側から送られて来たフォントメトリック情報に合わせて、送信先装置側が保持するフォントデータを変形する文字変形手段４０が設けられている場合について説明する。【０１４１】
図４は、図１の情報処理システムの実施形態３における要部構成例を示すブロック図である。【０１４２】
図４において、本実施形態３の情報処理システム１０３は、文章表示を行う携帯電話装置６と、フォントメトリック情報の生成を行うサーバ７とを有している。【０１４３】
携帯電話装置６は、制御部Ｆ２００と、通信デバイスＦ３００と、補助記憶装置Ｆ４００とを有している。【０１４４】
制御部Ｆ２００は、ＣＰＵＦ２１０と、ワークメモリとして働く主メモリＦ２２０とを有している。【０１４５】
通信デバイスＦ３００は、新機種のように送信元の機種に応じたフォントメトリック情報がない場合など、フォントメトリック情報が必要な場合に文章データ（テキスト）をサーバ７に送り、フォントメトリック情報の伝達（送受信）を行う。【０１４６】
補助記憶装置Ｆ４００は、文章表示プログラムＦ４１０と、フォントデータＦ４２０と、フォントメトリック情報を保存しておくキャッシュ領域Ｆ４３０とを有している。【０１４７】
フォントデータＦ４２０は文章表示プログラムＦ４１０で使用される。【０１４８】
文章表示プログラムＦ４１０は、フォントメトリック情報を用いたフォントデータの変形処理プログラムＦ４１１を含んでいる。このフォントデータ変形処理プログラムＦ４１１は、予め用意している送信元の機種に応じたフォントメトリック情報または、中継側のサーバ７から送られて来た新たなフォントメトリック情報に合わせて、送信先の自携帯電話装置側が保持するフォントデータを変形するステップをＣＰＵＦ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する図１０のステップＳ３０１〜ステップＳ３１５で示される各処理に対応している。【０１４９】
フォントデータＦ４２０は、前述した送信元のフォントデータとは違うフォントデータ（自装置側が保持するフォントデータ）を有しており、即ち、送信元の表示させたいフォントと同じフォントを持たない場合に、文章表示プログラムＦ４１０でその相違するフォントデータが使用されるところ、サーバ４から得られたフォントメトリック情報に合わせてそのフォントデータＦ４２０を変形して文字表示を行う。【０１５０】
このように、情報処理システム１０３では、文章表示する携帯電話装置６でフォントメトリック情報がない場合に、サーバ７からの送信元の機種に応じたフォントメトリック情報は次回からの再利用するために携帯電話装置６側のキャッシュ領域Ｆ４３０内に保存する。【０１５１】
一方、サーバ７は、制御部Ｇ２００と、通信デバイスＧ３００と、補助記憶装置Ｇ４００とを有している。【０１５２】
制御部Ｇ２００は、ＣＰＵＧ２１０と、ワークメモリとして働く主メモリＧ２２０とを有している。【０１５３】
通信デバイスＧ３００は、携帯電話装置６で作成された文章データ（テキスト）の伝達やサーバ７で作成するフォントメトリック情報の伝達を行う。【０１５４】
補助記憶装置Ｇ４００は、フォントメトリック情報生成プログラムＧ４１０と、フォントＧ４２０とを有している。【０１５５】
フォントメトリック情報生成プログラムＧ４１０は、前述したが、送信先の携帯電話装置６から送られてきた文章データ（テキスト）を形成する文字コードおよび文字書体を特定し、その特定した文字コードおよび文字書体から、表示させたい所定の特徴を示すフォントメトリック情報を生成するステップをＣＰＵＧ２１０に実行させるためのものであり、本発明の実施形態５にて詳細に後述する例えば図８および図９で示した処理に該当する。【０１５６】
フォントデータＧ４２０は、送信元の例えばフォントデータＡに対応したフォントデータＣ４２０や、例えばフォントデータＢに対応したフォントデータＥ４２０の他、各種フォントデータを含んでいるものとする。【０１５７】
以上により、送信元の表示させたい文章を作成する環境とこれと同じフォントを持たない環境、即ち、予め用意されたフォントメトリック情報がない場合には、サーバ７にアクセスし、表示させたい文章（テキスト）に対応したフォントメトリック情報を生成し、携帯電話装置６の表示画面上において、この表示させたい所定のフォントメトリック情報に合わせてフォントデータを変形する。または、予め用意され、送信元に対応したフォントメトリック情報がある場合に、このフォントメトリック情報に合わせて送信先の表示側のフォントデータを変形する。このため、データ量を増やすことなく、送信元の表示させたい文字のレイアウトや見た目を、転送先の携帯電話装置６の表示画面上で同じに表示することができる。【０１５８】
なお、本構成には図示していないが、予めよく使う複数のフォントメトリック情報を補助記憶装置Ｆ４００側に保持しておいてもよい。【０１５９】
また、本構成では、サーバ７では、フォントデータＤを元にフォントメトリック情報を生成しているが、サーバ７で予め各種フォントのフォントメトリック情報を生成したフォントデータＤを持っておいてもよい。【０１６０】
（実施形態４）
本実施形態４では、上記実施形態１〜３のいずれかで用いられ、送信元でフォントデータが生成されたときの文字の特徴（大きさおよび形状）を示す図１のフォントメトリック情報の具体例について説明する。【０１６１】
図５は、本発明のフォントメトリックを示す図であって、（ａ）は漢字の表示画面図、（ｂ）は英文字の表示画面図であり、図６は、本発明の実施形態４を示すフォントメトリック情報のデータフォーマット図である。【０１６２】
図５に示すように、本実施形態４のフォントメトリック情報は、文字コードに対応するように、文字のデザイン形状を定めるものであり、少なくともレイアウトを保つために必要な文字枠の大きさの情報と、文字の見た目の大きさを保つために必要な文字の最小外接枠の大きさの情報および位置の情報とを含んでいる。【０１６３】
このフォントメトリック情報は、各文字毎に情報が異なる個別部分（個別情報；文字枠の大きさと、最小外接枠の位置および大きさ）と、文字書体間で共通の共通部分（共通情報；基準線情報）とを有している。【０１６４】
この文字枠の大きさの情報は、文字枠の高さと文字枠の幅の各情報を含んでいる。
最小外接枠の位置および大きさの情報は、最小外接枠のX座標の最小値（Ｘmin）および最大値（Ｘmax）と、Y座標の最小値（Ｙｍｉｎ）および最大値（Ｙmax）とで表すことがで
きる。この文字の最小外接枠の大きさの情報や位置の情報は各文字毎に違っている。【０１６５】
また、英文字に示すように、各文字で共通部分として、文字枠に対して、文字の各要素の位置を決めている基準線（基準線情報）を持っていてもよい。【０１６６】
例えば図５（Ｂ）に示すように、各英文字の共通部分として、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインの少なくともいずれかの基準線情報を持っていてもよい。このフォントメトリック情報のミーンラインとベースラインの間で定義される高さは一般にｘハイトと呼ばれる。また、キャップラインとベースラインの間で定義される高さは一般にキャップハイトと呼ばれる。これらの基準線は各言語の特徴に合わせて適宜設定すればよい。【０１６７】
同一フォントでは、英文字の文字によらず共通の情報である共通部分と、文字毎に情報が違う個別部分の各データからなっている。例えば「漢字」では個別部分のみからなり、「英文字」では個別部分および共通部分からなっている。この共通部分は、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインのうち、少なくとも高さを示す二つのラインからなり、それぞれ文字枠の高さが256dotで生成したときの値が入る。この場合、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインの値は０〜２５５の値を持つことになり、各１バイトのデータで合計５バイトのデータになる。【０１６８】
よって、個別部分は、文字コード、前述したように文字枠の高さ、文字枠の幅、xmin、xmax、ymin、ymaxからなっている。【０１６９】
文字コードは、JISコードやSJISコード、UNICODEなど文字が限定できるコードであればよい。【０１７０】
文字枠の高さは、ここでは256固定とする。文字枠の幅は文字枠の高さが256dotの際の
文字枠の幅の値が入る。1〜256の値が入る。【０１７１】
xminは、文字枠の高さが256dotの際の文字の最小のx座標である。xminの値は欧文でよ
く用いられるLSB(LeftSide Bearing)に相当する。【０１７２】
xmaxは、同じく256dotの際の文字の最大のx座標である。文字枠の幅からxmaxを引いた
値は欧文でよく用いられるRSB(Right Side Bearing)に相当する。【０１７３】
yminは、同じく256dotの際の文字の最小のy座標である。【０１７４】
ymaxは、同じく256dotの際の文字の最大のy座標である。【０１７５】
これらのxmin、xmax、yminおよびymaxはそれぞれ、0〜255の値を持つ。また、xmin、xmax、yminおよびymaxで文字の最小外接枠の大きさと位置を表している。個別部分としては、文字コード２バイト、文字枠の高さ１バイト、文字枠の幅１バイト、xmin、xmax、ymin、ymaxそれぞれ１バイトで合計８バイトのデータを文字毎に持てばよい。【０１７６】
なお、このフォントメトリック情報は書体毎に持つものとする。また、各文字枠の高さが256dotのときの値になっており、実際の文字の出力サイズによらない。【０１７７】
図７は、本発明のフォントメトリック情報を元にしたフォント変形処理を示す図であって、図７（Ａ）は、本発明のフォントメトリック情報として文字枠の大きさと、文字の最小外接枠の大きさと位置を持った場合を示す図、図７（Ｂ）は、本発明のフォントメトリック情報として、文字枠の大きさと、文字の最小外接枠の大きさと位置、さらには基準線をもった場合を示す図である。【０１７８】
図７（Ａ）の「漢字」の場合、左側が文章作成元のフォントで、右側が文章表示側で変形に使用するフォントを示しているものとする。元フォントの文字の最小外接枠の大きさと位置をxmin、xmax、ymin、ymaxで表し、文章表示側で変形に使用するフォントの文字の最小外接枠の大きさと位置をxmin’、xmax’、ymin’、ymax’で表している。文字の変形処理は、文字の形を表す座標データの変形で表される。つまり、文章表示側で変形に使用するフォントの座標データ(x’,y’)を文章作成元のフォントメトリックが表す最小外接
枠の位置および大きさに合わせて(x,y)に変換すればよい。具体的には、次の変形式で表
される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
これにより、文章表示側で得られる変形後のフォントの最小外接枠が、文章作成元のフォントの最小外接枠に合うように、フォント全体の座標データが変更され、結果的に文章表示側におけるフォントの見た目・形状が、文章作成元におけるフォントの見た目・形状に近づく。【０１７９】
図７（Ｂ）の英文字の場合は、図７（Ａ）の漢字の場合に比べて基準線を示すymid、ymid’がそれぞれ加わっている。ymidは文章作成元の情報であり、ymid’は文章表示側で変形に使用するフォントの情報である。この場合の変形式は次のように表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
これにより、フォントの形状を規定する座標値と、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインといった各種基準線情報との相互関係、即ちフォントデータの座標値がどの基準線と、どの基準線の間に挟まれているか、に応じて文章表示側における基準線位置を文章作成元の基準線位置に合わせ、それらの間にある座標値を補間（例えば線形補間）により求めることが出来、フォント全体の座標データが変更された結果、文章表示側におけるフォントの見た目・形状が、文章作成元におけるフォントの見た目・形状に近づく。【０１８０】
x座標の変形は図７（Ａ）の場合と同じである。y座標の変形は基準線の上側か下側かで変形式が変わるが座標の位置関係を保つ変形であるのは同じである。また、基準線が複数になっても座標の位置関係が保たれるような変形を行えばよい。【０１８１】
なお、以降の実施形態において、前記と同様の変形式で表される座標値の変更は全て、文章表示側におけるフォントの見た目・形状が、文章作成元におけるフォントの見た目・形状に近づく、という効果を奏する。【０１８２】
（実施形態５）
本実施形態５では、上記実施形態１〜３で用いられる上記実施形態４のフォントメトリック情報を、テキストを形成する文字コードおよび文字書体から生成する図１のフォントメトリック情報生成手段２０の具体例について説明する。【０１８３】
図１のフォントメトリック情報生成手段２０は、ここでは図示していないが、可読記録媒体内に格納された情報処理プログラムおよびそのデータに基づいて、読み込んだ文字が英文字かどうかを判定する文字種判定手段と、読み込んだ文字が英字の場合に、基準線情報を既に生成しているかどうかを判定する手段と、基準線情報を既に生成していない場合には、基準線情報を生成する基準線情報生成手段と、基準線情報があれば基準線情報を用いて、読み込んだ文字を生成する文字生成手段と、生成した文字の文字枠の高さおよび幅を取得する文字枠サイズ取得手段と、この生成した文字の文字データが接する最小外接枠の最大x座標および、最大y座標、最小x座標、最小y座標の各データを生成する最小外接枠データ生成手段との各機能がＣＰＵ(制御部)により実行される。【０１８４】
基準線情報生成手段は、図５に示すように、大文字の’H’を生成し、その高さ位置か
ら基準線情報としてベースラインデータおよびキャップラインデータを生成する手段と、小文字の’h’を生成し、その高さ位置から基準線情報としてベースラインデータおよび
アセンダラインデータを生成する手段と、小文字の’p’を生成し、その高さ位置から基準線情報としてディセンダラインデータおよびミーンラインデータを生成する手段とのうち、少なくともいずれかの手段を有して基準線情報を生成する。【０１８５】
上記構成により、以下、その動作を説明する。【０１８６】
図８は、図１のフォントメトリック情報生成手段２０の実施形態５において、図６のフォントメトリック情報の生成処理動作を示すフローチャートである。【０１８７】
図８に示すように、まず、ステップＳ１０１で文字を読み込む処理を行う。【０１８８】
次に、ステップＳ１０２で、該当文字のフォントメトリック情報を既に生成しているかどうかを判定する。ステップＳ１０２で既にフォントメトリック情報を生成しているならば（ＹＥＳ）、再度生成する必要がないのでステップＳ１１０の処理に移行する。また、ステップＳ１０２でまだフォントメトリック情報を生成していないならば（ＮＯ）、ステップＳ１０３の処理に移行する。【０１８９】
ステップＳ１０３では、該当文字が英文字（英字）かどうかを判定する。ステップＳ１０３で英字と判定された場合（ＹＥＳ）には、ステップＳ１０４の処理に移行し、ステップＳ１０３で英字でないと判定された場合（ＮＯ）には、ステップＳ１０６の処理に移行する。【０１９０】
該当文字が英字の場合に、ステップＳ１０４では、共通部分情報を既に生成しているかどうかを判定する。ステップＳ１０４で既に共通部分情報を生成しているならば（ＹＥＳ）、ステップＳ１０５の処理で再度生成する必要がないので、ステップＳ１０６の処理に移行する。ステップＳ１０４でまだ共通部分情報を生成していないならば（ＮＯ）、ステップＳ１０５の処理に移行する。【０１９１】
ステップＳ１０５では、詳細な説明は後述するが、共通部分情報を生成する。【０１９２】
ステップＳ１０６では、該当文字を256dotで生成する。【０１９３】
ステップＳ１０７では、生成した文字の文字枠の高さおよび幅を取得する。【０１９４】
ステップＳ１０８では、生成した文字の文字データがある部分（最小外接枠）の最大x
座標および、最大y座標、最小x座標、最小y座標の各データを生成する。具体的には、ス
テップＳ１０７で生成した文字はビットマップデータになっているので、ラインスキャンを行い、最大のx座標およびy座標、最小のx座標及びy座標を求めればよい。【０１９５】
ステップＳ１０９ではこの求めたフォントメトリック情報を保存する。【０１９６】
ステップＳ１１０では、読み込んだ文字がまだ残っているかどうかを判定する。まだ、文字があるならば（ＹＥＳ）、ステップＳ１０１に処理に戻り、もう文字がないならば（ＮＯ）、このフォントメトリック情報の生成処理を終了する。【０１９７】
以上の処理でフォントメトリック情報の生成が行える。【０１９８】
図９は、図８のステップＳ１０５の共通部分情報生成処理を詳細に示したフローチャートである。なお、共通部分情報生成は、’Ｈ’、’ｈ’、’ｐ’を用いて行う。【０１９９】
以下で使うキャップラインなどは、先に説明をした図５（Ｂ）および図６を参照しながら、図９の共通部分情報生成処理について詳細に説明する。【０２００】
図９に示すように、まず、ステップＳ２０１で大文字の’H’を256dotで生成する。【０２０１】
次に、ステップＳ２０２で基準線情報としてキャップラインデータを生成する。具体的には、ステップＳ２０１で生成した文字はビットマップデータになっているので、ラインスキャンを行い最大のy座標を求めればよい。【０２０２】
ステップＳ２０３では、基準線情報としてベースラインデータを生成する。具体的には、ステップＳ２０１で生成した文字はビットマップデータになっているので、ラインスキャンを行い最小のy座標を求めればよい。【０２０３】
その後、ステップＳ２０４では、小文字の’h’を256dotで生成する。【０２０４】
ステップＳ２０５では、基準線情報としてアセンダラインデータを生成する。具体的には、ステップＳ２０４で生成した文字はビットマップデータになっているので、ラインスキャンを行い最大のy座標を求めればよい。【０２０５】
次に、ステップＳ２０６では、小文字の’p’を256dotで生成する。【０２０６】
ステップＳ２０７では、基準線情報としてミーンラインデータを生成する。具体的には、ステップＳ２０７で生成した文字はビットマップデータになっているので、ラインスキャンを行い最大のy座標を求めればよい。【０２０７】
ステップＳ２０８では基準線情報としてディセンダラインデータを生成する。具体的には、ステップＳ２０７で生成した文字はビットマップデータになっているので、ラインスキャンを行い最小のy座標を求めればよい。【０２０８】
以上の処理により図８の共通部分情報（基準線情報）の生成処理（ステップＳ１０５）が行える。【０２０９】
ここで、さらに具体的に実例を挙げて図８および図９を詳細に説明する。【０２１０】
文章として「b門」を例にする。文章作成の際に使用されたフォントは図１１で示されるようなものである。【０２１１】
まず、ステップＳ１０１で、文字’b’が読み込まれる。【０２１２】
次に、ステップＳ１０２で’b’がすでに情報生成されたか判断され、この場合Noであ
るので、Ｓ１０３に処理を進める。【０２１３】
ステップＳ１０３で英字と判断され、ステップＳ１０４に処理を進める。【０２１４】
ステップＳ１０４で共通部分情報がまだ生成されていないと判断され、ステップＳ１０５に処理を進める。【０２１５】
ステップＳ１０５で共通部分情報が生成される。【０２１６】
以下、図９を元にステップＳ１０５の共通部分情報の生成処理について説明する。【０２１７】
ステップＳ２０１で’H’の文字データが生成される。この生成結果は、図１２で示す
ものである。【０２１８】
ステップＳ２０２で’H’の最大座標である222がキャップラインデータとして生成される。【０２１９】
ステップＳ２０３で’H’の最小座標である69がベースラインデータとして生成される。【０２２０】
ステップＳ２０４で’h’の文字が生成される。この生成結果は同じく図１２で示すも
のである。【０２２１】
ステップＳ２０５で’h’の最大座標である222がアセンダーラインとして生成される。【０２２２】
ステップＳ２０６で’p’の文字データが生成される。この生成結果は同じく図１２で
示すものである。【０２２３】
ステップＳ２０７で’p’の最大座標である172がミーンラインデータとして生成される。【０２２４】
ステップＳ２０８で’p’の最小座標である30がディセンダラインデータとして生成される。【０２２５】
以上で共通部分情報の生成処理（図９）が終了し、図８のステップＳ１０６の処理に移行する。【０２２６】
ステップＳ１０６で’b’の文字が生成される。この生成結果は図１３で示すものである。【０２２７】
ステップＳ１０７で文字幅112が取得される。【０２２８】
ステップＳ１０８で文字の最大x座標が101、最大y座標が222、最小x座標が10、最小y座標が69として取得される。【０２２９】
ステップＳ１０９で情報が保存される。【０２３０】
ステップＳ１１０でまだ文字があると判断され、ステップＳ１０１に戻って処理を進める。【０２３１】
ステップＳ１０１で次の文字の’門’が読み込まれる。【０２３２】
ステップＳ１０２では、該当文字がまだ情報生成されていないと判断され、ステップ１０３の処理に移行する。【０２３３】
ステップＳ１０３で英字でないと判断され、次のステップＳ１０４で共通部分情報生成処理は済んでいるので、ステップＳ１０６に処理を進める。【０２３４】
ステップＳ１０６で’門’の文字が生成される。この生成結果は同じく図１３で示すものである。【０２３５】
ステップＳ１０７で文字幅256が取得される。【０２３６】
ステップＳ１０８で文字の最大x座標が217、最大y座標が224、最小x座標が33、最小y座標が28として取得される。【０２３７】
ステップＳ１０９で情報が保存される。【０２３８】
ステップＳ１１０でもう文字がないと判断され、フォントメトリック情報生成処理を終了する。【０２３９】
この生成されたフォントメトリック情報は図１４が示すようなものである。【０２４０】
（実施形態６）
本実施形態６では、上記実施形態１〜３で用いられる上記実施形態４の送信元のフォントメトリック情報に合わせて、送信先の自装置側が保持するフォントデータを変形する図１の文字変形手段４０の具体例について説明する。【０２４１】
図１の文字変形手段４０は、ここでは図示していないが、可読記録媒体内に格納された情報処理プログラムおよびそのデータに基づいて、変形元のフォントのフォントメトリック情報を生成する手段と、変形元（送信先の自装置側）のフォントのフォントメトリック情報と送信元のフォントメトリック情報に対して、
読み込んだ文字が英大文字かどうかを判定し、該文字が英大文字の場合には、ベースラインとキャップラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=キャップライン
読み込んだ文字が英小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か’s’か’u’か’v’か’w’か’x’か’z’かどうかを判定し、この場合に、ベースラインとミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=ミーンライン
読み込んだ文字が英小文字の’ｌ’（エル）かどうかを判定し、この場合に、ベースラインとアセンダラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=アセンダライン
読み込んだ文字が英小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’かどうかを判定し、この場合に、ベースラインとアセンダラインに挟まれた文字で、かつ、中間の基準線としてミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
読み込んだ文字が英小文字の’g’か’p’か’q’か’y’かどうかを判定し、この場合に、ディセンダラインとミーンラインに挟まれた文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=ミーンライン  ymid=ベースライン
読み込んだ文字が英小文字の’j’かどうかを判定し、この場合に、ディセンダラインとアセンダラインに挟まれた文字で、かつ、中間の基準線としてミーンラインを持つ文字として、当該文字を構成する座標データを次の変形式で変形する手段と、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=アセンダライン  ymid=ミーンライン
読み込んだ文字が英文字でない文字の場合に、当該文字を構成する座標データを次の変形式で変形する手段とのうち、
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
いずれかの手段でフォントデータ変形処理を行う機能がＣＰＵ(制御部)により実行されるようになっている。【０２４２】
図１０は、図１の文字変形手段４０の実施形態６において、文章作成元のフォントメトリック情報を元に、文章表示側での文字の生成動作を示すフローチャートである。【０２４３】
図１０に示すように、まず、ステップＳ３０１で、文章表示側で変形に使用するフォントのフォントメトリック情報を生成する。この文章表示側でのフォントメトリック情報生成処理は、図８で示されるフォントメトリック情報生成ルーチンＳ１０１〜Ｓ１１０各処理と同様の処理を行い、文字変形処理に使用する文字のフォントメトリック情報を生成する。【０２４４】
次に、ステップＳ３０２では、該当文字が英大文字（英字の大文字）かどうかを判定する。ステップＳ３０２で該当文字が英字の大文字と判定された場合（ＹＥＳ）には、次のステップＳ３０３の文字変形処理に移行し、ステップＳ３０２で該当文字が英字の大文字ではないと判定された場合（ＮＯ）には、ステップＳ３０４の処理に移行する。ここでは英字かどうかの判定を行っているが、これは該当文字がベースラインとキャップラインに挟まれた文字かどうかを判定する。【０２４５】
ステップＳ３０３では、該当文字がベースラインとキャップラインに挟まれた文字の場合（英字の大文字の場合；ステップＳ３０２でＹＥＳ）に、文字を構成する座標データを変形２の式で変形する。この変形２の式は以下で表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=キャップライン
ステップＳ３０４では、該当文字が大文字ではなく、小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か’s’か’u’か’v’か’w’か’x’か’z’かを判定する。ステップＳ３０４でＹＥＳと判定された場合には、ステップＳ３０５の処理に移行し、ステップＳ３０４でＮＯと判定された場合には、ステップＳ３０６の処理に移行する。ここで、ステップＳ３０４で判定に選んだ文字はベースラインとミーンラインに挟まれた文字である。【０２４６】
ステップＳ３０５では、該当文字がベースラインとミーンラインに挟まれた文字の場合に、文字を構成する座標データを変形３の式で変形する。変形３の式は以下で表される。x= (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=ミーンライン
ステップＳ３０６では、該当文字が小文字の’ｌ’（エル）かどうかを判定する。ステップＳ３０６で小文字の’ｌ’（エル）と判定された場合（ＹＥＳ）には、ステップＳ３０７の処理に移行し、ステップＳ３０６で小文字の’ｌ’（エル）と判定されてない場合（ＮＯ）には、ステップＳ３０８に処理に移行する。ここで、ステップＳ３０６で判定に選んだ文字はベースラインとアセンダラインに挟まれた文字である。【０２４７】
ステップＳ３０７では、該当文字がベースラインとアセンダラインに挟まれた文字の場合に、文字を構成する座標データを変形４の式で変形する。この変形４の式は以下で表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
但し、ymin =ベースライン  ymax=アセンダライン
ステップＳ３０８では、該当文字が小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’かどうかを判定する。ステップＳ３０８でＹＥＳと判定された場合には、ステップＳ３０９の処理に移行し、ステップＳ３０８でＮＯと判定された場合には、ステップＳ３１０の処理に移行する。ここで、ステップＳ３０８で判定に選んだ文字はベースラインとアセンダラインに挟まれた文字であり、かつ、中間の基準線としてミーンラインを持つものである。【０２４８】
ステップＳ３０９では、該当文字がベースラインとアセンダラインに挟まれた文字で、中間の基準線としてミーンラインを持つ文字の場合に、文字を構成する座標データを変形５の式で変形する。この変形５の式は以下のように表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
ステップＳ３１０では、該当文字が小文字の’g’か’p’か’q’か’y’かどうかを判定する。ステップＳ３１０でＹＥＳと判定された場合には、ステップＳ３１１の処理に移行し、ステップＳ３１０でＮＯと判定された場合には、ステップＳ３１２の処理に移行する。ここで、ステップＳ３１０で判定に選んだ文字はディセンダラインとミーンラインに挟まれた文字で、中間の基準線としてベースラインを持つものである。【０２４９】
ステップＳ３１１では、該当文字がディセンダラインとミーンラインに挟まれた文字で、その中間の基準線としてベースラインを持つ文字の場合に、文字を構成する座標データを変形６の式で変形する。この変形６は以下のように表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)*(ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=ミーンライン  ymid=ベースライン
ステップＳ３１２では、該当文字が小文字の’j’かどうかを判定する。ステップＳ３１２でＹＥＳと判定された場合には、ステップＳ３１３の処理に移行し、ステップＳ３１２でＮＯと判定された場合には、ステップＳ３１４の処理に移行する。ここで、判定に選んだ文字はディセンダラインとアセンダラインに挟まれた文字で、その中間の基準線としてミーンラインを持つものである。【０２５０】
ステップＳ３１３では、該当文字がディセンダラインとアセンダラインに挟まれた文字で、中間の基準線としてミーンラインを持つ文字の場合に、文字を構成する座標データを変形７の式で変形する。この変形７の式は以下のように表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ディセンダライン  ymax=アセンダライン  ymid=ミーンライン
ステップＳ３１４では、英文字でなかった文字の場合に、文字を構成する座標データを変形１の式で変形する。この変形１は以下のようにして表される。
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y = (y’ - ymin’)* (ymax - ymin) / (ymax’ - ymin’) + ymin
ステップＳ３１５では、変形した座標データで文字を生成する。この際に、文章作成元のフォントメトリック情報と同じ文字枠の幅を持つデータになるように生成する。【０２５１】
ステップＳ３１６では、ステップＳ３１５で作成した文字を表示画面上の所定の位置に描画する。【０２５２】
以上の処理で、文章作成元のフォントメトリック情報を用いたフォントデータ変形処理による文字表示が行える。【０２５３】
ここで、前述した文章表示側でのフォントデータ変形処理動作について、より具体的な実例を挙げて図１０を詳細に説明する。【０２５４】
図１０に示すように、ステップＳ３０１では、変形に使用するフォントのフォントメトリック情報を生成する。この変形に使用されるフォントは図１５〜図１７に示すようなものであるとする。【０２５５】
文章作成元のフォントメトリック情報生成処理で説明したプロセスと同様の処理が行われ、図１８で示すフォントメトリック情報が得られる。【０２５６】
ステップＳ３０２で最初の文字’b’が英大文字でないと判断され、ステップＳ３０４
の処理に移行する。【０２５７】
ステップＳ３０４で、小文字の’a’か’c’か’e’か’m’か’n’か’o’か’r’か
’s’か’u’か’v’か’w’か’x’か’z’でないと判断され、ステップＳ３０６に処理を進める。【０２５８】
ステップＳ３０６で、’ｌ’でないと判断され、ステップＳ３０８に処理を進める。【０２５９】
ステップＳ３０８で、小文字の’b’か’d’か’f’か’h’か’i’か’k’か’t’であると判断され、ステップＳ３０９に処理を進める。【０２６０】
ステップＳ３０９で変形５
x = (x’ - xmin’)* (xmax - xmin) / (xmax’ - xmin’) + xmin
y < ymidの時
y = (y’ - ymin’)* (ymid - ymin) / (ymid’ - ymin’) + ymin
y >= ymidの時
y = (y’ - ymid’)* (ymax - ymid) / (ymax’ - ymid’) + ymid
但し、ymin =ベースライン  ymax=アセンダライン  ymid = ミーンライン
を用いた変形が行われる。’b’の変形前の座標データは図１９で示したものである。
これが変形５により図２０で示した座標データに変換される。【０２６１】
ステップＳ３１５で変形後のデータを用いて文字が生成される。【０２６２】
ステップＳ３１６で表示画面上の指定の位置に文字が描画される。【０２６３】
次に、次に続く漢字‘門’についても同様に処理が行われ、図２１で示した変形前の座標データが、図２２で示した座標データに変換され、変形後の座標データを用いて文字が生成される。【０２６４】
以上により、本実施形態１〜６によれば、文章作成側でフォントメトリック情報生成手段２０を用いてフォントメトリック情報を生成する。次に、これを情報通信手段３０を介して文章表示側まで送信し、文章表示側で、このフォントメトリック情報に合わせて、文字変形手段４０を用いて文章表示側に既存のフォントを変形して、文章表示手段４２によりその表示画面上の指定の位置に文字を描画する。このことにより、文章を作成した環境と同じフォントを持たない環境においても、フォント付加情報（ここではフォントメトリック情報）だけをやり取りして、より少ない伝達情報でデータ量を増やすことなく、文章表示側（送信先）において、文字のレイアウトや見た目を文章作成側（送信元）と同じに表示することができる。【０２６５】
なお、本実施例では文字枠の高さを256dotとしたが、1024dotでもよいし、他のサイズでもよい。また、日本語しか扱わない場合はベースラインや、アセンダライン、ディセンダライン、キャップライン、ミーンラインなどの情報は省くことも可能であり、各言語によりフォーマットを変えても良い。【０２６６】
なお、上記実施形態１〜６で用いるフォントはスケーラブルなベクトルフォントであればよく、図２３のように文字を輪郭で表すアウトラインフォントでもよいし、図２４のように文字を骨格で表すストロークフォントでもよい。どちらも文字の形状は座標データで表される。座標データと座標データは直線近似や、曲線近似で結ばれる。曲線近似はベジェやスプライン曲線がよく知られている。【０２６７】
なお、上記実施形態１〜６では、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインの生成に英大文字の’H’、英小文字の’h’、英小文字の’p’を使用したが他の文字で行ってもよい。例えば’p’の代わりに’g’を用いても良い。また、処理効率は落ちるが特定の文字で行わずに、各文字で毎回おこなってもよい。即ち、フォントメトリック情報の生成は、文字間で共通なもの（ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンライン）はそれぞれの値が判る特定の文字のみで行う。なお、フォントによってはアセンダラインとキャップラインの位置が同じになっている場合がある。【０２６８】
また、上記実施形態１〜６では、例えばTrueTypeやOpen Typeなどのフォントの場合、ベースラインやディセンダラインの値などを予め保持している場合があり、これを利用してもよい。さらに、上記実施形態１〜６では、文字を256dotで生成したが、例えばTrueTypeやOpenTypeなどのような場合、フォントデータは所定のフォーマットで格納されているので、これに限らず、文字を構成するすべての座標データを取得し、xmin,xmax,ymin, ymaxなどのフォントメトリック情報を生成してもよい。【０２６９】
さらに、上記実施形態１〜６では、細かく判定を行い、どの変形を使うかを決めたが、これに限らず、図２５のように各文字毎にどの基準線が関係し、どの変形を使うかのパターンを示したテーブルを持って処理をしてもよい。このように、テーブルを持つ場合は、各種言語に合わせて対応テーブルを持てばよいので、多言語への対応が容易になる。【０２７０】
さらに、上記実施形態１〜６では、フォントメトリック情報として、文字枠の大きさ、文字の最小外接枠の大きさ及び位置や、ベースライン、アセンダライン、ディセンダライン、キャップラインおよびミーンラインを使用したが、他に文字の太さの情報を取得し、その太さに合うように文字を変形して見かけの文字の太さを同じようにすることも可能である。また、斜体などの文字の傾きを取得し、その傾きに合うように文字を変形して見かけを同じようにすることも可能である。【０２７１】
さらに、上記実施形態１〜６では、特に、説明しなかったが、本発明の情報処理プログラムが記録されたコンピュータ読み取り可能な可読記録媒体としては、パーソナルコンピュータ（ＰＣ）やサーバ内のハードディスクや外付け記憶手段であってもよく、携帯電話装置内のメモリであってもよく、この他、携帯自在な光ディスク、磁気ディスクおよびＤＶＤやＩＣメモリなどであってもよい。これらの携帯自在な光ディスク、磁気ディスクおよびＤＶＤやＩＣメモリなどから、情報処理プログラムが、装置内部のハードディスクなどの記憶手段に読み込まれて使用されてもよいし、インターネットなどを介して装置内部のハードディスクなどの記憶手段にインストールされて使用されてもよい。【０２７２】
以上のように、本発明の好ましい実施形態１〜６を用いて本発明を例示してきたが、本発明は、この実施形態１〜６に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態１〜６の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。本明細書において引用した特許、特許出願および文献は、その内容自体が具体的に本明細書に記載されているのと同様にその内容が本明細書に対する参考として援用されるべきであることが理解される。
【産業上の利用可能性】
【０２７３】
本発明は、文章を作成した環境と、同じフォントを持たない環境において、文章のレイアウトおよび見た目のイメージを再現可能とする携帯電話装置やパーソナルコンピュータ、さらにはサーバ装置などの情報処理装置、これらを用いた情報処理システム、これに用いられる情報処理プログラムおよび、これが記録されたコンピュータ読み取り可能な可読記録媒体の分野において、文章を作成した環境と、同じフォントを持たない環境でも、フォント付加情報（ここではフォントメトリック情報）だけをやり取りして、より少ない伝達情報でデータ量を大きくすることなく、文章作成元と見た目が同じフォントを表示画面上に表示することができる。【０２７４】
なお、本発明の技術を用いて、同一のコンテンツを携帯電話の表示画面とテレビの表示画面とに表示する場合において、その同一のコンテンツの見た目が実質的に同じになるように表示することが可能になる。このように、文章を作成した環境と異なる環境においても、同一のコンテンツの見た目が実質的に同じになるように表示することが可能になる。
【図１】
2007013566.tif 000002
【図２】
2007013566.tif 000003
【図３】
2007013566.tif 000004
【図４】
2007013566.tif 000005
【図５】
2007013566.tif 000006
【図６】
2007013566.tif 000007
【図８】
2007013566.tif 000008
【図９】
2007013566.tif 000009
【図１０】
2007013566.tif 000010
【図１１】
2007013566.tif 000011
【図１２】
2007013566.tif 000012
【図１３】
2007013566.tif 000013
【図１４】
2007013566.tif 000014
【図１５】
2007013566.tif 000015
【図１６】
2007013566.tif 000016
【図１７】
2007013566.tif 000017
【図１８】
2007013566.tif 000018
【図１９】
2007013566.tif 000019
【図２０】
2007013566.tif 000020
【図２１】
2007013566.tif 000021
【図２２】
2007013566.tif 000022
【図２３】
2007013566.tif 000023
【図２４】
2007013566.tif 000024
【図２５】
2007013566.tif 000025
【図２６】
2007013566.tif 000026
【図２７】
2007013566.tif 000027
【図２８】
2007013566.tif 000028
【図２９】
2007013566.tif 000029
【図７】
2007013566.tif 000030
【国際調査報告】
2007013566.tif 000031
2007013566.tif 000032
2007013566.tif 000033
2007013566.tif 000034
2007013566.tif 000035
2007013566.tif 000036
2007013566.tif 000037