JP4032525B2 - Drawing processing system, drawing processing apparatus, and drawing processing method - Google Patents

Drawing processing system, drawing processing apparatus, and drawing processing method Download PDF

Info

Publication number
JP4032525B2
JP4032525B2 JP26440398A JP26440398A JP4032525B2 JP 4032525 B2 JP4032525 B2 JP 4032525B2 JP 26440398 A JP26440398 A JP 26440398A JP 26440398 A JP26440398 A JP 26440398A JP 4032525 B2 JP4032525 B2 JP 4032525B2
Authority
JP
Japan
Prior art keywords
processing
drawing processing
area
elements
drawing element
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
JP26440398A
Other languages
Japanese (ja)
Other versions
JP2000094779A (en
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP26440398A priority Critical patent/JP4032525B2/en
Publication of JP2000094779A publication Critical patent/JP2000094779A/en
Application granted granted Critical
Publication of JP4032525B2 publication Critical patent/JP4032525B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は描画処理システム、描画処理装置及び描画処理方法に関し、特に文字または図形の描画オブジェクトを入力として描画処理を行う描画処理システム、少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理装置及び少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理方法に関する。
【0002】
【従来の技術】
現在、ページプリンタでは文書を印刷する場合には、PostScript(米国アドビ・システムズ社の商標)などのPDL(ページ記述言語)を入力として印刷イメージを指示している。
【0003】
このようなPDLを入力として印刷を実行する際には、PDL形式のデータからラスタ出力デバイスに適した形式のデータに変換するイメージング処理を行わなければならない。ところが一般にイメージング処理にかかる時間は非常に長く、このことは特に高速のページプリンタに出力するシステムなどでは問題となっている。
【0004】
例えば、カラーの高速ページプリンタは毎分40枚以上の出力能力を持つものがあるにもかかわらず、イメージング処理にかかる時間は、十数秒から数分かかってしまい、高価な高速ページプリンタの能力を十分に生かせなかった。したがって、イメージング処理を高速に行うためには、並列描画処理を行う必要がある。
【0005】
並列描画処理の技術としては、特開平4−170686号公報では、描画領域を矩形上に分割し、それぞれの領域内の塗りつぶし領域に対し、並列処理を行っている。
【0006】
また、特開平6−28126号公報では、描画領域をバンド上に分割し、複数のコンピュータや複数のプリンタ装置により並列描画処理を行っている。
これらの技術はいずれもPDLを解釈してから後の描画処理の並列処理に関するものであり、描画処理部だけを並列処理により高速化しても、PDLを解釈して内部表現に変換する処理がボトルネックとなってしまっていた。
【0007】
この問題に対し、印刷を指示するホストコンピュータ側との処理の分担を行うもの、例えば特開平10−40031号公報では、ホストコンピュータのプリンタドライバ内で、従来プリンタ内部で行われていた中間コードの生成処理を分担させている。
【0008】
【発明が解決しようとする課題】
しかし、上記のようにして処理を分担させても、並列描画処理を行う場合の前処理がオーバヘッドかつボトルネックとして残ってしまう。
【0009】
また、上記で説明した描画領域を分割して並列描画を行う場合には、分割した各領域について並列に描画する前に、前もって各領域毎に描画オブジェクトのデータを整理し直す必要があった。
【0010】
つまり、これらの技術では各描画オブジェクトがそれぞれどの分割された領域に属するかをチェックし、さらに複数の領域に入る場合にはデータのコピーや分割などを施して、各分割された領域毎に独立に描画処理を行えるように準備するという処理を描画処理に先だって行う必要があった。
【0011】
特に領域を細かく分割したり、領域毎の負荷を予測したりして並列処理を行う装置の負荷をバランスさせる場合には、上記の前処理の時間が大きくなる。
すなわち、領域を細かく分割した場合には描画オブジェクトに対して分割処理を行う確率が増えることにより処理時間が大きくなる。
【0012】
一方、領域の大きさや形状が均一でなくなると個々の描画オブジェクトがどの分割された領域に属するかを調べる処理が単純な算術演算ではなく、より処理負荷が重い探索問題になってしまう。
【0013】
このため上記の従来技術では、前処理自体のオーバヘッドと、前処理の負荷が大きくなりすぎないようにするために処理負荷をバランスさせることができないことによる損失と、から十分に並列化の効果を得ることができなかった。
【0014】
これに対し、分割された領域毎の描画オブジェクトデータを前もって用意せずに、領域を割り当てられた描画処理部それぞれがすべての描画オブジェクトデータを読み込んでそれぞれで取捨選択するという方式も考えられる。
【0015】
この方式ではデータの転送量が多くなることと、それぞれの描画処理部がすべてのデータについてデータの要不要のチェックを行う必要がある。このためオーバヘッドが大きくなってしまい、やはり並列処理の効果を十分に得ることができなかった。
【0016】
本発明はこのような点に鑑みてなされたものであり、前もって領域毎のデータを用意する処理をなくし、かつ複数の描画処理部に対するデータ転送及び不要なデータに関する処理のオーバヘッドを削減し、高速な並列描画処理を行う描画処理システムを提供することを目的とする。
【0017】
また、本発明の他の目的は、前もって領域毎のデータを用意する処理をなくし、かつ複数の描画処理部に対するデータ転送及び不要なデータに関する処理のオーバヘッドを削減し、高速な並列描画処理を行う描画処理装置及び描画処理方法を提供することである。
【0018】
【課題を解決するための手段】
本発明では上記課題を解決するために、少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理システムにおいて、前記描画オブジェクトを複数の高さで分割することにより構成する描画要素エレメントのリストを生成するリスト生成手段を有する端末装置と、前記リストを構成する前記描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、前記描画要素エレメントを分類する描画要素エレメント分類手段と、分類された前記描画要素エレメントを前記基準値に対応させて格納する描画要素エレメント格納手段と、前記描画要素エレメントの並列描画処理を行う複数の描画処理手段と、描画領域を分割して前記描画処理手段に割り当てる描画領域割当て手段と、前記描画領域の描画処理に必要な前記描画要素エレメントを前記描画要素エレメント格納手段から前記基準値に対応させて、前記描画処理手段に転送する描画要素エレメント転送制御手段と、前記描画処理手段で描画処理した処理結果を合成して出力する合成出力手段と、から構成される描画処理装置と、を有することを特徴とする描画処理システムが提供される。
【0019】
ここで、リスト生成手段は、描画オブジェクトを複数の高さで分割することにより構成する描画要素エレメントのリストを生成する。描画要素エレメント分類手段は、リストを構成する描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、描画要素エレメントを分類する。描画要素エレメント格納手段は、分類された描画要素エレメントを基準値に対応させて格納する。複数の描画処理手段は、描画要素エレメントの並列描画処理を行う。描画領域割当て手段は、描画領域を分割して描画処理手段に割り当てる。描画要素エレメント転送制御手段は、描画領域の描画処理に必要な描画要素エレメントを描画要素エレメント格納手段から基準値に対応させて、描画処理手段に転送する。合成出力手段は、描画処理手段で描画処理した処理結果を合成して出力する。
【0020】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。図1は第1の実施の形態の描画処理システムの原理図である。描画処理システム1は、ホストコンピュータに該当する端末装置20と描画処理装置10から構成され、少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う。また、端末装置20と描画処理装置10は、ネットワーク30に接続する。
【0021】
端末装置20は、デバイスドライバとして、プリンタ(図示せず)の制御を行うプリンタドライバPDを有し、プリンタドライバPDはリスト生成手段11を含む。
【0022】
リスト生成手段11は、端末装置20内のAPI(Application Programming Interface)を通じて入力された描画オブジェクトに対し、描画オブジェクトを構成する描画要素エレメントのリストを生成する。
【0023】
ここで描画オブジェクトとは、PDLなどの描画データを解釈・展開して生成される中間イメージデータのことである。また、描画要素エレメントとは、描画オブジェクトを構成するエッジデータやベクタデータ及び文字や図形などの塗りつぶし領域などの描画要素のことである。
【0024】
描画要素エレメント分類手段12は、リストを構成する描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、描画要素エレメントを分類する。長さ情報については後述する。描画要素エレメント格納手段13は、分類された描画要素エレメントを基準値に対応させて格納する。
【0025】
描画処理手段14a〜14nは、描画要素エレメントの並列描画処理を行う。描画領域割当て手段15は、描画領域を分割して描画処理手段14a〜14nに割り当てる。
【0026】
描画要素エレメント転送制御手段16は、描画領域の描画処理に必要な描画要素エレメントを描画要素エレメント格納手段13から基準値に対応させて、描画処理手段14a〜14nに転送する。
【0027】
合成出力手段17は、描画処理手段14a〜14nで描画処理した処理結果を合成してプリンタなどの出力装置から出力する。
また、描画処理装置10はネットワークインタフェースI/F1を、端末装置20はネットワークインタフェースI/F2を含み、ネットワーク30を介しての通信時には、これらネットワークインタフェースI/Fがインタフェース処理を行う。
【0028】
なお、上記の説明では、ネットワーク30を介して、端末装置20と描画処理装置10が通信を行う構成としたが、ネットワーク30を介さず、双方をケーブル接続して通信を行っても構わない。
【0029】
次に具体的な描画サンプルを用いて動作を詳しく説明する。図2は描画サンプル40を示す図である。描画サンプル40は描画オブジェクトである2つの楕円41、42と、1つの台形図形43と、からなる。以降の説明においては、図に示した描画サンプル40が描画処理システム1に対して入力されるものとする。
【0030】
なお、それぞれの楕円41、42と台形図形43は、それぞれ異なる色やハッチパターンで塗りつぶされることや、重ね塗りの順序も指定されているものとするが、これらの処理は本発明と関係が薄いため説明は省略する。
【0031】
次に描画要素エレメントについて説明する。図3は描画要素エレメントの概念図である。リスト生成手段11は、楕円41を描画要素エレメント41a〜41gとし、楕円42を描画要素エレメント42a〜42gとし、台形図形43を標準描画要素エレメント43として、リストを生成する。
【0032】
次に長さ情報について説明する。図4は長さ情報を示す概念図である。XY座標軸を図に示したようにとり、主走査方向をX軸方向とし、副走査方向をY軸方向とする。
【0033】
また、水平方向に描画領域を分割した場合に、描画領域間の境界線に対し、この境界線と直交する垂直線の高さを長さ情報とする。
例えば、このような座標系に対し、描画要素エレメント41aの長さ情報は、2番目の走査線から描画領域がはじまり、副走査線方向の高さは走査線1本分である( 位置2、高さ1)。また、描画要素データ41cは4番目の走査線から描画領域が始まり、副走査線方向の高さが2となる(位置4、高さ2)。このようにして各描画要素エレメントの位置、高さを長さ情報とする。
【0034】
なお、垂直方向に描画領域を割り当てれば、描画領域間の境界線に対し、境界線と直交する垂直線の幅が長さ情報となるが、以降、長さ情報は各描画要素エレメントの位置、高さとして説明する。
【0035】
次に描画領域割当て手段15について説明する。図5は描画領域を示す図である。描画領域割当て手段15は、X軸に対し平行に描画領域を複数個分割する。
そして、走査線3本ずつの分割描画領域を描画処理手段14a〜14nにそれぞれ割り当てるものとする。例えば、分割描画領域Aを描画処理手段14a、分割描画領域Bを描画処理手段14b、分割描画領域Cを描画処理手段14c、…というように割り当てる。
【0036】
次に描画要素エレメント分類手段12について説明する。図6は描画要素エレメント分類結果を示す図である。描画要素エレメント分類手段12は、リストを構成する描画要素エレメントの長さ情報に対し一定の基準値を用いて、描画要素エレメントを分類する。
【0037】
例えば、描画要素エレメント41aは副走査線方向の位置が2で副走査線方向の高さが1として分類され、描画要素エレメント41cは副走査線方向の位置が4で副走査線方向の高さが2として分類される。このように高さ1、高さ2、それ以外の描画要素エレメント、というような基準値で分類を行っている。
【0038】
次に描画要素エレメント格納手段13について説明する。図7は分類された描画要素エレメントを格納した状態の概念図である。高さ1、あるいは高さ2の分類に入らない描画要素エレメント(以降、標準描画要素エレメントと呼ぶ。)が標準描画要素エレメント格納部13aに、高さ1の描画要素エレメントが高さ1描画要素エレメント格納部13bに、高さ2の描画要素エレメントが高さ2描画要素エレメント格納部13cに、それぞれ分類されて格納される。
【0039】
次に描画処理手段の描画領域割当てについて説明する。ただし、簡単のため描画処理手段14a〜14cの3つからなるシステムについて説明する。描画処理の開始が告げられると、各描画処理手段14a〜14cは同時、あるいは順序づけられて最初の処理の担当部分を描画領域割当て手段15に問い合わせる。
【0040】
描画領域割当て手段15は処理の単位を割り当てる操作を排他的に行い、要求の順に割り当てる。
ここでは、描画処理の開始時の最初の処理の割り当てであるため、各々の描画処理手段14a〜14cがほぼ同時に担当処理を要求することになり、図5で説明したように分割描画領域A、B、C…が、それぞれ描画処理手段14a〜14cに割り当てられるものとする。
【0041】
次に描画処理手段14aについて説明する。図8は描画処理手段14aが分割描画領域Aを処理する際の描画要素エレメントの読み込みを示す概念図である。なお、図の斜線部分が分割描画領域Aである。
【0042】
描画処理手段14aは標準描画要素エレメント格納部13aから走査線1の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線1で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線1で高さ2の描画要素エレメントを読み込む。
【0043】
そして、標準描画要素エレメント格納部13aから走査線2の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線2で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線2で高さ2の描画要素エレメントを読み込む。
【0044】
さらに、標準描画要素エレメント格納部13aから走査線3の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線3で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線3で高さ2の描画要素エレメントを読み込む。
【0045】
このような読み込み結果として、標準描画要素エレメント43、描画要素エレメント41a、41bが描画要素エレメント格納手段13から読み出されて描画処理が行われる。
【0046】
次に描画処理手段14bについて説明する。図9は描画処理手段14bが分割描画領域Bを処理する際の描画要素エレメントの読み込みを示す概念図である。なお、図の斜線部分が分割描画領域Bである。
【0047】
描画処理手段14bは、最初は標準描画要素エレメント格納部13aから描画要素エレメントを読み込む。まず、走査線の1番目から順にデータを読み込む。このとき、標準描画要素エレメントが分割描画領域Bに交わるかどうかのチェックを行い、分割描画領域Bに交わる描画要素エレメントだけを読み込む。
【0048】
すなわち、走査線位置1から分割描画領域Bの走査線位置の一番小さい位置4よりも1小さい位置である走査線位置3までについて順に上記のチェックを行いながら標準描画要素エレメントを読み込む。この場合は、走査線位置2に標準描画要素エレメント43があり、かつ分割描画領域Bと交わるので、標準描画要素エレメント43が読み込まれることになる。
【0049】
描画処理手段14bは、次に高さ2描画要素エレメント格納部13cから描画要素エレメントを読み込む。この場合、分割描画領域Bの走査線位置の一番小さい位置4よりも1(高さの値2から1単位小さい値)小さい位置、すなわち、走査線位置3で分類が高さ2となっている描画要素エレメントを読み込む。図では、該当する描画要素エレメントは存在しないので読み込まない。
【0050】
このような処理を行った後、描画処理手段14bは標準描画要素エレメント格納部13aから走査線4の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線4で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線4で高さ2の描画要素エレメントを読み込む。
【0051】
そして、標準描画要素エレメント格納部13aから走査線5の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線5で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線5で高さ2の描画要素エレメントを読み込む。
【0052】
さらに、標準描画要素エレメント格納部13aから走査線6の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線6で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線6で高さ2の描画要素エレメントを読み込む。
【0053】
このような読み込み結果として、標準描画要素エレメント43、描画要素エレメント41d、41cが描画要素エレメント格納手段13から読み出されて描画処理が行われる。
【0054】
以上説明したように、描画処理手段14bは、分割描画領域Bの描画処理に必要な描画要素エレメントはすべて読み込んでおり、それ以外の描画要素エレメントの読み込みや、その他のチェック処理などを行う必要がないため、オーバヘッドを大幅に削減することが可能になる。
【0055】
次に描画処理手段14cについて説明する。図10は描画処理手段14cが分割描画領域Cを処理する際の描画要素エレメントの読み込みを示す概念図である。なお、図の斜線部分が分割描画領域Cである。ここでの処理は描画処理手段14cが分割描画領域Bの処理を行った場合と基本的に同等である。
【0056】
描画処理手段14cは、最初は標準描画要素エレメント格納部13aから描画要素エレメントを読み込む。まず、走査線の1番目から順にデータを読み込む。このとき、標準描画要素エレメントが分割描画領域C内に入るかどうかのチェックを行い、分割描画領域Cに入る描画要素エレメントだけを読み込む。
【0057】
すなわち、走査線位置1から分割描画領域Cの走査線位置の一番小さい位置7よりも1小さい位置である走査線位置6までについて順に上記のチェックを行いながら標準描画要素エレメントを読み込む。この場合は、走査線位置2に標準描画要素エレメント43があり、かつ分割描画領域Cに含まれるので、結局標準描画要素エレメント43が読み込まれることになる。
【0058】
描画処理手段14cは、次に高さ2描画要素エレメント格納部13cから描画要素エレメントを読み込む。この場合、分割描画領域Cの走査線位置の一番小さい位置7よりも1(高さの値2から1単位小さい値)小さい位置、すなわち、走査線位置6で高さ2となっている描画要素エレメントを読み込む。図の例では、該当する描画要素エレメントは存在しないので読み込まない。
【0059】
このような処理を行った後、描画処理手段14cは標準描画要素エレメント格納部13aから走査線7の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線7で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線7で高さ2の描画要素エレメントを読み込む。
【0060】
そして、標準描画要素エレメント格納部13aから走査線8の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線8で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線8で高さ2の描画要素エレメントを読み込む。
【0061】
さらに、標準描画要素エレメント格納部13aから走査線9の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線9で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線9で高さ2の描画要素エレメントを読み込む。
【0062】
このような読み込み結果として、標準描画要素エレメント43、描画要素エレメント42a、41f、42b、41e、42cが描画要素エレメント格納手段13から読み出されて描画処理が行われる。
【0063】
以上説明したように、描画処理手段14cは、分割描画領域Cの描画処理に必要な描画要素エレメントはすべて読み込んでおり、それ以外の描画要素エレメントの読み込みや、その他のチェック処理などを行う必要がないため、オーバヘッドを大幅に削減することが可能になる。
【0064】
次に描画処理手段14aが行っていた分割描画領域Aの処理が最初に終了したと仮定して、分割描画領域Dが描画処理手段14aに割り当てられた場合の処理について説明を行う。図11は描画処理手段14aが分割描画領域Dを処理する際の描画要素エレメントの読み込みを示す概念図である。なお、図の斜線部分が分割描画領域Dである。
【0065】
描画処理手段14aは、処理の終了した分割描画領域Aの処理の終了位置、ここでは走査線位置3の位置情報を保存する。そして、描画領域割当て手段15に問い合わせを行う。
【0066】
その後、描画領域割当て手段15は、次に処理すべき分割描画領域Dをその描画領域の両端の走査線位置情報10、12を用いて、描画処理手段14aに対して通知する。
【0067】
分割描画領域Aの処理の際に読み込まれた描画要素エレメントの内で、分割描画領域Dにある描画要素エレメントは標準描画要素エレメント43だけであるので、この標準描画要素エレメント43は保持される。そして、他の描画要素エレメント41a、41bは分割描画領域Dにはないので、描画処理が行われる以前に破棄される。
【0068】
次に、標準描画要素エレメント格納部13a内で、前回の処理の終了位置である走査線位置3の次の位置から分割描画領域Dの走査線位置の一番小さい位置10よりも1小さい位置まで、すなわち走査線位置4から走査線位置9までに登録されている標準描画要素エレメントを読み込むが、ここでは新たな描画要素エレメントは存在しない。
【0069】
次に高さ2描画要素エレメント格納部13cから描画要素エレメントを読み込む。この場合、分割描画領域Dの走査線位置の一番小さい位置10よりも1(高さの値2から1単位小さい値)小さい位置、すなわち、走査線位置9で高さ2の描画要素エレメントを読み込む。図の例では、該当する描画要素エレメントは存在しないので読み込まない。
【0070】
そして、標準描画要素エレメント格納部13aから走査線10の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線10で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線10で高さ2の描画要素エレメントを読み込む。
【0071】
そして、標準描画要素エレメント格納部13aから走査線11の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線11で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線11で高さ2の描画要素エレメントを読み込む。
【0072】
さらに、標準描画要素エレメント格納部13aから走査線12の標準描画要素エレメント、高さ1描画要素エレメント格納部13bから走査線12で高さ1の描画要素エレメント、高さ2描画要素エレメント格納部13cから走査線12で高さ2の描画要素エレメントを読み込む。
【0073】
このような読み込み結果として、描画要素エレメント41g、42d、42c、42eが描画要素エレメント格納手段13から読み出されて描画処理が行われる。
【0074】
以上説明したように、描画処理手段14aは、分割描画領域Dの描画処理に必要な描画要素エレメントはすべて読み込んでおり、それ以外の描画要素エレメントの読み込みや、その他のチェック処理などを行う必要がないため、オーバヘッドを大幅に削減することが可能になる。
【0075】
次に合成出力結果について説明する。図12は合成出力結果を示す図である。描画処理手段14a〜14cにより描画サンプル40は描画されて、図のような合成出力結果17aが生成される。
【0076】
以上説明したように、第1の実施の形態の描画処理システム1は、プリンタドライバPDを有する端末装置20と、描画処理装置10とから構成され、端末装置20内で描画要素エレメントのリストを生成し、描画処理装置10で分類された基準値にもとづいて、描画要素エレメントの並列描画処理を行う構成とした。
【0077】
これにより、分割描画領域毎のデータを用意するための前処理がなくなり、かつ担当する描画領域以外に属する不要なデータに関する処理も減らすことができるのでオーバヘッドを大幅に削減し、高速描画処理が可能になる。
【0078】
また、端末装置20と描画処理装置10の機能を1台の専用機に持たせるのではなく、リスト生成手段11を端末装置20のプリンタドライバPD内に持たせるように分離する構成とした。
【0079】
これにより、端末装置20が高速な装置の場合は、全体の描画処理速度をさらに向上させることが可能になる。また、APIからプリンタドライバPDへ送信されるほとんど似たような形状を持つデータに関しては、PDLなどに一旦解凍してリストを生成せずに、プリンタドライバPDで受信した時点でリストにして転送できるので、描画処理速度の向上を図ることが可能になる。
【0080】
次に第2の実施の形態の描画処理システムについて説明する。第2の実施の形態は、プリンタドライバPD内にリスト生成手段11と描画要素エレメント分類手段12が含まれる構成をとる。
【0081】
図13は第2の実施の形態の構成を示す図である。描画処理システム1aは、端末装置20aと描画処理装置10aから構成され、それぞれネットワーク30に接続する。
【0082】
端末装置20aは、プリンタドライバPD内にリスト生成手段11と描画要素エレメント分類手段12を含む。なお、その他の構成は上述したので説明は省略する。
【0083】
このように、第2の実施の形態の描画処理システム1aは、描画要素エレメント分類手段12もさらにプリンタドライバPD内に含める構成した。
これにより、端末装置20aでリスト生成及び分類までの処理を担当させることにより、端末装置20aが高速な装置の場合には、全体の描画処理速度をさらに向上させることが可能になる。
【0084】
次に第3の実施の形態の描画処理システムについて説明する。第3の実施の態は、プリンタドライバPD内にリスト生成手段11と描画要素エレメント分類手段12と描画要素エレメント格納手段13が含まれる構成をとる。
【0085】
図14は第3の実施の形態の構成を示す図である。描画処理システム1bは、端末装置20bと描画処理装置10bから構成され、それぞれネットワーク30に接続する。
【0086】
端末装置20bは、プリンタドライバPD内にリスト生成手段11と描画要素エレメント分類手段12と描画要素エレメント格納手段13を含む。
また、描画処理装置10bには、描画要素エレメント一時格納手段18が設置される。描画要素エレメント一時格納手段18は、必要に応じて端末装置20b内の描画要素エレメント格納手段13から間接あるいは直接に描画要素エレメントを引き出して格納する。
【0087】
描画要素エレメント一時格納手段18は、分類に応じて、例えば、複数の描画領域の描画処理に対して参照されるような分類の場合に、一時的にデータの格納・保持を行う。なお、その他の構成は上述したので説明は省略する。
【0088】
このように、第3の実施の形態の描画処理システム1bは、描画要素エレメント格納手段13もさらにプリンタドライバPD内に含める構成とした。
これにより、端末装置20bから分類した結果を一度に送るのではなく、描画処理装置10bが必要な描画要素エレメントを取ってくることが可能になり、柔軟度の高い描画処理を行うことが可能になる。
【0089】
なお、上記で説明した第1〜第3の実施の形態のいずれに対しても、端末装置と描画処理装置のネットワーク30上での通信時には、転送するデータをコード化または圧縮して転送することができる。
【0090】
この場合、受信時にはデコード化及び伸張して、その後の必要な処理を行うことになる。
に描画処理方法について説明する。図15は描画処理方法の処理手順を示すフローチャートである。描画処理方法は、少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う。
〔S1〕描画オブジェクトを構成する描画要素エレメントのリストをプリンタドライバ内で生成し、ネットワーク上に送出する。
〔S2〕送出されたリストを受信し、リストを構成する描画要素エレメントの長さ情報に対し、一定の基準値を用いて、描画要素エレメントを分類する。
〔S3〕分類された描画要素エレメントを基準値に対応させて格納する。
〔S4〕描画領域を分割して描画処理の割り当てを行う。
〔S5〕格納された描画領域の描画処理に必要な描画要素エレメントを基準値に対応させて描画処理部へ転送する。
〔S6〕描画処理部は並列に描画要素エレメントの描画処理を行う。
〔S7〕描画処理された処理結果を合成して出力する。
【0091】
以上説明したように、描画処理方法は、描画要素エレメントのリストをプリンタドライバ内で生成し、分割描画領域を割り当てられた描画処理部が描画要素エレメントを分類した基準値を使用して、描画要素エレメントの並列描画処理を行う方法とした。
【0092】
これにより、分割描画領域毎のデータを用意するための前処理がなくなり、かつ担当する描画領域以外に属する不要なデータに関する処理も減らすことができるのでオーバヘッドを大幅に削減し、高速描画処理が可能になる。
【0093】
【発明の効果】
以上説明したように、本発明の描画処理システムは、端末装置と、描画処理装置とから構成され、端末装置内で描画要素エレメントのリストを生成し、描画処理装置内で描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて分類した後に、描画要素エレメントの並列描画処理を行う構成とした。これにより、分割描画領域毎のデータを用意するための前処理がなくなり、かつ担当する描画領域以外に属する不要なデータに関する処理も減らすことができるのでオーバヘッドを大幅に削減し、高速描画処理が可能になる。
【図面の簡単な説明】
【図1】1の実施の形態の描画処理システムの原理図である。
【図2】 描画サンプルを示す図である。
【図3】 描画要素エレメントの概念図である。
【図4】 長さ情報を示す概念図である。
【図5】 描画領域を示す図である。
【図6】 描画要素エレメント分類結果を示す図である。
【図7】 分類された描画要素エレメントを格納した状態の概念図である。
【図8】 描画処理手段が分割描画領域Aを処理する際の描画要素エレメントの読み込みを示す概念図である。
【図9】 描画処理手段が分割描画領域Bを処理する際の描画要素エレメントの読み込みを示す概念図である。
【図10】 描画処理手段が分割描画領域Cを処理する際の描画要素エレメントの読み込みを示す概念図である。
【図11】 描画処理手段が分割描画領域Dを処理する際の描画要素エレメントの読み込みを示す概念図である。
【図12】 合成出力結果を示す図である。
【図13】 第2の実施の形態の構成を示す図である。
【図14】 第3の実施の形態の構成を示す図である。
【図15】画処理方法の処理手順を示すフローチャートである。
【符号の説明】
1 描画処理システム
10 描画処理装置
11 リスト生成手段
12 描画要素エレメント分類手段
13 描画要素エレメント格納手段
14a、14n 描画処理手段
15 描画領域割当て手段
16 描画要素エレメント転送制御手段
17 合成出力手段
20 端末装置
30 ネットワーク
I/F1、I/F2 ネットワークインタフェース
PD プリンタドライバ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a drawing processing system. Drawing BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image processing apparatus and a drawing processing method, and in particular, a drawing processing system that performs drawing processing using a character or graphic drawing object as an input Small The present invention relates to a drawing processing apparatus that performs drawing processing using at least a character or graphic drawing object as an input and a drawing processing method that performs drawing processing using at least a character or graphic drawing object as input.
[0002]
[Prior art]
Currently, when printing a document, a page printer designates a print image by inputting PDL (page description language) such as PostScript (trademark of Adobe Systems Inc., USA).
[0003]
When printing is performed using such a PDL as an input, an imaging process for converting the data in the PDL format into data in a format suitable for the raster output device must be performed. However, in general, the time required for imaging processing is very long, and this is a problem particularly in a system that outputs to a high-speed page printer.
[0004]
For example, even though some color high-speed page printers have an output capacity of 40 sheets or more per minute, the time required for the imaging process can be from a few dozen seconds to several minutes. I couldn't use it enough. Therefore, in order to perform imaging processing at high speed, it is necessary to perform parallel drawing processing.
[0005]
As a technique of parallel drawing processing, in Japanese Patent Laid-Open No. 4-170686, a drawing area is divided into rectangles, and parallel processing is performed on a filled area in each area.
[0006]
In Japanese Patent Laid-Open No. 6-28126, a drawing area is divided into bands, and parallel drawing processing is performed by a plurality of computers and a plurality of printer apparatuses.
These technologies all relate to parallel processing of subsequent rendering processing after interpreting PDL. Even if only the rendering processing unit is accelerated by parallel processing, processing to interpret PDL and convert it into an internal representation is a bottle. It was a bottleneck.
[0007]
To deal with this problem, a process that shares the processing with the host computer that instructs printing, for example, in Japanese Patent Laid-Open No. 10-40031, an intermediate code that is conventionally performed inside a printer in a printer driver of the host computer. The generation process is shared.
[0008]
[Problems to be solved by the invention]
However, even if the processing is shared as described above, the preprocessing for performing the parallel drawing processing remains as an overhead and a bottleneck.
[0009]
Further, when performing parallel drawing by dividing the drawing area described above, it is necessary to rearrange the drawing object data for each area in advance before drawing the divided areas in parallel.
[0010]
In other words, these technologies check which divided area each drawing object belongs to, and if it enters more than one area, copy or divide the data so that each divided area is independent. It was necessary to prepare the drawing process before the drawing process.
[0011]
In particular, when the load of an apparatus that performs parallel processing is balanced by finely dividing a region or predicting the load for each region, the time for the above pre-processing is increased.
That is, when the area is divided finely, the processing time is increased by increasing the probability of performing the dividing process on the drawing object.
[0012]
On the other hand, if the size and shape of the area are not uniform, the process of checking which divided area each drawing object belongs to is not a simple arithmetic operation but a search problem with a heavy processing load.
[0013]
For this reason, in the above-described conventional technique, the effect of parallelization is sufficiently obtained from the overhead of the preprocessing itself and the loss due to the inability to balance the processing load in order to prevent the preprocessing load from becoming too large. Couldn't get.
[0014]
On the other hand, instead of preparing drawing object data for each divided area in advance, each drawing processing unit to which an area is assigned reads all drawing object data and selects them individually.
[0015]
In this method, the amount of data transferred increases, and each drawing processing unit needs to check whether data is necessary for all data. For this reason, the overhead increases, and the effect of parallel processing cannot be obtained sufficiently.
[0016]
The present invention has been made in view of such points, eliminates the process of preparing data for each area in advance, reduces the overhead of data transfer to a plurality of drawing processing units and processing related to unnecessary data, and achieves high speed. An object of the present invention is to provide a drawing processing system for performing parallel drawing processing.
[0017]
Another object of the present invention is to perform high-speed parallel drawing processing by eliminating processing for preparing data for each area in advance, reducing data transfer to a plurality of drawing processing units and processing overhead related to unnecessary data. Drawing processing apparatus and It is to provide a drawing processing method.
[0018]
[Means for Solving the Problems]
In the present invention, in order to solve the above problem, in a drawing processing system that performs drawing processing with at least a character or figure drawing object as an input, the drawing object is By dividing at multiple heights A terminal device having a list generation means for generating a list of drawing element elements to be configured, and a fixed reference value for length information which is a set of position and height information of the drawing element elements to constitute the list A drawing element element classifying unit for classifying the drawing element elements, a drawing element element storing unit for storing the classified drawing element elements in correspondence with the reference value, and a plurality of parallel drawing processes for the drawing element elements. The drawing processing means, the drawing area assigning means for dividing the drawing area and assigning the drawing area to the drawing processing means, and the drawing element elements necessary for the drawing processing of the drawing area corresponding to the reference value from the drawing element element storing means The drawing element element transfer control means for transferring to the drawing processing means and the drawing processing means for drawing. Drawing processing system comprising: the composite output means for outputting a physical processing result combining to and configured drawing processor from a is provided.
[0019]
Here, the list generation means selects the drawing object. By dividing at multiple heights Generate a list of drawing element elements to compose. The drawing element element classifying unit classifies the drawing element elements by using a certain reference value for the length information that is a set of the position and height information of the drawing element elements constituting the list. The drawing element element storage means stores the classified drawing element elements in correspondence with the reference values. The plurality of drawing processing means perform parallel drawing processing of drawing element elements. The drawing area assigning means divides the drawing area and assigns it to the drawing processing means. The drawing element element transfer control means transfers drawing element elements necessary for drawing processing of the drawing area from the drawing element element storage means to the drawing processing means in association with the reference value. The combined output means combines and outputs the processing results drawn by the drawing processing means.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. Is the first 1 is a principle diagram of a drawing processing system according to an embodiment. The drawing processing system 1 includes a terminal device 20 corresponding to a host computer and a drawing processing device 10, and performs drawing processing using at least a character or graphic drawing object as an input. In addition, the terminal device 20 and the drawing processing device 10 are connected to the network 30.
[0021]
The terminal device 20 includes a printer driver PD that controls a printer (not shown) as a device driver. The printer driver PD includes a list generation unit 11.
[0022]
The list generation unit 11 generates a list of drawing element elements constituting the drawing object for the drawing object input through an API (Application Programming Interface) in the terminal device 20.
[0023]
Here, the drawing object is intermediate image data generated by interpreting and expanding drawing data such as PDL. Further, the drawing element element is a drawing element such as edge data, vector data, and a paint area such as a character or a figure constituting a drawing object.
[0024]
The drawing element element classification unit 12 includes drawing element elements constituting the list. A set of position and height information The drawing element elements are classified using a certain reference value for the length information. The length information will be described later. The drawing element element storage means 13 stores the classified drawing element elements in association with the reference values.
[0025]
The drawing processing units 14a to 14n perform parallel drawing processing of drawing element elements. The drawing area assigning means 15 divides the drawing area and assigns it to the drawing processing means 14a to 14n.
[0026]
The drawing element element transfer control means 16 transfers drawing element elements necessary for drawing processing of the drawing area from the drawing element element storage means 13 to the drawing processing means 14a to 14n in correspondence with the reference value.
[0027]
The synthesis output unit 17 synthesizes the processing results drawn by the drawing processing units 14a to 14n and outputs them from an output device such as a printer.
The drawing processing apparatus 10 includes a network interface I / F 1, and the terminal apparatus 20 includes a network interface I / F 2. When communicating via the network 30, these network interface I / Fs perform interface processing.
[0028]
In the above description, the terminal device 20 and the drawing processing device 10 communicate with each other via the network 30. However, the communication may be performed by connecting both the cables without using the network 30.
[0029]
Next, using a specific drawing sample Move Explain the work in detail. FIG. 2 is a diagram showing a drawing sample 40. The drawing sample 40 includes two ellipses 41 and 42 which are drawing objects, and one trapezoid figure 43. In the following description, the drawing sample 40 shown in the figure. Drawn Assume that the input is made to the image processing system 1.
[0030]
Each of the ellipses 41 and 42 and the trapezoidal figure 43 are painted with different colors and hatch patterns, and the order of overcoating is specified, but these processes are not related to the present invention. Therefore, explanation is omitted.
[0031]
Next, the drawing element element will be described. FIG. 3 is a conceptual diagram of the drawing element element. The list generation means 11 uses the ellipse 41 as the drawing element elements 41a to 41g, the ellipse 42 as the drawing element elements 42a to 42g, and the trapezoidal figure 43. standard A list is generated as the drawing element element 43.
[0032]
Next, length information will be described. FIG. 4 is a conceptual diagram showing length information. The XY coordinate axes are taken as shown in the figure, the main scanning direction is the X-axis direction, and the sub-scanning direction is the Y-axis direction.
[0033]
When the drawing area is divided in the horizontal direction, the height of the vertical line perpendicular to the boundary line is used as the length information for the boundary line between the drawing areas.
For example, with respect to such a coordinate system, the length information of the drawing element element 41a starts from the second scanning line, and the height in the sub-scanning line direction is one scanning line (position 2, Height 1). In the drawing element data 41c, the drawing area starts from the fourth scanning line, and the height in the sub-scanning line direction is 2 (position 4, height 2). In this way, the position and height of each drawing element element are used as length information.
[0034]
If a drawing area is assigned in the vertical direction, the width of the vertical line perpendicular to the boundary line becomes the length information with respect to the boundary line between the drawing areas. However, the length information is the position of each drawing element element thereafter. , Will be described as height.
[0035]
Next, the drawing area assigning means 15 will be described. FIG. 5 shows a drawing area. The drawing area assigning means 15 divides a plurality of drawing areas in parallel to the X axis.
Then, it is assumed that divided drawing areas each having three scanning lines are assigned to the drawing processing units 14a to 14n, respectively. For example, the divided drawing area A is assigned as the drawing processing means 14a, the divided drawing area B is assigned as the drawing processing means 14b, the divided drawing area C is assigned as the drawing processing means 14c, and so on.
[0036]
Next, the drawing element element classification unit 12 will be described. FIG. 6 is a diagram showing a drawing element element classification result. The drawing element element classification unit 12 classifies the drawing element elements by using a certain reference value for the length information of the drawing element elements constituting the list.
[0037]
For example, the drawing element element 41a is classified as having a position in the sub scanning line direction of 2 and a height of 1 in the sub scanning line direction, and the drawing element element 41c has a position of 4 in the sub scanning line direction and having a height in the sub scanning line direction. Is classified as 2. In this way, classification is performed based on reference values such as height 1, height 2, and other drawing element elements.
[0038]
Next, the drawing element element storage means 13 will be described. FIG. 7 is a conceptual diagram showing a state in which classified drawing element elements are stored. A drawing element element (hereinafter referred to as a standard drawing element element) that does not fall within the category of height 1 or height 2 is referred to as a standard drawing element element storage unit 13a, and a drawing element element having a height 1 is a height 1 drawing element. The height 2 drawing element elements are classified and stored in the height 2 drawing element element storage unit 13c in the element storage unit 13b.
[0039]
Next, the drawing area allocation of the drawing processing means will be described. However, for the sake of simplicity, a system composed of three drawing processing units 14a to 14c will be described. When the start of the drawing process is notified, each of the drawing processing units 14a to 14c inquires of the drawing area allocating unit 15 about the part in charge of the first process simultaneously or in order.
[0040]
The drawing area allocating unit 15 exclusively performs an operation of allocating processing units and allocates them in order of request.
Here, since the first process is assigned at the start of the drawing process, each of the drawing processing units 14a to 14c requests the assigned process almost simultaneously. As described with reference to FIG. B, C... Are assigned to the drawing processing units 14a to 14c, respectively.
[0041]
Next, the drawing processing unit 14a will be described. FIG. 8 is a conceptual diagram showing reading of drawing element elements when the drawing processing means 14a processes the divided drawing area A. The hatched portion in the figure is the divided drawing area A.
[0042]
The drawing processing unit 14a includes a standard drawing element element for the scanning line 1 from the standard drawing element element storage unit 13a, a drawing element element for the height 1 at scanning line 1 from the height 1 drawing element element storage unit 13b, and a height 2 drawing element element. A drawing element element having a height of 2 is read by the scanning line 1 from the storage unit 13c.
[0043]
Then, the standard drawing element element storage unit 13a to the scanning line 2 standard drawing element element, the height 1 drawing element element storage unit 13b to the scanning line 2 height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read by scanning line 2.
[0044]
Further, the standard drawing element element storage unit 13a to the scanning line 3 standard drawing element element, the height 1 drawing element element storage unit 13b to the scanning line 3 height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read by scanning line 3.
[0045]
As a result of such reading, the standard drawing element element 43 and the drawing element elements 41a and 41b are read from the drawing element element storage means 13 and a drawing process is performed.
[0046]
Next, the drawing processing unit 14b will be described. FIG. 9 is a conceptual diagram showing reading of drawing element elements when the drawing processing means 14b processes the divided drawing area B. FIG. The hatched portion in the figure is the divided drawing area B.
[0047]
The drawing processing means 14b first reads drawing element elements from the standard drawing element element storage unit 13a. First, data is read in order from the first scanning line. At this time, it is checked whether or not the standard drawing element element intersects the divided drawing area B, and only the drawing element element that intersects the divided drawing area B is read.
[0048]
That is, the standard drawing element elements are read while performing the above-described check in order from the scanning line position 1 to the scanning line position 3 which is one position smaller than the smallest scanning line position 4 of the divided drawing area B. In this case, since the standard drawing element element 43 is present at the scanning line position 2 and intersects with the divided drawing area B, the standard drawing element element 43 is read.
[0049]
Next, the drawing processing unit 14b reads the drawing element element from the height 2 drawing element element storage unit 13c. In this case, the classification becomes height 2 at a position smaller than the smallest position 4 of the scanning line position of the divided drawing region B by 1 (a value smaller than the height value 2 by 1 unit), that is, at the scanning line position 3. Read the drawing element element. In the figure, since the corresponding drawing element element does not exist, it is not read.
[0050]
After performing such processing, the drawing processing unit 14b draws a standard drawing element element of the scanning line 4 from the standard drawing element element storage unit 13a, and draws a height of 1 from the standard drawing element element storage unit 13b by the scanning line 4. Element element, height 2 A drawing element element having a height of 2 is read by the scanning line 4 from the drawing element element storage unit 13c.
[0051]
Then, the standard drawing element element storage unit 13a to the scanning line 5 standard drawing element element, the height 1 drawing element element storage unit 13b to the scanning line 5 height 1 drawing element element, and the height 2 drawing element element storage unit 13c. Then, a drawing element element having a height of 2 is read by the scanning line 5.
[0052]
Further, from the standard drawing element element storage unit 13a to the standard drawing element element of the scanning line 6, the height 1 drawing element element storage unit 13b to the scanning line 6 and the height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read by scanning line 6.
[0053]
As a result of such reading, the standard drawing element element 43 and the drawing element elements 41d and 41c are read from the drawing element element storage means 13 and a drawing process is performed.
[0054]
As described above, the drawing processing unit 14b has read all the drawing element elements necessary for the drawing process of the divided drawing area B, and needs to read other drawing element elements and perform other check processes. Therefore, the overhead can be greatly reduced.
[0055]
Next, the drawing processing unit 14c will be described. FIG. 10 is a conceptual diagram showing reading of drawing element elements when the drawing processing means 14c processes the divided drawing area C. FIG. The hatched portion in the figure is the divided drawing area C. The processing here is basically the same as the case where the drawing processing means 14c performs the processing of the divided drawing area B.
[0056]
The drawing processing unit 14c first reads drawing element elements from the standard drawing element element storage unit 13a. First, data is read in order from the first scanning line. At this time, it is checked whether or not the standard drawing element element enters the divided drawing area C, and only the drawing element elements that enter the divided drawing area C are read.
[0057]
That is, the standard drawing element elements are read while performing the above check in order from the scanning line position 1 to the scanning line position 6 which is one position smaller than the smallest scanning line position 7 in the divided drawing area C. In this case, since the standard drawing element element 43 exists at the scanning line position 2 and is included in the divided drawing area C, the standard drawing element element 43 is eventually read.
[0058]
The drawing processing unit 14c then reads the drawing element element from the height 2 drawing element element storage unit 13c. In this case, a drawing having a height 1 at a position 1 smaller than the smallest position 7 of the scanning line position of the divided drawing area C (a value smaller by 1 unit from the height value 2), that is, the scanning line position 6. Read element element. In the example of the figure, the corresponding drawing element element does not exist and is not read.
[0059]
After performing such processing, the drawing processing unit 14c draws a standard drawing element element of the scanning line 7 from the standard drawing element element storage unit 13a, and draws a height of 1 by the scanning line 7 from the height 1 drawing element element storage unit 13b. Element element, height 2 A drawing element element having a height of 2 is read by the scanning line 7 from the drawing element element storage unit 13c.
[0060]
Then, the standard drawing element element storage unit 13a to the scanning line 8 standard drawing element element, the height 1 drawing element element storage unit 13b to the scanning line 8 height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read from the scanning line 8.
[0061]
In addition, the standard drawing element element storage unit 13a to the standard drawing element element of the scanning line 9, the height 1 drawing element element storage unit 13b to the scanning line 9 and the height 1 drawing element element, the height 2 drawing element element storage unit 13c. Then, a drawing element element having a height of 2 is read by the scanning line 9.
[0062]
As a result of such reading, the standard drawing element element 43 and the drawing element elements 42a, 41f, 42b, 41e, and 42c are read from the drawing element element storage means 13 and a drawing process is performed.
[0063]
As described above, the drawing processing unit 14c has read all the drawing element elements necessary for the drawing process of the divided drawing area C, and needs to read other drawing element elements and perform other check processes. Therefore, the overhead can be greatly reduced.
[0064]
Next, assuming that the processing of the divided drawing area A performed by the drawing processing unit 14a is finished first, the process when the divided drawing area D is assigned to the drawing processing unit 14a will be described. FIG. 11 is a conceptual diagram showing reading of drawing element elements when the drawing processing means 14a processes the divided drawing area D. The hatched portion in the figure is the divided drawing area D.
[0065]
The drawing processing unit 14a stores the processing end position of the divided drawing area A that has been processed, that is, the position information of the scanning line position 3 in this case. Then, an inquiry is made to the drawing area allocation means 15.
[0066]
Thereafter, the drawing area allocating unit 15 notifies the drawing processing unit 14a of the divided drawing area D to be processed next by using the scanning line position information 10 and 12 at both ends of the drawing area.
[0067]
Of the drawing element elements read in the process of the divided drawing area A, the standard drawing element element 43 is retained because the drawing element element in the divided drawing area D is only the standard drawing element element 43. Since the other drawing element elements 41a and 41b are not in the divided drawing area D, they are discarded before the drawing process is performed.
[0068]
Next, in the standard drawing element element storage unit 13a, from the position next to the scanning line position 3, which is the end position of the previous process, to a position one smaller than the smallest scanning line position 10 in the divided drawing area D. That is, the standard drawing element elements registered from the scanning line position 4 to the scanning line position 9 are read, but there is no new drawing element element here.
[0069]
Next, the drawing element element is read from the height 2 drawing element element storage unit 13c. In this case, a drawing element element having a height 2 at a position 1 smaller than the smallest position 10 of the scanning line position in the divided drawing area D (a value smaller than the height value 2 by 1 unit), that is, at the scanning line position 9 is set. Read. In the example of the figure, the corresponding drawing element element does not exist and is not read.
[0070]
The standard drawing element element storage unit 13a to the scanning line 10 standard drawing element element, the height 1 drawing element element storage unit 13b to the scanning line 10 height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read by the scanning line 10.
[0071]
The standard drawing element element storage unit 13a to the standard drawing element element of the scanning line 11, the height 1 drawing element element storage unit 13b to the scanning line 11 and the height 1 drawing element element, and the height 2 drawing element element storage unit 13c. Then, a drawing element element having a height of 2 is read by the scanning line 11.
[0072]
Further, the standard drawing element element storage unit 13a to the standard drawing element element for the scanning line 12, the height 1 drawing element element storage unit 13b to the scanning line 12 for the height 1 drawing element element, and the height 2 drawing element element storage unit 13c. The drawing element element having a height of 2 is read by the scanning line 12.
[0073]
As a result of such reading, the drawing element elements 41g, 42d, 42c, and 42e are read from the drawing element element storage means 13 and a drawing process is performed.
[0074]
As described above, the drawing processing unit 14a has read all the drawing element elements necessary for the drawing process of the divided drawing area D, and needs to read other drawing element elements and perform other check processes. Therefore, the overhead can be greatly reduced.
[0075]
Next, the synthesized output result will be described. FIG. 12 is a diagram showing a combined output result. The drawing sample 40 is drawn by the drawing processing means 14a to 14c, and a composite output result 17a as shown in the figure is generated.
[0076]
As explained above The second The drawing processing system 1 according to the first embodiment includes a terminal device 20 having a printer driver PD and a drawing processing device 10. The drawing processing device 10 generates a list of drawing element elements in the terminal device 20. Based on the classified reference values, the drawing element elements are parallel drawn.
[0077]
This eliminates the need for pre-processing to prepare data for each divided drawing area, and also reduces processing related to unnecessary data belonging to areas other than the assigned drawing area, greatly reducing overhead and enabling high-speed drawing processing. become.
[0078]
In addition, the functions of the terminal device 20 and the drawing processing device 10 are not provided in one dedicated machine, but the list generation unit 11 is separated so as to be provided in the printer driver PD of the terminal device 20.
[0079]
Thereby, when the terminal device 20 is a high-speed device, it is possible to further improve the overall drawing processing speed. In addition, data with almost similar shape transmitted from the API to the printer driver PD can be transferred as a list when it is received by the printer driver PD without being decompressed once into PDL or the like to generate a list. Therefore, it is possible to improve the drawing processing speed.
[0080]
Next, a drawing processing system according to the second embodiment will be described. The second embodiment has a configuration in which the list generation unit 11 and the drawing element element classification unit 12 are included in the printer driver PD.
[0081]
FIG. 13 is a diagram showing a configuration of the second exemplary embodiment. The drawing processing system 1a includes a terminal device 20a and a drawing processing device 10a, and each is connected to the network 30.
[0082]
The terminal device 20a includes a list generation unit 11 and a drawing element element classification unit 12 in the printer driver PD. Since other configurations have been described above, description thereof will be omitted.
[0083]
in this way The second The drawing processing system 1a according to the second embodiment is configured so that the drawing element element classification unit 12 is further included in the printer driver PD.
As a result, when the terminal device 20a is in charge of processing up to list generation and classification, the overall drawing processing speed can be further improved when the terminal device 20a is a high-speed device.
[0084]
Next, a drawing processing system according to a third embodiment will be described. Third implementation form The printer driver PD includes a list generation unit 11, a drawing element element classification unit 12, and a drawing element element storage unit 13.
[0085]
FIG. 14 is a diagram showing the configuration of the third embodiment. The drawing processing system 1b includes a terminal device 20b and a drawing processing device 10b, and each is connected to the network 30.
[0086]
The terminal device 20b includes a list generation unit 11, a drawing element element classification unit 12, and a drawing element element storage unit 13 in the printer driver PD.
Further, the drawing element element temporary storage means 18 is installed in the drawing processing apparatus 10b. The drawing element element temporary storage means 18 draws and stores drawing element elements indirectly or directly from the drawing element element storage means 13 in the terminal device 20b as necessary.
[0087]
The drawing element element temporary storage means 18 temporarily stores and holds data according to the classification, for example, in the case of classification that is referred to for drawing processing of a plurality of drawing areas. Since other configurations have been described above, description thereof will be omitted.
[0088]
in this way The second The drawing processing system 1b according to the third embodiment is configured to further include the drawing element element storage means 13 in the printer driver PD.
As a result, instead of sending the classified result from the terminal device 20b at a time, it becomes possible for the drawing processing device 10b to fetch the necessary drawing element elements and to perform drawing processing with high flexibility. Become.
[0089]
Note that in any of the first to third embodiments described above, the data to be transferred is encoded or compressed and transferred at the time of communication on the network 30 between the terminal device and the drawing processing device. Can do.
[0090]
In this case, decoding and decompression are performed at the time of reception, and subsequent necessary processing is performed.
Next Draw on The image processing method will be described. FIG. Is drawn 3 is a flowchart showing a processing procedure of an image processing method. . Drawing The image processing method performs drawing processing with at least a character or figure drawing object as an input.
[S1] A list of drawing element elements constituting the drawing object is generated in the printer driver and sent to the network.
[S2] The sent list is received, and the drawing element elements are classified using a certain reference value with respect to the length information of the drawing element elements constituting the list.
[S3] The classified drawing element elements are stored in correspondence with the reference values.
[S4] The drawing area is divided to assign drawing processing.
[S5] The drawing element elements necessary for the drawing processing of the stored drawing area are transferred to the drawing processing unit in correspondence with the reference value.
[S6] The drawing processing unit performs drawing processing of drawing element elements in parallel.
[S7] The processing results subjected to the drawing process are combined and output.
[0091]
As explained above Drawing In the image processing method, a drawing element element list is generated in the printer driver, and the drawing processing unit to which the divided drawing area is assigned uses the reference value obtained by classifying the drawing element elements to perform parallel drawing processing of the drawing element elements. The way to do it.
[0092]
This eliminates the need for pre-processing to prepare data for each divided drawing area, and also reduces processing related to unnecessary data belonging to areas other than the assigned drawing area, greatly reducing overhead and enabling high-speed drawing processing. become.
[0093]
【The invention's effect】
As described above, the drawing processing system of the present invention is ,end The drawing processing device includes a terminal device and a drawing processing device, and generates a list of drawing element elements in the terminal device. After classifying the length information, which is a set of the position and height information of the drawing element element, using a certain reference value, The drawing element element is configured to perform parallel drawing processing. This eliminates the need for pre-processing to prepare data for each divided drawing area, and also reduces processing related to unnecessary data belonging to areas other than the assigned drawing area, greatly reducing overhead and enabling high-speed drawing processing. become.
[Brief description of the drawings]
[Figure 1] First 1 is a principle diagram of a drawing processing system according to an embodiment.
FIG. 2 is a diagram illustrating a drawing sample.
FIG. 3 is a conceptual diagram of a drawing element element.
FIG. 4 is a conceptual diagram showing length information.
FIG. 5 is a diagram showing a drawing area.
FIG. 6 is a diagram showing drawing element element classification results;
FIG. 7 is a conceptual diagram showing a state in which classified drawing element elements are stored.
FIG. 8 is a conceptual diagram illustrating reading of drawing element elements when the drawing processing unit processes a divided drawing area A;
FIG. 9 is a conceptual diagram showing reading of drawing element elements when the drawing processing means processes a divided drawing area B;
FIG. 10 is a conceptual diagram showing reading of drawing element elements when the drawing processing means processes a divided drawing area C;
FIG. 11 is a conceptual diagram showing reading of drawing element elements when the drawing processing means processes a divided drawing area D;
FIG. 12 is a diagram illustrating a combined output result.
FIG. 13 is a diagram showing a configuration of a second exemplary embodiment.
FIG. 14 is a diagram showing a configuration of a third exemplary embodiment.
FIG. 15 Drawing 3 is a flowchart illustrating a processing procedure of an image processing method.
[Explanation of symbols]
1 Drawing processing system
10 Drawing processing device
11 List generation means
12 Drawing element element classification means
13 Drawing element element storage means
14a, 14n drawing processing means
15 Drawing area allocation means
16 Drawing element element transfer control means
17 Composite output means
20 Terminal device
30 network
I / F1, I / F2 network interface
PD printer driver

Claims (4)

少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理システムにおいて、
前記描画オブジェクトを複数の高さで分割することにより構成する描画要素エレメントのリストを生成するリスト生成手段を有する端末装置と、
前記リストを構成する前記描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、前記描画要素エレメントを分類する描画要素エレメント分類手段と、分類された前記描画要素エレメントを前記基準値に対応させて格納する描画要素エレメント格納手段と、前記描画要素エレメントの並列描画処理を行う複数の描画処理手段と、描画領域を分割して前記描画処理手段に割り当てる描画領域割当て手段と、前記描画領域の描画処理に必要な前記描画要素エレメントを前記描画要素エレメント格納手段から前記基準値に対応させて、前記描画処理手段に転送する描画要素エレメント転送制御手段と、前記描画処理手段で描画処理した処理結果を合成して出力する合成出力手段と、から構成される描画処理装置と、
を有することを特徴とする描画処理システム。
In a drawing processing system that performs drawing processing with at least a character or figure drawing object as input,
A terminal device having list generation means for generating a list of drawing element elements configured by dividing the drawing object at a plurality of heights ;
Drawing element element classification means for classifying the drawing element elements by using a constant reference value for length information which is a set of position and height information of the drawing element elements constituting the list, and the classified Drawing element element storing means for storing drawing element elements corresponding to the reference value, a plurality of drawing processing means for performing parallel drawing processing of the drawing element elements, and drawing assigned to the drawing processing means by dividing a drawing area An area allocation means, a drawing element element transfer control means for transferring the drawing element elements necessary for the drawing process of the drawing area from the drawing element element storage means to the drawing processing means in correspondence with the reference value; A drawing processing apparatus comprising: a synthesis output unit that synthesizes and outputs the processing results drawn by the drawing processing unit;
A drawing processing system comprising:
前記リスト生成手段は、前記端末装置内のプリンタドライバ内に含まれることを特徴とする請求項1記載の描画処理システム。  The drawing processing system according to claim 1, wherein the list generation unit is included in a printer driver in the terminal device. 少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理装置において、
前記描画オブジェクトを複数の高さで分割することにより構成する描画要素エレメントのリストに対し、前記描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、前記描画要素エレメントを分類する描画要素エレメント分類手段と、
分類された前記描画要素エレメントを前記基準値に対応させて格納する描画要素エレメント格納手段と、
前記描画要素エレメントの並列描画処理を行う複数の描画処理手段と、
描画領域を分割して前記描画処理手段に割り当てる描画領域割当て手段と、
前記描画領域の描画処理に必要な前記描画要素エレメントを前記描画要素エレメント格納手段から前記基準値に対応させて、前記描画処理手段に転送する描画要素エレメント転送制御手段と、
前記描画処理手段で描画処理した処理結果を合成して出力する合成出力手段と、
を有することを特徴とする描画処理装置。
In a drawing processing apparatus that performs drawing processing with at least a character or figure drawing object as input,
For a list of drawing element elements configured by dividing the drawing object at a plurality of heights , using a fixed reference value for length information that is a set of position and height information of the drawing element elements, Drawing element element classification means for classifying the drawing element elements;
Drawing element element storage means for storing the classified drawing element elements in correspondence with the reference value;
A plurality of drawing processing means for performing parallel drawing processing of the drawing element elements;
A drawing area assigning means for dividing the drawing area and assigning the drawing area to the drawing processing means;
Drawing element element transfer control means for transferring the drawing element elements necessary for drawing processing of the drawing area from the drawing element element storage means to the drawing processing means in correspondence with the reference value;
Combined output means for combining and outputting the processing results drawn by the drawing processing means;
A drawing processing apparatus comprising:
少なくとも文字または図形の描画オブジェクトを入力として描画処理を行う描画処理方法において、
リスト生成手段は、前記描画オブジェクトを複数の高さで分割することにより構成する描画要素エレメントのリストを生成し、
描画要素エレメント分類手段は、前記リストを構成する前記描画要素エレメントの位置及び高さ情報の組である長さ情報に対し一定の基準値を用いて、前記描画要素エレメントを分類し、
描画要素エレメント格納手段は、分類された前記描画要素エレメントを前記基準値に対応させて格納し、
複数の描画処理手段は、前記描画要素エレメントの並列描画処理を行い、
描画領域割当て手段は、描画領域を分割して前記描画処理手段に割り当て、
描画要素エレメント転送制御手段は、前記描画領域の描画処理に必要な前記描画要素エレメントを前記描画要素エレメント格納手段から前記基準値に対応させて、前記描画処理手段に転送し、
合成出力手段は、前記描画処理手段で描画処理した処理結果を合成して出力する、
ことを特徴とする描画処理方法。
In a drawing processing method for performing drawing processing with at least a character or figure drawing object as input,
The list generation means generates a list of drawing element elements configured by dividing the drawing object at a plurality of heights ,
The drawing element element classification means classifies the drawing element elements by using a certain reference value with respect to length information that is a set of position and height information of the drawing element elements constituting the list,
The drawing element element storage means stores the classified drawing element elements in association with the reference value,
A plurality of drawing processing means perform parallel drawing processing of the drawing element elements,
The drawing area assigning means divides the drawing area and assigns it to the drawing processing means,
The drawing element element transfer control unit transfers the drawing element element necessary for the drawing process of the drawing area from the drawing element element storage unit to the reference value, and transfers the drawing element element to the drawing processing unit.
The synthesis output means synthesizes and outputs the processing result drawn by the drawing processing means.
A drawing processing method characterized by that.
JP26440398A 1998-09-18 1998-09-18 Drawing processing system, drawing processing apparatus, and drawing processing method Expired - Fee Related JP4032525B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26440398A JP4032525B2 (en) 1998-09-18 1998-09-18 Drawing processing system, drawing processing apparatus, and drawing processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26440398A JP4032525B2 (en) 1998-09-18 1998-09-18 Drawing processing system, drawing processing apparatus, and drawing processing method

Publications (2)

Publication Number Publication Date
JP2000094779A JP2000094779A (en) 2000-04-04
JP4032525B2 true JP4032525B2 (en) 2008-01-16

Family

ID=17402685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26440398A Expired - Fee Related JP4032525B2 (en) 1998-09-18 1998-09-18 Drawing processing system, drawing processing apparatus, and drawing processing method

Country Status (1)

Country Link
JP (1) JP4032525B2 (en)

Also Published As

Publication number Publication date
JP2000094779A (en) 2000-04-04

Similar Documents

Publication Publication Date Title
EP0911723B1 (en) Printing control apparatus, printing control method, printing control system, and storage medium in which printing control program is stored
US6559958B2 (en) Printing method and apparatus having multiple raster image processors
EP0733965B1 (en) Parallel processing of page description language data stream
JPH09265363A (en) Device and method for processing printing
EP1627346B1 (en) Parallel processing of page description language data
WO1991015831A1 (en) Page description language interpreter
JP2910649B2 (en) Image forming apparatus and image forming method
US8830506B2 (en) Image processing system utilizing plural parallel processors and image processing method utilizing plural parallel processors
US6226095B1 (en) Image processing apparatus, method, and system
JPH1124860A (en) Print processing device and method
US6310693B1 (en) Printing control apparatus and method, and printing system for reducing processing overhead
JP4032525B2 (en) Drawing processing system, drawing processing apparatus, and drawing processing method
JP3873476B2 (en) Drawing processing system, drawing processing control apparatus, and drawing processing method
JPH10154050A (en) Print processor and method
US6064403A (en) Apparatus for and method of performing image-drawing processing
JP3384223B2 (en) Print processing system
JP2000198239A (en) Print system
JP5093576B2 (en) Printing control apparatus and image forming system
JPH0691990A (en) Method for controlling printer and its control system
JP3755265B2 (en) Print processing device
JPH1040040A (en) Printing processor
EP1116095B1 (en) Printing method and apparatus having multiple raster image processors
JP2000137587A (en) Printing controller and its method
JP4325339B2 (en) Printing system, host computer and printer driver
JPH09218763A (en) Printing processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071002

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071015

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

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131102

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees