JP2001109455A - アウトラインスムージング処理方法ならびにその装置 - Google Patents
アウトラインスムージング処理方法ならびにその装置Info
- Publication number
- JP2001109455A JP2001109455A JP28721899A JP28721899A JP2001109455A JP 2001109455 A JP2001109455 A JP 2001109455A JP 28721899 A JP28721899 A JP 28721899A JP 28721899 A JP28721899 A JP 28721899A JP 2001109455 A JP2001109455 A JP 2001109455A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- line
- outline
- dot
- data
- 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.)
- Granted
Links
- 238000009499 grossing Methods 0.000 title claims abstract description 33
- 238000003672 processing method Methods 0.000 title claims description 16
- 239000013598 vector Substances 0.000 claims abstract description 303
- 238000012545 processing Methods 0.000 claims abstract description 129
- 238000012937 correction Methods 0.000 claims abstract description 94
- 230000008859 change Effects 0.000 claims abstract description 33
- 238000000034 method Methods 0.000 claims description 67
- 239000011159 matrix material Substances 0.000 claims description 51
- 230000008569 process Effects 0.000 claims description 48
- 238000006243 chemical reaction Methods 0.000 claims description 30
- 238000000605 extraction Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000001172 regenerating effect Effects 0.000 claims 1
- 230000015654 memory Effects 0.000 abstract description 23
- 238000010586 diagram Methods 0.000 description 38
- 238000004422 calculation algorithm Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 9
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000010422 painting Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 238000005429 filling process Methods 0.000 description 2
- 238000007591 painting process Methods 0.000 description 2
- 102100033040 Carbonic anhydrase 12 Human genes 0.000 description 1
- 101000867855 Homo sapiens Carbonic anhydrase 12 Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
- B41J—TYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
- B41J5/00—Devices or arrangements for controlling character selection
- B41J5/30—Character or syllable selection controlled by recorded information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/22—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
- G09G5/24—Generation of individual character patterns
- G09G5/28—Generation of individual character patterns for enhancement of character form, e.g. smoothing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Controls And Circuits For Display Device (AREA)
- Dot-Matrix Printers And Others (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
再現する。 【解決手段】 文字フォントメモリ14に用意されたビ
ットマップデータを、フォント加工装置(CPU11)
で一旦ベクトルデータに置き換え、ベクトルデータ上で
の平滑化により、拡大率が大きくなっても滑らかなフォ
ントを再現する。このために、ビットマップを8方向の
ベクトル(上下左右4方向と斜め4方向)で表現し、連
続する6ベクトルの変化量から最適なベクトル方向を決
定し、更に、6ベクトルの変化量から、ベクトルで表現
しきれない1ドット単位での補正を行なう。
Description
ワープロやパソコンにおける印刷装置または表示装置
等、ビットマップフォントを持つ文字出力装置に用いて
好適な、アウトラインスムージング処理方法ならびにそ
の装置に関する。
は表示する方法に、(1) 対象となる文字データを全
て持つ方法、(2) ビットマップフォントを持ち、拡
大縮小する方法、(3) アウトラインフォントを持
ち、拡大縮小する方法、があった。
ついては、データ量が膨大となり現実的でない。(2)
については、(1)に比べて印刷品質が劣り、その欠点
を解消しようとした場合にはソフトウェアにかかる負担
が大きくなってその処理に時間を要す。
刷装置において、印字品質向上のための処理として、文
字の拡大時における「段差」の平滑化処理がある。ここ
で、「段差」とは、ビットマップフォントの斜め方向に
おいて隣接するドット配列が不連続となり、文字の拡大
に伴ってくずれが生じる部分である。従来は平滑化のた
めにこの「段差」を検出し、拡大時にその「段差」を埋
めるように補正ドットを追加していた。
ドットを多くすると文字の輪郭がくずれてデザインが損
なわれ、また、補正ドットの数を少なくすれば凹凸が残
り、拡大率が大きくなるほど補正のための効果がさほど
得られないという欠点があった。
システム規模が大きくなり、また、データ量も大とな
り、たとえばテープ印刷装置のような比較的規模の小さ
い印刷装置においては、処理時間、価格のいずれかを犠
牲にしていたものである。
めになされたものであり、ビットマップフォントを持つ
印字、表示等のための文字出力装置において、ビットマ
ップフォントを一旦ベクトルデータに置換し、ベクトル
データ上での平滑化により、拡大率が大きくなっても滑
らかなフォントを再現できるアウトラインスムージング
処理方法ならびに装置を提供することを目的とする。
トラインスムージング処理方法は、文字フォントをドッ
トマトリクス状のビットマップデータとして持ち、その
文字フォントを印刷もしくは表示する文字出力装置にお
いて、前記文字フォントの拡大時、そのビットマップデ
ータに基づき一旦ベクトルデータに変換し、前記ビット
マップデータの斜め方向において隣接するデータ配列が
不連続となる部分を含め、前記変換されたベクトルの始
点からそのベクトル方向の終点に向かって新たな線引き
を行ない、内部を塗り潰してビットマップデータの再生
成を行うことを特徴とする。
ムージング処理方法は、同文字出力装置において、前記
ビットマップデータに対し、あらかじめ規定された条件
に従いベクトルの始点となる座標を求める始点検索のた
めの処理工程と、前記始点から順にドットの変化方向を
調べ、上下左右4方向の直交ベクトル行列に変換すると
共に、そのドットがベクトル化済みであることを示すベ
クトル化済み情報を更新する直交ベクトルへの変換のた
めの処理工程と、前記変換された直交ベクトル行列の連
続する複数のベクトルの変化量から、あらかじめ斜線化
すべきパターンが定義される斜線化テーブルを参照して
斜線ベクトル行列に変換する斜線ベクトルへの変換のた
めの処理工程と、加工されたビットマップ座標に対し前
記斜線ベクトル行列の連続する複数のベクトルの変化量
からあらかじめ定義される補正データを参照して前記線
引きを行う座標をドット単位で補正して線引きを行う線
引きのための処理工程と、前記ベクトル化済み情報を参
照して新たな始点がなくなるまで前記始点検索、直交ベ
クトルへの変換、斜線ベクトルへの変換、線引きのため
の各処理工程を繰り返し、生成された線データの内部を
塗り潰す塗り潰しのための処理工程と、を備えて成るこ
とを特徴とする。
スムージング処理装置は、文字フォントをドットマトリ
クス状のビットマップデータとして記憶する記憶装置
と、前記文字フォントの加工時、そのビットマップデー
タに基づき一旦ベクトルデータに変換し、前記ビットマ
ップデータの斜め方向において隣接するデータ配列が不
連続となる部分を含み、前記ベクトルの始点からそのベ
クトル方向の終点に向かって線引きを行ない、内部を塗
り潰してビットマップデータの再生成を行なうフォント
加工装置と、前記再生成されたビットマップデータを印
字もしくは表示する文字出力装置と、を備えたことを特
徴とする。
スムージング処理装置は、文字フォントをドットマトリ
クス状のビットマップデータとして持ち、その文字フォ
ントを印字もしくは表示する文字出力装置において、前
記ビットマップデータに対し、あらかじめ規定された条
件に従いベクトルの始点となる座標を求める始点検索・
決定部と、前記始点から順にドットの変化方向を調べ、
上下左右4方向の直交ベクトル行列に変換すると共に、
そのドットがベクトル化済みであることを示すベクトル
化済み情報を更新する直交ベクトル抽出部と、前記変換
された直交ベクトル行列の連続する複数のベクトルの変
化量から、あらかじめ斜線化すべきパターンが定義され
る斜線化判定テーブルを参照して斜線ベクトル行列に変
換する斜線ベクトル変換部と、加工されたビットマップ
座標に対し前記斜線ベクトル行列の連続する複数のベク
トルの変化量からあらかじめ定義される補正データを参
照して前記線引きを行う座標をドット単位で補正して線
引きを行う線引き処理部と、前記ベクトル化済み情報を
参照して新たな始点がなくなるまで前記各処理部による
始点検索・決定、直交ベクトルの抽出、斜線ベクトルへ
の変換、線引きのための処理を繰り返し、生成された線
データの内部を塗り潰す塗り潰し部と、を備えたことを
特徴とする。
メモリに用意されたビットマップデータを一旦ベクトル
データに置き換え、ベクトルデータ上での平滑化によ
り、拡大率が大きくなっても滑らかなフォントを再現す
ることを特徴とする。このためにビットマップを8方向
のベクトル(上下左右4方向と斜め4方向)で表現し、
連続する6ベクトルの変化量から最適なベクトル方向を
決定し、更に、6ベクトルの変化量から、ベクトルで表
現しきれない1ドット単位での補正を行う。
刷もしくは表示が可能である他、ビットマップフォント
を使用しているため圧縮が可能である。通常、アウトラ
インフォントを搭載する機器においても解像度の低い小
さなサイズの文字を扱う場合、印刷品位劣化のためにビ
ットマップフォントを用いて印字することがあるが、本
発明によれば、文字の大小にかかわらず同じ品質で文字
の印刷が可能となる。
の一実施形態について詳細に説明する。
の内部構成を示すブロック図である。本発明実施形態で
は、文字出力装置としてテープ印刷装置を例示して説明
する。テープ印刷装置は、キー入力した所望の文字など
に基づいて作成した印刷画像をカートリッジ内のテープ
にサーマル方式で印刷すると共にそのテープの印刷部分
を切断してラベルを作成するものである。
本的な構成として、CPUを制御中枢とする制御部1、
キーボードやディスプレイを持ちユーザとのインタフェ
ースとなる操作部2、サーマル式の印刷ヘッドによりテ
ープカートリッジにあるテープに印刷を行う印刷部3か
ら成る。操作部2と印刷部3は、各種ドライバを内蔵し
て各部回路を駆動する駆動部4を介して制御部1に接続
される。操作部2、印刷部3、駆動部4については本発
明の主旨とは直接関係しないためこれ以上の詳細説明は
省略する。
リ12、ワークRAM13、フォントメモリ14、入出
力制御部15から構成され、これら各ブロック11,1
2,13,14,15は、双方向の内部バス16を介し
て共通に接続される。CPU11は、プログラムメモリ
12に格納された後述する各プログラムに従いワークR
AM13を使用して本発明のアウトラインスムージング
処理装置として機能する他、テープ印刷装置全体の制御
を行う。
れ、プログラムによるアウトラインスムージング処理の
経過データが都度書き込まれる。フォントメモリ14に
は、文字等のフォントデータがドットマトリクス状のビ
ットマップ形式で格納され、文字等を特定するコードデ
ータが与えられたときに対応するフォントデータを出力
する。
1の機能を補うとともに、各種周辺回路とのインタフェ
ース信号を扱うための論理回路が、ゲートアレイやカス
タムLSIなどにより構成され組み込まれている。例え
ば、キーボードからの各種指令や入力データなどをその
まま、あるいは加工して内部バス16に取込むととも
に、CPU11と協動してCPU11により内部バス1
6に出力されたデータや制御信号を、そのまま、あるい
は加工して駆動部4に出力する。
メモリ上に展開して示した図である。上述したように、
制御部1はアウトラインスムージング処理装置として機
能し、ここでは、文字フォントの加工時、そのビットマ
ップデータに基づき一旦ベクトルデータに変換し、ビッ
トマップデータの斜め方向において隣接するデータ配列
が不連続となる部分を含み、ベクトルの始点からそのベ
クトル方向の終点に向かって線引きを行なってドット補
正を施し、かつ、内部を塗り潰してビットマップデータ
を再生成して印刷もしくは表示出力を行なうための制御
を行う。
スムージング処理装置(制御部1)は、フォントメモリ
14と、フォント加工装置(CPU11)と文字出力部
20で構成される。フォント加工装置11は、機能的
に、始点検索・決定部111、直交ベクトル抽出部11
2、斜線ベクトル化変換部113、線引き処理部11
4、塗り潰し処理部115、線幅補正処理部116で構
成される。これら各ブロック111〜116は後述する
ロジックに従うプログラムによって動作する。
リ14にあるビットマップデータに対し、あらかじめ規
定された条件に従いベクトルの始点となる座標を求め、
直交ベクトル抽出部112に供給する。直交ベクトル抽
出部112は、始点検索・決定部111によって出力さ
れる始点座標から順にドットの変化方向を調べ、上下左
右4方向の直交ベクトル行列に変換すると共に、そのド
ットがベクトル化済みであることを示すベクトル化済み
情報(フラグメモリ131)の内容を更新する。
直交ベクトル行列の連続する6ベクトルの変化量から、
あらかじめ斜線化すべきパターンが定義される斜線化判
定テーブル132の内容を参照して斜線ベクトル行列に
変換して線引き処理部114へ供給する。
ビットマップ座標に対し斜線ベクトル行列の連続する6
ベクトルの変化量からあらかじめ定義される補正データ
を参照して線引きを行う座標をドット単位で補正し、補
正されたアウトライン座標間を線で結ぶ。線引き処理部
114は、変換されたベクトル行列から基準となるアウ
トライン座標を求める基準アウトライン演算部と、連続
したベクトル値のパターンによってあらかじめ定義され
る補正データが設定される補正テーブルと、前記補正テ
ーブルを参照することにより前記基準となるアウトライ
ン座標を補正し、この補正されたアウトライン座標間を
線で結ぶ線分生成部を備えている。ここでアウトライン
座標として、外枠用線と塗り潰し用線の2種類が生成さ
れる。
ン座標補正を行うことにより得られるフィルラインの内
側を塗り潰した後、フォント外枠が描画されているワー
クメモリ13のアウトライン用描画領域ならびにフィル
ライン用描画領域(いずれもビットマップ領域134)
に展開された内容を論理和演算して重ね合わせる処理を
行う。
14によって生成されたビットマップデータを追って定
義するXY両方向にそれぞれ1ドット分削除することに
よってベクトル化によりXY方向に1ドット分太くなっ
たビットマップの線幅補正を行う。
ビットマップ領域134からから所望のビットマップを
読み出しドット展開して入出力制御部15、駆動部4を
介し印字部3に出力する。
細なロジックはフローチャートを使用して以降詳細に説
明する。
る座標とビットマップデータの定義について図3を参照
しながら説明する。図3では、座標とビットマップの定
義を(a)に、ベクトルの定義を(b)に示してある。
義し、以降で座標値を表す場合、[X,Y]で表記す
る。また、便宜上、Xの正方向を「右」、負方向を
「左」、Yの正方向を「下」、負方向を「上」と表現す
る。ビットマップデータは、白が0x0(「0」を16
進表記したもの),黒が0x1(「1」を16進表記し
たもの)とし、与えられたビットマップデータの座標外
([0,−1]など)は白(0x0)であるとする。
ように定義される。すなわち、ベクトルは上下左右0〜
7の8方向で表現され、従って下に示すように表記され
るものとする。尚、ベクトルの1と5、3と7は1文字
では区別できないため、脇に「’」または「.」を付し
て区別するものとする。
53に(a)で示されるように、ベクトルは有向線分O
Pで表され、ベクトルを太字表現するのが一般的である
が、ここでは↑aで表記する。また、図53に(b)で
示すように、X−Y座標上のベクトル↑vは、基本ベク
トル↑i、↑jを使用して、↑v=x・↑i+y・↑j
で表される。ここでは単に↑vと表記する。また、図5
3に(c)で示すように、各方向ベクトルを定義し、そ
れぞれが行列に置換される。この各ベクトルの集合をベ
クトル空間、ベクトル群といい、↑vctと表すことと
する。
た回転角度は以下のようになる。 ∠(↑a)=0,∠(↑b)=π/4,∠(↑c)=π
/2,∠(↑d)=3π/4,∠(↑e)=π,∠(↑
b)=π/4 (↑f)=5π/4,∠(↑g)=3π/2,∠(↑
h)=7π/4 各ベクトル間の回転角度は、上記各値の減算で求めら
れ、∠(↑f−↑d)=∠(↑f)−π/4∠(↑d)
=π/2となる。
め、各ベクトルに「シンボル」として、0〜7の数字を
割り当てる。すなわち、以下のような割り当てがなされ
る。 ↑a→“0” ↑b→“1” ↑c→“2” ↑d→
“3” ↑e→“4” ↑f→“5” ↑g→“6” ↑h→“7” この場合、上述した↑vctは以下のようになる。 ↑vct={↑a,↑b,↑c,↑d,↑e,↑f,↑
g,↑h,} ={0,1,2,3,4,5,6,7} ベクトル群↑vctのn番目のベクトルは、↑vct
[n]と表記し、例えば、↑vct[2]=↑c=
“2”となる。
タの流れをフローチャートで示した図である。以下、動
作の流れを概略説明する。
ォントメモリ14から読み出されたビットマップデータ
に対し、ベクトルの始点候補となる座標を求める。ま
た、そのビットマップと後述するベクトル化済み情報か
ら新たなベクトルの始点座標を求め、その始点座標を都
度直交ベクトル抽出部112へ渡す(ステップS41,
S42)。
ットマップをスキャンし、上下左右4方向の直交ベクト
ル行列に置換することにより始点から1周分の直交ベク
トルを抽出し、抽出された直交ベクトル行列を斜線ベク
トル変換部113へ渡す(ステップS43)。斜線ベク
トル変換部113は、得られた直交ベクトル行列の連続
する6ベクトルの変化量から後述する斜線化判定テーブ
ル132を参照し、斜線ベクトル行列に変換し、線引き
処理部114に処理を委ねる(ステップS44)。この
時点で上下左右4方向に斜め4方向を加えた8方向のベ
クトルになる。
らアウトラインを作成するもので、拡大加工したビット
マップ座標に対してベクトルを辿って線を引く際、得ら
れた斜線ベクトル行列の連続する6ベクトルの変化量か
ら後述する補正テーブル133を参照し、線を引く座標
を1ドット単位で補正する(ステップS45)。ここ
で、線は外枠用線と塗り潰し用の線の2種類を作成し、
この線データは、全ての始点に対する処理が終了するま
でワーク用ビットマップ領域134に保持される。この
ように、斜線ベクトルからアウトライン座標に補正を加
えて線引きを行う。そして、再度ベクトル始点の検索
(ステップS41)を行い、新たな始点が無くなるまで
上述したステップS41〜S45に示す処理を繰り返
し、塗り潰し処理部115へ処理を委ねる。
14により生成される塗り潰し用の線の内部を塗り潰し
た後、外枠用の線と重ね合わせる(ステップS46)。
線幅補正処理部116は、ベクトル化により全体に線幅
が太くなるため縦横1ドット線を細くするための処理を
行う(ステップS47)。
1)から線幅補正処理(ステップS47)に至る処理の
詳細について図5〜図10に示す詳細フローチャートを
参照しながら説明する。
検索・決定のための処理(図4におけるステップS4
1,S42)から説明する。
がフローチャートで示されている。ここでは、まず、座
標[0,0]から始点検索を開始する(ステップS41
1)。そして、X方向に座標をスキャンし、1ドットず
つ始点の条件に合うか否かをチェックする(ステップS
412)。
([X,Y])が黒、1ドット前([X−1,Y])が
白であって、フラグメモリ131に設定されてあるベク
トル化済み情報の対応するドットがセットされていな
い、いわゆる未だベクトル化が済んでいないドットを始
点とする。尚、フラグメモリ131に設定されるベクト
ル化済み情報は、後述する直交ベクトル抽出処理(ステ
ップS43)において更新される。初期値は全てクリア
されているものとする。
始点とし、後述する直交ベクトルの抽出処理に進む。こ
こで、始点が見つからなければYを+1(Yが端の座標
まで到達しているときにはXを+1、Y=0に)更新し
て(ステップS413)、ステップS411以降の処理
を繰り返す。
マップを参照しながら説明する。図11において、
(a)は1回目、(b)は2回目、(c)は3回目の始
点検索の場合におけるビットマップとベクトル化済み情
報のそれぞれを示している。
おけるベクトル化済み情報が全てクリアされているた
め、最初に「白→黒」となり、ここでは[6,2]が始
点となる。2回目の検索の場合、[6,2]に対する直
交ベクトル化により、「ベクトル化済み情報」が更新さ
れている。「白→黒」となるドット[6,3][6,
4][6,5][6,6]等はベクトル化済み情報がセ
ットされているため始点にはならない。従って、条件に
合う最初のドット[15,5]が始点となる。3回目の
検索の場合、1,2回目の直交ベクトル化により、「白
→黒」となるドットは全て「ベクトル化済み情報」とし
てフラグメモリ131にセットされる。従って、3回目
の始点は無しと判断され、後述する塗り潰し処理(ステ
ップS46)に進む。
交ベクトルへの変換処理(図4ステップS42)につい
て詳細に説明する。図6に直交ベクトル変換処理のため
の手順がフローチャートで詳細に示されている。
ながら詳細に説明する。直交ベクトルへの変換処理と
は、ビットマップを直交ベクトル値(→、↓、←、↑の
4種)に変換する処理をいい、始点から順にドットの変
化方向を調べ、ベクトル化されたデータは、↑VCT=
[0,0,2,4,....]のような行列となって位
置情報は無くなる。
プS431)。次にベクトル化するドット位置を始点か
らベクトル方向に移動(ステップS432)して移動し
たドット位置の周辺ドットを調べ、ベクトル値を決める
(ステップS433)。そして、ベクトル化するドット
位置をベクトル方向に移動(ステップS434)してベ
クトル化したドット位置が始点候補になり得る場合(ス
テップS435)、ベクトル化済み情報をセットし(ス
テップS436)、そうでなければ、ドット位置の移動
以降(ステップS432〜S435)を繰り返す。
示す<表1>に従って決定し、ドット位置を始点からベ
クトル方向に移動する。ここでは、現位置ドットに対し
てベクトル値を決定するものであり、1つ前のベクトル
値からベクトル検索方向パターン順序を決め、その順序
に従い各ベクトル検索方向のパターンの条件を調べ、最
初に一致した条件に対応する値をベクトル値としてい
る。図13に、1つ前のベクトルと検索順位の関係が、
図14に検索順位と検索方向パターンの条件との関係
が、それぞれ、<表2><表3>として示されている。
0と4、また、2と6が決定される条件は両立する。従
って、検索条件に従って処理を進めないと正しいベクト
ルは得られない。ここでの検索順序は、ベクトルが「左
に回転する方を優先」するように決められている。
“6”である場合、上方向へ移動したドットは始点候補
となる。従って、始点の検索処理でこのドットは除外す
る必要があるため、フラグメモリ131に「ベクトル化
済み情報」としてセットする。ベクトル方向へのドット
移動は、図15に示す<表4>に従う。つまり、<表4
>に従いベクトル化を行うドット座標位置を移動する。
そして、ベクトル化するドット位置が始点に戻るまで上
述したステップS432〜S436の処理を繰り返す
(ステップS437)。
を説明する。対応する「ベクトル化済み情報」は、上述
した始点検索の例として示し、(a)は1回目の始点検
索時、(b)は2回目の始点検索時における、それぞれ
の直交ベクトルデータ、直交ベクトル変換終了時におけ
る「ベクトル化済み情報」が示されている。1回目は始
点[6,2]、直交ベクトルデータ↑VCT1=[0,
0,0,0,0,0,0,0,0,2,0,0,2,
0,2,0,2,2,0,2,2,2,2,2,2,
2,2,4,2,2,4,2,4,2,4,4,2,
4,4,4,4,4,4,4,4,4,6,6,6,
6,6,6,6,6,6,6,6,6,6,6,6,
6,6,6]、2回目は、始点[15,5]、直交ベク
トルデータ↑VCT2=[4,4,4,4,4,4,
2,2,2,2,2,2,2,2,2,2,2,2,
0,0,0,0,0,0,6,0,6,0,6,6,
6,6,6,6,6,6,4,6,4,6]となる。
斜線ベクトルへの変換処理について説明する。図7に斜
線ベクトル変換のための処理手順がフローチャートで示
されている。以下、図7に示すフローチャートを参照し
ながら斜線ベクトル変換処理について詳細に説明する。
{ ... ,VCT[n−2],VCT[n−1],V
CT[n],VCT[n+1],VCT[n+2],
... }において、VCT[n−2]とVCT[n−
1]や、VCT[n]とVCT[n+1]などの連続す
る2つのベクトル要素の変化方向につき、図17に示す
<表5>のように定義する。尚、同じ値である場合には
同方向と定義する。
素は、連続しているものとする。例えば、ベクトル行列
↑VCT={VCT[0],VCT[1], ... ,
VCT[n−2],VCT[n−1],VCT[n]}
において、VCT[n]とVCT[0]は連続した要素
である。
{ ... ,VCT[n−2],VCT[n−1],V
CT[n],VCT[n+1],VCT[n+2],V
CT[n+3], ... }において、VCT[n−
2]=Vn2(2つ前の直交ベクトル),VCT[n−
1]=Vn1(1つ前の直交ベクトル),VCT[n]
=V0(現直交ベクトル),VCT[n+1]=V1
(1つ先の直交ベクトル),VCT[n+2]=V2
(2つ先の直交ベクトル),VCT[n+3]=V3
(3つ先の直交ベクトル)と定義する。
ルの左方向変化個所で条件に合う場合、斜線ベクトル
(右上ベクトル、右下ベクトル、左下ベクトル、左上ベ
クトル)に置換する機能を持つ。置換の様子を図18に
<表6>として示す。ここでの処理は、2直交ベクトル
を1斜線ベクトルに変換するため、変換した分だけベク
トルが少なくなる。
ち、まず、連続したベクトル要素Vn2〜V3について
変化方向を調べ、V0→V1が左回転で、かつ、各ベク
トル要素の変化が図19に<表7>で示す条件に一致し
た場合にV0とV1を斜線ベクトルに変換する。上述し
た変換条件をV0=「↓」のときのベクトルパターンと
したのが図20に<表8>として示してある。
る。直交ベクトル抽出部112によって作成された直交
ベクトル行列に対して斜線化条件を調べ、新たな斜線化
ベクトル行列に出力するものである。斜線化されたベク
トルは、次の斜線化条件には影響しない。
ベクトル演算のための処理の流れを説明する。ベクトル
演算は直交ベクトル行列の先頭位置から開始する(ステ
ップS441)。Vn2〜V2の位置は↑VCT={V
0,V1,V2, ... ,Vn2,Vn1}となる。
次に、V0→V1の回転方向を調べる(ステップS44
2)。ここで、左回転ならばステップS444以降の処
理に進み、左回転以外の場合、現直交ベクトル値V0を
斜線化ベクトル値とし、検査する直交ベクトル行列の要
素位置を次のベクトルに移動する(ステップS44
3)。
{V0,V1,V2, ... ,Vn2,Vn1}か
ら、↑VCT={Vn1,V0,V1,V2, ...
,Vn2}のように1つシフトする。
クトルの変化方向を以下の演算式(1)により算出す
る。 dr(V[n−1]→V[n])= (V[n]−V[n−1]+10)AND 0x07 …(1) 演算の結果、“0”は左回転、“2”は同方向、“4”
は右回転、“6”は反対(ありえない)を意味する。
け、以下の演算式(2)(3)に従い重み付けを行う
(ステップS445)。 ・後方向の変化重みW1= {dr(V1−V2)×3+dr(V2→V3)}/2、 …(2) ・前方向の変化重みW2= {dr(Vn1−V0)×3+dr(Vn2→Vn1)}/2 …(3)
定テーブル132の値を調べる(ステップS446)。
ここで、値を調べ(ステップS447)、“1”の場
合、現ベクトルを斜線化して斜線化ベクトル行列に入れ
る。演算式は以下の(4)に従う。 斜線化ベクトル値=(現ベクトル値+0x07)AND 0x07 …(4)
は“1”、“4”は“3”、“6”は“5”に変換され
る。また、斜線化対象になった直交ベクトル配列要素の
次の要素は斜線化ベクトルに含まれるため、検査する直
交ベクトル行列の要素位置を2つ移動する(ステップS
448)。
値V0を斜線化ベクトル値とし、検査する直交ベクトル
行列の要素位置を次のベクトルに移動する(ステップS
449)。そして、直交ベクトルの先頭位置に戻るまで
上述したステップS441〜ステップS449までの処
理を繰り返す(ステップS450)。
の移動処理に関し、直交ベクトル行列の最後のベクトル
と先頭ベクトルが斜線化対象となった場合(↑VCT=
{V1,V2, ... ,Vn2,Vn1,V0}にお
いてV0−V1が斜線化される場合)、斜線化ベクトル
行列に入れた先頭ベクトルを削除し、始点座標から、削
除した先頭ベクトル方向に移動した座標を新たな始点と
する。
に示す。斜線化判定テーブル132には、上述したよう
に重み付け演算して得られるw1,w2が示す値に対し
て斜線化するか否かのデータが設定される。このテーブ
ル値を変更することによって斜線化するパターンを変更
できる。
しながら説明する。図22において、(a)は、1回目
の始点決定時、(b)は、2回目の始点決定時における
斜線化ベクトルデータが示されている。
ルデータ↑VCT1B=[0,0,0,0,0,0,
0,0,0,1,0,1,1,2,1,2,2,2,
2,2,2,2,2,3,2,3,3,4,3,4,
4,4,4,4,4,4,4,4,6,6,6,6,
6,6,6,6,6,6,6,6,6,6,6,6,
6,6]である。
化ベクトルデータ↑VCT2B=[4,4,4,4,
4,2,2,2,2,2,2,2,2,2,2,2,
2,0,0,0,0,0,7,7,7,6,6,6,
6,6,6,5,5,5]となっている。
斜線化され削除された先頭ベクトルは“4”、従って、
始点は[−1,0]移動し、新始点は[14,5]にな
る。
正を含む線引き処理(図4におけるステップS45)に
ついて説明する。ここで、線引き処理は、アウトラン座
標補正のための処理と、補正によって選られる座標間の
線引きするまで処理を含むものとする。図8に線引き処
理のための処理手順がフローチャートで示されている。
以下、フローチャートを参照しながら詳細に説明する。
から説明する。ここでは、基のビットマップから抽出さ
れた斜線化ベクトル行列から、ベクトルの始点、終点座
標を求め、X方向、Y方向に拡大した新たなビットマッ
プ領域(ワーク用ビットマップ134)にアウトライン
(線)を描画する。ベクトルの始点、終点座標は、斜線
化ベクトル領域の連続する6つの要素を参照することに
よって1ドット単位で補正を加えるものである。ここで
はアウトラインとして、外枠用線と塗り潰し用線の2種
類を作成する。従って、拡大加工処理のためのビットマ
ップ領域を2つ必要とする。
ウトライン座標を決める(ステップS451)。ここで
は、補正データを参照する前の基準となるアウトライン
座標を求めるために演算を行う。
X、BYとし、元の始点をX0,Y0とした場合、拡大
加工後の始点[X1,Y1]は、[BX×X0,BY×
Y0]で求める。以降の基準アウトライン座標の演算
は、前の座標(最初は始点座標)から斜線化ベクトル値
に応じた移動量を加えた値を次の座標位置とする。斜線
化ベクトル値と移動量の関係を図23に<表9>として
示す。
すなわち、斜線化ベクトル変換部113により作成され
た斜線化ベクトル行列を、BX=2,BY=3で拡大し
たアウトライン座標は、始点座標[X0,Y0]を
[6,2]、斜線化ベクトル行列↑VCT1B=[0,
0,0,0,0,0,0,0,0,1,0,1,1,
2,1,2,2,2,2,2,2,2,2,3,2,
3,3,4,3,4,4,4,4,4,4,4,4,
4,6,6,6,6,6,6,6,6,6,6,6,
6,6,6,6,6,6,6]として、拡大後の始点座
標[X1,Y1]は[12,6]となり、始点座標以降
の座標演算は図24に<表10>で示すようになる。
るためには、図25に<表11>として示す座標間に順
に線引きを行うことになる。しかしながら、これだけで
は単に斜め線を45度方向にしただけであって、ビット
マップデータは滑らかにならない。そこで、以下に説明
するように、各座標を前後のベクトルデータを参照する
ことにより、1ドット座標単位で補正を加えてより滑ら
かなビットマップデータとなるように配慮がなされてい
る。
決めた後、ステップS452以降の補正データによる基
準座標の補正処理が行われる。ここでは上述のようにし
て求めた基準アウトライン座標に対し、前後のベクトル
値を参照して補正データにより補正を加えた線引き用ア
ウトライン座標を求める。補正には、基準座標をそのま
ま線引き用座標とする「補正なし」と、その基準座標は
線引きに使用せず、次回以降の線引き処理に含める「ス
キップ」と、基準座標に対し、1ドット単位で座標位置
を移動する「ドット補正」の3種類がある。尚、補正デ
ータは前後のベクトル値のパターンによって個々に決め
られた値であって補正テーブル133にその値が設定さ
れる。
する。説明に先立ち、現ベクトルとその周辺ベクトルを
以下のように定義する。すなわち、斜線化ベクトル行列
↑VCTB={ ... ,VCTB[n−3],VCT
B[n−2],VCTB[n−1],VCTB[n],
VCTB[n+1],VCT[n+2], ... }に
おいて、連続する6つのベクトル要素、VCTB[n−
3]をVn3(3つ前のベクトル)、VCTB[n−
2]をVn2(2つ前のベクトル),VCTB[n−
1]をVn1(1つ前のベクトル),VCTB[n]を
V0(現ベクトル),VCTB[n+1]をV1(1つ
先のベクトル),VCTB[n+2]をV2(2つ先の
ベクトル)と定義する。
クトル(0,2,4,6)か斜線化ベクトル(1,3,
5,7)かを調べる。直交ベクトルの場合、フラグa0
を“0”とし、斜線ベクトルの場合、フラグa0を
“1”にセットする。
向を以下の演算式(5)により算出する(ステップS4
52)。 dr(V(n−1)→V(n))= (V(n)−V(n−1)+10)AND 0x07 …(5) ここで、drの演算結果が“0”のとき左回転、“1”
のとき左45度回転、“2”のとき同方向、“3”のと
き右45度回転、“4”のとき右回転、“5”のとき右
135度回転(ありえない)、“6”のとき反対(あり
えない)、“7”のとき左135度回転(ありえない)
とする。
トルに対応する補正データが設定されたテーブル132
のアドレスaddrを算出する(ステップS453)。 addr= 1250×dr(V1→V2)+250×dr(V0→V1)+ 125×a0+25×dr(Vn3→Vn2)+5×dr(Vn1→V0) …(6 )
のデータとして求める。ここで補正データHは、“0”
〜“8”の9値をとるものとする。Hが“0”の場合、
「補正なし」(ステップS456)、Hが“8”の場
合、現ベクトルにより決められた基準座標は線引きに使
用せず、次回以降の線引き処理に含める「スキップ」
(ステップS458)、Hが“1”〜“7”の場合、後
述するアウトライン座標補正処理を行い1ドット単位で
座標位置を補正する。補正データHと補正方向の関係
は、図26に<表12>として示されている。
明する。補正の方向Hdrは、以下の演算式(6)を演
算することにより決定する(ステップS457)。 Hdr=(H+V0+7)AND 7 …(6)
Y方向の補正ドット数を求める(ステップS459)。
ここで、HX、HYは、拡大倍率毎に定める補正ドット
数であり、補正後に隣の線とつながってしまわないよう
に拡大倍率の1/2以下とする。図28に<表14>と
して倍率毎の補正ドット数が参考値として示されてい
る。現ベクトルによって確定された基準座標に対して補
正ドット数だけ移動した座標を線引き用座標とする(ス
テップS480)。
を格納しているテーブル132のアドレスを求めている
にすぎず、ここでは、補正データそのものは計算で求め
ておらず、連続したベクトル値のパターンによって個々
に補正データを決めておき、その補正データの集合体で
ある補正テーブル132を参照する形式を採用してい
る。これは、例えば、フォント書体別に補正データを差
し替えることによって書体の特徴を生かしたアウトライ
ンスムージング処理を可能にするものである。
する。図29に<表15>として示す例は、始点座標
[X0,Y0]を[6,2]、斜線化ベクトル行列↑V
CT1B=[0,0,0,0,0,0,0,0,0,
1,0,1,1,2,1,2,2,2,2,2,2,
2,2,3,2,3,3,4,3,4,4,4,4,
4,4,4,4,4,6,6,6,6,6,6,6,
6,6,6,6,6,6,6,6,6,6,6]、X方
向3倍、Y方向4倍の拡大文字につき、X方向補正ドッ
ト値“1”、Y方向補正ドット値“2”で線引きするケ
ースを例示している。表中、LINE{(X1,Y1)
−(X2,Y2)}は、座標(X1,Y1)−(X2,
Y2)間に線を引くための処理を示す。また、LINE
SKIPは、線を引く処理をスキップすることを示
す。
[14,5]、斜線化ベクトルデータ↑VCT2B=
[4,4,4,4,4,2,2,2,2,2,2,2,
2,2,2,2,2,0,0,0,0,0,7,7,
7,6,6,6,6,6,6,5,5,5]、X方向3
倍、Y方向4倍の拡大加工文字につき、X方向補正ドッ
ト値“1”、Y方向補正ドット値“2”で線引きするケ
ースを例示している。
細説明を行う。ここでいう線引き処理は、基のビットマ
ップデータサイズにX,Y方向の拡大率を乗じたサイズ
のデータ領域を2つ確保し、上述したように決められた
線引き用座標の2点間に外枠用線、及び塗り潰し用線と
してドット補間して描画するものである。ここでは、外
枠用線をストロークライン、外枠用描画領域をストロー
ク領域、塗り潰し用線をフィルライン、塗り潰し用描画
領域をフィル領域と呼称して説明を継続する。また、線
を引く対象の2点をP1=(X1,Y1)、P2=(X
2,Y2)とする。
ここでは、ストローク領域にフォント外枠用線として上
述のように決められた線引き用座標の2点間にドットを
補間して描画する。このとき、滑らかな線を得るため
に、線の傾きによっては基準軸を入れ替え(ステップS
482)ドット補間する。
X、Yの変化量の大きい方を基準軸とし、2点間のX,
Yの差分ΔX=ABS(X2−X1)、ΔY=ABS
(Y2−Y1)を求め、ΔX≧ΔYのときX軸基準とし
てX方向をスキャンし、ΔX<ΔYのときY軸を基準と
してY方向をスキャンする。ここでABSは絶対値を求
めるための関数である。
おいて、X1、X2を比較し、X座標の小さいほうから
順にドットを描画する。ここでX1≧X2のとき、P2
→P1順に描画(開始点PS=P2、終了点PE=P
1)し、X1<X2のとき、P1→P2の順に描画(開
始点PS=P2、終了点PE=P2)する。
おいて、Y1、Y2を比較し、Y座標の小さい方から線
を引く。ここで、Y1≧Y2のとき、P2→P1順に描
画(開始点PS=P2、終了点PE=P1)し、Y1<
Y2のとき、P1→P2の順に描画(開始点PS=P
2、終了点PE=P2)する。
間点全てにドットを描画し、描画されるドットは、スト
ローク領域のデータとの論理和(OR)演算とする(ス
テップS483)。
ここでは、フィル領域にフォント塗り潰し用線として、
上述のようにして決められた線引き用座標の2点間にド
ットを補間して描画する。ドット補間のための基準軸は
X方向のみとする。
キャン)は、X1、X2を比較し、X座標の小さい方か
ら順にドットを描画する(ステップS484)。X1≧
X2のときにP2→P1順に描画(開始点PS=P2、
終了点PE=P1)し、X1<X2のとき、P1→P2
の順に描画(開始点PS=P2、終了点PE=P2)す
る。フィルライン処理は、始点、補間点にドットを描画
し、終点は未処理とする。また、描画されるドットは、
フィル領域のデータとの排他的論理和(XOR)演算と
する(ステップS485)。
処理において、2点間に直線を描画するアルゴリズムに
ついて図31〜図41を参照しながら詳細に説明する。
図31に示す<グラフ1>において、2点間(図中★
印)に直線を引く場合、グラフ上に直線を描くかのよう
にメモリ上に小数点付きの値の座標にドットを描画する
ことはできない。実際には、図中、●で示すように、2
点間の直線に最も近い整数値の座標上にドットを補間す
ることになる。
1>として示すアルゴリズムにより順に求めることがで
きる。ここで、補間点群は、(x+x1,y)で表され
る。つまり、xが1ステップカウントされる毎に、小数
点付きの座標値を最も近い整数へ丸める演算(roun
d関数)を行う。図32に示す例では整数への丸め関数
roundを使用したが、これを通常の四則演算に置き
換えた場合は図33に<リスト2>で示すアルゴリズム
が得られる。ここで補間点群は(x,y)である。
実行する場合は別として、ハードウェアで実現しようと
した場合、dy/dxの除算、小数点付き変数1,1/
2との比較などを含んでいることがネックとなる。この
ため、図34または図35に、それぞれ<リスト3><
リスト4>として示すようにアルゴリズムを変形してお
く。図32〜35にリスト表示したアルゴリズムについ
ては本発明要旨と直接関係しないためここでの説明は省
略する。
説明してきた。これは、「xを1ステップカウントイン
クリメントする毎にyを1ステップカウントインクリメ
ントするか否か」という判断をしているためであり、増
分dy/dxが1ステップカウント以上になる場合には
適用できない。試しに、dx<dyの場合で実行してみ
れば図36にグラフ表示(<グラフ2>)したようにな
ってしまう(Y座標正方向=下方向)。
較を繰り返し処理に変更すればよい。このためのアルゴ
リズムは図37に<リスト5>として示すようになる。
このアルゴリズムによって、増分dy/dxが1より大
きい場合でも図38にグラフ表示(<グラフ3>)する
ように直線に最も近い座標点群が得られる。
述したアルゴリズムで問題なく直線生成アルゴリズムに
なる。しかしながら、dxがdyに対してより大きな値
(傾きが急な場合)は、図39にグラフ表示(<グラフ
4>)するように補間されるドットが極端に少なくなっ
てしまう。
有用である。しかしながら、フォント外枠を得るための
線引きとして用いた場合は、図39に示すように、ドッ
トが密の部分とドットが疎の部分と入り混じり奇麗な外
形を持つフォントにはならない。
うにするには、dx,dyの大小によってケース分けを
行う。dx<dyの場合は、ちょうどX軸とY軸を入れ
替えて演算するような処理を行う。つまり、yを1ステ
ップカウントインクリメントする毎にxを1ステップカ
ウントインクリメントするか否かの判断を行ない、増分
dy/dxまたはdx/dyを1以下に正規化する。こ
の場合、アルゴリズムは、図40に<リスト6>として
示す形態となる。このアルゴリズムによれば、結果、図
41に示すようにグラフ表示(<グラフ5>)され、ド
ットが密に描画される。
用線引き)用アルゴリズムは以下のようになる。つま
り、dx>=dyの場合、xを1ステップカウントイン
クリメントする毎にyをインクリメントするか否かの判
断を行う処理(Xスキャン線引き処理)が行われる。d
x<dyの場合、yを1ステップカウントインクリメン
トする毎にxをインクリメントするか否か判断する処理
(Yスキャン線引き処理)が行われ、始点、終点、補間
点は、ストローク領域データと論理和(OR)演算が行
われる。
理について説明する。塗り潰しのアルゴリズムは、図4
2に<リスト7>として示されるように、Y方向の1つ
前のドットとの排他的論理和(XOR)演算を行うこと
により実現される。これを図43(a)に示す図形(<
グラフ6>)の例で実行した場合、図43(b)のよう
になり、特に問題は生じない。
れた図44(a)の例(<グラフ7>)で実行した場
合、結果は図44(b)のようになり、うまく塗り潰し
が行われない。同じく図45(a)に示す長方形(<グ
ラフ8>)を使って実行した場合、図45(b)のよう
になり、辺a−d、辺b−c間の塗り潰しがうまくでき
ない。
ムが1つの点から1つの点の間を埋める処理を目的とす
るのに対して、例では、線分a−c,b−c,a−d,
b−cが塗り潰し方向であるY方向からみて1ドット以
上の点で描かれているためである。
描かれるのは、それらがXスキャン線引き処理で描かれ
たためであるため、この問題を解決するためには、線分
の傾きに関係なく、Xスキャン線引き処理を行えばよ
い。
行った例、図46(a)を例示(<グラフ9>)して塗
り潰しを行ってみる。この場合、図46(b)に示すよ
うに、Xスキャン、Yスキャン線引き処理を併用した例
より改善はされたが、頂点A,Bが1ドットのみであっ
たために、塗り潰し終点が存在せず、線を引いてしま
う。
ついて説明する。図46(b)において、点A,Bは図
形の頂点であり、塗り潰す終点を描くことは難しい。そ
のために、頂点A,Bには、線引き処理において、黒点
を描かずに白点にすればよいが、単純に線引き処理の始
点、終点を白点にするような処理では、頂点Cまでも白
点になってしまい、今度は点C以降に線が引かれてしま
う。
または次回の線引きと重なり、2回処理されることを利
用して、始点から終点の1つ前の補間点群については、
フィル領域のデータと排他的論理和演算、終点について
は未処理とすることで、頂点を白点にすることができ
る。フィルラインの補間点群生成アルゴリズムは、図4
7にリスト形式で示すようになる。
10>における△図形(頂点A,B,C)は以下の手順
に従う。すなわち、図48(a)におけるフィルライン
A−B処理で、A点に黒点、B点は未処理(白点)、フ
ィルラインC−B処理で、C点に黒点、B点は未処理
(白点)、フィルラインA−C処理で、A点は排他的論
理和演算で白点、C点は未処理で黒点となる。図48
(a)で示す△図形に塗り潰し処理を施すと図48
(b)のようになる。
リズムについてまとめると以下のようになる。すなわ
ち、2点間の座標のうち、X座標が小さい方を開始点と
する。そして、xを1ステップカウントインクリメント
する毎に、yをインクリメントするか否かを判断(Xス
キャン線引き処理)する。始点、補間点群はフィル領域
データと排他的論理和演算を実行する。終点は未処理と
する。
処理(図4におけるステップS46)について説明す
る。図9に処理手順がフローチャートで示されている。
以下、図9に示すフローチャートを参照しながら説明す
る。
114により作成されたフィルラインの内側を塗り潰
す。フィルラインの塗り潰しは、Y方向の1つ前のドッ
トとの排他的論理和演算XORを実行(ステップ゜S4
61)することによりなされる。アルゴリズムを図49
にリスト形式(<リスト9>)で示す。
について説明する。ここでは、フォント外枠が描かれて
いるストローク領域と、塗り潰しフォントが描かれてい
るフィル領域の内容を論理和演算することによって重ね
合わせる(ステップS462)。この模様は図50に動
作概念図として示されている。
補正処理(図4におけるステップS47)について説明
する。図10に処理手順がフローチャートで示されてい
る。ここでは、線引き処理部114により作成されたビ
ットマップは、ベクトル化によりX方向、Y方向共に1
ドット分太くなってしまうことから、ビットマップを
X,Y両方向にそれぞれ1ドツト分削除する機能を実行
する。
ず、Y方向に座標をスキャン(ステップS471)し、
ドット削除の条件を調べ(ステップS472)、以下に
示す条件のドットを「白」にする(ステップS47
3)。ここで、ドット削除の条件とは、現座標ドットが
「黒」、次座標ドット(=Y+1)が「白」であって、
座標端のドットについては未処理とする。
S472)し、ドット削除の条件を調べ(ステップS4
72)、以下の条件のドットを「白」にする(ステップ
S473)。ここで、ドット削除の条件とは、現座標ド
ットが「黒」、次座標ドット(=X+1)が「白」であ
って、座標端のドットについては未処理とする。
マップを参照しながら説明する。図51(a)に示すビ
ットマップ例につき、アウトラインを抽出して拡大す
る。ここでは、ベクトルデータ↑VCT1=[0,0,
2,2,0,0,2,2,4,4,4,4,6,6,
6,6]とする。そして、X方向2倍、Y方向2倍とし
て、線引き、塗り潰し、重ね合わせ処理を実行すると、
それぞれ、図51(b)のようになってしまう。
に拡大して描画したときのビットマップである。X,Y
方向に2倍した場合、図形の大きさは本来、4×2の8
ドット分であるはずであるが、ベクトル化した場合、図
のように+1ドット分太くなってしまう。ここで、+1
ドットは、この例に限らず、また、拡大率の値によるこ
となく一律である。尚、LINE{(X1,Y1)−
(X2,Y2)}は、座標(X1,Y1)から座標(X
2,Y2)に向けて線分を引く処理を示す。
はまず、Y方向に座標をスキャンし、F[x,y]=0
x1(黒)、F[x,y+1]=0x0(白)の場合、
F[x,y]=0x0(白)に置換する。このことによ
り、図51(c)に示すビットマツプが生成される。具
体的に、□で表されるドットが補正される。
[x,y]=0x1(黒)、F[x,y+1]=0x0
(白)の場合、F[x,y]=0x0(白)に置換す
る。このことにより、図49(d)に示すビットマツプ
が生成される。具体的に、◇で表されるドットが補正さ
れる。この太さ補正を行った結果、XY方向に2倍した
図形の大きさは本来の4×2の8ドットになる。
74)について図52に示すビットマツプを参照しなが
ら説明する。基のビットマップデータが図52(a)に
示すように、24×24ドットフォントサイズの端に接
している場合について太さ補正をかけるものとする。
り潰し、重ね合わせ処理を実行すると図52(b)に示
すようなビットマップになる。線引き処理において、終
点座標が拡大後のビットマップサイズを超えた座標は描
画されないため、図形の大きさは、1ドット分大きくな
る個所とならない個所が存在する。
に示すビットマップになる。基の図形がビットマツプサ
イズの端にある場合は、拡大後に1ドット分小さくなっ
てしまう。これは線引き処理を行う際に、拡大後のビッ
トマップサイズの座標範囲外の点を描画しないために起
こる。拡大後の図形でビットマップの座標端にあるドッ
トについて未処理とした場合、図52(d)に示すビッ
トマップになる。図52(c)(d)において、□は補
正されるドットを示す。
メモリに用意されたビットマップデータを一旦ベクトル
データに置き換え、ベクトルデータ上での平滑化によ
り、拡大率が大きくなっても滑らかなフォントを再現す
るものである。このためにビットマップを8方向のベク
トル(上下左右4方向と斜め4方向)で表現し、連続す
る6ベクトルの変化量から最適なベクトル方向を決定
し、更に、6ベクトルの変化量から、ベクトルで表現し
きれない1ドット単位での補正を行う。
字もしくは表示が可能である他、ビットマップフォント
を使用しているため圧縮が可能であり、算術符号化によ
る圧縮アルゴリズムにより、文字サイズ等にもよるが、
例えば40%程度の圧縮ができる。通常、アウトライン
フォントを搭載する機器においても解像度の低い小さな
サイズの文字を扱う場合、印字品位劣化のためにビット
マップフォントを用いて印字することがあるが、本発明
によれば、文字の大小にかかわらず同じ品質で文字の印
刷が可能となり、また、メモリ容量の節約も可能となる
ものである。
表示装置への適用は勿論のこと、テープ印刷装置等比較
的装置規模の小さい機種においても、印字品位、処理速
度、価格のいずれも犠牲にすることなく、文字拡大時に
おける滑らかなアウトラインスムージング処理が可能と
なる。
である。
クトルの定義を説明するために引用した図である。
引用したフローチャートである。
的な処理手順を示すフローチャートである。
体的な処理手順を示すフローチャートである。
体的な処理手順を示すフローチャートである。
を示すフローチャートである。
順を示すフローチャートである。
手順を示すフローチャートである。
して示した図である。
値との関係を表形式(<表1>)で示した図である。
形式(<表2>)で示した図である。
を表形式(<表3>)で示した図である。
式(<表4>)で示した図である。
開して示した図である。
ルとの関係を表形式(<表5>)で示した図である。
の関係を表形式(<表6>)で示した図である。
示した図である。
(<表8>)で示した図である。
る。
開して示した図である。
(<表9>)で示した図である。
トライン基準座標との関係を表形式(<表10>)で示
した図である。
た図である。
表12>)で示した図である。
(<表13>)で示した図である。
(<表14>)で示した図である。
示した図である。
示した図である。
フ(<グラフ1>)である。
(<リスト1>)で示す図である。
(<リスト2>)で示す図である。
(<リスト3>)で示す図である。
(<リスト4>)で示す図である。
フ(<グラフ2>)である。
(<リスト5>)で示す図である。
フ(<グラフ3>)である。
フ(<グラフ4>)である。
(<リスト6>)で示す図である。
フ(<グラフ5>)である。
をリスト形式(<リスト7>)で示す図である。
するために例示したグラフ(<グラフ6>)である。
するために例示したグラフ(<グラフ7>)である。
するために例示したグラフ(<グラフ8>)である。
を説明するために例示したグラフ(<グラフ9>)であ
る。
をリスト形式(<リスト8>)で示す図である。
るために例示したグラフ(<グラフ10>)である。
ムをリスト形式(<リスト9>)で示す図である。
をグラフ表示した動作概念図である。
示した図である。
開して示した図である。
ル定義の更に詳細な例を示す図である。
CPU(フォント加工装置)、12プログラムメモリ、
13ワークRAM、14文字フォントメモリ15入出力
制御部(IOC)、16内部バス、20…文字出力部、
111…始点検索・決定部、112…直交ベクトル抽出
部、113…斜線ベクトル変換部、114…線引き処理
部、115…塗り潰し処理部、116…線幅補正処理
部、131…フラグメモリ(ベクトル化済み情報)、1
32…斜線化判定テーブル、133…補正テーブル、1
34…ワーク用ビットマップ領域
Claims (15)
- 【請求項1】 文字フォントをドットマトリクス状のビ
ットマップデータとして持ち、その文字フォントを印刷
もしくは表示する文字出力装置において、 前記文字フォントの拡大時、そのビットマップデータに
基づき一旦ベクトルデータに変換し、 前記ビットマップデータの斜め方向において隣接するデ
ータ配列が不連続となる部分を含め、前記変換されたベ
クトルの始点からそのベクトル方向の終点に向かって新
たな線引きを行ない、内部を塗り潰してビットマップデ
ータの再生成を行うことを特徴とするアウトラインスム
ージング処理方法。 - 【請求項2】 前記新たな線引きは、変換されたベクト
ルデータから基準となるアウトライン座標を求め、あら
かじめ連続したベクトルパターンによって定義される補
正データを参照することにより前記基準となるアウトラ
イン座標を補正し、この補正されたアウトライン座標間
を線で結ぶことを特徴とする請求項1に記載のアウトラ
インスムージング処理方法。 - 【請求項3】 文字フォントをドットマトリクス状のビ
ットマップデータとして持ち、その文字フォントを印刷
もしくは表示する文字出力装置において、 前記ビットマップデータに対し、あらかじめ規定された
条件に従いベクトルの始点となる座標を求める始点検索
のための処理工程と、 前記始点から順にドットの変化方向を調べ、上下左右4
方向の直交ベクトル行列に変換すると共に、そのドット
がベクトル化済みであることを示すベクトル化済み情報
を更新する直交ベクトルへの変換のための処理工程と、 前記変換された直交ベクトル行列の連続する複数のベク
トルの変化量から、あらかじめ斜線化すべきパターンが
定義される斜線化テーブルを参照して斜線ベクトル行列
に変換する斜線ベクトルへの変換のための処理工程と、 加工されたビットマップ座標に対し前記斜線ベクトル行
列の連続する複数のベクトルの変化量からあらかじめ定
義される補正データを参照して前記線引きを行う座標を
ドット単位で補正して線引きを行う線引きのための処理
工程と、 前記ベクトル化済み情報を参照して新たな始点がなくな
るまで前記始点検索、直交ベクトルへの変換、斜線ベク
トルへの変換、線引きのための各処理工程を繰り返し、
生成された線データの内部を塗り潰す塗り潰しのための
処理工程と、を備えて成ることを特徴とするアウトライ
ンスムージング処理方法。 - 【請求項4】 前記線引きは、アウトライン用と塗り潰
し用の2種類生成し、塗り潰し用の線の内部を塗り潰し
た後アウトライン用の線と重ね合わせ、前記ベクトル化
によって太くなった線幅を細くするための線幅補正のた
めの処理工程を更に備えたことを特徴とする請求項3に
記載のアウトラインスムージング処理方法。 - 【請求項5】 前記始点検索のための処理工程は、マト
リクス座標を所定の方向に順次スキャンし、前記ベクト
ル化済み情報の対応するドットがセットされておらず、
かつ、隣接するビットマップデータが変化するドット位
置を始点検索のための条件とすることを特徴とする請求
項3に記載のアウトラインスムージング処理方法。 - 【請求項6】 前記直交ベクトルへの変換のための処理
工程は、 ベクトル化するドット位置を始点からベクトルの方向に
移動する工程と、 移動したドット位置の周辺ドットを調べ、ベクトル値を
決定する工程と、 次にベクトル化するドット位置をベクトル方向に移動す
る工程と、 ベクトル化したドット位置が始点候補になり得る場合前
記ベクトル化済み情報をセットする工程と、 ベクトル化するドット位置が始点に戻るまで、前記ベク
トル値決定、移動、ベクトル化済み情報セットのための
各処理工程を繰り返す工程と、を更に備えて成ることを
特徴とする請求項3に記載のアウトラインスムージング
処理方法。 - 【請求項7】 前記線引きのための処理工程は、 前記ビットマップデータに対しあらかじめ規定された条
件に従い補正前の基準となるアウトラインの始点座標を
決定し、以降、前の座標から斜線化ベクトル値に応じた
移動量を加えた座標を次の座標位置とする工程と、 前記各座標間を線引きするにあたり、各基準アウトライ
ン座標に対し、前後のベクトル値のパターンによって個
々に定義された補正データを参照して補正を施した線引
き用アウトライン座標を生成する工程と、を更に有して
成ることを特徴とする請求項3に記載のアウトラインス
ムージング処理方法。 - 【請求項8】 線引きは、前記決定された線引き用座標
の2点間にアウトライン用線及び塗り潰し用線としてド
ットを補間して描画することによりなされ、前記アウト
ライン用線は、前記線引き用座標の直交する2軸のうち
直線の傾きによって変化量の大きい方を基準軸として、
始点、終点および補間点に、前記塗り潰し用線は、ドッ
ト補間の基準軸を前記2軸の所定の一方のみとして、始
点および補間点に、2点間の直線に最も近い整数値の座
標上にドットを補間して描画することを特徴とする請求
項7に記載のアウトラインスムージング処理方法。 - 【請求項9】 前記塗り潰しのための処理工程は、アウ
トライン用線が描画されたビットマップのストローク領
域と塗り潰し用線が描画されたビットマップのフィル領
域の内容を論理和演算して重ね合わせることを特徴とす
る請求項3に記載のアウトラインスムージング処理方
法。 - 【請求項10】 前記線幅補正のための処理工程は、座
標を縦方向にスキャンし、現座標ドットが「黒」で、次
座標ドットが「白」であった場合に「白」とし、横方向
に座標をスキャンし、現座標ドットが「黒」であり、次
座標ドットが「白」であった場合に「白」とし、ベクト
ル化により縦横両方向にN(整数)ドット分太くなった
ビットマップをそれぞれNドット分削除することを特徴
とする請求項3に記載のアウトラインスムージング処理
方法。 - 【請求項11】 文字フォントをドットマトリクス状の
ビットマップデータとして記憶する記憶装置と、 前記文字フォントの加工時、そのビットマップデータに
基づき一旦ベクトルデータに変換し、前記ビットマップ
データの斜め方向において隣接するデータ配列が不連続
となる部分を含み、前記ベクトルの始点からそのベクト
ル方向の終点に向かって線引きを行ない、内部を塗り潰
してビットマップデータの再生成を行なうフォント加工
装置と、 前記再生成されたビットマップデータを印字もしくは表
示する文字出力装置と、を備えたことを特徴とするアウ
トラインスムージング処理装置。 - 【請求項12】 前記フォント加工装置は、変換された
ベクトル行列から基準となるアウトライン座標を求める
基準アウトライン演算部と、 連続したベクトル値のパターンによってあらかじめ定義
される補正データが設定される補正テーブルと、前記補
正テーブルを参照することにより前記基準となるアウト
ライン座標を補正し、この補正されたアウトライン座標
間を線で結ぶ線分生成部と、を備えたことを特徴とする
請求項11に記載のアウトラインスムージング処理装
置。 - 【請求項13】 文字フォントをドットマトリクス状の
ビットマップデータとして持ち、その文字フォントを印
字もしくは表示する文字出力装置において、 前記ビットマップデータに対し、あらかじめ規定された
条件に従いベクトルの始点となる座標を求める始点検索
・決定部と、 前記始点から順にドットの変化方向を調べ、上下左右4
方向の直交ベクトル行列に変換すると共に、そのドット
がベクトル化済みであることを示すベクトル化済み情報
を更新する直交ベクトル抽出部と、 前記変換された直交ベクトル行列の連続する複数のベク
トルの変化量から、あらかじめ斜線化すべきパターンが
定義される斜線化判定テーブルを参照して斜線ベクトル
行列に変換する斜線ベクトル変換部と、 加工されたビットマップ座標に対し前記斜線ベクトル行
列の連続する複数のベクトルの変化量からあらかじめ定
義される補正データを参照して前記線引きを行う座標を
ドット単位で補正して線引きを行う線引き処理部と、 前記ベクトル化済み情報を参照して新たな始点がなくな
るまで前記各処理部による始点検索・決定、直交ベクト
ルの抽出、斜線ベクトルへの変換、線引きのための処理
を繰り返し、生成された線データの内部を塗り潰す塗り
潰し部と、を備えたことを特徴とするアウトラインスム
ージング処理装置。 - 【請求項14】 前記線引き処理部により外枠用線と塗
り潰し用線の2種類を生成し、塗り潰し用線を塗り潰し
た後外枠用線と重ね合わせ、前記ベクトル化によって太
くなった線幅を細くする線幅補正部を更に備えたことを
特徴とする請求項13に記載のアウトラインスムージン
グ処理装置。 - 【請求項15】 連続したベクトル値のパターンに応じ
て個々に補正データが設定され、その補正データの集合
体である前記補正テーブルは、フォント書体別に補正デ
ータを差し替えて成ることを特徴とする請求項13に記
載のアウトラインスムージング処理装置。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28721899A JP3791259B2 (ja) | 1999-10-07 | 1999-10-07 | アウトラインスムージング処理方法 |
US09/684,799 US6753862B1 (en) | 1999-10-07 | 2000-10-06 | Outline smoothing method and system |
TW089120929A TW509888B (en) | 1999-10-07 | 2000-10-06 | Method and device for processing outline smoothing |
KR10-2000-0059074A KR100376196B1 (ko) | 1999-10-07 | 2000-10-07 | 아웃라인 스무딩 처리 방법, 장치 및 기억매체 |
CNB001355392A CN1160667C (zh) | 1999-10-07 | 2000-10-07 | 轮廓平滑化处理方法及其装置 |
HK01107668.5A HK1036865B (en) | 1999-10-07 | 2001-11-02 | Processing method for outline smoothing and the device thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28721899A JP3791259B2 (ja) | 1999-10-07 | 1999-10-07 | アウトラインスムージング処理方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001109455A true JP2001109455A (ja) | 2001-04-20 |
JP2001109455A5 JP2001109455A5 (ja) | 2005-02-24 |
JP3791259B2 JP3791259B2 (ja) | 2006-06-28 |
Family
ID=17714582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28721899A Expired - Fee Related JP3791259B2 (ja) | 1999-10-07 | 1999-10-07 | アウトラインスムージング処理方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6753862B1 (ja) |
JP (1) | JP3791259B2 (ja) |
KR (1) | KR100376196B1 (ja) |
CN (1) | CN1160667C (ja) |
TW (1) | TW509888B (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007531078A (ja) * | 2003-07-16 | 2007-11-01 | ハンヤン ハク ウォン カンパニー,リミテッド | 3次元メッシュ情報の符号化及び復号化方法並びにその装置 |
CN100377578C (zh) * | 2005-08-02 | 2008-03-26 | 北京北大方正电子有限公司 | 一种电视字幕文字的处理方法 |
US7636097B1 (en) * | 2006-02-15 | 2009-12-22 | Adobe Systems Incorporated | Methods and apparatus for tracing image data |
US7778492B2 (en) | 2006-04-04 | 2010-08-17 | Oldford Group Limited | System and method for scaling digital images |
US8107091B2 (en) * | 2007-01-08 | 2012-01-31 | Samsung Electronics Co., Ltd. | Image forming apparatus and image forming method thereof |
US8384917B2 (en) * | 2010-02-15 | 2013-02-26 | International Business Machines Corporation | Font reproduction in electronic documents |
CN101908216B (zh) * | 2010-07-20 | 2014-04-30 | 中兴通讯股份有限公司 | 一种实现矢量字体的方法及装置 |
CN101957998B (zh) * | 2010-10-09 | 2012-07-04 | 深圳市布易科技有限公司 | 把位图表达的图转为矢量阴影线表达的图的方法和装置 |
CN102637195A (zh) * | 2012-02-27 | 2012-08-15 | 王涛 | 一种基于矢量图形播放的终端系统及其实现方法 |
CN107292936B (zh) * | 2017-05-18 | 2020-08-11 | 湖南大学 | 一种汉字字体矢量化方法 |
CN110996026B (zh) * | 2019-12-18 | 2022-05-24 | 普联技术有限公司 | 一种osd显示方法、装置、设备及存储介质 |
JP7432418B2 (ja) * | 2020-03-26 | 2024-02-16 | 株式会社オーク製作所 | 露光装置および露光方法 |
CN111797843B (zh) * | 2020-07-10 | 2022-10-11 | 济南中正金码科技有限公司 | 一种激光标刻汉字轮廓的提取方法、系统、存储介质及设备 |
US11915071B1 (en) * | 2022-10-26 | 2024-02-27 | Kyocera Document Solutions Inc. | Caching outline characters in printed documents |
CN119380677B (zh) * | 2024-12-27 | 2025-05-16 | 江苏泽景汽车电子股份有限公司 | 显示控制方法、装置及投影装置、计算机可读存储介质 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60113289A (ja) * | 1983-11-25 | 1985-06-19 | セイコーインスツルメンツ株式会社 | 図形表示装置用ライン・スム−ジング回路 |
US4777651A (en) * | 1984-06-25 | 1988-10-11 | Tektronix, Inc. | Method of pixel to vector conversion in an automatic picture coding system |
US5027304A (en) * | 1987-10-02 | 1991-06-25 | Telecommunication Laboratories, Directorate General of Telecommunications , Ministry of Communications | Character multifont compression and restoration device |
JPH0832471B2 (ja) * | 1988-08-31 | 1996-03-29 | キヤノン株式会社 | 出力方法 |
US5475807A (en) * | 1988-12-19 | 1995-12-12 | Canon Kabushiki Kaisha | Character processing apparatus |
JP2935510B2 (ja) * | 1989-09-26 | 1999-08-16 | キヤノン株式会社 | 出力装置及び出力方法 |
JPH03233689A (ja) * | 1990-02-09 | 1991-10-17 | Fuji Xerox Co Ltd | アウトラインデータ描画装置 |
US5233685A (en) * | 1990-06-12 | 1993-08-03 | Wordperfect Corporation | Method and apparatus for integrated graphical and textual character printing |
JP2980732B2 (ja) | 1991-07-05 | 1999-11-22 | 沖電気工業株式会社 | アウトラインフォントの生成方法 |
US5301267A (en) * | 1991-09-27 | 1994-04-05 | Adobe Systems Incorporated | Intelligent font rendering co-processor |
US5428728A (en) * | 1991-09-30 | 1995-06-27 | Destiny Technology Corporation | Method and apparatus for outline font character generation in dot matrix devices |
JP2990671B2 (ja) | 1992-05-30 | 1999-12-13 | 京セラ株式会社 | 画像平滑化処理方式 |
JP2959612B2 (ja) | 1994-02-14 | 1999-10-06 | キヤノン株式会社 | ドットパターンからのベクトル座標発生方法及び装置 |
US5600772A (en) * | 1994-08-17 | 1997-02-04 | Printronix, Inc. | Bit map character convertor using chain-codes for the character filling process |
US6226400B1 (en) * | 1998-06-24 | 2001-05-01 | Colorcom, Ltd. | Defining color borders in a raster image by identifying and breaking contrast ties |
KR100361387B1 (ko) * | 1999-01-06 | 2002-11-21 | 마츠시타 덴끼 산교 가부시키가이샤 | 다각형 묘화 방법, 및 다각형 묘화 장치 |
-
1999
- 1999-10-07 JP JP28721899A patent/JP3791259B2/ja not_active Expired - Fee Related
-
2000
- 2000-10-06 TW TW089120929A patent/TW509888B/zh active
- 2000-10-06 US US09/684,799 patent/US6753862B1/en not_active Expired - Fee Related
- 2000-10-07 KR KR10-2000-0059074A patent/KR100376196B1/ko not_active Expired - Fee Related
- 2000-10-07 CN CNB001355392A patent/CN1160667C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6753862B1 (en) | 2004-06-22 |
TW509888B (en) | 2002-11-11 |
CN1160667C (zh) | 2004-08-04 |
KR100376196B1 (ko) | 2003-03-15 |
JP3791259B2 (ja) | 2006-06-28 |
CN1295309A (zh) | 2001-05-16 |
HK1036865A1 (en) | 2002-01-18 |
KR20010050918A (ko) | 2001-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001109455A (ja) | アウトラインスムージング処理方法ならびにその装置 | |
JPH0345076A (ja) | 画像データの処理方式 | |
US5524198A (en) | Character or graphic processing method and apparatus | |
US5537131A (en) | Character generating method and apparatus | |
JP3037854B2 (ja) | 文字生成方法及びその装置 | |
JP2010224145A (ja) | 情報処理装置、制御装置及びプログラム | |
JP3416489B2 (ja) | フォント処理装置およびフォント処理用プログラムを記録した記録媒体 | |
JP3034140B2 (ja) | 文字生成方法及びその装置 | |
JP2000066658A (ja) | 画像処理装置および記録媒体 | |
JP3315861B2 (ja) | 文字生成装置 | |
JP2637921B2 (ja) | 文字記号発生装置 | |
JP2000242461A (ja) | 画像処理装置 | |
JP2806790B2 (ja) | 文字発生装置およびその方法 | |
JPH09281947A (ja) | 印刷画像作成方法およびその装置 | |
JPH10222146A (ja) | 文字表示装置と表示方法及びフォント情報 | |
JP2700124B2 (ja) | 図形表示方法及びその実施装置 | |
JP2976671B2 (ja) | データ展開方法 | |
JPH09138679A (ja) | データ処理装置 | |
JP2000305551A (ja) | アウトラインフォントデータによる文字発生装置 | |
JPH1145343A (ja) | 多角形図形描画装置 | |
JPH0239361A (ja) | 文書処理装置 | |
JPH0950272A (ja) | アウトラインフォント生成方法およびアウトラインフォント生成装置 | |
JPH09274654A (ja) | 出力制御装置及び出力制御方法及び制御プログラムを記憶した記憶媒体 | |
JPH0239359A (ja) | 文書処理装置 | |
JPH07244473A (ja) | 文字生成方法及びその装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040317 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050506 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050630 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060327 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090414 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100414 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110414 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120414 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130414 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130414 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140414 Year of fee payment: 8 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |