JPH09185722A - 曲線近似分割点設定方法および装置 - Google Patents

曲線近似分割点設定方法および装置

Info

Publication number
JPH09185722A
JPH09185722A JP34167395A JP34167395A JPH09185722A JP H09185722 A JPH09185722 A JP H09185722A JP 34167395 A JP34167395 A JP 34167395A JP 34167395 A JP34167395 A JP 34167395A JP H09185722 A JPH09185722 A JP H09185722A
Authority
JP
Japan
Prior art keywords
curve
division
points
shape
approximation
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
JP34167395A
Other languages
English (en)
Inventor
Keiji Miyake
桂司 三宅
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 JP34167395A priority Critical patent/JPH09185722A/ja
Publication of JPH09185722A publication Critical patent/JPH09185722A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【課題】 部分的に存在する過剰な分割点を排除して、
従来よりも少ない分割点で位置演算することにより、高
速に高品質の曲線を近似する。 【解決手段】 分割数Nを決定した(S510)後、曲
線の形状パターンを求めて(S520)、その分割数N
に基づいて分割点抽出テーブルを選択し、更に形状パタ
ーンに基づいて分割点抽出テーブル内の一つのテーブル
(パターン毎のテーブル)を選択し、その一つのパター
ン毎のテーブルに基づいて曲線近似に必要な分割点のみ
を位置演算の対象として抽出し(S530)、実際の分
割点としての位置を演算している(S540)。パター
ン無しに判定される場合は、一部の曲線データのみであ
るので、従来に比較して、輪郭線の品質を低下させるこ
となく、より高速に輪郭線を求めることができる。した
がって、レーザープリンタにおいて、高速で高品質の記
録が可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、曲線を直線で近似
的に表すために曲線の分割点を設定する曲線近似分割点
設定方法および装置に関する。
【0002】
【従来の技術】従来、例えばアウトラインフォントによ
り実際に曲線を表示する場合、そのフォントを形成する
輪郭線を、セグメント毎に設けられている曲線データに
より表示している。
【0003】しかし、セグメント内のすべての輪郭線を
曲線データに基づいて演算で求めると処理時間が膨大な
ものとなるため、曲線を所定間隔で分割した各点(分割
点と言う)の位置を曲線データに基づいて演算してお
き、分割点間は直線として位置の演算をすることによ
り、輪郭線が求められていた。
【0004】前記所定間隔が曲線データの曲率に比較し
て細か過ぎると、分割点が必要以上に多くなって、分割
点の位置を決定する演算に負担がかかっり、逆に前記所
定間隔が曲線データの曲率に比較して粗過ぎると、表現
されるフォントが粗くなって表示品質を低下させた。
【0005】このため、特開平4−152390号等で
は、セグメント毎の曲率を考慮して、各セグメントの曲
線データ毎に、細か過ぎずかつ粗過ぎない適度な分割数
を求め、その分割数で曲線を分割して分割点の位置を演
算していた。
【0006】
【発明が解決しようとする課題】しかし、前述のごとく
各セグメントの曲率に基づいて適切に設定されたはずの
分割点を調べてみると、曲線近似に不要な分割点が存在
していることが判明した。
【0007】これは、1つのセグメント内における曲率
は、セグメントの全区間において一定でなく、場所によ
り直線に近い部分が存在するからであった。前記特開平
4−152390号等では、1セグメントの内で最も曲
率が大きい(曲率半径が小さい)部分に合わせて分割数
を求めているため、それよりも曲率が小さい(曲率半径
が大きい)部分では、分割数が多過ぎ、過剰な分割点が
存在することになる。
【0008】本発明は、部分的に存在する過剰な分割点
を排除して、従来よりも少ない分割点で位置演算するこ
とにより、高速に高品質の曲線を近似できる曲線近似分
割点設定方法および装置を提供することを目的とするも
のである。
【0009】
【課題を解決するための手段及び発明の効果】本発明の
曲線近似分割点設定方法は、前記曲線を直線で近似的に
表すことができる分割数を演算して求めた後、前記分割
数に対応する分割点から、予め定められている曲線近似
に必要あるいは不要な分割点を示すテーブルに基づい
て、曲線近似に必要な分割点のみを抽出して実際の分割
点として位置を決定することを特徴とする。
【0010】このように、予め定められている曲線近似
に必要あるいは不要な分割点を示すテーブルに基づい
て、曲線近似に不要な分割点、すなわち取り除いても曲
線近似にほとんど影響しない分割点を排除して、曲線近
似に必要な分割点のみを抽出して実際の分割点として位
置決定している。
【0011】このため、従来に比較して、更に不要な分
割点が取り除かれるので、より少ない数の分割点につい
て、その位置を求める演算を行ってそれらの分割点を直
線で結合することにより、高品質のままの曲線表示を高
速に得ることができる。曲線近似する曲線の形状の種類
に応じて、抽出すべき分割点が異なる場合には、曲線の
形状の種類に応じて前記テーブルを複数設け、曲線近似
しようとする曲線の形状の種類に応じて、前記曲線の形
状の種類に該当するテーブルを前記複数のテーブルから
選択し、この選択されたテーブルに基づいて、前記分割
数に対応する分割点から曲線近似に必要な分割点のみを
抽出すれば良く、曲線の形状に応じて、適切な分割点の
位置を決定することができる。
【0012】尚、前記曲線が2つのアンカーポイントと
1つ以上のコントロールポイントとを用いて表されるも
のであれば、前記曲線の形状の種類が前記アンカーポイ
ントおよび前記コントロールポイントの相対的位置関係
に応じて定めることができる。
【0013】このように、アンカーポイントおよびコン
トロールポイントの相対的位置関係に応じて曲線の形状
の種類を定めれば、簡単な計算で曲線の形状の種類を特
定できる。前記曲線近似分割点設定方法を実現する装置
としては例えば次のように構成される。
【0014】すなわち、予め定められ、曲線近似に必要
あるいは不要な分割点を示すテーブルを記憶するテーブ
ル記憶手段と、入力された曲線データから、この曲線デ
ータが表している曲線を直線で近似的に表すことができ
る分割数を演算する分割数演算手段と、前記分割数演算
手段により得られた前記分割数に対応する分割点から、
前記テーブル記憶手段に記憶されている前記テーブルに
基づいて、曲線近似に必要な分割点のみを抽出して実際
の分割点として位置を決定する分割点抽出設定手段と、
を備えた曲線近似分割点設定装置として実現することが
できる。
【0015】更に、曲線データに基づいて、曲線の形状
の種類を判定する形状判定手段を備え、前記テーブル記
憶手段は、前記曲線の形状の種類に応じて前記テーブル
を複数種類記憶し、前記分割点抽出設定手段は、前記形
状判定手段にて判定された前記曲線データが表す曲線の
形状の種類に該当するテーブルを、前記テーブル記憶手
段が記憶している前記複数のテーブルから選択し、この
選択されたテーブルに基づいて、前記分割数に対応する
分割点から曲線近似に必要な分割点のみを抽出して実際
の分割点として位置を決定するように構成しても良い。
【0016】
【発明の実施の形態】図1は、曲線近似分割点設定装置
の一実施の形態を表すレーザープリンタの制御回路2の
主要ブロック図であり、キャラクタのセグメント毎の輪
郭線を規定する形状データを用いて、キャラクタの形状
を合成し、ドットイメージデータを生成する処理を行う
部分を示している。
【0017】この制御回路2の主体を成すマイクロコン
ピュータ部11はCPU12、ROMからなるプログラ
ムメモリ13、RAMからなるワーキングメモリ14、
ROMからなるフォントメモリ15、RAMからなるテ
キストメモリ16、RAMからなる出力イメージメモリ
17とにより構成されている。また、マイクロコンピュ
ータ部11にはシステムバス18を介して入力部10お
よび出力部19が接続されている。
【0018】入力部10は、キャラクタコード、出力サ
イズなどの必要なデータを外部のパーソナルコンピュー
タ等から入力するものである。CPU12は、本実施の
形態の機能を実現するための制御を後述するごとく実行
するものであり、プログラムメモリ13は、このCPU
12で行う様々な制御を実施するためのプログラムを記
憶している。また、ワーキングメモリ14は、CPU1
2がプログラムメモリ13に記憶されたプログラムを実
行するときに必要なデータを一時的に記憶するものであ
る。
【0019】フォントメモリ15は、キャラクタの形状
の輪郭線を規定する形状データを記憶し、その他、全体
形状データを合成するためのデータであるキャラクタデ
ータをキャラクタ毎に1つ以上記憶するものである。こ
のキャラクタデータは、形状データを指示する指示デー
タと、形状データの表す輪郭線をキャラクタ全体のどこ
に配置するかを示す配置データと、形状データ全体の拡
大あるいは縮小率を指示する変形データとから構成され
る。したがって、各キャラクタは、その指示データに指
示された1つまたは2つ以上の形状データを、変形デー
タに応じて変形して、配置データによりそれぞれ配置す
ることにより、1つのキャラクタとして合成されて表示
される。
【0020】また、フォントメモリ15には後述するご
とく、パラメータtに基づいて算出されたデータテーブ
ルおよび分割点抽出テーブルが記憶されている。テキス
トメモリ16は、前記入力部10から入力されるキャラ
クタコード、キャラクタサイズなどを記憶するものであ
る。
【0021】出力イメージメモリ17は、CPU12の
処理によって変換された出力イメージデータを記憶す
る。出力部19は、変換に伴って出力イメージメモリ1
7に記憶された出力イメージデータを電子写真方式によ
り記録する装置である。
【0022】以下に、制御回路2が実行するキャラクタ
イメージデータ出力処理を図2のフローチャートを用い
て説明する。このキャラクタイメージデータ出力処理の
中で、曲線近似処理が行われる。尚、以下のS100,
・・・は図中の各ステップを表す。
【0023】本キャラクタイメージデータ出力処理は、
入力部10より入力されたキャラクタコードに対応した
形状データと変形データとをフォントメモリ15から読
み出し、形状データそのキャラクタデータとに基づい
て、合成処理を行って1つのキャラクタ全体の形状を表
す全体形状データを合成し、同じく入力部より入力した
出力サイズに応じて、スケーリング処理を行い、さらに
塗りつぶし処理を行って、出力イメージメモリ17に記
憶するものである。尚、出力イメージメモリ17へ記憶
された内容は、出力部19にて記録される。
【0024】まず、入力部10よりキャラクタコードと
出力サイズを読み込み(S100)、全体形状データの
メモリ領域をワーキングメモリ14内に確保し、初期化
する(S200)。次に、読み込んだキャラクタコード
に対応した形状データと変形データとをフォントメモリ
15より1つ読み込み、形状データを変形データに基づ
いて変形して、キャラクタの全体のパターンを表す全体
形状データとして合成する(S300)。
【0025】前記形状データおよび全体形状データは、
形状を構成するセグメント毎に設けられた3次ベジェ曲
線で表現されているものであり、セグメント毎に2つの
アンカーポイントP1,P4と2つのコントロールポイ
ントP2,P3の座標データを備えたものである。
【0026】ここで、3次ベジェ曲線をパラメトリック
表現すると次式のようになる。
【0027】
【数1】 ただし、0≦t≦1であり、「^2」は2乗を表し、「^
3」は3乗を表す。したがって、セグメントの曲線分割
数、すなわち、ここでは0から1に至るまでのパラメー
タtの分割数を決定すれば、分割されたtの値と、2つ
のアンカーポイントP1,P4および2つのコントロー
ルポイントP2,P3に基づいて、曲線の形状、すなわ
ちアウトラインフォントの輪郭線を直線で描くための、
分割点が設定できる。
【0028】尚、予め、アウトラインフォントのいかな
る形状の曲線近似にも対応できる十分に細かい分割数と
して、例えば「256」を設定し、この分割数に応じ
て、「0/256」から「256/256」まで「1/
256」ずつtを増加させて、前記A,B,C,Dを求
めてデータテーブル化しておく。そのデータテーブルを
図7に示す。このデータテーブルは、フォントメモリ1
5内に記憶されている。
【0029】次にS300で合成された全体形状データ
について、スケーリング処理が行われる(S400)。
このスケーリングはS100で読み込んだ出力サイズに
応じて行う。尚、このスケーリング処理に関しては、既
に種々の方法で実用化されている技術であり、本発明の
主たる部分ではないので省略する。
【0030】次に、スケーリング処理後の全体形状デー
タの各セグメントについて曲線近似処理が行われる(S
500)。この曲線近似処理の詳細を図3に示す。ま
ず、セグメントにおける最適な分割数を求める(S51
0)。この適切な分割数の決定は、例えば、図8に示す
ごとく、2つのアンカーポイントP1,P4および2つ
のコントロールポイントP2,P3の相対的な配置に応
じてなされる。
【0031】すなわち、一般的にアンカーポイントP1
とコントロールポイントP2との距離L2およびアンカ
ーポイントP4とコントロールポイントP3との距離L
4の長さは、前記アンカーポイントP1,P4および2
つのコントロールポイントP2,P3で表される曲線C
Vの曲率が大きいほど長くなる。したがって、アンカー
ポイントP1,P4間の距離をL1、コントロールポイ
ントP2,P3間の距離をL3とすると、次式の評価式
を用いて最適な分割数Nを求めることができる。
【0032】
【数2】 ここで、「a」は底で、2≦a≦8であり、この底a
は、曲線の近似精度に応じて予め適宜選択されているも
のであり、また式7で示される分割数Nが図7のデータ
テーブルにおける分割数、ここでは「256」を越えな
いように選択される。
【0033】この評価式を用いて分割数を求めた例(a
=3)を図9に示す。これはコントロールポイントP
2,P3のそれぞれのy座標を順次小さくした場合、す
なわち曲線CVの曲率を順次小さくした場合の例を示し
たものである。図9に示したステップとは256/Nの
値であり、分割数Nに応じて図7から選択されるデータ
番号nの間隔を示している。すなわち、前記評価式6,
7を用いた場合、曲線CVの曲率が小さくなるほど分割
数Nが小さくなることを示している。尚、図9には一部
の分割数Nのみ示している。実際には分割数はN=1,
2,4,8,16,32,64,128,256の9種
類存在する。
【0034】式6においては各距離の長さL1,L2,
L3,L4をそのまま用いたが、これらの長さL1,L
2,L3,L4を二乗した値を代りに用いても良い。適
切な分割数Nを決定する第2の方法として、次のように
行っても良い。すなわち、図8に示すポイントP1,P
2,P3,P4を順次結んだ実線で囲まれた四角形の面
積S1は、一般的に曲線CVの曲率が大きいほど大きく
なる。したがって、次の評価式により曲線CVの最適な
分割数Nを求めることができる。
【0035】
【数3】 ここで、「b」は底で、2≦b≦8であり、この底b
は、曲線の近似精度に応じて適宜選択されるものであ
り、また式8で示される分割数Nが図7のデータテーブ
ルにおける分割数N、ここでは「256」を越えないよ
うに選択される。
【0036】適切な分割数Nを決定する第3の方法とし
て、次のように行っても良い。すなわち、図8に示すポ
イントP1,P2,P4を順次結んだ実線と一点鎖線と
で囲まれた三角形の面積S2、およびポイントP1,P
3,P4を順次結んだ実線と一点鎖線とで囲まれた三角
形の面積S3の和(S2+S3)は、一般的に曲線CV
の曲率が大きいほど大きくなる。したがって、次の評価
式により曲線CVの最適な分割数Nを求めることができ
る。
【0037】
【数4】 ここで、「c」は底で、2≦c≦8であり、この底b
は、曲線の近似精度に応じて適宜選択されるものであ
り、また式9で示される分割数Nが図7のデータテーブ
ルにおける分割数N、ここでは「256」を越えないよ
うに選択される。
【0038】尚、式8,9においては各面積S1,S
2,S3をそのまま用いたが、これらの面積S1,S
2,S3を二乗した値を代りに用いても良い。以上の分
割数決定処理(S510)は特開平4−152390号
における分割数決定処理と同じ処理であるが、これ以外
の分割数決定処理でも良い。
【0039】前述のごとく、分割数Nが決定されると、
次に各セグメントの曲線の形状が判定される(S52
0)。曲線形状判定処理の詳細を図4〜図6に示す。ま
ず、次式のごとく図8に示すL2とL1との比R1およ
びL4とL1との比R2とを計算する(S1010)。
【0040】
【数5】 次に、図8に示すごとく、これらL2およびL1に対応
する線分のなす角度θ1と、L4およびL1に対応する
線分のなす角度θ2とをポイントP1〜P4の座標に基
づいて求める(S1020)。
【0041】次に、次の条件式12〜15がすべて満足
されるか否かが判定される(S1030)。
【0042】
【数6】 この条件式12〜15がすべて満足されると(S103
0でYES)、この曲線はパターン1であると判定され
る(S1040)。前記条件式12〜15がすべて満足
される曲線とは、図10に示すごとく、一点鎖線で示す
曲線の中央部分の曲率が大きい形状パターンを示すもの
である。
【0043】次に前記条件式12〜15が1つでも満足
されなかった場合(S1030でNO)、図5に示すご
とく、次の条件式16〜19がすべて満足されるか否か
が判定される(S1050)。
【0044】
【数7】 この条件式16〜19がすべて満足されると(S105
0でYES)、この曲線はパターン2であると判定され
る(S1060)。前記条件式16〜19がすべて満足
される曲線とは、図11(a)に示すごとく、一点鎖線
で示す曲線の内、アンカーポイントP1側に偏った位置
に曲率が大きい部分が存在する形状パターンを示すもの
である。
【0045】次に前記条件式16〜19が1つでも満足
されなかった場合(S1050でNO)、次の条件式2
0〜23がすべて満足されるか否かが判定される(S1
070)。
【0046】
【数8】 この条件式20〜23がすべて満足されると(S107
0でYES)、この曲線はパターン3であると判定され
る(S1080)。前記条件式20〜23がすべて満足
される曲線とは、図11(b)に示すごとく、一点鎖線
で示す曲線の内、アンカーポイントP4側に偏った位置
に曲率が大きい部分が存在する形状パターンを示すもの
である。
【0047】次に前記条件式20〜23が1つでも満足
されなかった場合(S1070でNO)、図6に示すご
とく、次の条件式24〜27がすべて満足されるか否か
が判定される(S1090)。
【0048】
【数9】 この条件式24〜27がすべて満足されると(S109
0でYES)、この曲線はパターン4であると判定され
る(S1100)。前記条件式24〜27がすべて満足
される曲線とは、図12(a)に示すごとく、一点鎖線
で示す逆Sの字状に曲がり、アンカーポイントP1側と
アンカーポイントP4側とに1つずつ曲率が大きい部分
が存在する形状パターンを示すものである。
【0049】次に前記条件式24〜27が1つでも満足
されなかった場合(S1090でNO)、次の条件式2
8〜31がすべて満足されるか否かが判定される(S1
110)。
【0050】
【数10】 この条件式28〜31がすべて満足されると(S111
0でYES)、この曲線はパターン5であると判定され
る(S1120)。前記条件式28〜31がすべて満足
される曲線とは、図12(b)に示すごとく、一点鎖線
で示すSの字状に曲がり、アンカーポイントP1側とア
ンカーポイントP4側とに1つずつ曲率が大きい部分が
存在する形状パターンを示すものである。
【0051】次に前記条件式28〜31が1つでも満足
されなかった場合(S1110でNO)には、特定パタ
ーン無しと判定される(S1130)。こうして、曲線
形状判定処理(S520)が終了すると、この曲線形状
判定処理の結果と前記分割数決定処理(S510)の結
果とに応じて、いずれの分割点の位置を演算して求める
かを決定する分割点抽出処理が行われる(S530)。
【0052】ここで、フォントメモリ15には、分割数
Nに応じて図13にしめすごとくの分割点抽出テーブル
が予め計算されて存在する。ただしN=1の場合は分割
点が存在しないので、N=1の分割点抽出テーブルは存
在しない。分割点抽出テーブルの内、分割数N=32の
例を図14に示す。
【0053】図中、配列No.=0が開始点のアンカー
ポイントP1であり、配列No.=32が終点のアンカ
ーポイントP4である。このアンカーポイントP1,P
4の間が前記パラメータtにおいて均等に32分割され
て、配列No.1〜31までの31個の分割点が存在す
る。この分割点毎に、対応する前記パラメータtの値を
分割点抽出テーブルに示してある。この値は、図9に示
したごとく、図7のデータテーブルから、パラメータt
の値を、データ番号nの8ステップ毎に抽出することに
より得られるので分割点抽出テーブルに加える必要はな
い。同時に対応するA,B,C,Dの値も得られる。
【0054】更に、図14は、前記曲線形状判定処理
(S520)にて求められるパターン1〜5およびパタ
ーン無し状態に対応して、31個の分割点から抽出する
分割点を「○」印で示し、抽出しない分割点を「×」印
で示している。尚、配列No.0,32のアンカーポイ
ントについても「○」印があるが、必ず抽出するので、
分割点抽出テーブルに加える必要はない。
【0055】ここで、分割数Nおよびパターン毎の○印
の設定は、予め、分割数N毎に全ての分割点に付いて位
置演算を行い、各分割点について順次省略された場合と
省略しなかった場合とで、輪郭線に差がない場合に、そ
の分割点を抽出しない分割点として「×」印で示し、輪
郭線に差が出た場合には、その分割点を抽出する分割点
として「○」印で示したものである。
【0056】そして、この○印の部分のみについて、次
の分割点位置演算(S540)を実行する。すなわち、
抽出された分割点毎に前記式1〜5の演算を行い、その
分割点の座標(x,y)を求める。尚、式2〜4につい
ては、前記データテーブルに予め計算してあるので、そ
れを用いることができる。
【0057】そして、塗りつぶし処理を行って、出力イ
メージメモリ17に記憶する(S600)。図15,1
6,17に分割数N=32で、パターン2が判定された
場合の例を挙げて説明する。
【0058】処理対象のセグメントのアンカーポイント
P1,P4およびコントロールポイントP2,P3のx
−y座標が図15(a)、(b)に示すごとくであると
すると、R1=1.0、R2=0.9、θ1=80°,
θ2=45°となる。このため、曲線形状判定処理にて
パターン2と判定される(S1050でYES)。
【0059】したがって、分割点抽出処理(S530)
では、図13に示した分割点抽出テーブル群の中から、
図14の分割点抽出テーブルが選択され、その中のパタ
ーン2のテーブルにおいて、○印が付されている分割点
のみに付いて、その分割点のパラメータtの値を用い
て、前記式1〜5の演算を行う。すなわち、配列No.
1から31までの31個の全分割点から、×印の12個
の分割点を排除して図16に示すごとく19個の○印の
分割点を抽出し、その配列No.2から29までの、1
9個の分割点の位置演算をすれば良いことになる。
【0060】こうして、図17に示すごとく、位置が演
算された19個の分割点と2つのアンカーポイントと合
わせて21個のポイントの間を直線でつなぐことによ
り、図21,22に示すごとく31個の全ての分割点を
位置演算してアンカーポイントと合わせて33個のポイ
ントの間を直線でつなぐ場合と同じ品質の輪郭線を、分
割点の位置演算の回数を少なくすることにより高速に得
ることができる。
【0061】図18,19,20に分割数N=32で、
パターン4が判定された場合の例を挙げて説明する。処
理対象のセグメントのアンカーポイントP1,P4およ
びコントロールポイントP2,P3のx−y座標が図1
8(a)、(b)に示すごとくであるとすると、R1=
0.8、R2=0.8、θ1=45°,θ2=−45°
となる。このため、曲線形状判定処理にてパターン4と
判定される(S1090でYES)。
【0062】したがって、分割点抽出処理(S530)
では、図13に示した分割点抽出テーブル群の中から、
図14の分割点抽出テーブルが選択され、その中のパタ
ーン4のテーブルにおいて、○印が付されている分割点
のみに付いて、その分割点のパラメータtの値を用い
て、前記式1〜5の演算を行う。すなわち、配列No.
1から31までの31個の全分割点から、×印の6個の
分割点を排除して図19に示すごとく25個の○印の分
割点を抽出し、その配列No.1から31までの、25
個の分割点の位置演算をすれば良いことになる。
【0063】こうして、図20に示すごとく、位置が演
算された25個の分割点と2つのアンカーポイントと合
わせて27個のポイントの間を直線でつなぐことによ
り、図23,24に示すごとく31個の全ての分割点を
位置演算してアンカーポイントと合わせて33個のポイ
ントの間を直線でつなぐ場合と同じ品質の輪郭線を、分
割点の位置演算の回数を少なくすることにより高速に得
ることができる。
【0064】尚、他のパターンにおいても、同様であ
り、それぞれ図14に示す○印のみの分割点が位置演算
の対象となる。また、曲線形状判定処理(S520)の
S1110にてNOと判定された場合には、特定のパタ
ーンが無いので、図14に示すごとく、この場合だけ
は、全ての分割点が位置演算の対象となる。
【0065】上述したごとく、本実施の形態では、分割
数Nを決定した(S510)後、曲線の形状パターンを
求めて(S520)、その分割数Nに基づいて分割点抽
出テーブルを選択し、更に形状パターンに基づいて分割
点抽出テーブル内の一つのテーブル(パターン毎のテー
ブル)を選択し、その一つのパターン毎のテーブルに基
づいて曲線近似に必要な分割点のみを位置演算の対象と
して抽出し(S530)、実際の分割点としての位置を
演算している(S540)。パターン無しに判定される
場合は、一部の曲線データのみであるので、従来に比較
して、輪郭線の品質を低下させることなく、より高速に
輪郭線を求めることができる。したがって、レーザープ
リンタにおいて、高速で高品質の記録が可能となる。
【0066】本実施の形態において、図14に示す分割
点抽出テーブルの内のパターン毎のテーブルが請求項に
記載のテーブルに該当し、フォントメモリ15がテーブ
ル記憶手段に該当し、分割数決定処理(S510)が分
割数演算手段としての処理に該当し、分割点抽出処理
(S530)および分割点位置演算処理(S540)が
分割点抽出設定手段としての処理に該当し、曲線形状判
定処理(S520)が形状判定手段としての処理に該当
する。
【0067】[その他]曲線形状判定処理(S520)
においては、位置演算する分割点を少なくすることがで
きるパターンとして5つのパターンが設定されていた
が、更に、R1,R2,θ1,θ2に対して、一層詳細
に条件を設定して、もっと多くのパターンに分類しても
良い。また、形状判定はアンカーポイントとコントロー
ルポイントとの位置関係の内、R1,R2,θ1,θ2
に基づいてなされたが、他の位置関係に基づいて形状判
定しても良い。また、コントロールポイントは2つであ
ったが、1つでも良く、また3つ以上でも良く、これら
の位置関係に応じて曲線の形状パターンを判定すること
ができる。
【0068】分割数決定処理(S510)にては、分割
数Nの最大値を「256」としていたが、必要に応じて
分割数は「256」より大きくても、また「256」よ
り小さくても良い。また、分割数決定処理(S510)
は一例であり、これ以外の分割数決定処理でも良い。
【0069】図13に示すごとく、分割数Nに対応して
分割点抽出テーブルを複数設けていたが、例えば最大分
割数(実施の形態では「256」)のみの分割点抽出テ
ーブルに、他の分割数のテーブルを含ませるようにして
一つのテーブルに合成することにより、分割点抽出テー
ブルを少なくして、記憶容量を節約しても良い。
【0070】前記実施の形態では、形状パターンは、キ
ャラクタイメージデータ出力処理の実行の度に、曲線形
状判定処理にて演算を行って判定していたが、形状デー
タ毎に予め形状パターンを求めておいてフォントメモリ
15中に形状データ(座標値)とともに埋め込んでも良
い。このようにすると、曲線形状判定処理は単に形状パ
ターンの種類の判定のみで済み、一層、処理が高速とな
る。
【図面の簡単な説明】
【図1】 曲線近似分割点設定装置の一実施の形態を表
すレーザープリンタの制御回路の主要ブロック図であ
る。
【図2】 一実施形態におけるキャラクタイメージデー
タ出力処理のフローチャートである。
【図3】 一実施形態における曲線近似処理のフローチ
ャートである。
【図4】 一実施形態における曲線形状判定処理のフロ
ーチャートである。
【図5】 一実施形態における曲線形状判定処理のフロ
ーチャートである。
【図6】 一実施形態における曲線形状判定処理のフロ
ーチャートである。
【図7】 パラメータtに基づいて算出されたデータテ
ーブル構成説明図である。
【図8】 分割数決定のためのパラメータ説明図であ
る。
【図9】 分割数決定のパラメータと分割数Nとの関係
説明図である。
【図10】 曲線のパターン1の例示説明図である。
【図11】 曲線のパターン2,3の例示説明図であ
る。
【図12】 曲線のパターン4,5の例示説明図であ
る。
【図13】 分割数Nに対応して設定されている分割点
抽出テーブルの説明図である。
【図14】 分割数N=32に対して設定されている分
割点抽出テーブルの説明図である。
【図15】 分割数N=32でパターン2の場合の各ポ
イントの配置説明図である。
【図16】 分割数N=32でパターン2の場合の分割
点の位置演算説明図である。
【図17】 分割数N=32でパターン2の場合の分割
点に基づく輪郭線表示説明図である。
【図18】 分割数N=32でパターン4の場合の各ポ
イントの配置説明図である。
【図19】 分割数N=32でパターン4の場合の分割
点の位置演算説明図である。
【図20】 分割数N=32でパターン4の場合の分割
点に基づく輪郭線表示説明図である。
【図21】 従来の方法による分割点の位置演算説明図
である。
【図22】 従来の方法による分割点に基づく輪郭線表
示説明図である。
【図23】 従来の方法による分割点の位置演算説明図
である。
【図24】 従来の方法による分割点に基づく輪郭線表
示説明図である。
【符号の説明】
P1,P4…アンカーポイント P2,P3…コント
ロールポイント 2…制御回路 10…入力部 11…マイクロコン
ピュータ部 12…CPU 13…プログラムメモリ 14…ワ
ーキングメモリ 15…フォントメモリ 16…テキストメモリ 17…出力イメージメモリ 18…システムバス
19…出力部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】曲線を直線で近似的に表すために曲線の分
    割点を設定する曲線近似分割点設定方法であって、 前記曲線を直線で近似的に表すことができる分割数を演
    算して求めた後、前記分割数に対応する分割点から、予
    め定められている曲線近似に必要あるいは不要な分割点
    を示すテーブルに基づいて、曲線近似に必要な分割点の
    みを抽出して実際の分割点として位置を決定することを
    特徴とする曲線近似分割点設定方法。
  2. 【請求項2】前記曲線の形状の種類に応じて前記テーブ
    ルが複数設けられているとともに、前記曲線の形状の種
    類に該当するテーブルを前記複数のテーブルから選択
    し、この選択されたテーブルに基づいて、前記分割数に
    対応する分割点から曲線近似に必要な分割点のみを抽出
    して実際の分割点として位置を決定することを特徴とす
    る請求項1記載の曲線近似分割点設定方法。
  3. 【請求項3】前記曲線が2つのアンカーポイントと1つ
    以上のコントロールポイントとを用いて表され、前記曲
    線の形状の種類が前記アンカーポイントおよび前記コン
    トロールポイントの相対的位置関係に応じて定められて
    いることを特徴とする請求項1または2記載の曲線近似
    分割点設定方法。
  4. 【請求項4】予め定められ、曲線近似に必要あるいは不
    要な分割点を示すテーブルを記憶するテーブル記憶手段
    と、 入力された曲線データから、この曲線データが表してい
    る曲線を直線で近似的に表すことができる分割数を演算
    する分割数演算手段と、 前記分割数演算手段により得られた前記分割数に対応す
    る分割点から、前記テーブル記憶手段に記憶されている
    前記テーブルに基づいて、曲線近似に必要な分割点のみ
    を抽出して実際の分割点として位置を決定する分割点抽
    出設定手段と、 を備えたことを特徴とする曲線近似分割点設定装置。
  5. 【請求項5】更に、 前記曲線データに基づいて、前記曲線の形状の種類を判
    定する形状判定手段を備え、 前記テーブル記憶手段は、前記曲線の形状の種類に応じ
    て前記テーブルを複数種類記憶し、 前記分割点抽出設定手段は、前記形状判定手段にて判定
    された前記曲線データが表す曲線の形状の種類に該当す
    るテーブルを、前記テーブル記憶手段が記憶している前
    記複数のテーブルから選択し、この選択されたテーブル
    に基づいて、前記分割数に対応する分割点から曲線近似
    に必要な分割点のみを抽出して実際の分割点として位置
    を決定することを特徴とする請求項4記載の曲線近似分
    割点設定装置。
  6. 【請求項6】前記曲線データが2つのアンカーポイント
    と1つ以上のコントロールポイントとを用いて曲線を表
    し、前記曲線の形状の種類が前記アンカーポイントおよ
    び前記コントロールポイントの相対的位置関係に応じて
    定められていることを特徴とする請求項4または5記載
    の曲線近似分割点設定装置。
JP34167395A 1995-12-27 1995-12-27 曲線近似分割点設定方法および装置 Pending JPH09185722A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34167395A JPH09185722A (ja) 1995-12-27 1995-12-27 曲線近似分割点設定方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34167395A JPH09185722A (ja) 1995-12-27 1995-12-27 曲線近似分割点設定方法および装置

Publications (1)

Publication Number Publication Date
JPH09185722A true JPH09185722A (ja) 1997-07-15

Family

ID=18347907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34167395A Pending JPH09185722A (ja) 1995-12-27 1995-12-27 曲線近似分割点設定方法および装置

Country Status (1)

Country Link
JP (1) JPH09185722A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6924823B2 (en) 2000-09-01 2005-08-02 Sony Computer Entertainment, Inc. Recording medium, program, image processing method, and image processing device
JP2009071626A (ja) * 2007-09-13 2009-04-02 Canon Inc 画像処理装置、画像処理方法、画像処理プログラム、並びに、記録媒体
JP2011210160A (ja) * 2010-03-30 2011-10-20 Canon Inc 画像処理方法、画像処理装置、プログラム、及びプログラム記憶媒体

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6924823B2 (en) 2000-09-01 2005-08-02 Sony Computer Entertainment, Inc. Recording medium, program, image processing method, and image processing device
JP2009071626A (ja) * 2007-09-13 2009-04-02 Canon Inc 画像処理装置、画像処理方法、画像処理プログラム、並びに、記録媒体
JP2011210160A (ja) * 2010-03-30 2011-10-20 Canon Inc 画像処理方法、画像処理装置、プログラム、及びプログラム記憶媒体

Similar Documents

Publication Publication Date Title
JP3437037B2 (ja) 文字パターン生成装置
JP3437347B2 (ja) 文字認識装置及びその方法及びコンピュータ
JP3330277B2 (ja) 文字パターン生成装置
JPH09185722A (ja) 曲線近似分割点設定方法および装置
JPH0962850A (ja) 線対称図形整形装置及び任意の数の対称軸の全てについて線対称な図形を生成する方法
JP3207336B2 (ja) 文字パターン生成装置
JP2868666B2 (ja) 任意の線に沿って組版する電子組版装置
JP3464874B2 (ja) ベジェ曲線による点列トレースの方法および装置
JPH06274622A (ja) 面積算出装置
JP3059739B2 (ja) 曲線描画機能を備えた情報処理装置および処理方法
JP3792171B2 (ja) 文字パターン生成装置
JPH05324921A (ja) 曲線形成方法および装置
JP3344538B2 (ja) 文字生成装置
JP2002351451A (ja) アウトラインフォント情報に基づく文字処理方法及びその方法をコンピュータシステムに実行させるためのコンピュータソフトウエアプログラム製品
JPH05273958A (ja) アウトラインデータ処理装置
JP3283762B2 (ja) 文字パターン生成装置
JP3035141B2 (ja) 文字作成装置及び文字作成方法
JP3536894B2 (ja) 図形処理装置
JP3039015B2 (ja) 文字処理装置
JP3008555B2 (ja) ベクトルフォント出力装置
JPH0823741B2 (ja) ベクトル文字もしくはベクトル図形の処理方法
JPH05334431A (ja) 点列形状データの関数近似装置
JP3087511B2 (ja) データ変換装置
JPH07121723A (ja) 縞紋様の方向データの修正方法及びこれを実行するため の情報処理装置並びに縞紋様のピッチデータの修正方法 及びこれを実行するための情報処理装置
JP2896544B2 (ja) 文字発生方法および装置