Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3715917B2 - Typeface data management method and apparatus - Google Patents
[go: Go Back, main page]

JP3715917B2 - Typeface data management method and apparatus - Google Patents

Typeface data management method and apparatus Download PDF

Info

Publication number
JP3715917B2
JP3715917B2 JP2001376387A JP2001376387A JP3715917B2 JP 3715917 B2 JP3715917 B2 JP 3715917B2 JP 2001376387 A JP2001376387 A JP 2001376387A JP 2001376387 A JP2001376387 A JP 2001376387A JP 3715917 B2 JP3715917 B2 JP 3715917B2
Authority
JP
Japan
Prior art keywords
typeface
data
file
information
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001376387A
Other languages
Japanese (ja)
Other versions
JP2002245032A (en
Inventor
哲夫 酒井
安彦 佐々木
裕成 山口
正樹 柏木
健二 石黒
守 長田
浩 松木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2001376387A priority Critical patent/JP3715917B2/en
Publication of JP2002245032A publication Critical patent/JP2002245032A/en
Application granted granted Critical
Publication of JP3715917B2 publication Critical patent/JP3715917B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【0001】
【産業上の利用分野】
本発明は書体データ管理方法及び装置、例えばパーソナルコンピュータ、ワードプロセッサやデスクトップパブリッシング装置等で使用される各種書体のデータファイルを管理する書体データ管理方法及び装置に関するものである。
【0002】
【従来の技術】
従来、文字処理システムにおいて管理される書体データは、管理の容易さなどの理由から、一つのファイル中に書体単位で全文字のデータを格納していた。
【0003】
【発明が解決しようとする課題】
前述の従来方法による書体データ管理方法では、以下に示す問題が有る。
【0004】
あらかじめ書体データの全てがファイル中に格納されており、例えば、インストールの対象はあくまでも書体単位での選択しかなかった。このため一般的に使用されることがあまりない書体データまでも同時にインストールされてしまい、ディスクメモリを圧迫する結果となっていた。
【0005】
【課題を解決するための手段】
本発明はかかる従来技術に鑑み成されたものであり、柔軟性のある書体データの管理方法及び装置を提供しようとするものである。
【0006】
このため、例えば本発明の1つの書体データ管理方法は以下に示す行程を備える。
【0007】
要求された文字に関するデータを書体データファイルから取り出すための書体データ管理方法において、
第1書体における、各々が連続するコードからなる部分コード空間のうち、何れの部分コード空間に対応する書体データファイルを、第2書体と共通に使用するようにする書体管理情報を保持し、
第1書体におけるコードを含む文字要求があった場合に、前記書体管理情報に基づき前記何れの部分コード空間の範囲に対応していれば、前記共通に使用する書体データファイルから書体データを獲得することを特徴とする。
【0008】
【発明の実施の形態】
以下、図面を参照し、本願発明について詳細に説明する。
【0009】
まず、パーソナルコンピュータ等の文字データを扱うシステムが、文字の表示或は印字を行う際に、書体データを獲得するまでの動きを簡単に説明する。
【0010】
図1はこれら上記のシステムが動作するための基本的な構成を示すブロック図である。
【0011】
図1において、101はCPU、即ち中央処理装置であり、上記システム全体の起動及び演算処理等を行うものである。102は読み出し専用メモリ(ROM)であり、システム起動プログラム(ブートプログラム)及び文字パターン・データ等の記憶領域である。103はランダムアクセスメモリ(RAM)であって、システムプログラム、各種アプリケーションプログラムや、文字パターン発生のためのドライバプログラム等がロードされると共に、各種データの一時的に記憶に用いられる。後述するフローチャートに係るプログラムも勿論、このRAM103にロードされて実行される。104はキーボード制御部(KBC)であり、105のキーボード(KB)よりキー入力データを受け取り、CPU101へ伝達する。106はディスプレイ装置(CRT)107の制御を行うCRT制御部(CRTC)である。109はフロッピーディスク装置(FD)やハードディスク装置(HD)等の外部記憶装置であって、これらにシステムプログラムやアプリケーションプログラムをはじめとする各種プログラムやフォントデータが格納されている。プログラムの実行時には、これら外部記憶装置109に記憶されたプログラムがRAM103にロードされてCPU101により実行されることになる。110はプリンタ制御部(PRTC)であり、111はPRTC110の制御の下で、送出されてきたデータに基づく可視画像を記録紙上に形成するプリンタ(PRT)である。112はシステムバスであり、上述の構成要素間のデータの通路となるべきものである。
【0012】
図2はRAM103のメモリマップを示した図である。201はシステムがロードされるシステム領域であり、202は文字展開処理部がロードされる領域であり、203は文字展開処理部がビットパターンデータを格納する領域である。204は文字展開処理時において、109の外部記憶装置上に格納されているベクトルパターンデータを参照するために読み込む領域である。205は前記システムが動作するための管理情報テーブルを生成するための領域である。206は書体ベクトルデータのキャッシュ領域である。
【0013】
図3は前記文字データを扱うシステムの構成を表す図である。
【0014】
図3において、301,302,303は、図1における外部記憶領域109に記憶されている様々な書体データを表している。外部記憶装置109に記憶される書体データの種類及びその数は実質的に制限はない。
【0015】
304はシステム制御部を示し、図2における201,204,205が含まれる。305,306は文字展開処理部、即ちラスタライザを示し、その文字展開処理機能をソフトウェアのみで実現されていても良く、ハードウェアによって実現されていても良く、ハードウェアとソフトウェアの双方を用いても構わない。また前記システム中に含まれるラスタライザの数は、少なくとも1つ含まれていればその他の制限はない。307はシステムに対して文字取得要求を発行するアプリケーション部(例えばワードプロセッサ等のプログラム)を表す。
【0016】
図3において、アプリケーション部307は文字取得要求を発する。文字取得要求は、取得する文字を確定するために、文字と1対1に対応した文字コードと書体情報を用いて行う。要求された文字データを取得するためにシステム制御部304は書体データ301,302,303から必要なデータを獲得する。獲得したデータがアウトラインフォントを構成する輪郭ベクトルデータであれば、ラスタライザ305,306にデータを転送する。また、獲得したデータがビットパターンデータであればそのままアプリケーション部307へそれを転送する。ラスタライザ305,306では、受け取った輪郭ベクトルデータをビットパターンへ展開し、それをシステム制御部304へ送り返す。システム制御部は304がラスタライザ305,306より受け取ったビットパターンデータをアプリケーション部307へ送り返す。
【0017】
次に、以上の説明を踏まえ、実施形態について詳細に説明する。
【0018】
本実施形態は書体データファイル分割し、必要な部分のみをインストールすることで書体データの獲得を可能とすることを目的としており、その分割方法について、図4を用いて簡単に説明する。
【0019】
図4は分割ファイルの構成を簡単に表したものである。尚、説明を簡単にするため、書体Aは文字コード0〜600で1つの書体を構成するものとする。
【0020】
この書体Aを0〜100のA1、101〜199のA2、200〜500のA3、501〜600の4つの部分に分割したものとする。この書体Aにおいて、A3部分は、一般的に使用されることのないデータであり、かつ最もディスクメモリを必要とする部分である。
【0021】
これらの分割された書体情報を書体インストール時に示し、インストールすべき部分をユーザの手(キーボード)によって選択させる。選択された結果、必要とされる部分のみのインストールを行い、図5Aに示されるインストールされた結果の書体の内訳を記述した書体情報ファイル500を外部記憶装置109上に作成する。尚、図5Bにインストールされた書体ファイルの結果状況を示す。
【0022】
システム立ち上げ時に、書体情報ファイル500より情報を読み取り、その書体情報ファイル内からインストールされた書体の内訳を示す情報を取り出し、図6に示すような書体管理情報テーブルを書体情報管理領域205上に作成する。
【0023】
書体管理情報テーブル作成の流れを図7を用いて説明する。尚、同図は本システムに電源が投入された場合の初期処理中における書体に関する処理であり、そお処理手順は外部記憶装置109に格納されている。
【0024】
先ず、ステップS702で書体情報ファイルをオープンし、次のステップS703で、そのオープンした書体情報ファイルより書体名の情報の獲得を行い、書体名の情報を書体管理情報テーブルへ書き込む。
【0025】
ステップS704においては、書体情報ファイルよりファイル名の獲得を行い、ファイル名の情報を書体管理情報テーブルへ書き込む。そして、ステップS705においては、先に獲得した書体のファイル名を元に、アクセス可能状態とするためのそのファイルオープン処理を行う。ステップS706においては、ステップS705においてアクセス可能となった書体ファイルより、そのファイルに格納されている書体データの開始コード、終了コードに関する情報を読み取り、書体管理情報テーブルへ書き込む。
【0026】
処理がステップS707においては、書体情報ファイル内の記述に同一書体のファイルがまだ存在するかを調べ、存在する場合にはステップS704に戻り、次のファイル名の獲得とテーブルの更新処理を行う。
【0027】
また、ステップS707で同一書体のファイルが存在しないと判断した場合には、ステップS708へ進み、書体管理ファイル内に未処理の書体が存在するかを調べ、存在する場合はS703に戻って次の書体に対する処理を行う。また、全ての書体に対するテーブルの作成が完了したと判断したら、ステップS709に進んで、先のステップS702においてオープン処理を行った書体情報ファイルをクローズし、本処理を終える。
【0028】
以上の処理によって、書体情報管理領域205には例えば図6に示すような書体管理情報テーブルが作成されることになる。
【0029】
次に、図6の書体管理情報テーブルを用いて、必要とする書体データを獲得するまでの流れを、図8のフローチャートに従って説明する。
【0030】
ステップS801において、文字データ取得処理を開始する。
【0031】
ステップS802においては、図3におけるAP部307より取得する文字に関する情報(文字コード,書体情報)を取得する。次のステップS803においては、図6の書体管理情報テーブルの先頭の書体検索し(初期段階ではポインタはテーブル中の先頭書体を指し示している)、対応する書体であるかチェックを行う。存在する場合はステップS804へ、存在しない場合はステップS805へ進む。
【0032】
対応する書体でないと判断し、処理がステップS805に進むと、他の書体が存在するかどうかを判断し、他の書体があればそこにポインタを進める。
【0033】
また、対応する書体が捜し出せ、処理がステップS804に進むと、書体管理情報テーブル上に要求された文字コードがその管理されている範囲内にあるかどうか、換言すればその文字コードが管理されているかどうかを判断する。この時点でのポインタは図6の先頭位置に置かれているので、要求された文字コードが“0”から“100”の範囲内であるかどうかを判断することになる。
【0034】
さて、存在しないと判断された場合には、ステップS806に進み、テーブル内の注目行の次の行に同じ書体のファイルが管理されているかどうかを判断する。もしあれば、ポインタを1つ進め、ステップS804に戻る。また、次のファイルが存在しないと判断した場合には、文字無し処理を行う。
【0035】
一方、要求された書体の文字コードが管理されていると判断した場合には、ステップS807に進み、書体管理情報テーブル内の注目行からファイル名を獲得し、ステップS808において、その獲得したファイル名を元に、そのファイルから書体データを獲得し、終了処理S810へ進む。
【0036】
以上説明したように本実施形態によれば、必要な書体の必要な文字コード範囲のみをシステムにインストールできるので、外部記憶装置109のメモリ消費量を抑えることができると共に、不要な部分の管理は行わないので処理速度を上げることも可能になる。
【0037】
<第2の実施形態の説明>
上記実施形態(第1の実施形態)では、例えば書体管理情報テーブルが図6に示すようになっている場合、アプリケーション部から書体Aの文字コード“501”の文字取得要求があったときには、図8におけるステップS804、ステップS806を3回ループすることになる。文字コード“501”から“600”までに対する文字取得要求の頻度が全体の要求に対してさほど高くない場合には問題がないが、その頻度が他の文字コードに対して多い場合には処理速度の低下は避けられない。
【0038】
そこで本第2の実施形態では、文字取得要求の発生頻度を計数し、次回の起動時の書体管理情報テーブル作成に反映させるものである。
【0039】
尚、本第2の実施形態におけるシステム構成も図1に示すものとする。これは後述する第3の実施形態以降についても同様である。また、本第2の実施形態では、書体データを外部記憶装置109にインストールする場合に、図4に示した全ての範囲の書体データA1〜A4を指定した場合を説明する。また、図8のフローチャートに係るプログラムは当然のことながら外部記憶装置109に記憶されているものである。この点も後述する各実施形態についても同様である。
【0040】
図9は第2の実施形態において作成された書体管理テーブルの初期状態を示している。第1の実施形態の図6との違いは、同一書体における個々のコード範囲のアクセス回数を記憶保持する欄が設けられた点である。書体管理情報テーブル自身を作成する手順は第1の実施形態と同様であるので、ここでの説明は省略し、文字データ取得処理を図10に従って説明する。
【0041】
図10のフローチャートと第1の実施形態における図8との相違点は、ステップS807がステップS807’となり、ステップS811が追加された点である。
【0042】
図示において、書体管理テーブルはアプリケーション部から文字データ取得要求があって、要求された文字データが管理テーブルで管理されている場合、処理はステップS804からステップS807’に進むのは同じである。ステップS807に処理が進むと、書体管理情報テーブルからファイル名を獲得すると共に、書体管理情報テーブルの該当するアクセス欄の数値を“1”インクメントする。そして、ステップS808において、その獲得したファイル名を元に、そのファイルから書体データを獲得し、終了処理S811へ進む。
【0043】
この結果、例えば書体管理情報テーブルは図11に示すようになる。
【0044】
ステップS811では、書体管理ファイル内に記憶されている順序を、その時点での管理テーブル内のアクセス回数で並べ変える処理を行い、本処理を終える。
【0045】
例えば、書体管理情報テーブルが図11に示す状態にあった場合、書体Aに関してはファイルのアクセス回数がA4>A3>A2>A1であるので、書体情報ファイルの中身は図12に示すようにその順序が変更される。
【0046】
装置起動時には、書体情報ファイルに記憶された順序に従ってテーブルを作成するから、次回の起動時の書体管理情報テーブルは図13に示すようになる。すなわち、書体AにおけるファイルA4が一番最初に位置することになり、文字データ所取得要求に対するアクセス速度の向上が望める。
【0047】
尚、第2の実施形態では、文字データ取得要求が発生する度に、書体情報ファイルを更新したが、システムの電源断処理時に行うことで、処理速度をより高速化することが可能になる。
【0048】
また、システム電源断処理において、各書体を構成している部分ファイル(A1〜A4)のアクセス回数も適当なファイルとして保存し、次回のシステム起動時にそのファイルからアクセス回数を取得し、それでもってテーブル内の順序を決定するようにしても良い。
【0049】
以上説明した様に本第2の実施形態によれば、アクセス回数の多い文字コード範囲ほど優先して書体情報管理テーブルの先頭に配置するので、文字パターン発生にかかる全体のコストパフォーマンスを高めることが可能になる。
【0050】
<第3の実施形態の説明>
次に第3の実施形態を説明する。本第3の実施形態では、複数の書体のうちユーザが指定したコード範囲を他の書体で置き換えるものである。
【0051】
図14は本第3の実施形態における分割ファイルの構成を示している。先の第1の実施形態における図4のそれと異なる点は複数の書体が分割されていることである。尚、図示において、A1〜A3、B1〜B3及びC2はそれぞれファイル名を示している。
【0052】
本第3の実施形態では、例えば書体Aにおける文字コード“101”〜“199”の範囲は書体Cのそれを従属させ、例えばアプリケーションから書体Aの文字コード101の文字データの要求が来たら、ファイルC2(実は書体C)からデータを取り出し、処理するものである。
【0053】
これによれば、例えば、アルファベット、数字、平かな、カタカナ、漢字等が1つの“書体名”を使いながら、上記文字の種別毎に所望とする書体のパターンを発生することが可能になる。また、場合によっては、例えば書体A全体がアウトラインフォントで、書体Cがドットパターンである場合には、特定の部分を高速に処理することが可能にもなる。
【0054】
さて、本第3の実施形態における書体情報ファイルの内容例を図15に示す。この書体情報ファイルの作成は、ユーザが自由に作成しても良く、システムが自動的に作成しても良い。或いは、上記第1の実施形態で示したように、書体データを本システムにインストールする段階で、ユーザに取捨選択させてもよい。
【0055】
図15に示すように、書体AのファイルA2の部分を書体Cの該当する部分に従属させるのであれば、書体AにおけるファイルA2は外部記憶装置109にインストールすることが不要になるので、外部記憶装置109のメモリ消費量を抑えることもできる。更に、ユーザが自分自身の書体を登録する場合にも、文字コードのどの範囲をどの書体で使用するかを決定しさえすればよいので、実質的にユーザ書体で消費されるメモリ量はその従属関係を示した書体情報ファイルのみになる。尚、図15に示すように、各書体はそれが従属しているのか否かを示す情報が付加されており、1つの書体では文字コード範囲毎にそれが従属しているのか、その範囲に従属するものがあればその書体は何かを示す情報が付加されている。
【0056】
さて、図15に示すような書体情報ファイルがある場合に、本システムが起動すると、図16に示すような書体管理情報テーブルがRAM103の書体情報管理領域上に作成される。
【0057】
この書体管理情報テーブルの作成に係る処理を図17のフローチャートに従って説明する。
【0058】
ステップS751において本処理が開始されると、書体管理情報テーブルを作成するために書体情報管理領域205に或程度の領域を確保する。そして、ステップS752に進んで、外部記憶装置109に保存されている書体情報ファイルをオープンし、次のステップS753でそのオープンした書体情報ファイルから書体情報を獲得する。
【0059】
ステップS754に処理が進むと、注目している書体が従属書体かどうかを判断する、従属処理である場合には、ステップS753に戻り、従属書体ではないと判断したら、ステップS755に進む。
【0060】
ステップS755に処理が進むということは、1つの書体に対するテーブル作成開始を意味する。従って、ここでは、その書体名を書体情報管理テーブルに書き込み、以下に説明する処理でその書体に対する文字コード範囲毎の従属関係を明確にしたテーブルを構築していく。
【0061】
ステップS756では、オープンしている書体情報ファイルから次の情報、すなわち、注目している書体中のコード範囲に対する従属情報を取り出す。そして、ステップS757では、取りだした文字コード範囲は従属されるのか否か、換言すれば、取りだした情報中に従属情報があるかどうかを判断する。
【0062】
従属情報がなければ、ステップS758に進み、注目している書体に固有のファイル名を、注目しているコード範囲に対応するよう書体情報管理テーブルに書き込む。
【0063】
また、従属情報があれば、ステップS759に進んで、その従属する書体の対応するファイル名を取り出し、それを書体情報管理テーブルに書き込む。
【0064】
いずれの場合でも、処理はステップS760に進み、ステップS758或いは759で獲得されたファイル名を基に、そのファイルをオープンしアクセス可能にする。そして、次のステップS761において、アクセス可能となって書体ファイルより、そのファイルに格納されている書体データの開始コード及び終了コードに関する情報を読み取り、それを書体情報管理テーブルに書き込む。
【0065】
ステップS762に処理が進むと、1つの書体に対する処理が終了したかどうかを判断し、終了していないと判断したらステップS756に戻って上記処理を行う。
【0066】
また、1つの書体に対する全コード範囲に対する処理が終了したと判断した場合には、ステップS763に進み、次に処理すべき書体があるかどうかを判断する。処理すべき書体が残っていたら、処理はステップS753に戻り、処理すべき書体が無かったらステップS764に進む。
【0067】
ステップS764に処理が進んだ場合には、オープンしている書体情報ファイルをクローズし、ステップS765で本処理を終了する。
【0068】
以上の結果、例えば図15に示すような書体情報ファイルがあった場合には、図16に示すような書体情報管理テーブルが作成されることになる。
【0069】
尚、こうして作成された書体情報管理テーブルを使用して書体データを獲得するときの処理は、先に説明した第1の実施形態と同様である。すなわち、アプリケーション部から書体Aの文字コード“101”の書体データ獲得要求があったら、そのテーブルを調べ、書体Aに対する文字コード“101”はファイル名C2であることが検出されるので、そのファイルC2から対応する書体データを取り出し、文字パターンを発生する。この書体データがアウトラインデータである場合には、ラスタライザ305に一旦渡してドットパターンを発生させ、それをアプリケーションに渡すことになる。
【0070】
以上説明したように本第3の実施形態によれば、或る1つの書体の所望とするコード範囲を別の書体のデータを置き換えることにより、例えば英文や日本語の混じり合った文章を作成する場合等においては、いちいち書体を切り替えなくともそれぞれにユーザの意志が反映された書体での文字入力が行えるようになる。
【0071】
しかも、インストール時に、或いは任意の時間に、他の書体のデータを従属するよう指示されたコード範囲にもともとあった書体データは実質的に不要になり、その部分をインストール対象から外したり、削除することが可能になるので、外部記憶装置109のメモリ消費量を抑えることが可能になる。
【0072】
<第4の実施形態の説明>
第4の実施形態を以下に説明する。通常、システムに書体データをインストールする場合、1つの書体全体を1つの論理記憶デバイスに記憶することが必須である。本第4の実施形態は、1つの所定の記憶先を論理的に異なるデバイスに記憶することを可能にする。これによって、例えば各論理デバイスが1書体全部を記憶するだけの空き容量を有さない、或いは、各論理デバイスに或る程度の空きよう量を設けたいというような要求に応えるものである。
【0073】
尚、ここで言う、論理記憶デバイスとは、物理的装置をも含む概念であり、例えば1つの物理的な記憶装置を論理的に複数の論理的な装置として区切られた場合、或いは同じ物理的装置であってもパスが異なるものをも含む概念である。
【0074】
本第4の実施形態における書体情報ファイルの例を図18に示す。尚、図示では説明を簡単にするために、1つの書体に対してのみ示した。図示において、A1〜A4は上記第1〜第3の実施形態で説明したようにコード範囲に対応する書体Aのファイル名である。
【0075】
図示について簡単に説明すると、書体Aに対する或るコード範囲の書体データは、ファイルA1として論理ドライブAに記憶されていることを示している。
【0076】
さて、本第4の実施形態では、かかる書体情報テーブルをシステム起動時に取り出し、その中に記述されたデータに基づいて図19に示すような書体情報管理テーブルを作成する。
【0077】
第4の実施形態における書体情報ファイル及びそれに基づいて作成される書体情報管理テーブルのフォーマットは、第1の実施形態の図5A及び図6に示したフォーマットに対して記憶先のドライブ名が記載されている点のみが異なる。当業者であれば、先に説明した第1の実施形態のかかる処理内容及び図18に示した書体情報ファイルの構造に間がみれば容易に推察されるであろう。従って、ここではその説明は省略する。
【0078】
ただし、本第4の実施形態では、インストールする時点で書体データを構成する個々のコード範囲のファイルの記憶先を指示するものとして説明したが、勿論、一旦全てを同一記憶ドライブに記憶させ、その後、、必要に応じて適当なコード範囲の書体データを別な記憶装置(例えばより高速な外部記憶装置)に移動させてもよい。
【0079】
以上説明したように本第4の実施形態によれば、1つの書体データが1つの論理デバイスの同じ位置にある必要はなく、所望とするデバイスに記憶できるので、外部記憶装置を有効に活用することが可能になる。
【0080】
<第5の実施形態の説明>
次に第5の実施形態を説明する。例えば、ある特定範囲の文字のデザインを使用する場合であっても、そのデザインの書体の全範囲の書体データを記憶する必要があるため、外部記憶装置等のメモリ消費量は無視できない。本第5の実施形態では、かかる課題を一掃する。
【0081】
図20は分割ファイルの構成を簡単に示している。図示において、書体Aは、文字コード0〜500で1つの文字書体全体を構成していることを示しており、0〜100のA1、101〜199のA2、200〜500のA3の3つ部分的なコード範囲として管理している。書体A’は書体Aと同じもので、対応するキャラクタセットが異なり、キャラクタセットの切り替え時に変更しなければならない文字データ部分のみを持ち、含まれる文字コードは101〜199のA2と同一である。つまり、書体として、A’はAと同じであるが、使用する文字コードは101〜199のみである。
【0082】
尚、キャラクタセットとは、同じコード範囲(空間)において、例えば平かなとカタカナ、英語のアルファベットとロシア語のアルファベットといった具合に文字表現を言う。
【0083】
上記書体管理を行うため、本第5の実施形態における書体情報ファイルは図21に示すように、書体ファイルとキャラクタセットの関連が記述されている。
【0084】
システム起動時におけるRAM103中の書体管理情報領域205に構築される書体管理情報テーブルの作成手順は、図7に示される手順で行われるので、ここでの説明は割愛する。この結果、図22に示される書体管理情報テーブルが構築される。テーブル中、A1、A2、A3及びA2’はそれぞれ書体データA,A’を構築するデータのファイル名称である。
【0085】
尚、このようにして作成された書体管理情報テーブルを用いて文字データ取得の流れも、図8に示した手順で行われるが、説明すれば以下の通りである。
【0086】
先ず、ステップS801において、文字データ取得処理を開始する。
【0087】
ステップS802においては、図3におけるAP部307より取得する文字に関する情報(文字コード,書体情報、キャラクタセット)を取得する。次のステップS803においては、図6の書体管理情報テーブルを検索し、対応する書体及びキャラクタセットが存在するかチェックを行う。存在する場合はステップS804へ、存在しない場合はステップS805へ進む。
【0088】
ステップS805では、図22に示される書体管理情報テーブル上に別の書体がまだ存在するかどうかを判断する。存在する場合にはステップS803に進み、、テーブル中の別の書体に対するチェックを行う。
【0089】
また、要求された書体がテーブル中に存在すると判断し、ステップS804に進むと、注目書体中の注目キャラクタセットの開始コード及び終了コード内に、要求されたコードが含まれているかどうかを判断する。尚、コード範囲は、存在しないファイルに関しては、開始コード及び終了コードともに“−1”が格納されているものとしているので、そのコードの文字データが管理されているかどうかは容易に判断できる。
【0090】
さて、ステップS804において、要求された文字コードが注目しているキャラクタセットの範囲外にあると判断された場合には、ステップS806に進んで、同一書体に未だチェックしていないキャラクタセットがあるかどうかを判断する。もしあればステップS804に戻り、再び要求コードに対応するキャラクタセットが存在するかどうかを判断する。また、ない場合には、ステップS809に進んで、文字無し処理を行う。
【0091】
一方、要求された文字の書体とその文字コードを管理しているキャラクタセットが存在すると判断した場合には、ステップS807に進み、書体管理情報テーブルからファイル名を獲得し、ステップS806でそのファイル名のファイルから該当する文字データを取得する。そして、ステップS810に進んで、処理を終了する。
【0092】
以上説明したように本第5の実施形態によれば、同じ書体であっても異なるキャラクタセットの文字が指定された場合であっても、使用する文字のみを含むコード範囲の書体データを有するだけで良く、全文字コードに対応するデータは不要になり、外部記憶装置の記憶領域を有効に活用することができる。
【0093】
<第6の実施形態の説明>
上記第5の実施形態では、例えば書体Aと同じ書体A’を使いながらも、異なるキャラクタセットを使用する場合に、その使用する文字コード範囲の書体データのみを外部記憶装置に記憶させることで、メモリの有効利用を図るものであった。
【0094】
本第6の実施形態では、異なる書体を記憶し、一方の書体中の特定のコード範囲の書体データとして、他方の書体の同じ範囲の書体データを活用する例である。この結果、共通して使用する部分の書体データを重複して持つ必要を無くし、メモリの効率的使用を可能とするものである。
【0095】
図23は本第6の実施形態における分割ファイルの構成を簡単に示している。図示において、書体Aは、文字コード0〜500で1つの文字書体全体を構成していることを示しており、0〜100のA1、101〜199のA2、200〜500のA3の3つ部分的なコード範囲として管理している。
【0096】
また、書体Bも書体Aと同様、全文字コード空間を3つ分割されて管理されており、このうち、文字コード0〜100と、200〜500は書体B特有の書体データを使用し、コード101〜199については書体Aのものを使用する。
【0097】
上記書体管理を行うため、本第5の実施形態における書体情報ファイルは図24に示すように、書体の種類とその書体を構築する分割書体データファイル名で構成されている。
【0098】
システム起動時におけるRAM103中の書体管理情報領域205に構築される書体管理情報テーブルの作成手順は、図7に示される手順で行われるので、ここでの説明は割愛するが、いずれにしても図25に示される書体管理情報テーブルがRAM103中の書体情報管理領域205中に構築される。
【0099】
文字データ取得処理も、図8に示したフローチャートに従えば良い。すなわち、AP部から文字データ取得要求があった場合には、その要求のなかで指定された書体データに基づいて書体情報管理テーブルのどの書体が選択されたのかを判断し、次にその書体中の指定された文字コードを管理しているファイル名を取得し、その後、そのファイルから対応する文字データを取得する。
【0100】
<第7の実施形態の説明>
これまで、書体データを判別する場合、書体を表す書体名或いは書体番号、叉は、書体名及び書体番号、または、必要によるスタイル情報、幅情報、ウエート情報を別々に用いて判別していたため、その判別処理は複雑にならざるを得ず、時間がかかるという問題があった。
【0101】
そこで、本第7の実施形態では、かかる判別を簡単にしかも高速に行うことを可能にする例を説明する。
【0102】
図26は、本第7の実施形態におけるスタイル幅ウエート情報のフォーマットを示している。図示の如く、スタイル情報として4ビット(値として0〜15)、幅情報として4ビット、ウエート情報として8ビット(0〜255)が割り当てられている。スタイル情報としては、“0”はregular、“1”はitalic、…として定義した。また、幅情報としては、extra condence, condence, regular, expand, extra expandに4,6,8,10,12を対応させている。そして、ウエート情報としては、特細、極細、細、中細、中、中太、太、極太、特太に、60,70,80,90,100,110,120,130,140を対応させた。
【0103】
さて、本実施形態におけるインストール手順(外部記憶装置109のフロッピーディスクからハードディスクへのインストール)を図27のフローチャートに従って説明する。
【0104】
先ず、ステップS301において、インストールする書体データとインストールに必要なデータ(インストールデータファイル)が格納されているメディアを設定するよう要求し、そのメディアの指定をユーザに行わせる。
【0105】
次に、ステップS302に進んで、インストールする書体データが格納されているインストールデータファイルから書体名情報、書体番号、スタイルウエート情報を読出す。
【0106】
ステップS303では、インストール先に既にインストールされている書体情報ファイル内の書体データを読み込む。このとき、読み込むべき書体情報ファイルがインストール先に存在しないとステップS304で判断したら、その書体ファイルの作成を行う(ステップS305)。
【0107】
次に、処理はステップS306に進んで、インストール先の書体情報ファイルの内容とインストールしようとしている書体情報とを比較する。比較処理の優先順位は、第1に書体番号、第2にスタイル幅ウエート情報、第3の書体名とする。以上の項目が全て同じ場合には無条件で同じ書体である。また、第1番目の項目と第2番目の項目の内容が同じである場合、書体の文字データが同じである為、書体の内容が重ならないようにする処理と、書体名を含めてユニークに処理するかをこの処理で確定する(例えば、ユーザに指示するようにする)。
【0108】
さて、処理がステップS307に進むと、本インストール処理によりインストールしようとしている書体データは更新か新規追加であるかを判断する。更新処理とは、先に説明したように3つの項目が全て同じ場合である。
【0109】
更新処理であると判断した場合には、ステップS309に進んで、既にインストールされている書体データに上書きするため、書体情報ファイルに記述されている同じ書体の存在位置に上書きする。このとき、ユーザによってインストール先が別個に指示されていれば、その指示された位置に書き込む処理を行う。
【0110】
また、新規書体インストールであると判断した場合には、ステップS308に進んで、書体名、書体番号、スタイル幅ウエート情報、タグファイル名、書体情報全てをインストールする。
【0111】
そして最後に本処理を終了し、呼び出し元に戻る。
【0112】
図28はインストールメディアの内容と、その中のインストールデータファイルの中身を示している。
【0113】
インストールデータファイルには、インストールに必要な情報が記述されている。書体ファイルには、書体情報が格納されている。タグファイルには、書体ファイルの情報より書体を作成するためのデータが格納されている。従って、1つの書体データから複数のタグファイルを用いてタグファイル分の書体が存在すると考えられる。
【0114】
図29は、本実施形態における書体情報ファイルの内容の一例を示している。“NAME”はディスクリプション名、書体情報(主書体番号、副書体番号、スタイル幅ウエート情報)である。“DEFTAG”はタグファイル名、タグファイルに存在する書体名である。また、“FILE”は書体ディスクのインストール先と書体ファイルのファイル名である。
【0115】
図30はタグファイルの内容例を示している。このファイルには、タグファイルのサイズ、書体番号、スタイル幅ウエート情報、ディスクリプション名、書体メトリクス情報に、フェィス名を格納する。この中の書体番号、スタイルウェート情報より書体データへの関連ずけを行う。
【0116】
図31は、書体ファイルの内容を示している。このファイルには、書体構成情報(ファイルサイズ)、書体データ(書体開始コード、文字数)、書体番号、スタイル幅ウェート情報が格納される。
【0117】
以上の如く本第7の実施形態によれば、インストール後は、書体情報のスタイル情報、幅情報、ウェート情報を合わせたスタイル幅ウェートを書体を表す情報として持つことで、書体名、書体番号等を比較するよりも簡単に高速に書体の判別が可能になる。
【0118】
<第8の実施形態の説明>
第8の実施形態を説明する。本第8の実施形態では、フォント関連のファイル名の最適化を行わせる原理を説明する。例として、本実施形態におけるシステム(或いはOS)が管理するファイル名は8文字(8バイト)、拡張子が3文字(3バイト)である例を説明する。
【0119】
図32は本第8の実施形態における書体物理ファイルのファイル名称に用いる文字構造を示している。
【0120】
図示において、▲1▼は図34に示す書体識別用の2文字が位置し、▲2▼には図36で示されるスタイル幅情報(0〜9)を表す1個の数字が位置する。▲3▼には図37に示されるウェイト情報を表す数字が位置し、▲4▼には図38で示されるサイズ・サポート領域情報である。▲5▼はファイル識別情報であり、実施形態では文字列“JFD”を用いる。
【0121】
また、図33は、書体データの書体論理データファイルのファイル名の構造を示している。▲6▼は書体管理情報であり、任意の3文字を用いて表す。▲1▼は本ファイルのリリースの順番を示しており、図35により当てはめる。▲3▼は図37に示すウェイト情報である。▲8▼はメトリクス情報識別情報であある。本項目は本ファイルのリリースの順番を示す。また、プリンタフォントと同一な情報を持つ場合は、“P”で表す。▲5▼はファイル識別情報であり、この場合は“FON”を使用する。
【0122】
以下、図34から図38について更に詳しく説明する。
【0123】
図34は物理書体の識別情報である。MIは明朝体、GOはゴシック体、RGは丸ゴシック体、KAは楷書体、KYは教科書体を表す。図35におけるMINは明朝体、GOTはゴシック体、RGOは丸ゴシック体、KAIは楷書体、KYOは教科書体をそれぞれ表している。
【0124】
図36はスタイル幅情報を示している。スタイルとしては、regularとitalicの2種類があり、幅情報としてはextra condence, condence, regular, expand,extra expandがある。この組み合わせによって、例えば図示の如く、regularとextra condenceの場合に“1”を割り当てた。同様に、regularとcondenceに“1”、regularとregularに“2”、regularとexpandに“3”、regularとextraexpandに4を割り当てた。また、italicrとextra condenceの場合に“5”を割り当て、italicとcondenceに“6”、italicとregularに“7”、italicとexpandに“8”、italicとextra expandに“9”を割り当てた。
【0125】
図37はウェイト情報を示し、実施形態では、特細、極細、細、中細、中、中太、太、極太、特太に、数字1〜9を割り当てた。
【0126】
図38は実施形態におけるサイズ・サポート領域情報である。本データの上位8ビットを用いてサイズデータを16進数で表す(文字でいうと“1”から“F”)。尚、アウトラインデータ等のスケーラブル書体データである場合には数字“0”を用いる。また、下位8ビットに各領域を割り当て、対応する領域である場合にはそのビットを“1”にする。実施形態ではビット7を非漢字領域、ビット6を第1水準領域、ビット5を第2水準領域、ビット4を旧JIS領域、ビット3をかな領域、ビット2を応分領域、ビット1を外字領域、そしてビット0を特殊領域とした。
【0127】
以上によりファイル名称を決定する。以下、書体情報とその書体情報による決定例を示す。
【0128】
書体情報{1.書体名:明朝体、2.スタイル名:regular、3.文字幅情報:condence、4.文字ウェイト情報:中、5.文字サイズ:100ドット、6.サポート領域、第1水準、7.メトリクス情報識別情報:プリンタフォントと同一なメトリクス情報であるため“P”、8拡張子によるファイル分類:JFD(書体物理データファイル)とFON(書体論理データファイル)、9:書体管理環境名称:FontManaging}により決定する。
【0129】
この場合、書体物理データファイルの名称を決定するためには、図32で示される▲5▼は“JFD”になる。▲1▼は図34によって“MI”になる。また▲2▼は図36により“1”、▲3▼は図37により“5”になる。サイズ100は16進数で表すと、64Hであり、図38に従ってビット6のみを立てるから下位8ビットは40H、従って、▲4▼は“6440”になる。
【0130】
つまり、ファイル名“MI156440.JFD”である。
【0131】
次に、書体論理データファイルの場合には、拡張子▲5▼は“FON”、▲6▼はFontManagerを表すことに統一するので、“FO_、▲1▼は図35より“MIN”、▲3▼は図37により“5”、▲8▼は“P”である。
【0132】
従って、この書体論理データファイルの名称は“FM_MIN5P.FON”である。
【0133】
以上説明したように本第8の実施形態によれば、書体ファイル名称にファイルに格納されているデータを示す情報を表示したことにより、書体ファイルに格納されている情報が解り易くすることができる。
【0134】
<第9実施形態の説明>
第9実施形態について説明する。
【0135】
通常、文字パターン発生には、先に説明したようにビットマップパターンを予め記憶しておき、それを取得するビットマップフォント方式と、アウトラインデータに基づいて文字の輪郭を形成し、その内部を埋めることで文字パターンを得るアウトラインフォント方式がある。
【0136】
前者は、比較的小さい文字(ドット構成の小さい文字)に対して有効な方式であり、文字が潰れることなく、且つ、生成するにしても基本となる文字パターンに対して間引きすれば済むので、高速に処理することが可能である。後者は、ラスタライザによって輪郭を描画し、その内部を埋める処理が必要なため、速度は落ちるが、大きい文字(最終的なドット構成の大きい文字)の品位を高めることができる。
【0137】
ところが、比較的小さい文字を発生するのに適したビットマップフォント方式では、比較的高い確率で要求される文字パターンも、低い確率の文字パターンも、基本となる文字パターンから一律な処理でもって行っており、まだ改善の余地が残っている。
【0138】
本第9の実施形態では、ビットマップフォントによる発生方式を更に改善させるものである。
【0139】
さて、本第9の実施形態では、20×20のドットのビットマップフォントがリソースされ、それから4×4〜20×20の文字パターンを発生する例について説明する。
【0140】
図39は実施形態におけるビットマップフォントによる文字パターン発生処理の手順を示したフローチャートである。
【0141】
先ず、ステップS1で、要求された文字のコードおよび文字のサイズを取得する。そして、ステップS2においては、その要求された文字コードの文字パターン(20×20ドット)をROM102或いは外部記憶装置109より取り出し、RAM103中の所定エリアに展開する。
【0142】
ステップS3では、1回の処理でデフォルメせずに縮小可能な縦方向のライン数の算出する。要求された文字サイズが先に獲得した文字サイズ(20×20)の半分以下の場合には、文字パターンの半分まで、それ以外の場合には、(縮小前の文字サイズ+2)/5により求める。この式は、20×20ドット以下の文字パターンに限定した場合、1回の縮小するライン数を4ライン以下にすることにより、デフォルメ(偏り)を防止することを主眼にした式である。
【0143】
ステップS4に処理が進むと、実際の縮小処理を行う。ここでは、ステップS3で求められたライン分の縮小処理を行う。このとき、縮小処理を行う位置は、文字パターンの幅/(縮小ライン数+1)により求められた等分割位置である。ここで縮小ライン数=2のときは、分母が奇数になるため、正しく等分割できずデフォルメする可能性がある(図40参照)。従って2回目の縮小時に前記縮小位置の計算より発生した残りの分だけ位置をずらす補正処理を行う。これを示したのが図41である。また、縮小ライン数=4の場合も、分母が奇数となるが、縮小前の文字パターンが20×20ドット以下の場合は問題にならないため特に処理は行わない。算出された縦方向のラインでは、その右隣のラインと重ね合わせ(論理和)処理する、換言すれば縮小するラインの位置とその右隣のラインの2ラインで1ラインのドットパターンを生成する。
【0144】
ステップS5では、縮小した結果が、要求されたサイズになったか判定し、全縮小ライン数とステップS4で縮小したライン数の差分により判定する。判定の結果、要求されたサイズに満たない場合には、ステップS3に戻り、縮小処理を繰り返すことになる。また、要求された文字パターンの作成が完了した場合には、ステップS6で要求元に発生した文字パターンを出力する。
【0145】
尚、上記説明で、1回の縮小処理における縮小するライン数を4以下に抑えるという意味は、例えば、20×20の基本サイズから12×12のパターンを発生する場合(最終的には8ライン(=20−12)が縮小される)、第1回目において、8ライン全部を縮小するのではなく、第1回目で4ライン分を縮小し、その後で更に4ライン分を縮小することを意味する。因に、先に説明したように2ライン分縮小する場合、すなわち、18ラインの文字パターンを発生する場合には、その縮小ライン数が4以下であるので問題はないことになる。但し、先に説明した補正処理は行う。
【0146】
また、本第9の実施形態では、横方向に縮小する例を説明したが、縦縦方向への縮小も全く同様に処理することができ、更には縦横共に処理することもできるので、上記内容で本発明が限定されるものではない。
【0147】
また、使用するビットマップは20×20に限定されるものではなく、各々のサイズにおいて縮小する際に効率良く処理が行えるならば、特に1つに限定されるものではない。
【0148】
また、予め20×20、16×16、13×13、10×10等の「(縮小前の文字サイズ+2)/5」の1回の処理で取得し得る最小サイズの複数ビットマップフォントを用意し、ステップS3〜S5のループ数を減らし、且つ、品位の向上に役立てても良い。
【0149】
以上説明したように本第9の実施形態によれば、要求された文字パターンのサイズが本文作成等で最も使用される可能性の高いサイズ(4×4〜20×20)のみビットマップフォントを使用し、縮小を行う位置等の計算を限定されたサイズに最も有効となるように単純化することにより、パフォーマンスの良い文字パターン縮小が行える。
【0150】
<第10の実施形態の説明>
本第10の実施形態について説明する。
【0151】
上記実施形態(例えば第8の実施形態)では、ファイル名をそのファイルが有すデータを反映させた。従って、書体を提供する側が、過去に供給した名称とは異なる名称を新たに提供する場合には異なるファイル名を付けるように管理すれば良い。但し、システムのユーザが書体を作成できるようにした場合、供給側ではそのユーザが使用しているファイル名までは管理できない。従って、同じ情報を有する書体が作成される場合があり、一旦同じ情報を含む書体を削除した後に作成した書体の複写を行ったり、同じ情報の該当する書体情報を変更した後に複写を行わねばならない。
【0152】
本第10の実施形態では、かかる問題を解決する。
【0153】
図42は、実施形態における書体情報ファイルに付けられるファイル名の一例を示している。図示の如く、本第10の実施形態においては、ファイル名の部分に8文字(8バイト)と、拡張子に3文字(3バイト)を使用している。本実施形態では、“FG_US”は固定のものとし、その後に示した□には書体番号と同じ値が付けられる。但し、ファイル名の付け方はこれに限るものではない。
【0154】
図43は書体情報ファイルの内部構造を示している。この書体情報ファイル内には図示の符号14で示される書体名、符号15で示される書体番号が格納されている。また、この他には例えば、作成日時やバージョン等の情報も格納されている。
【0155】
図44は外部記憶装置109に記憶されている書体の格納先を管理する書体格納情報ファイルの構造を示しており、記憶されている全書体についての情報が入っている。この書体格納情報ファイルには、符号16で示される書体1の登録番号、符号17の書体1の書体情報ファイル名、18の書体1の書体名、19の書体1の書体番号である。同様に書体2、… 書体nそれぞれに対しても同様な情報が格納されている。
【0156】
図45のフローチャートに基づいて本第10の実施形態における書体管理手順を説明する。
【0157】
先ず、ステップS501において、複写元の書体情報ファイル(ユーザが作成した書体データを管理している書体情報ファイル、43参照)から書体情報を取得する。次にステップS502に進んで、システムの管理下におかれている書体の格納情報ファイル(図44参照)から格納されている書体に関する書体情報を取得する。
【0158】
ステップS503においては、先のステップS501、S502で取得した情報から、同じ書体名の書体が格納されているかどうかを判断する。同じ書体名の書体が既に書体格納情報ファイル内に格納されていると判断した場合にはステップS504に、その書体名の書体がシステムに登録されていないと判断した場合にはステップS507に進む。
【0159】
ここで同じ書体名がシステムに登録されていないと判断され、ステップS507に進むと、ユーザが作成した書体の書体番号と同じ書体番号がシステムに登録されているかどうかを判断する。ここでも、同じ書体がないと判断したら、処理はステップS512、S513に進み、システムに登録されている書体情報を記憶している書体格納情報ファイルに、ユーザが作成した書体情報ファイルの内容を複写(追加)し、その書体格納情報ファイルを更新する。
【0160】
一方、ステップS503で、同じ書体名の書体が既に登録されていると判断した場合には、ステップS504に進んで、それれが同じ書体番号であるかどうかを判断する。
【0161】
同じ書体番号である、すなわち、書体名及び書体番号の両方とも既にシステムに登録されていると判断した場合には、ステップS505、S506に進んで、書体格納情報ファイル内の該当する位置にユーザが作成した書体情報ファイルの内容で上書きし、書体格納情報ファイルを更新する。
【0162】
ステップS507で“YES”であると判断した場合、すなわち、同じ書体名ではないが、同じ書体番号であると判断した場合には、ステップS508に進んで、新たに登録しようとしている書体の使用されていない書体番号を検出し、ステップS509に進む。
【0163】
ステップS504の判断が“NO”、つまり、同じ書体名が存在するが、書体番号が異なると判断した場合にもステップS509に処理が進む。この場合には、書体番号が重複することはないことになる。
【0164】
いずれにせよ、ステップS509に処理がくるということは、書体名が同じで、書体番号が異なる場合である。ユーザ側から見て書体名が重要で、同じ書体名が複数あると混乱の素になる。そこで、ステップS509、S510、S511では、登録しようとしている書体名のファイルを変更(例えば書体名に“USR”を付加する等)し、その変更された書体名を書体格納情報ファイルに追加し、且つ、その書体番号で登録することで、書体格納情報ファイルを更新する。
【0165】
上記例では、書体名をキー情報として書体の登録状態を判別し書体番号を書体情報ファイルのファイル名と対応させ、書体番号を変更して複写を行うことより、同じ書体情報が含まれる書体を管理することが可能になる。また、本発明はユーザに書体を作成できるようなツールを提供し、前記ツールによる作成された書体を使用するとき等に多大な効果を発揮する。
【0166】
尚、上記実施形態では、書体名をキーにして書体情報を検索し、書体番号を変更するようにしたが、書体番号をキーにして検索し、書体名を変更するようにしても良く、検索に用いるキー情報及び変更する書体情報はこの限りではない。
【0167】
以上説明した様に本第10の実施形態によれば、書体情報と書体情報ファイルのファイル名を対応させ、同じ書体情報が含まれる書体が検出されたときには、書体情報を変更して複写(登録)を行うようにしたことにより、同じ書体情報が含まれた場合であっても書体を管理することが可能になる。
【0168】
また、ユーザが書体を作成できるような場合に、同じ情報を有する書体が作成された場合でも、一旦同じ情報を含む書体を削除した後に作成した書体を複写を行ったり、同じ情報に該当する書体情報を変更した後に複写を行ったりする作業の軽減を図ることが可能になる。
【0169】
上記第1〜第10の実施形態に限らず、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。
【0170】
【発明の効果】
以上説明したように本発明によれば、柔軟性のある書体データの管理方法を提供することが可能になる。
【図面の簡単な説明】
【図1】実施形態におけるシステム構成図である。
【図2】実施形態におけるRAMのメモリマップである。
【図3】文字処理装置の構成例を示す図である。
【図4】第1の実施形態における分割ファイルの構成例を表す図である。
【図5A】第1の実施形態における書体情報ファイルの内容の一例を示す図である。
【図5B】第1の実施形態におけるインストール後の書体ファイルの構成例を示す図である。
【図6】第1の実施形態における書体管理情報テーブルの内容例を示す図である。
【図7】第1の実施形態における書体管理情報テーブル作成処理の手順を示すフローチャートである。
【図8】第1の実施形態における文字データ取得処理の流れを示すフローチャートである。
【図9】第2の実施形態における書体管理情報テーブルの初期状態例を示す図である。
【図10】第2の実施形態における文字データ取得処理の流れを示すフローチャートである。
【図11】第2の実施形態における書体管理情報テーブルの中間的な状態例を示す図である。
【図12】第2の実施形態で更新された書体情報ファイルの内容例を示す図である。
【図13】第2の実施形態における更新された書体情報ファイルの内容で起動した場合の書体管理情報テーブルの状態例を示す図である。
【図14】第3の実施形態における分割書体ファイルの構成例を示す図である。
【図15】第3の実施形態における書体情報ファイルの内容例を示す図である。
【図16】第3の実施形態における書体管理情報テーブルの内容例を示す図である。
【図17】第3の実施形態における書体管理情報テーブルの作成処理の流れを示すフローチャートである。
【図18】第4の実施形態における書体情報ファイルの内容例を示す図である。
【図19】第4の実施形態における書体管理情報テーブルの内容例を示す図である。
【図20】第5の実施形態における分割ファイルの構成例を示す図である。
【図21】第5の実施形態における書体ファイルの内容例を示す図である。
【図22】第5の実施形態における書体管理情報テーブルの内容例を示す図である。
【図23】第6の実施形態における分割書体ファイルの構例成を示す図である。
【図24】第6の実施形態における書体情報ファイルの内容例を示す図である。
【図25】第6の実施形態における書体管理情報テーブルの内容例を示す図である。
【図26】第7の実施形態におけるスタイル幅ウエート情報のフォーマットを示す図である。
【図27】第7の実施形態における書体インストール手順を示すフローチャートである。
【図28】第7の実施形態におけるインストールメディアの内容と、その中のインストールデータファイルの中身を示す図である。
【図29】第7の実施形態における書体情報ファイルの内容例を示す図である。
【図30】第7の実施形態におけるタグファイルの内容例を示す図である。
【図31】第7の実施形態における書体ファイルの内容例を示す図である。
【図32】第8の実施形態における書体物理ファイルのファイル名称に用いる文字構造を示す図である。
【図33】第8の実施形態における書体データの書体論理データファイルのファイル名の構造を示している
【図34】第8の実施形態における物理書体の識別情報を表す各種文字列を示す図である。
【図35】第8の実施形態における書体論理データファイルの識別情報を表す各種文字列を示す図である。
【図36】第8の実施形態におけるスタイル幅情報の意味内容を示す図である。
【図37】第8の実施形態におけるウェイト情報の意味内容を示す図である。
【図38】第8の実施形態におけるサイズ・サポート領域の関係を示す図である。
【図39】第9の実施形態における縮小文字パターン生成にかかる処理内容を示すフローチャートである。
【図40】第9の実施形態における縮小処理の問題点を示す図である。
【図41】第9の実施形態における補正後の縮小処理を示す図である。
【図42】第10の実施形態における書体情報ファイルの名称のフォーマットを示す図である。
【図43】第10の実施形態における書体情報ファイルの内部構造を示す図である。
【図44】第10の実施形態における書体格納情報ファイルの構造を示す図である。
【図45】第10の実施形態における書体登録の処理手順を示すフローチャートである。
【符号の説明】
101 CPU
102 ROM
103 RAM
104 キーボード制御部(KBC)
105 キーボード(KB)
106 表示装置制御部(CRTC)
107 表示装置
108 DKC
109 外部記憶装置
110 プリンタ制御部
111 プリンタ
[0001]
[Industrial application fields]
The present invention relates to a typeface data management method andapparatusA typeface data management method for managing data files of various typefaces used in, for example, a personal computer, a word processor, a desktop publishing apparatus, etc.apparatusIt is about.
[0002]
[Prior art]
Conventionally, typeface data managed in a character processing system stores all character data in a single typeface in one file for reasons such as ease of management.
[0003]
[Problems to be solved by the invention]
The typeface data management method according to the conventional method has the following problems.
[0004]
All typeface data is stored in the file beforehand,For example,The target of installation was only a selection of typeface units. For this reason, even typeface data that is not generally used is installed at the same time, resulting in pressure on the disk memory.
[0005]
[Means for Solving the Problems]
The present invention has been made in view of the prior art, and has a flexible typeface data management method.And equipmentIs to provide.
[0006]
For this reason, for example, one typeface data management method of the present invention comprises the following steps.
[0007]
  In a typeface data management method for retrieving data about a requested character from a typeface data file,
  In the first typeface, among the partial code spaces each consisting of continuous codes, the typeface data file corresponding to any partial code space is held in common with the second typeface, and the typeface management information is held.
  When there is a character request including a code in the first typeface, the typeface data is obtained from the commonly used typeface data file if it corresponds to the range of any partial code space based on the typeface management information.It is characterized by that.
[0008]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described in detail with reference to the drawings.
[0009]
First, a brief description will be given of a movement until a font data is acquired when a system handling character data such as a personal computer displays or prints characters.
[0010]
FIG. 1 is a block diagram showing a basic configuration for operating these systems.
[0011]
In FIG. 1, reference numeral 101 denotes a CPU, that is, a central processing unit, which performs activation of the entire system, arithmetic processing, and the like. Reference numeral 102 denotes a read-only memory (ROM), which is a storage area for a system startup program (boot program) and character pattern data. A random access memory (RAM) 103 is loaded with a system program, various application programs, a driver program for generating a character pattern, and the like, and is used for temporarily storing various data. Of course, a program relating to a flowchart to be described later is loaded into the RAM 103 and executed. A keyboard control unit (KBC) 104 receives key input data from the keyboard (KB) 105 and transmits it to the CPU 101. A CRT control unit (CRTC) 106 controls the display device (CRT) 107. Reference numeral 109 denotes an external storage device such as a floppy disk device (FD) or a hard disk device (HD), in which various programs such as system programs and application programs, and font data are stored. When the program is executed, the program stored in the external storage device 109 is loaded into the RAM 103 and executed by the CPU 101. Reference numeral 110 denotes a printer control unit (PRTC). Reference numeral 111 denotes a printer (PRT) that forms a visible image on recording paper based on transmitted data under the control of the PRTC 110. A system bus 112 serves as a data path between the above-described components.
[0012]
FIG. 2 is a diagram showing a memory map of the RAM 103. 201 is a system area in which the system is loaded, 202 is an area in which a character development processing unit is loaded, and 203 is an area in which the character development processing unit stores bit pattern data. Reference numeral 204 denotes an area to be read for referring to the vector pattern data stored in the external storage device 109 during the character expansion process. Reference numeral 205 denotes an area for generating a management information table for operating the system. Reference numeral 206 denotes a typeface vector data cache area.
[0013]
FIG. 3 shows a configuration of a system that handles the character data.
[0014]
3, 301, 302, and 303 represent various typeface data stored in the external storage area 109 in FIG. The type and number of typeface data stored in the external storage device 109 are not substantially limited.
[0015]
Reference numeral 304 denotes a system control unit, which includes 201, 204, and 205 in FIG. Reference numerals 305 and 306 denote character expansion processing units, that is, rasterizers. The character expansion processing function may be realized only by software, may be realized by hardware, or may be realized by using both hardware and software. I do not care. The number of rasterizers included in the system is not limited as long as at least one rasterizer is included. Reference numeral 307 denotes an application unit (for example, a program such as a word processor) that issues a character acquisition request to the system.
[0016]
In FIG. 3, the application unit 307 issues a character acquisition request. The character acquisition request is made using a character code and typeface information corresponding to the character one-to-one in order to determine the character to be acquired. In order to acquire the requested character data, the system control unit 304 acquires necessary data from the font data 301, 302, and 303. If the acquired data is contour vector data constituting an outline font, the data is transferred to the rasterizers 305 and 306. If the acquired data is bit pattern data, it is transferred to the application unit 307 as it is. The rasterizers 305 and 306 develop the received contour vector data into a bit pattern and send it back to the system control unit 304. The system control unit 304 returns the bit pattern data received from the rasterizers 305 and 306 to the application unit 307.
[0017]
Next, the embodiment will be described in detail based on the above description.
[0018]
This embodiment aims to make it possible to acquire typeface data by dividing a typeface data file and installing only necessary portions. The division method will be briefly described with reference to FIG.
[0019]
FIG. 4 simply shows the structure of the divided file. In order to simplify the description, it is assumed that the typeface A constitutes one typeface with character codes 0 to 600.
[0020]
This typeface A is divided into four parts of 0 to 100, A1, 101 to 199, A2, 200 to 500, A3, and 501 to 600. In this typeface A, the A3 portion is data that is not generally used, and is the portion that requires the most disk memory.
[0021]
The divided typeface information is shown at the time of typeface installation, and a part to be installed is selected by the user's hand (keyboard). As a result of the selection, only the necessary part is installed, and a typeface information file 500 describing the breakdown of the typeface of the installed result shown in FIG. 5A is created on the external storage device 109. FIG. 5B shows the result status of the installed typeface file.
[0022]
When the system is started, information is read from the typeface information file 500, information indicating the breakdown of the installed typefaces is extracted from the typeface information file, and a typeface management information table as shown in FIG. create.
[0023]
The flow of creating the typeface management information table will be described with reference to FIG. The figure shows the processing related to the typeface during the initial processing when the system is turned on, and the processing procedure is stored in the external storage device 109.
[0024]
First, in step S702, the typeface information file is opened, and in the next step S703, the typeface name information is acquired from the opened typeface information file, and the typeface name information is written into the typeface management information table.
[0025]
In step S704, the file name is acquired from the typeface information file, and the file name information is written into the typeface management information table. In step S705, based on the file name of the typeface acquired previously, the file open process for making the file accessible is performed. In step S706, information on the start code and end code of the typeface data stored in the file is read from the typeface file accessible in step S705, and is written in the typeface management information table.
[0026]
In step S707, it is checked whether a file of the same typeface still exists in the description in the typeface information file. If it exists, the process returns to step S704 to acquire the next file name and update the table.
[0027]
If it is determined in step S707 that the same typeface file does not exist, the process advances to step S708 to check whether there is an unprocessed typeface in the typeface management file. Processes the typeface. If it is determined that the creation of tables for all typefaces has been completed, the process advances to step S709 to close the typeface information file that was opened in the previous step S702, and the process ends.
[0028]
With the above processing, a typeface management information table as shown in FIG. 6 is created in the typeface information management area 205, for example.
[0029]
Next, the flow until the necessary typeface data is acquired using the typeface management information table of FIG. 6 will be described with reference to the flowchart of FIG.
[0030]
In step S801, character data acquisition processing is started.
[0031]
In step S802, information (character code, typeface information) related to characters acquired from the AP unit 307 in FIG. 3 is acquired. In the next step S803, the first typeface of the typeface management information table shown in FIG. 6 is searched (the pointer indicates the first typeface in the table in the initial stage), and it is checked whether the typeface is the corresponding typeface. When it exists, it progresses to step S804, and when it does not exist, it progresses to step S805.
[0032]
If it is determined that the typeface is not corresponding and the process proceeds to step S805, it is determined whether another typeface exists, and if there is another typeface, the pointer is advanced there.
[0033]
When the corresponding typeface can be found and the process proceeds to step S804, whether or not the requested character code is within the managed range on the typeface management information table, in other words, the character code is managed. Determine if you are. Since the pointer at this point is placed at the head position in FIG. 6, it is determined whether or not the requested character code is within the range of “0” to “100”.
[0034]
If it is determined that the file does not exist, the process advances to step S806 to determine whether or not a file of the same typeface is managed in the line next to the target line in the table. If there is, the pointer is advanced by 1, and the process returns to step S804. If it is determined that the next file does not exist, the characterless process is performed.
[0035]
On the other hand, if it is determined that the character code of the requested typeface is managed, the process proceeds to step S807, where the file name is obtained from the target line in the typeface management information table, and in step S808, the obtained file name is obtained. Based on the above, the typeface data is acquired from the file, and the process proceeds to the end process S810.
[0036]
As described above, according to the present embodiment, only the required character code range of the required typeface can be installed in the system, so that the memory consumption of the external storage device 109 can be suppressed and the management of unnecessary portions can be performed. Since this is not done, the processing speed can be increased.
[0037]
<Description of Second Embodiment>
In the above embodiment (first embodiment), for example, when the typeface management information table is as shown in FIG. 6, when there is a character acquisition request for the character code “501” of the typeface A from the application unit, FIG. Steps S804 and S806 in Step 8 are looped three times. There is no problem when the frequency of character acquisition requests for the character codes “501” to “600” is not so high with respect to the overall request, but the processing speed is high when the frequency is higher than other character codes. The decline of is inevitable.
[0038]
Therefore, in the second embodiment, the frequency of occurrence of character acquisition requests is counted and reflected in the creation of the typeface management information table at the next startup.
[0039]
The system configuration in the second embodiment is also shown in FIG. The same applies to a third embodiment and later described later. In the second embodiment, a case will be described in which font data A1 to A4 in the entire range shown in FIG. 4 is specified when font data is installed in the external storage device 109. The program according to the flowchart of FIG. 8 is naturally stored in the external storage device 109. This also applies to each embodiment described later.
[0040]
FIG. 9 shows an initial state of the typeface management table created in the second embodiment. The difference from FIG. 6 of the first embodiment is that a column for storing and holding the number of accesses of each code range in the same typeface is provided. Since the procedure for creating the typeface management information table itself is the same as that in the first embodiment, a description thereof will be omitted and the character data acquisition process will be described with reference to FIG.
[0041]
The difference between the flowchart of FIG. 10 and FIG. 8 in the first embodiment is that step S807 is replaced with step S807 'and step S811 is added.
[0042]
In the figure, when there is a character data acquisition request from the application unit for the typeface management table, and the requested character data is managed by the management table, the process proceeds from step S804 to step S807 '. When processing proceeds to step S807, the file name is acquired from the typeface management information table, and the value in the corresponding access column of the typeface management information table is incremented by “1”. In step S808, based on the acquired file name, typeface data is acquired from the file, and the process proceeds to end processing S811.
[0043]
As a result, for example, the typeface management information table is as shown in FIG.
[0044]
In step S811, a process of rearranging the order stored in the typeface management file by the number of accesses in the management table at that time is performed, and the present process ends.
[0045]
For example, if the typeface management information table is in the state shown in FIG. 11, the file access count for typeface A is A4> A3> A2> A1, so the contents of the typeface information file are as shown in FIG. The order is changed.
[0046]
Since the table is created in accordance with the order stored in the typeface information file when the apparatus is activated, the typeface management information table at the next activation is as shown in FIG. That is, the file A4 in the typeface A is positioned first, so that it is possible to improve the access speed for the character data location acquisition request.
[0047]
In the second embodiment, the typeface information file is updated each time a character data acquisition request is generated. However, the processing speed can be further increased by performing the power-off processing of the system.
[0048]
In the system power-off process, the number of accesses of the partial files (A1 to A4) constituting each typeface is also saved as an appropriate file, and the number of accesses is obtained from the file at the next system startup, and the table is stored. The order may be determined.
[0049]
As described above, according to the second embodiment, since the character code range having a larger number of accesses is preferentially arranged at the head of the typeface information management table, the overall cost performance related to the generation of character patterns can be improved. It becomes possible.
[0050]
<Description of Third Embodiment>
Next, a third embodiment will be described. In the third embodiment, the code range specified by the user among a plurality of typefaces is replaced with another typeface.
[0051]
FIG. 14 shows the structure of the divided file in the third embodiment. A different point from that of FIG. 4 in the first embodiment is that a plurality of typefaces are divided. In the figure, A1 to A3, B1 to B3, and C2 indicate file names, respectively.
[0052]
In the third embodiment, for example, the range of the character codes “101” to “199” in the font A is subordinate to that of the font C. For example, when a request for character data of the character code 101 in the font A comes from the application, Data is extracted from the file C2 (actually the typeface C) and processed.
[0053]
According to this, for example, it is possible to generate a desired typeface pattern for each character type while using one “typeface name” of alphabets, numbers, flat, katakana, kanji, and the like. In some cases, for example, when the entire font A is an outline font and the font C is a dot pattern, a specific portion can be processed at high speed.
[0054]
An example of the contents of the typeface information file in the third embodiment is shown in FIG. The typeface information file can be created freely by the user or automatically by the system. Alternatively, as shown in the first embodiment, the user may select font data at the stage of installing the font data in the system.
[0055]
As shown in FIG. 15, if the part of the file A2 of the typeface A is subordinate to the corresponding part of the typeface C, the file A2 in the typeface A need not be installed in the external storage device 109. Memory consumption of the device 109 can also be suppressed. Further, when a user registers his / her own typeface, it is only necessary to determine which type of character code is used for which typeface, so the amount of memory consumed by the user typeface is substantially dependent on it. Only the typeface information file showing the relationship. As shown in FIG. 15, information indicating whether or not each typeface is subordinate is added. In one typeface, whether or not it is subordinated for each character code range. If there are subordinates, information indicating what the typeface is is added.
[0056]
Now, when there is a typeface information file as shown in FIG. 15, when this system is activated, a typeface management information table as shown in FIG. 16 is created in the typeface information management area of the RAM 103.
[0057]
Processing related to the creation of the typeface management information table will be described with reference to the flowchart of FIG.
[0058]
When this process is started in step S751, a certain area is secured in the typeface information management area 205 in order to create a typeface management information table. In step S752, the typeface information file stored in the external storage device 109 is opened, and in the next step S753, typeface information is acquired from the opened typeface information file.
[0059]
When the process proceeds to step S754, it is determined whether or not the typeface being noticed is a dependent typeface. If it is a dependent process, the process returns to step S753. If it is determined that the typeface is not a dependent typeface, the process proceeds to step S755.
[0060]
The process proceeding to step S755 means the start of table creation for one typeface. Therefore, here, the typeface name is written in the typeface information management table, and a table in which the dependency relationship for each character code range with respect to the typeface is clarified by the processing described below is constructed.
[0061]
In step S756, the following information is extracted from the open typeface information file, that is, the subordinate information for the code range in the target typeface. In step S757, it is determined whether or not the extracted character code range is subordinate, in other words, whether or not there is subordinate information in the extracted information.
[0062]
If there is no dependent information, the process proceeds to step S758, and the file name unique to the focused typeface is written in the typeface information management table so as to correspond to the focused code range.
[0063]
If there is subordinate information, the process proceeds to step S759, where the corresponding file name of the subordinate typeface is extracted and written into the typeface information management table.
[0064]
In any case, the process proceeds to step S760, and the file is opened and made accessible based on the file name acquired in step S758 or 759. In the next step S761, information on the start code and end code of the typeface data stored in the file is read from the typeface file that can be accessed, and written in the typeface information management table.
[0065]
When the process proceeds to step S762, it is determined whether or not the process for one typeface has been completed. If it is determined that the process has not been completed, the process returns to step S756 to perform the above process.
[0066]
If it is determined that the processing for all code ranges for one typeface has been completed, the process advances to step S763 to determine whether there is a typeface to be processed next. If the typeface to be processed remains, the process returns to step S753. If there is no typeface to be processed, the process proceeds to step S764.
[0067]
If the process proceeds to step S764, the open typeface information file is closed, and the process ends in step S765.
[0068]
As a result, for example, when there is a typeface information file as shown in FIG. 15, a typeface information management table as shown in FIG. 16 is created.
[0069]
Note that the processing for acquiring the font data using the font information management table created in this way is the same as that in the first embodiment described above. That is, when a request is made to acquire the typeface data of the character code “101” of the typeface A from the application section, the table is checked, and it is detected that the character code “101” for the typeface A is the file name C2. The corresponding typeface data is extracted from C2, and a character pattern is generated. If this typeface data is outline data, it is once passed to the rasterizer 305 to generate a dot pattern and passed to the application.
[0070]
As described above, according to the third embodiment, by replacing data of another typeface with a desired code range of one typeface, for example, a sentence mixed with English or Japanese is created. In some cases, it is possible to input characters in a typeface that reflects the user's will without changing the typeface.
[0071]
Moreover, the typeface data originally associated with the code range instructed to depend on the data of other typefaces at the time of installation or at an arbitrary time becomes virtually unnecessary, and that part is removed from the installation target or deleted. Therefore, the memory consumption of the external storage device 109 can be suppressed.
[0072]
<Description of Fourth Embodiment>
A fourth embodiment will be described below. Normally, when installing typeface data in a system, it is essential to store one entire typeface in one logical storage device. The fourth embodiment makes it possible to store one predetermined storage destination in a logically different device. In this way, for example, each logical device does not have enough free space to store all of the typeface, or responds to a request for providing a certain amount of free space in each logical device.
[0073]
Incidentally, the logical storage device referred to here is a concept including a physical device. For example, when one physical storage device is logically divided into a plurality of logical devices, or the same physical device. This is a concept including devices that have different paths.
[0074]
An example of a typeface information file in the fourth embodiment is shown in FIG. In the drawing, only one typeface is shown for ease of explanation. In the figure, A1 to A4 are file names of the typeface A corresponding to the code range as described in the first to third embodiments.
[0075]
Briefly describing the drawing, it is shown that typeface data in a certain code range for the typeface A is stored in the logical drive A as the file A1.
[0076]
In the fourth embodiment, the typeface information table is extracted when the system is activated, and a typeface information management table as shown in FIG. 19 is created based on the data described therein.
[0077]
As for the format of the typeface information file and the typeface information management table created based on the typeface information file in the fourth embodiment, the drive name of the storage destination is described with respect to the format shown in FIGS. 5A and 6 of the first embodiment. Only the difference is. Those skilled in the art will be able to easily guess if there is a gap between the processing contents of the first embodiment described above and the structure of the typeface information file shown in FIG. Therefore, the description is omitted here.
[0078]
However, in the fourth embodiment, it has been described that the storage destination of the files of the individual code ranges constituting the typeface data is specified at the time of installation, but of course, all of them are once stored in the same storage drive, and thereafter If necessary, the font data in the appropriate code range may be moved to another storage device (for example, a higher speed external storage device).
[0079]
As described above, according to the fourth embodiment, one typeface data does not have to be in the same position of one logical device, and can be stored in a desired device, so that an external storage device can be used effectively. It becomes possible.
[0080]
<Description of Fifth Embodiment>
Next, a fifth embodiment will be described. For example, even when a character design of a specific range is used, it is necessary to store the font data of the entire range of the font of the design, so the memory consumption of the external storage device cannot be ignored. In the fifth embodiment, such a problem is eliminated.
[0081]
FIG. 20 simply shows the structure of the divided file. In the drawing, the typeface A indicates that one character typeface is composed of character codes 0 to 500, and three parts of A1 of 0 to 100, A2 of 101 to 199, and A3 of 200 to 500 are shown. As a general code range. The typeface A 'is the same as the typeface A, has a different character set, has only a character data portion that must be changed when the character set is switched, and the included character code is the same as 101 to 199 A2. That is, as a typeface, A 'is the same as A, but only character codes 101 to 199 are used.
[0082]
Note that a character set refers to a character expression in the same code range (space), for example, flat and katakana, English alphabet and Russian alphabet.
[0083]
In order to perform the typeface management, the typeface information file in the fifth embodiment describes the relationship between the typeface file and the character set as shown in FIG.
[0084]
The procedure for creating the typeface management information table constructed in the typeface management information area 205 in the RAM 103 at the time of system startup is performed according to the procedure shown in FIG. 7, and therefore the description thereof is omitted here. As a result, the typeface management information table shown in FIG. 22 is constructed. In the table, A1, A2, A3 and A2 'are file names of data for constructing typeface data A and A', respectively.
[0085]
The flow of character data acquisition using the typeface management information table created in this way is also performed according to the procedure shown in FIG. 8, but will be described as follows.
[0086]
First, in step S801, character data acquisition processing is started.
[0087]
In step S802, information (character code, typeface information, character set) related to characters acquired from the AP unit 307 in FIG. 3 is acquired. In the next step S803, the typeface management information table in FIG. 6 is searched to check whether the corresponding typeface and character set exist. When it exists, it progresses to step S804, and when it does not exist, it progresses to step S805.
[0088]
In step S805, it is determined whether another typeface still exists on the typeface management information table shown in FIG. If it exists, the process advances to step S803 to check another typeface in the table.
[0089]
If it is determined that the requested typeface exists in the table and the process proceeds to step S804, it is determined whether the requested code is included in the start code and end code of the target character set in the target typeface. . In addition, since the code range assumes that “−1” is stored for both the start code and the end code for a file that does not exist, it can be easily determined whether the character data of the code is managed.
[0090]
If it is determined in step S804 that the requested character code is outside the range of the focused character set, the process proceeds to step S806, where there is an unchecked character set in the same typeface. Judge whether. If there is, the process returns to step S804, and it is determined again whether or not there is a character set corresponding to the request code. If there is no character, the process proceeds to step S809 to perform a characterless process.
[0091]
On the other hand, if it is determined that there is a character set that manages the typeface of the requested character and its character code, the process advances to step S807 to obtain a file name from the typeface management information table, and the file name is obtained in step S806. Get the corresponding character data from the file. And it progresses to step S810 and complete | finishes a process.
[0092]
As described above, according to the fifth embodiment, even if characters of the same typeface or different character sets are designated, only the typeface data of the code range including only the characters to be used is included. The data corresponding to all the character codes is not necessary, and the storage area of the external storage device can be used effectively.
[0093]
<Description of Sixth Embodiment>
In the fifth embodiment, for example, when using the same typeface A ′ as the typeface A but using a different character set, only the typeface data in the character code range to be used is stored in the external storage device. It was intended to make effective use of memory.
[0094]
In the sixth embodiment, different typefaces are stored, and typeface data in the same range of the other typeface is used as typeface data of a specific code range in one typeface. As a result, it is not necessary to have redundant typeface data in common use, and the memory can be used efficiently.
[0095]
FIG. 23 simply shows the structure of the divided file in the sixth embodiment. In the drawing, the typeface A indicates that one character typeface is composed of character codes 0 to 500, and three parts of A1 of 0 to 100, A2 of 101 to 199, and A3 of 200 to 500 are shown. As a general code range.
[0096]
Similarly to type A, type B is managed by dividing the entire character code space into three, and among these, character codes 0 to 100 and 200 to 500 use type B data specific to type B. For 101-199, the font A is used.
[0097]
In order to perform the typeface management, the typeface information file in the fifth embodiment is composed of the typeface type and the divided typeface data file name for constructing the typeface as shown in FIG.
[0098]
The creation procedure of the typeface management information table constructed in the typeface management information area 205 in the RAM 103 at the time of starting the system is performed according to the procedure shown in FIG. 7, so the description here is omitted. 25 is constructed in the typeface information management area 205 in the RAM 103.
[0099]
The character data acquisition process may also follow the flowchart shown in FIG. That is, when there is a character data acquisition request from the AP section, it is determined which typeface of the typeface information management table has been selected based on the typeface data specified in the request, and then in the typeface The file name managing the designated character code is acquired, and then the corresponding character data is acquired from the file.
[0100]
<Description of Seventh Embodiment>
So far, when identifying typeface data, the typeface name or type number representing the typeface, or the type name and type number, or the style information, width information, and weight information as required, are used separately. The determination process has to be complicated and takes time.
[0101]
Therefore, in the seventh embodiment, an example will be described in which such discrimination can be performed easily and at high speed.
[0102]
FIG. 26 shows a format of style width weight information in the seventh embodiment. As shown in the figure, 4 bits (0 to 15 as values), 4 bits as width information, and 8 bits (0 to 255) as weight information are allocated as style information. As style information, “0” is defined as regular, “1” is defined as italic,. As width information, 4, 6, 8, 10, and 12 are associated with extra condence, condence, regular, expand, and extra expand. As weight information, 60, 70, 80, 90, 100, 110, 120, 130, 140 are associated with special, extra fine, fine, medium thin, medium, medium thick, thick, extra thick, and special thick. It was.
[0103]
Now, an installation procedure in this embodiment (installation of the external storage device 109 from the floppy disk to the hard disk) will be described with reference to the flowchart of FIG.
[0104]
First, in step S301, a request is made to set a medium in which typeface data to be installed and data necessary for installation (installation data file) are stored, and the user is allowed to specify the medium.
[0105]
In step S302, the typeface name information, typeface number, and style weight information are read from the installation data file in which the typeface data to be installed is stored.
[0106]
In step S303, the typeface data in the typeface information file already installed at the installation destination is read. At this time, if it is determined in step S304 that the typeface information file to be read does not exist in the installation destination, the typeface file is created (step S305).
[0107]
Next, the process proceeds to step S306, where the contents of the typeface information file at the installation destination are compared with the typeface information to be installed. The priority of the comparison processing is: first font type number, second style width weight information, and third font name. If all of the above items are the same, the font is unconditionally the same typeface. Also, if the contents of the first item and the second item are the same, the character data of the typeface is the same, so the processing that prevents the contents of the typeface from overlapping and the typeface name is unique. Whether to process is determined by this processing (for example, the user is instructed).
[0108]
When the process proceeds to step S307, it is determined whether the typeface data to be installed by this installation process is updated or newly added. The update process is a case where all three items are the same as described above.
[0109]
If it is determined that the update processing is to be performed, the process proceeds to step S309, and the existing font type data is overwritten at the same typeface existing position described in the typeface information file. At this time, if the installation destination is separately instructed by the user, a process of writing in the instructed position is performed.
[0110]
If it is determined that the new typeface is installed, the process advances to step S308 to install the typeface name, typeface number, style width weight information, tag file name, and typeface information.
[0111]
Finally, this process ends and returns to the caller.
[0112]
FIG. 28 shows the contents of the installation media and the contents of the installation data file therein.
[0113]
Information necessary for installation is described in the installation data file. Typeface information is stored in the typeface file. The tag file stores data for creating a typeface from information in the typeface file. Therefore, it is considered that there is a typeface for a tag file using a plurality of tag files from one typeface data.
[0114]
FIG. 29 shows an example of the contents of the typeface information file in the present embodiment. “NAME” is a description name, font information (main font number, sub font number, style width weight information). “DEFTAG” is a tag file name and a typeface name existing in the tag file. “FILE” is the installation destination of the typeface disk and the file name of the typeface file.
[0115]
FIG. 30 shows an example of the contents of a tag file. In this file, face names are stored in the tag file size, typeface number, style width weight information, description name, and typeface metrics information. The font type number and style weight information are linked to the font data.
[0116]
FIG. 31 shows the contents of the typeface file. This file stores typeface composition information (file size), typeface data (typeface start code, number of characters), typeface number, and style width weight information.
[0117]
As described above, according to the seventh embodiment, after installation, the style width weight including the style information, the width information, and the weight information of the typeface information is included as information representing the typeface, so that the typeface name, the typeface number, etc. This makes it possible to distinguish fonts more easily than at high speed.
[0118]
<Description of Eighth Embodiment>
An eighth embodiment will be described. In the eighth embodiment, a principle for optimizing font-related file names will be described. As an example, an example in which the file name managed by the system (or OS) in this embodiment is 8 characters (8 bytes) and the extension is 3 characters (3 bytes) will be described.
[0119]
FIG. 32 shows the character structure used for the file name of the typeface physical file in the eighth embodiment.
[0120]
In the figure, (1) is the two characters for typeface identification shown in FIG. 34, and (2) is a number representing the style width information (0 to 9) shown in FIG. The number indicating the weight information shown in FIG. 37 is located in (3), and the size / support area information shown in FIG. 38 is in (4). {Circle over (5)} is file identification information, and the character string “JFD” is used in the embodiment.
[0121]
FIG. 33 shows the structure of the file name of the typeface logical data file of typeface data. (6) is typeface management information, which is expressed using arbitrary three characters. (1) indicates the release order of this file, which is applied according to FIG. (3) is the weight information shown in FIG. (8) is metrics information identification information. This item indicates the release order of this file. If the information is the same as the printer font, it is represented by “P”. {Circle over (5)} is file identification information. In this case, “FON” is used.
[0122]
Hereinafter, FIGS. 34 to 38 will be described in more detail.
[0123]
FIG. 34 shows physical typeface identification information. MI stands for Mincho, GO stands for Gothic, RG stands for Round Gothic, KA stands for Samurai typeface, and KY stands for Textbook typeface. In FIG. 35, MIN represents Mincho, GOT represents Gothic, RGO represents Maru Gothic, KAI represents 楷 typeface, and KYO represents textbook type.
[0124]
FIG. 36 shows style width information. There are two types of styles, regular and italic, and width information includes extra condence, condence, regular, expand, and extra expand. With this combination, for example, as shown in the figure, “1” is assigned in the case of regular and extra condence. Similarly, “1” is assigned to regular and condence, “2” is assigned to regular and regular, “3” is assigned to regular and expand, and 4 is assigned to regular and extraexpand. Also, “5” is assigned to italicr and extra condence, “6” is assigned to italic and condence, “7” is assigned to italic and regular, “8” is assigned to italic and expand, and “9” is assigned to italic and extra expand. .
[0125]
FIG. 37 shows weight information. In the embodiment, numerals 1 to 9 are assigned to special, extra-thin, fine, medium-thin, medium, middle-thick, thick, extra-thick, and extra-thick.
[0126]
FIG. 38 shows size / support area information in the embodiment. The size data is represented in hexadecimal using the upper 8 bits of this data ("1" to "F" in terms of characters). In the case of scalable typeface data such as outline data, the number “0” is used. Also, each area is assigned to the lower 8 bits, and if it is a corresponding area, that bit is set to “1”. In the embodiment, bit 7 is a non-Kanji area, bit 6 is a first level area, bit 5 is a second level area, bit 4 is an old JIS area, bit 3 is a kana area, bit 2 is a proportional area, and bit 1 is an external character area. Bit 0 is set as a special area.
[0127]
The file name is determined as described above. Hereinafter, typeface information and an example of determination based on the typeface information will be shown.
[0128]
Typeface information {1. Typeface name: Mincho, 2. Style name: regular, 3. Character width information: condence, 4. Character weight information: Medium, 5. Character size: 100 dots, 6. Support area, first level, 7. Metric information identification information: “P” because it is the same metric information as the printer font, file classification with 8 extensions: JFD (typeface physical data file) and FON (typeface logical data file), 9: typeface management environment name: FontManaging }.
[0129]
In this case, in order to determine the name of the typeface physical data file, (5) shown in FIG. 32 becomes “JFD”. (1) becomes “MI” according to FIG. Further, (2) is “1” according to FIG. 36, and (3) is “5” according to FIG. When the size 100 is expressed in hexadecimal, it is 64H, and since only bit 6 is set according to FIG. 38, the lower 8 bits are 40H, and therefore (4) is “6440”.
[0130]
That is, the file name is “MI156440.JFD”.
[0131]
Next, in the case of a typeface logical data file, the extension {circle over (5)} is unified to represent “FON”, and {circle over (6)} represents FontManager, so “FO_, {circle over (1)}” is “MIN”, 3 is “5” and FIG. 8 is “P” according to FIG.
[0132]
Therefore, the name of this typeface logical data file is “FM_MIN5P.FON”.
[0133]
As described above, according to the eighth embodiment, the information indicating the data stored in the file is displayed in the typeface file name, so that the information stored in the typeface file can be easily understood. .
[0134]
<Description of Ninth Embodiment>
A ninth embodiment will be described.
[0135]
Normally, for character pattern generation, a bitmap pattern is stored in advance as described above, a bitmap font method for obtaining the pattern, and outlines of the character are formed based on the outline data, and the inside of the character pattern is filled. There is an outline font method that obtains character patterns.
[0136]
The former is an effective method for relatively small characters (characters with a small dot configuration), and the characters are not crushed, and even if they are generated, they can be thinned out to the basic character pattern. High-speed processing is possible. The latter requires a process of drawing an outline with a rasterizer and filling the inside thereof, so that the speed is reduced, but the quality of large characters (characters having a final dot configuration) can be improved.
[0137]
However, with the bitmap font method suitable for generating relatively small characters, a character pattern that is required with a relatively high probability and a character pattern with a low probability are performed with uniform processing from the basic character pattern. There is still room for improvement.
[0138]
In the ninth embodiment, the generation method using the bitmap font is further improved.
[0139]
In the ninth embodiment, an example will be described in which a bitmap font of 20 × 20 dots is resourced, and then a character pattern of 4 × 4 to 20 × 20 is generated.
[0140]
FIG. 39 is a flowchart showing a procedure of character pattern generation processing using a bitmap font in the embodiment.
[0141]
First, in step S1, the requested character code and character size are acquired. In step S 2, the character pattern (20 × 20 dots) of the requested character code is taken out from the ROM 102 or the external storage device 109 and developed in a predetermined area in the RAM 103.
[0142]
In step S3, the number of vertical lines that can be reduced without deformation in one process is calculated. If the requested character size is less than half of the previously acquired character size (20 × 20), the character size is obtained up to half of the character pattern; otherwise, (character size before reduction + 2) / 5 is obtained. . This formula is mainly intended to prevent deformation (bias) by limiting the number of lines to be reduced once to 4 lines or less when limited to character patterns of 20 × 20 dots or less.
[0143]
When the process proceeds to step S4, an actual reduction process is performed. Here, reduction processing for the line obtained in step S3 is performed. At this time, the position where the reduction process is performed is an equal division position obtained by the width of the character pattern / (number of reduction lines + 1). Here, when the number of reduced lines = 2, the denominator becomes an odd number, so that there is a possibility that the equal division cannot be performed correctly and deformation is performed (see FIG. 40). Therefore, correction processing is performed to shift the position by the remaining amount generated from the calculation of the reduction position at the time of the second reduction. This is shown in FIG. Also, when the number of reduction lines = 4, the denominator is an odd number, but when the character pattern before reduction is 20 × 20 dots or less, there is no problem, so no particular processing is performed. In the calculated vertical line, a dot pattern of one line is generated by superimposing (logical sum) processing with the right adjacent line, in other words, by the position of the line to be reduced and the right adjacent line. .
[0144]
In step S5, it is determined whether the reduction result has reached the requested size, and the determination is made based on the difference between the total number of reduced lines and the number of lines reduced in step S4. If the result of determination is that the requested size is not reached, the process returns to step S3 and the reduction process is repeated. If the creation of the requested character pattern is completed, the character pattern generated at the request source is output in step S6.
[0145]
In the above description, the meaning that the number of lines to be reduced in one reduction process is reduced to 4 or less means, for example, when a 12 × 12 pattern is generated from a basic size of 20 × 20 (finally 8 lines). (= 20-12) is reduced) In the first time, instead of reducing all 8 lines, it means that 4 lines are reduced in the first time, and then 4 lines are further reduced. To do. Incidentally, as described above, when reducing by 2 lines, that is, when an 18-line character pattern is generated, there is no problem because the number of reduction lines is 4 or less. However, the correction process described above is performed.
[0146]
In the ninth embodiment, an example of reducing in the horizontal direction has been described. However, reduction in the vertical and vertical directions can be processed in exactly the same way, and further, both vertical and horizontal can be processed. However, the present invention is not limited thereto.
[0147]
In addition, the bitmap to be used is not limited to 20 × 20, and is not particularly limited as long as the processing can be efficiently performed when reducing each size.
[0148]
In addition, multiple bitmap fonts of the minimum size that can be acquired in one process of “(character size before reduction + 2) / 5” such as 20 × 20, 16 × 16, 13 × 13, 10 × 10, etc. are prepared in advance. However, the number of loops in steps S3 to S5 may be reduced and used for improving the quality.
[0149]
As described above, according to the ninth embodiment, a bitmap font is used only for a size (4 × 4 to 20 × 20) that is most likely to be used when the requested character pattern size is the main text creation or the like. It is possible to reduce the character pattern with good performance by simplifying the calculation of the position to be used and the like so as to be most effective for the limited size.
[0150]
<Description of Tenth Embodiment>
The tenth embodiment will be described.
[0151]
In the above embodiment (for example, the eighth embodiment), the file name reflects the data that the file has. Therefore, when the type providing side newly provides a name different from the name supplied in the past, it may be managed to give a different file name. However, if the system user can create a typeface, the supply side cannot manage the file name used by the user. Therefore, there is a case where a typeface with the same information is created, and it is necessary to copy the typeface created after deleting the typeface containing the same information, or after changing the corresponding typeface information of the same information. .
[0152]
In the tenth embodiment, this problem is solved.
[0153]
FIG. 42 shows an example of the file name given to the typeface information file in the embodiment. As shown in the figure, in the tenth embodiment, 8 characters (8 bytes) are used for the file name portion and 3 characters (3 bytes) are used for the extension. In this embodiment, “FG_US” is assumed to be fixed, and “□” shown thereafter is given the same value as the typeface number. However, the method of naming the file is not limited to this.
[0154]
FIG. 43 shows the internal structure of the typeface information file. In this typeface information file, a typeface name indicated by reference numeral 14 and a typeface number indicated by reference numeral 15 are stored. In addition, for example, information such as creation date and version and version is also stored.
[0155]
FIG. 44 shows the structure of a typeface storage information file that manages the storage destinations of the typefaces stored in the external storage device 109, and contains information about all the typefaces stored. In this typeface storage information file, there are a registration number of typeface 1 indicated by reference numeral 16, a typeface information file name of typeface 1 of reference numeral 17, a typeface name of typeface 1 of 18, and a typeface number of typeface 1 of 19. Similarly, the same information is stored for each of the typefaces 2,.
[0156]
A typeface management procedure in the tenth embodiment will be described based on the flowchart of FIG.
[0157]
First, in step S501, the typeface information is acquired from the typeface information file of the copy source (typeface information file managing the typeface data created by the user, see 43). In step S502, typeface information relating to the typeface stored is acquired from a typeface storage information file (see FIG. 44) under the control of the system.
[0158]
In step S503, it is determined from the information acquired in previous steps S501 and S502 whether or not a font with the same font name is stored. If it is determined that a typeface with the same typeface name is already stored in the typeface storage information file, the process proceeds to step S504. If it is determined that the typeface name is not registered in the system, the process proceeds to step S507.
[0159]
Here, it is determined that the same font name is not registered in the system, and in step S507, it is determined whether the same font number as the font number of the font created by the user is registered in the system. If it is determined that there is no same typeface, the process proceeds to steps S512 and S513, and the contents of the typeface information file created by the user are copied to the typeface storage information file storing the typeface information registered in the system. (Add) and update the typeface storage information file.
[0160]
On the other hand, if it is determined in step S503 that a font with the same font name has already been registered, the process proceeds to step S504, where it is determined whether or not they are the same font number.
[0161]
If it is determined that the typeface number is the same, that is, both the typeface name and typeface number are already registered in the system, the process proceeds to steps S505 and S506, and the user enters the corresponding position in the typeface storage information file. Overwrites with the contents of the created font information file and updates the font storage information file.
[0162]
If it is determined “YES” in step S507, that is, if it is not the same typeface name but the same typeface number, the process proceeds to step S508, and the typeface to be newly registered is used. A typeface number that is not present is detected, and the process proceeds to step S509.
[0163]
If the determination in step S504 is “NO”, that is, the same typeface name exists but the typeface number is different, the process proceeds to step S509. In this case, the typeface number will not overlap.
[0164]
In any case, the processing in step S509 is the case where the typeface name is the same and the typeface number is different. The typeface name is important from the user's side. If there are multiple typeface names, it can be confusing. Therefore, in steps S509, S510, and S511, the typeface name file to be registered is changed (for example, “USR” is added to the typeface name), and the changed typeface name is added to the typeface storage information file. In addition, the typeface storage information file is updated by registering with the typeface number.
[0165]
In the above example, the typeface name is used as key information to determine the registration status of the typeface, the typeface number is matched with the file name of the typeface information file, and the typeface containing the same typeface information is copied by changing the typeface number. It becomes possible to manage. In addition, the present invention provides a tool that allows a user to create a typeface, and exhibits a great effect when the typeface created by the tool is used.
[0166]
In the above embodiment, the typeface name is searched for the typeface information and the typeface number is changed. However, the typeface number may be used for the search and the typeface name may be changed. This is not the case for the key information used for and the typeface information to be changed.
[0167]
As described above, according to the tenth embodiment, the typeface information is associated with the file name of the typeface information file, and when a typeface containing the same typeface information is detected, the typeface information is changed and copied (registered). ), It is possible to manage the typeface even when the same typeface information is included.
[0168]
In addition, when the user can create a typeface, even if a typeface with the same information is created, the typeface created after deleting the typeface that contains the same information is copied or the typeface that corresponds to the same information It is possible to reduce the work of copying after changing the information.
[0169]
The present invention is not limited to the first to tenth embodiments, but may be applied to a system constituted by a plurality of devices or an apparatus constituted by one device. Needless to say, the present invention can also be applied to a case where the present invention is achieved by supplying a program to a system or apparatus.
[0170]
【The invention's effect】
As described above, according to the present invention, it is possible to provide a flexible typeface data management method.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram according to an embodiment.
FIG. 2 is a RAM memory map according to the embodiment.
FIG. 3 is a diagram illustrating a configuration example of a character processing device.
FIG. 4 is a diagram illustrating a configuration example of a divided file according to the first embodiment.
FIG. 5A is a diagram showing an example of the contents of a typeface information file in the first embodiment.
FIG. 5B is a diagram showing a configuration example of a typeface file after installation in the first embodiment.
FIG. 6 is a diagram illustrating an example of contents of a typeface management information table according to the first embodiment.
FIG. 7 is a flowchart illustrating a procedure of a typeface management information table creation process in the first embodiment.
FIG. 8 is a flowchart showing a flow of character data acquisition processing in the first embodiment.
FIG. 9 is a diagram illustrating an example of an initial state of a typeface management information table according to the second embodiment.
FIG. 10 is a flowchart showing a flow of character data acquisition processing in the second embodiment.
FIG. 11 is a diagram illustrating an example of an intermediate state of a typeface management information table according to the second embodiment.
FIG. 12 is a diagram illustrating an example of the contents of a typeface information file updated in the second embodiment.
FIG. 13 is a diagram illustrating an example of a state of a typeface management information table when activated with the contents of an updated typeface information file according to the second embodiment.
FIG. 14 is a diagram illustrating a configuration example of a divided typeface file according to a third embodiment.
FIG. 15 is a diagram illustrating an example of the contents of a typeface information file according to the third embodiment.
FIG. 16 is a diagram illustrating a content example of a typeface management information table according to the third embodiment.
FIG. 17 is a flowchart illustrating a flow of processing for creating a typeface management information table according to the third embodiment.
FIG. 18 is a diagram illustrating an example of the contents of a typeface information file according to the fourth embodiment.
FIG. 19 is a diagram illustrating a content example of a typeface management information table according to the fourth embodiment.
FIG. 20 is a diagram illustrating a configuration example of a divided file according to the fifth embodiment.
FIG. 21 is a diagram showing an example of the contents of a typeface file in the fifth embodiment.
FIG. 22 is a diagram illustrating a content example of a typeface management information table according to the fifth embodiment.
FIG. 23 is a diagram illustrating a configuration of a divided typeface file according to the sixth embodiment.
FIG. 24 is a diagram illustrating an example of the contents of a typeface information file according to the sixth embodiment.
FIG. 25 is a diagram illustrating a content example of a typeface management information table according to the sixth embodiment.
FIG. 26 is a diagram illustrating a format of style width weight information according to the seventh embodiment.
FIG. 27 is a flowchart showing a typeface installation procedure in the seventh embodiment;
FIG. 28 is a diagram showing the contents of an installation medium and the contents of an installation data file in the seventh embodiment.
FIG. 29 is a diagram illustrating an example of the contents of a typeface information file according to the seventh embodiment.
FIG. 30 is a diagram showing an example of the contents of a tag file in the seventh embodiment.
FIG. 31 is a diagram illustrating an example of the contents of a typeface file according to the seventh embodiment.
FIG. 32 is a diagram illustrating a character structure used for a file name of a typeface physical file according to the eighth embodiment.
FIG. 33 shows a structure of a file name of a typeface logical data file of typeface data in the eighth embodiment.
FIG. 34 is a diagram showing various character strings representing identification information of a physical typeface in the eighth embodiment.
FIG. 35 is a diagram showing various character strings representing identification information of a typeface logical data file according to the eighth embodiment.
FIG. 36 is a diagram showing the meaning content of style width information in the eighth embodiment.
FIG. 37 is a diagram showing the meaning content of weight information in the eighth embodiment.
FIG. 38 is a diagram showing the relationship between size and support area in the eighth embodiment.
FIG. 39 is a flowchart showing the processing content related to reduced character pattern generation in the ninth embodiment;
FIG. 40 is a diagram illustrating a problem of reduction processing in the ninth embodiment.
FIG. 41 is a diagram illustrating a reduction process after correction in the ninth embodiment.
FIG. 42 is a diagram illustrating a format of a name of a typeface information file according to the tenth embodiment.
FIG. 43 is a diagram illustrating an internal structure of a typeface information file according to the tenth embodiment.
FIG. 44 is a diagram illustrating the structure of a typeface storage information file according to the tenth embodiment.
FIG. 45 is a flowchart illustrating a typeface registration process according to the tenth embodiment;
[Explanation of symbols]
101 CPU
102 ROM
103 RAM
104 Keyboard control unit (KBC)
105 Keyboard (KB)
106 Display Control Unit (CRTC)
107 Display device
108 DKC
109 External storage device
110 Printer control unit
111 printer

