JP2986182B2 - 画像形成装置 - Google Patents

画像形成装置

Info

Publication number
JP2986182B2
JP2986182B2 JP20012990A JP20012990A JP2986182B2 JP 2986182 B2 JP2986182 B2 JP 2986182B2 JP 20012990 A JP20012990 A JP 20012990A JP 20012990 A JP20012990 A JP 20012990A JP 2986182 B2 JP2986182 B2 JP 2986182B2
Authority
JP
Japan
Prior art keywords
straight line
drawing means
line drawing
bit map
vector information
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 - Lifetime
Application number
JP20012990A
Other languages
English (en)
Other versions
JPH0484375A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP20012990A priority Critical patent/JP2986182B2/ja
Publication of JPH0484375A publication Critical patent/JPH0484375A/ja
Application granted granted Critical
Publication of JP2986182B2 publication Critical patent/JP2986182B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、ピクセルのマトリクスにみたてたメモリ
上に直線データを生成する画像形成装置に関する。
〔従来の技術〕
例えばレーザプリンタにおいては、ベクトル情報で表
された直線をプリンタエンジンに出力する場合、第8図
(イ)に示すようにその直線を近似するピクセル(升
目)位置を計算して、その結果をビツトマツプメモリに
書き込み、1ページ分のデータが揃つた時点で、それを
プリンタエンジンへ出力して印字を行なわせるのが一般
的である。
なお、同図(イ)(ロ)のX0,Y0は始点、Xn,Ynは終点
を示し、黒丸は直線を近似するために求められたピクセ
ル位置である。
ところで、ベクトル情報からその直線を構成するピク
セルの位置を求める代表的な方法として、ブレセンハム
法がある。
このブレセンハム法は、直線の傾きに応じてXまたは
Yを常に1単位ずつ増加させ、もう一方の変数の増分は
実際の直線の位置と最も近いグリツト位置との間の距離
を調べることにより決定して、最適なラスタ位置を割り
出すようにしたものであり、詳細には「実践コンピユー
タグラフイツクス」(日刊工業新聞社.S63.5.30発行)
に記載されている。
そこで、このブレセンハム法を用いて、ビツトマツプ
メモリに対して第8図(イ)に示す直線描画の処理を行
なう場合、以下に示す直線の公式に従つて、XをX0から
Xnまで1ずつ増加させながら、各Xに対するYを求め
る。
Y=AX+B なお、dX=Xn−X0,dY=Yn−Y0は増分、A=dY/dXは傾
き、B=−AX0+Y0は切片を表わす。
また、同図(ロ)に示すようにdYがdXより大きい場合
には、上記式のXとYを逆転し、Yを1ずつ増加させな
がら各Yに対するXを求める。
このようにして、直線を近似するピクセル位置が求ま
ると、ビツトマツプメモリ上のピクセルを含むアドレス
とそのピクセルのビツト位置とを求め、ビツトマツプメ
モリに描画すべきデータを書き込む。
〔発明が解決しようとする課題〕
このように、ブレセンハム法は少数演算を必要としな
いため処理速度が速いといわれているが、描画すべき直
線がスキヤンラインに平行もしくは垂直な直線によつて
表現される場合にも、その直線を近似するために対応す
る全てのピクセル位置を計算するようになつており、そ
の場合の処理効率の点で問題があつた。
この発明は上記の点に鑑みてなされたものであり、ベ
クトル情報による直線描画の処理速度の高速化を計るこ
とを目的とする。
〔課題を解決するための手段〕
この発明は上記の目的を達成するため、ベクトル情報
をビツトマツプ情報に変換してビツトマツプメモリに記
録し、その結果を出力する画像形成装置において、第1
図に機能ブロツク図で示すように、ベクトル情報より描
画すべき直線を近似する全てのピクセル位置を計算し
て、その結果をビツトマツプメモリに書き込む第1の直
線描画手段Aと、ベクトル情報より走査方向に水平な方
向(X方向)の増分(dX)と垂直な方向(Y方向)の増
分(dY)とを比較し、その増分が小さい方の方向を基準
にして、描画すべき直線の始点から終点までその基準の
方向へ1単位ずつ増加させながら該直線上のプロット点
を順次求め、上記始点から次のプロット点との間の中点
までと、上記始点および終点と各プロット点とのうち互
いに隣接する点間の中点同士の間と、上記終点とその直
前のプロット点との間の中点から終点までとを、それぞ
れ近似する前記基準にしなかった方向の1つ以上の直線
成分を構成するピクセルを求めて、その結果をビツトマ
ツプメモリに書き込む第2の直線描画手段Bと、入力さ
れたベクトル情報の直接の傾きにより、第1の直線描画
手段Aもしくは第2の直線描画手段Bを選択する描画選
択手段とを設けたものである。
なお、描画選択手段Cが、ベクトル情報の直線の傾き
の絶対値が2以上あるいは0.5以下の場合には第2の直
線描画手段Bを選択し、それ以外の場合には第1の直線
描画手段Aを選択することが望ましい。
〔作 用〕
この発明による第1図の画像形成装置では、描画選択
手段Cが入力されたベクトル情報の直線の傾きにより、
第1の直線描画手段Aもしくは第2の直線描画手段Bを
選択するので、直線描画の処理速度が向上し、その処理
に要する時間が全体として短縮する。
なお、ベクトル情報の直線の傾きの絶対値が2以上あ
るいは0.5以下の場合、すなわち描画すべき直線にスキ
ヤンラインに平行又は垂直な直線成分がある場合に第2
の直線描画手段Bを選択し、そのような直線成分がない
場合に第1の直線描画手段Aを選択することにより、最
も効率のよい直線描画処理を実現することができる。
〔実 施 例〕
以下、この発明の実施例を第2図以降を参照して具体
的に説明する。
第2図は、この発明をレーザプリンタに適用した一実
施例のシステム構成図であり、1は外部装置であるパー
ソナルコンピユータ,ワードプロセツサ,データ処理装
置,画像処理装置等のホストコンピユータ、2はページ
プリンタであるレーザプリンタである。
レーザプリンタ2は、ホストコンピユータ1から送ら
れてくる文字情報,イメージ(グラフイツク)情報,あ
るいはベクトル情報等のプリントデータを解析し、ペー
ジ単位でビツトマツプ情報(ビデオデータ)に変換する
プリンタコントローラ3と、そのビツトマツプ情報に応
じてレーザを変調し、印字用紙に文字や画像等の可視画
像をプリントするための作像部とそのシーケンスコント
ローラ等からなるプリンタエンジン4とによつて構成さ
れている。
第3図は、プリンタコントローラ3の内部構成を示す
ブロツク図である。
このプリンタコントローラ3は、インタフエース(I/
F)として、ホストコンピユータ1に接続するためのホ
ストインタフエース5と、プリンタエンジン4に接続す
るためのエンジンインタフエース6と、各種表示器,ス
イツチ等を備えた操作パネル8と接続するためのパネル
インタフエース7と、フロツピデイスク装置13,読書き
可能なRAMカートリツジ14,読出し専用のROMカートリツ
ジ15等のオプシヨンと接続するためのオプシヨンインタ
フエース9とを備えている。
また、このプリンタコントローラ3は、マイクロコン
ピユータ(以下「CPU」と称す)10と、ROM11及びRAM12
を備えている。
なお、外部装置としてのRAMカートリツジ14及びはROM
カートリツジ15は、例えばフオントカートリツジであつ
て、それぞれ異なるフオントデータを格納するものであ
る。
CPU10は、このプリンタコントローラ全体の統括制御
を司り、第1図における第1,第2の直線描画手段A,B及
び描画選択手段Cとしての機能も果す。なお、その第1,
第2の直線描画手段A,Bはそれぞれブレセンハム法及び
後述する直線近似法を用いた各処理に相当するものであ
る。
ROM11はリードオンメモリであり、CPU10が動作するた
めのプログラムの他に常駐フオントデータ等を格納して
いる。
RAM12は大容量のランダムアクセスメモリであり、主
として次のような用途に使用される。
(a)インプツトバツフア (b)ページバツフア (c)ビツトマツプメモリ (d)システムメモリ (e)フオントフアイル (f)イメージフアイル (g)ベクトルフアイル これ等のバツフア及びフアイルは、システムソフトに
使用する以外のRAM領域を必要な容量だけ事前に確保し
て使用する。この場合メモリ容量が不足した場合は、そ
の旨を表示して機能を放棄する。
その場合は、何等かのデータを消去して使用可能な状
態に戻す必要がある。すなわち、全メモリ領域は固定的
に割付けて使用するのではなく、必要な都度領域を確保
して使用するダイナミツク管理方式を採用している。
ここで、各バツフア及びフアイルの機能について説明
する。
〔インプツトバツフア〕
ホストインタフエース5に接続されているホストコン
ピユータ1からは、プリンタコントローラ3内の動作と
は関係なく、不定期にデータを送つてくる。したがつ
て、ホストインタフエース5からのデータをインプツト
バツフアに一時的に保持しておき、プリンタソフトウエ
アがそのデータを順次取り出して処理していく。
〔ページバツフア〕
ホストコンピユータ1から送られて来たデータに、そ
のデータが実際に記憶されているソースアドレスと、ビ
デオバツフアのどこにビデオデータを作るかを指定する
デイステイネーシヨンアドレス及びサイズ等の情報を付
加して、このページバツフアにページデータを作る。
〔ビツトマツプメモリ〕
ビツトマツプメモリ(ビデオバツフア)には、ページ
バツフアのページデータと後述するフオントフアイルの
フオントデータ等、場合によりイメージフアイルのイメ
ージデータをも使用してビツトマツプ情報が作成され
る。
このビツトマツプメモリには、フルビツトマツプモー
ドとパーシヤルビツトマツプモードがあり、どちらのモ
ードでも使用可能である。
フルビツトマツプモードは、ペーパサイズの全面に相
当するメモリエリアをビツトマツプメモリとして割り付
けて使用するモードであり、パーシヤルビツトマツプモ
ードは、ペーパサイズの一部分(例えば1/8ページ分)
に相当するメモリエリアをビツトマツプメモリとして割
り付けて、その半分ずつを交互に使用するモードであ
る。
〔フオントフアイル〕
フオントデータはすべてフアイルとして扱われてお
り、ビツトマツプメモリにビツトマツプ情報を展開する
場合のソースデータとなる。したがつて、使用可能なフ
オントデータが格納されているアドレスを示すリスト
と、各フオントデータ内の各文字のアドレスを示すリス
トがテーブルの形で設けられている。
フオントデータには、イメージフオントデータと圧縮
フオントデータがあり、イメージフオントデータは矩形
のドツトマトリツクスで表わされ、圧縮フオントデータ
は後述するように2桁のヘキサコードによる一連のデー
タの集まりで表現される。
このフオントフアイルは、内部にROMとして所有する
ことも、外部にフオントカートリツジとして所有するこ
とも、ホストインタフエース5を通してホストコンピユ
ータ1からダウンロードすることも可能である。
〔イメージフアイル〕
ホストコンピユータ1から送られてくるイメージデー
タを順次格納し、イメージフアイルを作る。ビツトマツ
プメモリがフルビツトマツプモードの場合には、このイ
メージフアイルを作らずに直接ビツトマツプメモリにイ
メージデータを格納することもできる。
パーシヤルビツトマツプモードの場合は、イメージフ
アイルとして使用可能なメモリ領域に作られる。そし
て、各イメージフアイルには識別コードが付けられ、ペ
ージバツフアに組み込まれる。
〔ベクトルフアイル〕
ホストコンピユータ1から送られてきたデータがベク
トル情報である場合は、そのベクトルが作成されて、そ
のアドレスがページバツフアに組み込まれる。
パーシヤルビツトマツプモードの場合で、ベクトル情
報が複数のページブロツクにまたがる場合は、ページブ
ロツク単位に分解されてフアイルが作成される。
フルビツトマツプモードの場合でも、小単位に分解さ
れる方がメモリの使用効率及び処理速度上都合がよい。
次に、この実施例における直線近似法について説明す
る。
この方法においては、ベクトル情報からdX,dYを求
め、増分の小さい方を基準値とする。
例えば、第4図(イ)に示すような直線描画を行なう
場合、dXの方が小さいのでXを基準値とし、X0からXnま
で1ずつ増加させながら、直線の公式に従つて各Xに対
するYを求める。
この値をもとに生成される直線を近似する直線成分の
求め方を、第4図を参照しながら順次追つて説明してい
くこととする。
第4図(イ)において、まず始点のピクセル位置
(X0,Y0)より、ビツトマツプメモリ12a上のアドレスと
ビツト位置を求める。
そして、始点と次のプロツト点(X1,Y1)との中点a
に位置するピクセルを求め、始点から中点aまでの斜線
を施して示すピクセルをうめるようにビツトマツプメモ
リ12aにデータを書き込む。これを、スキヤンラインに
垂直な第1の直線成分とする。
第2の直線成分は、中点aから(X1,Y1)と(X2,Y2
との中点bまでのピクセルをうめることにより作られ
る。
このようにして、Xnまでの直線成分を求めていく。
第4図(ロ)に示すようにdYの方が小さい場合は、X
とYを逆転し、Yを基準に各Xを求める。
そして、Xを基準とした時と同様に各中点位置を割り
出しながら、今度はスキヤンラインに平行な直線成分を
生成し、ビツトマツプメモリ12aにデータを書き込む。
ところで、この直接近似法は直線の傾きにより算出し
なければならないポイントの数が変わるため、この方法
を用いた処理に要する時間は第5図(ロ)に示すように
傾きによつて異なり、直線の傾きによつては同図(イ)
に示すブレセンハム法を用いた処理に要する時間よりも
遅くなることがある。
そこで、この実施例では、受け取つたベクトル情報の
直線の傾きによつてブレセンハム法と上述した直線近似
法とを使い分けることにより、全体的な直線の描画速度
を向上させようとするものである。
ここで、その処理の流れを第6図のフローチヤートに
よつて説明する。
まず、ホストコンピユータ1から受け取つたベクトル
情報(標準入力)より、その直線の始点と終点を取得し
て、X,Yそれぞれの増分dX,dYを求めた後、その直線がX
軸又はY軸と平行な直線か否かを判別し、YESならば直
線近似法を用いた処理を行なつて処理を終了する。
一方、ベクトル情報の直線がX軸又はY軸と平行な直
線でない場合は、dX/dYあるいはdY/dXの絶対値が2以上
かどうかをチエツクし、2以上ならばやはり直線近似法
を用いた処理を行ない、2以上でなければブレセンハム
法を用いた処理を行なつて処理を終了する。
ここで、|dY/dX|≧2とはX軸に対する直線の傾きを
θとすると、tanθ≧2であり、θが約63.5゜以上の場
合に相当し、|dX/dY|≧2は|dY/dX|≦0.5と同じである
から、tanθ≦0.5であり、θが約26.5゜以下の場合に相
当する。
したがつて、このように直線近似法とブレセンハム法
とを使い分けることにより、直線描画に要する処理時間
が第7図に示すようになり、直線を描写するための処理
時間が全体として短縮される。
なお、この実施例では、dY/dX又はdX/dYの絶対値が2
未満の時は、1ピクセルの処理が発生することから、ブ
レセンハム法を使用するようにしたが、使用するマイク
ロコンピユータの種類などにより、この値を適当に選ぶ
ことで、効率的な直線の描画を行なうことができる。
以上、この発明をレーザプリンタに適用した実施例に
ついて説明したが、この発明はLEDプリンタ,液晶シヤ
ツタプリンタ等の他の光プリンタやデジタル複写機を含
むベクトル情報をビツトマツプ情報に変換して描画でき
る全ての画像形成装置に適用可能である。
〔発明の効果〕
以上説明したように、この発明によれば、ベクトル情
報の直線の傾きによつて、ブレセンハム法と直線近似法
とを使い分けることにより、直線描画の処理時間を全体
として短縮することが可能となる。
【図面の簡単な説明】
第1図はこの発明の基本構成を示す機能ブロツク図、 第2図はこの発明をレーザプリンタに適用した一実施例
のシステム構成図、 第3図は同じくそのプリンタコントローラの内部構成を
示すブロツク図、 第4図(イ)(ロ)はこの実施例の直線近似法を用いた
処理による直線描画の異なる例を示す説明図、 第5図(イ)(ロ)はブレセンハム法及び直線近似法を
用いた処理に要する時間とその直線の傾きとの関係を示
す線図、 第6図は第3図のCPUによる直線描画処理を示すフロー
図、 第7図は同じくその直線描画処理に要する時間とその直
線の傾きとの関係を示す線図、 第8図(イ)(ロ)はブレセンハム法を用いた処理によ
る直線描画の異なる例を示す説明図である。 1……ホストコンピユータ、2……レーザプリンタ 3……プリンタコントローラ 4……プリンタエンジン 10……マイクロコンピユータ(CPU) 11……ROM、12……RAM 12a……ビツトマツプメモリ

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】ベクトル情報をビツトマツプ情報に変換し
    てビツトマツプメモリに記録し、その結果を出力する画
    像形成装置において、 ベクトル情報より描画すべき直線を近似する全てのピク
    セル位置を計算して、その結果をビツトマツプメモリに
    書き込む第1の直線描画手段と、 ベクトル情報より走査方向に水平な方向(X方向)の増
    分(dX)と垂直な方向(Y方向)の増分(dY)とを比較
    し、その増分が小さい方の方向を基準にして、描画すべ
    き直線の始点から終点までその基準の方向へ1単位ずつ
    増加させながら該直線上のプロット点を順次求め、前記
    始点から次のプロット点との間の中点までと、前記始点
    および終点と各プロット点とのうち互いに隣接する点間
    の中点同士の間と、前記最終点とその直点のプロット点
    との間の中点から終点までとを、それぞれ近似する前記
    基準にしなかった方向の1つ以上の直線成分を構成する
    ピクセルを求めて、その結果をビツトマツプメモリに書
    き込む第2の直線描画手段と、 入力されたベクトル情報の直線の傾きにより、前記第1
    の直線描画手段もしくは第2の直線描画手段を選択する
    描画選択手段とを設けたことを特徴とする画像形成装
    置。
  2. 【請求項2】前記描画選択手段が、ベクトル情報の直線
    の傾きの絶対値が2以上あるいは0.5以下の場合には前
    記第2の直線描画手段を選択し、それ以外の場合には前
    記第1の直線描画手段を選択するようにしたことを特徴
    とする請求項1記載の画像形成装置。
JP20012990A 1990-07-27 1990-07-27 画像形成装置 Expired - Lifetime JP2986182B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20012990A JP2986182B2 (ja) 1990-07-27 1990-07-27 画像形成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20012990A JP2986182B2 (ja) 1990-07-27 1990-07-27 画像形成装置

Publications (2)

Publication Number Publication Date
JPH0484375A JPH0484375A (ja) 1992-03-17
JP2986182B2 true JP2986182B2 (ja) 1999-12-06

Family

ID=16419293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20012990A Expired - Lifetime JP2986182B2 (ja) 1990-07-27 1990-07-27 画像形成装置

Country Status (1)

Country Link
JP (1) JP2986182B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100435258B1 (ko) * 1997-09-03 2004-07-16 삼성전자주식회사 컴퓨터 그래픽의 3차원 직선 그리는 방법

Also Published As

Publication number Publication date
JPH0484375A (ja) 1992-03-17

Similar Documents

Publication Publication Date Title
JP3092711B2 (ja) 出力制御装置及び方法
JP3492068B2 (ja) 印刷制御方法及びその装置
US6591020B1 (en) Antialiazed high-resolution frame buffer architecture
JP2610993B2 (ja) 情報処理装置及び方法
EP0575134B1 (en) Method and apparatus for printing according to a graphic language
EP0452131A2 (en) Output method and apparatus
JP2986182B2 (ja) 画像形成装置
KR970069378A (ko) 프린터내의 메모리 적응 할당 방법 및 시스템
JPH09149221A (ja) 画像出力方法及び装置
EP0886243A2 (en) Printer with procedure for pattern tiling and scaling
EP0440359A2 (en) Output apparatus
US5758044A (en) Method and apparatus for rendering using a band by band depth adjustment
JP3450961B2 (ja) 印刷装置及びその制御方法
JPH09314915A (ja) 印刷制御装置と印刷装置の制御方法、印刷システム、並びに記憶媒体
US6014149A (en) Character pattern generator
JP4325339B2 (ja) 印刷システム、ホストコンピュータ及びプリンタドライバ
JP4419524B2 (ja) 画像処理装置およびプログラム
JP3209359B2 (ja) 画像出力装置
JP2002144646A (ja) プリンタシステムにおけるメモリ管理方法及び装置
JP3220437B2 (ja) 出力制御装置及び方法
JPH09327947A (ja) 画像出力装置及びその方法
JPH0686057A (ja) 文書画像形成装置
JPH11110150A (ja) 画像処理システム及び画像処理方法並びに画像処理制御プログラムが記録されたコンピュータ読み取り可能な記録媒体
JP2004009416A (ja) レーザビーム方式の出力装置及び出力方法
JPH10207650A (ja) プリンタ制御装置

Legal Events

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

Free format text: PAYMENT UNTIL: 20081001

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081001

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20091001

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20101001

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101001

Year of fee payment: 11