JPH06167961A - 文字補正方式およびその装置 - Google Patents

文字補正方式およびその装置

Info

Publication number
JPH06167961A
JPH06167961A JP4320333A JP32033392A JPH06167961A JP H06167961 A JPH06167961 A JP H06167961A JP 4320333 A JP4320333 A JP 4320333A JP 32033392 A JP32033392 A JP 32033392A JP H06167961 A JPH06167961 A JP H06167961A
Authority
JP
Japan
Prior art keywords
coordinate
correction
coordinate point
point
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.)
Pending
Application number
JP4320333A
Other languages
English (en)
Inventor
Hiroko Sato
裕子 佐藤
Kazuko Hasegawa
和子 長谷川
Shinji Wakizaka
新路 脇坂
Hiroshi Wada
弘士 和田
Hiroaki Shirane
弘晃 白根
Kazuhisa Nishimoto
和久 西本
Kenji Nakamura
健治 中村
Yuichi Horiuchi
雄一 堀内
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.)
Hitachi Ltd
Hitachi Industry and Control Solutions Co Ltd
Original Assignee
Hitachi Image Information Systems Inc
Hitachi Ltd
Hitachi Video and Information System Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Image Information Systems Inc, Hitachi Ltd, Hitachi Video and Information System Inc filed Critical Hitachi Image Information Systems Inc
Priority to JP4320333A priority Critical patent/JPH06167961A/ja
Publication of JPH06167961A publication Critical patent/JPH06167961A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【目的】 線幅を補正した高品質な文字を高速に得られ
るようにする。 【構成】 文字の輪郭を形成する座標点P0〜P24の座
標データは、その座標点の座標値に加え、前の座標点か
らの相対的な方向を示す方向属性データを含んでいる。
フォントROMから例えば座標点P0の座標データが読
み込まれると、その方向属性データがラッチされ、次の
座標点P1の座標データがフォントROMから読み込ま
れると、これもラッチされる。そして、これら方向属性
データはデコードされ、このデコード結果に応じた補正
量,補正方向でもって座標点P0が補正され、新たな座
標点P0´が設定される。以下同様にして、座標点P1
24の補正がなされ、新たな座標点P0´〜P24´から
なる破線で示す輪郭の線幅が補正された文字が得られ
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、文書を作成する情報処
理装置に係り、特に、高品質で高速な文字出力を行なう
のに好適なアウトラインフォントの文字補正方式及びそ
の装置に関する。
【0002】
【従来の技術】従来、高品質な文字を発生するために
は、文字の輪郭情報を示す文字データを記憶装置に格納
し、その文字データをこの記憶装置から取り出して目標
の文字サイズに座標変換し、レーザープリンタやディス
プレイ等の出力装置にドット形式で出力していた。この
方法では、文字の太さ、即ち線幅は文字の縮小・拡大率
に比例していたため、文字を縮小した場合には、文字が
つぶれて表示され、また、文字を拡大した場合には、表
示される文字が貧弱になり、非常にみにくい文字となっ
てしまっていた。
【0003】このような問題に対処するために、例えば
特開昭63−303477号公報に記載のように、文字
の輪郭情報をポリゴン(多角形)の頂点を方向性をもっ
た座標データとして格納し、上記方向性に基づいてポリ
ゴンの各辺を移動させる方向を判断し、文字の線幅を指
定された変更量に応じてポリゴンの新たな頂点の座標デ
ータを求める線幅補正処理を行なっている。この方法に
よると、ユーザーが線幅を設定し、小さいサイズの文字
については、文字がつぶれないように線幅を細くし、ま
た、大きいサイズの文字については、迫力が出るように
線幅を太くしていた。
【0004】
【発明が解決しようとする課題】しかしながら、上記従
来の文字補正方式は、文字の太さ、即ち線幅を、小さい
サイズの文字に対してはより細く、大きいサイズの文字
に対してはより太くするように、補正するものであっ
て、この線幅補正は、ポリゴン、即ち直線に関してのみ
行なわれるものであり、曲線の線幅補正に関しては考慮
されていなかった。
【0005】また、斜線に関しても、補正の移動方向や
移動距離、移動後の新しい座標データなどをそのデータ
毎に算出していたため、処理速度が遅くなるという問題
があった。
【0006】本発明の目的は、かかる問題を解消し、水
平線や垂直線,斜線,曲線に対して最適な線幅補正を可
能とした文字補正方式及びその装置を提供することにあ
る。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、 隣合う2つの座標点の座標データの組
合せの種類毎の補正方向及び補正量のデータが予め設定
されており、文字の輪郭を規定する座標点毎に、該座標
点の座標データとこれに隣合う他の座標点の座標データ
との組合せに応じた該座標点の補正方向及び補正量を選
択し、該補正方向及び補正量により、該座標点に対する
新たな座標点を設定し、該新たな座標点の座標データで
線幅が補正された文字の輪郭を規定する。
【0008】また、本発明は、曲線に対して線幅補正処
理と補間処理とを行なう場合には、曲線補間方式として
曲線の輪郭線の形状を規定する点を通らない曲線補間方
式を用いる場合には、初めに曲線補間処理を行なって曲
線をショートベクトルに変換し、次に線幅補正処理を行
なうようにし、また、曲線補間方式として曲線の輪郭線
の形状を規定する点を通る曲線補間方式を用いる場合に
は、初めに線幅補正処理を行ない、次に曲線補間処理を
行なって曲線をショートベクトルに変換する。
【0009】
【作用】予め線幅補正のための補正データが設定されて
いるから、座標点は、これの座標データとこれに隣接す
る座標点の座標データとから容易にこの座標点に対する
補正データを得ることができ、従って、水平線や直線ば
かりでなく、斜線,曲線に対しても、LSIの処理とし
て高速な線幅補正ができる。また、かかる補正データと
しては、線幅補正に最良なものとすることが可能であ
り、従って、高品質の線幅補正された文字が得られる。
【0010】また、曲線の輪郭線の形状を規定する点を
通らない曲線補間方式を用いる場合には、初めに曲線補
間処理を行なって曲線をショートベクトルに変換し、次
に線幅補正処理を行なうので、文字の品質を向上させる
ことができるし、また、曲線の輪郭線の形状を規定する
点を通る曲線補間方式を用いる場合には、初めに線幅補
正処理を行ない、次に曲線補間処理を行なって曲線をシ
ョートベクトルに変換しているので、処理の高速化及び
文字の品質を向上させることができる。
【0011】
【実施例】以下、本発明の実施例を図面により説明す
る。まず、図2により、本発明を実施するために用いる
情報処理装置について説明する。
【0012】この情報処理装置は、図示するように、ア
ウトラインフォントデータを格納するためのフォントR
OM(リード・オンリ・メモリ)101、このフォント
ROM101からアウトラインフォントデータを読み込
んで、そのフォントデータに対し、線幅補正処理や曲線
補間処理、拡大や縮小、回転、剪断、鏡転などといった
座標変換や描画などの一連の処理を実行し、ドットフォ
ントに変換する文字発生装置102、システムを動作さ
せるプログラムなどがを記憶するシステムメモリ10
3、中央処理装置(以下、CPUという)104、文字
等のデータをドットで表示するディスプレイ105、文
字等のデータをドットで印刷するプリンタ106及びキ
ーボード107からなっている。
【0013】CPU104はフォントROM101のア
ウトラインフォントデータ情報を文字発生装置102に
転送する。文字発生装置102は、このアウトラインフ
ォントデータ情報とシステムメモリ103の情報やキー
ボード107から入力される各種の情報に基づいて、上
記一連の処理を行なってアウトラインフォントデータを
ドットフォントデータに変換する。変換されたドットフ
ォントデータはディスプレイ105やプリンタ106に
供給され、文字などの表示や印刷がなされる。
【0014】次に、図1に示す文字「オ」を例として、
フォントROM101内に格納されるアウトラインフォ
ントデータの構造について、図3により説明する。但
し、この実施例においては、座標系は左下座標系を使用
する。
【0015】図3(a)は図1に示す文字「オ」のアウ
トラインフォントデータの構成例を示したものである。
アウトラインフォントデータは、大きく分けてフラグデ
ータと座標データとから構成されている。フラグデータ
は1ループの開始・終了などを示し、座標データはx座
標やy座標の座標値、そして補正方向を決める属性デー
タなどが格納されている。図3(a)において、201
は領域開始フラグデータであり、アウトラインフォント
データの1ループの始点であることを示している。20
2は座標データP0〜P24 を示す。1ループはP0から
24 まで順に格納されており、最後にもう一度P0
格納されている。203は終了フラグであり、1ループ
の終点であることを示している。
【0016】ここで、上記座標データ202について図
3(b)を用いて詳しく説明する。n番目の座標データ
Pnは、補正方向を決める属性データ(以下、これを方
向属性データとという)211とx座標データ212と
y座標データ213との3つのワードから構成されてい
る。方向属性データ211は4ビットから構成されてお
り、x座標データ212とy座標データ213は夫々8
ビットから構成されている。x座標データ212はx座
標の絶対座標値Xnであり、y座標データ213はy座
標の絶対座標値Ynである。従って、x,y座標データ
は夫々0〜255までの値を取ることが可能である。
【0017】方向属性データ211は前点233から後
点234への相対移動方向を示すものである。ここで、
前点233とは補正を行なおうとしている点のことであ
り、後点234とは補正を行なう点の次の点のことであ
る。方向属性データ211は4ビットから構成されてお
り、図3(c)に示すように、上位ビットから順にXP
ビット221,XMビット222,YPビット223,
YMビット224と呼ぶことにする。
【0018】XPビット221が“1”のときには、前
点233から後点234への相対移動方向において、後
点234のx座標値は前点233のx座標値に対してプ
ラス方向に移動していることを示す。XM222ビット
が“1”のときには、前点233から後点234への相
対移動方向において、後点234のx座標値は前点23
3のx座標値に対してマイナス方向に移動していること
を示す。同様に、YPビット223が“1”のときに
は、前点233から後点234への相対移動方向におい
て、後点234のy座標値は前点233のy座標値に対
してプラス方向に移動していることを示し、YMビット
224が“1”のときには、前点233から後点234
への相対移動方向において、後点234のy座標値は前
点233のy座標値に対してマイナス方向に移動してい
ることを示す。
【0019】方向属性データ211は相対移動方向を表
わしたものであって、この相対移動方向は前点233か
ら後点234を結んだ直線の向きの矢印で示している。
図3(d)に図示するように、全部で上下左右4ビット
8通りの相対移動方向ある。前点に付加されている方向
属性データと後点に付加されている方向属性データとか
ら前点の補正を行なうのであるが、図3(e)は、方向
属性データを“XP,XM,YP,YM”と表わし、前
点233の座標データに付加されている前点233の方
向属性データ231を“1,0,1,0”、後点234
の座標データに付加されている後点234の方向属性デ
ータ232を“1,0,0,1”としたときの前点23
3の補正を示したものであり、これら方向属性データ
“1,0,1,0”と“1,0,0,1”から補正方向
をy座標値に対してマイナス方向と判定し、前点233
の補正が行なわれる。
【0020】なお、方向属性データ211は4ビットの
データに限るものではなく、3ビットで1つの方向を規
定してもよい。また、座標データ202に方向属性デー
タが付加されていない場合には、x座標データ212と
y座標データ213とから新たに方向属性データを求め
てもよい。
【0021】次に、図4により、線幅補正について説明
する。但し、図4(a)は水平線の線幅補正の補正方向
を、図4(b)は垂直線の線幅補正の補正方向を、図4
(c)は斜線の線幅補正の補正方向を、図4(d)は曲
線の線幅補正の補正方向を夫々模式的に示してものであ
る。
【0022】図4に示すような線幅補正を実行するに
は、図3に示した前点233に付加されている前点23
3の方向属性データ231(XP=1,XM=0,YP
=1,YM=0)と後点234に付加されている後点2
34の方向属性データ232(XP=1,XM=0,Y
P=0,YM=1)とから、前点の補正方向を決めなけ
ればならない。その補正方向の判定方法を説明する。
【0023】補正方向は、前述したように8通りに限定
し、前点と後点夫々の方向属性データのXPビット22
1、XMビット222、YPビット223、YMビット
224の相互関係によって決定される。XPビット22
1が“1”のときには、前点から後点の相対方向におい
て、後点のx座標値は前点のx座標値に対してプラス方
向に移動していることを示し、XM222ビットが
“1”のときには、前点から後点への相対方向におい
て、後点のx座標値は前点のx座標値に対してマイナス
方向に移動していることを示している。YPビット22
3、YMビット224についてもy座標について同様に
示される。
【0024】補正方向はx方向、y方向について夫々6
4パターンが考えられるが、その最適とみられる補正の
方向を、前点・後点の方向属性データとの関係で表わし
たものが図5である。但し、図5において、501は前
点の方向属性データ、502は後点の方向属性データ、
503,504は2つの方向属性データ501,502
から決定されたx,y方向の補正方向である。また、a
は水平・垂直線用補正量を表わし、bは斜線・曲線用補
正量を表わす。例えば、+aは補正量aだけプラス方向
に補正することを意味する。
【0025】ここで、補正の方向と前点・後点の方向属
性データとの関係505、506を例として説明する。
関係505では、前点,後点とも方向属性データが
“0,0,0,1”であって、y軸に関してのみマイナ
スの方向である。この場合、前点の補正はx座標のみ補
正量aだけプラスの方向へ移動し、y座標は移動しな
い。また、関係506では、前点の方向属性データが
“0,0,1,0”であって、y軸に関してのみプラス
の方向であり、後点は方向属性データが“0,1,0,
1”であって、x軸,y軸両方に関してマイナスの方向
である。この場合には、前点の補正はx,y両座標とも
補正量aだけマイナスの方向へ移動する。
【0026】次に、図6により、典型的な補正の例を説
明する。図6(a)は図5での関係507に対する補正
を表わしたものである。この場合には、前点Pnの方向
属性データが“1,0,1,0”であって、x軸、y軸
両方に関してプラスの方向であり、後点Pn+1の方向
属性データが“1,0,0,1”であって、x軸に関し
てプラス、y軸に関してマイナスの方向である。この場
合、前点Pnの補正はy座標のみプラスの方向601へ
補正量aだけ移動する。
【0027】図6(b)は図5での関係508に対する
補正を表わしたものである。この場合には、前点Pnの
方向属性データが“1,0,1,0”であって、x軸、
y軸両方に関してプラスの方向であり、後点Pn+1の
方向属性データが“1,0,1,0”であって、x軸,
y軸夫々に関してプラスの方向である。この場合、前点
Pnの補正は、x座標がマイナスの方向に補正量aだ
け、また、y座標がプラスの方向へ補正量bだけ夫々移
動し、図示する方向602となる。
【0028】図6(c)は図5での関係509に対する
補正を表わしたものである。この場合には、前点Pnの
方向属性データが“1,0,0,0”であって、x軸の
みに関してプラスの方向であり、後点Pn+1の方向属
性データが“0,0,0,1”であって、y軸のみに関
してマイナスの方向である。この場合、前点Pnの補正
は、x座標,y座標夫々がプラスの方向へ補正量aだけ
移動し、図示する方向603となる。
【0029】図6(d)は図5の関係510に対する補
正を表わしたものである。この場合には、前点Pnの方
向属性データが“0,1,0,1”であって、x軸,y
軸夫々に関してマイナスの方向であり、後点Pn+1の
方向属性データが“1,0,1,0”であって、x軸,
y軸夫々に関してプラスの方向である。このように前点
と後点の方向属性データがx、y軸両方向で互いに逆に
なっている場合には、前点Pnの補正移動は行なわな
い。
【0030】次に、補正量と補正方向の関係について説
明する。ここで、線を細くする線幅補正を例に説明する
と、水平線を補正するには、図4(a)に示すように、
y座標をhの量だけ図示する方向に補正すればよい。ま
た、垂直線を補正するには、図4(b)に示すように、
x座標をvの量だけ図示する方向に補正すればよい。さ
らに、斜線や曲線を補正するには、図4(c),(d)
に示すように、x、y座標ともdx,dyの量だけ図示
する方向に補正すればよい。
【0031】ところで、水平線の補正量hと斜線や曲線
の補正量dyとを等しくすると、斜線や曲線の方が細く
なりすぎてしまう場合がある。また、垂直線の補正量v
と斜線や曲線の補正量dxとの関係についても同様であ
る。従って、水平・垂直線の補正量と斜線・曲線の補正
量とは異なる値に設定する必要がある。
【0032】そこで、それらの値を別々のレジスタに格
納し、方向属性データに応じて補正量を選択するように
する。図7にかかる補正量を設定するレジスタの例を示
す。但し、レジスタ701、702には水平・垂直線を
補正するx,y各方向の補正量を設定し、レジスタ70
3、704には斜線・曲線を補正するx、y各方向の補
正量を設定する。かかる補正量は図5で示した補正量
a,bに相当する。
【0033】次に、線幅補正処理の手順を図8に従って
詳細に説明する。この処理を開始する(ステップ80
1)と、フォントROM101(図2)から1ワードず
つフォントデータを読み込む(ステップ802)。そし
て、読み込んだデータが領域開始フラグであるかどうか
判定し(ステップ803)、領域開始フラグであるとき
には、再度次のフォントデータをフォントROM101
から読み込んで同じ処理を行なう。読み込んだデータが
領域開始フラグでないときには(ステップ803)、こ
の読み込んだデータが終了フラグであるかどうか判定し
(ステップ804)、終了フラグであるならば、本補正
処理を終了する(ステップ808)。ここで、ステップ
803,804の判定はハードウェア的に同時に行なっ
てもよい。
【0034】読み込んだデータが、領域開始フラグでも
終了フラグでもなく、座標データであるときには、これ
をラッチし、読み出した座標データPn+1に付加され
ている後点の方向属性データと座標データ(Xn+1,
Yn+1)をラッチすると(ステップ805)、1つ前
にラッチされた前点の方向属性データと後点の方向属性
データの2つの方向属性データから、前点Pn(Xn,
Yn)の補正方向と補正量を決定し(ステップ80
6)、前点Pnの座標を決定された補正量分補正方向に
補正する(ステップ807)。そして、再びステップ8
02に戻り、上記と同様に、各点の補正処理を繰り返
す。
【0035】図9は図8におけるステップ805〜80
7の処理を行なう線幅補正処理回路の一具体例を示すブ
ロック図であって、901,902は方向属性ラッチ、
903はデコーダ、904は制御信号、905は線幅補
正回路である。
【0036】同図において、フォントROM101(図
2)から方向属性データが読み出される毎に、この読み
出された方向属性データは順次方向属性ラッチ901に
ラッチされ、また、その直前に、方向属性ラッチ901
にラッチされた方向属性データが方向属性ラッチ902
にラッチされる。これにより、方向属性ラッチ901に
ラッチされた方向属性データは前点の方向属性データと
なり、方向属性ラッチ902にラッチされた方向属性デ
ータは後点の方向属性データとなる。かかる動作が図8
のステップ805である。
【0037】そして、方向属性ラッチ901,902に
ラッチされた方向属性データがデコーダ903でデコー
ドされて、これら2つの方向属性データから補正方向及
び移動量を選択するための制御信号904が生成され
る。これが図8のステップ806である。線幅補正回路
905は制御信号904を受けて前点Pnを補正する。
これが図8のステップ807である。
【0038】図1に示す文字「オ」を例にして、以上の
線幅補正処理手順を具体的に説明する。図1において、
ここでは、文字「オ」の輪郭を水平線や垂直線,斜線と
いった直線(以下、これを輪郭直線という)に区分し、
隣接する2つの輪郭直線の境界点の座標を座標点P0
24とする。アウトラインフォントデータはこれら座標
点P0〜P24 に対して設定されている。ここでは、かか
る文字「オ」の輪郭を破線で示すように補正するものと
する。
【0039】かかる座標点P0〜P24の座標データによ
るアウトラインフォントデータはフォントROM101
(図2)に格納されており、まず、座標点P0の座標デ
ータ(図3(b))がフォントROM101から読み込
まれ、この座標データに付加されている方向属性データ
と座標値(X0、Y0)がラッチされる。なお、座標点P
0の方向属性データは図9の方向属性ラッチ901にラ
ッチされる。また、このとき、座標点P0の座標データ
は、次の座標点P1の座標データが読まれるまで補正さ
れないので、方向属性ラッチ901にラッチされた方向
属性データは方向属性ラッチ902にラッチされる。
【0040】次に、フォントROM101から座標点P
1の座標データが読み込まれ、方向属性データと座標値
(X1,Y1)をラッチする。その直前に、座標点P0
方向属性データが図9の方向属性ラッチ902に移さ
れ、座標点P1の方向属性データが方向属性ラッチ90
1にラッチされる。これにより、座標点P0が前点、座
標点P1 が後点となる。
【0041】デコーダ903(図9)では、方向属性ラ
ッチ901,902に夫々ラッチされた座標点P0の方
向属性データと座標点P1の方向属性データとから座標
点P0の補正方向と補正量が決定され、線幅補正回路9
05(図9)により、かかる補正方向と補正量とに応じ
て座標点P0が補正されて座標点P0´が得られる。次い
で、方向属性ラッチ901にラッチされている座標点P
1の方向属性データが方向属性ラッチ901に移され、
次にフォントROM101から読み込まれた座標点P2
の座標データの方向属性データと座標値(X2、Y2)と
がラッチされる。
【0042】ここで、座標点P2の方向属性データは方
向属性ラッチ901にラッチされる。従って、座標点P
1が前点に、座標点P2が後点になる。そして、上記と同
様にして、これら座標点P1,P2の方向属性データから
補正方向と補正量が決定され、これら補正方向と補正量
とに応じて座標点P1が補正されて座標点P1´が設定さ
れる。
【0043】以下、同様の処理が座標点P2〜P23に対
して行なわれ、夫々に対する補正された座標点P2´〜
23´が得られる。このとき、方向属性ラッチ901に
は座標点P24の方向属性データがラッチされており、最
後に、座標点P24の方向属性データが方向属性ラッチ9
02に移され、再び座標点P0の座標データがフォント
ROM101から読み込まれて、その方向属性データと
座標値(X0,Y0)がラッチされる。ここで、座標点P
0の方向属性データは方向属性ラッチ901にラッチさ
れる。従って、座標点P24が前点、座標点P0が後点と
なる。そして、上記と同様にして、これら座標点P24
0の方向属性データから補正方向と補正量とが決定さ
れ、これら補正方向と補正量とに応じて座標点P24が補
正されて座標点P24´が設定される。最後に、フォント
ROM101から終了フラグを読み込む。
【0044】以上により、文字「オ」に対する一連の補
正処理が終了する。
【0045】なお、上記の処理動作によると、アウトラ
インフォントデータは座標点P0の座標データを2つ持
つ構成となっている。即ち、座標点P0の座標データは
最初の前点の座標データと終点の座標点P24の座標デー
タの補正のための後点としての座標データとに用いられ
るから、フォントROM101に格納されるアウトライ
ンフォントデータの座標データ列は、座標点P0の座標
データから始まって座標点P0の座標データで終わる。
しかし、終点の座標点P24の補正を行なうためには、座
標点P0 の方向属性データのみが必要であって、座標点
0 の座標値(X0、Y0)は不要である。従って、最初
に始点としての座標点P0の方向属性データと座標値
(X0,Y0)とがラッチされたときに、座標点P0の方
向属性データだけさらに別のところに格納しておき、終
点の座標点P24を補正するとき、格納してあった座標点
0の方向属性データを用いて座標点P24の補正を行な
うこともできる。これにより、アウトラインフォントデ
ータとしては、まず、最初に、領域開始フラグがあっ
て、次に、座標点P0の座標データから座標点P24の座
標データがあり、最後に、終了フラグがある構成とする
ことができる。これにより、座標データは1つ少なくな
り、アウトラインフォントデータを小さくすることがで
きる。
【0046】ところで、上記の場合では、方向属性デー
タをアウトラインフォントデータに付加した線幅補正方
式であったが、アウトラインフォントデータの座標点P
nの座標データが方向属性データを含んでおらず、座標
値(Xn,Yn)のみからなる場合には、前点Pnの座
標データの座標値(Xn,Yn)と後点Pn+1の座標
データの座標値(Xn+1,Yn+1)とから前点から
後点への相対方向を算出して、全点Pnの方向属性デー
タを生成するようにする。以下、かかる場合の線幅補正
について説明する。
【0047】アウトラインフォントデータに方向属性デ
ータが含まれていない場合、座標データはx座標データ
とy座標データとの2ワードで構成される。座標データ
は絶対座標値が格納されており、夫々8ビットとする
と、0〜255までの値を取ることができる。前点Pn
の座標値(Xn,Yn)と後点Pn+1の座標値(Xn
+1,Yn+1)とから前点Pnから後点Pn+1への
相対方向を算出し、その相対方向から後点Pn+1の方
向属性データを生成し、図9で説明したのと同様の処理
でもって線幅補正を実行する。
【0048】図10はかかる処理を行なう線幅補正処理
回路の一具体例を示すブロック図であって、1001,
1002は座標値レジスタ、1003は演算回路であ
り、図9に対応する部分には同一符号をつけている。
【0049】図10において、フォントROM101
(図2)から読み込まれた前点Pnの座標データ、即ち
座標値(Xn,Yn)がレジスタ1001に格納され、
後点Pn+1の座標値(Xn+1,Yn+1)がレジス
タ1002に格納される。そして、これら座標値(X
n,Yn),(Xn+1,Yn+1)が演算回路100
3で演算されて後点Pn+1の方向属性データが生成さ
れ、方向属性ラッチ901にラッチされる。以下、各座
標点の方向属性データが生成されて、図9で説明したよ
うに、前点,後点の方向属性データとして方向属性ラッ
チ902,901にラッチされ、デコーダ903でデコ
ードされて線幅補正回路905で座標点の補正がなされ
る。
【0050】但し、始点P0 となる座標点P0の座標デ
ータには、予め方向属性データが求められて含まれてい
るものとする。
【0051】次に、図11により、この演算回路100
3の処理動作を説明する。まず、レジスタ1001に座
標点Pnの座標値(Xn,Yn)が,レジスタ1002
に座標点Pn+1の座標値(Xn+1,Yn+1)が夫
々格納されると、後点としての座標点Pn+1のX座標
値Xn+1から前点としての座標点PnのX座標値Xn
を減算し(ステップ1101)、その減算結果がプラス
であれば、図12で示すこれから生成する方向属性デー
タのXSPビットを“1”、XSMビットを“0”とし
(ステップ1103)、マイナスであれば、XSPビッ
トを“0”、XSMビットを“1”にする(ステップ1
104)。次に、座標点Pn+1のY座標値Yn+1か
ら座標点PnのY座標値Ynを減算し(ステップ110
5)、その減算結果がプラスであれば、図12で示す方
向属性データのYSPビットを“1”、YSMビットを
“0”とし(ステップ1107)、マイナスであれば、
YSMビットを“1”、YSPビットを“0”とする
(ステップ1108)。
【0052】以上の処理により、演算回路1003から
は、後点としての座標点の方向属性データが生成され、
方向属性ラッチ901にラッチされる。
【0053】そこで、以上の処理を図1に示した文字
「オ」を例にして説明する。まず、最初に、座標点P0
の座標データの座標値がレジスタ1002にラッチされ
る。この座標点P0の座標データには予め求められた方
向属性データが含まれており、この方向属性データは、
別途格納保持されるとともに、図示しない別系統から方
向属性ラッチ901にラッチされる。次に、座標点P0
の座標値がレジスタ1001に移されるとともに、座標
点P1の座標値のみからなる座標データがレジスタ10
02にラッチされ、演算回路1003により、これら2
つの座標値から座標点P1の方向属性データが生成され
る。そして、方向属性ラッチ901にラッチされている
座標点P0の方向属性データは方向属性ラッチ902に
移され、演算回路1003で生成された座標点P0の方
向属性データが方向属性ラッチ901にラッチされる。
これにより、上記のように、座標点P0が座標点P0´
に補正される。
【0054】以下同様にして、座標点P1〜P23の方向
属性データの生成、補正がなされ、最後に、座標点P23
の座標値と座標点P24の座標値とから座標点P24の座標
データの方向属性データが生成され、これと別途保持さ
れている座標点P0の方向属性データと座標点P24の方
向属性データとで座標点P24が座標点P24´に補正され
る。
【0055】なお、座標点P0の方向属性データが予め
求められていない場合には、まず、座標点P1を始点と
して、座標点P0の座標値と次の座標点P1の座標値とか
ら座標点P1の方向属性データを生成して、これを始点
の方向属性データとして、上記の座標点P0の方向属性
データと同じように取り扱えばよい。従って、最後に
は、座標点P0の座標値と座標点P1の座標値とから座標
点P0の方向属性データが生成され、これと別途格納さ
れている座標点P1の方向属性データとから座標点P0
座標点P0´に補正される。
【0056】次に、水平線や垂直線,斜線の線幅補正に
ついて説明するが、曲線を表示する場合には、曲線の形
状を規定する点が設定され、これら点をもとにして曲線
補間処理を施して所望の曲線を得るようにする。曲線補
間方式としては、例えば3次ベジェ曲線のような、曲線
の輪郭線の形状を規定する点が曲線上にない曲線補間方
式と、例えば3次スプライン曲線のような、曲線の輪郭
線の形状を規定する点が曲線上にある曲線補間方式とが
ある。
【0057】曲線補間処理と線幅補正処理とを行なって
曲線表示をする場合、これら一連の処理の高速化や文字
品質の向上を図るためには、曲線補間処理の種類に応じ
てこれら2つの処理の順序を異ならせることが必要があ
る。以下、このことについて説明する。
【0058】図13は曲線の輪郭線の形状を規定する点
が曲線上にない場合の処理を示すものであって、図13
(a)は線幅補正処理を行なってから曲線補間処理を行
なう場合を、また、図13(b)は曲線補間処理を行な
ってから線幅補正処理を行なう場合を夫々示している。
いずれの場合も、P0,P1,P2,P3は補正処理前の曲
線の輪郭線の形状を規定する座標点である。
【0059】図13(a)において、いま、与えられた
座標点P0,P1,P2,P3から所望の曲線を得る場合、
まず、これら座標点P0,P1,P2,P3による折線の輪
郭線を上記のように線幅補正処理すると、座標点P
0´,P1´,P2´,P3´からなる折線の輪郭線が得ら
れる。次に、これら座標点P0´,P1´,P2´,P3´
を曲線の輪郭線の形状を規定する点とし、座標点P
0´,P3´間に曲線を得る曲線補間処理を施すと、座標
点Q0´(=P0´),Q1´,Q2´,Q3´,Q4´(=
4´)を通る曲線1302が得られる。一方、座標点
0,P1,P2,P3を曲線の輪郭線の形状を規定する点
とし、座標点P0,P3間に曲線を得る曲線補間処理を施
すと、曲線1301が得られる。
【0060】そこで、これら曲線1301,1302の
形状を比較すると、両者は異なっており、曲線1301
に線幅補正処理を施して得られる曲線は曲線1302と
一致しない。これは、曲線の輪郭線の形状を規定する座
標点P0〜P3による折線に対して線幅補正をすると、補
正された輪郭線の形状を規定する座標点P0´〜P3´を
結ぶ線分比が座標点P0〜P3を結ぶ線分比と異なってし
まうからである。
【0061】これに対して、図13(b)に示すよう
に、座標点P0,P1,P2,P3を曲線の輪郭線の形状を
規定する点とし、座標点P0,P3間に曲線を得る曲線補
間処理を施して座標点Q0(=P0),Q1,Q2,Q3
4(=P4)を通る曲線1303を得、この曲線に対し
て線幅補正をして座標点Q0´,Q1´,Q2´,Q3´,
4´ を通る曲線1304を得るようにすると、これら
曲線1303,1304の形状は等しい。
【0062】従って、曲線の輪郭線の形状を規定する点
が曲線上にない場合には、曲線補間処理を行なってから
線幅補正処理を行なうという順に処理を行なった方が、
より高品質な表示文字,印字文字が得られることにな
る。
【0063】図14は曲線の輪郭線の形状を規定する点
が曲線上にある場合の処理を示すものであって、図14
(a)は線幅補正処理を行なってから曲線補間処理を行
なう場合を、また、図14(b)は曲線補間処理を行な
ってから線幅補正処理を行なう場合を夫々示している。
ここでも、いずれの場合も、P0,P1,P2,P3は補正
処理前の曲線の輪郭線の形状を規定する座標点である。
【0064】図14(a)において、座標点P0,P1
2,P3は所望の曲線上にあり、これに対して曲線補間
処理を施すと、座標点P0´,P1´,P2´,P3´を通
る曲線1402が得られる。そして、これら座標点P0
´,P1´,P2´,P3´を曲線の輪郭線の形状を規定
する座標点として曲線補間処理を施すと、この曲線14
02上に、座標点Q0,Q1,Q2 が補間されることにな
る。このようにして得られた曲線1402の形状は、曲
線1401の形状と等しい。
【0065】一方、図14(b)において、座標点
0,P1,P2,P3を曲線の輪郭線の形状を規定する座
標点として曲線補間処理を施すと、座標点P0,P1,P
2,P3を通る曲線1403上に座標点Q0,Q1,Q2
補間され、かかる座標点P0,Q0,P1,Q1,P2
2,P3で決まる曲線に対して線幅補正処理を施すと、
座標点P0´,Q0´,P1´,Q1´,P2´,Q2´,P
3´を通る曲線1404が得られる。このようにして得
られた曲線1404の形状は、曲線1403の形状と等
しい。
【0066】そこで、図14(a)での座標点P0
1,P2,P3と図14(b)での座標点P0,P1
2,P3とが同じものとすると、図14(a)における
曲線1402と図14(b)における曲線1404とは
形状に違いは見られず、従って、図14(a),(b)
いずれの方法を採用しても、高品質な表示文字,印字文
字が得られることになる。
【0067】しかしながら、曲線補間処理に比べて線幅
補正処理に時間がかかる場合、図14(a)に示した方
法の場合、線幅補正処理の対象となる座標点の個数が図
14(b)に示した方法の場合のほぼ1/2であるか
ら、その線幅補正処理に要する時間は図14(b)に示
した方法での線幅補正処理に要する時間のほぼ1/2倍
となる。従って、曲線の輪郭線の形状を規定する点が曲
線上にある場合には、図14(a)に示した方法を採用
した方が、高品質の表示文字,印刷文字をより高速に得
ることができる。
【0068】図15は以上の点を配慮した本発明の実施
例における文字の線幅補正処理と曲線補間処理との順序
を示したフローチャートである。
【0069】同図において、処理動作が開始すると、曲
線補間処理が曲線の輪郭線の形状を規定する点を通る曲
線補間方式か否かかを判断し(ステップ1501)、例
えば3次ベジェ曲線のような曲線の輪郭線の形状を規定
する点が曲線上にない曲線補間方式の場合には、まず、
曲線補間処理を行なってから(ステップ1502)、線
幅補正処理を行ない(ステップ1503)、また、例え
ば3次スプライン曲線のような曲線の輪郭線の形状を規
定する点が曲線上にある曲線補間方式の場合には、ま
ず、線幅補正処理を行なってから(ステップ150
4)、曲線補間処理を行なうようにする(ステップ15
05)。
【0070】以上のように、各実施例では、水平線や垂
直線ばかりでなく、斜線や曲線の幅補正を高速に行なう
ことができ、得られる文字も高品質なものとなる。しか
も、LSI化に適したものとなっており、LSI化する
ことによってさらに高速の処理が可能となる。
【0071】
【発明の効果】以上説明したように、本発明によれば、
複数の補正量を設定しておく手段を設けたことにより、
従来よりも品質の高い文字を得ることができるし、前点
から後点への相対方向を示す方向属性データをアウトラ
インフォントデータ内に設けたことにより、相対方向を
算出する時間を必要とせず、より高速な文字出力が可能
となる。また、曲線補間処理と線幅補正処理の処理順序
を曲線補間処理の種類に応じて異ならせたことにより、
曲線の形状を保ちながら、、補正処理速度を高めること
ができる。
【図面の簡単な説明】
【図1】本発明による文字補正方式の一実施例を文字例
をもって示した図である。
【図2】本発明を実施するための情報処理装置の一例を
示すブロック図である。
【図3】本発明による文字補正方式の一実施例に用いる
アウトラインフォントデータの構成を示す模式図であ
る。
【図4】本発明による文字補正方式の一実施例での線幅
補正の説明図である。
【図5】本発明による文字補正方式の一実施例での座標
点の方向属性データと補正方向、補正量との関係を示す
図である。
【図6】図5に示した関係に基づく補正方向の例を示す
図である。
【図7】本発明による文字補正方式の一実施例での座標
点の方向属性データに対する補正量設定レジスタを示す
図である。
【図8】本発明による文字補正方式の一実施例での線幅
補正動作を示すフローチャーである。
【図9】図8に示した動作を実行する本発明による文字
補正装置の一実施例の要部を示すブロック図である。
【図10】本発明による文字補正装置の他の実施例の要
部を示すブロック図である。
【図11】図10に示した実施例での方向属性データの
生成動作を示すフローチャートである。
【図12】図11に示した動作で生成される方向属性デ
ータを示す図である。
【図13】本発明による文字補正方式での曲線の線幅補
正の一例を示す説明図である。
【図14】本発明による文字補正方式での曲線の線幅補
正の他の例を示す説明図である。
【図15】図13及び図14に示した曲線の線幅補正動
作を示すフローチャートである。
【符号の説明】
201 フォントROM 202 文字発生装置 203 システムメモリ 204 中央処理装置 205 ディスプレイ 206 プリンタ 207 キーボード 501 前点の方向属性データ 502 後点の方向属性データ 901,902 方向属性ラッチ 903 デコーダ 904 制御信号 905 線幅補正回路 1001,1002 座標値レジスタ 1003 演算回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 長谷川 和子 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 脇坂 新路 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 和田 弘士 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 白根 弘晃 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立画像情報システム内 (72)発明者 西本 和久 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立画像情報システム内 (72)発明者 中村 健治 茨城県日立市東多賀町1丁目1番1号 株 式会社日立製作所多賀工場内 (72)発明者 堀内 雄一 茨城県日立市東多賀町1丁目1番1号 株 式会社日立製作所多賀工場内

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 文字の輪郭を規定する座標点の座標デー
    タで構成されるアウトラインフォントデータをドットフ
    ォントに変換する情報処理装置において、 隣合う2つの座標点の座標データの組合せの種類毎の補
    正方向及び補正量のデータが予め設定されており、 該座標点毎に、該座標点の座標データとこれに隣合う他
    の座標点の座標データとの組合せに応じた該座標点の補
    正方向及び補正量を選択して、該補正方向及び補正量に
    より、該座標点に対する新たな座標点を設定し、 該新たな座標点の座標データで構成されるアウトライン
    フォントデータをドットフォントに変換するようにし
    て、該文字を形成する水平線,垂直線,斜線,曲線の線
    幅を補正することを特徴とする文字補正方式。
  2. 【請求項2】 請求項1において、 前記座標点の補正方向及び補正量を、前記座標点のこれ
    より1つ前の座標点からみた方向と、前記座標点からみ
    たこれに続く前記座標点の方向に応じて決めることを特
    徴とする文字補正方式。
  3. 【請求項3】 請求項2において、 前記座標点の前記座標データは、前記座標点の座標値
    と、これより1つ前の座標点から見た前記座標点の相対
    方向を示す方向属性データとからなり、 該方向属性データを用いて前記補正方向及び補正量を決
    めることを特徴とする文字補正方式。
  4. 【請求項4】 請求項2において、 前記座標点の前記座標データは前記座標点の座標値から
    なり、 前記座標点の座標値とこれより1つ前の座標点の座標値
    とから、該1つ前の座標点から見た前記座標点の相対方
    向を示す方向属性データを求め、 該方向属性データを用いて前記補正方向及び補正量を決
    めることを特徴とする文字補正方式。
  5. 【請求項5】 請求項1において、 曲線を補間処理する方式として、曲線の輪郭線の形状を
    規定する点を通らない曲線補間方式を用いる場合には、 初めに、曲線補間処理を行なって曲線をショートベクト
    ルに変換し、次に、線幅補正処理を行なうことを特徴と
    する文字補正方式。
  6. 【請求項6】 請求項1において、 曲線を補間処理する方式として、曲線の輪郭線の形状を
    規定する点を通る曲線補間方式を用いる場合には、 初めに、線幅補正処理を行ない、次に、曲線補間処理を
    行なって曲線をショートベクトルに変換することを特徴
    とする文字補正方式。
  7. 【請求項7】 文字の輪郭を規定する座標点の座標デー
    タで構成されるアウトラインフォントデータをドットフ
    ォントに変換する情報処理装置において、 隣合う2つの座標点の座標データの組合せの種類毎の補
    正方向及び補正量のデータを格納した記憶手段と、 隣合う2つの座標点の座標データの組合せの種類を判定
    する判定手段と、 該判定手段の判定結果に応じて該記憶手段から対応する
    補正方向及び補正量を読み取り、該補正方向及び補正量
    に応じて該座標点を補正し、該座標点の座標位置を補正
    する補正手段とを有し、該文字を形成する水平線,垂直
    線,斜線,曲線の線幅を補正することを特徴とする文字
    補正装置。
  8. 【請求項8】 請求項7において、 前記座標点の補正方向及び補正量は、前記座標点のこれ
    より1つ前の座標点からみた方向と、前記座標点からみ
    たこれに続く前記座標点の方向との組合せの種類に応じ
    て決められていることを特徴とする文字補正装置。
  9. 【請求項9】 請求項8において、 前記座標点の前記座標データは、前記座標点の座標値
    と、これより1つ前の座標点からみた前記座標点の相対
    方向を示す方向属性データとからなり、 前記補正手段は、隣合う2つの前記座標点の該方向属性
    データに応じた前記補正方向及び補正量を前記記憶手段
    から読み取ることを特徴とする文字補正装置。
  10. 【請求項10】 請求項8において、 前記座標点の前記座標データは前記座標点の座標値から
    なり、 前記座標点の座標値とこれより1つ前の座標点の座標値
    とから、該1つ前の座標点から見た前記座標点の相対方
    向を示す方向属性データを生成する方向属性データ生成
    手段を有し、 前記補正手段は、該方向属性データ生成手段で得られた
    隣合う2つの前記座標点の該方向属性データに応じた前
    記補正方向及び補正量を前記記憶手段から読み取ること
    を特徴とする文字補正装置。
JP4320333A 1992-11-30 1992-11-30 文字補正方式およびその装置 Pending JPH06167961A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4320333A JPH06167961A (ja) 1992-11-30 1992-11-30 文字補正方式およびその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4320333A JPH06167961A (ja) 1992-11-30 1992-11-30 文字補正方式およびその装置

Publications (1)

Publication Number Publication Date
JPH06167961A true JPH06167961A (ja) 1994-06-14

Family

ID=18120315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4320333A Pending JPH06167961A (ja) 1992-11-30 1992-11-30 文字補正方式およびその装置

Country Status (1)

Country Link
JP (1) JPH06167961A (ja)

Similar Documents

Publication Publication Date Title
JPH01174463A (ja) ドットパターン補正方法
JP3037854B2 (ja) 文字生成方法及びその装置
JPH0443395A (ja) 文字フオントメモリと、該文字フオントメモリを用いた文字パターン発生装置
JPH06167961A (ja) 文字補正方式およびその装置
JP3055187B2 (ja) 輪郭線データ処理装置
JP2806679B2 (ja) 文字発生装置
JP3070822B2 (ja) 輪郭線データ変換装置
JP2782752B2 (ja) 文字パターン出力装置
JP2771629B2 (ja) 文字処理装置
JPH0823741B2 (ja) ベクトル文字もしくはベクトル図形の処理方法
JPH0815796B2 (ja) 文字フォント生成方法
JPH1138960A (ja) パターン生成方法および装置ならびに記録媒体
JP2666552B2 (ja) アウトライン文字における線幅制御方法
JP2740539B2 (ja) 拡大再生画像情報作成方法および装置
JP2990157B1 (ja) 文字生成装置および文字生成方法
JP3268160B2 (ja) 文字パターン発生装置
JPH05216456A (ja) 文字出力装置
JPH06110444A (ja) 文字処理装置および文字出力方法
JPH05313634A (ja) アウトラインフォント展開装置
JP3072756B2 (ja) 描画装置
JP3473046B2 (ja) 非正立文字の描画方法および装置
JP2619931B2 (ja) 文字処理装置および文字処理方法
JPH0511736A (ja) 文字パターン出力装置
JPH07152359A (ja) 文字修飾装置
JPH10301554A (ja) 文字作成装置、輪郭生成方法および記憶媒体