Claims (14)

要求された文字に関するデータを書体データファイルから取り出すための書体データ管理方法において、
第1書体における、各々が連続するコードからなる部分コード空間のうち、何れの部分コード空間に対応する書体データファイルを、第2書体と共通に使用するようにする書体管理情報を保持し、
第1書体におけるコードを含む文字要求があった場合に、前記書体管理情報に基づき前記何れの部分コード空間の範囲に対応していれば、前記共通に使用する書体データファイルから書体データを獲得する
ことを特徴とする書体データ管理方法。
In a typeface data management method for retrieving data about a requested character from a typeface data file,
In the first typeface, among the partial code spaces each consisting of continuous codes, the typeface data file corresponding to any partial code space is held in common with the second typeface, and the typeface management information is held.
When there is a character request including a code in the first typeface, the typeface data is obtained from the commonly used typeface data file if it corresponds to the range of any partial code space based on the typeface management information. A typeface data management method characterized by that.
前記何れかの部分コード空間に対応する書体データファイルはドットパターンのデータからなり、前記何れの部分コード空間以外の部分コード空間に対応する書体データファイルはアウトラインフォントのデータからなることを特徴とする請求項1に記載の書体データ管理方法。The typeface data file corresponding to any one of the partial code spaces is composed of dot pattern data, and the typeface data file corresponding to the partial code space other than any of the partial code spaces is composed of outline font data. The typeface data management method according to claim 1. 前記共通に使用する書体データファイルを前記第1書体に従属させるようにする登録制御手段を有することを特徴とする請求項1又は2に記載の書体データ管理方法。3. The typeface data management method according to claim 1, further comprising registration control means for making the common typeface data file dependent on the first typeface. 前記部分コード空間に対応した書体データファイルは、ファイル名称によって管理されることを特徴とする請求項1乃至3の何れか1項に記載の書体データ管理方法。4. The typeface data management method according to claim 1, wherein the typeface data file corresponding to the partial code space is managed by a file name. 前記何れの部分コードは、何れかのキャラクタセットに対応することを特徴とする請求項1乃至4の何れか1項に記載の書体データ管理方法。5. The typeface data management method according to claim 1, wherein any one of the partial codes corresponds to any character set. 前記書体は漢字を含む書体であることを特徴とする請求項1乃至5の何れか1項に記載の書体データ管理方法。6. The typeface data management method according to claim 1, wherein the typeface is a typeface that includes Chinese characters. 要求された文字に関するデータを書体データファイルから取り出すための書体データ管理方法において、In a typeface data management method for retrieving data about a requested character from a typeface data file,
第1書体の書体データファイルにおける連続するコードからなる何れの部分コード空間に対して、第2書体の前記何れの部分コード空間の書体データを使用させる書体管理情報を保持し、Holding typeface management information for using the typeface data of any partial code space of the second typeface for any partial code space consisting of continuous codes in the typeface data file of the first typeface;
前記第1書体におけるコードを含む文字要求があった場合に、文字要求があったコードと前記書体管理情報とに基づき前記何れの部分コード空間の範囲に含まれるコードと識別されれば、前記第2書体の書体データファイルから前記何れの連続する部分コード空間の書体データを獲得するWhen there is a character request including a code in the first typeface, if it is identified as a code included in any of the partial code spaces based on the code for which the character request is made and the typeface management information, the first typeface Acquire typeface data of any continuous partial code space from the typeface data file of two typefaces.
ことを特徴とする書体データ管理方法。A typeface data management method characterized by that.
要求された文字に関するデータを書体データファイルから取り出すための書体データ管理装置において、
第1書体における、各々が連続するコードからなる部分コード空間のうち、何れの部分コード空間に対応する書体データファイルを、第2書体と共通に使用するようにする書体管理情報を保持する保持手段と、
第1書体におけるコードを含む文字要求があった場合に、前記書体管理情報に基づき前記何れの部分コード空間の範囲に対応していれば、前記共通に使用する書体データファイルから書体データを獲得する獲得手段と
を備えることを特徴とする書体データ管理装置。
In a typeface data management device for retrieving data about a requested character from a typeface data file,
Holding means for holding typeface management information for allowing a typeface data file corresponding to any partial code space in the first typeface to be used in common with the second typeface among partial code spaces each consisting of continuous codes When,
When there is a character request including a code in the first typeface, the typeface data is obtained from the commonly used typeface data file if it corresponds to the range of any partial code space based on the typeface management information. A typeface data management apparatus comprising an acquisition means .
前記何れかの部分コード空間に対応する書体データファイルはドットパターンのデータからなり、前記何れの部分コード空間以外の部分コード空間に対応する書体データファイルはアウトラインフォントのデータからなることを特徴とする請求項8に記載の書体データ管理装置。The typeface data file corresponding to any one of the partial code spaces is composed of dot pattern data, and the typeface data file corresponding to the partial code space other than any of the partial code spaces is composed of outline font data. The typeface data management device according to claim 8. 前記共通に使用する書体データファイルを前記第1書体に従属させるようにする登録制御手段を有することを特徴とする請求項8又は9に記載の書体データ管理装置。The typeface data management apparatus according to claim 8 or 9, further comprising registration control means for making the typeface data file used in common dependent on the first typeface. 前記部分コード空間に対応した書体データファイルは、ファイル名称によって管理されることを特徴とする請求項8乃至10の何れか1項に記載の書体データ管理装置。The typeface data management apparatus according to any one of claims 8 to 10, wherein the typeface data file corresponding to the partial code space is managed by a file name. 前記何れの部分コードは、何れかのキャラクタセットに対応することを特徴とする請求項8乃至11の何れか1項に記載の書体データ管理装置。12. The typeface data management apparatus according to claim 8, wherein any one of the partial codes corresponds to any character set. 前記書体は漢字を含む書体であることを特徴とする請求項8乃至12の何れか1項に記載の書体データ管理装置。The typeface data management apparatus according to any one of claims 8 to 12, wherein the typeface is a typeface that includes Chinese characters. 要求された文字に関するデータを書体データファイルから取り出すための書体データ管理装置において、In a typeface data management device for retrieving data about a requested character from a typeface data file,
第1書体の書体データファイルにおける連続するコードからなる何れの部分コード空間に対して、第2書体の前記何れの部分コード空間の書体データを使用させる書体管理情報を保持する保持手段と、Holding means for holding typeface management information for using the typeface data of any partial code space of the second typeface for any partial code space consisting of continuous codes in the typeface data file of the first typeface;
前記第1書体におけるコードを含む文字要求があった場合に、文字要求があったコードと前記書体管理情報とに基づき前記何れの部分コード空間の範囲に含まれるコードと識別されれば、前記第2書体の書体データファイルから前記何れの部分コード空間の書体データを獲得する手段とWhen there is a character request including a code in the first typeface, if it is identified as a code included in any of the partial code spaces based on the code for which the character request is made and the typeface management information, the first typeface Means for obtaining typeface data of any partial code space from a typeface data file of two typefaces;
を備えることを特徴とする書体データ管理装置。A typeface data management apparatus comprising:
JP2001376387A 2001-12-10 2001-12-10 Typeface data management method and apparatus Expired - Fee Related JP3715917B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001376387A JP3715917B2 (en) 2001-12-10 2001-12-10 Typeface data management method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001376387A JP3715917B2 (en) 2001-12-10 2001-12-10 Typeface data management method and apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP04904393A Division JP3285995B2 (en) 1993-03-10 1993-03-10 Typeface data management method and device

Publications (2)

Publication Number Publication Date
JP2002245032A JP2002245032A (en) 2002-08-30
JP3715917B2 true JP3715917B2 (en) 2005-11-16

Family

ID=19184592

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001376387A Expired - Fee Related JP3715917B2 (en) 2001-12-10 2001-12-10 Typeface data management method and apparatus

Country Status (1)

Country Link
JP (1) JP3715917B2 (en)

Also Published As

Publication number Publication date
JP2002245032A (en) 2002-08-30

Similar Documents

Publication Publication Date Title
US6111654A (en) Method and apparatus for replacing or modifying a postscript built-in font in a printer
KR100860210B1 (en) Method for selecting a font
US6714199B1 (en) Method and apparatus for typographic glyph construction including a glyph server
JP4124494B2 (en) Replacement computer font supply method and apparatus
US7064757B1 (en) Automatic synthesis of font tables for character layout
US5706462A (en) Self optimizing font width cache
US6754875B1 (en) Applying a computer-implemented test to determine whether to replace adjacent characters in a word with a ligature glyph
JPH09152859A (en) Printer
JP2003058528A (en) Character processing device, character processing method, and program
US6397233B1 (en) Document processing apparatus and computer program product therefor
US8386539B2 (en) Variable length data storage device, variable length data storage method, variable length data reading method, and a program for the same
US4717911A (en) Technique for chaining lines of a document together to facilitate editing or proofreading
JP3715917B2 (en) Typeface data management method and apparatus
JP3285995B2 (en) Typeface data management method and device
JP2866153B2 (en) Character processing apparatus and method
US5563626A (en) Smooth text display system
JP5142597B2 (en) Symbol display device, printer, symbol display method, program, and storage medium
JP2974322B2 (en) Character processing apparatus and method
JP3450869B2 (en) Bit image data generation device and bit image data generation method
JP2004303077A (en) Information processing apparatus, page description language generation method, program, and storage medium
JP2001216110A (en) Cache control method, print control apparatus and character processing apparatus and method using the same
JPH06274145A (en) Character processor
Grätzer Advances in TEX implementations. I. PostScript fonts
JPH09166974A (en) Document processing apparatus and cache function method
JP2907826B2 (en) Character font management device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040326

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050826

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090902

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090902

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100902

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110902

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110902

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120902

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees