JP3025739B2 - Character pattern generation device and character pattern generation method - Google Patents

Character pattern generation device and character pattern generation method

Info

Publication number
JP3025739B2
JP3025739B2 JP5354303A JP35430393A JP3025739B2 JP 3025739 B2 JP3025739 B2 JP 3025739B2 JP 5354303 A JP5354303 A JP 5354303A JP 35430393 A JP35430393 A JP 35430393A JP 3025739 B2 JP3025739 B2 JP 3025739B2
Authority
JP
Japan
Prior art keywords
pattern
stroke
cached
radical
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP5354303A
Other languages
Japanese (ja)
Other versions
JPH07195739A (en
Inventor
博之 天野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP5354303A priority Critical patent/JP3025739B2/en
Priority to US08/362,986 priority patent/US5734748A/en
Priority to EP94309752A priority patent/EP0661669B1/en
Priority to DE69426758T priority patent/DE69426758D1/en
Priority to TW083112195A priority patent/TW282526B/zh
Priority to CN94120762A priority patent/CN1102278C/en
Priority to KR1019940039768A priority patent/KR0185245B1/en
Publication of JPH07195739A publication Critical patent/JPH07195739A/en
Application granted granted Critical
Publication of JP3025739B2 publication Critical patent/JP3025739B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Dot-Matrix Printers And Others (AREA)
  • Image Generation (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、入力される文字情報を
解析して文字パターンを発生する複数の文字パターン処
理資源を有する文字パターン発生装置に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a character pattern generating apparatus having a plurality of character pattern processing resources for generating character patterns by analyzing input character information.

【0002】[0002]

【従来の技術】従来、この種の文字パターン発生装置に
おける文字パターンの生成処理は、制御点から演算で1
文字分の輪郭を求めるアウトライン生成で行われていた
が、多種類の書体を扱うようになった現在、この方法で
文字生成を行おうとすると膨大なフォントデータを保持
する必要があり、データ削減方法を考えることが急務と
なっていた。
2. Description of the Related Art Heretofore, a character pattern generating process in this type of character pattern generating apparatus has been performed by calculating one from a control point.
This method was used to generate outlines for character outlines.However, now that many types of fonts are being used, a large amount of font data must be retained when attempting to generate characters using this method. It was urgent to think about.

【0003】そこで、ストロークまたは部首単位でデー
タを持ち、これを合成させて文字を生成させるストロー
ク合成方法が生まれてきた。多種類の文字に、同一のス
トロークまたは部首を流用できるので、以前の方法に比
べ、データ量が削減できるように構成されている。
Therefore, a stroke combining method has been developed in which data is stored in units of strokes or radicals, and these are combined to generate characters. Since the same stroke or radical can be used for many types of characters, the data amount is reduced as compared with the previous method.

【0004】従来、ハードを用いたアウトラインフォン
トパターン展開では、その都度、フォントデータ,ヒン
ティング手段,補間手段,塗りつぶし手段等を装置に予
め定められた方法に合わせるか、予め用意されたフォン
トデータ,ヒンティング手段,補間手段,塗りつぶし手
段等に合わせて装置が設計されていた。
Conventionally, in outline font pattern development using hardware, font data, hinting means, interpolation means, filling means, etc., are adjusted in accordance with a method predetermined for the apparatus or font data prepared in advance. The apparatus has been designed according to hinting means, interpolation means, filling means and the like.

【0005】[0005]

【発明が解決しようとする課題】しかし、長い文章を作
成するときなどは、同じストロークや部首のデータを違
う文字ごとに呼び出しパターンを発生させなくてはいけ
ないといった、同一作業の反復現象が起こった。
However, when a long sentence is created, a repetition phenomenon of the same work may occur such that a call pattern must be generated for the same stroke or radical data for each different character. Was.

【0006】また、予め用意されたフォントデータ,ヒ
ンティング手段,補間手段,塗りつぶし手段等に合わせ
た装置を作成する必要があったため、多大な労力と、価
格の上昇を招くという問題点があった。
Further, since it is necessary to create a device corresponding to font data, hinting means, interpolation means, filling means and the like prepared in advance, there is a problem that a great deal of labor and a rise in price are caused. .

【0007】本発明は、ストロークデータに基づきスト
ロークパターンを発生させ、ストロークパターンに基づ
き部首パターンを発生させ、部首パターンに基づき文字
パターンを発生させる文字パターン発生装置および文字
パターン発生方法に関するものである。
The present invention relates to a character pattern generating apparatus and a character pattern generating method for generating a stroke pattern based on stroke data, generating a radical pattern based on the stroke pattern, and generating a character pattern based on the radical pattern. is there.

【0008】本発明は、上記の問題点を解決するために
なされたもので、発生対象文字パターンがキャッシュさ
れていないと判別され、かつ、対象とする部首パターン
がキャッシュされていないと判別され、さらに、対象と
するストロークパターンがキャッシュされていないと判
別された場合に、対象とするストロークパターンに対応
するストロークデータに基づきストロークパターンを発
生させ、対象とするストロークパターンがキャッシュさ
れていると判別された場合、キャッシュされているスト
ロークパターンに基づき部首パターンを発生させ、対象
とする部首パターンがキャッシュされていると判別され
た場合、キャッシュされている部首パターンに基づき文
字パターンを発生させることにより、文字,部首,スト
ロークの順にすでにキャッシュされている各パターン資
源を活用して、要求される文字パターンを短時間に効率
よく生成できる文字パターン発生装置および文字パター
ン発生方法を提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and it is determined that a character pattern to be generated is not cached and that a radical pattern to be generated is not cached. Further, when it is determined that the target stroke pattern is not cached, a stroke pattern is generated based on the stroke data corresponding to the target stroke pattern, and it is determined that the target stroke pattern is cached. If so, a radical pattern is generated based on the cached stroke pattern, and if it is determined that the target radical pattern is cached, a character pattern is generated based on the cached radical pattern. By doing so, the letters, radicals, and strokes By utilizing each pattern resource that is cached, and to provide the required character pattern generator can be efficiently generate a character pattern in a short time is and character pattern generation method.

【0009】[0009]

【課題を解決するための手段】本発明に係る第1の発明
は、ストロークデータに基づきストロークパターンを発
生させ、ストロークパターンに基づき部首パターンを発
生させ、部首パターンに基づき文字パターンを発生させ
る文字パターン発生装置であって、発生対象文字パター
ンがキャッシュされているか否かを判別する第1判別手
段と、前記第1判別手段により発生対象文字パターンが
キャッシュされていないと判別された場合、発生対象文
字パターンを構成する部首パターンの中の対象とする部
首パターンがキャッシュされているか否かを判別する第
2判別手段と、前記第2判別手段により対象とする部首
パターンがキャッシュされていないと判別された場合、
対象とする部首パターンを構成するストロークパターン
の中の対象とするストロークパターンがキャッシュされ
ているか否かを判別する第3判別手段と、前記第3判別
手段により対象とするストロークパターンがキャッシュ
されていないと判別された場合、対象とするストローク
パターンに対応するストロークデータに基づきストロー
クパターンを発生させ、前記第3判別手段により対象と
するストロークパターンがキャッシュされていると判別
された場合、キャッシュされているストロークパターン
に基づき部首パターンを発生させ、前記第2判別手段に
より対象とする部首パターンがキャッシュされていると
判別された場合、キャッシュされている部首パターンに
基づき文字パターンを発生させる発生手段とを有するも
のである。
According to a first aspect of the present invention, a stroke pattern is generated based on stroke data, a radical pattern is generated based on the stroke pattern, and a character pattern is generated based on the radical pattern. A character pattern generating device for determining whether or not a character pattern to be generated is cached; and determining whether the character pattern to be generated is not cached by the first determining means. A second determining means for determining whether or not the target radical pattern in the radical pattern constituting the target character pattern is cached; and the target radical pattern is cached by the second determining means. If it is determined that there is no
A third determining unit that determines whether or not the target stroke pattern among the stroke patterns configuring the target radical pattern is cached; and the target stroke pattern is cached by the third determining unit. If it is determined that the target stroke pattern is not cached, the stroke pattern is generated based on the stroke data corresponding to the target stroke pattern. A radical pattern is generated based on the stroke pattern in question, and a character pattern is generated based on the cached radical pattern when the target radical pattern is determined to be cached by the second determining means. Means.

【0010】本発明に係る第2の発明は、前記発生手段
により発生させたストロークパターン,部首パターンま
たは、文字パターンがキャッシュバッファにキャッシュ
できるか否かを判定し、キャッシュできないと判定され
た場合、キャッシュされているデータよりも優先度が高
いか否かを判定し、優先度が低いと判定された場合、キ
ャッシュしないものである。
A second invention according to the present invention is to determine whether or not a stroke pattern, a radical pattern, or a character pattern generated by the generating means can be cached in a cache buffer, and to determine if the cache pattern cannot be cached. It is determined whether or not the priority is higher than the cached data. If the priority is determined to be lower, the data is not cached.

【0011】本発明に係る第3の発明は、前記ストロー
クパターンまたは部首パターンは、発生させたストロー
クパターンまたは部首パターンをオフセット分シフトす
る前にキャッシュされるものである。本発明に係る第4
の発明は、前記ストロークパターンまたは部首パターン
は、発生させたストロークパターンまたは部首パターン
をオフセット分シフトした後にキャッシュされるもので
ある。本発明に係る第5の発明は、ストロークデータに
基づきストロークパターンを発生させ、ストロークパタ
ーンに基づき部首パターンを発生させ、部首パターンに
基づき文字パターンを発生させる文字パターン発生方法
であって、発生対象文字パターンがキャッシュされてい
るか否かを判別する第1判別ステップと、前記第1判別
ステップにより発生対象文字パターンがキャッシュされ
ていないと判別された場合、発生対象文字パターンを構
成する部首パターンの中の対象とする部首パターンがキ
ャッシュされているか否かを判別する第2判別ステップ
と、第2判別ステップにより対象とする部首パターンが
キャッシュされていないと判別された場合、対象とする
部首パターンを構成するストロークパターンの中の対象
とするストロークパターンがキャッシュされているか否
かを判別する第3判別ステップと、前記第3判別ステッ
プにより対象とするストロークパターンがキャッシュさ
れていないと判別された場合、対象とするストロークパ
ターンに対応するストロークデータに基づきストローク
パターンを発生させ、前記第3判別ステップにより対象
とするストロークパターンがキャッシュされていると判
別された場合、キャッシュされているストロークパター
ンに基づき部首パターンを発生させ、前記第2判別ステ
ップにより対象とする部首パターンがキャッシュされて
いると判別した場合、キャッシュされている部首パター
ンに基づき文字パターンを発生させる発生ステップとを
有するものである。本発明に係る第6の発明は、前記発
生ステップにより発生させたストロークパターン、部首
パターン、または、文字パターンがキャッシュバッファ
にキャッシュできるか否かを判定し、キャッシュできな
いと判定された場合、キャッシュされているデータより
も優先度が高いか否かを判定し、優先度が低いと判定さ
れた場合、キャッシュしないものである。本発明に係る
第7の発明は、前記ストロークパターンまたは部首パタ
ーンは、発生させたストロークパターンまたは部首パタ
ーンをオフセット分シフトする前にキャッシュされるも
のである。本発明に係る第8の発明は、前記ストローク
パターンまたは部首パターンは、発生させたストローク
パターンまたは部首パターンをオフセット分シフトした
後にキャッシュされるものである。
According to a third aspect of the present invention, the stroke pattern or radical pattern is cached before the generated stroke pattern or radical pattern is shifted by an offset. Fourth aspect of the present invention
According to the invention, the stroke pattern or radical pattern is cached after the generated stroke pattern or radical pattern is shifted by an offset. A fifth invention according to the present invention is a character pattern generating method for generating a stroke pattern based on stroke data, generating a radical pattern based on the stroke pattern, and generating a character pattern based on the radical pattern. A first determining step of determining whether or not the target character pattern is cached; and a radical pattern constituting the generated target character pattern when the first determining step determines that the target character pattern is not cached. And a second determination step of determining whether or not the target radical pattern is cached, and determining that the target radical pattern is not cached by the second determination step. Stroke pattern to be targeted in the stroke pattern that constitutes the radical pattern A third determining step of determining whether or not the target stroke pattern is cached; and determining that the target stroke pattern is not cached by the third determining step based on the stroke data corresponding to the target stroke pattern. When a stroke pattern is generated and it is determined in the third determination step that the target stroke pattern is cached, a radical pattern is generated based on the cached stroke pattern, and the target is determined in the second determination step. And generating a character pattern based on the cached radical pattern when it is determined that the radical pattern is cached. A sixth invention according to the present invention is a method for determining whether or not a stroke pattern, a radical pattern, or a character pattern generated in the generating step can be cached in a cache buffer. It is determined whether or not the priority is higher than the stored data. If it is determined that the priority is lower, the data is not cached. According to a seventh aspect of the present invention, the stroke pattern or radical pattern is cached before shifting the generated stroke pattern or radical pattern by an offset. In an eighth aspect according to the present invention, the stroke pattern or radical pattern is cached after shifting the generated stroke pattern or radical pattern by an offset.

【0012】[0012]

【0013】[0013]

【0014】[0014]

【0015】[0015]

【実施例】【Example】

〔第1実施例〕図1は本発明の第1実施例を示す文字パ
ターン発生装置の構成を説明するブロック図であり、本
実施例の文字パターン発生装置は、日本語ワードプロセ
ッサ,ワークステーション,コンピュータシステム等に
適用可能に構成されている。
[First Embodiment] FIG. 1 is a block diagram for explaining the arrangement of a character pattern generator according to a first embodiment of the present invention. The character pattern generator of this embodiment comprises a Japanese word processor, a workstation, and a computer. It is configured to be applicable to systems and the like.

【0016】図において、1は中央処理装置(CPU)
であり、本装置全体の制御および演算処理を行う。2は
ランダムアクセスメモリ(RAM)であり、要用な処理
毎にそれぞれのプログラムおよびデータがロードされ、
実行される領域である。3は読出し専用メモリ(RO
M)であり、システム制御プログラムや、フォントデー
タなどの記憶領域である。
In FIG. 1, reference numeral 1 denotes a central processing unit (CPU).
And performs control and arithmetic processing of the entire apparatus. Reference numeral 2 denotes a random access memory (RAM) in which respective programs and data are loaded for each necessary process.
This is the area to be executed. 3 is a read-only memory (RO
M), and is a storage area for a system control program, font data, and the like.

【0017】4はキーボード制御部(KBC)で、キー
ボード(KB)5から入力されるキー入力データをCP
U1へ伝達する。6はプリンタ制御部(PRTC)で、
プリンタ装置(PRT)7を制御する。なお、プリンタ
装置7は、レーザビームプリンタ,バブルジェットプリ
ンタ等のドットプリンタで構成される。8はディスプレ
イ制御部(CRTC)で、ディスプレイ装置(CRT)
9に対するデータ表示を制御する。
Reference numeral 4 denotes a keyboard control unit (KBC) which converts key input data input from a keyboard (KB) 5 into a CP.
Transmit to U1. 6 is a printer control unit (PRTC),
The printer device (PRT) 7 is controlled. The printer device 7 is configured by a dot printer such as a laser beam printer and a bubble jet printer. Reference numeral 8 denotes a display control unit (CRTC), and a display device (CRT)
9 is controlled.

【0018】ディスク制御部(DKC)10は、データ
伝送などの制御を行うものである。11はフロッピーデ
ィスク装置(FD)あるいはハードディスク装置(H
D)などの外部記憶装置であり、プログラムおよびデー
タを記憶させておき、実行時必要に応じて参照またはR
AM2へロードする。12はシステムバスであり、上述
の構成要素間におけるデータ転送の通路となるべきもの
である。
The disk controller (DKC) 10 controls data transmission and the like. 11 is a floppy disk drive (FD) or a hard disk drive (H
D) or other external storage device, in which programs and data are stored and referred to or R
Load to AM2. Reference numeral 12 denotes a system bus, which should serve as a path for data transfer between the above-described components.

【0019】この様に構成された文字パターン発生装置
において、キャッシュ手段(CPU1)が発生されたス
トローク,部首,パターンを記憶装置(RAM2)に個
別にキャッシュ(詳細は図2に示すフローチャートにの
手順に従う)し、該キャッシュしたストロークデータ,
部首,パターンを合成して文字パターンを発生して、使
用頻度の高いストローク,部首,パターンの発生頻度を
格段に下げて、効率よく文字パターンを発生させるもの
である。
In the character pattern generator constructed as described above, the generated strokes, radicals and patterns are individually cached in the storage device (RAM2) by the cache means (CPU1) (for details, see the flowchart shown in FIG. 2). Follow the procedure), and the cached stroke data,
A character pattern is generated by synthesizing a radical and a pattern, and the frequency of occurrence of frequently used strokes, radicals and patterns is significantly reduced, and a character pattern is generated efficiently.

【0020】図2は本発明の第1実施例を示す文字パタ
ーン発生装置における第1の文字パターン発生処理手順
を説明するフローチャートである。なお、(1)〜(2
7)は各ステップを示す。
FIG. 2 is a flowchart for explaining a first character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention. Note that (1) and (2)
7) shows each step.

【0021】ステップ(1)では取り込んだ展開対象文
字のデータが、すでに文字としてキャッシュされている
かどうかをキャッシュフラグを確認することにより調べ
る。ここでキャッシュフラグが「0」でなければすでに
キャッシュされているものと認識し、ステップ(2)に
移り、キャッシュバッファから対象文字のビットマップ
データを取り込みステップ(27)へ進む。
In step (1), it is checked by checking the cache flag whether or not the data of the fetched expansion target character has already been cached as a character. Here, if the cache flag is not "0", it is recognized that it is already cached, the process proceeds to step (2), and the bitmap data of the target character is fetched from the cache buffer and the process proceeds to step (27).

【0022】ステップ(1)において、キャッシュフラ
グが「0」ならば、まだキャッシュされていないものと
認識し、ステップ(3)に移り、文字を構成している部
首の数とその種類のデータを取り込む。
In step (1), if the cache flag is "0", it is recognized that the cache has not been cached yet, and the process proceeds to step (3), where the number of radicals constituting the character and the data of the type are described. Take in.

【0023】次にステップ(4)へ移り、それら部首の
内、対象とする部首のデータがすでにキャッシュされて
いるかどうかをキャッシュフラグを確認することにより
調べる。このとき、文字を構成する部首の中から対象と
する部首を選ぶ順序は、今回は筆順に準ずることとする
が、特に筆順に準じなければならないわけではない。
Next, the process proceeds to step (4), where it is checked whether or not the data of the target radical has already been cached by checking the cache flag. At this time, the order in which the target radical is selected from the radicals constituting the character is based on the stroke order, but it is not necessary to follow the stroke order.

【0024】ここでキャッシュフラグが「0」でなけれ
ば、すでにキャッシュされているものと認識し、ステッ
プ(5)へ移り、キャッシュバッファから対象部首のビ
ットマップデータを取り込み、ステップ(23)に進
む。
If the cache flag is not "0", it is recognized that the cache has already been cached, and the process proceeds to step (5), where the bitmap data of the target radical is fetched from the cache buffer, and the process proceeds to step (23). move on.

【0025】ステップ(4)において、キャッシュフラ
グが「0」ならば、まだキャッシュされていないものと
認識し、ステップ(6)へ移り対象部首を構成するスト
ローク数とその種類のデータを取り込む。
In step (4), if the cache flag is "0", it is recognized that the cache has not been cached yet, and the process proceeds to step (6) to fetch the number of strokes constituting the target radical and the data of the type.

【0026】次にステップ(7)へ移り、対象ストロー
クのデータがすでにキャッシュされているものかどうか
をキャッシュフラグを確認することにより調べる。この
とき部首を構成するストロークの中から対象とするスト
ロークを選ぶ順序は、今回は筆順に準ずることとする
が、特に筆順に準じなけらばならないわけではない。
Next, the process proceeds to step (7) to check whether the data of the target stroke is already cached by checking the cache flag. At this time, the order of selecting the target stroke from the strokes constituting the radical is based on the stroke order in this case, but it is not necessary to follow the stroke order.

【0027】ここでキャッシュフラグが「0」でなけれ
ばすでにキャッシュされているものと認識し、ステップ
(8)へ移り、キャッシュバッファから対象ストローク
のビットマップデータを取り込みステップ(19)へ進
む。
Here, if the cache flag is not "0", it is recognized that the cache has already been cached, and the process proceeds to step (8), where the bit map data of the target stroke is fetched from the cache buffer, and the process proceeds to step (19).

【0028】ステップ(7)において、キャッシュフラ
グが「0」ならばまだキャッシュされていないものと認
識し、ステップ(9)へ移り、対象ストロークのデータ
を取り込む。次にステップ(10)へ移り、取り込んだ
座標データに、拡大縮小に伴う座標転換を行う。
In step (7), if the cache flag is "0", it is recognized that the cache has not been cached yet, and the process proceeds to step (9) to fetch the data of the target stroke. Next, the process proceeds to step (10), in which the acquired coordinate data is subjected to coordinate conversion accompanying enlargement / reduction.

【0029】座標データは「芯線」+「太さ」による情
報なので、ステップ(11)で、図3に示すように輪郭
情報へ変換する。
Since the coordinate data is information based on "core line" + "thickness", in step (11), it is converted into contour information as shown in FIG.

【0030】次いで、ステップ(12)で直線データか
どうかを判別し、直線データでないならば曲線データと
認識し、ステップ(13)で所定の曲線補間方式による
補間を行い、ステップ(14)で打点を行う。
Next, it is determined in step (12) whether or not the data is straight line data. If the data is not straight line data, it is recognized as curve data. In step (13), interpolation is performed by a predetermined curve interpolation method. I do.

【0031】一方、ステップ(12)で直線データであ
ると判定された場合は、そのままステップ(15)で打
点を行う。こうしてステップ(16)では、対象ストロ
ークのデータが1輪郭分すべて打点し終ったかどうか調
べ、まだ終わっていなければステップ(12)へ戻り、
終っていればステップ(17)へ移り、このストローク
がキャッシュ条件を満たしているかどうかを判定する。
該判定処理については後述する図4及び図5に基づいて
説明する。
On the other hand, if it is determined in step (12) that the data is straight line data, the hit point is directly performed in step (15). In this way, in step (16), it is checked whether or not the data of the target stroke has been completely hit by one contour. If not, the process returns to step (12).
If it has been completed, the process proceeds to step (17), and it is determined whether or not this stroke satisfies the cache condition.
The determination process will be described with reference to FIGS. 4 and 5 described later.

【0032】ステップ(17)でキャッシュ条件を満た
していると判定されると、ステップ(18)へ移りキャ
ッシュが行われる。次にステップ(19)へ移り、こう
して生成された対象ストロークの輪郭座標データ、また
はステップ(8)で取り込んだ輪郭座標データを、対象
とする部首中での展開位置へ変移する。
If it is determined in step (17) that the cache condition is satisfied, the process proceeds to step (18) where caching is performed. Next, the process proceeds to step (19), in which the contour coordinate data of the target stroke generated in this manner or the contour coordinate data fetched in step (8) is shifted to the development position in the target radical.

【0033】次にステップ(20)へ移り、部首を構成
する全ストロークの打点が終了されたかどうかを調べ
る。もしまだ終了されていなければ、ステップ(7)へ
戻り、次の対象ストロークについて同様の作業をする。
Then, the process proceeds to a step (20) to check whether or not the hit points of all the strokes constituting the radical have been completed. If not, the process returns to step (7) and the same operation is performed for the next target stroke.

【0034】対象とする部首の打点が終了していれば、
ステップ(17)と同様に、ステップ(21)でこの部
首がキャッシュ条件を満たしているかどうかを判定す
る。キャッシュ条件を満たしていれば、ステップ(2
2)へ移りキャッシュを行う。
If the hit point of the target radical has been completed,
As in step (17), it is determined in step (21) whether this radical satisfies the cache condition. If the cache condition is satisfied, step (2)
Go to 2) and cache.

【0035】次にステップ(23)へ移り、こうして生
成された対象部首の輪郭座標データまたはステップ
(5)で取り込んだ輪郭座標データを対象とする文字中
での展開位置へ変移する。次にステップ(24)で、文
字を構成する全部首の打点が終了されたかどうかを調べ
る。もしまだ終了されていなければ、ステップ(4)へ
戻り、次の対象部首について同様の作業をする。
Next, the process proceeds to step (23), in which the contour coordinate data of the target radical generated in this way or the contour coordinate data fetched in step (5) is shifted to the development position in the target character. Next, in step (24), it is checked whether or not the hit points of all the necks constituting the character have been completed. If not, the process returns to step (4) and the same operation is performed for the next target radical.

【0036】一方、ステップ(24)の判定で全部首の
打点が終了していれば、ステップ(17),(21)と
同様に、ステップ(25)でこの文字がキャッシュ条件
を満たしているかどうかを判定する。
On the other hand, if it is determined in step (24) that the hit points of all the necks have been completed, whether or not the character satisfies the cache condition is determined in step (25) as in steps (17) and (21). Is determined.

【0037】該判定でキャッシュ条件を満たしていれば
ステップ(26)へ移りキャッシュを行う。こうしてで
きた1文字分のビットマップまたは、ステップ(2)で
取り込んだ輪郭座標データをステップ(27)で塗りつ
ぶし、文字パターン生成が完了する。
If the cache condition is satisfied, the process proceeds to step (26) to perform caching. In step (27), the bit map for one character or the contour coordinate data obtained in step (2) is painted out in step (27), and the character pattern generation is completed.

【0038】以下、図4,図5を参照しながら、図2に
示したステップ(17)におけるキャッシュ条件の判定
処理について説明する。
Hereinafter, the cache condition determination process in step (17) shown in FIG. 2 will be described with reference to FIGS.

【0039】図4は、図2に示した文字パターン発生処
理におけるキャッシュ条件の判定処理手順の一例を示す
フローチャートである。なお、(1),(2)はステッ
プを示す。図5は、図1に示したRAM2上のキャッシ
ュバッファの状態を示す図であり、(a)は文字キャッ
シュバッファの状態を示し、(b)は部首キャッシュバ
ッファの状態を示す。
FIG. 4 is a flowchart showing an example of a cache condition determination process in the character pattern generation process shown in FIG. Note that (1) and (2) indicate steps. FIGS. 5A and 5B are diagrams showing the state of the cache buffer on the RAM 2 shown in FIG. 1. FIG. 5A shows the state of the character cache buffer, and FIG. 5B shows the state of the radical cache buffer.

【0040】ステップ(1)で、キャッシュした文字ま
たは部首またはストロークを格納しておくバッファが既
にデータで一杯になっているかどうかを調べる。
In step (1), a check is made to see if the buffer storing the cached characters or radicals or strokes is already full of data.

【0041】既に一杯の場合はステップ(2)で、この
キャッシュバッファ内に格納されているデータの優先順
位と対象となっている文字または部首またはストローク
の優先順位とを比べどちらが優先順位が高いかを調べ
る。
If the cache is already full, step (2) compares the priority of the data stored in the cache buffer with the priority of the character, radical or stroke to be processed, which has the higher priority. Find out what.

【0042】もし対象とするものより優先順位が低いも
ののデータが、キャッシュバッファ内に格納されていな
ければ、対象とする文字または部首またはストロークは
キャッシュされない。
If data of a lower priority than the target is not stored in the cache buffer, the target character or radical or stroke is not cached.

【0043】しかし、キャッシュバッファ内に対象とす
るものより優先順位が低いものが1つ以上あれば、その
中でもっとも優先順位の低いものをキャッシュバッファ
から削除し、対象としている文字または部首またはスト
ロークをキャッシュバッファに格納する。
However, if there is one or more items in the cache buffer that have a lower priority than the target character, the one with the lowest priority is deleted from the cache buffer and the target character or radical or Store the stroke in the cache buffer.

【0044】これにより、図5の(a)に示す文字キャ
ッシュバッファの状態では、対象文字「打」,優先順位
「25」の文字が処理される際に、ステップ(17)
で、図4に示すステップ(2)の判定で、該文字よりも
優先順位の低い文字「訳」,優先順位「34」の文字が
削除され、対象文字「打」,優先順位「25」の文字が
優先順位順に登録されることによなる。
Thus, in the state of the character cache buffer shown in FIG. 5A, when the character having the target character "stroke" and the priority "25" is processed, step (17) is performed.
In the determination of step (2) shown in FIG. 4, the character having the lower priority than the character "translation" and the character having the priority "34" are deleted, and the target character "stroke" and the character having the priority "25" are deleted. Characters are registered in order of priority.

【0045】同様に、図5の(b)に示す文字キャッシ
ュバッファの状態では、対象部首B1,優先順位「5」
の部首が処理される際に、ステップ(17)で、図4に
示すステップ(2)の判定で、該部首よりも優先順位の
低い部首B2,優先順位「23」の部首が削除され、対
象部首B1,優先順位「5」の部首が優先順位順に登録
されることによなる。
Similarly, in the state of the character cache buffer shown in FIG. 5B, the subject radical B1 and the priority "5"
When the radical is processed, in the step (17), in the determination of the step (2) shown in FIG. 4, the radical B2 having a lower priority than the radical and the radical having the priority "23" are determined. The deleted radical B1 and the radical having the priority "5" are registered in the priority order.

【0046】なお、上記の実施例では、ストロークおよ
び部首の輪郭データをキャッシュしていたが本実施例で
は輪郭データだけではなく、上記実施例では展開時に加
算していたオフセット値も含めてキャッシュを行う。
In the above embodiment, the outline data of the stroke and the radical are cached. However, in the present embodiment, not only the outline data but also the offset value added at the time of development in the above embodiment is cached. I do.

【0047】つまり、ストロークならば、その部首のど
の位置に展開されるか、部首ならば、その文字のどの位
置に展開されるかという位置情報を含めてキャッシュを
行うように制御すれば、上記実施例のように、キャッシ
ュデータを展開後、オフセット分シフトする処理が不用
となり、文字パターン発生処理を高速化できる。以下、
図6に示すフローチャートに従って詳述する。
That is, if the stroke is controlled so as to be expanded to which position of the radical, and if the radical, the position of the character is expanded to include the position information, the cache is controlled so as to be cached. As in the above-described embodiment, the process of shifting the cache data by the offset after expanding the cache data becomes unnecessary, and the speed of the character pattern generation process can be increased. Less than,
This will be described in detail according to the flowchart shown in FIG.

【0048】図6は本発明の第1実施例を示す文字パタ
ーン発生装置における第2の文字パターン発生処理手段
を説明するフローチャートである。なお、(1)〜(2
7)は各ステップを示す。
FIG. 6 is a flowchart for explaining the second character pattern generation processing means in the character pattern generation device according to the first embodiment of the present invention. Note that (1) and (2)
7) shows each step.

【0049】なお、ステップ(1)〜ステップ(16)
までは上記実施例を示した図2のステップ(16)まで
と同じであるので説明は省略する。
Steps (1) to (16)
The steps up to this are the same as the steps up to step (16) in FIG.

【0050】つまり、文字がキャッシュされているかど
うかを調べ、キャッシュされていればそのデータを使
い、キャッシュされていなければ、その文字を構成する
部首についてキャッシュされているかどうかを調べる。
That is, it is determined whether or not the character is cached. If the character is cached, the data is used. If not, it is determined whether or not the radical constituting the character is cached.

【0051】文字を構成している部首がキャッシュされ
ているものならば、そのデータを使い、キャッシュされ
ていなければ、その部首を構成しているストロークにつ
いてキャッシュされているかを調べ、キャッシュされて
いればそのデータを使い、キャッシュされていなければ
そのストロークのデータを取り込み、輪郭データを発生
させる。
If the radical constituting the character is cached, the data is used. If not, it is checked whether or not the stroke constituting the radical is cached. If so, the data is used, and if not cached, the data of the stroke is fetched to generate contour data.

【0052】ステップ(17)でこのようにして生成し
たストロークの輪郭データに、対象とする部首における
そのストロークの展開位置への変位量を加算している。
ステップ(18)では上記実施例と同様にキャッシュす
るかどうかを判定し、キャッシュを行う場合はステップ
(19)でキャッシュを行う。
In step (17), the amount of displacement of the target radical to the expanded position of the stroke is added to the contour data of the stroke generated in this manner.
In step (18), it is determined whether or not caching is performed in the same manner as in the above embodiment. When caching is performed, caching is performed in step (19).

【0053】こうしてステップ(20)で1部首が生成
されたと判断されると、そのデータに、ステップ(2
1)でその部首が対象文字中で展開される位置への変位
量を加算する。次にステップ(22)でキャッシュする
かどうかを判定し、キャッシュを行う場合はステップ
(23)へ移りキャッシュを行う。以下ステップ(2
4)以降の処理は、上記実施例のステップ(24)以降
と同様である。
If it is determined in step (20) that one radical has been generated, the data is added to step (2).
In 1), the amount of displacement to the position where the radical is expanded in the target character is added. Next, in step (22), it is determined whether or not to cache. The following steps (2
The processing after 4) is the same as the processing after step (24) in the above embodiment.

【0054】上記実施例では、キャッシュを図1に示し
たRAM2に確保する実施例について説明したが、本実
施例では後述する第7のフローチャートに示すようにハ
ードディスクに確保して処理するように構成してもよ
い。
In the above embodiment, the embodiment in which the cache is secured in the RAM 2 shown in FIG. 1 has been described. However, in this embodiment, the cache is secured and processed as shown in a seventh flowchart described later. May be.

【0055】図7は本発明の第1実施例を示す文字パタ
ーン発生装置における第3の文字パターン発生処理手段
を説明するフローチャートである。なお、(1)〜(2
7)は各ステップを示す。
FIG. 7 is a flow chart for explaining the third character pattern generation processing means in the character pattern generation device according to the first embodiment of the present invention. Note that (1) and (2)
7) shows each step.

【0056】ステップ(1)では展開対象文字のデータ
を取り込みそのとき、すでに文字としてキャッシュされ
ているものかどうかをキャッシュフラグを確認すること
により調べる。ここでキャッシュフラグが「0」でなけ
ればステップ(2)に移り、図1に示した外部記憶装置
11のキャッシュバッファからビットマップデータを取
り込みステップ(27)へ進み、対象文字の生成処理は
終る。
In step (1), the data of the character to be expanded is fetched, and at that time, it is checked by checking the cache flag whether the character is already cached as a character. Here, if the cache flag is not "0", the process proceeds to step (2), the bitmap data is fetched from the cache buffer of the external storage device 11 shown in FIG. 1 and the process proceeds to step (27), and the process of generating the target character ends. .

【0057】一方、ステップ(1)でキャッシュフラグ
が「0」と判定されたならば、ステップ(3)に移り、
文字を構成している部首の数とその種類のデータを取り
込む。
On the other hand, if it is determined in step (1) that the cache flag is "0", the flow proceeds to step (3).
Captures the number of radicals that make up the character and its type data.

【0058】次にステップ(4)へ移り、対象部首のデ
ータがすでにキャッシュされているものかどうかをキャ
ッシュフラグを確認することにより調べる。このとき対
象部首の順序は、今回は筆順に準ずることとするが、特
に筆順に準ずる必要はない。ここで、キャッシュフラグ
が「0」でなければステップ(5)へ移り、図1に示し
た外部記憶装置11のキャッシュバッファからビットマ
ップデータを取り込みステップ(24)へ進む。
Next, the process proceeds to step (4) to check whether or not the data of the target radical has already been cached by checking the cache flag. At this time, the order of the target radicals is based on the stroke order, but it is not necessary to follow the stroke order. Here, if the cache flag is not "0", the process proceeds to step (5), where the bitmap data is fetched from the cache buffer of the external storage device 11 shown in FIG. 1 and the process proceeds to step (24).

【0059】ステップ(4)において、キャッシュフラ
グが「0」ならば、ステップ(6)へ移り対象部首を構
成するストローク数とその種類のデータを取り込む。次
にステップ(7)へ移り、対象ストロークのデータがす
でにキャッシュされているものかどうかをキャッシュフ
ラグを確認することにより調べる。
In step (4), if the cache flag is "0", the process proceeds to step (6) to fetch the number of strokes constituting the target radical and data of the type. Next, the process proceeds to step (7) to check whether the data of the target stroke is already cached by checking the cache flag.

【0060】このとき対象ストロークの順序は、今回は
筆順に準ずることとするが、特に筆順に準ずる必要はな
い。
At this time, the order of the target strokes follows the stroke order this time, but it is not necessary to follow the stroke order.

【0061】ここで、キャッシュフラグが「0」でなけ
ればステップ(8へ移り、図1に示した外部記憶装置1
1のキャッシュバッファからビットマップデータを取り
込みステップ(20)へ進む。ステップ(7)におい
て、キャッシュフラグが「0」ならば、ステップ(9)
へ移り対象ストロークのデータを取り込む。
Here, if the cache flag is not "0", the process proceeds to step (8) where the external storage device 1 shown in FIG.
The bitmap data is fetched from one cache buffer, and the process proceeds to step (20). If the cache flag is "0" in step (7), step (9)
Move to the target stroke data.

【0062】次に、ステップ(10)へ移り取り込んだ
座標データに、拡大縮小に伴う座標転換を行う。
Next, the process proceeds to step (10), where the coordinate data taken in with the enlargement / reduction is converted.

【0063】座標データは芯線+太さによる情報なの
で、図3に示したようにステップ(11)で輪郭情報へ
変換する。ステップ(12)で直線データかどうかを判
定し直線データでないならば曲線データと確認し、ステ
ップ(13)で所定の曲線補間方式による補間を行いス
テップ(14)で打点を行う。
Since the coordinate data is information based on the core line + thickness, it is converted into outline information in step (11) as shown in FIG. In step (12), it is determined whether or not the data is straight line data. If the data is not straight line data, the data is confirmed as curve data. In step (13), interpolation is performed by a predetermined curve interpolation method, and a dot is formed in step (14).

【0064】一方、ステップ(12)で直線データだっ
た場合は、そのままステップ(15)で打点を行う。こ
うしてステップ(16)では対象ストロークのデータが
1輪郭分すべて打点し終ったかどうか調べ、まだ終って
いなければステップ(12)へ戻り、終っていればステ
ップ(17)へ移り対象ストロークの塗りつぶしを行
う。
On the other hand, if the data is straight line data in step (12), hitting is performed in step (15). In this way, in step (16), it is checked whether or not the data of the target stroke has been hit by one contour. If not, the process returns to step (12). If completed, the process goes to step (17) to paint the target stroke. .

【0065】次にステップ(18)へ移りこのストロー
クがキャッシュ条件を満たしているかどうかを上述した
ように判定する。
Next, the process proceeds to step (18), and it is determined whether or not this stroke satisfies the cache condition as described above.

【0066】図4に示した、ステップ(1)で外部記憶
装置11にキャッシュした文字または部首またはストロ
ークを格納しておくバッファがすでにデータでいっぱい
になっているかどうかを調べる。すでにいっぱいの場合
はステップ(2)で、このキャッシュバッファ内に格納
されているデータの優先順位と対象となっている文字ま
たは部首またはストロークの優先順位とを比べどちらが
優先順位が高いかを調べる。
It is checked whether or not the buffer for storing characters, radicals or strokes cached in the external storage device 11 in step (1) shown in FIG. 4 is already full of data. If it is already full, step (2) compares the priority of the data stored in the cache buffer with the priority of the character, radical, or stroke to determine which one has the higher priority. .

【0067】もし対象とするものより優先順位が低いも
ののデータが、キャッシュバッファ内に格納されていな
ければ、対象とする文字または部首またはストロークは
キャッシュされない。
If data of a lower priority than the target is not stored in the cache buffer, the target character or radical or stroke is not cached.

【0068】しかし、キャッシュバッファ内に対象とす
るものより優先順位が低いものが1つ以上あれば、その
中で最も優先順位の低いものをキャッシュバッファから
削除し、対象としている文字または部首またはストロー
クをキャッシュバッファに格納する。
However, if at least one of the cache buffers has a lower priority than the target one, the one with the lowest priority is deleted from the cache buffer, and the target character, radical, or Store the stroke in the cache buffer.

【0069】ステップ(18)でキャッシュ条件を満た
していると判定されると、ステップ(19)へ移りキャ
ッシュが行われる。次にステップ(20)へ移り、こう
して生成されて対象ストロークのビットマップ、または
ステップ(8)で取り込んだビットマップを、対象とす
る部首中での展開位置へ変移する。次にステップ(2
1)へ移り、部首を構成する全てストロークのビットマ
ップ生成とその合成が終了されたかどうかを調べる。
If it is determined in step (18) that the cache condition is satisfied, the process proceeds to step (19) where caching is performed. Next, the process proceeds to step (20), in which the bit map of the target stroke generated in this way or the bit map fetched in step (8) is shifted to the development position in the target radical. Next, step (2)
The process proceeds to 1) to check whether bitmap generation and synthesis of all strokes constituting the radical have been completed.

【0070】もしまだ終了されていなければ、ステップ
(7)へ戻り、次の対象ストロークについて同様の作業
をする。対象とする部首のビットマップ生成が終了して
いれば、ステップ(18)と同様に、ステップ(22)
でこの部首がキャッシュ条件を満たしているかどうかを
判定する。キャッシュ条件を満たしていれば、ステップ
(23)へ移りキャッシュを行う。
If the processing has not been completed, the flow returns to step (7), and the same operation is performed for the next target stroke. If the bitmap generation for the target radical has been completed, the process proceeds to step (22) as in step (18).
It is determined whether or not this radical satisfies the cache condition. If the cache condition is satisfied, the process proceeds to step (23) to perform caching.

【0071】次にステップ(24)へ移り、こうして生
成された対象部首のビットマップまたは、ステップ
(5)で取り込んだビットマップを、対象とする文字中
での展開位置へ変移する。
Next, the process proceeds to step (24), in which the bit map of the target radical generated in this way or the bit map fetched in step (5) is shifted to the development position in the target character.

【0072】次にステップ(25)で文字を構成する全
部首のビットマップ生成とその合成が終了されたかどう
かを調べる。もし、まだ終了されていなければ、ステッ
プ(4)へ戻り、次の対象部首について同様の作業をす
る。終了していればステップ(18),(22)と同様
に、ステップ(26)でこの文字がキャッシュ条件を満
たしているかどうかを判定する。キャッシュ条件を満た
していればステップ(27)へ移りキャッシュを行う。
こうして対象文字のパターン生成が終了する。
Next, in step (25), it is checked whether bitmap generation and synthesis of all necks constituting the character have been completed. If not, the process returns to step (4) and the same operation is performed for the next target radical. If it has been completed, it is determined in step (26) whether or not this character satisfies the cache condition, as in steps (18) and (22). If the cache condition is satisfied, the process proceeds to step (27) to perform caching.
Thus, the pattern generation of the target character is completed.

【0073】上記実施例では、ストロークおよび部首の
輪郭データをRAM2または外部記憶装置11にキャッ
シュする場合について説明したが、上記輪郭データだけ
ではなく、上記実施例では展開時に加算していたオフセ
ット値も含めてキャッシュを行う。
In the above embodiment, the case where the outline data of strokes and radicals are cached in the RAM 2 or the external storage device 11 has been described. However, not only the outline data but also the offset value added at the time of development in the above embodiment. And cache.

【0074】つまり、ストロークならばその部首のどの
位置に展開されるか、部首ならその文字のどの位置に展
開されるかという位置情報を含めキャッシュを行い、上
記実施例のように、キャッシュデータを展開後、オフセ
ット分シフトする処理を実行しないように制御(詳細は
図8に基づいて詳述する)してもよい。
That is, caching is performed by including position information of the position of the radical in the case of a stroke and the position of the character in the case of a radical. After expanding the data, control may be performed so that the process of shifting by the offset is not executed (details will be described in detail with reference to FIG. 8).

【0075】図8は本発明の第1実施例を示す文字パタ
ーン発生装置における第4の文字パターン発生処理手順
を説明するフローチャートである。なお、(1)〜(2
7)は各ステップを示す。ステップ(17)までは、上
記実施例を示した図7のステップ(17)までと同じ
(キャッシュについてはRAM2に確保するものとす
る)であるので、説明を省略する。
FIG. 8 is a flow chart for explaining a fourth character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention. Note that (1) and (2)
7) shows each step. Steps up to step (17) are the same as steps up to step (17) in FIG.

【0076】本実施例の処理は、文字がキャッシュされ
ているかどうかを調べ、キャッシュされていればそのデ
ータを使い、キャッシュされていなければ、その文字を
構成する部首についてキャッシュされているかどうかを
調べる。文字を構成している部首がキャッシュされてい
るものならば、そのデータを使い、キャッシュされてい
なければ、その部首を構成しているストロークについて
キャッシュされているかを調べ、キャッシュされていれ
ばそのデータを使い、キャッシュされていなければその
ストロークのデータを取り込み、輪郭データを発生させ
る。
The processing of this embodiment checks whether or not a character is cached. If so, the data is used. If not, it is determined whether or not the radical constituting the character is cached. Find out. If the radical making up the character is cached, use that data; if not, check if the stroke making up that radical is cached, and if it is, Using the data, if not cached, the data of the stroke is fetched to generate contour data.

【0077】そして、ステップ(18)で、このように
して生成したストロークの輪郭データに、対象とする部
首におけるそのストロークの展開位置への変位量を加算
している。ステップ(19)では上記実施例と同様にキ
ャッシュするかどうかを判定し、キャッシュを行う場合
はステップ(20)でキャッシュを行う。
Then, in step (18), the amount of displacement of the target radical to the expanded position of the stroke is added to the outline data of the stroke generated in this manner. In step (19), it is determined whether or not to cache, as in the above embodiment. If caching is to be performed, caching is performed in step (20).

【0078】こうしてステップ(21)で1部首が生成
されたと判断されると、そのデータに、ステップ(2
2)でその部首が対象文字中で展開される位置への変位
量を加算する。
When it is determined in step (21) that one radical has been generated, the data is added to step (2).
In 2), the displacement amount to the position where the radical is developed in the target character is added.

【0079】次にステップ(23)でキャッシュするか
どうかを判定し、キャッシュを行う場合はステップ(2
4)へ移りキャッシュを行う。以下ステップ(25)以
降の処理は、図7に示した処理のステップ(25)以降
と同様であるので説明は省略する。 〔第2実施例〕図9は本発明の第2実施例を示す文字パ
ターン発生装置の構成を説明するブロック図である。
Next, in step (23), it is determined whether or not to cache, and when caching is performed, step (2)
Go to 4) and cache. The processing after step (25) is the same as that after step (25) of the processing shown in FIG. [Second Embodiment] FIG. 9 is a block diagram illustrating the configuration of a character pattern generator according to a second embodiment of the present invention.

【0080】図において、21は輪郭発生手段選択手段
で、図1のROM3に記憶された文字データを取込み装
置選択フラグを作成する。文字データは、そのパターン
発生方法であるアウトライン型やストローク型、そして
それらの曲線の発生方法であるベジェやスプライン等様
々なフォントデータ形式で格納されている。このパター
ン発生の対象となる文字についてこのフォントデータを
検索し、所望のパターンが得られるように処理方法を決
定し、それをこの輪郭発生手段選択手段21でフラグ化
する。
In the figure, reference numeral 21 denotes a contour generating means selecting means which takes in the character data stored in the ROM 3 of FIG. 1 and creates a device selecting flag. The character data is stored in various font data formats such as outline type and stroke type as the pattern generation method, and Bezier and spline as the curve generation method. The font data is searched for the character for which the pattern is to be generated, a processing method is determined so that a desired pattern can be obtained, and the processing method is flagged by the outline generating means selecting means 21.

【0081】この様に構成された文字パターン発生装置
において、情報作成手段(CPU1)が入力される文字
情報を解析して文字パターンを発生させるために利用す
る文字パターン処理資源を選択するフラグを後述するよ
うにRAM2上に作成し、該作成されたフラグに基づい
て文字パターン処理手段(CPU1が後述するフローチ
ャートに示す手順に従って実行する手段)が異なる文字
パターン処理資源を選択して文字パターンを発生させ
て、入力される文字情報に左右されない文字パターン処
理資源を共有して異なる文字パターン処理を行うもので
ある。
In the character pattern generating apparatus thus configured, a flag for selecting a character pattern processing resource used for generating a character pattern by analyzing the character information inputted by the information creating means (CPU 1) will be described later. The character pattern processing means (means executed by the CPU 1 in accordance with a procedure shown in a flowchart to be described later) selects a different character pattern processing resource based on the created flag and generates a character pattern. Thus, different character pattern processing is performed by sharing character pattern processing resources that are not affected by input character information.

【0082】また、文字パターン発生をストロークまた
はアウトラインで処理する複数のフォント処理手段(C
PU1がROM3に記憶されるフォントデータ従って行
う(本実施例ではストロークとアウトラインの2種類を
備える)と、文字の品位を高めるための座標変換を前記
フラグにより定められた方法で行う複数のヒンティング
手段22と、前記フラグにより定められた曲線特性によ
り曲線を発生させ閉領域の輪郭パターンを作成する複数
の補間手段23と、前記フラグにより定められた方法で
発生された閉領域を塗りつぶしビットマップを作成する
複数の塗りつぶし手段24の文字パターン処理資源中か
ら、該作成されたフラグに基づいて文字パターン処理手
段が異なる文字パターン処理資源を選択して文字パター
ンを発生させて、入力される文字情報に左右されない文
字パターン処理資源を共有して異なる文字パターン処理
を行うものである。
A plurality of font processing means (C) for processing the generation of a character pattern by strokes or outlines
When the PU 1 performs according to the font data stored in the ROM 3 (in this embodiment, two types of strokes and outlines are provided), a plurality of hintings are performed in which the coordinate conversion for improving the quality of the character is performed by the method determined by the flag Means 22, a plurality of interpolating means 23 for generating a curve according to the curve characteristics defined by the flag and creating a contour pattern of the closed area, and filling the closed area generated by the method defined by the flag with a bitmap. The character pattern processing means selects a different character pattern processing resource from the plurality of character pattern processing resources to be created based on the created flag and generates a character pattern. Performs different character pattern processing by sharing character pattern processing resources that are not affected

【0083】以下に説明するが、本実施例の文字パター
ン発生処理には、ヒンティング手段22,補間手段2
3,塗りつぶし手段24の3つの手段を使う。なお、各
手段はロジック回路で構成されていてもいいし、CPU
とROMに記憶されたプログラムにより実行される構成
であっても差し支えない。
As will be described below, the hinting means 22 and the interpolation means 2
(3) Three means of filling means 24 are used. Incidentally, each means may be constituted by a logic circuit, or a CPU.
May be executed by a program stored in the ROM.

【0084】それぞれの手段は複数の処理方法を予め持
ち、その選択を前記フラグで行う。ヒンティング22は
上記輪郭発生選択手段21で指定されたヒンティング処
理を行う。補間手段23は、曲線に関して上記輪郭発生
手段選択手段21で指定された補間方法を用いて補間を
し、輪郭座標を生成する。塗りつぶし手段24は上記輪
郭発生手段選択手段21で指定された方法で塗りつぶし
を行う。
Each means has a plurality of processing methods in advance, and the selection is made by the flag. The hinting 22 performs a hinting process designated by the contour generation selecting means 21. The interpolation means 23 performs interpolation on the curve using the interpolation method designated by the contour generation means selection means 21 to generate contour coordinates. The painting means 24 paints in the method designated by the contour generating means selecting means 21.

【0085】なお、ヒンティング手段22および塗りつ
ぶし手段24は使わない場合もありうる。
Note that the hinting means 22 and the painting means 24 may not be used in some cases.

【0086】図10は、図9に示した輪郭発生手段選択
手段21のフラグ化処理を説明する図である。
FIG. 10 is a diagram for explaining the flag setting process of the contour generating means selecting means 21 shown in FIG.

【0087】この図に示すように、手段選択フラグは8
ビット構成で構成され、その内容は、最初の1ビットが
パターン発生方法を選択する輪郭選択ビット、2,3ビ
ットがヒンティング手段22に予め用意されている複数
のヒンティング方法から最適な方法を選択するヒンティ
ング選択ビット、ビット4,5が補間手段23に予め用
意されている複数の補間方法から最適な方法を選択する
補間選択ビット、ビット6,7が塗りつぶし手段24に
予め用意されている複数の塗りつぶし方法から最適な方
法を選択する塗りつぶし選択ビットからなっている。な
お、本実施例は、8ビットでフラグ情報を構成する場合
について説明するが、ビット数を増やして、各資源数を
増やしてもよく、様々な変形または組合せに対応させる
ことができることはいうまでもない。
As shown in this figure, the means selection flag is 8
The first bit is an outline selection bit for selecting a pattern generation method, and the second bit is an optimum method from a plurality of hinting methods prepared in advance in the hinting means 22. The hinting selection bits to be selected, bits 4 and 5, are provided in the interpolation means 23 in advance, and the interpolation selection bits, bits 6 and 7 for selecting the optimum method from a plurality of interpolation methods prepared in the interpolation means 23 are prepared in the painting means 24 in advance. It consists of a fill selection bit that selects the optimal method from a plurality of fill methods. In this embodiment, the case where the flag information is configured by 8 bits will be described. However, the number of resources may be increased by increasing the number of bits, and it is needless to say that various modifications or combinations can be supported. Nor.

【0088】まず、図10に示した手段選択フラグの1
ビット目つまり、輪郭選択ビットが立っている場合につ
いて説明する。
First, one of the means selection flags shown in FIG.
The case where the bit number, that is, the outline selection bit is set, will be described.

【0089】この輪郭選択ビットが立っていると、その
文字パターン生成を図11の(a)に示すような、文字
の輪郭を座標データで表現し、ストロークの交差を持た
ないアウトラインフォントで行うことになる。
When the contour selection bit is set, the character pattern is generated by expressing the contour of the character by coordinate data and using an outline font having no stroke intersection as shown in FIG. become.

【0090】以下、図12に示すフローチャートを参照
しながら図9に示したヒンティング手段22の処理につ
いて説明する。
Hereinafter, the processing of the hinting unit 22 shown in FIG. 9 will be described with reference to the flowchart shown in FIG.

【0091】図12は、図9に示したヒンティング手段
22の処理動作を説明するフローチャートである。な
お、(1)〜(6)は各ステップを示す。
FIG. 12 is a flowchart for explaining the processing operation of the hinting means 22 shown in FIG. Note that (1) to (6) indicate each step.

【0092】ステップ(1)では、手段選択フラグの2
ビット目が立っているかどうかを調べている。ここで、
立っていると判断した場合は、ステップ(2)へ移り、
今度は、手段選択フラグの3ビット目を調べる。ここ
で、3ビット目が立っている場合には、ヒンティング手
段の処理として、ステップ(4)へ移り、A社のヒンテ
ィング処理を行い、3ビット目が立っていない場合に
は、ステップ(5)へ移り、B社のヒンティング処理を
行う。また、ステップ(1)で、手段選択フラグの2ビ
ット目が立っていない場合には、ステップ(3)へ移
り、手段選択フラグの3ビット目を調べる。
In step (1), the means selection flag 2
Checking if the bit is standing. here,
If it is determined that the person is standing, move to step (2),
This time, the third bit of the means selection flag is checked. Here, when the third bit is set, the process proceeds to step (4) as the processing of the hinting means, the hinting process of Company A is performed, and when the third bit is not set, the step ( Go to 5) to perform the hinting process of Company B. If the second bit of the means selection flag is not set in step (1) , the process proceeds to step (3) to check the third bit of the means selection flag.

【0093】ここで手段選択フラグの3ビット目が立っ
ていれば、ヒンティング手段の処理として、ステップ
(6)へ移りC社のヒンティング処理を行い、3ビット
目が立っていなければ、ヒンティング手段22において
ヒンティング処理を行わない。
Here, if the third bit of the means selection flag is set, the process proceeds to step (6) as hinting means, where the hinting process of Company C is performed. If the third bit is not set, hinting is performed. The hinting unit 22 does not perform the hinting process.

【0094】次に、図13に示すフローチャートを参照
しながら図9に示した補間手段23の処理動作について
説明する。
Next, the processing operation of the interpolation means 23 shown in FIG. 9 will be described with reference to the flowchart shown in FIG.

【0095】図13は、図9に示した補間手段23の処
理動作を説明するフローチャートである。なお、(1)
〜(7)は各ステップを示す。
FIG. 13 is a flowchart for explaining the processing operation of the interpolation means 23 shown in FIG. (1)
(7) shows each step.

【0096】ステップ(1)で装置選択フラグの4ビッ
ト目が立っているかどうかを調べる。立っている場合は
ステップ(2)へ移り、今度は装置選択フラグの5ビッ
ト目を調べる。
In step (1), it is checked whether the fourth bit of the device selection flag is set. If so, the process proceeds to step (2), and the fifth bit of the device selection flag is checked.

【0097】ここで5ビット目が立っていれば、補間装
置の処理として、ステップ(4)へ移り2次Bスプライ
ンによる補間を行い、5ビット目が立っていなければ、
ステップ(5)へ移り3次Bスプラインによる補間を行
う。
If the fifth bit is set, the process proceeds to step (4) as an interpolating device, where interpolation is performed using a secondary B-spline. If the fifth bit is not set, the process proceeds to step (4).
The process proceeds to step (5) to perform interpolation using a cubic B-spline.

【0098】また、ステップ(1)で装置選択フラグの
4ビット目が立っていなければ、ステップ(3)へ移り
装置選択フラグの5ビット目を調べる。ここで装置選択
フラグの5ビット目が立っていればステップ(6)へ移
り、補間装置の処理として、2次ベジェによる補間を行
い、5ビット目が立っていなければ、ステップ(7)へ
移り3次ベジェによる補間を行う。
If the fourth bit of the device selection flag is not set in step (1), the process goes to step (3) to check the fifth bit of the device selection flag. If the fifth bit of the device selection flag is set, the process proceeds to step (6). If the fifth bit is not set, the process proceeds to step (7). If the fifth bit is not set, the process proceeds to step (7). Interpolation by cubic Bezier is performed.

【0099】補間装置に用意されている補間方式は、前
述したように3次ベジェ,2次ベジェ,3次Bスプライ
ン,2次Bスプラインであり、図14,15に示す。
The interpolation methods prepared in the interpolation device are the cubic Bezier, the secondary Bezier, the tertiary B spline, and the secondary B spline as described above, and are shown in FIGS.

【0100】図14,図15は、図9に示した補間手段
23による補間方式を説明する図であり、図14は3次
ベジェの補間処理に対応し、図15は2次ベジェの補間
処理に対応する。
FIGS. 14 and 15 are diagrams for explaining an interpolation method by the interpolation means 23 shown in FIG. 9. FIG. 14 corresponds to a cubic Bezier interpolation process, and FIG. 15 is a secondary Bezier interpolation process. Corresponding to

【0101】図14に示すように、1曲線を発生させる
ための制御点A,B,C,D4点について、AB,B
C,CDの中間点a,f,eを算出する。次に今算出し
たa,f,e3点について同様に、af,feの中間点
b,d及びbdの中間点cを算出する。こうして求めた
点の内A,a,b,cが1曲線F(0)をc,d,e,
DがF(1)を新たに表すようになる。この作業を予め
定められた値になるまで繰り返すことにより1曲線を表
す座標データを作成する。
As shown in FIG. 14 , four control points A, B, C, and D for generating one curve are AB, B
The intermediate points a, f, and e of C and CD are calculated. Next, the intermediate points b and d of af and fe and the intermediate point c of bd are similarly calculated for the three points a, f, and e just calculated. A, a, b, and c of the points obtained in this way are represented by one curve F (0) as c, d, e,
D newly represents F (1). By repeating this operation until a predetermined value is reached, coordinate data representing one curve is created.

【0102】図10に示した2次ベジェは、3次ベジェ
が曲線を4点で構成していたのに対し、3点で曲線を構
成している。後は同様に、制御点A,B,CについてA
B,BCの中点a,cおよびこのacの中点を算出し、
算出された点の内A,a,bで1曲線F(0)を、b,
c,Cで1曲線を構成する。この作業を予め定められた
値になるまで繰り返し1曲線を表す座標データを作成す
る。
In the quadratic Bezier shown in FIG. 10, the cubic Bezier has three curves, whereas the cubic Bezier has four curves. Thereafter, similarly, control points A, B, and C
The midpoints a and c of B and BC and the midpoint of this ac are calculated,
One of the calculated points A, a, and b is used to convert one curve F (0) into b,
One curve is constituted by c and C. This operation is repeated until a predetermined value is obtained, and coordinate data representing one curve is created.

【0103】次にBスプラインによる補間は、ベジェに
よる曲線補間とは異なり、設定された数に曲線を分割
し、それぞれ2次ないし3次の関数により曲線を発生さ
せる。
Next, unlike the curve interpolation by the Bezier, the interpolation by the B-spline divides the curve into a set number and generates a curve by a quadratic or cubic function, respectively.

【0104】次に、図16に示すフローチャートを参照
しながら、どのようにして輪郭座標を発生させるかにつ
いて説明する。
Next, with reference to a flowchart shown in FIG. 16, a description will be given of how to generate contour coordinates.

【0105】図16は、図9に示した補間手段23を使
用した輪郭処理手順の一例を示すフローチャートであ
る。なお、(1)〜(4)は各ステップを示す。
FIG. 16 is a flowchart showing an example of a contour processing procedure using the interpolation means 23 shown in FIG. Note that (1) to (4) show each step.

【0106】ステップ(1)では、取り込んだ輪郭制御
点が直線を構成しているものかどうかを調べている。こ
こで、その点が直線を構成している点であったならば、
ステップ(2)へ移り直線を発生させる。ステップ
(1)で直線を構成する点でなかったならば、ステップ
(3)へ移り所定の補間方式で補間を行い曲線を発生さ
せる。ステップ(2)およびステップ(3)で直線、曲
線を発生させた後、ステップ(4)へ移り、1輪郭分の
座標データを作成し終ったかを調べ、終っていなければ
ステップ(1)へ戻る。
In step (1), it is checked whether or not the captured contour control points constitute a straight line. Here, if that point is a point that constitutes a straight line,
The process proceeds to step (2) to generate a straight line. If the point does not constitute a straight line in step (1), the process proceeds to step (3) to perform interpolation by a predetermined interpolation method to generate a curve. After generating straight lines and curves in steps (2) and (3), the process proceeds to step (4) to check whether coordinate data for one contour has been created. If not, the process returns to step (1). .

【0107】一方、ステップ(4)の判定で1輪郭分終
っていると判定された場合には、補間装置の処理は終了
する。
On the other hand, if it is determined in step (4) that one contour has been completed, the processing of the interpolator ends.

【0108】次に、図17に示すフローチャートを参照
しながら図9に示した塗りつぶし手段24の処理動作に
ついて説明する。
Next, the processing operation of the painting means 24 shown in FIG. 9 will be described with reference to the flowchart shown in FIG.

【0109】図17は、図9に示した塗りつぶし手段2
4による塗りつぶし処理手順の一例を示すフローチャー
トである。なお、(1)〜(4)は各ステップを示す。
FIG. 17 shows the filling means 2 shown in FIG.
9 is a flowchart illustrating an example of a painting processing procedure by No. 4. Note that (1) to (4) show each step.

【0110】ステップ(1)で手段選択フラグの6ビッ
ト目(図10参照)が立っているかどうか調べる。6ビ
ット目が立っていればステップ(2)へ移り、手段選択
フラグの7ビット目を調べる。ここで、7ビット目が立
っていれば、ステップ(3)へ移り塗りつぶし手段24
の処理として、non zero windingによる塗りつぶし処
理(詳細は後述する)を行う。
In step (1), it is checked whether the sixth bit of the means selection flag (see FIG. 10) is set. If the sixth bit is set, the process proceeds to step (2), and the seventh bit of the means selection flag is checked. Here, if the seventh bit is set, the process proceeds to step (3) and the filling means 24
As a process of (1), a painting process by non zero winding (details will be described later) is performed.

【0111】一方、ステップ(2)の判定で7ビット目
が立っていなければ、ステップ(4)へ移りeven oddに
よる塗りつぶし処理(詳細は後述する)を行う。
On the other hand, if the 7th bit does not stand in the determination in step (2), the process proceeds to step (4) to perform a painting process by even odd (details will be described later).

【0112】一方、ステップ(1)において、手段選択
フラグの6ビット目が立っていなければ、塗りつぶし手
段24において塗りつぶしを行わない。以上一連の作業
により1輪郭による文字発生が終了する。
On the other hand, if the sixth bit of the means selection flag is not set in step (1), the painting means 24 does not paint. Through the above series of operations, the generation of characters by one outline is completed.

【0113】次に、手段選択フラグの1ビット目が立っ
ていなかった場合について説明する。
Next, a case where the first bit of the means selection flag is not set will be described.

【0114】装置選択フラグの1ビット目が立っていな
かった場合は、図11の(b)に示すようにストローク
単位でパターンを作成し、それを合成することにより文
字を発生させる。ストローク合成における文字パターン
発生を行う。このストローク合成による文字パターン発
生順序は図18の手順に従う。
If the first bit of the device selection flag is not set, a pattern is created in units of strokes as shown in FIG. 11B and characters are generated by synthesizing them. Performs character pattern generation in stroke synthesis. The order of character pattern generation by the stroke synthesis follows the procedure of FIG.

【0115】図18は本発明の第2実施例を示す文字パ
ターン発生装置における第2の文字パターン発生処理手
順の一例を示すフローチャートである。なお、(1)〜
(4),(2−1),(2−2),(3−1),(3−
2),(4−1),(4−2)は各ステップを示す。
FIG. 18 is a flowchart showing an example of a second character pattern generation processing procedure in the character pattern generation device according to the second embodiment of the present invention. In addition, (1)-
(4), (2-1), (2-2), (3-1), (3-
2), (4-1), and (4-2) show each step.

【0116】なお、この場合、各手段の働きおよびその
処理の指定は1輪郭による文字生成とほぼ同様であるた
め、異なる部分についてのみ説明する。
In this case, the operation of each means and the designation of its processing are almost the same as those of character generation using one outline, and therefore only different parts will be described.

【0117】まず、異なるのは取り込むデータで、スト
ローク合成の場合は、文字を構成する全ストローク数と
そのストロークの構成点およびその位置と大きさがデー
タとなる。
First, what is different is the data to be captured. In the case of stroke synthesis, the total number of strokes constituting a character, the constituent points of the strokes, and their positions and sizes are data.

【0118】ヒンティング手段22と、補間手段23
は、対象とする文字を構成するストローク数だけそれぞ
れの手段内の処理をループさせ(2−1),(2−
2),(3−1),(3−2),(4−1),(4−
2)、全ストロークについて一度のデ−タ転送で作業を
終わらせる。
Hinting means 22 and interpolation means 23
Loops the processing in each means by the number of strokes constituting the target character (2-1), (2-
2), (3-1), (3-2), (4-1), (4-
2) Complete the work by transferring data once for all strokes.

【0119】そして、その処理はヒンティング手段22
においては、1輪郭における処理方法と同一で、補間手
段23においては、座標データを1ストローク作成する
ごとに同一テーブルに合成していく。
The processing is performed by the hinting means 22.
Is the same as the processing method for one contour, and the interpolation means 23 combines the coordinate data in the same table every time one stroke is created.

【0120】次いで、ステップ(4)で、塗りつぶし手
段24が図19に従って塗りつぶし処理を行う。
Next, in step (4), the painting means 24 performs a painting process according to FIG.

【0121】図19は、図18に示した塗りつぶし処理
の詳細手順の一例を示すフローチャートである。なお、
(1),(2)は各ステップを示す。
FIG. 19 is a flowchart showing an example of the detailed procedure of the painting process shown in FIG. In addition,
(1) and (2) show each step.

【0122】ステップ(1)で手段選択フラグの6ビッ
ト目を調べる。ここで、6ビット目が立っていたなら
ば、ステップ(2)へ移り塗りつぶし手段24の処理と
して、non zero windingによる塗りつぶしを行う。
In step (1), the sixth bit of the means selection flag is checked. Here, if the sixth bit has been set, the process proceeds to step (2), and painting by non-zero winding is performed as the processing of the painting means 24.

【0123】一方、ステップ(1)の判定で6ビット目
が立っていなければ、塗りつぶし手段24で塗りつぶし
処理は行わない。
On the other hand, if the sixth bit does not stand in the determination in step (1), the painting means 24 does not perform the painting process.

【0124】図20は本発明に係る文字パターン発生装
置における塗りつぶし方法を説明する図である。
FIG. 20 is a diagram for explaining a filling method in the character pattern generator according to the present invention.

【0125】この図に示すように、ストローク合成のよ
うな輪郭線が交差するパターンの塗りつぶしを行うと
き、even oddによる塗りつぶしを行うと塗りつぶしが行
われない部分(塗り抜け部HP)が発生する場合がある
ため、ストローク合成の場合、選択できる塗りつぶし方
法はnon zero windingのみとなる。
As shown in this figure, when a pattern such as a stroke combination is filled with an intersecting contour line, if a fill is performed by even odd, a portion where the fill is not performed (painted portion HP) occurs. Therefore, in the case of stroke synthesis, the only fill method that can be selected is non zero winding.

【0126】なお、上記実施例の塗りつぶし処理では、
ストローク合成における塗りつぶしはnon zero windi
ngのみで行ったが、ここでは、even oddによっても、塗
りつぶしが行える処理について以下説明する。なお、装
置の構成およびアウトラインフォントによる文字パター
ン発生方法は同じであるが、ストローク合成によ文字パ
ターン発生方法における塗りつぶし方法が以下のように
変わる。
In the filling process of the above embodiment,
Non-zero windi for stroke composition
Although processing was performed only with ng, here, processing that can be painted even with even odd will be described below. Although the configuration of the apparatus and the method of generating a character pattern by using an outline font are the same, the method of painting in the method of generating a character pattern by combining strokes changes as follows.

【0127】上記第2実施例では、ヒンティング手段2
2、補間手段23とも1文字を構成する全ストロークに
ついて、1度のデータ転送でその装置を終らせていた
が、今回は、ヒンティング手段22、補間手段23、塗
りつぶし手段24ともに、1回に1ストロークのみの処
理を行う。すなわち、1度目の塗りつぶし手段24の処
理が終った時点では1つのストロークの塗りつぶしの終
わったビットマップデータができ上がった状態になる。
以下、図21及び図22,図23を参照しながら他の塗
りつぶし処理について説明する。
In the second embodiment, the hinting means 2
2. The interpolating means 23 ends the apparatus by one data transfer for all the strokes constituting one character. The processing for only one stroke is performed. That is, at the time when the processing of the first filling means 24 is completed, bitmap data in which one stroke has been filled is completed.
Hereinafter, another filling process will be described with reference to FIGS. 21, 22, and 23.

【0128】図21は本発明に係る文字パターン発生装
置における他の文字パターン生成手順の一例を示すフロ
ーチャートである。なお、(1)〜(5)は各ステップ
を示す。
FIG. 21 is a flowchart showing an example of another character pattern generation procedure in the character pattern generation device according to the present invention. In addition, (1) to (5) indicate each step.

【0129】図22は本発明に係る文字パターン発生装
置における他の文字パターン生成状態を示す図である。
なお、15−1〜15−7は各塗りつぶしのステップを
示す。図23は本発明に係る文字パターン発生装置にお
ける文字パターンのストロークと部首との対応説明する
図である。
FIG. 22 is a diagram showing another character pattern generation state in the character pattern generation device according to the present invention.
In addition, 15-1 to 15-7 indicate each painting step. FIG. 23 is a view for explaining correspondence between strokes of a character pattern and radicals in the character pattern generation device according to the present invention.

【0130】図21に示すように塗りつぶし処理が終わ
るごとに(1)〜(5)、文字を構成する全ストローク
について処理が終ったかどうかを確認し終っていなけれ
ば、繰り返し次のストロークについて処理を行う。
As shown in FIG. 21, every time the painting process is completed (1) to (5), it is checked whether or not the process has been completed for all the strokes constituting the character. If not, the process is repeated for the next stroke. Do.

【0131】これにより、文字が構成されていく過程
は、図22に示す「木」を例にすると、1度目の処理で
はステップ15ー1のように横線のパターンが生成され
る、次にステップ15ー2で次のストロークである縦線
のパターンが生成され、ステップ15ー3でこのパター
ンをステップ15ー1で生成された横線のパターンが合
成される。
In this way, in the process of forming a character, in the case of the "tree" shown in FIG. 22, a horizontal line pattern is generated in the first processing as shown in step 15-1. In step 15-2, a vertical line pattern as the next stroke is generated, and in step 15-3, this pattern is combined with the horizontal line pattern generated in step 15-1.

【0132】ステップ15ー4では次のストロークであ
る左払いのパターンが生成され、ステップ15ー5でこ
のパターンを前記ステップ15ー3で生成されたパター
ンに合成をする。ステップ15ー6では次のストローク
である右払いのパターンが生成され、ステップ15ー7
でこのパターンをステップ15ー5で生成され得たパタ
ーンに合成すると、文字パターン「木」が生成される。
また、この方法における塗りつぶし装置の処理によれ
ば、アウトラインフォントと同様に、non zerowindin
g,even oddの二通りの方法で塗りつぶしが行える。
In step 15-4, a left-paying pattern as the next stroke is generated. In step 15-5, this pattern is combined with the pattern generated in step 15-3. In step 15-6, a right-paying pattern, which is the next stroke, is generated, and step 15-7 is performed.
When this pattern is combined with the pattern generated in step 15-5, a character pattern "tree" is generated.
Also, according to the processing of the filling device in this method, similar to the outline font, the non-zerowindin
You can paint in two ways, g and even odd.

【0133】上記実施例によれば、文字,部首,ストロ
ークをそれぞれキャッシュすることにより、ストローク
合成による文字生成で、多数の文字を生成するときに、
いちいち同一のストロークや、部首や文字をその都度展
開する処理を減らすことを大幅に削減できる。
According to the above embodiment, by caching a character, a radical, and a stroke, when a large number of characters are generated by character generation by stroke synthesis,
It is possible to greatly reduce the number of processes for developing the same stroke or radical or character each time.

【0134】また、あらかじめそれぞれの装置に複数の
文字パターン処理資源を用意しておくことにより、デー
タの違いや処理方法の変更等による装置自体の変更や作
成等の余分な処理が削減され、効率よく文字パターン発
生が可能となる。
Further, by preparing a plurality of character pattern processing resources in each device in advance, unnecessary processing such as changing or creating the device itself due to a difference in data or a change in the processing method is reduced, and efficiency is improved. Character patterns can often be generated.

【0135】なお、本発明は、複数の機器から構成され
るシステムに適用しても、1つの機器から成る装置に適
用しても良い。また、本発明はシステムあるいは装置に
プログラムを供給することによって達成させる場合にも
適用できることは言うまでもない。
The present invention may be applied to a system composed of a plurality of devices or to an apparatus composed of one device. Needless to say, the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or an apparatus.

【0136】以上説明したように、本発明に係る文字パ
ターン発生装置によれば、ストロークデータに基づきス
トロークパターンを発生させ、ストロークパターンに基
づき部首パターンを発生させ、部首パターンに基づき文
字パターンを発生させる文字パターン発生装置であっ
て、発生対象文字パターンがキャッシュされているか否
かを判別する第1判別手段と、前記第1判別手段により
発生対象文字パターンがキャッシュされていないと判別
された場合、発生対象文字パターンを構成する部首パタ
ーンの中の対象とする部首パターンがキャッシュされて
いるか否かを判別する第2判別手段と、前記第2判別手
段により対象とする部首パターンがキャッシュされてい
ないと判別された場合、対象とする部首パターンを構成
するストロークパターンの中の対象とするストロークパ
ターンがキャッシュされているか否かを判別する第3判
別手段と、前記第3判別手段により対象とするストロー
クパターンがキャッシュされていないと判別された場
合、対象とするストロークパターンに対応するストロー
クデータに基づきストロークパターンを発生させ、前記
第3判別手段により対象とするストロークパターンがキ
ャッシュされていると判別された場合、キャッシュされ
ているストロークパターンに基づき部首パターンを発生
させ、前記第2判別手段により対象とする部首パターン
がキャッシュされていると判別された場合、キャッシュ
されている部首パターンに基づき文字パターンを発生さ
せる発生手段とを有するので、文字,部首,ストローク
の順にすでにキャッシュされている各パターン資源を活
用して、要求される文字パターンを短時間に効率よく生
成できるという効果を奏する。
As described above, according to the character pattern generator of the present invention, a stroke pattern is generated based on stroke data, a radical pattern is generated based on the stroke pattern, and a character pattern is generated based on the radical pattern. A character pattern generating apparatus for generating, wherein a first determining means for determining whether or not a character pattern to be generated is cached, and when it is determined by the first determining means that the character pattern to be generated is not cached A second discriminating means for discriminating whether or not a target radical pattern among the radical patterns constituting the character pattern to be generated is cached; If it is determined that the stroke pattern has not been A third determining unit that determines whether or not the target stroke pattern in the pattern is cached; and determining that the target stroke pattern is not cached by the third determining unit. A stroke pattern is generated based on the stroke data corresponding to the stroke pattern, and if the target stroke pattern is determined to be cached by the third determination unit, a radical pattern is generated based on the cached stroke pattern. Generating means for generating a character pattern based on the cached radical pattern when the target radical pattern is determined to be cached by the second determining means. , Each already cached in stroke order By utilizing over down resources, an effect that the required character pattern short time can be efficiently produced.

【0137】また、本発明に係る文字パターン発生方法
によれば、ストロークデータに基づきストロークパター
ンを発生させ、ストロークパターンに基づき部首パター
ンを発生させ、部首パターンに基づき文字パターンを発
生させる文字パターン発生方法であって、発生対象文字
パターンがキャッシュされているか否かを判別する第1
判別ステップと、前記第1判別ステップにより発生対象
文字パターンがキャッシュされていないと判別された場
合、発生対象文字パターンを構成する部首パターンの中
の対象とする部首パターンがキャッシュされているか否
かを判別する第2判別ステップと、第2判別ステップに
より対象とする部首パターンがキャッシュされていない
と判別された場合、対象とする部首パターンを構成する
ストロークパターンの中の対象とするストロークパター
ンがキャッシュされているか否かを判別する第3判別ス
テップと、前記第3判別ステップにより対象とするスト
ロークパターンがキャッシュされていないと判別された
場合、対象とするストロークパターンに対応するストロ
ークデータに基づきストロークパターンを発生させ、前
記第3判別ステップにより対象とするストロークパター
ンがキャッシュされていると判別された場合、キャッシ
ュされているストロークパターンに基づき部首パターン
を発生させ、前記第2判別ステップにより対象とする部
首パターンがキャッシュされていると判別した場合、キ
ャッシュされている部首パターンに基づき文字パターン
を発生させる発生ステップとを有するので、文字,部
首,ストロークの順にすでにキャッシュされている各パ
ターン資源を活用して、要求される文字パターンを短時
間に効率よく生成できるという効果を奏する。
Further, according to the character pattern generating method of the present invention, a stroke pattern is generated based on stroke data, a radical pattern is generated based on the stroke pattern, and a character pattern is generated based on the radical pattern. A first method for determining whether an occurrence target character pattern is cached or not
When it is determined in the determining step and the first determining step that the character pattern to be generated is not cached, whether or not the radical pattern to be targeted among the radical patterns forming the character pattern to be generated is cached A second determination step of determining whether the target radical pattern is not cached in the second determination step, and a target stroke among stroke patterns constituting the target radical pattern A third determining step of determining whether or not the pattern is cached; and, if it is determined in the third determining step that the target stroke pattern is not cached, the stroke data corresponding to the target stroke pattern A stroke pattern is generated based on the third determination step. If it is determined that the target stroke pattern is cached by (1), a radical pattern is generated based on the cached stroke pattern, and that the target radical pattern is cached in the second determination step. If it is determined, a character pattern is generated based on the cached radical pattern, so that the required character is utilized by utilizing the respective cached pattern resources in the order of character, radical, and stroke. There is an effect that a pattern can be efficiently generated in a short time.

【0138】[0138]

【0139】[0139]

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

【図1】本発明の第1実施例を示す文字パターン発生装
置の構成を説明するブロック図である。
FIG. 1 is a block diagram illustrating a configuration of a character pattern generation device according to a first embodiment of the present invention.

【図2】本発明の第1実施例を示す文字パターン発生装
置における第1の文字パターン発生処理手順を説明する
フローチャートである。
FIG. 2 is a flowchart illustrating a first character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention.

【図3】本発明に係る文字パターン発生装置における座
標データから輪郭情報への変換状態を説明する模式図で
ある。
FIG. 3 is a schematic diagram illustrating a state of conversion from coordinate data to contour information in the character pattern generation device according to the present invention.

【図4】図2に示した文字パターン発生処理におけるキ
ャッシュ条件の判定処理手順の一例を示すフローチャー
トである。
FIG. 4 is a flowchart illustrating an example of a cache condition determination processing procedure in the character pattern generation processing illustrated in FIG. 2;

【図5】図1に示したRAM2上のキャッシュバッファ
の状態を示す図である。
FIG. 5 is a diagram showing a state of a cache buffer on a RAM 2 shown in FIG. 1;

【図6】本発明の第1実施例を示す文字パターン発生装
置における第2の文字パターン発生処理手順を説明する
フローチャートである。
FIG. 6 is a flowchart illustrating a second character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention.

【図7】本発明の第1実施例を示す文字パターン発生装
置における第3の文字パターン発生処理手順を説明する
フローチャートである。
FIG. 7 is a flowchart illustrating a third character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention.

【図8】本発明の第1実施例を示す文字パターン発生装
置における第4の文字パターン発生処理手順を説明する
フローチャートである。
FIG. 8 is a flowchart illustrating a fourth character pattern generation processing procedure in the character pattern generation device according to the first embodiment of the present invention.

【図9】本発明の第2実施例を示す文字パターン発生装
置の構成を説明するブロック図である。
FIG. 9 is a block diagram illustrating a configuration of a character pattern generator according to a second embodiment of the present invention.

【図10】図9に示した輪郭発生手段選択手段21のフ
ラグ化処理を説明する図である。
FIG. 10 is a diagram for explaining a flag generation process of the contour generation means selection means 21 shown in FIG. 9;

【図11】この種の文字パターン発生装置における文字
パターン生成方法を示す模式図である。
FIG. 11 is a schematic diagram showing a character pattern generation method in this type of character pattern generation device.

【図12】図9に示したヒンティング手段の処理動作を
説明するフローチャートである。
FIG. 12 is a flowchart illustrating a processing operation of a hinting unit illustrated in FIG. 9;

【図13】図9に示した補間手段の処理動作を説明する
フローチャートである。
FIG. 13 is a flowchart illustrating a processing operation of an interpolation unit illustrated in FIG. 9;

【図14】図9に示した補間手段による補間方式を説明
する図である。
FIG. 14 is a view for explaining an interpolation method by the interpolation means shown in FIG. 9;

【図15】図9に示した補間手段による補間方式を説明
する図である。
FIG. 15 is a view for explaining an interpolation method by the interpolation means shown in FIG. 9;

【図16】図9に示した補間手段を使用した輪郭処理手
順の一例を示すフローチャートである。
FIG. 16 is a flowchart illustrating an example of a contour processing procedure using the interpolation unit illustrated in FIG. 9;

【図17】図9に示した塗りつぶし手段による塗りつぶ
し処理手順の一例を示すフローチャートである。
FIG. 17 is a flowchart illustrating an example of a painting process performed by a painting unit illustrated in FIG. 9;

【図18】本発明の第2実施例を示す文字パターン発生
装置における第2の文字パターン発生処理手順の一例を
示すフローチャートである。
FIG. 18 is a flowchart illustrating an example of a second character pattern generation processing procedure in the character pattern generation device according to the second embodiment of the present invention.

【図19】図18に示した塗りつぶし処理の詳細手順の
一例を示すフローチャートである。
FIG. 19 is a flowchart illustrating an example of a detailed procedure of a painting process illustrated in FIG. 18;

【図20】本発明に係る文字パターン発生装置における
塗りつぶし方法を説明する図である。
FIG. 20 is a diagram illustrating a filling method in the character pattern generation device according to the present invention.

【図21】本発明に係る文字パターン発生装置における
他の文字パターン生成手順の一例を示すフローチャート
である。
FIG. 21 is a flowchart illustrating an example of another character pattern generation procedure in the character pattern generation device according to the present invention.

【図22】本発明に係る文字パターン発生装置における
他の文字パターン生成状態を示す図である。
FIG. 22 is a diagram showing another character pattern generation state in the character pattern generation device according to the present invention.

【図23】本発明に係る文字パターン発生装置における
文字パターンのストロークと部首との対応説明する図で
ある。
FIG. 23 is a diagram illustrating correspondence between strokes of a character pattern and radicals in the character pattern generation device according to the present invention.

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

1 CPU 2 RAM 3 ROM 4 KBC 5 KB 6 PRTC 7 PRT 8 CRTC 9 CRT 10 DKC 11 外部記憶装置 1 CPU 2 RAM 3 ROM 4 KBC 5 KB 6 PRTC 7 PRT 8 CRTC 9 CRT 10 DKC 11 External storage device

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) B41J 2/485 G06F 12/08 G06T 11/20 G09G 5/24 620 ──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int. Cl. 7 , DB name) B41J 2/485 G06F 12/08 G06T 11/20 G09G 5/24 620

Claims (8)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 ストロークデータに基づきストロークパ
ターンを発生させ、ストロークパターンに基づき部首パ
ターンを発生させ、部首パターンに基づき文字パターン
を発生させる文字パターン発生装置であって、 発生対象文字パターンがキャッシュされているか否かを
判別する第1判別手段と、 前記第1判別手段により発生対象文字パターンがキャッ
シュされていないと判別された場合、発生対象文字パタ
ーンを構成する部首パターンの中の対象とする部首パタ
ーンがキャッシュされているか否かを判別する第2判別
手段と、 前記第2判別手段により対象とする部首パターンがキャ
ッシュされていないと判別された場合、対象とする部首
パターンを構成するストロークパターンの中の対象とす
るストロークパターンがキャッシュされているか否かを
判別する第3判別手段と、 前記第3判別手段により対象とするストロークパターン
がキャッシュされていないと判別された場合、対象とす
るストロークパターンに対応するストロークデータに基
づきストロークパターンを発生させ、前記第3判別手段
により対象とするストロークパターンがキャッシュされ
ていると判別された場合、キャッシュされているストロ
ークパターンに基づき部首パターンを発生させ、前記第
2判別手段により対象とする部首パターンがキャッシュ
されていると判別された場合、キャッシュされている部
首パターンに基づき文字パターンを発生させる発生手段
と、を有することを特徴とする文字パターン発生装置。
1. A character pattern generating apparatus for generating a stroke pattern based on stroke data, generating a radical pattern based on the stroke pattern, and generating a character pattern based on the radical pattern, wherein the character pattern to be generated is cached First determining means for determining whether or not the character pattern to be generated is not cached; and determining whether the character pattern to be generated in the radical pattern constituting the character pattern to be generated is not cached by the first determining means. Second determining means for determining whether or not the radical pattern to be cached is provided; and determining that the target radical pattern is not cached by the second determining means, The target stroke pattern among the constituent stroke patterns is cached A third discriminating means for discriminating whether or not the target stroke pattern is not cached by the third discriminating means; and generating a stroke pattern based on the stroke data corresponding to the target stroke pattern. When it is determined by the third determining means that the target stroke pattern is cached, a radical pattern is generated based on the cached stroke pattern, and the target radical pattern is generated by the second determining means. Generating means for generating a character pattern based on the cached radical pattern when it is determined that the pattern is cached.
【請求項2】 前記発生手段により発生させたストロー
クパターン,部首パターンまたは、文字パターンがキャ
ッシュバッファにキャッシュできるか否かを判定し、キ
ャッシュできないと判定された場合、キャッシュされて
いるデータよりも優先度が高いか否かを判定し、優先度
が低いと判定された場合、キャッシュしないことを特徴
とする請求項1記載の文字パターン発生装置。
2. A method for determining whether a stroke pattern, a radical pattern, or a character pattern generated by the generating means can be cached in a cache buffer. 2. The character pattern generation device according to claim 1, wherein it is determined whether the priority is high or not, and if the priority is low, no cache is performed.
【請求項3】 前記ストロークパターンまたは部首パタ
ーンは、発生させたストロークパターンまたは部首パタ
ーンをオフセット分シフトする前にキャッシュされるこ
とを特徴とする請求項1記載の文字パターン発生装置。
3. The character pattern generator according to claim 1, wherein the stroke pattern or radical pattern is cached before shifting the generated stroke pattern or radical pattern by an offset.
【請求項4】 前記ストロークパターンまたは部首パタ
ーンは、発生させたストロークパターンまたは部首パタ
ーンをオフセット分シフトした後にキャッシュされるこ
とを特徴とする請求項1記載の文字パターン発生装置。
4. The character pattern generator according to claim 1, wherein the stroke pattern or radical pattern is cached after shifting the generated stroke pattern or radical pattern by an offset.
【請求項5】 ストロークデータに基づきストロークパ
ターンを発生させ、ストロークパターンに基づき部首パ
ターンを発生させ、部首パターンに基づき文字パターン
を発生させる文字パターン発生方法であって、 発生対象文字パターンがキャッシュされているか否かを
判別する第1判別ステップと、 前記第1判別ステップにより発生対象文字パターンがキ
ャッシュされていないと判別された場合、発生対象文字
パターンを構成する部首パターンの中の対象とする部首
パターンがキャッシュされているか否かを判別する第2
判別ステップと、 第2判別ステップにより対象とする部首パターンがキャ
ッシュされていないと判別された場合、対象とする部首
パターンを構成するストロークパターンの中の対象とす
るストロークパターンがキャッシュされているか否かを
判別する第3判別ステップと、 前記第3判別ステップにより対象とするストロークパタ
ーンがキャッシュされていないと判別された場合、対象
とするストロークパターンに対応するストロークデータ
に基づきストロークパターンを発生させ、前記第3判別
ステップにより対象とするストロークパターンがキャッ
シュされていると判別された場合、キャッシュされてい
るストロークパターンに基づき部首パターンを発生さ
せ、前記第2判別ステップにより対象とする部首パター
ンがキャッシュされていると判別した場合、キャッシュ
されている部首パターンに基づき文字パターンを発生さ
せる発生ステップと、を有することを特徴とする文字パ
ターン発生方法。
5. A character pattern generating method for generating a stroke pattern based on stroke data, generating a radical pattern based on the stroke pattern, and generating a character pattern based on the radical pattern, wherein the character pattern to be generated is cached A first discriminating step of discriminating whether or not the character pattern to be generated is not cached by the first discriminating step; The second to determine whether the radical pattern to be cached
If the determination step and the second determination step determine that the target radical pattern is not cached, whether the target stroke pattern among the stroke patterns constituting the target radical pattern is cached A third determining step of determining whether or not the target stroke pattern is not cached in the third determining step; generating a stroke pattern based on stroke data corresponding to the target stroke pattern; If it is determined in the third determining step that the target stroke pattern is cached, a radical pattern is generated based on the cached stroke pattern, and the target radical pattern is generated in the second determining step. Is cached If it is determined that the character pattern generating method characterized by comprising: a generating step of generating a character pattern on the basis of a radical pattern being cached, the.
【請求項6】 前記発生ステップにより発生させたスト
ロークパターン、部首パターン、または、文字パターン
がキャッシュバッファにキャッシュできるか否かを判定
し、キャッシュできないと判定された場合、キャッシュ
されているデータよりも優先度が高いか否かを判定し、
優先度が低いと判定された場合、キャッシュしないこと
を特徴とする請求項5記載の文字パターン発生方法。
6. A determination is made as to whether the stroke pattern, radical pattern, or character pattern generated in the generating step can be cached in a cache buffer. Also determines whether the priority is high,
6. The character pattern generating method according to claim 5, wherein when it is determined that the priority is low, the cache is not cached.
【請求項7】 前記ストロークパターンまたは部首パタ
ーンは、発生させたストロークパターンまたは部首パタ
ーンをオフセット分シフトする前にキャッシュされるこ
とを特徴とする請求項5記載の文字パターン発生方法。
7. The method according to claim 5, wherein the stroke pattern or radical pattern is cached before shifting the generated stroke pattern or radical pattern by an offset.
【請求項8】 前記ストロークパターンまたは部首パタ
ーンは、発生させたストロークパターンまたは部首パタ
ーンをオフセット分シフトした後にキャッシュされるこ
とを特徴とする請求項5記載の文字パターン発生方法。
8. The character pattern generating method according to claim 5, wherein the stroke pattern or radical pattern is cached after shifting the generated stroke pattern or radical pattern by an offset.
JP5354303A 1993-12-30 1993-12-30 Character pattern generation device and character pattern generation method Expired - Fee Related JP3025739B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP5354303A JP3025739B2 (en) 1993-12-30 1993-12-30 Character pattern generation device and character pattern generation method
EP94309752A EP0661669B1 (en) 1993-12-30 1994-12-23 Character processing apparatus and method
DE69426758T DE69426758D1 (en) 1993-12-30 1994-12-23 Arrangement and method for processing character patterns
US08/362,986 US5734748A (en) 1993-12-30 1994-12-23 Character pattern generation apparatus and method
TW083112195A TW282526B (en) 1993-12-30 1994-12-27
CN94120762A CN1102278C (en) 1993-12-30 1994-12-30 Character pattern generation apparatus and method
KR1019940039768A KR0185245B1 (en) 1993-12-30 1994-12-30 Character pattern generation apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5354303A JP3025739B2 (en) 1993-12-30 1993-12-30 Character pattern generation device and character pattern generation method

Publications (2)

Publication Number Publication Date
JPH07195739A JPH07195739A (en) 1995-08-01
JP3025739B2 true JP3025739B2 (en) 2000-03-27

Family

ID=18436633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5354303A Expired - Fee Related JP3025739B2 (en) 1993-12-30 1993-12-30 Character pattern generation device and character pattern generation method

Country Status (1)

Country Link
JP (1) JP3025739B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5664169B2 (en) * 2010-11-24 2015-02-04 株式会社リコー Thermal media drawing device

Also Published As

Publication number Publication date
JPH07195739A (en) 1995-08-01

Similar Documents

Publication Publication Date Title
KR0167618B1 (en) Character generating apparatus and method of the same
KR0185245B1 (en) Character pattern generation apparatus and method
KR970008546B1 (en) Character or graphic processing method
JP2909273B2 (en) Outline font line width adjusting method and apparatus
JPH08160931A (en) Device and method for character generation
US5388166A (en) Image drawing apparatus
JP3025739B2 (en) Character pattern generation device and character pattern generation method
JP2774653B2 (en) Character processor
JPH02270019A (en) Generation system for high quality character pattern
JP3471939B2 (en) Character pattern generating apparatus and method
JP3146771B2 (en) Font rasterizing apparatus and method
JPH10143134A (en) Method for forming and storing characters and apparatus therefor
JP3408176B2 (en) Font processing apparatus, font processing method, and storage medium
JP2806679B2 (en) Character generator
JPH02266480A (en) High quality character pattern generating system
JP3191409B2 (en) Font data generator
JP3827255B2 (en) Information processing system and method, and contour data processing apparatus and method
JPH07160242A (en) Character generator
JP3210448B2 (en) Character processing method and apparatus
JPH07160241A (en) Character generator
JPH0721397A (en) Paint-out plotting method for polygon
JPH08286655A (en) Character pattern generator
JPH03278190A (en) Polygon painting-out system
JP2000222569A (en) Plotter
JPH03288894A (en) Document preparing device

Legal Events

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