JP3055187B2 - 輪郭線データ処理装置 - Google Patents

輪郭線データ処理装置

Info

Publication number
JP3055187B2
JP3055187B2 JP3043404A JP4340491A JP3055187B2 JP 3055187 B2 JP3055187 B2 JP 3055187B2 JP 3043404 A JP3043404 A JP 3043404A JP 4340491 A JP4340491 A JP 4340491A JP 3055187 B2 JP3055187 B2 JP 3055187B2
Authority
JP
Japan
Prior art keywords
data
specific contour
specific
segment
contour segment
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
JP3043404A
Other languages
English (en)
Other versions
JPH04280296A (ja
Inventor
均 吉田
直幸 川本
一磨 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP3043404A priority Critical patent/JP3055187B2/ja
Publication of JPH04280296A publication Critical patent/JPH04280296A/ja
Application granted granted Critical
Publication of JP3055187B2 publication Critical patent/JP3055187B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Dot-Matrix Printers And Others (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は輪郭線データ処理装置に
関し、特にキャラクタの輪郭線を固有輪郭セグメントと
特定輪郭セグメントとに分割し、特定輪郭セグメントに
関するセグメントデータをキャラクタ記憶手段とは別の
特定輪郭記憶手段に格納するようにしたものに関するも
のである。
【0002】
【従来の技術】最近、文字や記号を印字用紙に印字した
り或いはディスプレイに表示するために、文字や記号な
どの多数のキャラクタの輪郭線をデジタル化したアウト
ラインフォントデータで不揮発メモリに記憶しておき、
このアウトラインフォントデータに所望の大きさになる
ように拡大・縮小処理したり、回転・斜体等の変換処理
を施し、この変換処理されたアウトラインフォントデー
タをドットデータに変換してレーザプリンタなどにより
レーザ方式で印字するようにしている。
【0003】ところで、多数のキャラクタのアウトライ
ンフォントデータを作成する場合、デザイナーがデザイ
ンした所定の大きさのキャラクタをキャラクタ毎に電子
スキャナで読み取り輪郭線を抽出してデジタル化するよ
うになっている。
【0004】
【発明が解決しようとする課題】従って、不揮発メモリ
に記憶されたキャラクタのアウトラインフォントデータ
はデザイナーがデザインしたキャラクタを元文字として
いるので、例えば明朝体漢字において、輪郭線にその一
部として共通に含まれ本来同形状或いは近似形状である
はずの特定の輪郭線部分、例えば実施例に係る図3
(a)に符号pAで示すアクセント、図3(b)に符号
pUで示すウロコ、図3(c)に符号pOで示す筆オサ
エ、図3(d)に符号pTで示すトメ、図3(e)に符
号pKで示す角ウロコ、図3(f)に符号pHで示すハ
ネなどの特定輪郭セグメントの形状にバラツキが生じる
という問題がある。
【0005】更に、上述したように、多数のキャラクタ
には共通する特定輪郭セグメントが含まれているにも拘
わらず、各キャラクタ毎にアウトラインフォントデータ
を作成し、これら多数のアウトラインフォントデータを
アウトラインフォントメモリに格納するので、大容量の
アウトラインフォントメモリが必要になることなどの問
題がある。
【0006】本発明は、上述した問題点を解決するため
になされたものであり、その目的は、キャラクタ記憶手
段のメモリ容量を縮小し、しかも多数のキャラクタの輪
郭線の一部に共通する特定輪郭セグメントを均整のとれ
た形状にし得るような輪郭線データ処理装置を提供する
ことにある。
【0007】
【課題を解決するための手段】この目標を達成するため
に本発明のアウトラインデータ処理装置は、図1の機能
ブロック図に示すように、各々が一つ又は複数の輪郭線
からなる文字・記号の多数のキャラクタにおける複数の
輪郭線にその一部として共通に含まれる特定輪郭セグメ
ントを複数種分類し、これら特定輪郭セグメントの形状
を夫々規定する特定輪郭セグメントデータとその種別デ
ータを対応付けて格納した特定輪郭線記憶手段と、多数
のキャラクタの各々について、1つ又は複数の特定輪郭
セグメントとそれ以外の1つ又は複数の固有輪郭セグメ
ントとに分割し、特定輪郭セグメントについてはその主
要諸元の寸法を規定する寸法データと種別データとを格
納し、また固有輪郭セグメントについてはその形状を表
す固有輪郭セグメントデータを格納したキャラクタ記憶
手段と、外部からの指令で指定されたキャラクタについ
てキャラクタ記憶手段から寸法データと種別データと固
有輪郭セグメントデータとを読み出す読み出し手段と、
その読み出し手段で読み出された種別データに基づいて
特定輪郭線記憶手段から対応する特定輪郭セグメントデ
ータを読み出し、その特定輪郭セグメントデータと寸法
データに基づいて、特定輪郭セグメントの主要諸元が寸
法データで規定された寸法となるように拡大または縮小
の演算処理を施して特定輪郭セグメントの形状を表す第
1修正特定輪郭セグメントデータを作成する第1データ
修正手段と、第1修正特定輪郭セグメントデータに規定
される特定輪郭セグメントが滑らか輪郭線にて形成され
るように第1修正特定輪郭セグメントデータを修正し第
2修正特定輪郭セグメントデータを作成する第2データ
修正手段と、前記読み出し手段で読み出された固有輪郭
セグメントデータと、第2データ修正手段により作成さ
れた第2修正特定輪郭セグメントデータとを用いて、前
記指定キャラクタの輪郭線全体の輪郭線データを合成す
るデータ合成手段とを備えている。
【0008】
【作用】上記の構成を有する本発明のアウトラインデー
タ処理装置は、特定輪郭記憶手段には、各々が1つ又は
複数の輪郭線からなる文字や記号の多数のキャラクタに
おける複数の輪郭線にその一部として共通に含まれる特
定輪郭セグメントを複数種分類し、これら特定輪郭セグ
メントの形状を夫々規定する特定輪郭セグメントデータ
とその種別データが対応づけて格納されている。
【0009】またキャラクタ記憶手段には、多数のキャ
ラクタの各々について、1つ又は複数の特定輪郭セグメ
ントとそれ以外の1つ又は複数の固有輪郭セグメントと
に分割し、特定輪郭セグメントについてはその主要諸元
の寸法を規定する寸法データと種別データとが格納さ
れ、また固有輪郭セグメントについてはその形状を表わ
す固有輪郭セグメントデータが格納されている。
【0010】そして、読み出し手段は外部からの指令で
指定されたキャラクタについて、キャラクタ記憶手段か
ら寸法データと種別データと固有輪郭セグメントデータ
とを読み出す。
【0011】一方、第1データ修正手段は、読み出し手
段で読み出された種別データに基づいて特定輪郭線記憶
手段から対応する特定輪郭セグメントデータを読み出
し、特定輪郭セグメントの主要諸元が寸法データで規定
された寸法となるように拡大または縮小の演算処理を施
して特定輪郭セグメントの形状を表す第1修正特定輪郭
セグメントデータを作成する。
【0012】第2データ修正手段は、第1データ修正手
段により作成された第1修正特定輪郭セグメントデータ
に規定される特定輪郭セグメントが滑らか輪郭線にて形
成されるように第1修正特定輪郭セグメントデータを修
正して第2修正特定輪郭セグメントデータを作成する。
【0013】また、データ合成手段は、読み出し手段で
読み出された固有輪郭セグメントデータと、第2データ
修正手段により作成された第2修正特定輪郭セグメント
データとを用いて、指定キャラクタの輪郭線全体の輪郭
線データを合成する。
【0014】
【実施例】以下、本発明を具体化した一実施例を図面を
参照して説明する。尚、本実施例は、レーザプリンタに
おいて明朝体漢字を発生させるために記憶したアウトラ
インデータ(輪郭線データ)をドットデータに変換する
装置に本発明を適用したものである。
【0015】レーザプリンタの制御装置のうち、アウト
ラインデータをドットデータに変換するデータ変換に関
するデータ変換装置の制御系は図2に示すように構成さ
れている。
【0016】このデータ変換装置の制御系の主体を成す
データ変換制御装置14は、基本的には、CPU16
と、CPU16にデータバスなどのバス30を介して接
続されたROM(プログラムメモリ)18、ROM(ア
ウトラインフォントメモリ)20、ROM(パーツフォ
ントメモリ)22、RAM(テキストメモリ)24、R
AM(ワーキングメモリ)26及びRAM(ドットデー
タメモリ)28とから構成されている。
【0017】また、このバス30には入力装置10及び
印字装置12が接続されており、入力装置10は外部か
ら供給されるキャラクタコードや文字サイズデータなど
データ処理に必要な種々のデータを入力するためのもの
であり、印字装置12はドットデータメモリ28から出
力されたビットマップデータをレーザプリント方式によ
り印字するものである。
【0018】前記プログラムメモリ18には、後述する
データ変換制御の制御プログラムや各種の制御プログラ
ムが格納されている。このデータ変換制御プログラムに
は、入力されたキャラクタコードに関するアウトライン
フォントデータをアウトラインフォントメモリ20から
読出すサブルーチン、アウトラインフォントデータを拡
大・縮小(スケーリング)処理するスケーリング処理制
御サブルーチン、このスケーリング処理したアウトライ
ンフォントデータをショートベクトルに展開するショー
トベクトル処理サブルーチン、ベジェ曲線の関数を発生
させるベジェ曲線関数サブルーチン、ショートベクトル
処理されたアウトラインフォントデータをドットデータ
に変換する変換処理サブルーチン等が格納されている。
【0019】ところで、明朝体の漢字やひらかな等の文
字及び各種の記号などの多数のキャラクタには、図3
(a)に符号pAで示す「アクセント」、図3(b)に
符号pUで示す「ウロコ」、図3(c)に符号pOで示
す「筆オサエ」、図3(d)に符号pTで示す「ト
メ」、図3(e)に符号pKで示す「角ウロコ」、図3
(f)に符号pHで示す「ハネ」等のように、多数のキ
ャラクタにおける複数の輪郭線にその一部として含ま
れ、しかも形状が同一または近似する特定の輪郭線が存
在する。
【0020】従って、これら6種類の特定輪郭線(以
下、特定輪郭セグメントという)に関して、これら基本
特定輪郭セグメントの形状を規定する特定輪郭セグメン
トデータを別途記憶しておき、これらの特定輪郭セグメ
ントデータに基いて所望の大きさの修正特定輪郭セグメ
ントデータを求め、特定輪郭セグメント以外の固有輪郭
セグメントの形状を表わす固有輪郭セグメントデータに
この修正特定輪郭セグメントデータを合成することが可
能である。
【0021】従って、パーツフォントメモリ22には、
図4(a)に示すアクセント、図5(a)に示すウロ
コ、図6(a)に示す筆オサエ、図4(b)に示すト
メ、図5(b)に示す角ウロコ及び図6(b)に示すハ
ネの6種類の基本特定輪郭セグメントの夫々に関して、
種別フラグと、これら基本特定輪郭セグメントの形状を
表わす基本特定輪郭セグメントデータと、基本の大きさ
を表わす寸法データとが格納されている。このパーツフ
ォントメモリ22が本発明の特定輪郭線記憶手段を構成
する。
【0022】前記種別フラグとして、アクセントにはフ
ラグAが、ウロコにはフラグUが、筆オサエにはフラグ
Oが、トメにはフラグTが、角ウロコにはフラグKが、
ハネにはフラグHが基本特定輪郭セグメントデータに対
応づけて夫々格納されている。
【0023】基本特定輪郭セグメントデータとしては、
基本特定輪郭セグメントを規定する複数の座標データが
格納されている。
【0024】また、寸法データには、幅(W)と高さ
(H)と長さ(L)が格納されている。但し、図4
(b)に示すように、トメにはWとHのみが格納され、
図5(b)に示すように角ウロコにはHとLのみが格納
されている。
【0025】基本特定輪郭セグメントの開始座標データ
はxy座標の原点(0,0)であり、この開始座標デー
タに続く複数の座標データの夫々は開始座標点を原点と
するローカル座標系の相対座標データである。
【0026】尚、フラグA、フラグU、フラグO、フラ
グT、フラグK、フラグHを種別フラグという。
【0027】一方、アウトラインフォントメモリ20に
は、多数のキャラクタの各々について、キャラクタのコ
ード番号に関連づけて、1つ又は複数の特定輪郭セグメ
ントとそれ以外の1つ又は複数の固有輪郭セグメントと
に分割し、特定輪郭セグメントについてはその種別フラ
グと主要諸元(W、H、L等)の寸法を規定する寸法デ
ータとが格納され、また固有輪郭セグメントについては
その形状を表わす固有輪郭セグメントデータがグローバ
ル座標系の絶対座標データで格納されている。このアウ
トラインフォントメモリ20が本発明のキャラクタ記憶
手段を構成する。
【0028】この固有輪郭セグメントデータには、次の
表1に示すように、固有輪郭セグメントに関して、開始
データと直線データとベジェ曲線(以下、単に曲線とい
う)データとアウトライン終了データと文字終了データ
とが夫々格納されている。
【0029】
【表1】
【0030】この開始データは開始フラグSと開始点を
規定するXY座標の座標データとからなり、直線データ
は直線フラグLとその直線の終点を規定する座標データ
とからなり、曲線データは曲線フラグBと第1制御点Q
1の座標データと第2制御点Q2の座標データと終点の
座標データとからなり、アウトライン終了データには各
アウトラインの終了を指示するアウトライン終了フラグ
*が格納され、また文字終了データには文字の終了を指
示する文字終了フラグ!が格納されている。
【0031】また、特定輪郭セグメントについては、フ
ラグA:アクセント、フラグU:ウロコ、フラグO:筆
オサエ、フラグT:トメ、フラグK:角ウロコ、フラグ
H:ハネの種別フラグと、特定輪郭セグメントの大きさ
を規定する寸法データ(w・l・h)とが格納されてい
る。
【0032】即ち、アクセントに関してはフラグAと3
つの寸法データ(w・l・h)とがこの順序で格納され
(図7(a)参照)、ウロコに関してはフラグUと3つ
の寸法データ(w・l・h)とがこの順序で格納され
(図8(a)参照)、筆オサエに関してはフラグOと3
つの寸法データ(w・l・h)とがこの順序で格納され
(図9(a)参照)、トメに関してはフラグTと2つの
寸法データ(w・h)とがこの順序で格納され(図7
(b)参照)、角ウロコに関してはフラグKと2つの寸
法データ(l・h)とがこの順序で格納され(図8
(b)参照)、ハネに関してはフラグHと3つの寸法デ
ータ(w・l・h)とがこの順序で格納されている(図
9(b)参照)。
【0033】例えば、図10に示す明朝体漢字「育」の
アウトラインデータは、次の表2a・表2bに示すよう
に固有輪郭セグメントデータとウロコや筆オサエやアク
セントなど6種類の特定輪郭セグメントデータとでアウ
トラインフォントメモリ20に格納されている。
【0034】
【表2a】
【0035】
【表2b】
【0036】テキストメモリ24には、入力装置10か
ら供給されるテキストデータ(コード列)が格納され
る。ワーキングメモリ26にはCPU16で演算処理し
た各種の演算結果が格納される。ドットデータメモリ2
8には変換されたドットデータが格納される。
【0037】次に、データ変換制御装置14で行なわれ
るデータ変換制御のルーチンについて、図11〜図16
のフローチャートに基いて説明する。尚、図中符号Si
(i=10、11、12・・・)は各ステップである。
【0038】テキストメモリ24に格納されたコードデ
ータが読出され、このコードデータのアウトラインデー
タがアウトラインフォントメモリ20から読み出されて
ワーキングメモリ26に格納されるとこの制御(図11
参照)が開始され、先ずワーキングメモリ26に格納さ
れている最初のフラグが読み出され(S10)、このフ
ラグが固有輪郭セグメントデータに含まれるフラグのと
きには(S11・S12・S13:No)、セグメント
データ展開処理制御(図12参照)が実行される。
【0039】この制御が開始され、今読み出したフラグ
が「S」のときには(S20:Yes)、開始座標デー
タが読み出され(S21)、指定されたサイズに拡大・
縮小や回転や斜体変換する変形処理(スケーリング処
理)が実行され(S22)、スケーリング処理後の開始
座標データがワーキングメモリ26に格納され(S2
3)、S10にリターンする。
【0040】また、読み出したフラグが「B」のときに
は(S20:No、S24:Yes)、曲線データつま
り第1制御点と第2制御点及び終点の3組みの座標デー
タが読み出され(S25)、スケーリング処理が実行さ
れ(S26)、スケーリング処理後の曲線データが複数
のショートベクトルに展開され(S27)、このショー
トベクトル処理された修正アウトラインデータがワーキ
ングメモリ26に格納される(S23)。
【0041】また、読み出したフラグが「L」のときに
は(S20・S24:No、S28:Yes)、直線の
座標データが読み出され(S29)、スケーリング処理
が実行され(S30)、スケーリング処理後の直線座標
データがワーキングメモリ26に格納される(S2
3)。
【0042】尚、読み出したフラグが「S」、「B」、
「L」の何れでもないときには(S28:No)、エラ
ー処理が実行され(S31)、この制御を終了する。
【0043】一方、読み出されたフラグが特定輪郭セグ
メントを指示する種別フラグのときには(S11・S1
2:No、S13:Yes)、特定輪郭セグメントデー
タ変換処理制御(図13〜図15参照)が実行される。
【0044】この制御が開始され、今読み出したフラグ
が「A」のときには(S40:Yes)、フラグAに後
続する寸法データ(w、l、h)が順次読み出され(S
41)、フラグAに基いてパーツフォントメモリ22か
らアクセントの基本特定輪郭セグメントデータつまり複
数の座標データとW・L・Hの3つの基本寸法データと
が読み出され(S42)、次のように拡大・縮小処理が
実行され、この処理により作成されたアクセントの修正
特定輪郭セグメントデータがワーキングメモリ26のパ
ーツバッファに格納される(S43)。
【0045】従って、 フラグ0←B p0x←P0X×l/L p0y←P0Y×h/H p1x←P1X×l/L p1y←P1Y×h/H p2x←P2X×l/L p2y←P2Y×h/H フラグ1←L p3x←P3X×l/L p3y←P3Y×h/H ここで、上記拡大・縮小処理における演算にて他の輪郭
線と滑らかにつながるべき点(以下、スムース点と称す
る)がずれることがある。この演算誤差によるスムース
点のずれを補正する処理が以下のように行われる。
【0046】アクセントの場合、始点がスムース点であ
るため、ベジェ曲線の始点を示す座標値(p0x、p0
y)を補正する。
【0047】一般に、ベジェ曲線をそれと接続する直線
と滑らかに接続するためにはその近い方の制御点(始点
側の接続ならば第1制御点、終点側ならば第2制御点)
を接続する直線の延長線上に置けば良く、ベジェ曲線同
志滑らかに接続するには隣接する制御点同志が一直線上
に有れば良いという性質を持つ。
【0048】この性質を利用してスムース点の補正を行
なう。アクセントは必ず水平線に接続するため、座標値
p0yが始点のy座標と等しければよい。この座標系で
は特定輪郭セグメントの始点を原点とした相対座標系で
あるため、前記パーツバッファに格納された修正特定輪
郭セグメントデータの座標データp0yが p0y←0 に変更される(S44)。
【0049】次に、アクセントはフラグBを含む1つの
曲線データとフラグLを含む1つの直線データとからな
っているので、データ数として「2」がカウンタCにセ
ットされ(S45)、固有輪郭セグメントデータにこの
アクセントの特定輪郭セグメントデータを合成させるた
めに、相対座標系である特定輪郭セグメントデータの各
座標データが、絶対座標系である絶対座標データに夫々
変換される(S46)。
【0050】即ち、このアクセントの開始座標データが
直前にワーキングメモリ26に格納したアウトラインデ
ータの最終座標データに置換されるとともに、開始座標
データが変換により変更された座標データ分だけアクセ
ントの各座標データに加算することよにり実行される。
【0051】次に、拡大・縮小された修正特定輪郭セグ
メントデータについて、前記セグメントデータ展開処理
がカウンタCの回数だけ繰り返されて(S47〜S4
9)、リターンする。
【0052】また、読み出したフラグが「U」のときに
は(S50:Yes)、フラグUに後続する寸法データ
(w、l、h)が順次読み出され(S51)、フラグU
に基いてパーツフォントメモリ22からウロコの基本特
定輪郭セグメントデータとW・L・Hの3つの基本寸法
データとが読み出され(S52)、次の拡大・縮小処理
により作成されたウロコの修正特定輪郭セグメントデー
タがワーキングメモリ26のパーツバッファに格納され
る(S53)。
【0053】従って、 フラグ0←B p0x←P0X×l/L p0y←P0Y×h/H p1x←P1X×l/L p1y←P1Y×h/H p2x←P2X×l/L p2y←P2Y×h/H フラグ1←B p3x←P3X×l/L p3y←P3Y×h/H p4x←P4X×l/L p4y←P4Y×h/H p5x←P5X×l/L p5y←P5Y×h/H フラグ2←L p6x←P6X×l/L p6y←P6Y×h/H フラグ3←L p7x←P7X×l/L p7y←P7Y×h/H となる。
【0054】ウロコのスムース点は始点と座標(p2
x、p2y)、(p5x、p5y)で表される2点であ
る。これらの点を夫々p2、p5とする。共にベジェ曲
線上の点であるので、上記ベジェ曲線の性質を利用して
補正を行なう。
【0055】ウロコは必ず水平線に接続するため、 p0y←0 と修正する(S54)。
【0056】点p2においては点p2と座標(p1x、
p1y)で表される点p1、(p3x、p3y)で表さ
れる点p3の3点を共に垂直線上に置くことで輪郭線を
滑らかに連結できる。従って、 p2x←p1x p3x←0 と修正する(S54)。
【0057】点p5は座標(p4x、p4y)で表され
る点(以下この点を点p4称する)を、点p5と座標
(p6x、p6y)で表される点(以下この点を点p6
称する)とを結ぶ直線の延長線上に置けばよいが、この
場合にも演算誤差が発生する場合がある。又、点p5と
点p6とを結ぶ直線に対して点p4が輪郭線がある側と
は反対側、即ち図6(a)における前記直線の右側に少
しでも飛び出していると、特に接続点の段差が目立つと
いう傾向がある。
【0058】上述した2つの理由で斜めの輪郭線に接続
するスムース点の補正は、少なくとも制御点が外側には
出ないように行なう。従って、 (p6y−p5y)/(p6x−p5x) ≧(p5y−p4y)/(p5x−p4x) が成り立つようにp4yを修正する(S54)。
【0059】以上のように前記パーツバッファ内に格納
されたp0y、p2x、p3x、p4yの各データが修
正される。ウロコは2つの曲線データと2つの直線デー
タとからなっているので、データ数として「4」がカウ
ンタCにセットされ(S55)、S46を経て、拡大・
縮小された修正特定輪郭セグメントデータについて、セ
グメントデータ展開処理がカウンタCの回数だけ繰り返
される(S47〜S49)。
【0060】また、読み出したフラグが「O」のときに
は(S56:Yes)、フラグOに後続する寸法データ
(w、l、h)が順次読み出され(S57)、フラグO
に基いてパーツフォントメモリ22から筆オサエの基本
特定輪郭セグメントデータとW・L・Hの3つの基本寸
法データとが読み出され(S58)、次の拡大・縮小処
理により作成された筆オサエの修正特定輪郭セグメント
データがワーキングメモリ26のパーツバッファに格納
される(S59)。
【0061】従って、 フラグ0←B p0x←P0X×l/(L−W) p0y←P0Y×h/H p1x←P1X×l/(L−W) p1y←P1Y×h/H p2x←P2X×l/(L−W) p2y←P2Y×h/H フラグ1←B p3x←P3X×l/L p3y←P3Y×h/H p4x←P4X×l/L p4y←P4Y×h/H p5x←P5X×l/L p5y←P5Y×h/H フラグ2←L p6x←P6X×l/L p6y←P6Y×h/H 次に、筆オサエのスムース点は点p2、点p5であり、
共にベジェ曲線上の点であるので、上記ベジェ曲線の性
質を利用して補正を行なう。 点p2においては点p
2、点p1、点p3の3点を共に垂直線上に置くことで
輪郭線を滑らかに連結できる。従って、 p2x←p1x p3x←0 と修正する(S60)。
【0062】点p5の補正はウロコの場合と同様に、 (p6y−p5y)/(p6x−p5x) ≧(p5y−p4y)/(p5x−p4x) が成り立つようにp4yを修正する(S54)。
【0063】以上のように前記パーツバッファ内に格納
されたp2x、p3x、p4yの各データが修正され
る。筆オサエは2つの曲線データと1つの直線データと
からなっているので、データ数として「3」がカウンタ
Cにセットされ(S61)、S46を経て、拡大・縮小
された修正特定輪郭セグメントデータについて、セグメ
ントデータ展開処理がカウンタCの回数だけ繰り返され
る(S47〜S49)。
【0064】また、読み出したフラグが「T」のときに
は(S62:Yes)、フラグTに後続する寸法データ
(w、h)が順次読出され(S63)、フラグTに基い
てパーツフォントメモリ22からトメの基本特定輪郭セ
グメントデータとW・Hの2つの基本寸法データとが読
出され(S64)、次の拡大・縮小処理により作成され
たトメの修正特定輪郭セグメントデータがパーツバッフ
ァに格納される(S65)。
【0065】従って、 フラグ0←B p0x←P0X×l/L p0y←P0Y×h/W p1x←P1X×l/L p1y←P1Y×h/W p2x←P2X×l/L p2y←P2Y×h/W フラグ1←B p3x←P3X×l/L p3y←P3Y×h/W p4x←P4X×l/L p4y←P4Y×h/W p5x←P5X×l/L p5y←P5Y×h/W 次に、トメのスムース点もウロコと同様に始点、点p
2、点p5である。
【0066】始点と点p5とは必ず垂直方向の輪郭線に
接続することから、 p0x←0 p5x←p4x(但し、p4x=wとする) に修正される(S66)。
【0067】また、点p2においては、点p2と点p1
と点p3との3点を共に水平線上に置くことで輪郭線を
滑らかに連結できる。従って、 p2y←p1y p3y←0 と修正される(S66)。
【0068】トメは2つの曲線データからなっているの
で、データ数として「2」がカウンタCにセットされ
(S67)、S46を経て、拡大・縮小された修正特定
輪郭セグメントデータについて、セグメントデータ展開
処理がカウンタCの回数だけ繰り返される(S47〜S
49)。
【0069】また、読み出したフラグが「K」のときに
は(S68:Yes)、フラグKに後続する寸法データ
(l、h)が順次読み出され(S69)、フラグKに基
いてパーツフォントメモリ22から角ウロコの基本特定
輪郭セグメントデータとL、Hの2つの基本寸法データ
とが読出され(S70)、次の拡大・縮小処理により作
成された角ウロコの修正特定輪郭セグメントデータがパ
ーツバッファに格納される(S71)。
【0070】従って、 フラグ0←B p0x←P0X×l/L p0y←P0Y×h/H p1x←P1X×l/L p1y←P1Y×h/H p2x←P2X×l/L p2y←P2Y×h/H フラグ1←B p3x←P3X×l/L p3y←P3Y×h/H p4x←P4X×l/L p4y←P4Y×h/H p5x←P5X×l/L p5y←P5Y×h/H フラグ2←L p6x←P6X×l/L p6y←P6Y×h/H フラグ3←L p7x←P7X×l/L p7y←P7Y×h/H 次に、角ウロコのスムース点は筆オサエと同様に、点p
2、点p5であるから、前記S60と同様にp2x、p
3x、p4yの各データの修正がなされる(S72)。
【0071】角ウロコは2つの曲線データと2つの直線
データとからなっているので、データ数として「4」が
カウンタCにセットされ(S73)、S46を経て拡大
・縮小された修正特定輪郭セグメントデータについて、
セグメントデータ展開処理がカウンタCの回数だけ繰り
返る(S47〜S49)。
【0072】また、読み出したフラグが「H」のときに
は(S74:Yes)、フラグHに後続する寸法データ
(w、l、h)が順次読み出され(S75)、フラグH
に基いてパーツフォントメモリ22からハネの基本特定
輪郭セグメントデータとW・L・Hの3つの基本寸法デ
ータとが読出され(S76)、次の拡大・縮小処理によ
り作成されたハネの修正特定輪郭セグメントデータパー
ツバッファに格納される(S77)。
【0073】従って、 フラグ0←B p0x←P0X×l/L p0y←P0Y×h/H p1x←P1X×l/L p1y←P1Y×h/H p2x←P2X×l/L p2y←P2Y×h/H フラグ1←L p3x←P3X×l/L p3y←P3Y×h/H フラグ2←L p4x←P4X×l/L p4y←P4Y×h/H フラグ3←B p5x←P5X×l/L p5y←P5Y×h/H p6x←P6X×l/L p6y←P6Y×h/H p7x←P7X×l/L p7y←P7Y×h/H フラグ4←B p8x←P8X×l/L p8y←P8Y×h/H p9x←P9X×l/L p9y←P9Y×h/H p10x←P10X×l/L p10y←P10Y×h/H ハネのスムース点は始点と点p2と座標(p10x、p
10y)で表される点p10である。
【0074】始点及び点p10はハネが必ず垂直方向の
輪郭線に接続されることから p0x←0 p10x←p9x(但し、p9x=w−(p2x+p3
x+p4x+p7x)である) と修正される(S78)。
【0075】点p2は点p2と点p3とを結ぶ直線が水
平方向の輪郭線であることから、 p2y←p1y p3y←0 と修正される(S78)。
【0076】次に、ハネは3つの曲線データと2つの直
線データとからなっているので、データ数として「5」
がカウンタCにセットされ(S79)、S46を経て、
拡大・縮小された修正特定輪郭セグメントデータについ
て、セグメントデータ展開処理がカウンタCの回数だけ
繰り返される(S47〜S49)。尚、S74でNoと
判定されたときにはエラー処理が実行され(S80)、
この制御を終了する。
【0077】そして、読み出したフラグが「*」のとき
には(S11:Yes)、一連のアウトラインデータの
終了なので、次のアウトラインデータの読み出しのため
にS10に戻る。
【0078】一方、読み出したフラグが「!」のときに
は(S11:No、S12:Yes)、全てのアウトラ
インデータの終了なので、入力されたキャラクタについ
て、ワーキングメモリ26に格納されている合成された
輪郭線全体を成す修正アウトラインデータがドットデー
タに変換処理され、このドットデータがドットデータメ
モリ28に格納され(S16)、この制御を終了する。
【0079】上述した方法を用いたレーザプリンタの印
字結果は特定輪郭セグメント、すなわちキャラクタ毎に
共通する部分の形状が統一され、しかもアウトラインフ
ォントメモリのデータ量を削減することができる。
【0080】尚、上記実施例では明朝体漢字を例に挙
げ、アクセント、ウロコ、筆オサエ、トメ、角ウロコ及
びハネを特定輪郭セグメントとした例を示したがこれに
限定されず、明朝体のこの他の部分や他の書体の特徴的
な部分や欧文のセリフ等について特定輪郭セグメント化
することも考えられる。
【0081】又、上記実施例では特定輪郭セグメント化
する明朝体漢字の特定輪郭線として図3に示すものを取
り上げたが、これに限定されるものではなく、明朝体の
その他の特徴的な部分についても特定輪郭セグメント化
することが考えられる。
【0082】又、上記実施例では特定輪郭線記憶手段で
あるパーツフォントメモリとキャラクタ記憶手段である
アウトラインフォントメモリとを分けて設けたが、両メ
モリを1つのROM内に設けることも可能である。
【0083】又、本発明はレーザプリンタに限らずそれ
以外のプリンタにも適用し得ることは勿論、プリンタ以
外にも文字・記号等のキャラクタのアウトラインデータ
を輪郭線に復元する必要のある装置に一般に適用でき
る。
【0084】その他、本発明の趣旨を逸脱しない範囲で
種々の応用が可能である。
【0085】
【発明の効果】以上詳述したことから明らかなように、
本発明によれば、デザイナーの手作業によって作成され
た特定輪郭線部分の形状にばらつきのある元字から生成
したアウトラインデータを用いる場合においても、特定
輪郭線部分の形状が統一された高品質な文字・記号等の
キャラクタの形状を生成することが可能である。
【0086】さらに特定輪郭線のデータをその種別デー
タと寸法データのみで記憶することにより容量の削減さ
れたアウトラインフォントデータを用いて輪郭線を復元
できる利点がある。
【図面の簡単な説明】
【図1】本発明の構成を示す機能ブロック図である。
【図2】レーザプリンタのデータ変換装置の制御系のブ
ロック図である。
【図3】明朝体漢字の特定輪郭セグメントを説明する説
明図である。
【図4】(a)パーツフォントメモリに格納されたアク
セントの基本特定輪郭セグメントデータ及び基本寸法デ
ータを示す図である。 (b)パーツフォントメモリに格納されたトメの基本特
定輪郭セグメントデータ及び基本寸法データを示す図で
ある。
【図5】(a)パーツフォントメモリに格納されたウロ
コの基本特定輪郭セグメントデータ及び基本寸法データ
を示す図である。 (b)パーツフォントメモリに格納された角ウロコの基
本特定輪郭セグメントデータ及び基本寸法データを示す
図である。
【図6】(a)パーツフォントメモリに格納された筆オ
サエの基本特定輪郭セグメントデータ及び基本寸法デー
タを示す図である。 (b)パーツフォントメモリに格納されたハネの基本特
定輪郭セグメントデータ及び基本寸法データを示す図で
ある。
【図7】(a)アクセントを指定された寸法データに基
いて作成した修正特定輪郭セグメントデータを示す図で
ある。 (b)トメを指定された寸法データに基いて作成した修
正特定輪郭セグメントデータを示す図である。
【図8】(a)ウロコを指定された寸法データに基いて
作成した修正特定輪郭セグメントデータを示す図であ
る。 (b)角ウロコを指定された寸法データに基いて作成し
た修正特定輪郭セグメントデータを示す図である。
【図9】(a)筆オサエを指定された寸法データに基い
て作成した修正特定輪郭セグメントデータを示す図であ
る。 (b)ハネを指定された寸法データに基いて作成した修
正特定輪郭セグメントデータを示す図である。
【図10】明朝体漢字「育」の輪郭線図である。
【図11】データ変換制御のルーチンのフローチャー
ト。
【図12】セグメントデータ展開処理制御のルーチンの
フローチャートである。
【図13】特定輪郭セグメントデータ変換処理制御のル
ーチンのフローチャートである。
【図14】特定輪郭セグメントデータ変換処理制御のル
ーチンのフローチャートである。
【図15】特定輪郭セグメントデータ変換処理制御のル
ーチンのフローチャートである。
【符号の説明】
16 CPU 18 プログラムメモリ 20 アウトラインフォントメモリ(キャラクタ記憶手
段) 22 パーツフォントメモリ(特定輪郭線記憶手段)
フロントページの続き (56)参考文献 特開 平2−188789(JP,A) 特開 昭63−143591(JP,A) 特開 昭63−74089(JP,A) (58)調査した分野(Int.Cl.7,DB名) G09G 5/24 B41J 2/485 G06T 5/00

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 各々が一つ又は複数の輪郭線からなる文
    字・記号の多数のキャラクタにおける複数の輪郭線にそ
    の一部として共通に含まれる特定輪郭セグメントを複数
    種分類し、これら特定輪郭セグメントの形状を夫々規定
    する特定輪郭セグメントデータとその種別データを対応
    付けて格納した特定輪郭線記憶手段と、多数のキャラク
    タの各々について、1つ又は複数の特定輪郭セグメント
    とそれ以外の1つ又は複数の固有輪郭セグメントとに分
    割し、特定輪郭セグメントについてはその主要諸元の寸
    法を規定する寸法データと種別データとを格納し、また
    固有輪郭セグメントについてはその形状を表す固有輪郭
    セグメントデータを格納したキャラクタ記憶手段と、外
    部からの指令で指定されたキャラクタについてキャラク
    タ記憶手段から寸法データと種別データと固有輪郭セグ
    メントデータとを読み出す読み出し手段と、前記読み出
    し手段で読み出された種別データに基づいて特定輪郭線
    記憶手段から対応する特定輪郭セグメントデータを読み
    出し、その特定輪郭セグメントデータと寸法データに基
    づいて、特定輪郭セグメントの主要諸元が寸法データで
    規定された寸法となるように拡大または縮小の演算処理
    を施して特定輪郭セグメントの形状を表す第1修正特定
    輪郭セグメントデータを作成する第1データ修正手段
    と、第1修正特定輪郭セグメントデータに規定される特
    定輪郭セグメントが滑らか輪郭線にて形成されるように
    第1修正特定輪郭セグメントデータを修正し第2修正特
    定輪郭セグメントデータを作成する第2データ修正手段
    と、前記読み出し手段で読出された固有輪郭セグメント
    データと、第2データ修正手段により作成された第2修
    正特定輪郭セグメントデータとを用いて、前記指定キャ
    ラクタの輪郭線全体の輪郭線データを合成するデータ合
    成手段とを備えたことを特徴とする輪郭線データ処理装
    置。
JP3043404A 1991-03-08 1991-03-08 輪郭線データ処理装置 Expired - Fee Related JP3055187B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3043404A JP3055187B2 (ja) 1991-03-08 1991-03-08 輪郭線データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3043404A JP3055187B2 (ja) 1991-03-08 1991-03-08 輪郭線データ処理装置

Publications (2)

Publication Number Publication Date
JPH04280296A JPH04280296A (ja) 1992-10-06
JP3055187B2 true JP3055187B2 (ja) 2000-06-26

Family

ID=12662829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3043404A Expired - Fee Related JP3055187B2 (ja) 1991-03-08 1991-03-08 輪郭線データ処理装置

Country Status (1)

Country Link
JP (1) JP3055187B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07110675A (ja) * 1993-06-30 1995-04-25 Iiten Inf Syst Co Ltd 文字の構成方法及び文字の発生装置
US8538692B2 (en) 2006-06-19 2013-09-17 Amazon Technologies, Inc. System and method for generating a path for a mobile drive unit
US7920962B2 (en) 2006-06-19 2011-04-05 Kiva Systems, Inc. System and method for coordinating movement of mobile drive units
US8649899B2 (en) 2006-06-19 2014-02-11 Amazon Technologies, Inc. System and method for maneuvering a mobile drive unit
US7912574B2 (en) 2006-06-19 2011-03-22 Kiva Systems, Inc. System and method for transporting inventory items

Also Published As

Publication number Publication date
JPH04280296A (ja) 1992-10-06

Similar Documents

Publication Publication Date Title
JP3474037B2 (ja) 文字パターン生成装置
JP2909273B2 (ja) アウトライン・フォントの線幅調整方法および装置
JP3055187B2 (ja) 輪郭線データ処理装置
US5519412A (en) Pattern processing method
JP2697328B2 (ja) 輪郭線データ処理装置
JP3416489B2 (ja) フォント処理装置およびフォント処理用プログラムを記録した記録媒体
JPH05232926A (ja) 文字記号発生装置
JP2650324B2 (ja) 多値文字フォント発生システム
JP3344538B2 (ja) 文字生成装置
JP3057959B2 (ja) データ変換装置
JP3313703B2 (ja) アウトラインデータ処理装置
JP3082228B2 (ja) データ変換装置
JPH05273958A (ja) アウトラインデータ処理装置
JP3055306B2 (ja) データ出力装置
JPH0823741B2 (ja) ベクトル文字もしくはベクトル図形の処理方法
JP3362738B2 (ja) 輪郭線データ処理装置
JP3082236B2 (ja) キャラクタ描画装置
JP3381326B2 (ja) アウトラインフォントデータの座標正規化方法,及びアウトラインフォントデータ生成装置
JP3082173B2 (ja) 輪郭線データの処理装置
JP3191954B2 (ja) 輪郭線データ処理装置
JP3039214B2 (ja) データ変換装置
JPH0580741A (ja) 文字フオント生成方式及び装置
JP2881924B2 (ja) データ記憶装置
JP3347756B2 (ja) 文字生成方法及びその装置
JP3072756B2 (ja) 描画装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080414

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090414

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100414

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees