(57)【特許請求の範囲】
【請求項１】
情報処理装置の表示画面上で、背景色と文字色とが指定され、文字フォント・データからビットマップ・データに展開して、所定形状の文字表示領域の背景上にドット文字を表示する方法において、
背景色および文字色のうちドットが多い方を選択し、
選択された色を用いて、文字表示領域を塗り潰し、
背景色が選択されるときは、文字色を用いて、文字フォントのビットマップ・データに対応する位置を上書きし、
文字色が選択されるときは、背景色を用いて、文字フォントのビットマップ・データに対応する位置を残して上書きすることを特徴とする文字の表示方法。
【請求項２】
所定形状の文字表示領域が設定され、文字表示領域内で、背景色と文字色とが指定され、文字フォント・データからビットマップ・データに展開されるドット文字を表示する文字の表示装置において、
背景色および文字色のうちドットが多い方を選択する選択手段と、
選択手段によって、選択された色を用いて、文字表示領域を塗り潰し、
背景色が選択されるときは、文字色を用いて、文字フォントのビットマップ・データに対応する位置を上書きし、
文字色が選択されるときは、背景色を用いて、文字フォントのビットマップ・データに対応する位置を残して上書きするように描画する描画手段とを含むことを特徴とする文字の表示装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、各種の文字情報を画面に表示する文字の表示方法および装置に関する。
【０００２】
【従来の技術】
従来から、液晶表示装置（以下「ＬＣＤ」と略称する）などのドットマトリクスタイプの文字表示機能を有する装置では、文字フォント・データからビットマップ・データへ展開して文字の表示が行われている。陰極線管（ＣＲＴ）などのラスタスキャンタイプの表示装置でも、パーソナルコンピュータ、ワークステーション、ワードプロセッサなどの情報処理では、デジタルの画像信号を入力してドットマトリクスタイプの文字表示が行われている。
【０００３】
図９は、ドットマトリクスタイプの文字の描画イメージを（ａ）に、フォント・データを（ｂ）に、フォント・データを展開したビットマップ・データを（ｃ）にそれぞれ示す。通常、ドットマトリクス文字は、一定の形状の文字表示領域１内で、マトリクス状に配置されている複数の画素２によって表示される。複数の画素２の色を表示色３と背景色４とに分けると、図９（ａ）に示すように、たとえば「Ａ」の文字を表す表示が文字表示領域１内で行われる。図９では、８×８＝６４の画素２が８行８列で文字表示領域１が形成される。
【０００４】
図９（ｂ）に示すフォント・データは、合計８バイトで構成され、それぞれ１バイトが図９（ａ）に示す描画イメージの１行分の内容を表す。この場合、１行が８画素から構成されるので、１バイトを構成する８ビットの各ビットが各画素に対応する。ビットの値が「１」であるか「０」であるかによって、文字色であるか背景色であるかが決定される。図９（ｃ）は、図９（ｂ）で「０」または「１」となる位置が、背景色である「３」または文字色である「５」にそれぞれ変換され、ビットマップ・データが得られる状態を示す。
【０００５】
図１０は、（ｂ）に示すようなフォント・データから図９（ｃ）に示すようなビットマップ・データへの展開処理のアルゴリズムを示す。ステップａ１から処理を開始し、ステップａ２では、図９（ａ）の文字表示領域１内で１つ選択される画素に対応するフォント・データが何であるかを判断する。フォント・データが「１」であると判断されるときには、ステップａ３に移る。フォント・データが「１」でないと判断されるときには、他のフォント・データは「０」であるので、ステップａ４に移る。ステップａ３では、ビットマップ・データとして文字色を表す「５」を選択する。ステップａ４では、ビットマップ・データとして背景色を表す「３」を選択する。ステップａ３またはステップａ４が終了すると、ステップａ５に移り、次のドット位置についての処理を行う。なおステップａ６では、全ドットの展開が終了しているか否かを判断する。展開していないと判断されるときには、ステップａ２に戻る。ステップａ６で、全ドットの展開を終了していると判断されるときには、ステップａ７で処理を終了する。
【０００６】
【発明が解決しようとする課題】
図９に示すような文字の表示を、図１０に示すようなアルゴリズムに従って行うと、文字を構成する全ドットを展開して背景色または文字色の描画を行う必要がある。一般に文字は１字だけではなく、複数の字数がまとめて表示される。また、限られた表示画面に多くの内容を表示するためには、時間的に表示内容を変えながら表示を行う必要もある。したがって、文字の描画に要する時間が長いと、文字を有効に表示する時間が相対的に減少し、文字の表示による情報伝達を円滑に行うことができなくなってしまう。このため、文字の描画に要する時間の短縮が望まれている。
【０００７】
本発明の目的は、文字フォント・データからビットマップ・データへの展開を高速に行って、文字の描画時間を短縮することができる文字の表示方法および装置を提供することである。
【００１２】
【課題を解決するための手段】
本発明は、情報処理装置の表示画面上で、背景色と文字色とが指定され、文字フォント・データからビットマップ・データに展開して、所定形状の文字表示領域の背景上にドット文字を表示する方法において、
背景色および文字色のうちドットが多い方を選択し、
選択された色を用いて、文字表示領域を塗り潰し、
背景色が選択されるときは、文字色を用いて、文字フォントのビットマップ・データに対応する位置を上書きし、
文字色が選択されるときは、背景色を用いて、文字フォントのビットマップ・データに対応する位置を残して上書きすることを特徴とする文字の表示方法である。
【００１３】
本発明に従えば、文字をフォント・データからビットマップ・データに展開して描画する際に、背景色および文字色のうちドットが多い方を選択し、選択された色で文字表示領域を塗り潰しておいて、他の色で文字フォントのビットマップ・データに対応する位置、あるいはその位置を除いて上書きするので、全ドットを展開して背景色と文字色とに分ける必要はなく、処理時間の短縮を図ることができる。さらに、文字のビットマップ・データとして表示される位置か背景として表示される位置のいずれかが多いかに従い、多い方を選択して文字表示領域の塗り潰しを行うので、文字表示のための描画時間を一層短縮することができる。
【００２０】
さらに本発明は、所定形状の文字表示領域が設定され、文字表示領域内で、背景色と文字色とが指定され、文字フォント・データからビットマップ・データに展開されるドット文字を表示する文字の表示装置において、
背景色および文字色のうちドットが多い方を選択する選択手段と、
選択手段によって、選択された色を用いて、文字表示領域を塗り潰し、
背景色が選択されるときは、文字色を用いて、文字フォントのビットマップ・データに対応する位置を上書きし、
文字色が選択されるときは、背景色を用いて、文字フォントのビットマップ・データに対応する位置を残して上書きするように描画する描画手段とを含むことを特徴とする文字の表示装置である。
【００２１】
本発明に従えば、選択手段で、背景色および文字色のうちドットが多い方を選択し、描画手段が選択手段によって背景色が選択されているときには文字色を用いて、文字フォントのビットマップ・データに対応する位置を上書きし、選択手段によって文字色が選択されているときは、背景色を用いて文字フォントのビットマップ・データに対応する位置を残して上書きするので、文字フォント・データからビットマップ・データに全ドットを展開する必要がなく、文字の描画に要する処理時間を短縮することができる。さらに、ビットマップ・データとして表示すべきドットの数と背景となるドットの数とを比較し、数が多い方で文字表示領域の塗り潰しを行っておくので、文字の描画に要する処理時間の一層の短縮を図ることができる。
【００２２】
【発明の実施の形態】
図１は本発明の各実施形態を実行し得る文字放送受信機１０の概略的な電気的構成を示す。文字放送受信機１０は、チューナ１１によって、たとえばＦＭ多重放送として送信されている文字放送を受信する。チューナ１１が受信した文字放送で文字データを表す信号は、デコーダ１２によって文字コードにデコードされる。ＣＰＵ１３は、ＲＯＭ１４に予め設定されているプログラムに従って、デコーダ１２から出力される文字コードを画面に表示するための処理を行う。文字コードに対応するフォント・データは、キャラクタジェネレータ（以下「ＣＧ」と略称する）１５に予め格納されている。ＣＰＵ１３は、デコーダ１２から出力される文字コードに対応するフォント・データを、ＣＧ１５から読出し、ＲＡＭ１６にビットマップ・データとして展開する描画処理を行う。ＲＡＭ１６に描画されたビットマップ・データは、ＤＭＡ動作などでコントローラ１７によって読取られ、ＶＲＡＭ１８に転送される。ＶＲＡＭ１８に転送されたビットマップ・データは、各ドット位置の色コードを、パレットレジスタ１９に設定される実際の色コードに変換して、ＬＣＤなどの表示装置２０で表示される。パレットレジスタ１９には、たとえば図９に示す背景色「３」や文字色「５」に対応する実際の色を表すコードをそれぞれ設定することができる。すなわち、背景色や文字色を表すコードは変えなくても、実際の表示色はパレットレジスタ１９での対応関係を変更することによって、変更して表示させることができる。
【００２３】
図２は、本発明の実施の一形態としての文字の表示のアルゴリズムを示す。ステップｂ１で手順を開始し、ステップｂ２では、図９（ｃ）に示すようなビットマップ・データを全て背景色である「３」に塗り潰す処理を行う。ステップｂ３では、図９（ｂ）に示すようなフォント・データを１ドット分ずつ順に読取り、「１」であるか「０」であるかを判断する。フォント・データが「１」であると判断されるときには、ステップｂ４で、対応するドット位置のビットマップ・データに文字色である「５」を設定する。ステップｂ３でフォント・データが「０」であると判断されるとき、またはステップｂ４の処理が終了すると、ステップｂ５で、ドット位置を次に移動させる。ステップｂ６では、全ドットの展開が終了しているか否かを判断する。終了していないと判断されるときにはステップｂ３に戻る。ステップｂ６で全ドットの展開が終了していると判断されるときには、ステップｂ７で１つの文字に対する描画の処理を終了する。
【００２４】
図２に示す本実施形態のアルゴリズムと、図１０に示す従来のアルゴリズムとを比較すると、図２のステップｂ２、ステップｂ３およびステップｂ４の部分と、図１０のステップａ２、ステップａ３、ステップａ４の部分とが異なり、他の部分は実質的に同等であることが判る。本実施形態と従来の方法との処理時間を比較するためには、ＣＰＵ１３が実際に動作するアセンブラのプログラムでの比較が必要となる。しかも、アセンブラプログラムを構成するための命令は、ＣＰＵ１３の有する構造や命令セットに依存する。そこで比較のため、ＣＰＵ１３として、縮小命令セット（ＲＩＳＣ）型のＣＰＵを想定し、アキュムレータとして使用可能なレジスタは１つであり、各命令を実行する時間は等しいと仮定する。
【００２５】
図３は、図２の手順の一部をＣ言語風に記述したソースプログラムとして示す。図３（ａ）は、図２のステップｂ２に対応する部分を示す。図３（ｂ）は、図２のステップｂ３およびステップｂ４に対応する部分を示す。図９（ａ）に示すような文字表示領域を、たとえば横ｍドット縦ｎドットとし、文字表示領域の基準点たとえば左上の位置の画素の座標を（Ｘ，Ｙ）で表す。ＣＰＵ１３のレジスタは、レジスタ変数ａで表す。ステップｂ２の処理では、まずレジスタ変数ａに背景色である「３」の値を代入し、次にレジスタ変数ａを、（Ｘ，Ｙ）の位置を基準とする各ドットにストアする処理を行う。図２のステップｂ３の処理は、レジスタ変数ａに、図９（ｂ）に示すようなフォント・データの（ｉ，ｊ）の位置のデータを読込む。ただし０≦ｉ≦ｍ−１、および０≦ｊ≦ｎ−１である。フォント・データを読込んだレジスタ変数ａの値が１であれば、レジスタ変数ａに文字色「５」を読込み、ビットマップ・データの（Ｘ＋ｉ，Ｙ＋ｊ）の位置のドットにレジスタ変数ａの値をストアする。レジスタ変数ａの値が１でなければ、次のドット位置に移る。ただし、「＊（Ｘ＋０，Ｙ＋０）＝ａ」等の記載は、（Ｘ＋０，Ｙ＋０）の位置の画素に対応するＲＡＭのアドレスに、レジスタ変数ａの値をストアすることを意味するものとする。
【００２６】
図４は、従来の図１０に従うアルゴリズムで、ステップａ２からステップａ４までに対応する部分のＣ言語によるプログラムソースを示す。まず図９（ｂ）に示すようなフォント・データから（ｉ，ｊ）の位置のデータをレジスタ変数ａに読込み、その値が１であるか否かを判断し、１であればレジスタ変数ａに文字色「５」を読込んでビットマップ・データの対応する位置にストアする点は、図３（ｂ）と同等である。しかしながら、レジスタ変数ａの値が１でないときには、「ｅｌｓｅ」以下に記述されるレジスタ変数ａに背景色「３」をロードする処理に入る。実際には、Ｃ言語からマシン語に変換するコンパイラで、レジスタ変数ａに文字色「５」を代入する処理の後、レジスタ変数ａに背景色「３」を代入するステップを跳越すジャンプ命令が挿入される。
【００２７】
次の表１は、図３に示すような本発明と図４に示すような従来法とで、ロード命令、ストア命令およびジャンプ命令の数の違いを示す。ただしαの値は、ビットマップ・データで文字として表示されるドット数を示す。本発明では、ステップｂ２で図３（ａ）に示すように１回背景色をレジスタ変数ａにロードし、ステップｂ４でα回背景色「５」をレジスタ変数ａにロードする。ステップｂ２では、ｍ×ｎ回レジスタ変数ａを各ドット位置にストアする命令を実行する。ステップｂ４では、合計α回のストア命令が実行される。本発明では、コンパイラによってジャンプ命令を挿入する必要はない。一方、図１０に示すアルゴリズムでは、ステップａ２の条件の成立あるいは不成立に拘わらず、ステップｂ３またはステップｂ４で合計ｍ×ｎ回のレジスタ変数ａに対する背景色または表示色のロードが行われる。同様に、レジスタ変数ａの各ビットマップ・データのドット位置へのストアもｍ×ｎ回行われる。さらに、図４で説明したように、コンパイラが挿入するジャンプ命令がα回実行される。
【００２８】
【表１】
0004536852.tif 000002
【００２９】
表１の合計で比較すると、α＜ｍ×ｎ−１であるときに、本発明のアルゴリズムの方が図１０に示す従来のアルゴリズムよりも処理時間を短縮することができる。すなわち、背景の部分と文字のフォント・データの部分とが両方存在している限り、本実施形態の方が従来のアルゴリズムよりも描画処理を迅速に行うことができる。特に、背景色のドットが多い文字であれば、αの値が小さくなり、全体の処理時間を一層短くすることができる。
【００３０】
図５は、本発明の実施の他の形態として、最初にビットマップ・データを全て文字色で塗り潰し、背景色のドットのみ上書きして書換えるアルゴリズムを示す。ステップｃ１から手順を開始し、ステップｃ２では、ビットマップ・データを全て文字色である「５」にして文字表示領域の塗り潰しを行う。ステップｃ３では、フォント・データを１ドット分ずつ読取り、「１」であるか「０」であるかを判断する。フォント・データが「０」であると判断されるときには、ステップｃ４で、ビットマップ・データで対応するドットの位置に背景色「３」をストアする。ステップｃ３で、フォント・データが「１」であると判断されるとき、またはステップｃ４が終了すると、ステップｃ５で次のドット位置に移る。ステップｃ６では、全ドットの展開が終了しているか否かを判断し、終了していないと判断されるときには、ステップｃ３に戻る。ステップｃ６で全ドットの展開が終了と判断されるときには、ステップｃ７で手順を終了する。
【００３１】
本実施形態は、図２に示す実施形態のアルゴリズムと実質的には同等なアルゴリズムであり、背景色と文字色とを入換えて処理を行う。文字色のドットが多い文字であれば、背景色での上書きの回数が少なくなるので、全体の処理時間を短くすることができる。
【００３２】
図６は、本発明の実施のさらに他の形態としての処理手順を示す。ステップｄ１から手順を開始し、ステップｄ２では、文字コードの判断を行う。文字コードが８ビットで表される。ＡＳＣＩＩコードや、ＪＩＳコードの英数カナ等であれば、ステップｄ３で、背景色塗り潰しで文字色上書きの描画処理を行う。ステップｄ２で文字コードがＡＳＣＩＩや英数カナと異なると判断されるときには、ステップｄ４で図５に示す実施形態と同様に文字色で塗り潰し、背景色で上書きする描画処理を行う。ステップｄ３またはステップｄ４の処理が終了すると、ステップｄ５で全体の手順も終了する。本実施形態では、文字色ドットが少ない文字を、ＡＳＣＩＩコードや、ＪＩＳコードの英数カナを表すコードに基づいて判断し、描画に要する処理時間の一層の短縮を図ることができる。
【００３３】
図７は、本発明の実施のさらに他の形態として、文字色ドットが多い文字を選択して処理を行う手順を示す。ステップｅ１から手順を開始し、ステップｅ２では、文字コードを判断する。文字コードがＪＩＳコードで、漢字を表すコードであったり、特に第２水準の文字を表すコードであったりするときには、ステップｅ３で、図５の実施形態と同様の文字色塗り潰しで背景色上書きの描画処理を選択する。ステップｅ２で、文字コードが他のコードであると判断されるときには、ステップｅ５で、図２の実施形態と同様の背景色塗り潰しで文字色上書きの描画処理手順を選択する。ステップｅ３またはステップｅ４の処理が終了すると、ステップｅ５で全体の手順を終了する。
【００３４】
図６や図７と同様の処理の使い分けは、製品としての向け先に応じて行うこともできる。たとえば図１に示すような文字放送受信機１０では、日本国内向けでは、ＦＭ多重放送の機能を表示する機会が多いので、図５の実施形態と同様に、表示色で塗り潰し、背景色を上書きする描画処理を選択する。海外向けの製品では、英数字のみが表示に使用されるので、図２の実施形態と同様に背景色で塗り潰し、文字色で上書きする描画処理の手順を選択する。製品として、国内と海外共通のプログラムを使用する場合には、出荷先に応じて切換えるスイッチ等の切換え状態で向け先を検出し、自動的に図２に示すような描画処理か図５に示すような描画処理かを切換えるようにすることもできる。また製品としては、図１に示すような文字放送受信機１０ばかりではなく、パーソナルコンピュータやワードプロセッサ、あるいはナビゲーション装置などで本発明を実施することができる。パーソナルコンピュータなどでは、オペレーティングシステムの機能として、本発明を実行させることもできる。
【００３５】
図８は、本発明で表示可能な文字表示領域の他の例を示す。この文字表示領域２１は、横１６ドット縦１６ドットの画素２２によって構成され、文字色２３および背景色２４で描画イメージを表現する。なお、複数の文字を連続した文字表示領域２１に描画するときには、連続した文字表示領域２１を全体として先に塗り潰し、後から書く文字表示領域２１の部分にそれぞれ文字コードに応じた上書きを行うようにすることもできる。
【００３８】
【発明の効果】
以上のように本発明によれば、文字の描画の際に、文字のフォント・データからビットマップ・データに全ドットを展開して背景色または表示色で描画を行う必要はなく、背景色および文字色のうちドットが多い方を選択して文字表示領域の塗り潰しを行い、他方を用いて上書きを行えばよいので、全ドットを展開して背景色または文字色で描画する場合に比較して処理時間を短縮することができる。また、文字色のドットが多い文字であれば、背景色での上書きの回数が少なくなるので、全体の処理時間を短くすることができる。
【００４２】
また本発明によれば、選択手段で選択される背景色および文字色のうちドットが多い方で、描画手段は文字表示領域の塗り潰しを行い、他方で文字のフォント・データの位置またはフォント・データの位置を除く上書きを行うので、文字のフォント・データを全ビット、ドット毎に文字色または背景色に展開して描画するよりも迅速な文字の表示を行うことができる。また、文字色のドットが多い文字であれば、背景色での上書きの回数が少なくなるので、全体の処理時間を短くすることができる。
【図面の簡単な説明】
【図１】本発明の実施の各形態を適用して文字の表示を行う文字放送受信機１０の概略的な電気的構成を示すブロック図である。
【図２】本発明の実施の一形態での文字表示のアルゴリズムを示すフローチャートである。
【図３】図２のアルゴリズムの一部を展開したソースプログラムを示すプログラムリストである。
【図４】図１０に示す従来のアルゴリズムに対応する部分的なプログラムリストである。
【図５】本発明の実施の他の形態としての文字表示のアルゴリズムを示すフローチャートである。
【図６】本発明の実施のさらに他の形態として文字表示のアルゴリズムを選択する手順を示すフローチャートである。
【図７】本発明の実施のさらに他の形態として文字表示のアルゴリズムを選択する手順を示すフローチャートである。
【図８】本発明の実施の対象となる文字表示領域２１の例を示す図である。
【図９】文字表示における描画イメージ、フォント・データおよびビットマップ・データの関係を示す図である。
【図１０】従来の文字表示のアルゴリズムを示すフローチャートである。
【符号の説明】
１０  文字放送受信機
１３  ＣＰＵ
１４  ＲＯＭ
１５  ＣＧ
１６  ＲＡＭ
１７  コントローラ
１８  ＶＲＡＭ
１９  パレットレジスタ
２０  表示装置
２１  文字表示領域
２２  画素
２３  文字色
２４  背景色
【図１】
0004536852.tif 000003
【図２】
0004536852.tif 000004
【図３】
0004536852.tif 000005
【図４】
0004536852.tif 000006
【図５】
0004536852.tif 000007
【図６】
0004536852.tif 000008
【図７】
0004536852.tif 000009
【図８】
0004536852.tif 000010
【図９】
0004536852.tif 000011
【図１０】
0004536852.tif 000012