JP3473287B2 - Font management device - Google Patents

Font management device

Info

Publication number
JP3473287B2
JP3473287B2 JP22454596A JP22454596A JP3473287B2 JP 3473287 B2 JP3473287 B2 JP 3473287B2 JP 22454596 A JP22454596 A JP 22454596A JP 22454596 A JP22454596 A JP 22454596A JP 3473287 B2 JP3473287 B2 JP 3473287B2
Authority
JP
Japan
Prior art keywords
font
fonts
area
management device
storage means
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
JP22454596A
Other languages
Japanese (ja)
Other versions
JPH1049132A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP22454596A priority Critical patent/JP3473287B2/en
Publication of JPH1049132A publication Critical patent/JPH1049132A/en
Application granted granted Critical
Publication of JP3473287B2 publication Critical patent/JP3473287B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、ページ記述言語
(以下、PDLという。)によって記述されたPDLデ
ータを入力として画像出力を行うPDL処理出力装置に
おいて、フォントの記憶処理を管理するフォント管理装
置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a PDL processing output device for outputting an image using PDL data described in a page description language (hereinafter referred to as PDL) as an input, and a font management device for managing font storage processing. Regarding

【0002】[0002]

【従来の技術】PDLは、画像出力装置の解像度、カラ
ーの表現能力、処理方式等等と言った仕様に依存しない
形式で、複雑な図形の描画や任意の大きさの文字出力等
の定義が行える言語であり、非常に抽象度の高い表現能
力を持っている。特に、文字出力処理に関しては、PD
Lを用いて文書画像のデータを記述することによって、
任意の大きさの文字が出力できるだけでなく、描画する
文字のフォント(書体とも呼ぶ)の種類においても幅広
い選択ができるようになっている。このように、PDL
では、複数のフォントを選択できることによって一般の
印刷物のように見出しと本文、和文と英文等にフォント
を使い分けることが可能となり、文書の表現能力がそれ
以前と比較して格段に進歩した。なお、これらPDLの
例としては、Xerox社のInterpress(登
録商標)、Adobe社のPostScript(登録
商標)等が知られている。
2. Description of the Related Art A PDL is a format that does not depend on specifications such as resolution of an image output device, color expression capability, processing method, etc., and defines definition of complicated graphic drawing and character output of arbitrary size. It is a language that can be used, and has a very high level of abstraction. Especially regarding the character output process, PD
By describing the data of the document image using L,
Not only is it possible to output characters of arbitrary size, but it is also possible to make a wide selection of fonts (also called typefaces) for the characters to be drawn. In this way, PDL
Then, by being able to select multiple fonts, it becomes possible to use different fonts for headings and texts, Japanese and English, etc. like ordinary printed materials, and the expressive power of documents has improved significantly compared to before. As examples of these PDLs, Interpress (registered trademark) of Xerox, PostScript (registered trademark) of Adobe, etc. are known.

【0003】このようなPDLデータに対しての従来の
処理出力装置及び処理の流れを図8及び図9を参照して
説明する。PDL処理出力装置1に入力された全てのP
DLデータは、入力解析部2で読み取られ(手順1)、
構築、描画、パラメータ設定、印刷指示といったPDL
データの属性にしたがって処理される(手順2)。すな
わち、入力されたPDLデータが描画用図形の構築に関
するものである場合には、図形管理部3が当該PDLデ
ータに従って図形バッファ4に描画用の図形データを構
築する(手順3)。また、入力されたPDLデータが描
画コマンドである場合には、パラメータテーブル6に設
定されているパラメータにしたがって、描画処理部5が
図形バッファ4に構築された描画用図形データを読み出
し、プリンタやCRTディスプレイ等から成る出力装置
7の表現能力に適したラスター展開を行ってフレームバ
ッファ8に書き込む(手順4)。
A conventional process output device and process flow for such PDL data will be described with reference to FIGS. 8 and 9. All P's input to the PDL processing output device 1
The DL data is read by the input analysis unit 2 (procedure 1),
PDL such as construction, drawing, parameter setting, print instruction
Processing is performed according to the data attributes (procedure 2). That is, when the input PDL data relates to the construction of the drawing graphic, the graphic management unit 3 builds the graphic data for drawing in the graphic buffer 4 according to the PDL data (procedure 3). If the input PDL data is a drawing command, the drawing processing unit 5 reads the drawing graphic data constructed in the graphic buffer 4 according to the parameters set in the parameter table 6, and the printer or the CRT. A raster expansion suitable for the expressive ability of the output device 7 including a display or the like is performed and written in the frame buffer 8 (procedure 4).

【0004】また、入力されたPDLデータがパラメー
タ設定コマンドである場合には(手順5)、まず、パラ
メータ管理部9がそのパラメータがフォント指定のもの
であるかどうかを判断し(手順6)、フォント指定に関
連するものでない場合は、パラメータテーブル6に登録
してそれぞれ必要な処理を行う(手順7)。一方、フォ
ント指定のものである場合は、パラメータ管理部9が、
パラメータをパラメータテーブル6に登録した後(手順
8)、主記憶装置上のフォント格納領域であるVM領域
10にそのフォントがすでに展開されているかどうかを
検索する(手順9)。この結果、既に展開されている場
合には、そのフォントを描画処理部5に現在使用中のフ
ォントとして扱わせる一方、未だ展開されていないフォ
ントの場合には、図外の外部記憶装置等に格納されてい
るフォントを読み込んでVM領域10上に展開して、現
在使用中のフォントとして扱わせる(手順11)。
If the input PDL data is a parameter setting command (procedure 5), the parameter management section 9 first determines whether or not the parameter is font-designated (procedure 6). If it is not related to the font designation, it is registered in the parameter table 6 and the necessary processing is performed (procedure 7). On the other hand, when the font is designated, the parameter management unit 9
After registering the parameters in the parameter table 6 (procedure 8), it is searched whether or not the font has already been expanded in the VM area 10 which is a font storage area on the main storage device (procedure 9). As a result, if the font has already been expanded, the drawing processing unit 5 treats it as the font currently in use, and if the font has not been expanded yet, it is stored in an external storage device (not shown) or the like. The loaded font is read, expanded on the VM area 10 and treated as a font currently in use (procedure 11).

【0005】また、入力されたPDLデータが印刷出力
コマンドである場合には、描画コマンドによって既にフ
レームバッファ8に描画されている内容を、印刷処理部
11が出力装置7に同期して読み出し印字操作を行わせ
る(手順12)。なお、フレームバッファ8はバンド形
式のバッファでも原理は同じである。そして、入力され
た全てのPDLデータが上記のように処理されたところ
で、一連の処理を終了する(手順13)。
When the input PDL data is a print output command, the print processing unit 11 reads the content already drawn in the frame buffer 8 by the drawing command in synchronization with the output device 7 and prints it. (Step 12). The frame buffer 8 may be a band type buffer, and the principle is the same. Then, when all the input PDL data are processed as described above, the series of processes is ended (procedure 13).

【0006】更に、このようなPDLデータに対する従
来の処理の内のフォントの選択処理について詳しく説明
するが、説明を分かり易くするために、PDLの一例と
してAdobe社のPostScript(登録商標)
及びその処理系を登載したプリンタを例にとって説明す
る。なお、PostScript(登録商標)の言語仕
様については、Adobe社の”PostScript
ReferenceManual Second E
dition”において詳しく説明されている。
Further, the font selection process of the conventional processes for such PDL data will be described in detail. To make the description easier to understand, as an example of the PDL, PostScript (registered trademark) manufactured by Adobe Systems Incorporated is used.
Also, description will be made by taking as an example a printer having the processing system installed therein. For the language specifications of PostScript (registered trademark), see “PostScript” of Adobe Systems Incorporated.
Reference Manual Second E
section ".

【0007】PostScript(登録商標)の言語
仕様では、フォントはVMと呼ばれる主記憶装置のある
領域に対して展開される。なお、このVMと呼ばれてい
る領域の他には、印刷処理を行う際の印刷装置用バッフ
ァや内部処理のためのWork領域が必要なため、VM
は主記憶装置内においてPDLの言語処理に使用される
領域とも表現でき、つまり、VMはPDLデータを解析
処理する際にその内部状態を保持するための領域として
使用されている。ここで、VMはLocalVMとGl
obalVMの2種類に分かれており、両者の違いはL
ocalVMにはsave/restoreという記憶
状態の世代管理機構が提供されていることである。すな
わち、saveコマンドを発行した段階以降にVMに行
われた変更を、restoreコマンドによって無効に
し、saveした段階まで状態を復帰することができる
ことである。PostScript(登録商標)におい
ては、この機構を多用しており、例えば、1ページの処
理ごとに状態を復帰させてpage毎に独立をはかるた
めの手段として用いている。
According to the PostScript (registered trademark) language specification, a font is developed in an area of a main storage device called a VM. In addition to the area called VM, a VM buffer for printing and a work area for internal processing are required.
Can also be expressed as an area used for language processing of PDL in the main memory, that is, the VM is used as an area for holding the internal state of the PDL data when it is analyzed. Here, VM is LocalVM and Gl
It is divided into two types of ovalVM, the difference between the two is L
That is, the ocalVM is provided with a storage state generation management mechanism called save / restore. That is, the changes made to the VM after the stage of issuing the save command can be invalidated by the restore command, and the state can be restored to the stage of the save. In PostScript (registered trademark), this mechanism is frequently used, and for example, it is used as a means for recovering the state for each processing of one page and achieving independence for each page.

【0008】ところで、フォントはfindfontコ
マンド等によってVM上に展開されることによって使用
可能(参照可能)なフォントとして設定される。この展
開処理に際して、現在のVMのモードによってLoca
lVM上に展開されるかGlobalVM上に展開され
るかが決定される。そして、LocalVMに展開され
た場合には、既に一度saveされた状態であれば、r
estoreコマンドによってそのフォントが展開され
た状態が取り消され、元の状態に戻すことができる。
By the way, the font is set as a usable (referenceable) font by being expanded on the VM by a findfont command or the like. At the time of this expansion processing, depending on the current VM mode, Local
It is determined whether it is deployed on the 1VM or the GlobalVM. Then, in the case of being expanded to the Local VM, if it has already been saved once, r
The estore command cancels the expanded state of the font and restores the original state.

【0009】ここで、一般的に、フォントのVM上への
展開処理にはかなりの時間がかかる。英語のように1フ
ォント辺り数十文字から多くても百文字程度のものであ
れば、例えば1ページごとにVMがrestoreされ
てフォントを展開する前の状態に戻された後、再び当該
フォントが選択された時には新規にフォントを展開する
ような方式であっても、その処理時間は無視できる程度
である。しかしながら、日本語のように文字数が1フォ
ントに付き数千文字になると、展開処理の時間は大きな
オーバヘッドとなる。また、それだけの大容量のフォン
トを展開するにはVMも大量に消費することとなる。
Here, generally, it takes a considerable time to develop a font on a VM. If the number of characters per font is from several tens to at most 100, such as English, for example, after the VM is restored for each page and the font is restored to the state before the expansion, the font is selected again. The processing time is negligible even if a new font is developed when it is processed. However, when the number of characters is several thousand per font like Japanese, the time required for the expansion process becomes a large overhead. Further, in order to develop such a large capacity font, a large amount of VM is also consumed.

【0010】このような不具合について更に詳しく説明
するとともに、従来において考えられていたな解決方法
を説明する。例えば、PostScript(登録商
標)の通常のフォントフォーマットはType1と呼ば
れているものであるが、このフォーマットに限らず、図
10に示すように、全てのフォントはPDLデータの言
語プログラムの形式で記述されている。主記憶装置12
内のVM領域10上に展開されていない状態では、フォ
ントを記述しているプログラムはそのままPDL処理出
力装置1が有するfile system上のROMや
Disk等の外部記憶装置13に格納されており、描画
処理においてフォントを参照する等の必要に応じて、当
該プログラムを実行することによってフォントがVM領
域10上に展開される。
Such a problem will be described in more detail and a solution that has been considered in the past will be described. For example, the normal font format of PostScript (registered trademark) is called Type 1, but not limited to this format, all fonts are described in the format of a PDL data language program as shown in FIG. Has been done. Main memory 12
In the state where it is not expanded on the VM area 10 in the inside, the program describing the font is stored as it is in the external storage device 13 such as ROM or Disk on the file system of the PDL processing output device 1 and The font is expanded on the VM area 10 by executing the program as needed such as referring to the font in the processing.

【0011】ここで、PostScriptにおけるV
M領域上への展開処理は、図11に示すように、キーと
それに対応するデータ内容の組みを辞書と呼ばれるオブ
ジェクトとし、これらオブジェクトを複数格納した形式
のオブジェクトとして行われる。つまり、あるフォント
が選択された場合、そのフォントがVM領域上にすでに
展開されている時には、その該当する辞書オブジェクト
が参照されるが、未だVM領域上に展開されていない時
には、外部記憶装置からその辞書を作成するためのプロ
グラムファイルが検索されて実行され、辞書が作成され
る。このようにPostScriptのフォントはプロ
グラム形式で記述されている情報を辞書オブジェクトの
形式でVM領域上に展開するため、展開処理に時間およ
びVM資源を多量に消費することとなる。特に、Typ
e1と呼ばれる形式は全ての情報についてVM上に展開
するフォーマットであるので、これが顕著である。
Here, V in PostScript
As shown in FIG. 11, the expansion processing on the M area is performed as an object in a format in which a set of keys and data contents corresponding to the keys is made an object called a dictionary. That is, when a font is selected, when the font is already expanded in the VM area, the corresponding dictionary object is referenced, but when it is not expanded in the VM area, the external storage device is used. The program file for creating the dictionary is searched and executed, and the dictionary is created. As described above, since the PostScript font expands the information described in the program format in the VM area in the dictionary object format, the expansion process consumes a large amount of time and VM resources. Especially, Type
This is remarkable because the format called e1 is a format in which all information is expanded on the VM.

【0012】このような不具合を解決するためには、辞
書の基本部分のみをVM上に置いた状態とし、一番デー
タ容量の大きいアウトラインデータ定義部分は別の外部
領域(DISKやROM上)に格納してた状態で使用
し、プログラムにはその領域へのアクセスメソッドおよ
びポインタのみを置くという方法が考えられる。この解
決方法によれば、高価な半導体メモリによって提供され
ているVMについて、必要とされる容量を抑えることが
でき、また、最もサイズの大きいアウトラインデータ本
体はVM上には展開しないので、トータルでの展開時間
も削減することができる。
In order to solve such a problem, only the basic part of the dictionary is placed on the VM, and the outline data definition part having the largest data capacity is placed in another external area (on the DISK or ROM). It is possible to use it in the stored state and put only the access method and pointer to the area in the program. According to this solution, the required capacity of the VM provided by the expensive semiconductor memory can be suppressed, and the outline data body having the largest size is not expanded on the VM. Deployment time can also be reduced.

【0013】このようにアウトラインデータ定義部分は
外部領域に格納してた状態で使用する、すなわち、所謂
ROM化するのが効果的な方法と考えられる。このRO
M化方式において一番理想的な方法は、コンピュータの
オペレーティングシステムに用いられているような仮想
記憶装置における記憶領域スワップの方式を用いて、P
DL処理出力装置の立ち上げ時に使用可能なすべての保
有フォントをVM上に展開した状態で、そのVMをスワ
ップ領域として扱い、そのままROM化する方式、つま
りVMのSnapShotを作成してそのままROMに
焼き、なおかつ、その状態でメモリ管理システムで認識
する方式である。この方式は、VMをそのままROMに
焼くのでRAMのVMは一切消費しないので、一番効率
がよい方法と考えられる。ただし、VMのSnapSh
otをROMに焼くためには、PDL処理出力装置のメ
モリ管理とオペレーティングシステムのメモリ管理を一
元化する必要があり、そのため、固有のオペレーティン
グシステムに依存し、PDL処理出力装置のVM管理機
構そのものを変更する必要がある。
As described above, it is considered effective to use the outline data definition portion in a state where it is stored in the external area, that is, to make a so-called ROM. This RO
The most ideal method in the M-ized method is to use a storage area swap method in a virtual storage device used in a computer operating system,
When all the fonts that can be used when the DL processing output device is started are expanded on the VM, the VM is treated as a swap area and is directly converted to ROM, that is, a SnapShot of the VM is created and burned to ROM as it is. Moreover, it is a method of recognizing in that state by the memory management system. This method is considered to be the most efficient method because the VM is burned in the ROM as it is and the VM in the RAM is not consumed at all. However, SnapSh of VM
In order to burn ot to ROM, it is necessary to unify the memory management of the PDL processing output device and the memory management of the operating system. Therefore, depending on the specific operating system, the VM management mechanism itself of the PDL processing output device is changed. There is a need to.

【0014】このような事情から、ROM化方式を容易
に実現するためには、フォントデータの枠組みとしては
既存のフォーマットを利用して互換性を保ち、その一部
をROM化してVMの消費量を減らし、なおかつ、RO
M化した部分はVM上に展開はしないので展開速度を早
くするという方式が有利と考えられる。このような観点
から考案された独自方式の一例として、富士ゼロックス
社発行の「富士ゼロックステクニカルリポートNo.8
1993」の「フルカラープリントサービス技術」の
項にある方式について説明する。
Under these circumstances, in order to easily realize the ROM system, the existing format is used as the framework of the font data to maintain compatibility, and a part of the format is stored in the ROM to consume the VM. And reduce RO
Since the M-ized portion is not expanded on the VM, the method of increasing the expansion speed is considered to be advantageous. As an example of an original method devised from such a viewpoint, “Fuji Xerox Technical Report No. 8” issued by Fuji Xerox Co., Ltd.
The method described in the section "Full-color print service technology" of "1993" will be described.

【0015】図12に示すように、この方式は次の2つ
を柱にしており、その一つはType85という外部記
憶装置に対応するフォントフォーマット、もう一つは遅
延評価方式である。PostScript(登録商標)
は、英語用のものをベースに日本語対応を果たしたPD
Lであり、そのため、1つのフォント辞書は通常256
文字以内で表現される。したがって、漢字のように数千
文字が必要なフォントにおいては、フォントを複合形式
によって管理している。すなわち、複数のフォントを階
層的に配置し、最終的には256文字以下にすることに
よって管理している。この複合形式によるフォントの管
理において、階層の上位に位置する、つまりマッピング
を行うためのフォントを”Composite Fon
t”と呼び、Type0という形式番号が与えられてい
る。つまり、1つの書体に対しては1つのType0フ
ォントが対応するため、既存の英語のフォント管理方式
と共存できる。このような管理においては、フォントの
実体はそのType0フォントから階層的にマッピング
された複数のフォント”Descender Fon
t”によって構成され、最終的にはType1などの実
体を持つフォント”Base Font”へ辿ることに
より行われる。
As shown in FIG. 12, this method is based on the following two pillars, one of which is a font format corresponding to an external storage device called Type 85, and the other is a delay evaluation method. PostScript (registered trademark)
Is a PD that supports Japanese based on the one for English
L, so one font dictionary is usually 256
Expressed within characters. Therefore, for fonts that require thousands of characters such as kanji, the fonts are managed in a composite format. That is, a plurality of fonts are arranged in a hierarchical manner, and finally, the fonts are managed by having 256 characters or less. In managing fonts in this composite format, fonts that are positioned higher in the hierarchy, that is, for performing mapping, are "Composite Fon".
It is called "t" and is given a format number of Type 0. In other words, since one Type 0 font corresponds to one typeface, it can coexist with the existing English font management method. In such management , The font entity is a plurality of fonts that are hierarchically mapped from the Type0 font "Descender Fon.
It is performed by tracing to a font "Base Font" which is composed of t "and finally has a substance such as Type1.

【0016】ここで、この方式における特徴は、この”
Base Font”として富士ゼロックス社が独自に
定義したType85というフォントを用いていること
である。このフォントはPostScriptの辞書と
して必要なエントリーは持っているが、フォントのアウ
トラインデータ自体は外部記憶装置上におくことによっ
て、新規のフォントが選択された時のローディング速度
とVMの消費を抑えている。さらに、遅延評価方式をフ
ォント管理に対して適用しており、findfontコ
マンドを実行した時には仮のオブジェクト(疑似フォン
ト)を作成して登録し、実際にscalefontなど
によってある特定の大きさの実際の処理対象となるフォ
ントが必要になったときに、初めて実際にフォントの実
体の展開/作成を行う。この遅延評価方式では、必要と
なるまではフォントの実体部分は展開されないので、仮
に初期化時に多くのフォントをあらかじめ展開して備え
るような場合においても負荷が集中することがないので
負荷分散にもなる。
The characteristic of this system is that
This is because the font called "Type85" originally defined by Fuji Xerox Co., Ltd. is used as "Base Font." Although this font has an entry necessary for the PostScript dictionary, the outline data of the font itself is stored in an external storage device. By setting it, the loading speed and VM consumption when a new font is selected are suppressed.In addition, the lazy evaluation method is applied to the font management, and when the findfont command is executed, a temporary object ( Pseudo fonts) are created and registered, and the actual expansion / creation of the actual font is performed only when a font to be actually processed having a specific size is required by scalefont or the like. With the lazy evaluation method, fonts are used until needed. Since the substantial part of is not expanded, the load will not be concentrated even if a large number of fonts are expanded in advance at the time of initialization, and the load will be distributed.

【0017】しかしながら、この方式ではフォントの実
際の展開を先延ばしにすることはできるが、多数の日本
語フォントなどが選択されて文字出力が行われた場合に
は、主記憶装置の消費量は際限なく大きくなってしま
う。したがって、この方式では、英語のみ対応している
ものに対して、日本語対応とするためには主記憶装置に
多くのメモリ容量を必要としてしまう。
However, with this method, the actual expansion of the font can be postponed, but if a large number of Japanese fonts etc. are selected and the characters are output, the amount of consumption of the main storage device is reduced. It grows infinitely. Therefore, this system requires a large memory capacity in the main storage device in order to support Japanese only for those that support only English.

【0018】また、特開平7−64971号公報には、
日本語のような文字数の多いフォントについて、フォン
トをグループ分けして外部記憶装置等に格納しておき、
文字描画を行う際に該当するフォントが主記憶装置にす
でに展開されているかどうかを検索し、未展開の場合に
は外部記憶装置から展開するシステムが開示されてい
る。このシステムによれば、システム立上げ時には全て
のフォントを展開する必要がないので、展開時間の速さ
と主記憶装置の容量の低減をはかることができるとして
いる。
Further, Japanese Patent Laid-Open No. 7-64971 discloses that
For fonts with a large number of characters such as Japanese, group the fonts and store them in an external storage device, etc.
There is disclosed a system in which when a character is drawn, a search is made as to whether or not the corresponding font has already been expanded in the main storage device, and if it has not been expanded, it is expanded from the external storage device. According to this system, it is not necessary to expand all the fonts when starting up the system, so that it is possible to reduce the expansion time and the capacity of the main storage device.

【0019】しかしながら、このシステムでは、文字を
描画する段階になって初めてあるグループのフォント展
開を新規に開始するため、既存のPDL、特にPost
Scriptのような書体の選択および文字出力方式に
は適用できないものであった。すなわち、PDL処理に
おいては図3に示すようなテーブル(FontDire
ctry)を用いてフォントを管理しているが、fin
dfontコマンドで指定された名前のフォントを使用
可能なオブジェクトとして作成すると同時に、当該名前
はFontDirectoryに登録される。つまり、
書体が選択された段階で、フォントオブジェクトはFo
ntDirectoryに登録されていないといけな
い。これに対して、特開平7−64971号公報に記載
されたシステムでは、単純に主記憶装置上に展開するフ
ォントをグループ化された小さい単位で行うとしている
だけであるので、このようにFontDirector
yなどの管理テーブルから間接参照された場合に参照さ
れたフォントが主記憶装置には展開されていない事態が
発生してしまう。また、このシステムでは、単に文字コ
ードから逆引きでフォントを選択するので、複数の書体
には対応しておらず、PostScriptのような高
機能のPDL処理出力装置には適用できないものであっ
た。
However, in this system, since the font development of a certain group is newly started only at the stage of drawing characters, the existing PDL, particularly Post
It was not applicable to the selection of typefaces such as Script and the character output method. That is, in the PDL process, a table (FontDire) as shown in FIG.
The font is managed using ctry).
At the same time that the font with the name specified by the dfont command is created as a usable object, the name is registered in the FontDirectory. That is,
When the typeface is selected, the font object is Fo
It must be registered in ntDirectory. On the other hand, in the system disclosed in Japanese Patent Laid-Open No. 7-64971, fonts to be expanded on the main storage device are simply arranged in small grouped units, and thus the FontDirector is used.
When indirectly referenced from the management table such as y, the referenced font may not be expanded in the main storage device. Further, in this system, since a font is simply selected by reverse lookup from a character code, it is not compatible with a plurality of typefaces and cannot be applied to a highly functional PDL processing output device such as PostScript.

【0020】[0020]

【発明が解決しようとする課題】上述のように、従来に
おいては、PDL処理出力装置において、日本語のよう
に書体数が多いフォントの扱いについては主記憶装置の
容量を増やすなどして対応するしかなかった。したがっ
て、従来にあっては、日本語のように多数のフォントの
展開処理を高速に行うことができず、また、主記憶装置
におけるフォントに使用される容量がかなり大きなもの
となってしまうとともに、メモリ管理が極めて複雑化し
てしまうという問題があった。本発明は上記従来に事情
に鑑みなされたもので、限られた主記憶装置の容量で日
本語等の多くのフォントを扱うことが可能なフォント管
理装置を提供することを目的とする。
As described above, in the related art, in a PDL processing output device, handling of a font having a large number of typefaces such as Japanese is handled by increasing the capacity of the main storage device. There was nothing else. Therefore, in the past, it is not possible to develop a large number of fonts at high speed like Japanese, and the capacity used for fonts in the main storage device becomes considerably large. There was a problem that memory management became extremely complicated. The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a font management apparatus capable of handling many fonts such as Japanese in a limited capacity of a main storage device.

【0021】[0021]

【課題を解決するための手段】上記目的を達成するた
め、本発明では、PDLにより記述されたPDLデータ
に基づいて参照される複数の文字画像のフォントを管理
するフォント管理装置において、複数のフォントを保持
するROM等の補助記憶手段と、描画処理に用いるフォ
ントを保持するVM領域等の主記憶手段と、を備え、展
開受付手段がフォントを展開する指示を受け取ると、主
記憶管理手段が展開を指示されたフォントを展開するこ
とによって主記憶手段に保持されるフォントの総量が所
定の容量を超えるか否かを検出する。そして、主記憶管
理手段によってフォントの総量が前記容量を超えること
が検出された場合には、排除手段が主記憶手段に保持さ
れているフォントの中で参照頻度が最も低いフォントか
ら排除して領域を確保し、この領域確保後に、展開手段
が展開指示のあったフォントを参照可能な形式として補
助記憶手段から主記憶手段に展開する。
In order to achieve the above object, according to the present invention, a font management apparatus for managing fonts of a plurality of character images referred to on the basis of PDL data described by PDL is used in a plurality of fonts. And a main storage unit such as a VM area for holding fonts used for drawing processing, and when the expansion receiving unit receives an instruction to expand the font, the main memory management unit expands it. By expanding the designated font, it is detected whether or not the total amount of the fonts held in the main storage means exceeds a predetermined capacity. When the main memory management unit detects that the total amount of fonts exceeds the above capacity, the exclusion unit excludes the font with the lowest reference frequency among the fonts held in the main storage unit and removes the area. After this area is secured, the expansion means expands the font for which the expansion instruction is given from the auxiliary storage means to the main storage means in a format that can be referred to.

【0022】また、本発明に係るフォント管理装置で
は、各フォントは文字画像の情報を管理する実体フォン
ト部分と、PDLデータと実体フォント部との関連付け
を管理する識別フォント部分とを有しており、参照受付
手段が既に主記憶手段に保持されたフォントに対しての
参照指示を受け付けると、主記憶管理手段が参照指示の
あった実体フォント部分を展開することによって主記憶
手段に保持されるフォントの総量が所定の容量を超える
か否かを検出する。そして、主記憶管理手段によってフ
ォントの総量が前記容量を超えることが検出された場合
には、排除手段が主記憶手段に保持されている実体フォ
ント部分の中で参照頻度が最も低い実体フォント部分か
ら排除して領域を確保し、この領域確保後に、参照展開
手段が参照指示のあった実体フォント部分を参照可能な
形式として補助記憶手段から主記憶手段に展開する。
Further, in the font management apparatus according to the present invention, each font has a substantive font portion for managing character image information and an identification font portion for managing the association between the PDL data and the substantive font portion. When the reference receiving unit receives a reference instruction for a font already held in the main storage unit, the main storage management unit expands the substantive font portion for which the reference instruction is given, and thereby the font held in the main storage unit. It is detected whether or not the total amount of the data exceeds a predetermined capacity. If the main memory management unit detects that the total amount of fonts exceeds the capacity, the elimination unit starts from the substantive font part with the lowest reference frequency among the substantive font parts held in the main storage unit. The area is excluded to secure the area, and after the area is secured, the reference expansion means expands the substantive font portion for which the reference instruction is given from the auxiliary storage means to the main storage means in a referable format.

【0023】より具体的には、本発明に係るフォント管
理装置では、入力されたPDLデータを解析してフォン
ト処理に関する命令を抽出する。そして、抽出したフォ
ントに関する命令の内のフォントを主記憶装置上に展開
する必要のあるものについて、外部記憶装置から読み出
して展開する。この展開を行う際に、該当するフォント
の使用頻度をカウントし、主記憶装置の容量の制限にし
たがって使用頻度の低いフォントについてはその主記憶
装置上の領域を解放して再利用可能とする。また、この
再利用可能な状態においても識別フォント部分は主記憶
装置上に存在させて、間接参照が行えるようにしてい
る。
More specifically, the font management apparatus according to the present invention analyzes the input PDL data and extracts a command relating to font processing. Then, of the commands related to the extracted font, those that need to be expanded in the main storage device are read from the external storage device and expanded. When this expansion is performed, the frequency of use of the corresponding font is counted, and for the less frequently used font, the area on the main memory is released for reuse according to the capacity limit of the main memory. Further, even in this reusable state, the identification font portion is made to exist in the main storage device so that indirect reference can be performed.

【0024】[0024]

【発明の実施の形態】本発明の一実施形態に係るフォン
ト管理装置を、図面を参照して説明する。なお、図8〜
図12に示した従来例も必要に応じて適宜参照する。図
1には、本実施形態に係るフォント管理装置を示してあ
り、このフォント管理装置は図8に示したPDL処理出
力装置1におけるパラメータ管理部9内のフォント管理
部20として構成されている。フォント管理部20に
は、PDLデータのパラメータ設定関連コマンドにより
フォントを展開する指示を受け取る受付手段21と、展
開を指示されたフォントを主記憶装置のVM領域10に
展開することによってVM領域10に保持されるフォン
トの総量が所定の容量を超えるか否かを検出する主記憶
管理手段22と、フォントの総量が当該容量を超えるこ
とが検出された場合にVM領域10に保持されているフ
ォントの中で参照頻度が最も低いフォントを順次排除す
る排除手段23と、排除によって展開領域が確保された
VM領域10に展開指示のあったフォントを参照可能な
形式として外部記憶装置13から展開する展開手段24
と、を備えている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS A font management device according to an embodiment of the present invention will be described with reference to the drawings. Note that FIG.
The conventional example shown in FIG. 12 will also be referred to as necessary. FIG. 1 shows a font management device according to the present embodiment, and this font management device is configured as a font management unit 20 in a parameter management unit 9 in the PDL processing output device 1 shown in FIG. The font management unit 20 receives an instruction to develop a font by a command related to parameter setting of PDL data, and a font area instructed to be developed in the VM area 10 of the main storage device to be stored in the VM area 10. Main memory managing means 22 for detecting whether the total amount of fonts held exceeds a predetermined capacity, and of the fonts held in the VM area 10 when it is detected that the total amount of fonts exceeds the specified capacity. Among them, an excluding means 23 for sequentially excluding the font having the lowest reference frequency, and an expanding means for expanding the font for which the expansion instruction is given to the VM area 10 whose expansion area is secured by the exclusion from the external storage device 13 as a referable format. 24
And are equipped with.

【0025】ここで、後述するように、本実施形態にお
けるフォントは文字画像の情報を管理する実体フォント
部分と、PDLデータと前記実体フォント部との関連付
けを管理する識別フォント部分とを有しており、排除手
段23による排除処理は既にVM領域10に保持されて
いる実体フォント部分のデータ領域を指示に基づいて展
開する他の実体フォント部分で上書きすることにより行
われる。このような処理を実行するために、フォント管
理部20には、展開手段24が実体フォント部を展開す
る際に、指示された実体フォント部分のエントリを排除
する実体フォント部分の対応するエントリに対して反映
させる制御を行う展開制御手段25が、備えられてい
る。
Here, as will be described later, the font in this embodiment has a substantive font part for managing the information of the character image and an identification font part for managing the association between the PDL data and the substantive font part. Therefore, the elimination processing by the elimination means 23 is performed by overwriting the data area of the substantial font portion already held in the VM area 10 with another substantial font portion developed based on the instruction. In order to perform such processing, the font management unit 20 causes the expansion unit 24 to expand the substantial font part, and removes the entry of the designated substantial font part for the corresponding entry of the substantial font part. A deployment control means 25 is provided for performing control to reflect the reflection.

【0026】次に、本実施形態のフォント管理部20に
よって行われる処理を図2を参照して説明する。なお、
本実施形態におけるPDLデータの処理は、図9に示し
た従来例に対してパラメータ設定関連コマンドについて
の処理部分の一部(手順14〜手順16)が異なるだけ
であるので、他の処理部分(手順1〜手順10及び手順
12、手順13)についての説明は重複を避けるために
割愛する。本実施形態においても、フォントがVM領域
10に展開されていない場合は、外部記憶装置13から
フォントを生成するPDLデータ(プログラム形式)を
読み込み、それを実行することによってVM領域10上
に展開処理を行ってフォントオブジェクトを生成する。
ここで、VM領域10内に新規に展開のための領域を確
保すると、従来の問題点として説明したように、フォン
ト数が増えるに比例してVM領域10を際限なく消費し
てしまう。
Next, the processing performed by the font management unit 20 of this embodiment will be described with reference to FIG. In addition,
The processing of the PDL data in the present embodiment is different from the conventional example shown in FIG. 9 only in part of the processing part (procedure 14 to procedure 16) for the parameter setting related command, and therefore in other processing parts (procedure 14 to 16). The description of steps 1 to 10 and steps 12 and 13) is omitted to avoid duplication. Also in the present embodiment, when the font is not expanded in the VM area 10, the PDL data (program format) for generating the font is read from the external storage device 13 and executed to execute the expansion processing on the VM area 10. To generate a font object.
Here, if a new area for expansion is secured in the VM area 10, the VM area 10 will be consumed indefinitely in proportion to the increase in the number of fonts, as described as a conventional problem.

【0027】このため、まず、主記憶管理手段22が、
現在VM領域10内において使用されているフォントの
中で、一番使用頻度の低いものを探し(手順14)、そ
のフォントが確保していた領域を排除手段23が解放す
る(手順15)。この使用頻度については、1文字出力
処理を行うごとに、主記憶管理手段22が該当フォント
の使用頻度情報を更新して、その頻度情報に従って判定
する。そして、VM領域10内に展開可能な領域を確保
した後、該当する新規フォントを展開手段24が外部記
憶装置13から読み出してVM領域10に展開する。
Therefore, first, the main memory management means 22
Of the fonts currently used in the VM area 10, the one with the lowest frequency of use is searched for (procedure 14), and the exclusion means 23 releases the area secured by that font (procedure 15). Each time one character is output, the main memory management unit 22 updates the usage frequency information of the font and determines the usage frequency according to the frequency information. Then, after securing an expandable area in the VM area 10, the expansion means 24 reads the corresponding new font from the external storage device 13 and expands it in the VM area 10.

【0028】ここで、上記の処理を単純に行っただけで
は、PostScriptの処理系においては問題が発
生する。すなわち、図3に示すように、PostScr
iptでは、VM上に展開されているフォントはフォン
トディレクトリー”FontDirectry”という
称せられる管理テーブルによって管理されており、ユー
ザはそれを参照することができる。このため、単にVM
からフォントを解放してしまうと、この管理テーブルと
の対応がとれなくなる。なお、管理テーブルに対してV
Mの現在の内容をそのまま反映させると、この管理テー
ブルには使用頻度の高いフォントのみ登録されているこ
とになる。これはPostScirptの言語仕様上一
般には許されないものである。PostScirptの
言語仕様上は一度VMに展開されたフォントは、そのV
M領域がrestoreなどの明示的なコマンドで前の
状態に戻るなどしなければ、そのまま保持されつづれな
ければならないからである。
Here, if the above process is simply performed, a problem occurs in the PostScript processing system. That is, as shown in FIG. 3, PostScr
In ipt, the fonts developed on the VM are managed by a management table called a font directory “FontDirectory”, and the user can refer to it. Therefore, simply VM
If the font is released from, the correspondence with this management table will be lost. For the management table, V
If the current contents of M are reflected as they are, only the frequently used fonts are registered in this management table. This is not generally allowed due to the language specifications of PostScipt. According to the PostSirpt language specification, the font once expanded to the VM is the V
This is because if the M area is not returned to the previous state by an explicit command such as restore, it must be retained and spelled.

【0029】したがって、本実施形態の基本的な処理で
は、あるフォントが解放された際には、”FontDi
rectory”に登録されているエントリーはそのま
まにして、データ部分(つまり、フォント辞書そのも
の)はダミーのものを残すことにしている。そして、”
FontDirectory”を通して実際にアクセス
された際には、再びその辞書を新規にVM領域に展開し
て、対応するダミーと換えるようにしている。但し、こ
のような処理だけでは、”FontDirector
y”の管理に負荷をかけることとなって処理速度の低下
を招く可能性がある。そこで、本実施形態では、このよ
うなフォントの頻度による管理を複合形式のフォントの
うちの”Base Font”のみについて限定して実
施するようにしている。
Therefore, in the basic processing of this embodiment, when a font is released, "FontDi
The entry registered in "directory" is left unchanged, and the data part (that is, the font dictionary itself) is left as a dummy.
When actually accessed through "FontDirectory", the dictionary is newly expanded in the VM area again and replaced with the corresponding dummy. However, with such processing alone, "FontDirector" is used.
This may impose a load on the management of "y", which may lead to a decrease in processing speed. Therefore, in the present embodiment, such management based on the frequency of fonts is performed in "Base Font" of the composite format fonts. Only the limited items are implemented.

【0030】複合形式のフォントは先にも説明したよう
に、PostScriptで漢字を扱うために主に用い
られているものであり、図3に示すように、フォント名
に対応した一番上位のフォントを”Root Fon
t”、この”Root Font”から派生する下位の
フォントを”Descender Font”と呼び、
この”Descender Font”の内の最下位の
フォントで実際にフォントデータを持っているフォント
を特に”Base Font”と呼ぶ。基本的な漢字フ
ォントは、1つの”Root Font”と数十の”B
ase Font”から成っているが、複雑なコード体
系のフォントであると、中間段に”Descender
Composite Font”が幾つか入ることも
ある。なお、”Base Font”はいわゆる漢字の
区単位に分かれており、その数は1フォントに付き数十
から百個程である。
As described above, the composite format font is mainly used for handling Kanji in PostScript, and as shown in FIG. 3, the highest-order font corresponding to the font name. To "Root Fon
t ", a lower-level font derived from this" Root Font "is called" Descender Font ",
The lowest font among the "Descender Fonts" that actually has font data is called "Base Font". The basic Kanji font is one "Root Font" and dozens of "B".
Although it is made up of "ase Font", a font with a complicated code system has "Descender" in the middle stage.
Some "Composite Fonts" may be included. "Base Fonts" are divided into so-called Kanji character units, and the number is about tens to hundreds per font.

【0031】本実施形態では、”Base Font”
のみをVM領域からの解放の対象とし、さらに、次の処
理を組み合せることによって問題を回避している。すな
わち、”Base Font”のみを単に解放の対象と
すると、その上位の”Descender Font”
は自分の下位の”Base Font”が解放されてい
ることを認識して内容を随時更新しなければならず、ま
た、解放された”Base Font”のために”Fo
ntDirectory”も更新されなければならない
という問題を回避している。
In this embodiment, "Base Font" is used.
Only the target is released from the VM area, and the following processing is combined to avoid the problem. In other words, if only "Base Font" is the target of release, "Descender Font" of its upper level is released.
The player must recognize that his or her lower "Base Font" has been released and update the contents at any time, and "Fo" for the released "Base Font".
It avoids the problem that ntDirectory "also has to be updated.

【0032】本実施形態では、findfontコマン
ドによって漢字フォントが呼び出されると、通常は”R
oot Font”および”Base Font”の全
てのフォントが呼び出されるが、従来例にある遅延評価
の手法を導入し、最初にfindfontされた段階で
は疑似フォントのみを生成し、実際に文字描画時に指定
された文字が格納されている”Base Font”の
みを逐次VM領域に展開するものである。つまり、使用
した区だけVM領域に展開するようにしており、このた
め、あまり使用されない第二水準のようなフォントはほ
とんどVM領域に展開されないこととなってVM領域の
使用量が減少する。さらに、本実施形態では、これにV
M領域の解放の仕組みと、解放と新規生成の繰り返しに
よる主記憶装置の領域の断片化を防ぐ仕組みとを採用し
ている。
In this embodiment, when a Kanji font is called by the findfont command, it is normally "R".
All the fonts of "root font" and "Base font" are called, but the method of lazy evaluation in the conventional example is introduced, and only the pseudo font is generated at the first findfont stage, and the font is actually specified when the character is drawn. Only the "Base Font" in which the stored characters are stored are sequentially expanded in the VM area. In other words, only the used section is expanded in the VM area, so that the second level which is not often used is Since such a font is hardly expanded in the VM area, the usage amount of the VM area is reduced.
A mechanism for releasing the M area and a mechanism for preventing fragmentation of the area of the main storage device due to repeated release and new generation are adopted.

【0033】まず、領域の解放と間接参照について説明
する。本実施形態では、日本語フォントは図4に示すよ
うな階層で管理される。最上位の”Root Comp
osite Font”は、そのフォントが管理してい
る次の階層の”Descender Font”を”F
DepVector”というエントリー名の辞書の配列
で管理している。”Root Composite F
ont”の”FontType”エントリーは0であ
り、”FMapType”エントリーは次の階層のフォ
ントの内のどのフォントを選択するかのアルゴリズムを
決定する。例えば、”FMapType”エントリーが
2の場合は、showコマンドの対象となる文字列の最
初の1Byteの数値を”FDepVector”エン
トリーに示された配列のインデックスとして用いて、次
の階層の辞書を特定する。
First, the area release and indirect reference will be described. In this embodiment, Japanese fonts are managed in a hierarchy as shown in FIG. Highest level "Root Comp"
"osite Font" is the "Focus Font" of the next layer managed by the font.
It is managed by an array of dictionaries with the entry name "DepVector". "Root Composite F
The "FontType" entry of "ont" is 0, and the "FMTypeType" entry determines an algorithm of which font of the next hierarchy font is selected. For example, if the "FMTypeType" entry is 2, then The numerical value of the first 1 Byte of the character string to be commanded is used as the index of the array shown in the "FDepVector" entry to specify the dictionary of the next layer.

【0034】ここで、本来は、この次の階層に”Bas
e Font”がくるわけであるが、本実施形態では独
自のフォントフォーマットのフォント”Descend
erComposite Font”をもう一段はさん
でいる。なお、このフォントのFontTypeは、疑
似フォントを示す88としてある。また、この”Des
cender Composite Font”は、
(1)”Base Font”の取得のための手続き、
(2)既に”Base Font”が取得されている場
合はその辞書へのポインタ、を有しているフォントであ
る。
Here, originally, "Bas
e Font ”comes, but in the present embodiment, the font“ Descend ”of the original font format is used.
erComposite Font "is placed in between. The font type of this font is 88 indicating a pseudo font. Also, this" Des "
cender Composite Font ”
(1) Procedure for acquisition of "Base Font",
(2) A font that has a pointer to the dictionary when "Base Font" has already been acquired.

【0035】まず、最初にある日本語書体が選択された
時には、このType88のフォント”Descend
er Composite Font”までは、VM領
域上に新規に展開される。この結果、選択された書体は
フォント管理テーブル”FontDirectory”
に登録され、間接参照されることが可能となる。このよ
うにType88フォントが展開された段階で書体選択
処理は終了するが、このType88フォントが指し示
す実際の”Base Font”まではVM領域上に作
成されない。したがって、ほとんどVM領域の消費がな
い状態でフォントの展開処理が実現される。
First, when the first Japanese typeface is selected, this Type88 font "Descend" is selected.
er Composite Font "is newly expanded on the VM area. As a result, the selected typeface is the font management table" FontDirectory ".
It will be possible to be registered in the and to be indirectly referenced. Although the typeface selection process ends at the stage where the Type88 font is developed in this way, the actual "Base Font" pointed to by this Type88 font is not created in the VM area. Therefore, the font expansion processing is realized with almost no consumption of the VM area.

【0036】次いで、文字を描画するためにマッピング
アルゴリズムにしたがって”Base Font”を実
際に探す状態が生ずると、Type88フォントが選択
された段階で初めて必要となる”Base Font”
のみを、Type88フォントに登録されている上記
(1)の手続きを実行することによって作成し、或い
は、上記(2)のポインタで選択し、その”Base
Font”内で実際に文字描画処理を行う。なお、こ
の”Base Font”は、本実施形態では”Fon
tType”を87とするが、Type1をベースにし
たROM対応の独自フォーマットである。また、ROM
に対応しているためにVM領域に実際のフォントデータ
は展開されず、この点からもVM領域の消費量を減らす
ことができる。
Next, when a state actually searching for "Base Font" occurs according to a mapping algorithm for drawing a character, "Base Font" which is necessary only when the Type88 font is selected.
Only the Type88 font is created by executing the procedure of (1) above registered in the Type88 font, or is selected by the pointer of (2) above, and the "Base" is selected.
The character drawing process is actually performed in the "Font". Note that this "Base Font" is "Fon" in this embodiment.
Although “tType” is set to 87, it is an original format for ROM based on Type1.
Since actual font data is not expanded in the VM area because it corresponds to, the consumption amount of the VM area can be reduced also from this point.

【0037】このように、最初にある日本語フォントが
選択された段階ではFontType88の”Comp
osite Font”までしか生成されないので、V
M領域の消費量が抑えられるとともに展開速度も迅速に
行われ、実際に文字描画をする段階になって初めて必要
な”Base Font”のみをVM領域に展開する。
ここで、上記のような展開処理を単純に行うだけでは、
数多くの文字が描画されると次第にVM領域の消費量が
増えて行くこととなる。このような事態を回避するため
に、本実施形態では図5に示すような頻度管理を行って
いる。
As described above, at the stage when the first Japanese font is selected, FontType 88 "Comp
Since only "site font" is generated, V
The consumption amount of the M area is suppressed, and the expansion speed is swiftly performed, and only the necessary "Base Font" is expanded to the VM area only at the stage of actually drawing a character.
Here, if you simply perform the expansion process as above,
When a large number of characters are drawn, the consumption amount of the VM area will gradually increase. In order to avoid such a situation, in the present embodiment, frequency management as shown in FIG. 5 is performed.

【0038】すなわち、予め設定してあるVM領域の消
費量の上限値となった場合で、且つ、新たにType8
7の”Base Font”を作成する場合には、VM
領域に展開されている各フォントの使用頻度を管理して
いる頻度管理テーブルを参照して、Type87の”B
ase Font”の使用頻度情報から使用頻度の低い
ものを選択する。そして、その”Base Font”
を指している上位のType88のフォントを調べ、そ
のフォントに登録されているBase Fontポイン
タをクリアし、その”Base Font”が展開され
ているVM領域内の領域を再利用するために初期化す
る。このような処理によって、1つのフォントを生成す
るために1つのフォントを解放してVM領域の消費量を
抑えることができる。なお、先のType88フォント
のは”Base Font”が未展開の状態に戻る。
That is, when the preset upper limit value of the consumption amount of the VM area is reached, and a new type 8 is added.
If you want to create "Base Font" of 7,
Refer to the frequency management table that manages the usage frequency of each font deployed in the area, and refer to “B” of Type 87.
From the usage frequency information of the “Base Font”, a less frequently used one is selected.
Check the upper Type88 font pointing to, clear the Base Font pointer registered in that font, and initialize to reuse the area in the VM area in which the "Base Font" is expanded. . By such processing, it is possible to release one font to generate one font and suppress the consumption amount of the VM area. In the Type 88 font, the "Base Font" returns to the unexpanded state.

【0039】更に、本実施形態では、フォントが使用し
ている主記憶装置のVM領域の排除/展開に際して、領
域を単に解放してから再確保するのではなく、図6に示
すように、書き換え処理によって再利用する方式を用い
ている。すなわち、VM領域に展開されている前の”D
escender Composite Font”を
排除して、この領域に次の”Descender Co
mposite Font”を展開するために、前の”
Descender Composite Font”
の”Base Font Pointer”をNULL
として、次の”Descender Composit
e Font”の”Base FontPointe
r”を該当する”Base Font”に設定する。
Further, in the present embodiment, when the VM area of the main storage device used by the font is eliminated / developed, the area is not simply released and then secured again, but rewritten as shown in FIG. A method of reusing by processing is used. That is, "D" before being expanded in the VM area
The "Descender Composite Font" is eliminated, and the next "Descender Co
In order to expand "mposite Font", the previous "
Descender Composite Font ”
NULL of "Base Font Pointer"
As the next "Descender Composite
e Base's "Base FrontPointe"
r "is set to the corresponding" Base Font ".

【0040】ここで、単に”Base Font”を展
開する領域を解放して再度確保していたのでは、VM領
域が虫食い状態のように使用領域と解放領域が入り乱れ
た断片化状態が発生してしまう。VM領域のリアルタイ
ムなガベージコレクションを持ったシステムであればこ
のような問題は回避することができるが、迅速な処理を
実現するためにはリアルタイムなガベージコレクション
を実現することは困難である。本実施形態の書き換え処
理は、このようなVM領域の断片化を防ぐために行われ
る。
Here, if the area for expanding the "Base Font" is simply released and secured again, a fragmented state occurs in which the used area and the released area are mixed like the VM area is in a worm-eaten state. I will end up. Such a problem can be avoided if the system has a real-time garbage collection of the VM area, but it is difficult to realize the real-time garbage collection in order to realize a quick process. The rewriting process of this embodiment is performed in order to prevent such fragmentation of the VM area.

【0041】すなわち、図7に示すように、”Base
Font”は解放せずに、フォント辞書の中身を新規
の内容で書き換える処理を行う。この処理を実現するた
めに、全ての”Base Font”のエントリー構成
を統一化しており、再利用は対応するエントリーを書き
換えることにより行う。すなわち、図7(1)に示すよ
うに各”Base Font”間で共通するエントリー
の値は書き換えず、図7(2)に示すように各”Bas
e Font”間で異なるエントリーの値は上書きす
る。なお、エントリー構成の統一化を実現するために、
図7(3)に示すように各”Base Font”間で
異なる値となるエントリーの数が不定のものについて
は、最大数のエントリーを持った形式で全ての”Bas
e Font”を構成してある。
That is, as shown in FIG.
The Font dictionary is not released, and the contents of the font dictionary are rewritten with new contents. In order to realize this processing, the entry structure of all "Base Fonts" is unified and reuse is possible. This is done by rewriting the entry, that is, the value of the entry that is common to each "Base Font" is not rewritten as shown in Fig. 7 (1), and each "Base" is shown as shown in Fig. 7 (2).
The value of the entry that differs between e Fonts is overwritten. In order to unify the entry configuration,
As shown in FIG. 7 (3), if the number of entries having different values among the "Base Fonts" is indefinite, all "Bas Fonts" have the maximum number of entries.
e Font ”.

【0042】つまり、書換えに対応するために、書き換
え専用の辞書をあらかじめFont用のVM領域の制限
値に従って適当な数用意しておき、確保はここから行う
ようにする。日本語フォントの”Base Font”
のすべてに対応できるようにするためには、不定長のデ
ータが格納される可能性があるような場合は、その最大
値で書き換え用のフォント辞書を生成しておく。辞書の
ようにエントリーとデータの組みで表現されるようなも
のの場合は、エントリーについてもすべてのフォントで
使用されるものをあらかじめ登録する。
That is, in order to deal with rewriting, an appropriate number of rewriting dictionaries are prepared in advance according to the limit value of the VM area for Font, and the securing is performed from here. Japanese font "Base Font"
In order to be able to deal with all of the above, if there is a possibility that data of indefinite length is stored, a font dictionary for rewriting is generated with the maximum value. In the case of a dictionary that is represented by a set of entries and data, the entries used in all fonts are also registered in advance.

【0043】このような処理を行うことにより、常にフ
ォントに使用されるVM領域の容量を制限することが可
能となり、また、再利用することによる主記憶装置の領
域の断片化も発生しない。さらに、この処理による速度
的なオーバヘッドも少なく、特に、最初にある日本語フ
ォントが選択された時の展開速度は、”Base Fo
nt”を生成しないために迅速である。
By carrying out such a processing, it is possible to always limit the capacity of the VM area used for the font, and fragmentation of the area of the main storage device due to reuse does not occur. Furthermore, there is little speed overhead due to this processing, and especially when the first Japanese font is selected, the expansion speed is "Base Fo".
It is quick because it does not generate nt ".

【0044】[0044]

【発明の効果】以上説明したように、本発明によれば、
日本語フォントのように多種類のフォントについての展
開処理を高速に実行することができ、また、主記憶装置
内のフォントに使用される領域の容量を一定量以下に抑
えることが可能となり、メモリ管理が容易になる。
As described above, according to the present invention,
It is possible to perform high-speed expansion processing for various types of fonts such as Japanese fonts, and it is possible to keep the capacity of the area used for fonts in the main storage device below a certain amount. Easy to manage.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明に係るPDL処理出力装置の要部の構
成を示す図である。
FIG. 1 is a diagram showing a configuration of a main part of a PDL processing output device according to the present invention.

【図2】 本発明に係るPDL処理出力装置の処理手順
を示すフローチャートである。
FIG. 2 is a flowchart showing a processing procedure of a PDL processing output device according to the present invention.

【図3】 Font Directoryを説明する概
念図である。
FIG. 3 is a conceptual diagram illustrating a Font Directory.

【図4】 本発明に係る漢字フォントの階層構造を示す
図である。
FIG. 4 is a diagram showing a hierarchical structure of a Kanji font according to the present invention.

【図5】 本発明に係る頻度管理を説明する概念図であ
る。
FIG. 5 is a conceptual diagram illustrating frequency management according to the present invention.

【図6】 再利用処理における上位フォントの変化を示
す図である。
FIG. 6 is a diagram showing changes in a higher-level font in the reuse processing.

【図7】 本発明に係るフォントの再利用処理を説明す
る図である。
FIG. 7 is a diagram illustrating a font reuse process according to the present invention.

【図8】 従来例に係るPDL処理出力装置の構成を示
す図である。
FIG. 8 is a diagram showing a configuration of a PDL processing output device according to a conventional example.

【図9】 従来例に係るPDL処理出力装置の処理手順
を示すフローチャートである。
FIG. 9 is a flowchart showing a processing procedure of a PDL processing output device according to a conventional example.

【図10】 フォント辞書の展開を説明する概念図であ
る。
FIG. 10 is a conceptual diagram illustrating expansion of a font dictionary.

【図11】 フォント辞書の一例を示す構成図である。FIG. 11 is a configuration diagram showing an example of a font dictionary.

【図12】 従来のフォント展開処理を説明する概念図
である。
FIG. 12 is a conceptual diagram illustrating conventional font expansion processing.

【符号の説明】[Explanation of symbols]

9・・・パラメータ管理部、 10・・・VM領域(主
記憶手段)、13・・・外部記憶手段、 20・・・フ
ォント管理部、21・・・受付手段、 22・・・主記
憶管理手段、 23・・・排除手段、24・・・展開手
段、 25・・・展開制御手段、
9 ... Parameter management unit, 10 ... VM area (main storage unit), 13 ... External storage unit, 20 ... Font management unit, 21 ... Reception unit, 22 ... Main storage management Means, 23 ... Elimination means, 24 ... Deployment means, 25 ... Deployment control means,

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI G06F 12/02 520 G06F 12/02 520A 17/21 562 17/21 562P (58)調査した分野(Int.Cl.7,DB名) G09G 5/00 - 5/42 G06F 3/12 G06F 3/14 G06F 17/21 B41J 2/485 ─────────────────────────────────────────────────── ─── Continuation of front page (51) Int.Cl. 7 Identification code FI G06F 12/02 520 G06F 12/02 520A 17/21 562 17/21 562P (58) Fields investigated (Int.Cl. 7 , DB) Name) G09G 5/00-5/42 G06F 3/12 G06F 3/14 G06F 17/21 B41J 2/485

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 PDLにより記述されたPDLデータに1. PDL data described in PDL
基づいて参照される複数の文字画像のフォントを管理すManage fonts for multiple character images referenced based on
るフォント管理装置において、In the font management device 各フォントは文字画像の情報を管理する実体フォント部Each font is a substantive font part that manages character image information
分と、PDLデータと前記実体フォント部分との関連付Minutes, PDL data and the above-mentioned substantive font
けを管理する識別フォント部分とを有しており、Has an identification font part for managing 複数のフォントを保持する補助記憶手段と、Auxiliary storage means for holding a plurality of fonts, 描画処理に用いるフォントを保持する主記憶手段と、Main storage means for holding fonts used for drawing processing, フォントを登録する指示を受け付ける登録受付手段と、Registration acceptance means for accepting instructions for registering fonts, 登録受付手段が登録指示を受け付けたことに基づいて、Based on the registration acceptance means accepting the registration instruction,
フォントの識別フォント部分のみを補助記憶手段から主Font identification Mainly from the auxiliary storage means only the font part
記憶手段に展開する登録展開手段と、を備えたことを特It is characterized in that it is provided with a registration / expansion means which is expanded in the storage means.
徴とするフォント管理装置。Font management device to collect.
【請求項2】 請求項1に記載したフォント管理装置に2. The font management device according to claim 1.
おいて、Be careful さらに、既に主記憶手段に保持されたフォントが管理しIn addition, the fonts already stored in the main memory are managed by
ている文字画像情報に対しての参照指示を受け付ける参The reference instruction for the text image information
照受付手段と、A light receiving means, 参照受付手段が参照指示を受け付けたことに基づいて、Based on the reference receiving means receiving the reference instruction,
参照指示のあった文字画像情報を管理する実体フォントSubstantial font that manages character image information with reference instructions
部分を展開することによって主記憶手段に保持されるフThe file stored in the main storage means by expanding the part
ォントの総量が所定の容量を超えるか否かを検出する主Mainly detects whether the total amount of components exceeds a specified capacity
記憶管理手段と、Memory management means, 主記憶管理手段によってフォントの総量が前記容量を超The total amount of fonts exceeds the above capacity due to the main memory management means.
えることが検出されたことに基づいて、主記憶手段に保Based on the fact that the
持されている実体フォント部分の中で参照頻度が最も低The lowest reference frequency among the retained substantive font parts
い実体フォント部分から排除して領域を確保する排除手Exclude hands to secure the area by excluding from the real entity font part
段と、Dan, 排除手段による領域確保の後に、参照指示のあった実体Entities that were given a reference instruction after securing the area by means of exclusion
フォント部分を参照可能な形式として補助記憶手段からFrom the auxiliary storage means as a format that can refer to the font part
主記憶手段の前記確保した領域に展開する参照展開手段Reference expansion means for expanding in the secured area of the main storage means
と、を備えたことを特徴とするフォント管理装置。A font management device characterized by comprising:
【請求項3】 請求項2に記載したフォント管理装置に3. The font management device according to claim 2,
おいて、Be careful 各フォントの実体フォント部分の大きさを統一したことUnifying the size of the substantive font part of each font
を特徴とするフォント管理装置。Font management device characterized by.
【請求項4】 PDLにより記述されたPDLデータに4. PDL data described in PDL
基づいて参照される複Based on 数の文字画像のフォントを管理すManage the font of a number of character images
るフォント管理装置において、In the font management device 各フォントは文字画像の情報を管理する実体フォント部Each font is a substantive font part that manages character image information
分と、PDLデータと前記実体フォント部分との関連付Minutes, PDL data and the above-mentioned substantive font
けを管理する識別フォント部分とを有しており、Has an identification font part for managing 複数のフォントを保持する補助記憶手段と、Auxiliary storage means for holding a plurality of fonts, 描画処理に用いるフォントを保持する主記憶手段と、Main storage means for holding fonts used for drawing processing, 既に主記憶手段に保持されたフォントが管理している文Sentences managed by fonts already stored in main memory
字画像情報に対しての参照指示を受け付ける参照受付手Reference acceptor that accepts reference instructions for character image information
段と、Dan, 参照受付手段が参照指示を受け付けたことに基づいて、Based on the reference receiving means receiving the reference instruction,
参照指示のあった文字画像情報を管理する実体フォントSubstantial font that manages character image information with reference instructions
部分を展開することによって主記憶手段に保持されるフThe file stored in the main storage means by expanding the part
ォントの総量が所定の容量を超えるか否かを検出する主Mainly detects whether the total amount of components exceeds a specified capacity
記憶管理手段と、Memory management means, 主記憶管理手段によってフォントの総量が前記容量を超The total amount of fonts exceeds the above capacity due to the main memory management means.
えることが検出されたことに基づいて、主記憶手段に保Based on the fact that the
持されている実体フォント部分の中で参照頻度が最も低The lowest reference frequency among the retained substantive font parts
い実体フォント部分から排除して領域を確保する排除手Exclude hands to secure the area by excluding from the real entity font part
段と、Dan, 排除手段による領域確保の後に、参照指示のあった実体Entities that were given a reference instruction after securing the area by means of exclusion
フォント部分を参照可能な形式として補助記憶手段からFrom the auxiliary storage means as a format that can refer to the font part
主記憶手段の前記確保した領域に展開する参照展開手段Reference expansion means for expanding in the secured area of the main storage means
と、を備え、And さらに、各フォントの実体フォント部分の大きさを統一Furthermore, the size of the actual font part of each font is unified.
したことを特徴とするフォント管理装置。A font management device characterized by the above.
【請求項5】 請求項3又は請求項4に記載したフォン5. The phone according to claim 3 or 4.
ト管理装置において、In the management device, さらに、各フォントの実体フォント部分のエントリの構In addition, the entry structure of the substantive font part of each font is
成を統一しており、Have been unified, 前記排除手段による排除処理は既に主記憶手段に保持さThe exclusion process by the exclusion unit is already stored in the main storage unit.
れている実体フォント部分のデータ領域を上書きするこThe data area of the actual font part
とにより行い、Done by 参照展開手段が実体フォント部分を展開する際に、参照Reference when the reference expansion means expands the real font part
指示された実体フォント部分のエントリを排除する実体Entity that excludes the specified entity font entry
フォント部分の対応するエントリに対して反映させる制The control to reflect to the corresponding entry of the font part
御を行う展開制御手段を、備えたことを特徴とするフォA deployment control means for controlling
ント管理装置。Management device.
JP22454596A 1996-08-07 1996-08-07 Font management device Expired - Fee Related JP3473287B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22454596A JP3473287B2 (en) 1996-08-07 1996-08-07 Font management device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22454596A JP3473287B2 (en) 1996-08-07 1996-08-07 Font management device

Publications (2)

Publication Number Publication Date
JPH1049132A JPH1049132A (en) 1998-02-20
JP3473287B2 true JP3473287B2 (en) 2003-12-02

Family

ID=16815482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22454596A Expired - Fee Related JP3473287B2 (en) 1996-08-07 1996-08-07 Font management device

Country Status (1)

Country Link
JP (1) JP3473287B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050267737A1 (en) * 2004-05-28 2005-12-01 Lee Guan S User interface using text compression

Also Published As

Publication number Publication date
JPH1049132A (en) 1998-02-20

Similar Documents

Publication Publication Date Title
US5422992A (en) Method and system to handle state variables in a document processing language
US6662270B1 (en) System and method for caching of reusable objects
EP0804766A1 (en) Method of utilizing variable data fields with a page description language
US5483629A (en) Method and system to handle dictionaries in a document processing language
JPH09152859A (en) Printer
US5325484A (en) Method and system to handle inclusion of external files into a document processing language
JP3672608B2 (en) Font data compression / decompression device
US7155476B2 (en) Print system, printing method, and storage medium
JP2003058528A (en) Character processor, character processing method and program
US5732197A (en) Printing control apparatus
JP3473287B2 (en) Font management device
JPH06106810A (en) Method for forming image and its device
JP2004062786A (en) Font downloading device and method
JP2006347064A (en) Page drawing apparatus
JP3618828B2 (en) Information processing apparatus and information processing method
JP3406706B2 (en) State variable management method
JP2595978B2 (en) Font management device
EP0506101A1 (en) Character resource management system
JP3406705B2 (en) Dictionary operation method
EP0874305B1 (en) Integrated display list and building tool for multiple personalities
JPH06289838A (en) Font cache controller and its applying method
JPH11227269A (en) Printing controller, data processing method for the same, and storage medium storing computer-readable program
JP2002120418A (en) Printer device and image processing device comprising the printer device
JP2002007096A (en) Cache memory controller
JP2001216110A (en) Method for controlling cache, printing controller using the method, character processor, and its method

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees