JP3285995B2 - 書体データ管理方法及び装置 - Google Patents

書体データ管理方法及び装置

Info

Publication number
JP3285995B2
JP3285995B2 JP04904393A JP4904393A JP3285995B2 JP 3285995 B2 JP3285995 B2 JP 3285995B2 JP 04904393 A JP04904393 A JP 04904393A JP 4904393 A JP4904393 A JP 4904393A JP 3285995 B2 JP3285995 B2 JP 3285995B2
Authority
JP
Japan
Prior art keywords
typeface
file
font
character
information
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
JP04904393A
Other languages
English (en)
Other versions
JPH06266334A (ja
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 JP04904393A priority Critical patent/JP3285995B2/ja
Publication of JPH06266334A publication Critical patent/JPH06266334A/ja
Application granted granted Critical
Publication of JP3285995B2 publication Critical patent/JP3285995B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は書体データ管理方法及び
装置、例えばパーソナルコンピュータ、ワードプロセッ
サやデスクトップパブリッシング装置等で使用される各
種書体のデータファイルを管理する書体データ管理方法
及び装置に関するものである。
【0002】
【従来の技術】従来、文字処理システムにおいて管理さ
れる書体データは、管理の容易さなどの理由から、一つ
のファイル中に書体単位で全文字のデータを格納してい
た。
【0003】
【発明が解決しようとする課題】前述の従来方法による
書体データ管理方法では、以下に示す問題が有る。
【0004】あらかじめ書体データの全てがファイル中
に格納されており、インストールの対象はあくまでも書
体単位での選択しかなかった。このため一般的に使用さ
れることがあまりない書体データまでも同時にインスト
ールされてしまい、ディスクメモリを圧迫する結果とな
っていた。
【0005】
【課題を解決するための手段】本発明はかかる従来技術
に鑑み成されたものであり、柔軟性のある書体データ管
理方法及び装置を提供しようとするものである。
【0006】この課題を解決するため、例えば本発明の
書体データ管理方法は以下の工程を備える。すなわち、
要求された文字に関するデータを書体データファイルか
ら取り出すための書体データ管理方法において、複数の
部分コード空間に分割された文字コード空間における、
前記各部分コード空間毎に独立した書体データファイル
を管理し、アプリケーションからの文字取得要求を文字
コードと共に認識する認識ステップと、前記認識ステッ
プに連動して、前記認識ステップにて認識した文字コー
ドが前記複数の部分コード空間に分割された文字コード
空間の何れかの部分コード空間に含まれるかを特定する
特定ステップと、前記特定ステップにて特定された部分
コード空間のアクセス頻度を更新する更新ステップと、
前記更新ステップにて更新されたアクセス頻度をファイ
ルとして保存する保存ステップと、システム起動時に前
記ファイルより取得されるアクセス頻度に従い、文字取
得要求に対して検索される個々の書体データファイルの
検索順序を変更する変更ステップとを有することを特徴
とする。
【0007】
【0008】
【実施例】以下、図面を参照し、本願発明について詳細
に説明する。
【0009】まず、パーソナルコンピュータ等の文字デ
ータを扱うシステムが、文字の表示或は印字を行う際
に、書体データを獲得するまでの動きを簡単に説明す
る。
【0010】図1はこれら上記のシステムが動作するた
めの基本的な構成を示すブロック図である。
【0011】図1において、101はCPU、即ち中央
処理装置であり、上記システム全体の起動及び演算処理
等を行うものである。102は読み出し専用メモリ(R
OM)であり、システム起動プログラム(ブートプログ
ラム)及び文字パターン・データ等の記憶領域である。
103はランダムアクセスメモリ(RAM)であって、
システムプログラム、各種アプリケーションプログラム
や、文字パターン発生のためのドライバプログラム等が
ロードされると共に、各種データの一時的に記憶に用い
られる。後述するフローチャートに係るプログラムも勿
論、このRAM103にロードされて実行される。10
4はキーボード制御部(KBC)であり、105のキー
ボード(KB)よりキー入力データを受け取り、CPU
101へ伝達する。106はディスプレイ装置(CR
T)107の制御を行うCRT制御部(CRTC)であ
る。109はフロッピーディスク装置(FD)やハード
ディスク装置(HD)等の外部記憶装置であって、これ
らにシステムプログラムやアプリケーションプログラム
をはじめとする各種プログラムやフォントデータが格納
されている。プログラムの実行時には、これら外部記憶
装置109に記憶されたプログラムがRAM103にロ
ードされてCPU101により実行されることになる。
110はプリンタ制御部(PRTC)であり、111は
PRTC110の制御の下で、送出されてきたデータに
基づく可視画像を記録紙上に形成するプリンタ(PR
T)である。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,30
6は文字展開処理部、即ちラスタライザを示し、その文
字展開処理機能をソフトウェアのみで実現されていても
良く、ハードウェアによって実現されていても良く、ハ
ードウェアとソフトウェアの双方を用いても構わない。
また前記システム中に含まれるラスタライザの数は、少
なくとも1つ含まれていればその他の制限はない。30
7はシステムに対して文字取得要求を発行するアプリケ
ーション部(例えばワードプロセッサ等のプログラム)
を表す。
【0016】図3において、アプリケーション部307
は文字取得要求を発する。文字取得要求は、取得する文
字を確定するために、文字と1対1に対応した文字コー
ドと書体情報を用いて行う。要求された文字データを取
得するためにシステム制御部304は書体データ30
1,302,303から必要なデータを獲得する。獲得
したデータがアウトラインフォントを構成する輪郭ベク
トルデータであれば、ラスタライザ305,306にデ
ータを転送する。また、獲得したデータがビットパター
ンデータであればそのままアプリケーション部307へ
それを転送する。ラスタライザ305,306では、受
け取った輪郭ベクトルデータをビットパターンへ展開
し、それをシステム制御部304へ送り返す。システム
制御部は304がラスタライザ305,306より受け
取ったビットパターンデータをアプリケーション部30
7へ送り返す。
【0017】次に、以上の説明を踏まえ、参考例1につ
いて詳細に説明する。
【0018】本参考例1は書体データファイル分割し、
必要な部分のみをインストールすることで書体データの
獲得を可能とすることを目的としており、その分割方法
について、図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で同一書体のファ
イルが存在しないと判断した場合には、ステップS70
8へ進み、書体管理ファイル内に未処理の書体が存在す
るかを調べ、存在する場合はS703に戻って次の書体
に対する処理を行う。また、全ての書体に対するテーブ
ルの作成が完了したと判断したら、ステップS709に
進んで、先のステップS702においてオープン処理を
行った書体情報ファイルをクローズし、本処理を終え
る。
【0028】以上の処理によって、書体情報管理領域2
05には例えば図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つ進め、ステップS8
04に戻る。また、次のファイルが存在しないと判断し
た場合には、文字無し処理を行う。
【0035】一方、要求された書体の文字コードが管理
されていると判断した場合には、ステップS807に進
み、書体管理情報テーブル内の注目行からファイル名を
獲得し、ステップS808において、その獲得したファ
イル名を元に、そのファイルから書体データを獲得し、
終了処理S810へ進む。
【0036】以上説明したように本参考例1によれば、
必要な書体の必要な文字コード範囲のみをシステムにイ
ンストールできるので、外部記憶装置109のメモリ消
費量を抑えることができると共に、不要な部分の管理は
行わないので処理速度を上げることも可能になる。
【0037】<実施例の説明> 上記参考例1では、例えば書体管理情報テーブルが図6
に示すようになっている場合、アプリケーション部から
書体Aの文字コード“501”の文字所得要求があった
ときには、図8におけるステップS804、ステップS
806を3回ループすることになる。文字コード“50
1”から“600”までに対する文字所得要求の頻度が
全体の要求に対してさほど高くない場合には問題がない
が、その頻度が他の文字コードに対して多い場合には処
理速度の低下は避けられない。
【0038】そこで本実施例では、文字所得要求の発生
頻度を計数し、次回の起動時の書体管理情報テーブル作
成に反映させるものである。
【0039】尚、本実施例におけるシステム構成も図1
に示すものとする。これは後述する参考例2以降につい
ても同様である。また、本実施例では、書体データを外
部記憶装置109にインストールする場合に、図4に示
した全ての範囲の書体データA1〜A4を指定した場合
を説明する。また、図8のフローチャートに係るプログ
ラムは当然のことながら外部記憶装置109に記憶され
ているものである。この点も後述する各参考例について
も同様である。
【0040】図9は実施例において作成された書体管理
テーブルの初期状態を示している。参考例1の図6との
違いは、同一書体における個々のコード範囲のアクセス
回数を記憶保持する欄が設けられた点である。書体管理
情報テーブル自身を作成する手順は参考例1と同様であ
るので、ここでの説明は省略し、文字データ所得処理を
図10に従って説明する。
【0041】図10のフローチャートと参考例1におけ
る図8との相違点は、ステップS807がステップS8
07’となり、ステップ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】尚、実施例では、文字データ所得要求が発
生する度に、書体情報ファイルを更新したが、システム
の電源断処理時に行うことで、処理速度をより高速化す
ることが可能になる。
【0048】また、システム電源断処理において、各書
体を構成している部分ファイル(A1〜A4)のアクセ
ス回数も適当なファイルとして保存し、次回のシステム
起動時にそのファイルからアクセス回数を所得し、それ
でもってテーブル内の順序を決定するようにしても良
い。
【0049】以上説明した様に本実施例によれば、アク
セス回数の多い文字コード範囲ほど優先して書体情報管
理テーブルの先頭に配置するので、文字パターン発生に
かかる全体のコストパフォーマンスを高めることが可能
になる。
【0050】<参考例2の説明> 次に参考例2を説明する。本参考例2では、複数の書体
のうちユーザが指定したコード範囲を他の書体で置き換
えるものである。
【0051】図14は本参考例2における分割ファイル
の構成を示している。先の参考例1における図4のそれ
と異なる点は複数の書体が分割されていることである。
尚、図示において、A1〜A3、B1〜B3及びC2は
それぞれファイル名を示している。
【0052】本参考例2では、例えば書体Aにおける文
字コード“101”〜“199”の範囲は書体Cのそれ
を従属させ、例えばアプリケーションから書体Aの文字
コード101の文字データの要求が来たら、ファイルC
2(実は書体C)からデータを取り出し、処理するもの
である。
【0053】これによれば、例えば、アルファベット、
数字、平かな、カタカナ、漢字等が1つの“書体名”を
使いながら、上記文字の種別毎に所望とする書体のパタ
ーンを発生することが可能になる。また、場合によって
は、例えば書体A全体がアウトラインフォントで、書体
Cがドットパターンである場合には、特定の部分を高速
に処理することが可能にもなる。
【0054】さて、本参考例2における書体情報ファイ
ルの内容例を図15に示す。この書体情報ファイルの作
成は、ユーザが自由に作成しても良く、システムが自動
的に作成しても良い。或いは、上記参考例1で示したよ
うに、書体データを本システムにインストールする段階
で、ユーザに取捨選択させてもよい。
【0055】図15に示すように、書体AのファイルA
2の部分を書体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】また、従属情報があれば、ステップS75
9に進んで、その従属する書体の対応するファイル名を
取り出し、それを書体情報管理テーブルに書き込む。
【0064】いずれの場合でも、処理はステップS76
0に進み、ステップS758或いは759で獲得された
ファイル名を基に、そのファイルをオープンしアクセス
可能にする。そして、次のステップS761において、
アクセス可能となって書体ファイルより、そのファイル
に格納されている書体データの開始コード及び終了コー
ドに関する情報を読み取り、それを書体情報管理テーブ
ルに書き込む。
【0065】ステップS762に処理が進むと、1つの
書体に対する処理が終了したかどうかを判断し、終了し
ていないと判断したらステップS756に戻って上記処
理を行う。
【0066】また、1つの書体に対する全コード範囲に
対する処理が終了したと判断した場合には、ステップS
763に進み、次に処理すべき書体があるかどうかを判
断する。処理すべき書体が残っていたら、処理はステッ
プS753に戻り、処理すべき書体が無かったらステッ
プS764に進む。
【0067】ステップS764に処理が進んだ場合に
は、オープンしている書体情報ファイルをクローズし、
ステップS765で本処理を終了する。
【0068】以上の結果、例えば図15に示すような書
体情報ファイルがあった場合には、図16に示すような
書体情報管理テーブルが作成されることになる。
【0069】尚、こうして作成された書体情報管理テー
ブルを使用して書体データを獲得するときの処理は、先
に説明した参考例1と同様である。すなわち、アプリケ
ーション部から書体Aの文字コード“101”の書体デ
ータ獲得要求があったら、そのテーブルを調べ、書体A
に対する文字コード“101”はファイル名C2である
ことが検出されるので、そのファイルC2から対応する
書体データを取り出し、文字パターンを発生する。この
書体データがアウトラインデータである場合には、ラス
タライザ305に一旦渡してドットパターンを発生さ
せ、それをアプリケーションに渡すことになる。
【0070】以上説明したように本参考例2によれば、
或る1つの書体の所望とするコード範囲を別の書体のデ
ータを置き換えることにより、例えば英文や日本語の混
じり合った文章を作成する場合等においては、いちいち
書体を切り替えなくともそれぞれにユーザの意志が反映
された書体での文字入力が行えるようになる。
【0071】しかも、インストール時に、或いは任意の
時間に、他の書体のデータを従属するよう指示されたコ
ード範囲にもともとあった書体データは実質的に不要に
なり、その部分をインストール対象から外したり、削除
することが可能になるので、外部記憶装置109のメモ
リ消費量を抑えることが可能になる。
【0072】<参考例3の説明>参考例3 を以下に説明する。通常、システムに書体デー
タをインストールする場合、1つの書体全体を1つの論
理記憶デバイスに記憶することが必須である。本参考例
は、1つの所定の記憶先を論理的に異なるデバイスに
記憶することを可能にする。これによって、例えば各論
理デバイスが1書体全部を記憶するだけの空き容量を有
さない、或いは、各論理デバイスに或る程度の空きよう
量を設けたいというような要求に応えるものである。
【0073】尚、ここで言う、論理記憶デバイスとは、
物理的装置をも含む概念であり、例えば1つの物理的な
記憶装置を論理的に複数の論理的な装置として区切られ
た場合、或いは同じ物理的装置であってもパスが異なる
ものをも含む概念である。
【0074】本参考例3における書体情報ファイルの例
を図18に示す。尚、図示では説明を簡単にするため
に、1つの書体に対してのみ示した。図示において、A
1〜A4は上記参考例1、実施例、参考例2で説明した
ようにコード範囲に対応する書体Aのファイル名であ
る。
【0075】図示について簡単に説明すると、書体Aに
対する或るコード範囲の書体データは、ファイルA1と
して論理ドライブAに記憶されていることを示してい
る。
【0076】さて、本参考例3では、かかる書体情報テ
ーブルをシステム起動時に取り出し、その中に記述され
たデータに基づいて図19に示すような書体情報管理テ
ーブルを作成する。
【0077】参考例3における書体情報ファイル及びそ
れに基づいて作成される書体情報管理テーブルのフォー
マットは、参考例1の図5A及び図6に示したフォーマ
ットに対して記憶先のドライブ名が記載されている点の
みが異なる。当業者であれば、先に説明した参考例1
かかる処理内容及び図18に示した書体情報ファイルの
構造に間がみれば容易に推察されるであろう。従って、
ここではその説明は省略する。
【0078】ただし、本参考例3では、インストールす
る時点で書体データを構成する個々のコード範囲のファ
イルの記憶先を指示するものとして説明したが、勿論、
一旦全てを同一記憶ドライブに記憶させ、その後、、必
要に応じて適当なコード範囲の書体データを別な記憶装
置(例えばより高速な外部記憶装置)に移動させてもよ
い。
【0079】以上説明したように本参考例3によれば、
1つの書体データが1つの論理デバイスの同じ位置にあ
る必要はなく、所望とするデバイスに記憶できるので、
外部記憶装置を有効に活用することが可能になる。
【0080】<参考例4の説明> 次に参考例4を説明する。例えば、ある特定範囲の文字
のデザインを使用する場合であっても、そのデザインの
書体の全範囲の書体データを記憶する必要があるため、
外部記憶装置等のメモリ消費量は無視できない。本参考
例4では、かかる課題を一掃する。
【0081】図20は分割ファイルの構成を簡単に示し
ている。図示において、書体Aは、文字コード0〜50
0で1つの文字書体全体を構成していることを示してお
り、0〜100のA1、101〜199のA2、200
〜500のA3の3つ部分的なコード範囲として管理し
ている。書体A’は書体Aと同じもので、対応するキャ
ラクタセットが異なり、キャラクタセットの切り替え時
に変更しなければならない文字データ部分のみを持ち、
含まれる文字コードは101〜199のA2と同一であ
る。つまり、書体として、A’はAと同じであるが、使
用する文字コードは101〜199のみである。
【0082】
【0083】上記書体管理を行うため、本参考例4にお
ける書体情報ファイルは図21に示すように、書体ファ
イルとキャラクタセットの関連が記述されている。
【0084】システム起動時におけるRAM103中の
書体管理情報領域205に構築される書体管理情報テー
ブルの作成手順は、図7に示される手順で行われるの
で、ここでの説明は割愛する。この結果、図22に示さ
れる書体管理情報テーブルが構築される。テーブル中、
A1、A2、A3及びA2’はそれぞれ書体データA,
A’を構築するデータのファイル名称である。
【0085】尚、このようにして作成された書体管理情
報テーブルを用いて文字データ所得の流れも、図8に示
した手順で行われるが、説明すれば以下の通りである。
【0086】先ず、ステップS801において、文字デ
ータ所得処理を開始する。
【0087】ステップS802においては、図3におけ
るAP部307より取得する文字に関する情報(文字コ
ード,書体情報、キャラクタセット)を取得する。次の
ステップS803においては、図6の書体管理情報テー
ブルを検索し、対応する書体及びキャラクタセットが存
在するかチェックを行う。存在する場合はステップS8
04へ、存在しない場合はステップS805へ進む。
【0088】ステップS805では、図22に示される
書体管理情報テーブル上に別の書体がまだ存在するかど
うかを判断する。存在する場合にはステップS803に
進み、、テーブル中の別の書体に対するチェックを行
う。
【0089】また、要求された書体がテーブル中に存在
すると判断し、ステップS804に進むと、注目書体中
の注目キャラクタセットの開始コード及び終了コード内
に、要求されたコードが含まれているかどうかを判断す
る。尚、コード範囲は、存在しないファイルに関して
は、開始コード及び終了コードともに“−1”が格納さ
れているものとしているので、そのコードの文字データ
が管理されているかどうかは容易に判断できる。
【0090】さて、ステップS804において、要求さ
れた文字コードが注目しているキャラクタセットの範囲
外にあると判断された場合には、ステップS806に進
んで、同一書体に未だチェックしていないキャラクタセ
ットがあるかどうかを判断する。もしあればステップS
804に戻り、再び要求コードに対応するキャラクタセ
ットが存在するかどうかを判断する。また、ない場合に
は、ステップS809に進んで、文字無し処理を行う。
【0091】一方、要求された文字の書体とその文字コ
ードを管理しているキャラクタセットが存在すると判断
した場合には、ステップS807に進み、書体管理情報
テーブルからファイル名を獲得し、ステップS806で
そのファイル名のファイルから該当する文字データを所
得する。そして、ステップS810に進んで、処理を終
了する。
【0092】以上説明したように本参考例4によれば、
同じ書体であっても異なるキャラクタセットの文字が指
定された場合であっても、使用する文字のみを含むコー
ド範囲の書体データを有するだけで良く、全文字コード
に対応するデータは不要になり、外部記憶装置の記憶領
域を有効に活用することができる。
【0093】<参考例5の説明> 上記参考例4では、例えば書体Aと同じ書体A’を使い
ながらも、異なるキャラクタセットを使用する場合に、
その使用する文字コード範囲の書体データのみを外部記
憶装置に記憶させることで、メモリの有効利用を図るも
のであった。
【0094】本参考例5では、異なる書体を記憶し、一
方の書体中の特定のコード範囲の書体データとして、他
方の書体の同じ範囲の書体データを活用する例である。
この結果、共通して使用する部分の書体データを重複し
て持つ必要を無くし、メモリの効率的使用を可能とする
ものである。
【0095】図23は本参考例5における分割ファイル
の構成を簡単に示している。図示において、書体Aは、
文字コード0〜500で1つの文字書体全体を構成して
いることを示しており、0〜100のA1、101〜1
99のA2、200〜500のA3の3つ部分的なコー
ド範囲として管理している。
【0096】また、書体Bも書体Aと同様、全文字コー
ド空間を3つ分割されて管理されており、このうち、文
字コード0〜100と、200〜500は書体B特有の
書体データを使用し、コード101〜199については
書体Aのものを使用する。
【0097】上記書体管理を行うため、本参考例4にお
ける書体情報ファイルは図24に示すように、書体の種
類とその書体を構築する分割書体データファイル名で構
成されている。
【0098】システム起動時におけるRAM103中の
書体管理情報領域205に構築される書体管理情報テー
ブルの作成手順は、図7に示される手順で行われるの
で、ここでの説明は割愛するが、いずれにしても図25
に示される書体管理情報テーブルがRAM103中の書
体情報管理領域205中に構築される。
【0099】文字データ所得処理も、図8に示したフロ
ーチャートに従えば良い。すなわち、AP部から文字デ
ータ所得要求があった場合には、その要求のなかで指定
された書体データに基づいて書体情報管理テーブルのど
の書体が選択されたのかを判断し、次にその書体中の指
定された文字コードを管理しているファイル名を所得
し、その後、そのファイルから対応する文字データを所
得する。
【0100】<参考例6の説明> これまで、書体データを判別する場合、書体を表す書体
名或いは書体番号、叉は、書体名及び書体番号、また
は、必要によるスタイル情報、幅情報、ウエート情報を
別々に用いて判別していたため、その判別処理は複雑に
ならざるを得ず、時間がかかるという問題があった。
【0101】そこで、本参考例6では、かかる判別を簡
単にしかも高速に行うことを可能にする例を説明する。
【0102】図26は、本参考例6におけるスタイル幅
ウエート情報のフォーマットを示している。図示の如
く、スタイル情報として4ビット(値として0〜1
5)、幅情報として4ビット、ウエート情報として8ビ
ット(0〜255)が割り当てられている。スタイル情
報としては、“0”はregular、“1”はitalic、…と
して定義した。また、幅情報としては、extra condenc
e, 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では、インストール先に
既にインストールされている書体情報ファイル内の書体
データを読み込む。このとき、読み込むべき書体情報フ
ァイルがインストール先に存在しないとステップS30
4で判断したら、その書体ファイルの作成を行う(ステ
ップ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】以上の如く本参考例6によれば、インスト
ール後は、書体情報のスタイル情報、幅情報、ウェート
情報を合わせたスタイル幅ウェートを書体を表す情報と
して持つことで、書体名、書体番号等を比較するよりも
簡単に高速に書体の判別が可能になる。
【0118】<参考例7の説明>参考例7 を説明する。本参考例7では、フォント関連の
ファイル名の最適化を行わせる原理を説明する。例とし
て、本参考例におけるシステム(或いはOS)が管理す
るファイル名は8文字(8バイト)、拡張子が3文字
(3バイト)である例を説明する。
【0119】図32は本参考例7における書体物理ファ
イルのファイル名称に用いる文字構造を示している。
【0120】図示において、は図34に示す書体識別
用の2文字が位置し、には図36で示されるスタイル
幅情報(0〜9)を表す1個の数字が位置する。には
図37に示されるウェイト情報を表す数字が位置し、
には図38で示されるサイズ・サポート領域情報であ
る。はファイル識別情報であり、参考例では文字列
“JFD”を用いる。
【0121】また、図33は、書体データの書体論理デ
ータファイルのファイル名の構造を示している。は書
体管理情報であり、任意の3文字を用いて表す。は本
ファイルのリリースの順番を示しており、図35により
当てはめる。は図37に示すウェイト情報である。
はメトリクス情報識別情報であある。本項目は本ファイ
ルのリリースの順番を示す。また、プリンタフォントと
同一な情報を持つ場合は、“P”で表す。はファイル
識別情報であり、この場合は“FON”を使用する。
【0122】以下、図34から図38について更に詳し
く説明する。
【0123】図34は物理書体の識別情報である。MI
は明朝体、GOはゴシック体、RGは丸ゴシック体、K
Aは楷書体、KYは教科書体を表す。図35におけるM
INは明朝体、GOTはゴシック体、RGOは丸ゴシッ
ク体、KAIは楷書体、KYOは教科書体をそれぞれ表
している。
【0124】図36はスタイル幅情報を示している。ス
タイルとしては、regularとitalicの2種類があり、幅
情報としてはextra condence, condence, regular, exp
and,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 expa
ndに“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:書体管理環境名称:FontManagi
ng}により決定する。
【0129】この場合、書体物理データファイルの名称
を決定するためには、図32で示されるは“JFD”
になる。は図34によって“MI”になる。または
図36により“1”、は図37により“5”になる。
サイズ100は16進数で表すと、64Hであり、図3
8に従ってビット6のみを立てるから下位8ビットは4
0H、従って、は“6440”になる。
【0130】つまり、ファイル名“MI156440.
JFD”である。
【0131】次に、書体論理データファイルの場合に
は、拡張子は“FON”、はFontManage
rを表すことに統一するので、“FO_、は図35よ
り“MIN”、は図37により“5”、は“P”で
ある。
【0132】従って、この書体論理データファイルの名
称は“FM_MIN5P.FON”である。
【0133】以上説明したように本参考例7によれば、
書体ファイル名称にファイルに格納されているデータを
示す情報を表示したことにより、書体ファイルに格納さ
れている情報が解り易くすることができる。
【0134】<参考例8の説明>参考例8 について説明する。
【0135】通常、文字パターン発生には、先に説明し
たようにビットマップパターンを予め記憶しておき、そ
れを所得するビットマップフォント方式と、アウトライ
ンデータに基づいて文字の輪郭を形成し、その内部を埋
めることで文字パターンを得るアウトラインフォント方
式がある。
【0136】前者は、比較的小さい文字(ドット構成の
小さい文字)に対して有効な方式であり、文字が潰れる
ことなく、且つ、生成するにしても基本となる文字パタ
ーンに対して間引きすれば済むので、高速に処理するこ
とが可能である。後者は、ラスタライザによって輪郭を
描画し、その内部を埋める処理が必要なため、速度は落
ちるが、大きい文字(最終的なドット構成の大きい文
字)の品位を高めることができる。
【0137】ところが、比較的小さい文字を発生するの
に適したビットマップフォント方式では、比較的高い確
率で要求される文字パターンも、低い確率の文字パター
ンも、基本となる文字パターンから一律な処理でもって
行っており、まだ改善の余地が残っている。
【0138】本参考例8では、ビットマップフォントに
よる発生方式を更に改善させるものである。
【0139】さて、本参考例8では、20×20のドッ
トのビットマップフォントがリソースされ、それから4
×4〜20×20の文字パターンを発生する例について
説明する。
【0140】図39は参考例におけるビットマップフォ
ントによる文字パターン発生処理の手順を示したフロー
チャートである。
【0141】先ず、ステップS1で、要求された文字の
コードおよび文字のサイズを所得する。そして、ステッ
プS2においては、その要求された文字コードの文字パ
ターン(20×20ドット)をROM102或いは外部
記憶装置109より取り出し、RAM103中の所定エ
リアに展開する。
【0142】ステップS3では、1回の処理でデフォル
メせずに縮小可能な縦方向のライン数の算出する。要求
された文字サイズが先に獲得した文字サイズ(20×2
0)の半分以下の場合には、文字パターンの半分まで、
それ以外の場合には、(縮小前の文字サイズ+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】また、本参考例8では、横方向に縮小する
例を説明したが、縦縦方向への縮小も全く同様に処理す
ることができ、更には縦横共に処理することもできるの
で、上記内容で本発明が限定されるものではない。
【0147】また、使用するビットマップは20×20
に限定されるものではなく、各々のサイズにおいて縮小
する際に効率良く処理が行えるならば、特に1つに限定
されるものではない。
【0148】また、予め20×20、16×16、13
×13、10×10等の「(縮小前の文字サイズ+2)
/5」の1回の処理で所得し得る最小サイズの複数ビッ
トマップフォントを用意し、ステップS3〜S5のルー
プ数を減らし、且つ、品位の向上に役立てても良い。
【0149】以上説明したように本参考例8によれば、
要求された文字パターンのサイズが本文作成等で最も使
用される可能性の高いサイズ(4×4〜20×20)の
みビットマップフォントを使用し、縮小を行う位置等の
計算を限定されたサイズに最も有効となるように単純化
することにより、パフォーマンスの良い文字パターン縮
小が行える。
【0150】<参考例9の説明> 本参考例9の実施例について説明する。
【0151】上記参考例(例えば参考例7)では、ファ
イル名をそのファイルが有すデータを反映させた。従っ
て、書体を提供する側が、過去に供給した名称とは異な
る名称を新たに提供する場合には異なるファイル名を付
けるように管理すれば良い。但し、システムのユーザが
書体を作成できるようにした場合、供給側ではそのユー
ザが使用しているファイル名までは管理できない。従っ
て、同じ情報を有する書体が作成される場合があり、一
旦同じ情報を含む書体を削除した後に作成した書体の複
写を行ったり、同じ情報の該当する書体情報を変更した
後に複写を行わねばならない。
【0152】本参考例9では、かかる問題を解決する。
【0153】図42は、参考例における書体情報ファイ
ルに付けられるファイル名の一例を示している。図示の
如く、本参考例9においては、ファイル名の部分に8文
字(8バイト)と、拡張子に3文字(3バイト)を使用
している。本参考例では、“FG_US”は固定のもの
とし、その後に示した□には書体番号と同じ値が付けら
れる。但し、ファイル名の付け方はこれに限るものでは
ない。
【0154】図43は書体情報ファイルの内部構造を示
している。この書体情報ファイル内には図示の符号14
で示される書体名、符号15で示される書体番号が格納
されている。また、この他には例えば、作成日時やバー
ジョン等の情報も格納されている。
【0155】図44は外部記憶装置109に記憶されて
いる書体の格納先を管理する書体格納情報ファイルの構
造を示しており、記憶されている全書体についての情報
が入っている。この書体格納情報ファイルには、符号1
6で示される書体1の登録番号、符号17の書体1の書
体情報ファイル名、18の書体1の書体名、19の書体
1の書体番号である。同様に書体2、… 書体nそれぞ
れに対しても同様な情報が格納されている。
【0156】図45のフローチャートに基づいて本参考
例9における書体管理手順を説明する。
【0157】先ず、ステップS501において、複写元
の書体情報ファイル(ユーザが作成した書体データを管
理している書体情報ファイル、43参照)から書体情報
を所得する。次にステップS502に進んで、システム
の管理下におかれている書体の格納情報ファイル(図4
4参照)から格納されている書体に関する書体情報を所
得する。
【0158】ステップS503においては、先のステッ
プS501、S502で所得した情報から、同じ書体名
の書体が格納されているかどうかを判断する。同じ書体
名の書体が既に書体格納情報ファイル内に格納されてい
ると判断した場合にはステップS504に、その書体名
の書体がシステムに登録されていないと判断した場合に
はステップS507に進む。
【0159】ここで同じ書体名がシステムに登録されて
いないと判断され、ステップS507に進むと、ユーザ
が作成した書体の書体番号と同じ書体番号がシステムに
登録されているかどうかを判断する。ここでも、同じ書
体がないと判断したら、処理はステップS512、S5
13に進み、システムに登録されている書体情報を記憶
している書体格納情報ファイルに、ユーザが作成した書
体情報ファイルの内容を複写(追加)し、その書体格納
情報ファイルを更新する。
【0160】一方、ステップS503で、同じ書体名の
書体が既に登録されていると判断した場合には、ステッ
プS504に進んで、それれが同じ書体番号であるかど
うかを判断する。
【0161】同じ書体番号である、すなわち、書体名及
び書体番号の両方とも既にシステムに登録されていると
判断した場合には、ステップS505、S506に進ん
で、書体格納情報ファイル内の該当する位置にユーザが
作成した書体情報ファイルの内容で上書きし、書体格納
情報ファイルを更新する。
【0162】ステップS507で“YES”であると判
断した場合、すなわち、同じ書体名ではないが、同じ書
体番号であると判断した場合には、ステップS508に
進んで、新たに登録しようとしている書体の使用されて
いない書体番号を検出し、ステップS509に進む。
【0163】ステップS504の判断が“NO”、つま
り、同じ書体名が存在するが、書体番号が異なると判断
した場合にもステップS509に処理が進む。この場合
には、書体番号が重複することはないことになる。
【0164】いずれにせよ、ステップS509に処理が
くるということは、書体名が同じで、書体番号が異なる
場合である。ユーザ側から見て書体名が重要で、同じ書
体名が複数あると混乱の素になる。そこで、ステップS
509、S510、S511では、登録しようとしてい
る書体名のファイルを変更(例えば書体名に“USR”を
付加する等)し、その変更された書体名を書体格納情報
ファイルに追加し、且つ、その書体番号で登録すること
で、書体格納情報ファイルを更新する。
【0165】上記例では、書体名をキー情報として書体
の登録状態を判別し書体番号を書体情報ファイルのファ
イル名と対応させ、書体番号を変更して複写を行うこと
より、同じ書体情報が含まれる書体を管理することが可
能になる。また、本発明はユーザに書体を作成できるよ
うなツールを提供し、前記ツールによる作成された書体
を使用するとき等に多大な効果を発揮する。
【0166】尚、上記参考例では、書体名をキーにして
書体情報を検索し、書体番号を変更するようにしたが、
書体番号をキーにして検索し、書体名を変更するように
しても良く、検索に用いるキー情報及び変更する書体情
報はこの限りではない。
【0167】以上説明した様に本参考例9によれば、書
体情報と書体情報ファイルのファイル名を対応させ、同
じ書体情報が含まれる書体が検出されたときには、書体
情報を変更して複写(登録)を行うようにしたことによ
り、同じ書体情報が含まれた場合であっても書体を管理
することが可能になる。
【0168】また、ユーザが書体を作成できるような場
合に、同じ情報を有する書体が作成された場合でも、一
旦同じ情報を含む書体を削除した後に作成した書体を複
写を行ったり、同じ情報に該当する書体情報を変更した
後に複写を行ったりする作業の軽減を図ることが可能に
なる。
【0169】上記参考例1、実施例、参考例2〜参考例
に限らず、本発明は、複数の機器から構成されるシス
テムに適用しても、1つの機器から成る装置に適用して
も良い。また、本発明はシステム或は装置にプログラム
を供給することによって達成される場合にも適用できる
ことは言うまでもない。
【0170】
【発明の効果】以上説明したように本発明によれば、柔
軟性のある書体データの管理方法を提供することが可能
になる。
【0171】
【図面の簡単な説明】
【図1】実施例におけるシステム構成図である。
【図2】実施例におけるRAMのメモリマップである。
【図3】文字処理装置の構成例を示す図である。
【図4】参考例1における分割ファイルの構成例を表す
図である。
【図5A】参考例1における書体情報ファイルの内容の
一例を示す図である。
【図5B】参考例1におけるインストール後の書体ファ
イルの構成例を示す図である。
【図6】参考例1における書体管理情報テーブルの内容
例を示す図である。
【図7】参考例1における書体管理情報テーブル作成処
理の手順を示すフローチャートである。
【図8】参考例1における文字データ取得処理の流れを
示すフローチャートである。
【図9】実施例における書体管理情報テーブルの初期状
態例を示す図である。
【図10】実施例における文字データ所得処理の流れを
示すフローチャートである。
【図11】実施例における書体管理情報テーブルの中間
的な状態例を示す図である。
【図12】実施例で更新された書体情報ファイルの内容
例を示す図である。
【図13】実施例における更新された書体情報ファイル
の内容で起動した場合の書体管理情報テーブルの状態例
を示す図である。
【図14】参考例2における分割書体ファイルの構成例
を示す図である。
【図15】参考例2における書体情報ファイルの内容例
を示す図である。
【図16】参考例2における書体管理情報テーブルの内
容例を示す図である。
【図17】参考例2における書体管理情報テーブルの作
成処理の流れを示すフローチャートである。
【図18】参考例3における書体情報ファイルの内容例
を示す図である。
【図19】参考例3における書体管理情報テーブルの内
容例を示す図である。
【図20】参考例4における分割ファイルの構成例を示
す図である。
【図21】参考例4における書体ファイルの内容例を示
す図である。
【図22】参考例4における書体管理情報テーブルの内
容例を示す図である。
【図23】参考例5における分割書体ファイルの構例成
を示す図である。
【図24】参考例5における書体情報ファイルの内容例
を示す図である。
【図25】参考例5における書体管理情報テーブルの内
容例を示す図である。
【図26】参考例6におけるスタイル幅ウエート情報の
フォーマットを示す図である。
【図27】参考例6における書体インストール手順を示
すフローチャートである。
【図28】参考例6におけるインストールメディアの内
容と、その中のインストールデータファイルの中身を示
す図である。
【図29】参考例6における書体情報ファイルの内容例
を示す図である。
【図30】参考例6におけるタグファイルの内容例を示
す図である。
【図31】参考例6における書体ファイルの内容例を示
す図である。
【図32】参考例7における書体物理ファイルのファイ
ル名称に用いる文字構造を示す図である。
【図33】参考例7における書体データの書体論理デー
タファイルのファイル名の構造を示している。
【図34】参考例7における物理書体の識別情報を表す
各種文字列を示す図である。
【図35】参考例7における書体論理データファイルの
識別情報を表す各種文字列を示す図である。
【図36】参考例7におけるスタイル幅情報の意味内容
を示す図である。
【図37】参考例7におけるウェイト情報の意味内容を
示す図である。
【図38】参考例7におけるサイズ・サポート領域の関
係を示す図である。
【図39】参考例8における縮小文字パターン生成にか
かる処理内容を示すフローチャートである。
【図40】参考例8における縮小処理の問題点を示す図
である。
【図41】参考例8における補正後の縮小処理を示す図
である。
【図42】参考例9における書体情報ファイルの名称の
フォーマットを示す図である。
【図43】参考例9における書体情報ファイルの内部構
造を示す図である。
【図44】参考例9における書体格納情報ファイルの構
造を示す図である。
【図45】参考例9における書体登録の処理手順を示す
フローチャートである。
【符号の説明】
101 CPU 102 ROM 103 RAM 104 キーボード制御部(KBC) 105 キーボード(KB) 106 表示装置制御部(CRTC) 107 表示装置 108 DKC 109 外部記憶装置 110 プリンタ制御部 111 プリンタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山口 裕成 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (72)発明者 柏木 正樹 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (72)発明者 石黒 健二 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (72)発明者 長田 守 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (72)発明者 松木 浩 東京都大田区下丸子3丁目30番2号 キ ヤノン株式会社内 (56)参考文献 特開 昭64−37588(JP,A) 特開 昭61−29936(JP,A) (58)調査した分野(Int.Cl.7,DB名) G09G 5/22 G06T 11/20

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 要求された文字に関するデータを書体デ
    ータファイルから取り出すための書体データ管理方法に
    おいて、 複数の部分コード空間に分割された文字コード空間にお
    ける、前記各部分コード空間毎に独立した書体データフ
    ァイルを管理し、 アプリケーションからの文字取得要求を文字コードと共
    に認識する認識ステップと、 前記認識ステップに連動して、前記認識ステップにて認
    識した文字コードが前記複数の部分コード空間に分割さ
    れた文字コード空間の何れかの部分コード空間に含まれ
    るかを特定する特定ステップと、 前記特定ステップにて特定された部分コード空間のアク
    セス頻度を更新する更新ステップと、 前記更新ステップにて更新されたアクセス頻度をファイ
    ルとして保存する保存ステップと、 システム起動時に前記ファイルより取得されるアクセス
    頻度に従い、文字取得要求に対して検索される個々の書
    体データファイルの検索順序を変更する変更ステップ
    と、 を有することを特徴とする書体データ管理方法。
  2. 【請求項2】 前記部分的書体データファイルは、ファ
    イル名称によって管理されることを特徴とする請求項1
    に記載の書体データ管理方法。
  3. 【請求項3】 要求された文字に関するデータを書体デ
    ータファイルから取り出すための書体データ管理装置に
    おいて、 複数の部分コード空間に分割された文字コード空間にお
    ける、前記各部分コード空間毎に独立した書体データフ
    ァイルを管理する管理手段と、 アプリケーションからの文字取得要求を文字コードと共
    に認識する認識手段と、 前記認識手段の認識に連動して、前記認識ステップにて
    認識した文字コードが前記複数の部分コード空間に分割
    された文字コード空間の何れかの部分コード空間に含ま
    れるかを特定する特定手段と、 前記特定手段にて特定された部分コード空間のアクセス
    頻度を更新する更新手段と、 前記更新手段によって更新されたアクセス頻度をファイ
    ルとして保存する保存手段と、 システム起動時に前記ファイルより取得されるアクセス
    頻度に従い、文字取得要求に対して検索される個々の書
    体データファイルの検索順序を変更する変更手段と、 を有することを特徴とする書体データ管理装置。
  4. 【請求項4】 前記部分的書体データファイルは、ファ
    イル名称によって管理されることを特徴とする請求項3
    に記載の書体データ管理装置。
JP04904393A 1993-03-10 1993-03-10 書体データ管理方法及び装置 Expired - Fee Related JP3285995B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04904393A JP3285995B2 (ja) 1993-03-10 1993-03-10 書体データ管理方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04904393A JP3285995B2 (ja) 1993-03-10 1993-03-10 書体データ管理方法及び装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001376387A Division JP3715917B2 (ja) 2001-12-10 2001-12-10 書体データ管理方法及び装置

Publications (2)

Publication Number Publication Date
JPH06266334A JPH06266334A (ja) 1994-09-22
JP3285995B2 true JP3285995B2 (ja) 2002-05-27

Family

ID=12820059

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04904393A Expired - Fee Related JP3285995B2 (ja) 1993-03-10 1993-03-10 書体データ管理方法及び装置

Country Status (1)

Country Link
JP (1) JP3285995B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7362459B2 (en) 2000-11-17 2008-04-22 Seiko Epson Corporation Network device and printer
US9519625B2 (en) * 2010-05-06 2016-12-13 Celartem, Inc. Accurate font activation

Also Published As

Publication number Publication date
JPH06266334A (ja) 1994-09-22

Similar Documents

Publication Publication Date Title
US5528742A (en) Method and system for processing documents with embedded fonts
US6111654A (en) Method and apparatus for replacing or modifying a postscript built-in font in a printer
US6687016B2 (en) Method of utilizing variable data fields with a page description language
US4428065A (en) Data processing system with multiple display apparatus
RU2316814C2 (ru) Способ выбора шрифта
US6397233B1 (en) Document processing apparatus and computer program product therefor
US7155476B2 (en) Print system, printing method, and storage medium
JP2003058528A (ja) 文字処理装置および文字処理方法およびプログラム
JP3285995B2 (ja) 書体データ管理方法及び装置
JP2866153B2 (ja) 文字処理装置及び方法
US5563626A (en) Smooth text display system
JP2974322B2 (ja) 文字処理装置及び方法
JP3715917B2 (ja) 書体データ管理方法及び装置
JP2004303077A (ja) 情報処理装置及びページ記述言語生成方法、プログラム及び記憶媒体
JP3450869B2 (ja) ビットイメージデータ生成装置およびビットイメージデータ生成方法
JPH09166974A (ja) 文書処理装置及びキャッシュ機能方法
JP2001216110A (ja) キャッシュ制御方法及びそれを用いた印刷制御装置及び文字処理装置及び方法
JPH09146521A (ja) 出力制御装置及び方法
JP3984553B2 (ja) データ処理装置、データ処理システム、及び記録媒体
CN1155696A (zh) 用主高速缓存器和打印机高速缓存器提高文本打印性能
JP3423113B2 (ja) キャッシュ制御装置及び文字出力装置
JPH1016319A (ja) プリントデータ展開装置
JPH02241267A (ja) 画像情報処理装置
JPH0546141A (ja) 文字キヤツシユ方式
JPH08221050A (ja) 文字処理機能付き情報処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000704

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

Free format text: PAYMENT UNTIL: 20080308

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090308

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100308

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees