(57)【特許請求の範囲】
【請求項１】
デイスプレイに表示する文字データを作成する文字データ作成方法において、
アウトライン方式でなるアウトラインフオントデータを記憶部から読み出し、当該アウトラインフオントデータにおける細いフオント部分の内部だけを塗り潰す塗潰ステツプと、
上記フオント部分の内部だけが塗り潰されたイメージデータの周囲を囲む細いフオントでなるアウトライン部分及び当該アウトライン部分の周囲を囲む太いフオントでなる外側アウトライン部分を生成するアウトライン部分生成ステツプと、
上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分の境界で発生するちらつきを防止するために当該イメージデータ、当該アウトライン部分及び当該外側アウトライン部分をそれぞれ異なる階調で生成する階調生成ステツプと、
上記階調生成ステツプで生成した異なる階調の上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分を合成することにより上記文字データを作成する文字データ作成ステツプと
を具えることを特徴とする文字データ作成方法。
【請求項２】
上記階調生成ステツプでは、上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分をグレースケールによつて表現する
ことを特徴とする請求項１に記載の文字データ作成方法。
【請求項３】
上記階調生成ステツプでは、上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分を色表現して修飾する
ことを特徴とする請求項１に記載の文字データ作成方法。
【請求項４】
デイスプレイに表示する文字データを作成する文字データ作成装置において、
アウトライン方式でなるアウトラインフオントデータを記憶部から読み出し、当該アウトラインフオントデータにおける細いフオント部分の内部だけを塗り潰す塗潰手段と、
上記フオント部分の内部だけが塗り潰されたイメージデータの周囲を囲む細いフオントでなるアウトライン部分及び当該アウトライン部分の周囲を囲む太いフオントでなる外側アウトライン部分を生成するアウトライン部分生成手段と、
上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分の境界で発生するちらつきを防止するために当該イメージデータ、当該アウトライン部分及び当該外側アウトライン部分をそれぞれ異なる階調で生成する階調生成手段と、
上記階調生成手段で生成した異なる階調の上記イメージデータ、上記アウトライン部分及び上記外側アウトライン部分を合成することにより上記文字データを作成する文字データ作成手段と
を具えることを特徴とする文字データ作成装置。
【発明の詳細な説明】
【０００１】
【目次】
以下の順序で本発明を説明する。
産業上の利用分野
従来の技術（図２）
発明が解決しようとする課題
課題を解決するための手段
作用
実施例（図１〜図３）
発明の効果
【０００２】
【産業上の利用分野】
本発明は表示データ作成方法に関し、例えばデイスプレイやプリンタ等の出力装置に対してアウトラインフオントデータを使用した文字や絵を出力する際に適用して好適なものである。
【０００３】
【従来の技術】
現在、コンピユータ上でフオントを格納する方法は、ビツトマツプ方式とアウトライン方式との２つの方式に大別することができる。ビツトマツプ方式は文字図形をドツトの集まりとして表現する簡便な格納法である。
【０００４】
他方、アウトライン方式は文字の輪郭を表すデータ点を、滑らかな曲線などで結んだ文字フオントで表現する格納法である。従つてアウトライン方式によつて出力されるアウトラインフオントは、フオントのデザインを、座標で示す幾つかの点とこれらの点を結ぶ輪郭線（アウトライン）とで表現した文字図形のことであり、フオントを点で表すドツトフオントに対して、拡大、縮小変形などの修飾容易なフオントである。輪郭線を直線で表現するベクトルフオントはその代表的なフオントの一種である。
【０００５】
例えばゴシツク体の漢数字「一」を生成する場合、まず文字輪郭の特徴点（座標点）を抽出し、各座標間を線で結んで内部を塗り潰すことによりフオントを完成させる。ここで各座標を曲線で補間する場合、どのうような曲線で近似するかは決まつていないが、スプライン曲線やベジエ曲線で補間することが多い。
【０００６】
このように座標間を線で結んだり、線で結ばれた内部を塗り潰すには演算処理が必要でありソフトウエアを用いている。しかしながらこのような方法では演算処理に多大な時間を要する。そこでアウトラインフオントを生成するＬＳＩ、すなわちアウトラインフオントジエネレータが開発され、ワードプロセツサやレーザプリンタ等のコンシユーマ商品で利用されるようになつた。
【０００７】
図２に示すようにアウトラインフオントジエネレータ４は前処理系１０及び後処理系１１から構成され、ユーザが指定した文字を生成するようにＣＰＵから指令を受けると、指定された文字についてのアウトラインフオントデータ（ベクトルデータ）をＲＯＭから読み出す。アウトラインフオントジエネレータ４はこのアウトラインフオントデータに対してまず前処理系１０で所定の処理をする。
【０００８】
すなわちアウトラインフオントデータをスケーリングによつて所望のサイズに拡大又は縮小した後、線幅を揃えたり、文字の太さを変えたりする（例えば細明朝体から太明朝体に変えたり、細ゴシツク体から太ゴシツク体に変えたりする）ことにより文字の品位を向上させる。これを補正処理（ヒント処理）と言うが、アウトラインフオントでは、ヒント情報と呼ぶ線幅補正用のデータを付加することで、小さい文字の表示品質を保持するようにしている。その後アウトラインフオントデータを必要に応じて傾けて文字の座標データを出力する。
【０００９】
このように前処理系１０において処理されたアウトラインフオントデータを後処理系１１で処理する。すなわち座標データに基づいて座標間を線又は曲線で補間することにより文字の輪郭を生成し、内部を塗潰す処理をする（後処理）。この結果得られた文字をプリンタに印刷する。
【００１０】
【発明が解決しようとする課題】
ところがアウトラインフオントジエネレータ４は基本的に２値のフオントを出力するだけなので、ほとんどの場合印字用としてしか使用されていない。従つてアウトラインフオントで描いた文書をデイスプレイ上に表示すると、走査線のため白（文字の背景色）と黒（文字自体の色）との境界部分がちらつき、ユーザの眼に非常に負担がかかるという問題がある。
【００１１】
またフオントを階調化することによつてちらつきを防止することができるが、階調フオントはそのフオント作成自体に工数がかかるため値段が高く、フオントサイズも大きいのでメモリ容量も大きくなければならないという問題がある。
【００１２】
さらに今後マルチメデイア時代の到来によつて、ペーパーメデイアをデイスプレイ上で再現するようなシステム、例えば新聞や雑誌等の情報を衛星放送のＢ−ＢＬＫを使つて配給し、各家庭のテレビモニタ上で文字列表示するような場合、一度拡大して、間引き処理を行いながら階調化しなければならないのでＣＰＵに多大な処理能力を必要とする問題がある。
【００１３】
本発明は以上の点を考慮してなされたもので、文字図形等のちらつきを防止することができる表示データ作成方法を提案しようとするものである。
【００１４】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、デイスプレイに表示する文字データを作成する場合、アウトライン方式でなるアウトラインフオントデータを記憶部から読み出し、当該アウトラインフオントデータにおける細いフオント部分の内部だけを塗り潰し、フオント部分の内部だけが塗り潰されたイメージデータの周囲を囲む細いフオントでなるアウトライン部分及び当該アウトライン部分の周囲を囲む太いフオントでなる外側アウトライン部分を生成し、イメージデータ、アウトライン部分及び外側アウトライン部分の境界で発生するちらつきを防止するために当該イメージデータ、当該アウトライン部分及び当該外側アウトライン部分をそれぞれ異なる階調で生成し、当該異なる階調のイメージデータ、アウトライン部分及び外側アウトライン部分を合成することにより文字データを作成するようにした。
【００１５】
【作用】
アウトラインフオントデータにおける細いフオント部分の内部だけを塗り潰したイメージデータ、当該イメージデータの周囲を囲む細いフオントでなるアウトライン部分及び当該アウトライン部分の周囲を囲む太いフオントでなる外側アウトライン部分の境界で発生するちらつきを防止するために、当該イメージデータ、当該アウトライン部分及び当該外側アウトライン部分をそれぞれ異なる階調で生成した後に合成することにより、フオントの太さ及び階調の段階的な違いによつて文字データとしてデイスプレイに表示されたときにちらつきが発生することを防止することができる。
【００１６】
【実施例】
以下図面について、本発明の一実施例を詳述する。
【００１７】
図１において１は全体として、コンピユータ装置を示し、中央処理装置（ＣＰＵ）２に収容されたシステムバス３に、アウトラインフオントを生成するためのアウトラインフオントジエネレータ４と、アウトラインフオントデータを格納しているＲＯＭ５と、ＤＲＡＭでなるワークバツフア６及びＤＲＡＭでなるイメージバツフア７によつて設定された文字等のビツトマツプデータ（イメージデータ）を格納してこれらの文字等をＣＰＵ２の指令によつてＣＲＴ８に出力するＶＲＡＭでなるフレームバツフア９とが接続されている。
【００１８】
アウトラインフオントジエネレータ４は、上述した図２に示すアウトラインフオントジエネレータと同じ構成及び機能を有する。すなわちユーザが指定した文字を生成するようにＣＰＵ２から指令を受けると、指定された文字についてのアウトラインフオントデータをＲＯＭ５から読み出し、前処理系１０及び後処理系１１において所定の手順で当該アウトラインフオントデータを処理する。この結果得られたビツトマツプデータ（イメージデータ）をフレームバツフア９へ転送する。
【００１９】
これに加え、この実施例においてアウトラインフオントジエネレータ４は、ＣＰＵ２からの指令によつて以下のような処理を行つて文字を階調化することができる。
【００２０】
アウトラインフオントジエネレータ４は、ダイレクト・メモリ・アクセス（ＤＭＡ）を用いてＲＯＭ５から、指定された文字についてのアウトラインフオントデータを読み出す（図３のステツプ（１））。
【００２１】
次にアウトラインフオントジエネレータ４に対して、細いフオントの内部だけをハツチング（塗潰し）させるパラメータを指定する（ステツプ（２））。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７にフオントの内部だけをハツチングしたイメージを生成する（ステツプ（３））。
【００２２】
細いフオントのハツチング部分を生成し終わると、このハツチングした第１のビツトマツプデータ（第１のイメージデータ）を黒でフレームバツフア９に転送する（ステツプ（４））。
【００２３】
次にアウトラインフオントジエネレータ４に対して、アウトラインを生成するためのパラメータを細いフオントになるように指定する（ステツプ（５））。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７に細いフオントのアウトライン（外郭）部分を生成する（ステツプ（６））。
【００２４】
フオントのアウトライン部分を生成し終わると、この第２のビツトマツプデータ（第２のイメージデータ）を濃い灰色でフレームバツフア９に転送する（ステツプ（７））。
【００２５】
次にアウトラインフオントジエネレータ４に対して、アウトラインを生成するためのパラメータを太いフオントになるように指定する（ステツプ（８））。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７に細いフオントのアウトライン（外郭）部分を生成する。（ステツプ（９））。
【００２６】
フオントのアウトライン部分を生成し終わると、この第３のビツトマツプデータ（第３のイメージデータ）を薄い灰色でフレームバツフア９に転送する（ステツプ（１０））。
【００２７】
以上の処理により、単に２値のアウトラインフオントを容易に階調化することができる。
【００２８】
以上の構成において、ユーザから指定された文字（例えば図４に示すようにゴシツク体の漢数字「一」）をＣＲＴ８に表示する場合、ＣＰＵ２からシステムバス３を介してアウトラインフオントジエネレータ４に文字生成の指令が送られる。これによりアウトラインフオントジエネレータ４は、ダイレクト・メモリ・アクセス（ＤＭＡ）用いてＲＯＭ５から、漢数字「一」についてのアウトラインフオントデータを読み出す。
【００２９】
次にアウトラインフオントジエネレータ４に対して細いフオント部分（図４（Ａ）の（１））の内部だけをハツチング（塗潰し）させるパラメータを指定する。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７に細いフオントの内部だけをハツチングしたイメージを生成する。
【００３０】
細いフオントのハツチング部分を生成し終わると、このハツチングした第１のビツトマツプデータ（第１のイメージデータ）を黒でフレームバツフア９に転送する。次にアウトラインフオントジエネレータ４に対して、黒で塗潰した第１のイメージの周囲を囲むアウトライン部分（図４（Ａ）の（２））を生成するためのパラメータを細いフオントになるように指定する。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７にフオントのアウトライン（外郭）部分を生成する（ステツプ（６））。
【００３１】
アウトライン部分の生成が完了すると、この第２のビツトマツプデータ（第２のイメージデータ）を濃い灰色でフレームバツフア９に転送する。ここでアウトラインフオントジエネレータ４は白黒２値のジエネレータであるので、灰色とかの色の指定はイメージバツフア７で指定される。また黒で塗潰した第１のイメージの外側に濃い灰色でなるイメージのアウトライン部分を生成する処理は、漢数字「一」がＣＲＴ８に表示されたときにちらつきが発生しないようにするためのグレースケール処理である。
【００３２】
次にアウトラインフオントジエネレータ４に対して、濃い灰色でなるのイメージのアウトライン部分の周囲を囲む最外側のアウトライン部分（図４（Ａ）の（３））を生成するためのパラメータを太いフオントになるように指定する。このパラメータに基づいてアウトラインフオントジエネレータ４はワークバツフア６を用いながら演算を行い、イメージバツフア７にフオントのアウトライン部分を生成する。
【００３３】
最外側のアウトライン部分の生成が完了すると、この第３のビツトマツプデータ（第３のイメージデータ）を薄い灰色でフレームバツフア９に転送する。ここで最外側のアウトライン部分の生成は、濃い灰色のイメージでなるアウトライン部分の外側に薄い灰色のイメージでなるアウトライン部分を生成することにより、漢数字「一」がＣＲＴ８に表示されたときにちらつきが発生しないようにするためのグレースケール処理である。
【００３４】
最後に、このようにして生成された第１、第２及び第３のビツトマツプデータ、すなわち黒で塗り潰した部分（図４（Ａ）の（１））、濃い灰色で生成したアウトライン部分（図４（Ａ）の（２））及び薄い灰色で生成した最外側のアウトライン部分（図４（Ａ）の（３））をフレームバツフア９で合成することにより、図４（Ａ）の（４）に示すような漢数字「一」を完成させ、これをＣＲＴ７の所定の位置に表示する。
【００３５】
このようにゴシツク体の漢数字「一」を白黒の２値で生成する過程で、黒、濃い灰色、薄い灰色と階調をつけたことにより、生成されたゴシツク体の漢数字「一」はＣＲＴ７に表示してもちらつきが生じにくい。図４（Ｂ）にゴシツク体の漢数字「一」をＣＲＴに表示したときのイメージを拡大して示す。
【００３６】
以上の構成によれば、アウトラインフオントデータをビツトマツプデータに展開する過程で、アウトラインフオントジエネレータ４からの出力をアウトライン部分の生成と塗り潰し部分の生成とに分割して階調化することにより、階調のあるアウトラインフオントを容易に生成することができる。これによりＣＲＴ８に表示したときでもちらつきが発生しにくいのでユーザの眼にかかる負担が格段的に軽減する。
【００３７】
またアウトライン部分を生成するときに階調化しているので、アウトライン部分を生成した後に階調化する場合に比べ処理する情報量が半減するため階調のあるアウトラインフオントを高速に生成することができる。さらに２値のアウトラインフオントを利用して階調のあるアウトラインフオントを作成しているので、メモリのサイズが小さくてすみ、フオント自体が階調フオントでないのでサイズが小さくてすむ等の利点がある。
【００３８】
なお上述の実施例においては、３つのビツトマツプデータを生成する場合について述べたが、本発明はこれに限らず、ビツトマツプデータを生成する数を増加又は減少させてもよい。
【００３９】
また上述の実施例においては、文字を表示する場合について述べたが、本発明はこれに限らず、図形等を表示する場合に適用してもよい。
【００４０】
さらに上述の実施例においては、塗潰し部分及び又はアウトライン部分をそれぞれ黒と灰色で修飾する場合について述べたが、本発明はこれに限らず、塗潰し部分及び又はアウトライン部分を色表現して修飾するようにしてもよい。
【００４１】
【発明の効果】
上述のように本発明によれば、アウトラインフオントデータにおける細いフオント部分の内部だけを塗り潰したイメージデータ、当該イメージデータの周囲を囲む細いフオントでなるアウトライン部分及び当該アウトライン部分の周囲を囲む太いフオントでなる外側アウトライン部分の境界で発生するちらつきを防止するために、当該イメージデータ、当該アウトライン部分及び当該外側アウトライン部分をそれぞれ異なる階調で生成した後に合成することにより、フオントの太さ及び階調の段階的な違いによつて文字データとしてデイスプレイに表示されたときにちらつきが発生することを防止し得る文字データ作成方法及び文字データ作成装置を実現できる。
【図面の簡単な説明】
【図１】アウトラインフオントジエネレータを有するコンピユータ装置を示すブロツク図である。
【図２】アウトラインフオントジエネレータの構成を示すブロツク図である。
【図３】階調フオントを生成するためのフローチヤートである。
【図４】ゴシツク体の漢数字「一」を構成する３つのビツトマツプデータ（Ａ）及び各ビツトマツプデータを合成して完成した漢数字「一」の表示イメージ（Ｂ）を示す略線図である。
【符号の説明】
１……コンピユータ装置、２……中央処理装置（ＣＰＵ）、３……システムバス、４……アウトラインフオントジエネレータ、５……ＲＯＭ、６……ワークバツフア、７……イメージバツフア、８……ＣＲＴ、９……フレームバツフア、１０……前処理系、１１……後処理系。
【図１】
0003573291.tif 000002
【図４】
0003573291.tif 000003
【図２】
0003573291.tif 000004
【図３】
0003573291.tif 000005