JP3132507B2 - データ出力方法 - Google Patents

データ出力方法

Info

Publication number
JP3132507B2
JP3132507B2 JP11322266A JP32226699A JP3132507B2 JP 3132507 B2 JP3132507 B2 JP 3132507B2 JP 11322266 A JP11322266 A JP 11322266A JP 32226699 A JP32226699 A JP 32226699A JP 3132507 B2 JP3132507 B2 JP 3132507B2
Authority
JP
Japan
Prior art keywords
data
character
line
outline
group
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
JP11322266A
Other languages
English (en)
Other versions
JP2000200080A (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 JP11322266A priority Critical patent/JP3132507B2/ja
Publication of JP2000200080A publication Critical patent/JP2000200080A/ja
Application granted granted Critical
Publication of JP3132507B2 publication Critical patent/JP3132507B2/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】
【従来の技術】文字・記号等のキャラクタを表すデータ
をコンピュータを用いて処理し、印字,ディスプレイ表
示など何等かの形で表示する場合、最小処理単位である
画素毎にドットデータを作成することが広く行われてい
る。この際、表示されるキャラクタ全部について予めド
ットデータを作成し、メモリに記憶させると極めて容量
の大きいメモリが必要となるため、特公昭63−410
17号公報に記載されているようにキャラクタをその輪
郭を表すアウトラインデータで記憶させ、印字,ディス
プレイ表示等の表示時にデータ変換手段を備えた装置に
よりドットデータに変換することが望ましい。
【0003】このアウトラインデータをドットデータに
変換するには画素スクリーンが用いられる。画素スクリ
ーンは、一平面内において互に直交するX軸とY軸とに
それぞれ平行な複数の規定線により画素を規定するもの
であり、データ変換手段は、画素スクリーンにキャラク
タの輪郭を重ね合わせた場合に、輪郭内に一定の基準以
上の部分が含まれる画素に対応するドットデータをキャ
ラクタ構成線の存在を表すデータに設定し、アウトライ
ンデータをドットデータに変換するのである。
【0004】
【発明が解決しようとする課題】しかし、このようにア
ウトラインデータをドットデータに変換し、キャラクタ
を表示する場合には、キャラクタが表示される位置によ
って同じキャラクタ構成線であってもその内側に一定の
基準以上含まれる画素の数,位置等が異なり、そのキャ
ラクタ構成線の幅、すなわちキャラクタ構成線を幅方向
において画定する2本の輪郭線内に幅方向において含ま
れる画素の数が常に同じになるとは限らない。キャラク
タ構成線の幅はデザイナがデザインする際にキャラクタ
が見映良く表示される大きさに決められるのであるが、
表示位置によってキャラクタ構成線の幅が異なり、予定
された幅が得られない場合にはキャラクタ全体のバラン
スが崩れ、見映が悪くなる。幅方向の画素数が多い場合
には幅の狂いは目立たないが、画素数が少ない場合には
顕著となり、表示品質が低下する問題が生ずる。
【0005】本発明は、キャラクタ構成線の幅がアウト
ラインデータに対応する大きさとなるようにドットデー
タを設定することができるデータ出力方法を提供するこ
とを課題として為されたものである。
【0006】
【課題を解決するための手段】この目的を達成するため
に、請求項1記載のデータ出力方法は、アウトラインデ
ータによって表されるキャラクタの輪郭を、互に直交す
るX軸方向とY軸方向とにそれぞれ平行な複数の規定線
により画素を規定する画素スクリーンに重ね合わせたと
想定した場合に、キャラクタを構成するキャラクタ構成
線内に一定基準を満たす状態で含まれる画素に対応する
ドットデータをキャラクタ構成線の存在を表すデータに
設定し、アウトラインデータをドットデータに変換し、
変換されたドットデータを出力手段から出力するデータ
出力方法であって、(a)前記キャラクタを構成する複
数のキャラクタ構成線の少なくとも一つを指定するとと
もにその構成線の幅に対応する画素数を示す線幅設定デ
ータを線幅設定記憶手段に記憶させておき、(b)前記
ドットデータへの変換に先立ち、前記線幅設定データに
より指定されたキャラクタ構成線を前記幅の方向におい
て画定する2本の輪郭線内に含まれる画素のその幅方向
における数が前記線幅設定データに対応する数であるか
判別し、(c)前記判別により対応する数ではないと判
断された場合には、前記輪郭線を前記画素の数が前記線
幅設定データに対応する数となる向きおよび量で前記画
素スクリーンに対して相対移動させ、その相対移動によ
り得られたアウトラインデータをドットデータに変換し
て出力し、(d)前記判別により対応する数であると判
断された場合には、前記輪郭線の相対移動を行うことな
くアウトラインデータをドットデータに変換して出力す
ることを要旨とするものである。
【0007】キャラクタ構成線を画定する輪郭線を画素
スクリーンに対して相対移動させれば、キャラクタ構成
線内に含まれる画素の数が変わる。したがって、キャラ
クタ構成線内に含まれる幅方向の画素の数が線幅設定デ
ータにより得られる数と異なる場合には、その数が得ら
れる向きおよび量で輪郭線を移動させる。輪郭線の移動
により得られたアウトラインデータはドットデータに変
換され、ドットデータが出力される。
【0008】一方、キャラクタ構成線内に含まれる幅方
向の画素の数が線幅設定データにより得られる数と対応
している場合には、輪郭線の相対移動を行うことなくア
ウトラインデータはドットデータに変換されて出力され
る。
【0009】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。
【0010】実施の形態として、キャラクタ構成線の幅
を確保することができるデータ変換装置がある。このデ
ータ変換装置においては、キャラクタ構成線のうち幅が
設定される線についてはその線を指定するとともに幅を
示す線幅設定データが記憶され、指定されたキャラクタ
構成線を幅方向において画定する2本の輪郭線内に含ま
れる画素の幅方向における数が設定された数でないとき
には、2本の輪郭線の少なくとも一方を移動させ、輪郭
線内に設定された数の画素が含まれるようにされてい
る。
【0011】上記のように輪郭線を移動させる際、同一
キャラクタ内において、移動させる輪郭線と幅方向にお
いて位置を同じくするすべての輪郭線を一斉に移動させ
れば、1本のキャラクタ構成線のすべての部分の線幅を
一挙に修正することができる。図14に示す漢字の
「日」を例に取れば、この「日」のアウトラインは
11,L12,L13の3本の閉ループから成り、各閉ルー
プを規定する座標値がアウトラインデータを構成してい
る。この漢字「日」において縦線(Y軸に平行なキャラ
クタ構成線)の線幅を維持する場合には、線幅設定デー
タは、例えば、幅の方向を示すデータと、キャラクタ構
成線を規定する2本の輪郭線の一方の輪郭線を規定する
座標値のデータと、幅の大きさのデータとから成るもの
とする。縦線H11の場合には、幅方向はX軸方向、座標
値はX11、幅はW11であって、座標値X11からX軸方向
にW11だけ離れたX座標値(X12となる)との間に所定
の画素数が含まれるか否かの判定を行い、含まれていな
ければ2本の輪郭線のうちいずれか一方を移動させて線
幅を修正するために必要なX座標値の修正量を求めた
後、閉ループL11〜L13を規定する座標点のうち、修正
前のX座標値と同じX座標値を一斉に修正する。今、キ
ャラクタ構成線H11についてX座標値がX12の輪郭線を
移動させて線幅を修正する場合の修正後のX座標値がX
12であるとすれば、座標(X12,Y13),(X12
14),(X12,Y15),(X12,Y16)の各X座標値
を一斉にX12′に修正するのである。同じX座標値を有
する輪郭線は、1本の縦線を画定しているのが普通であ
り、上記の一斉修正を行えば1本のキャラクタ構成線の
あらゆる部分の線幅を一挙に修正することができる。
【0012】しかし、このように座標値を一斉に修正す
るようにすれば、修正の必要のないキャラクタ構成線の
幅まで修正される事態が生ずることがある。図15に示
すように、漢字の「品」の輪郭が画素スクリーン70に
重ね合わされ、ドットデータに変換される場合を例に取
って説明する。なお、図中×印は画素中心点を示す。こ
の場合、3個の「口」の字の各縦線(画素スクリーン7
0のY軸方向に平行なキャラクタ構成線)がそれぞれ幅
を設定すべく指定されるとともに、幅方向に含まれる画
素数が2に設定されているとする。図示の例において
は、上側の「口」の縦線72に幅方向において含まれる
画素数が1であるため、一方の輪郭線74が一点鎖線で
示すように移動させられ、2個の画素が含まれるように
される。このとき下側の「口」の縦線76を画定する一
方の輪郭線78も輪郭線74と幅方向において同じ位置
にあるために二点鎖線で示すように移動させられ、幅方
向において含まれる画素数が1個になり、線幅設定デー
タにより設定された幅より細くなってしまうのである。
【0013】従って、キャラクタ構成線の幅を、影響を
与えてはいけない他のキャラクタ構成線の幅に影響を与
えることなく、確保することが可能な実施形態も考えら
れる。
【0014】その実施形態としては、(x)キャラクタ
の少なくとも1つが、それぞれ1以上のキャラクタ構成線
を構成単位とする複数のグループに分割され、各グルー
プに含まれるキャラクタ構成線のアウトラインデータ
と、キャラクタ構成線の少なくとも一つを指定するとと
もに、その構成線の幅を示す線幅設定データとがグルー
プ毎に格納されたグループ化アウトラインデータ記憶手
段と、(y)グループ内の、線幅設定データにより指定
されたキャラクタ構成線を幅方向において画定する2本
の輪郭線内に含まれる画素のその幅方向における数が線
幅設定データに対応する数ではない場合に、前記2本の
輪郭線の少なくとも一方と、その一方と幅方向における
位置を同じくする同一グループ内の他の輪郭線とを前記
画素の数が線幅設定データに対応する数となる向きおよ
び量で画素スクリーンに対して相対移動させる輪郭線移
動手段とを設け、かつ、データ変換手段を、輪郭線移動
手段の移動により得られたアウトラインデータをドット
データに変換するようにしたものがそれである。
【0015】即ち、線幅設定データにより指定されたキ
ャラクタ構成線を幅方向において画定する2本の輪郭線
内に含まれる画素のその幅方向における数が線幅設定デ
ータに対応する数ではない場合に、前記2本の輪郭線の
少なくとも一方を前記画素の数が線幅設定データに対応
する数となる向きおよび量で画素スクリーンに対して相
対移動させる一方、同一グループとして設定されてお
り、且つ、位置を同じくする同一グループ内の他の輪郭
線をも一括して相対移動させるのである。
【0016】以上のように構成された実施形態において
は、輪郭線の移動はキャラクタを分割して成るグループ
毎に行われる。したがって、異なるグループ同士では、
線幅設定のための輪郭線の移動が影響し合うことはな
く、キャラクタ構成線はそれぞれ線幅設定データにより
設定された幅とされる。同じグループ内では、幅方向の
位置を同じくする輪郭線が一斉に移動させられるのであ
るが、キャラクタを、複数本の輪郭線が一斉に移動させ
られても見映が保たれるように分割してデータをグルー
プ化アウトラインデータ記憶手段に記憶しておけば、キ
ャラクタ構成線の幅は確保され、キャラクタ全体を見映
良く表示し得るドットデータが得られる。
【0017】以下、アウトラインデ―タをドットデータ
に変換して出力するレーザプリンタに本発明を適用した
場合を例に取り、図面に基づいて詳細に説明する。
【0018】図1はレーザプリンタの制御回路のうち、
デ―タ変換に関する部分を主として示す図である。この
制御回路の主体を成すマイクロコンピュータ部10は、
CPU12,キャラクタROM14,プログラムROM
16,テキストメモリ18,ワ―キングメモリ20,ド
ットデータメモリ22,線幅修正データメモリ24,グ
ループ化アウトラインデータメモリ26を備えている。
これらCPU12等はバス28により接続されており、
バス28には入力装置30および出力手段としての印字
部32が接続されている。入力装置30は必要なデータ
をマイクロコンピュータ部10に入力するものであり、
印字部32はマイクロコンピュータ部10からの指令に
基づいてレーザプリンタ方式により印字を行う部分であ
る。なお、本レーザプリンタの解像度は300ドット/
インチとする。
【0019】CPU12には、図2に概念的に示すよう
に、データ読出部36,線幅を修正する線幅修正部3
8,アウトラインデータをドットデータに変換するデー
タ変換部40等を備えたものとして機能する。テキスト
メモリ18は、入力装置30から入力されるコ―ドデー
タから成るキャラクタデータを記憶するものであり、ワ
ーキングメモリ20は、プログラム実行時に必要なデー
タを一時的に記憶するものである。また、線幅修正デー
タメモリ24には線幅修正部38により求められる線幅
の修正に関するデータが記憶され、ドットデータメモリ
22にはデータ変換部40の変換により得られるドット
データが記憶される。
【0020】キャラクタROM14には、アルファベッ
トその他の文字や記号等キャラクタのアウトラインデ―
タが記憶されるとともに、線の幅を設定値に維持すべき
キャラクタについては線幅設定データが記憶されてい
る。キャラクタは、図4に漢字の「品」を例にして示す
ように、少なくとも 1本のキャラクタ構成線44から成
り、各キャラクタ構成線44の幅方向の画定は2本の輪
郭線46により行われ、長さ方向の画定もまた2本の輪
郭線46により行われ、これら輪郭線46が集まってキ
ャラクタの輪郭を構成する。輪郭線46の集合は閉ルー
プを形成し、図5に示すように「品」はL1〜L6の6個
の閉ループを含む。アウトラインデータは、−つの閉ル
ープ毎にその閉ル―プを画定するのに必要な複数の点の
座標を表すデータ群が記憶されて成る。キャラクタの輪
郭を決定する座標面は、図4に示すように、縦(Y
軸),横(X軸)がそれぞれ1000×1000の大き
さとされており、アルファベットの大文字はY軸の座標
値の200から1000までの間で描かれ、小文字は0
から200の間も使って描かれる。この座標面において
は、例えば漢字の「品」のように複数の直線により構成
されるキャラクタについては、L1〜L6の各ループ毎に
それぞれ角毎の座標が記憶され、アウトラインデータが
構成される。また、アルファベットの「D」のように曲
線を含むものについては、閉ループ毎にその曲線を画定
するのに必要な複数の点が記憶され、アウトラインデー
タが構成される。なお、これら閉ループ毎に記憶された
座標群は、座標群毎に、先頭の座標のX座標値が格納さ
れたアドレスが記憶され、いずれの閉ループについての
座標群であるかが区別されるようになっている。
【0021】線幅設定データは、線幅を所定値に維持す
べきキャラクタ構成線44を指定するとともに、その線
の幅を規定するデータであり、本実施形態では、図6に
示すように、キャラクタ構成線を指定するアドレス毎に
キャラクタ構成線44の幅の方向,座標値および幅が記
憶されている。幅の方向とは、X軸方向に平行な横線の
場合にはY軸方向であり、Y軸方向に平行な縦線の場合
にはX軸方向となる。また、座標値は、横線の場合はY
座標値であり、縦線の場合はX座標値であって、キャラ
クタ構成線44を幅方向において画定する2本の輪郭線
46の幅方向における座標値のうち、小さい方の値であ
る。さらに、幅とは、上記2本の輪郭線46間の幅方向
における距離である。アドレスは、線幅設定データの
「座標値」が記憶されたメモリのアドレスであり、この
アドレスの指定によりキャラクタ構成線を指定すること
ができる。「品」には6本の縦線が含まれており、実際
にはそれぞれ異なるアドレスにより区別されるが、ここ
ではアドレスに代えて符号H 1〜H6を付して区別するこ
ととする。なお、以下、線幅設定データを構成する座標
値を設定座標値、幅を設定幅と称する。
【0022】また、グループ化アウトラインデータメモ
リ26には、キャラクタが少なくとも1以上のキャラク
タ構成線を構成単位とする複数のグループに分割され、
各グループ毎に、そのグループに含まれるキャラクタ構
成線のアウトラインデータおよび線幅を維持すべきキャ
ラクタ構成線のデータが記憶される。「品」を例に取れ
ば、「口」の字1個を1グループとする第1〜第3グル
−プG1〜G3の3つに分割され、図7に示すように、各
グループ毎に、そのグループ用の記憶領域の1バイト目
にグループ開始フラグFSがセットされ、2バイト目に
グループに含まれる閉ループの数が記憶され、3〜10
バイト目に閉ループを指定するアドレスが記憶される
(図7では符号L1〜L6がアドレスの代わりに示されて
いる)。また、12バイト目にグループに含まれ、線幅
の修正が指定されたキャラクタ構成線の数が記憶され、
13〜20バイト目に線幅の修正が指定されたキャラク
タ構成線を指定する前記アドレスが記憶された後、21
バイト目に1個のグループの終了を示すエンドフラグF
Eがセットされている。他の2つのグループについても
同様にデータが記憶され、3つ目のグループのデータ記
憶後に、1個のキャラクタの終了を示すキャラクタ終了
フラグF0がセットされている。閉ループを指定するア
ドレスならびにキャラクタ構成線を指定するアドレス
は、キャラクタROM14においてそれぞれ閉ループを
規定する座標ならびに線幅設定データと対応付けられて
おり、グループ化アウトラインデータメモリ26には、
実質的にアウトラインデータおよび線幅設定データがグ
ループ化されて格納されているということができる。
【0023】本レーザプリンタにおいてアウトラインデ
ータのドットデータヘの変換は、図8に示す画素スクリ
ーン52を用いて行われる。画素スクリーン52はアウ
トラインデータをドットデータに変換するための計算上
のものであるが、ここでは理解を容易にするために実在
するものとして図示することとする。また、ここにおい
て画素とは、レーザにより印字が行われる際の最小印字
単位であり、画素スクリーン52は、一平面内において
互に直交し、X軸方向とY軸方向とにそれぞれ平行であ
って、等間隔に設けられた複数の画素区画線pにより画
素を規定している。本実施形態において画素は正方形と
されており、画素毎に印字を行うか否かのドットデータ
が作成される。また、各画素の中心点(以下、画素中心
点と称する)を通り、X軸方向とY軸方向とにそれぞれ
平行なx方向規定線xとy方向規定線yとが設定されてお
り、各画素の位置は画素中心点の座標で表される。な
お、画素は矩形その他の形状とすることも可能である。
【0024】画素スクリーン52は印字用紙の印字面に
対応して想定されるものであるが、図8には理解を容易
にするために1キャラクタ分を取り出して示してある。
したがって、画素スクリーン52全体においてx方向規
定線x,y方向規定線yに実際に付される目盛値は、図
8においてx方向規定線x,y方向規定線yに付されてい
る目盛値に適宜の整数をそれぞれ加えた値となるが、こ
こでは1キャラクタ分についてのみ考えることとする。
【0025】アウトラインデータのドットデータヘの変
換は、キャラクタの輪郭を画素スクリーン52に重ね合
わせたと規定して行われ、本実施形態においてはキャラ
クタの輪郭内の各画素にドットが形成されるようになっ
ており、その画素のビットデータが1とされる。輪郭内
には1個の画素の全部または一部が含まれることとなる
が、本実施例においては輪郭内に画素中心点が含まれる
画素のビットデータが1に設定される。
【0026】また、本レーザプリンタは、キャラクタを
4.8ポイント,10ポイント,12ポイント,20ポ
イント,24ポイント,30ポイント等任意のサイズで
印字することができ、印字サイズに合わせて前記100
0×1000の座標面で作られた輪郭の座標値が換算さ
れる。1画素の1辺の長さを1で表す座標面を画素スク
リーン52上に想定して座標値の換算が行われるのであ
り、あるポイントのキャラクタがC×Cで表されるとす
れば、1000×1000の座標面上における輪郭を決
定する各点の座標値にC/1000を掛ければ上記画素
スクリーン52上に想定した座標面上の座標値が得られ
るのである。なお、キャラクタの輪郭を画素スクリーン
52に重ね合わせる際には、印字位置データに基づいて
各キャラクタの基準点の画素スクリーン52上における
座標値の決定も行われ、得られた基準点の座標値と上記
換算された座標値とを用いて重ね合わせが行われる。
【0027】このようにキャラクタの輪郭の画素スクリ
ーン52上における位置はキャラクタの大きさの他、印
字位置にも影響されるため、同じキャラクタを構成する
キャラクタ構成線44でも輪郭内に幅方向において含ま
れる画素数が異なり、幅に違いが生ずることがある。例
えば、1画素内に形成されるドットを円で表せば、図9
(a)に示すように幅方向の画素数が4画素となるよう
にアウトラインがデザインされたキャラクタ構成線は、
印字位置によって図9(b)に示すように幅が3画素と
なることもあるのであり、この違いは印字サイズが大き
い場合にはそれほど目立たないが、印字サイズが小さい
場合は顕著となる。図中×印は画素中心点を示す。
【0028】それに対し、本レーザプリンタにおいては
印字サイズが12ポイント以下の場合、線幅が設定幅と
異なる場合にアウトラインデータを修正してドットデー
タを設定し、キャラクタ構成線を設定された幅で印字し
得るようにされており、プログラムROM16には、図
3にフローチャートで示す線幅修正機能を備えたドット
データ変換用のルーチンを始めとして、印字に必要な種
々のルーチンが記憶されている。以下、漢字の「品」を
4.8ポイントで印字する場合を例に取り、アウトライ
ンデータのドットデータへの変換について説明する。な
お、印字については本発明を理解する上で不可欠ではな
いため詳細な説明は省略するが、本レーザプリンタにお
いては印字が1頁毎に行われる。テキストメモリ18に
記憶された文書データのうち1頁分ずつデータが読み出
され、そのデータに対応する多数のキャラクタのアウト
ラインデータがそれぞれドットデータに変換されて印字
が行われるのである。
【0029】まず、ステップS1(以下、S1と略記す
る。他のステップについても同じ。)において処理され
るキャラクタのアウトラインデータ,線幅設定データお
よび印字サイズが読み出される。また、これらアウトラ
インデータおよび線幅設定データに含まれる座標値なら
びに幅は、1000×1000の座標面上において設定
された値であり、印字サイズおよび印字位置データに基
づいて画素スクリーン52上における座標値に換算され
てワーキングメモリ20に格納される。このとき幅は、
1画素の1辺の1000×1000の座標における値(印
字サイズが4.8ポイントの場合は50)で除すること
により換算され、余りなく除することができない場合に
は少数第一位以下の値が四捨五入されて整数値とされ
る。この整数値は2本の輪郭線間に合まれるべき画素数
であり、四捨五入されない値(2本の輪郭線間の距離)
と共にワーキングメモリ20に格納される。
【0030】次いで、S2において印字サイズが12ポ
イント以下であるか否かの判定が行われる。線幅の修正
が必要であるか否かの判定が行われるのであり、印字サ
イズが20ポイント,24ポイント,30ポイント等1
2ポイントより大きい場合には判定結果はNOとなり、
S10においてドットデータの設定が行われる。キャラ
クタの輪郭がそのまま画素スクリーン52に重ね合わさ
れ、輪郭内に画素中心点が含まれる画素に対応するドッ
トデータが1に設定され、ドットデータメモリ22に記
憶されるのである。
【0031】それに対し、印字サイズが12ポイント以
下である場合にはS2はYESとなり、S3において読
み出されたキャラクタがグループに分割されているか否
かの判定が行われる。この判定は、S1において読み出
されたキャラクタに対応するグループ化アウトラインデ
ータがメモリ26に格納されているか否かにより行わ
れ、分割されていればS3はYESとなり、S4以下に
おいてグループ化アウトラインデータが読み出される。
まず、S4において1バイト目のデータが読み出され
る。1バイト目には第1グループG1の開始を示すグール
プ開始フラグFSがセットされているため、続いて実行
されるS5の判定はNOとなり、S6において第1グル
ープG1に含まれる閉ループの総数および閉ループを指
定するアドレスが読み出されるとともに、S7において
線幅の修正を指定されたキャラクタ構成線44の数およ
びそのキャラクタ構成線44を指定するアドレスが読み
出される。エンドフラグFEが読み出されるまで、グー
ルプ開始フラグFSからエンドフラグFEまでの間に記憶
されたデータが読み出されるのであり、読出し後、S8
が実行されて線幅修正処理が行われる。
【0032】この処理は本出願人にかかる特願平1−5
2524号に記載の処理と同じであり、簡単に説明す
る。第1グループG1ではキャラクタ構成線H1およびH2
が線幅を修正する線として指定されているため、H1
2の幅の方向,設定座標値および設定幅がワーキング
メモリ20から読み出される。これら設定座標値および
設定幅はS1における換算により印字サイズおよび印字
位置データに応じた値に換算されており、換算された設
定座標値から換算された設定幅だけ離れた座標値までの
間に、設定数の画素が含まれるか否かの判定が行われ
る。画素数はS1において算出されており、この数だけ
画素が含まれていればキャラクタ構成線の幅の修正の必
要はなく、修正処理は行われない。
【0033】また、画素数が不足し、あるいは余分な場
合にはキャラクタ構成線を幅方向において画定する2個
の座標値のうちのいずれか(本実施形態においては線幅
設定データとして記憶された方の値、すなわち小さい方
の座標値)が移動させられる。H1は縦線であり、輪郭
線46はX軸に平行な方向に移動させられ、キャラクタ
構成線に含まれる幅方向の画素数が変えられるのであ
る。輪郭線46は、実際の幅が設定幅より大きい場合に
はX座標値が大きくなる向きに移動させられ、小さい場
合にはX座標値が小さくなる向きに移動させられる。輪
郭線46は、実際の幅が設定幅に等しくなるのに最小限
必要な量移動させられ、その移動により得られた座標値
が修正座標値とされる。構成線H2についても同様に修
正が必要であるか否かの判定が行われ、必要であれば輪
郭線が移動させられて修正座標値が求められ、修正前の
末修正座標値と共に線幅修正データメモリ24に記憶さ
れる。キャラクタ構成線H1,H2について修正の判定な
らびに修正が行われたならば、第1グループG1に含まれ
る閉ループ指定アドレスに基づいて閉ループL1,L2
規定する座標群がアウトラインデータから読み出され、
それら座標群のうち未修正座標値と同じX座標値が読み
出され、それらX座標値は−斉に修正座標値に置換され
てワーキグメモリ20に記憶される。
【0034】第1グループG1について線幅の修正判定な
らびに修正が行われたならば、ルーチンの実行はS4に
戻り、次のデータが読み出される。第2グループG2
1番目のデータが読み出されるのであり、縦の構成線H
3,H4について修正の判定ならびに修正が行われる。さ
らに、第3グループG3についても構成線H5,H6につ
いて修正の判定ならびに修正が行われれば、次に読み出
されるデータはキャラクタ終了フラグF0であり、S5
の判定はYESとなり、S10が実行されてアウトライ
ンデータがドットデータに変換される。このときアウト
ラインデータのうちキャラクタ構成線の幅を維持するた
めに必要な座標値は修正されており、その修正された座
標値に基づいてドットデータヘの変換が行われることに
より、線幅が確保される。また、線幅の修正は各グルー
プ毎に行われるため、一つのグループに含まれるキャラ
クタ構成線を規定する輪郭線の移動が他のグループの輪
郭線の移動に及ぼすことはない。
【0035】なお、キャラクタがグループに分割されて
いない場合にはS3がNOとなり、S9において線幅修
正処理が行われた後、S10においてアウトラインデー
タがドットデータに変換される。グループに分割されな
いキャラクタについても、線幅設定データがキャラクタ
ROM14に記憶されており、その線幅設定データに基
づいて線幅の修正がキャラクタがグループに分割された
場合と同様に行われる。
【0036】以上の説明から明らかなように、本実施形
態においては、プログラムROM16のS10を記憶す
る部分およびCPU12のS10を実行する部分、すな
わちドットデータ変換部40がデータ変換手段を構成
し、グループ化アウトラインデータメモリ26がグルー
プ化アウトラインデータ記憶手段を構成し、プログラム
ROM16のS3〜S8を記憶する部分およびCPU1
2のそれらステップを実行する部分、すなわち線幅修正
部38が輪郭線移動手段を構成しているのである。
【0037】なお、上記実施形態の「品」の字におい
て、縦線の修正は「品」を3個のグループに分けてグル
ープ毎に行うことが必要であるが、横線についてはグル
ープに分ける必要がない。同じY座標値を有するすべて
の輪郭線が一斉に移動させられても差支えないからであ
り、「品」は横線の修正については1個の大グループに
分割され、そのグループ中に縦線を修正するための3個
の小グループが含まれることとなる。このように大グル
ープ中に複数の小グループが含まれる場合であっても、
上記実施形態におけるように、縦線および横線の修正を
共に各小グループ毎に行うことも可能であるが、図10
ないし図13に示す実施形態のように修正を行うことが
望ましい。
【0038】「品」は図10に示すように、H2〜H7
6本の縦線と、V2〜V7の6本の横線とを有し、アウト
ラインはL1〜L6の6本の閉ループによって画定され
る。なお、図10において座標値は説明に必要な座標の
みに記載されている。「品」のアウトラインデータは、
キャラクタROM14に図11に示すように記憶されて
おり、アドレスによって各座標値を指定することができ
る。また、線幅設定データは、図12に示すように記憶
されている。なお、座標値はいずれも、キャラクタ構成
線を画定する2本の輪郭線の座標値のうち、小さい方の
値であり、幅wa〜wLは正の値である。さらに、グルー
プ化アウトラインデータは、図13に示すように、
「品」全体を包含する大グループに含まれる全部の横線
を指定する1個のグループデータと、1個の「口」を1小
グループとする第1〜第3小グループGl〜G3の各グル
ープデータと、各グループの終了を示すグループ終了デ
ータeとを含んでいる。
【0039】そして、線幅修正時には、まず、グループ
化アウトラインデータの第1グループデータ、すなわち
図13の最上部に記載されている1個のグループ開始デ
ータsと、それに続く1群のデータが読み出され、か
つ、その次のグループ開始データsに続くアウトライン
データのアドレスも読み出される。この読出しの間、グ
ループ開始データsが読み出される毎にネスティングカ
ウンタのカウント値が1増加させられ、グループ終了デ
ータeが読み出される毎にカウント値が1減少させられ
る。また、縦線と横線との線幅設定データのアドレスが
それぞれ所定の記憶領域に格納される。ここでは大グル
ープに属する全部の横線V2〜V7についての線幅設定デ
ータのアドレスが格納される。そして、読み出されたデ
ータを用いて、相前後する2個のグループ開始データs
に続く2個のアドレス間のアウトラインデータの修正が
行われるのであるが、第1グループについてはこれら2
個のアドレスが共に0で等しいため、実際には何らの修
正も行われない。また、第1グループデータの次にはグ
ループ終了データeがないため、格納された横線の線幅
設定データはそのまま残される。
【0040】続いて、第2グループデータが読み出され
る。2番目のグループ開始データsとそれに続く1群の
データが読み出されるのであるが、この場合にも次のグ
ループ開始データsに続くアウトラインデータのアドレ
スが共に読み出される。第2グループデータは「品」の
第1小グループG1に属する2本の縦線H2,H3の線幅
設定データを含んでいるため、これらデータと残されて
いる全部の横線についての線幅設定データとを用いて、
アドレス(00),(80)間のアウトラインデータの
修正が行われる。まず、修正に先立って印字サイズおよ
び印字データに基づいて数値の換算が行われる。次い
で、全部の横線V2〜V7と第1グループG1に含まれる2
本の縦線(H2,H3)とについてそれぞれ、線幅が所定
の画素数であるか否かの判定が行われ、画素数が不足あ
るいは余分であれば線幅の修正に必要な座標値の修正が
行われる。その後、2個のアドレス(00)から(8
0)までの間に記憶されたX座標値,Y座標値(アドレ
ス(80)について記憶された座標値は含まれない)の
うち、未修正座標値と同じX座標値,Y座標値が一斉に
修正座標値に修正される。アドレス(00),(80)
間の座標値は閉ループL 1,L2を規定する座標値であ
り、横線については、6本の横線V2〜V7の各々につい
て修正座標値が求められるものの、実際に座標値が修正
されるのは第1小グループG1に含まれる横線V2,V3
である。線幅の修正後、グループ終了データeが読み出
されるが、この段階でのネスティングカウンタのカウン
ト値は1であってまだ0にはならないため、最新のグル
ープデータに含まれる線幅設定データ、すなわち縦線H
2,H3について設定された線幅設定データのみが削除さ
れ、6本の横線V2〜V7についてのデータは残される。
次いで、第3グループデータが読み出されるとともに、
その次に記憶されているグループ開始データsに続くア
ドレス(160)が読み出される。第2小グループG2
について設定された線幅設定データが読み出されるので
あり、読み出されたデータにはグループ開始データsが
含まれているため、ネスティングカウンタのカウント値
が1増大させられ、2となる。そして、数値の換算後、
縦線H4,H5について線幅の修正が必要であるか否かが
判定され、必要であれば修正座標値が求められた後、ア
ドレス(80),(160)間に含まれる座標値のう
ち、未修正座標値と同じX座標値があれば一斉に修正さ
れる。また、横線V2〜V7の未修正座標値と同じY座標
値があれば、先に求めた修正座標値に一斉に修正され、
横線V4,V5の線幅が修正される。修正後、グループ終
了カウンタeの読み出しに伴ってネスティングカウンタ
の値が1減じられるが、まだ0にはならないため、最新
のグループデータに含まれる線幅設定データ、すなわち
縦線H3,H4について設定された線幅設定データのみが
削除され、横線V2〜V7についての線幅設定データは残
される。
【0041】さらに、第4グループデータが読み出され
るが、その第4グループの次には小グループの終了を示
す終了データeと大グループの終了を示すグループ終了
データeとが続いて格納されているため、大グループに
属するアウトラインデータのうち、アドレス160以降
のすべてのデータの修正が行われる。すなわち、第3小
グループG3に含まれる縦線H6,H7および横線V6,V
7の線幅が修正される。修正後、小グループの終了を示
すグループ終了データeの読み出しに伴ってネスティン
グカウンタのカウント値が1減じられるが、未だカウン
ト値が0ではないため、縦線H6,H7の線幅設定データ
のみが削除される。そして、続いて大グループの終了を
示すグループ終了データeの読み出しに伴ってネスティ
ングカウンタのカウント値が1減じられれば、カウント
値は0となるため、横線V2〜V7の線幅設定データが削
除される。
【0042】ネスティングカウンタのカウント値が0に
なったということは、大グループならびにその大グルー
プに含まれる小グループ全部についての線幅の修正が終
了したことを意味し、次に設定された大グループおよび
その大グループに含まれる小グループについての線幅の
修正が行われる。本実施形態において大グループである
「品」はキャラクタそのものであるため、次のキャラク
タの線幅修正が行われるのであるが、大グループが1個
のキャラクタを分割して成るグループである場合には、
そのキャラクタに含まれる別の大グループについて線幅
の修正が行われることとなるのである。このように線幅
設定データ毎にそれらが適用されるグループが異なる場
合でも支障なく線幅の修正を行うことができる。
【0043】なお、本実施形態においては、グループデ
ータの読出し時に、そのグループの次のグループのグル
ープ開始データsおよびそれに続くアウトラインデータ
のアドレスが読み出されて2個のアドレスを得ることに
より、座標値が修正される閉ループが求められるように
されていたが、各グループデータ毎に、そのグループに
含まれる全部の閉ループの開始アドレスと終了アドレス
とを記憶するようにしてもよい。このようにすれば、次
のグループのアウトライン指定アドレスを読み出すこと
なく、必要な閉ループの座標値を得ることができる。
【0044】また、上記2実施形態においてグループ化
アウトラインデータメモリ26は、閉ループならびにキ
ャラクタ構成線をそれぞれ指定するアドレスを記憶する
ようにされていたが、閉ループおよびキャラクタ構成線
を規定する座標データそのものをグループ化して記憶す
るようにしてもよい。
【0045】さらに、上記2実施形態においてキャラク
タの分割は、1グループを独立した複数本のキャラクタ
構成線が含まれるように行われていたが、1本のキャラ
クタ構成線が別々のグループに属するようにキャラクタ
を分割してもよい。
【0046】さらにまた、1グループに含まれるキャラ
クタ構成線は1本でもよい。
【0047】その他、特許請求の範囲を逸脱することな
く、当業者の知識に基づいて種々の変形,改良を施した
態様で本発明を実施することができる。
【0048】
【発明の効果】以上説明したことから明らかなように、
請求項1記載のデータ出力方法においては、キャラクタ
構成線を画定する輪郭線を画素スクリーンに対して相対
移動させれば、キャラクタ構成線内に含まれる画素の数
が変わる点を利用している。
【0049】キャラクタ構成線内に含まれる幅方向の画
素の数が線幅設定データにより得られる数と対応しない
場合には、その数が対応するようになる向きおよび量で
輪郭線を移動させることにより得られたアウトラインデ
ータはドットデータに変換され、ドットデータが出力手
段から出力される。一方、キャラクタ構成線内に含まれ
る幅方向の画素の数が線幅設定データにより得られる数
と対応している場合には、輪郭線の相対移動を行うこと
なくアウトラインデータはドットデータに変換されて出
力される。
【0050】したがって、キャラクタ構成線をアウトラ
インデータに対応する幅で出力することができ、出力位
置の違いによる幅の不揃いがなくなってキャラクタを見
映え良く出力することができるという、大変優れた効果
がある。
【図面の簡単な説明】
【図1】本発明の一実施形態であるレーザプリンタの制
御回路を示すブロック図である。
【図2】上記制御回路の構成要素であるCPUを概念的
に示す図である。
【図3】上記制御回路のプログラムROMに記憶された
ルーチンのうち、データ変換用ルーチンを示すフローチ
ャートである。
【図4】上記データ変換装置により変換される漢字の
「品」を示す図である。
【図5】上記「品」の線幅設定データの設定を説明する
図である。
【図6】上記線幅設定データの内容を示す図である。
【図7】上記「品」を分割して設定されたグループ化ア
ウトラインデータを示す図である。
【図8】上記「品」を画素スクリーンに重ねて示す図で
ある。
【図9】キャラクタ構成線を画定するアウトラインの印
字位置による違いを説明する図である。
【図10】別の実施形態であるデータ変換装置により変
換される「品」を示す図である。
【図11】その「品」について設定されたアウトライン
データの内容を示す図である。
【図12】線幅設定データの内容を示す図である。
【図13】グループ化アウトラインデータを示す図であ
る。
【図14】データ変換装置によるアウトラインデータの
ドットデータヘの変換の一例を説明する図である。
【図15】図14にて例示した変換により生ずる問題を
説明する図である。
【符号の説明】
10 マイクロコンピュータ部 44 キャラクタ構成線 46 輪郭線 52 画素スクリーン X X方向規定線 Y Y方向規定線
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G09G 5/24 B41J 2/485 G06T 1/00

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 アウトラインデータによって表されるキ
    ャラクタの輪郭を、互に直交するX軸方向とY軸方向と
    にそれぞれ平行な複数の規定線により画素を規定する画
    素スクリーンに重ね合わせたと想定した場合に、キャラ
    クタを構成するキャラクタ構成線内に一定基準を満たす
    状態で含まれる画素に対応するドットデータをキャラク
    タ構成線の存在を表すデータに設定し、アウトラインデ
    ータをドットデータに変換し、変換されたドットデータ
    を出力手段から出力するデータ出力方法であって、 前記キャラクタを構成する複数のキャラクタ構成線の少
    なくとも一つを指定するとともにその構成線の幅に対応
    する画素数を示す線幅設定データを線幅設定記憶手段に
    記憶させておき、 前記ドットデータへの変換に先立ち、前記線幅設定デー
    タにより指定されたキャラクタ構成線を前記幅の方向に
    おいて画定する2本の輪郭線内に含まれる画素のその幅
    方向における数が前記線幅設定データに対応する数であ
    るか判別し、 前記判別により対応する数ではないと判断された場合に
    は、前記輪郭線を前記画素の数が前記線幅設定データに
    対応する数となる向きおよび量で前記画素スクリーンに
    対して相対移動させ、その相対移動により得られたアウ
    トラインデータをドットデータに変換して出力し、 前記判別により対応する数であると判断された場合に
    は、前記輪郭線の相対移動を行うことなくアウトライン
    データをドットデータに変換して出力することを特徴と
    するデータ出力方法。
JP11322266A 1999-11-12 1999-11-12 データ出力方法 Expired - Fee Related JP3132507B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11322266A JP3132507B2 (ja) 1999-11-12 1999-11-12 データ出力方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11322266A JP3132507B2 (ja) 1999-11-12 1999-11-12 データ出力方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP02223442A Division JP3077180B2 (ja) 1990-08-24 1990-08-24 データ変換装置

Publications (2)

Publication Number Publication Date
JP2000200080A JP2000200080A (ja) 2000-07-18
JP3132507B2 true JP3132507B2 (ja) 2001-02-05

Family

ID=18141737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11322266A Expired - Fee Related JP3132507B2 (ja) 1999-11-12 1999-11-12 データ出力方法

Country Status (1)

Country Link
JP (1) JP3132507B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8107729B2 (en) * 2009-01-26 2012-01-31 Mitsubishi Electric Research Laboratories, Inc. Method for improving character outlines using multiple alignment zones

Also Published As

Publication number Publication date
JP2000200080A (ja) 2000-07-18

Similar Documents

Publication Publication Date Title
US5018217A (en) Data converting apparatus having means for changing ornamental stroke end data of character outline
JP3132507B2 (ja) データ出力方法
JPH08314655A (ja) 文書出力装置
JP3077180B2 (ja) データ変換装置
JP3038840B2 (ja) データ変換装置
JP3169013B2 (ja) データ出力装置
JPH05232926A (ja) 文字記号発生装置
JP2903531B2 (ja) データ変換装置
JPH02231166A (ja) データ変換装置
JP3092172B2 (ja) データ変換装置
JP2861127B2 (ja) データ変換装置
JP2757411B2 (ja) データ変換装置
JP3057811B2 (ja) データ変換装置
JPH04280296A (ja) 輪郭線データ処理装置
JP2956705B2 (ja) データ変換装置
JPH05341763A (ja) 文字生成装置
JP2770331B2 (ja) データ変換装置
JP2861201B2 (ja) データ変換装置
JP2811684B2 (ja) キャラクタデータ処理装置
JP2841829B2 (ja) データ変換装置
JP2881924B2 (ja) データ記憶装置
JPH02254491A (ja) データ変換装置
JPH0747339B2 (ja) データ変換装置
JP3057963B2 (ja) データ変換装置
JP3055306B2 (ja) データ出力装置

Legal Events

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

Free format text: PAYMENT UNTIL: 20071124

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081124

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20091124

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees