JPH04338798A - 高品質印字のための文字発生方法 - Google Patents
高品質印字のための文字発生方法Info
- Publication number
- JPH04338798A JPH04338798A JP3110659A JP11065991A JPH04338798A JP H04338798 A JPH04338798 A JP H04338798A JP 3110659 A JP3110659 A JP 3110659A JP 11065991 A JP11065991 A JP 11065991A JP H04338798 A JPH04338798 A JP H04338798A
- Authority
- JP
- Japan
- Prior art keywords
- data
- contour
- stored
- character
- point
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 28
- 230000001174 ascending effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000010365 information processing Effects 0.000 claims description 2
- 238000010408 sweeping Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Dot-Matrix Printers And Others (AREA)
- Digital Computer Display Output (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、電子計算機、情報伝達
機器などの情報処理システムにおいて使用されるコード
化されたデジタル電気信号をドット方式により出力する
装置による高品質印字のための文字発生方法に関するも
のである。
機器などの情報処理システムにおいて使用されるコード
化されたデジタル電気信号をドット方式により出力する
装置による高品質印字のための文字発生方法に関するも
のである。
【0002】
【従来の技術】近年、デスクトップパブリッシング(以
下DTP)所謂卓上印刷が盛んになっており、このDT
Pでの印刷用の文字は高品質が強く望まれている。たと
えば、ゲラ刷り用の出力機として近年盛んに使われてい
るレーザプリンタなどは200 〜400 ドット毎イ
ンチ(以下dpi)で出力される。このような出力機に
おいて、文字をビットマップで持つと一文字当り約12
8 バイト、英文字一書体一セットで約16キロバイト
必要となる。また書体の大きさが変わるだけで、別の一
セットを用意する必要があり、容量がその分増加する。 DTPにおいては、色々な書体が豊富に使用される。そ
れに対応し、ビットマップフォントで書体を出力機内に
保持しておくことは、メモリを非常に多く必要とし都合
が悪い。
下DTP)所謂卓上印刷が盛んになっており、このDT
Pでの印刷用の文字は高品質が強く望まれている。たと
えば、ゲラ刷り用の出力機として近年盛んに使われてい
るレーザプリンタなどは200 〜400 ドット毎イ
ンチ(以下dpi)で出力される。このような出力機に
おいて、文字をビットマップで持つと一文字当り約12
8 バイト、英文字一書体一セットで約16キロバイト
必要となる。また書体の大きさが変わるだけで、別の一
セットを用意する必要があり、容量がその分増加する。 DTPにおいては、色々な書体が豊富に使用される。そ
れに対応し、ビットマップフォントで書体を出力機内に
保持しておくことは、メモリを非常に多く必要とし都合
が悪い。
【0003】このような不都合を無くすために、近年は
所謂ベクトルフォントを持つ出力機が増えてきた。ベク
トルフォントにおいて、一書体は一セット持つだけで、
同一書体の色々な大きさの文字を生成し出力できる利点
を備えている。ベクトルフォントでは一書体当り約20
キロバイト程度のメモリを必要とするが、一セットで色
々な大きさの文字を出力することができるため、文字種
を豊富に必要とするDTP機器においてはビットマップ
フォントよりベクトルフォントの方が保持しておくべき
フォントデータの容量が少なく、非常に都合が良い。ベ
クトルフォントは文字の輪郭を算出するための点として
持ち、その点を参考に算術演算を加え輪郭をメモリ上へ
展開する。この展開のための算出方法として、近年では
B−スプライン演算やベチエ演算などが広く用いられて
いる。そして展開された文字の閉領域内を所望のビット
パターンで塗りつぶすことになる。
所謂ベクトルフォントを持つ出力機が増えてきた。ベク
トルフォントにおいて、一書体は一セット持つだけで、
同一書体の色々な大きさの文字を生成し出力できる利点
を備えている。ベクトルフォントでは一書体当り約20
キロバイト程度のメモリを必要とするが、一セットで色
々な大きさの文字を出力することができるため、文字種
を豊富に必要とするDTP機器においてはビットマップ
フォントよりベクトルフォントの方が保持しておくべき
フォントデータの容量が少なく、非常に都合が良い。ベ
クトルフォントは文字の輪郭を算出するための点として
持ち、その点を参考に算術演算を加え輪郭をメモリ上へ
展開する。この展開のための算出方法として、近年では
B−スプライン演算やベチエ演算などが広く用いられて
いる。そして展開された文字の閉領域内を所望のビット
パターンで塗りつぶすことになる。
【0004】本発明は、この塗りつぶしの方法に係るも
のであり、図8にこの塗りつぶし手法を実施するシステ
ムの構成図を示す。大容量記憶装置203 内に蓄えら
れているベクトルフォントデータをインターフェース2
06 を通して内部メモリ202 へ入力し、CPU2
01 がそのデータに対して算術演算(B−スプライン
演算やベチエ演算など)、並べ換え、塗りつぶしなどを
行い、内部メモリ202 へ再格納し、それが終了した
ら、ドット方式による出力が可能な出力装置、たとえば
CRT204 やプリンタ205 などへ各インターフ
ェース206 を通じて出力する。
のであり、図8にこの塗りつぶし手法を実施するシステ
ムの構成図を示す。大容量記憶装置203 内に蓄えら
れているベクトルフォントデータをインターフェース2
06 を通して内部メモリ202 へ入力し、CPU2
01 がそのデータに対して算術演算(B−スプライン
演算やベチエ演算など)、並べ換え、塗りつぶしなどを
行い、内部メモリ202 へ再格納し、それが終了した
ら、ドット方式による出力が可能な出力装置、たとえば
CRT204 やプリンタ205 などへ各インターフ
ェース206 を通じて出力する。
【0005】
【発明が解決しようとする課題】この従来の塗りつぶし
方法についての問題点を図9、図10、図11、図12
を用いて説明する。この方式のフローチャートは図9に
示されている。要約すると、あるYについてX方向に掃
引し、図10に示す輪郭データにおいて、最初に輪郭線
が現われた点から次に輪郭線が現われる点までを塗りつ
ぶす方法である。その具体例を図11に示す。たとえば
ライン301 では、最初に“1”(図中黒い点)が現
れた点から次に“1”が現われた点までの間の“0”(
図中白い部分)を所望のビットパターンに変換する。と
ころがこの方法だとライン303 のような場合、図1
1で示すように、塗らないといけない部分304 の前
に現われる輪郭点の数によって、この部分304 を塗
りつぶさず、塗ってはいけない部分305 を塗りつぶ
してしまうというような不具合が生じる。また、ライン
302 の場合も、塗ってはいけない部分305 を塗
りつぶしてしまう不具合を生じる。そのため、図12で
示すように、輪郭線に変更と加える点306 を作る必
要が生じ、実際に所望の文字とは違った文字となり、高
品質な文字出力とは言い難く、さらに輪郭線補正のため
のステップを必要とし、良い方法とは言えない。
方法についての問題点を図9、図10、図11、図12
を用いて説明する。この方式のフローチャートは図9に
示されている。要約すると、あるYについてX方向に掃
引し、図10に示す輪郭データにおいて、最初に輪郭線
が現われた点から次に輪郭線が現われる点までを塗りつ
ぶす方法である。その具体例を図11に示す。たとえば
ライン301 では、最初に“1”(図中黒い点)が現
れた点から次に“1”が現われた点までの間の“0”(
図中白い部分)を所望のビットパターンに変換する。と
ころがこの方法だとライン303 のような場合、図1
1で示すように、塗らないといけない部分304 の前
に現われる輪郭点の数によって、この部分304 を塗
りつぶさず、塗ってはいけない部分305 を塗りつぶ
してしまうというような不具合が生じる。また、ライン
302 の場合も、塗ってはいけない部分305 を塗
りつぶしてしまう不具合を生じる。そのため、図12で
示すように、輪郭線に変更と加える点306 を作る必
要が生じ、実際に所望の文字とは違った文字となり、高
品質な文字出力とは言い難く、さらに輪郭線補正のため
のステップを必要とし、良い方法とは言えない。
【0006】他の従来例として、閉領域内に内部を示す
点を設ける方法がある。この方法の概略を図13、図1
4、図15に示す。図13、図14に示すように、内部
を示す点401 から右へ最初に“1”が現われるまで
掃引し、そこまで塗りつぶし、そこから下へ移動し(こ
のとき、上の座標は新たに内部点402 として格納し
ておく)、次に左へ掃引しながら“1”が現われる点ま
で塗りつぶす。これを繰り返すことで内部を塗りつぶし
ていく。塗り残した部分は内部点401 ,402 と
して格納されているので、その点を新たな塗りつぶしの
スタート点として塗りつぶしを行う。格納してあった内
部点401 ,402 が全てなくなったら、塗りつぶ
しを終了する。
点を設ける方法がある。この方法の概略を図13、図1
4、図15に示す。図13、図14に示すように、内部
を示す点401 から右へ最初に“1”が現われるまで
掃引し、そこまで塗りつぶし、そこから下へ移動し(こ
のとき、上の座標は新たに内部点402 として格納し
ておく)、次に左へ掃引しながら“1”が現われる点ま
で塗りつぶす。これを繰り返すことで内部を塗りつぶし
ていく。塗り残した部分は内部点401 ,402 と
して格納されているので、その点を新たな塗りつぶしの
スタート点として塗りつぶしを行う。格納してあった内
部点401 ,402 が全てなくなったら、塗りつぶ
しを終了する。
【0007】しかしこの方法で塗りつぶしを実行すると
、色々な大きさの文字に加工ができるというベクトルフ
ォントの最大の特長が活かせない場合が生じる。その例
を図15に示す。文字の大きさを小さく設定した場合、
座標をディジタル化しているため、内部を示す点401
が閉領域輪郭線上にくる可能性があり、このとき内部
外部を判断する手段が無くなり、うまく内部を塗りつぶ
せなくなる。この解決方法として、小さい文字だけは、
別にビットマップフォントとして記憶しておくという方
法がとられているが、文字記憶のための容量が肥大して
しまう結果となるばかりか、さらには文字の大きさによ
りベクトルフォントとビットマップフォントと使い分け
る必要があり文字展開のシーケンスを複雑化してしまい
、良い方法とはいえない。
、色々な大きさの文字に加工ができるというベクトルフ
ォントの最大の特長が活かせない場合が生じる。その例
を図15に示す。文字の大きさを小さく設定した場合、
座標をディジタル化しているため、内部を示す点401
が閉領域輪郭線上にくる可能性があり、このとき内部
外部を判断する手段が無くなり、うまく内部を塗りつぶ
せなくなる。この解決方法として、小さい文字だけは、
別にビットマップフォントとして記憶しておくという方
法がとられているが、文字記憶のための容量が肥大して
しまう結果となるばかりか、さらには文字の大きさによ
りベクトルフォントとビットマップフォントと使い分け
る必要があり文字展開のシーケンスを複雑化してしまい
、良い方法とはいえない。
【0008】本発明は、上述したような課題を解決する
もので、元の文字パターンを崩すこと無しに、さらに閉
領域内部を示す点を持つこと無しに、高品質文字のため
の塗りつぶしを実施できる高品質印字のための文字発生
方法を提供することを目的とするものである。
もので、元の文字パターンを崩すこと無しに、さらに閉
領域内部を示す点を持つこと無しに、高品質文字のため
の塗りつぶしを実施できる高品質印字のための文字発生
方法を提供することを目的とするものである。
【0009】
【課題を解決するための手段】上記課題を解決するため
に、本発明の文字発生方法は、順序良く並んだ輪郭線組
(X,Y)に対して、その中の一つの点(X1,Y1)
とその点の前後の点(X0,Y0)、(X2,Y2)と
を比較し、その比較結果より新たに二つの付加要素組(
a1,b1)を算出し、これらの二つの付加要素組(a
,b)を前記輪郭線組(X,Y)に付加して新たに(X
,Y,a,b)を要素として保存し、各YについてX方
向に掃引したときに付加要素についての加算を行い、そ
の結果から文字領域の内部外部を判断し、所望の閉領域
内を所望のドットパターンに塗りつぶすものである。
に、本発明の文字発生方法は、順序良く並んだ輪郭線組
(X,Y)に対して、その中の一つの点(X1,Y1)
とその点の前後の点(X0,Y0)、(X2,Y2)と
を比較し、その比較結果より新たに二つの付加要素組(
a1,b1)を算出し、これらの二つの付加要素組(a
,b)を前記輪郭線組(X,Y)に付加して新たに(X
,Y,a,b)を要素として保存し、各YについてX方
向に掃引したときに付加要素についての加算を行い、そ
の結果から文字領域の内部外部を判断し、所望の閉領域
内を所望のドットパターンに塗りつぶすものである。
【0010】
【作用】上記構成により、あるYについて最初にXが現
われる点から、加算結果が(a,b)=(0,0)とな
る点までを塗りつぶすだけという簡単な操作が可能とな
り、したがって、元の文字パターンを崩すこと無しに、
閉領域の塗りつぶしを実施でき、高品質の文字出力を得
ることができる。
われる点から、加算結果が(a,b)=(0,0)とな
る点までを塗りつぶすだけという簡単な操作が可能とな
り、したがって、元の文字パターンを崩すこと無しに、
閉領域の塗りつぶしを実施でき、高品質の文字出力を得
ることができる。
【0011】
【実施例】以下本発明の一実施例を図面に基づいて説明
する。図1は本発明の一実施例の高品質印字のための文
字発生方法において塗りつぶしを実施するためのフロー
チャート、図2はベクトルデータから算術演算を行い、
算出された輪郭データを視覚的に描いた図、図3は図2
の輪郭データ群を示した図、図4は図2の輪郭データを
変換したデータ群を示した図、図5は図4を視覚的に見
やすく表わした図、図6および図7は図3の輪郭データ
を図4のデータ群に変換するための付加要素(a,b)
を与えるルールを説明する図である。
する。図1は本発明の一実施例の高品質印字のための文
字発生方法において塗りつぶしを実施するためのフロー
チャート、図2はベクトルデータから算術演算を行い、
算出された輪郭データを視覚的に描いた図、図3は図2
の輪郭データ群を示した図、図4は図2の輪郭データを
変換したデータ群を示した図、図5は図4を視覚的に見
やすく表わした図、図6および図7は図3の輪郭データ
を図4のデータ群に変換するための付加要素(a,b)
を与えるルールを説明する図である。
【0012】図1において、従来の図9と異なる点は、
内部メモリ上のベクトル情報から算出された、切れ目無
く順序よく配列された輪郭要素部(X,Y)の一要素組
(X1,Y1)に対して、この一要素組(X1,Y1)
の前後の要素組(X0,Y0),(X2,Y2)を参照
し、その参照結果により、二つの付加要素組(a1,b
1)を算出し、一要素組(X1,Y1)にこれを付加し
た新たな要素組(X1,Y1,a1,b1)を一組とし
て内部メモリに格納すること、およびこの新たな要素組
群(X,Y,a,b)をYについて昇順に並べ直し、さ
らにあるYについてXを昇順に並べ直し内部メモリに格
納した後に、あるYについてX方向に掃引し、最初にX
が現われた点から加算結果が(a,b)=(0,0)と
なる点までを塗りつぶす点である。
内部メモリ上のベクトル情報から算出された、切れ目無
く順序よく配列された輪郭要素部(X,Y)の一要素組
(X1,Y1)に対して、この一要素組(X1,Y1)
の前後の要素組(X0,Y0),(X2,Y2)を参照
し、その参照結果により、二つの付加要素組(a1,b
1)を算出し、一要素組(X1,Y1)にこれを付加し
た新たな要素組(X1,Y1,a1,b1)を一組とし
て内部メモリに格納すること、およびこの新たな要素組
群(X,Y,a,b)をYについて昇順に並べ直し、さ
らにあるYについてXを昇順に並べ直し内部メモリに格
納した後に、あるYについてX方向に掃引し、最初にX
が現われた点から加算結果が(a,b)=(0,0)と
なる点までを塗りつぶす点である。
【0013】すなわち、いま図2に示したようなデータ
が与えられたとする。これは、保存されているベクトル
フォントのデータを算術演算(B−スプライン演算やベ
チエ演算など)を加えた後、メモリ上に展開したイメー
ジを示している(図10と同一図形である)。このデー
タは閉領域が二つ(島A,B)ある。また、データは切
れ目無く順序良く並んでいる。“切れ目無く”と言うの
は、X,Y両方共に座標値が二つ以上増加もしくは減少
しないと言うことである。“順序良く”と言うのは、ス
タート点101 ,102 から隣へ、さらに隣へとデ
ータを保持していることを言い表している。
が与えられたとする。これは、保存されているベクトル
フォントのデータを算術演算(B−スプライン演算やベ
チエ演算など)を加えた後、メモリ上に展開したイメー
ジを示している(図10と同一図形である)。このデー
タは閉領域が二つ(島A,B)ある。また、データは切
れ目無く順序良く並んでいる。“切れ目無く”と言うの
は、X,Y両方共に座標値が二つ以上増加もしくは減少
しないと言うことである。“順序良く”と言うのは、ス
タート点101 ,102 から隣へ、さらに隣へとデ
ータを保持していることを言い表している。
【0014】上述したことを図2に当てはめると図3に
示すようなデータ群となる。図3に示したデータ群に図
6、図7のルールを当てはめると図3は図4に示すデー
タ群へと変換される。図4を視覚的に見やすくしたもの
が図5である。
示すようなデータ群となる。図3に示したデータ群に図
6、図7のルールを当てはめると図3は図4に示すデー
タ群へと変換される。図4を視覚的に見やすくしたもの
が図5である。
【0015】ここで図6、図7のa,bを与えるルール
について簡単に述べる。 (1) Yについて単調増加…(a,b)=(1,1)
(2) Yについて単調減少…(a,b)=(−1,−
1)(3) Yについて極大極小…(a,b)=(0,
0)(4) Yについて前後増加減少が無く、Xについ
て極大…(a,b)=(−1,1) (5) Yについて前後増加減少が無く、Xについて極
小…(a,b)=(1,−1) (6) Yについて前後増加減少が無く、Xについて単
調増加もしくは単調減少…データX,Yは記憶しない(
7) その他で、角進行方向に向かって左手をa、右手
をbとし、曲がる側の要素には“0”、逆側にはt1も
しくはt0の“0”でない方の値をいれる。
について簡単に述べる。 (1) Yについて単調増加…(a,b)=(1,1)
(2) Yについて単調減少…(a,b)=(−1,−
1)(3) Yについて極大極小…(a,b)=(0,
0)(4) Yについて前後増加減少が無く、Xについ
て極大…(a,b)=(−1,1) (5) Yについて前後増加減少が無く、Xについて極
小…(a,b)=(1,−1) (6) Yについて前後増加減少が無く、Xについて単
調増加もしくは単調減少…データX,Yは記憶しない(
7) その他で、角進行方向に向かって左手をa、右手
をbとし、曲がる側の要素には“0”、逆側にはt1も
しくはt0の“0”でない方の値をいれる。
【0016】次に、(7) について図7の一番上の図
を使って説明する。この図では、進行方向に向かって右
に曲がっている。故に右手側つまりbに“0”を入れ、
aには、t1もしくはt0の“0”でない方の値つまり
t0の値“1”をいれることになる。さらに図7の下か
ら3番目の図を使って説明する。この図では、進行方向
に向かって左に曲がっている。故に左手側つまりaに“
0”を入れ、bには、t1もしくはt0の“0”でない
方の値つまりt0の値“−1”をいれることになる。
を使って説明する。この図では、進行方向に向かって右
に曲がっている。故に右手側つまりbに“0”を入れ、
aには、t1もしくはt0の“0”でない方の値つまり
t0の値“1”をいれることになる。さらに図7の下か
ら3番目の図を使って説明する。この図では、進行方向
に向かって左に曲がっている。故に左手側つまりaに“
0”を入れ、bには、t1もしくはt0の“0”でない
方の値つまりt0の値“−1”をいれることになる。
【0017】このようなルールにしたがって、図2のデ
ータに対して(a,b)を与えたものが図5である。こ
こで実際に塗りつぶしてみる。塗りつぶしのルールは、
最初に現われた点(X1)の(a,b)を調べ、(0,
0)ならばその一点だけを塗り、(0,0)でなければ
次に現われたの点の(a,b)とa,b各々を加算する
。(a,b)=(0,0)になるまでそれを続け、(0
,0)になった点(X2)で、X1からX2まで塗りつ
ぶす。1ラインが終了するまで、その過程を続ける。
ータに対して(a,b)を与えたものが図5である。こ
こで実際に塗りつぶしてみる。塗りつぶしのルールは、
最初に現われた点(X1)の(a,b)を調べ、(0,
0)ならばその一点だけを塗り、(0,0)でなければ
次に現われたの点の(a,b)とa,b各々を加算する
。(a,b)=(0,0)になるまでそれを続け、(0
,0)になった点(X2)で、X1からX2まで塗りつ
ぶす。1ラインが終了するまで、その過程を続ける。
【0018】具体的に、図5で示すとY=7のラインに
ついて…X=6で(a,b)=(1,1)≠(0,0)
、X=9で(−1、−1)、前の値とa,b各々を加算
すると(a,b)=(0,0)となり、ここまで(つま
りX=6〜9まで)を塗りつぶし、このラインを終了す
る。
ついて…X=6で(a,b)=(1,1)≠(0,0)
、X=9で(−1、−1)、前の値とa,b各々を加算
すると(a,b)=(0,0)となり、ここまで(つま
りX=6〜9まで)を塗りつぶし、このラインを終了す
る。
【0019】Y=5のラインについて…X=2で(a,
b)=(1,−1)≠(0,0)、X=5で(0,1)
to(0,1)で前の値とa,b各々を加算すると(a
,b)=(1,1)≠(0,0)、さらにX=9で(−
1,−1)で前の加算した値とa,b各々を加算すると
(a,b)=(0,0)となり、ここまで(つまりX=
2〜9まで)を塗りつぶし、このラインを終了する。
b)=(1,−1)≠(0,0)、X=5で(0,1)
to(0,1)で前の値とa,b各々を加算すると(a
,b)=(1,1)≠(0,0)、さらにX=9で(−
1,−1)で前の加算した値とa,b各々を加算すると
(a,b)=(0,0)となり、ここまで(つまりX=
2〜9まで)を塗りつぶし、このラインを終了する。
【0020】Y=10のラインについて…X=9で(a
,b)=(0,0)、つまりこの一点だけを塗りつぶし
、さらにX=12で(a,b)=(0,0)、つまりこ
の一点だけを塗り、このラインを終了する。
,b)=(0,0)、つまりこの一点だけを塗りつぶし
、さらにX=12で(a,b)=(0,0)、つまりこ
の一点だけを塗り、このラインを終了する。
【0021】Y=12のラインについて…X=12で(
a,b)=(−1,−1)≠(0,0)、X=14で(
1,0)で前の値とa,b各々を加算すると(a,b)
=(0,−1)≠(0,0)、さらにX=15で(0,
1)で前の加算した値とa,b各々を加算すると(a,
b)=(0,0)となり、ここまで(つまりX=12〜
15まで)を塗りつぶし、このラインを終了する。
a,b)=(−1,−1)≠(0,0)、X=14で(
1,0)で前の値とa,b各々を加算すると(a,b)
=(0,−1)≠(0,0)、さらにX=15で(0,
1)で前の加算した値とa,b各々を加算すると(a,
b)=(0,0)となり、ここまで(つまりX=12〜
15まで)を塗りつぶし、このラインを終了する。
【0022】本実施では、内部を塗りつぶすことを条件
としたが、Xの掃引最初から(a,b)=(0,0)の
所を塗りつぶしていけば、所謂中抜け文字の出力も可能
であることは、容易に想像が付く。
としたが、Xの掃引最初から(a,b)=(0,0)の
所を塗りつぶしていけば、所謂中抜け文字の出力も可能
であることは、容易に想像が付く。
【0023】
【発明の効果】以上のように、本発明によれば、順序良
く並んだ輪郭線組(X,Y)に対して、それに含まれる
点(X1,Y1)とその点の前後の点(X0,Y0)、
(X2,Y2)とを比較し、その比較結果より新たに二
つの付加要素組(a,b)を前記輪郭線組(X,Y)に
付加し、新たに(X,Y,a,b)を要素として格納し
、あるYについてX方向に掃引したときに付加要素(a
,b)について加算を行い、その結果から内部外部を判
断し、内部を所望のドットパターンに塗りつぶすので、
元の文字パターンを崩すこと無しに、閉領域の塗りつぶ
しを実施でき、高品質の文字出力を得ることができる。 この方法を使用すれば、任意閉領域の塗りつぶしについ
て、良好な塗りつぶしが行なえる。
く並んだ輪郭線組(X,Y)に対して、それに含まれる
点(X1,Y1)とその点の前後の点(X0,Y0)、
(X2,Y2)とを比較し、その比較結果より新たに二
つの付加要素組(a,b)を前記輪郭線組(X,Y)に
付加し、新たに(X,Y,a,b)を要素として格納し
、あるYについてX方向に掃引したときに付加要素(a
,b)について加算を行い、その結果から内部外部を判
断し、内部を所望のドットパターンに塗りつぶすので、
元の文字パターンを崩すこと無しに、閉領域の塗りつぶ
しを実施でき、高品質の文字出力を得ることができる。 この方法を使用すれば、任意閉領域の塗りつぶしについ
て、良好な塗りつぶしが行なえる。
【図1】本発明の一実施例の高品質印字のための文字発
生方法を示すフローチャートである。
生方法を示すフローチャートである。
【図2】ベクトルデータから算術演算を行い、算出され
た輪郭データを視覚的に描いた図である。
た輪郭データを視覚的に描いた図である。
【図3】図2の詳細な輪郭データ群を示した図である。
【図4】図3の輪郭データを変換したデータ群を示した
図である。
図である。
【図5】図4を視覚的に見やすく表した図である。
【図6】図3の輪郭データを図4のデータ群に変換する
ための付加要素(a,b)を与えるルール(その1)を
説明する図である。
ための付加要素(a,b)を与えるルール(その1)を
説明する図である。
【図7】付加要素(a,b)を与えるルール(その2)
を説明する図である。
を説明する図である。
【図8】塗りつぶし手法を実施するシステムの構成図で
ある。
ある。
【図9】従来例の文字発生方法を示すフローチャートで
ある。
ある。
【図10】図2と同一の輪郭データを視覚的に描いた図
である。
である。
【図11】従来例の不具合を説明する図である。
【図12】従来例の不具合を解決するための一例を説明
する図である。
する図である。
【図13】従来例の輪郭データの他の一例を示す図であ
る。
る。
【図14】図13の塗りつぶし途中を説明する図である
。
。
【図15】図13の輪郭データを縮小したとき、内部点
401 が輪郭線上にくる不具合を説明する図である。
401 が輪郭線上にくる不具合を説明する図である。
101 島Aのスタート点102
島Bのスタート点201
CPU 202 内部メモリ 203 大容量記憶装置204
CRT 205 プリンタ 206 各デバイスを結ぶインターフ
ェース301 〜303 指定されたライン304
塗潰さないといけない部分305
塗りつぶしてはいけない部分306
輪郭線変更のために付け加えられた点
401 内部を示す点402
次回の塗りつぶしのスタート点として再格納
された点
島Bのスタート点201
CPU 202 内部メモリ 203 大容量記憶装置204
CRT 205 プリンタ 206 各デバイスを結ぶインターフ
ェース301 〜303 指定されたライン304
塗潰さないといけない部分305
塗りつぶしてはいけない部分306
輪郭線変更のために付け加えられた点
401 内部を示す点402
次回の塗りつぶしのスタート点として再格納
された点
Claims (1)
- 【請求項1】 電子計算機、情報伝達機器などの情報
処理システムにおいて使用されるコード化されたデジタ
ル電気信号をドット方式により出力する装置による高品
質印字のための文字発生方法であって、ラスタ記録方法
を採用している画像処理装置に格納されているベクトル
情報から切れ目無く順序良く配列された輪郭要素群(X
,Y)を算出して記憶装置に格納し、前記切れ目無く配
列された輪郭要素群の一要素組(X1,Y1)に対して
その点(X1,Y1)の前後の要素組(X0,Y0)、
(X2,Y2)を参照し、その参照結果により二つの付
加要素組(a1,b1)を算出し、前記要素組(X1,
Y1)にこの二つの付加要素組(a1,b1)を付加し
て新たに(X1,Y1,a1,b1)を一組として前記
記憶装置に格納し、これら新たな要素組群(X,Y,a
,b)をYについて昇順または降順に並べ直して格納し
、さらに前記Yについて並べ直して格納した要素組のあ
る一つのYについて前記要素組(X,Y,a,b)のX
を昇順または降順に並べ直して格納し、このX,Yにつ
いて降順もしくは昇順に並べ直して格納した要素組(X
,Y,a,b)に対し、各YについてX方向に掃引し、
付加要素(a,b)について加算を行い、その加算結果
から文字領域の内部外部を判断し、所望の閉領域内を所
望のドットパターンに塗りつぶすことを特徴とする高品
質印字のための文字発生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3110659A JPH04338798A (ja) | 1991-05-16 | 1991-05-16 | 高品質印字のための文字発生方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3110659A JPH04338798A (ja) | 1991-05-16 | 1991-05-16 | 高品質印字のための文字発生方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04338798A true JPH04338798A (ja) | 1992-11-26 |
Family
ID=14541236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3110659A Pending JPH04338798A (ja) | 1991-05-16 | 1991-05-16 | 高品質印字のための文字発生方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04338798A (ja) |
-
1991
- 1991-05-16 JP JP3110659A patent/JPH04338798A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR0167618B1 (ko) | 문자 발생 장치 및 방법 | |
US5959635A (en) | Character pattern generator | |
KR0142162B1 (ko) | 문자 생성 방법 및 장치 | |
US5519412A (en) | Pattern processing method | |
JPH04338798A (ja) | 高品質印字のための文字発生方法 | |
EP0385269A3 (en) | Apparatus and method for generating character pattern | |
JP2770582B2 (ja) | 図形塗潰し装置 | |
JPH05232926A (ja) | 文字記号発生装置 | |
JPS62211692A (ja) | 異なるサイズ文字の作成方式 | |
JP2650324B2 (ja) | 多値文字フォント発生システム | |
JPH02280195A (ja) | 文字処理装置および方法 | |
JP2819961B2 (ja) | 印刷制御装置 | |
JPH03288197A (ja) | 文字処理装置 | |
JP2002244643A (ja) | 画像処理装置 | |
JP2603322B2 (ja) | 文字処理装置及び方法 | |
JPH01191192A (ja) | 高品質文字発生装置 | |
JPH01303489A (ja) | 文字出力方式 | |
JP3089906B2 (ja) | 描画装置 | |
JPH0630927B2 (ja) | パターン出力方法 | |
JPH0323496A (ja) | 文字処理装置及び方法 | |
JP2881924B2 (ja) | データ記憶装置 | |
JP3039214B2 (ja) | データ変換装置 | |
JPH07160242A (ja) | 文字発生装置 | |
JP2647510B2 (ja) | 文字処理装置及び方法 | |
JPH09325748A (ja) | 文字パターン形成装置及び文字パターン形成方法 |