JP3359166B2 - プリンタ装置およびプリンタ装置の線分分割描画方法 - Google Patents
プリンタ装置およびプリンタ装置の線分分割描画方法Info
- Publication number
- JP3359166B2 JP3359166B2 JP31491294A JP31491294A JP3359166B2 JP 3359166 B2 JP3359166 B2 JP 3359166B2 JP 31491294 A JP31491294 A JP 31491294A JP 31491294 A JP31491294 A JP 31491294A JP 3359166 B2 JP3359166 B2 JP 3359166B2
- Authority
- JP
- Japan
- Prior art keywords
- band
- data
- line
- data format
- 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
Links
Landscapes
- Record Information Processing For Printing (AREA)
- Editing Of Facsimile Originals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Dot-Matrix Printers And Others (AREA)
Description
ータに基づいて印字可能なプリンタ装置およびプリンタ
装置の線分分割描画方法に関するものである。
分描画処理は、1ページに描画する線が幅をもつ場合、
線を図6のようなラインに分割し、それぞれを多角形と
見倣して、閉領域の塗りつぶしに利用するランレングス
と呼ばれるデータ構造で持っていた。
ラインごとに描画開始点と描画終了点のX座標を一対で
持つ。
は、高さが同じ場合は図形の形状に関わらず同じ量のデ
ータを持つ。各ラインを描画する場合は、ライン・デー
タに対応するランレングス・オブジェクトをバンドごと
に作成して描画を行っていた。
方法では、プリンタの高解像度化や、用紙サイズの拡大
などによってスキャンラインが増加すると、1ページあ
たりのデータ量の増大に伴って、描画処理時に大容量の
メモリが必要となり、また全てのスキャンラインについ
てデータを作成しなければならないので、処理速度が低
下するという問題が発生する。
なされたもので、本発明の目的は、幅のある直線を描画
する場合に描画すべきバンドが開始バンドかそれとも終
了バンドかを判断し、該判断により開始バンドであると
判断された場合に、データ形式をランレングスとしてオ
ブジェクトを作成して描画するとともに、該判断により
終了バンドであると判断された場合に、データ形式をト
ラペゾイドとしてオブジェクトを作成して描画すること
により、バンド描画処理時に、1つの線分データを少な
いデータ量で、効率よく、かつ高速に分割描画処理する
ことができるプリンタ装置およびプリンタ装置の線分分
割描画方法を提供することである。
は、1ページ分の描画データを所定の高さに分割したバ
ンド毎に描画し、描画されたバンドデータに基づいて印
刷するプリンタ装置において、幅のある直線を描画する
場合に開始バンドか否かを判断する第1判断手段と、幅
のある直線を描画する場合に終了バンドか否かを判断す
る第2判断手段と、前記第1判断手段により開始バンド
であると判断された場合、データ形式をランレングスと
してオブジェクトを作成し、描画する第1描画手段と、
前記第2判断手段により終了バンドであると判断された
場合、データ形式をランレングスとしてオブジェクトを
作成し、描画する第2描画手段と、前記第1判断手段に
より開始バンドでないと判断され、前記第2判断手段に
より終了バンドでないと判断された場合、データ形式を
トラペゾイドとしてオブジェクトを作成し、描画する第
3描画手段とを有するものである。
描画データを所定の高さに分割したバンド毎に描画し、
描画されたバンドデータに基づいて印刷するプリンタ装
置の線分分割描画方法において、幅のある直線を描画す
る場合に開始バンドか否かを判断する第1判断工程と、
幅のある直線を描画する場合に終了バンドか否かを判断
する第2判断工程と、前記第1判断工程により開始バン
ドであると判断された場合、データ形式をランレングス
としてオブジェクトを作成し、描画する第1描画工程
と、前記第2判断工程により終了バンドであると判断さ
れた場合、データ形式をランレングスとしてオブジェク
トを作成し、描画する第2描画工程と、前記第1判断工
程により開始バンドでないと判断され、前記第2判断手
段により終了バンドでないと判断された場合、データ形
式をトラペゾイドとしてオブジェクトを作成し、描画す
る第3描画工程とを有するものである。
の構成を説明する概略ブロック図である。
タ)で、ROM5に記憶された描画処理プログラム及び
ペンデータ6に基づいて描画処理を行うCPU2,RA
M3等より構成されている。7はホストコンピュータで
ある。なお、プリンタエンジンについては省略してあ
る。なお、4はペンデータである。
段との対応及びその作用について図1を参照して説明す
る。
いて、1ページ分の描画データを所定の高さに分割した
バンド毎に展開して描画し、該描画がされたバンドデー
タに基づいて印刷するプリンタ装置において、1ページ
の線分データを、Y座標の最小値を示す位置から方向が
180度変換するまでまたは途切れるまでのセグメント
を1ラインとして、各ラインの開始点と終了点のX座標
からセグメントの傾きを導出する傾き導出手段2aと、
前記開始点と終了点のY座標からセグメントのまたがる
バンド数を導出するバンド数導出手段2bと、ラインの
開始および繰り返しが始まる手前までのバンドに属する
オブジェクトの最適データ形式を選択して描画する第1
の描画手段2cと、前記セグメントの繰り返しが終る手
前のバンドに属するオブジェクトの最適データ形式を選
択し、同じデータを使用して繰り返し描画する第2の描
画手段2dと、前記ライン終了および繰り返しが終了し
た後のバンドに属するオブジェクトの最適データ形式を
選択し描画する第3の描画手段2eとを設け、傾き導出
手段2aにより1ページの線分データを、Y座標の最小
値を示す位置から方向が180度変換するまでまたは途
切れるまでのセグメントを1ラインとして、各ラインの
開始点と終了点のX座標からセグメントの傾きが導出さ
れると、バンド数導出手段2bが前記開始点と終了点の
Y座標からセグメントのまたがるバンド数を導出する。
そして、第1の描画手段2cがラインの開始および繰り
返しが始まる手前までのバンドに属するオブジェクトの
最適データ形式を選択して描画し、前記セグメントの繰
り返しが終る手前のバンドに属するオブジェクトの最適
データ形式を選択し、第2の描画手段2dが同じデータ
を使用して繰り返し描画し、第3の描画手段2eが前記
ライン終了および繰り返しが終了した後のバンドに属す
るオブジェクトの最適データ形式を選択し描画して、少
ないデータで1つの線分をバンド処理する際にそれぞれ
の特徴部を高速に分割描画することを可能とする。
についてそれぞれ図形の頂点から次の頂点までのX座標
の差と、エッジの傾きおよびこの間のスキャンライン数
を1組みとするデータを含み、線分データ全体としての
データ量を軽減することを可能とする。
タ形式をトラペゾイドとしてオブジェクトを作成描画
し、数のバンドにおよぶ傾き変化のない線分データを少
ないデータ量で処理することを可能とする。
eは、最適データ形式をランレングスとしてオブジェク
トを作成描画して、セグメントが三角形の端点持つ場合
には最適なランレングスデータ形式で線分データを処理
することを可能とする。
るプリンタ装置における線分分割描画処理について説明
する。
第1の線分分割描画処理状態を説明する模式図であり、
例えば線幅W,高さHの垂直線を描画する場合に対応す
る。
1)、このセグメント番号をj(=1)、またがるバン
ド数をn、バンド番号をi、バンドの高さをBH、開始
バンド中のオブジェクトの高さをSH、終了バンド中の
オブジェクトの高さをEHとする。
第1の線分分割描画方法の一実施例を示すフローチャー
トである。なお、(1)〜(15)は各ステップを示
す。
には、上記ステップ(1),(2)は実行する必要がな
いので、ステップ(3)により、セグメントのまたがる
バンド数を求める。ステップ(4)によりバンド番号を
初期化する。ステップ(5)において、開始バンドかど
うかを判断し、開始バンドの場合は、ステップ(6)で
セグメントの描画を開始し、ステップ(7)において線
幅Wと、セグメントのうちこのバンドに含まれる高さ
「SH」より最適データ形式を矩形として描画する
(8)。そして次のバンドへ処理を移すため、iをイン
クリメントしてステップ(9)へ行く。
ドではないとCPU2が判定した場合、ステップ(9)
において終了バンドかどうかを判断し、終了バンドでは
ない場合はバンドにフル描画を行うので、ステップ(1
0)においてこれを繰り返すバンド数p(この場合はn
−2)を算出し、ステップ(11)において、ステップ
(8)でRAM3に記憶しておいた「W」と「BH」よ
り矩形をp回描画する。
テップ(9)において終了バンドと判断するので、ステ
ップ(13)において、終了バンドに属するオブジェク
トの高さ「EH」を算出し、(14)でセグメント終了
コードを送って(15)で「W」と「EH」により最適
データ形式を矩形として描画し、終了する。
る直線を描画する他の処理について図1,図4を参照し
て説明する。
て、ランレングスの他にトラペゾイドという形式を採用
する場合について説明する。
同様に1スキャンラインに対する左右の描画位置をデー
タとして持つが、ランレングスのように全てのスキャン
ラインについて左右のX座標を持つのではなく、図形の
左右の輪郭線についてそれぞれ図形の頂点から次の頂点
までのX座標の差と、エッジの傾きおよびこの間のスキ
ャンライン数を1組のデータとして持つ。そして、この
データから各スキャンラインのX座標を計算して求め
る。データ量が増えないので、トラペゾイドは比較的傾
きの変化が少ないすなわち直線の多い図形に関して特に
有効なデータ形式である。
ある条件下においてはランレングスよりもトラペゾイド
としてデータを持つ方が有利な場合もある。
らバンドごとに全てのランレングス・オブジェクトを作
成して描画しているが、複数のバンドにまたがって一定
の傾きを持つラインを描画する時、各バンドの高さは決
まっているので、その間の描画は同じデータの繰り返し
となり、いちいちバンドごとに新しくデータを送る必要
はない。そこで、繰り返しの部分については描画命令を
変更することにより、処理を簡略化することができる。
第2の線分分割描画処理状態を説明する模式図であり、
例えば線幅W,高さHの垂直線を描画する場合に対応す
る。
(=1)、このセグメント番号をj(=1)、またがる
バンド数をn、バンド番号をi、バンドの高さをBH、
開始バンド中のオブジェクトの高さをSH、終了バンド
中のオブジェクトの高さをEHとする。また、このライ
ンは端点の形状が三角形である。
第2の線分分割描画方法の一実施例を示すフローチャー
トである。なお、(1)〜(16)は各ステップを示
す。
には、上記ステップ(1),(2)は実行する必要がな
いので、ステップ(3)により、セグメントの傾きを算
出し、ステップ(4)により、セグメントのまたがるバ
ンド数を求める。ステップ(5)によりバンド番号を初
期化する。ステップ(6)において、開始バンドかどう
かを判断し、開始バンドの場合はステップ(7)でセグ
メントの描画を開始する。
と、このセグメントが三角形の端点を持つことによりト
ラペゾイド化は不適当と判断して、start(j)と
Wより算出されるobj_topと、セグメントのうち
このバンドに含まれる高さSHより最適データ形式をセ
グメントとしてオブジェクトを作成し、ステップ(9)
で描画する。そして次のバンドへ処理を移すため、iを
インクリメントして(13)、ステップ(10)へ行
く。
いとCPU2が判定した場合、ステップ(10)におい
て終了バンドかどうかを判断し、終了バンドではない場
合はバンドにフル描画を行う。この図形は傾きが一定な
ので、フルバンド描画部分についてはトラペゾイドオブ
ジェクトを作成するのが効率的である。
を繰り返すバンド数p(この場合はn−2)を算出し、
ステップ(12)において、1とBHよりトラペゾイド
オブジェクトを作成し、描画する。
了すると、ステップ(10)において終了バンドと判断
するので、開始バンドと同様に、ステップ(14)にお
いて終了バンドに属するオブジェクトの高さEHとob
j_bottomを算出し、ステップ(15)でセグメ
ント終了コードを送って、ステップ(16)でランレン
グスオブジェクトを描画し、終了する。
分分割描画方法において、1ページ分の描画データを所
定の高さに分割したバンド毎に展開して描画し、該描画
がされたバンドデータに基づいて印刷するプリンタ装置
の線分分割描画方法において、1ページの線分データ
を、Y座標の最小値を示す位置から方向が180度変換
するまでまたは途切れるまでのセグメントを1ラインと
して、各ラインの開始点と終了点のX座標からセグメン
トの傾きを導出する傾き導出工程(図3,図5の工程S
1)と、前記開始点と終了点のY座標からセグメントの
またがるバンド数を導出するバンド数導出工程(図3,
図5の工程S2)と、ラインの開始および繰り返しが始
まる手前までのバンドに属するオブジェクトの最適デー
タ形式を選択して描画する第1の描画工程(図3,図5
の工程S3)と、前記セグメントの繰り返しが終る手前
のバンドに属するオブジェクトの最適データ形式を選択
し、同じデータを使用して繰り返し描画する第2の描画
工程(図3,図5の工程S4)と、前記ライン終了およ
び繰り返しが終了した後のバンドに属するオブジェクト
の最適データ形式を選択し描画する第3の描画工程(図
3,図5の工程S5)とを実行して、前記ライン終了お
よび繰り返しが終了した後のバンドに属するオブジェク
トの最適データ形式を選択し描画して、少ないデータで
1つの線分をバンド処理する際にそれぞれの特徴部を高
速に分割描画する処理をプログラマブルに実行可能とす
る。
についてそれぞれ図形の頂点から次の頂点までのX座標
の差と、エッジの傾きおよびこの間のスキャンライン数
を1組みのデータを含むので、線分データ全体としての
データ量を軽減した描画処理をプログラマブルに実行可
能とする。
式をトラペゾイドとしてオブジェクトを作成描画するの
で、数のバンドにおよぶ傾き変化のない線分データを少
ないデータ量で描画することをプログラマブルに実行可
能とする。
適データ形式をランレングスとしてブジェクトを作成描
画するので、セグメントが三角形の端点持つ場合には最
適なランレングスデータ形式で線分データを描画するこ
とをプログラマブルに実行可能とする。なお、図3,図
5において、S1〜S5は各工程を示し、S1は1ペー
ジの線データを、Y座標の最も小さな位置から方向が1
80度変換するまでまたは途切れるまでの線を1ライン
として、ラインの傾きが変化してから次に変化するまで
を1単位とする線分(セグメント)について、開始点と
終了点のX座標からセグメントの傾きめる工程を示し、
S2は開始点と終了点のY座標からセグメントのまたが
る(オーバラップする)バンド数を求める工程を示し、
S3はラインの開始および繰り返しが始まる手前までの
バンドに属するオブジェクトの最適データ形式を選択し
描画する工程を示し、S4はセグメントの繰り返しが終
わる手前のバンドに属するオブジェクトの最適データ形
式を選択し、同じデータを使用して繰り返し描画する工
程を示し、S5はライン終了及び繰り返しが終了した後
のバンドに属するオブジェクトの最適データ形式を選択
し描画する工程に対応する。
をプリンタから印刷する場合について説明したが、描画
展開された線分を表示する表示装置にも本発明を適用す
ることができることはいうまでもない。また、プリンタ
のエンジンについて本発明の適用に際して特に限定はな
く、インクジェットプリンタエンジン,レーザプリンタ
エンジン等の種々のエンジンを備えるプリンタに本発明
を適用することができる。
るシステムに適用しても、1つの機器から成る装置に適
用しても良い。また、本発明はシステムあるいは装置に
プログラムを供給することによって達成させる場合にも
適用できることは言うまでもない。
幅のある直線を描画する場合に描画すべきバンドが開始
バンドかそれとも終了バンドかを判断し、該判断により
開始バンドであると判断された場合に、データ形式をラ
ンレングスとしてオブジェクトを作成して描画するとと
もに、該判断により終了バンドであると判断された場合
に、データ形式をトラペゾイドとしてオブジェクトを作
成して描画するので、バンド描画処理時に、1つの線分
データを少ないデータ量で、効率よく、かつ高速に分割
描画処理することができるという効果を奏する。
説明する概略ブロック図である。
分割描画処理状態を説明する模式図である。
分割描画方法の一実施例を示すフローチャートである。
分割描画処理状態を説明する模式図である。
分割描画方法の一実施例を示すフローチャートである。
説明する模式図である。
Claims (2)
- 【請求項1】 1ページ分の描画データを所定の高さに
分割したバンド毎に描画し、描画されたバンドデータに
基づいて印刷するプリンタ装置において、 幅のある直線を描画する場合に開始バンドか否かを判断
する第1判断手段と、 幅のある直線を描画する場合に終了バンドか否かを判断
する第2判断手段と、 前記第1判断手段により開始バンドであると判断された
場合、データ形式をランレングスとしてオブジェクトを
作成し、描画する第1描画手段と、 前記第2判断手段により終了バンドであると判断された
場合、データ形式をランレングスとしてオブジェクトを
作成し、描画する第2描画手段と、 前記第1判断手段により開始バンドでないと判断され、
前記第2判断手段により終了バンドでないと判断された
場合、データ形式をトラペゾイドとしてオブジェクトを
作成し、描画する第3描画手段と、 を有することを特徴とするプリンタ装置。 - 【請求項2】 1ページ分の描画データを所定の高さに
分割したバンド毎に描画し、描画されたバンドデータに
基づいて印刷するプリンタ装置の線分分割描画方法にお
いて、 幅のある直線を描画する場合に開始バンドか否かを判断
する第1判断工程と、 幅のある直線を描画する場合に終了バンドか否かを判断
する第2判断工程と、 前記第1判断工程により開始バンドであると判断された
場合、データ形式をランレングスとしてオブジェクトを
作成し、描画する第1描画工程と、 前記第2判断工程により終了バンドであると判断された
場合、データ形式をランレングスとしてオブジェクトを
作成し、描画する第2描画工程と、 前記第1判断工程により開始バンドでないと判断され、
前記第2判断手段により終了バンドでないと判断された
場合、データ形式をトラペゾイドとしてオブジェクトを
作成し、描画する第3描画工程と、 を有することを特徴とするプリンタ装置の線分分割描画
方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31491294A JP3359166B2 (ja) | 1994-12-19 | 1994-12-19 | プリンタ装置およびプリンタ装置の線分分割描画方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31491294A JP3359166B2 (ja) | 1994-12-19 | 1994-12-19 | プリンタ装置およびプリンタ装置の線分分割描画方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08169157A JPH08169157A (ja) | 1996-07-02 |
JP3359166B2 true JP3359166B2 (ja) | 2002-12-24 |
Family
ID=18059144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31491294A Expired - Fee Related JP3359166B2 (ja) | 1994-12-19 | 1994-12-19 | プリンタ装置およびプリンタ装置の線分分割描画方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3359166B2 (ja) |
-
1994
- 1994-12-19 JP JP31491294A patent/JP3359166B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH08169157A (ja) | 1996-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5524198A (en) | Character or graphic processing method and apparatus | |
JP2002133428A (ja) | 描画処理装置 | |
JPH06168334A (ja) | 描画装置 | |
JP3359166B2 (ja) | プリンタ装置およびプリンタ装置の線分分割描画方法 | |
JP3416489B2 (ja) | フォント処理装置およびフォント処理用プログラムを記録した記録媒体 | |
JP3606006B2 (ja) | 画像形成装置およびグラデーション描画方法 | |
JP3055187B2 (ja) | 輪郭線データ処理装置 | |
JPH0816801A (ja) | 画像処理方法及び装置 | |
JPH0877324A (ja) | 電子ファイル装置 | |
JP3236410B2 (ja) | 輪郭線形成方法 | |
JP3450961B2 (ja) | 印刷装置及びその制御方法 | |
JP2000066658A (ja) | 画像処理装置および記録媒体 | |
JPH0823741B2 (ja) | ベクトル文字もしくはベクトル図形の処理方法 | |
JP3536894B2 (ja) | 図形処理装置 | |
JP3211591B2 (ja) | イメージ処理装置 | |
JP3085396B2 (ja) | ベクトルフォントの展開方法および装置 | |
JP2001273508A (ja) | 画像処理装置 | |
JP3567728B2 (ja) | 画像処理方法および装置 | |
JP3567727B2 (ja) | 画像処理方法および装置 | |
JP2974638B2 (ja) | 文書処理装置及び方法 | |
JPH11102177A (ja) | 書体データ作成装置と書体データの作成方法、及び記憶媒体 | |
JPH08186708A (ja) | 画像拡大装置 | |
JPH09281946A (ja) | キャラクタイメージデータ形成方法および装置 | |
JPH09231386A (ja) | 線分割描画方法及び線分割描画装置 | |
JPH08278855A (ja) | 出力制御装置および出力制御装置の画像処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071011 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081011 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091011 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091011 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101011 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101011 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111011 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111011 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121011 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131011 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |