[go: up one dir, main page]

JP4367745B2 - Image drawing processing apparatus and image processing system - Google Patents

Image drawing processing apparatus and image processing system Download PDF

Info

Publication number
JP4367745B2
JP4367745B2 JP2003009609A JP2003009609A JP4367745B2 JP 4367745 B2 JP4367745 B2 JP 4367745B2 JP 2003009609 A JP2003009609 A JP 2003009609A JP 2003009609 A JP2003009609 A JP 2003009609A JP 4367745 B2 JP4367745 B2 JP 4367745B2
Authority
JP
Japan
Prior art keywords
image
processing
printer
drawing processing
memory
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
JP2003009609A
Other languages
Japanese (ja)
Other versions
JP2004216821A (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.)
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 JP2003009609A priority Critical patent/JP4367745B2/en
Publication of JP2004216821A publication Critical patent/JP2004216821A/en
Application granted granted Critical
Publication of JP4367745B2 publication Critical patent/JP4367745B2/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】
【従来の技術】
今日、プリンタを使用する印刷システムにその例を見ることができるように、パソコン(PC)等の画像出力制御装置とこの制御装置により出力が制御される画像出力(印刷)装置からなる画像処理システムが広く利用されている(下記特許文献1〜5、参照)。
このようなプリンタを使用する印刷システムでは、PCが持つプリンタドライバにより作成された印刷ジョブを例えばLAN等の通信手段を介してプリンタに送り、プリンタ側でジョブに従った印刷出力を行うが、そのとき、従来から2つの方法で印刷要求された対象原画像情報を印刷データとして処理し、印刷データにより印刷出力を行っている。一つはアプリケーションからの印刷要求に対する画像処理を全て(即ち、印刷出力に用いる描画データを生成する描画処理を含む)プリンタドライバ上で行い、そのときに処理結果としてメモリ上に展開される描画データをそのままプリンタに転送して出力する方法であり、もう一方は、プリンタドライバ上では、アプリケーションからの印刷要求を内部コマンド(受け取るプリンタが理解できるコマンド)に変換し、このコマンドをプリンタに転送した後、プリンタ内でコマンドを解釈し、コマンドに従った描画処理を行い出力するという方法である。
ところで、この2つの方法に対し個々のプリンタドライバ及びプリンタでは、いずれの方法に対応させるか、或いはどちらの方法にも対応させるようにするかを仕様として決め、そのための装備を持つようにしている。従って、描画処理を行うための手段は、プリンタ側のみに装備される場合もある(下記特許文献2、参照)が、プリンタ側に装備されるだけでなく、プリンタドライバ側に装備される場合もあり(下記特許文献1,3〜5、参照)、その装備は、プリンタドライバではそれを動作させるPCのシステムの一部、或いはプリンタではその処理・制御システムの一部に組み込まれることが、普通行われているやり方である。
なお、プリンタドライバ及びプリンタの両方で描画処理を行うとした下記の例示の中、特許文献1では、プリンタ側にはYMCK色空間で行う描画処理手段のみを備えるという前提で、プリンタドライバ側に画像の正当性を保証するためにRGB色空間で行う描画処理手段を備えるようにしている。また、特許文献3〜5では、基本的にプリンタドライバ及びプリンタの両方で同様の印刷出力を可能とする描画処理手段を備え、負荷分散、処理効率、処理速度という観点から印刷システムとしての最適化を図ることを意図するものである。
【0003】
【特許文献1】
特開平11-355588号公報
【特許文献2】
特許第2879933号公報
【特許文献3】
特開2001-109598号公報
【特許文献4】
特開2000-10742号公報
【特許文献5】
特開2002-169672号公報
【0004】
【発明が解決しようとする課題】
しかしながら、プリンタドライバを動作させるPC、或いはプリンタの処理・制御システムそれぞれに描画処理手段を組み込んだ場合には、同じ描画処理を行うためであっても、PC、プリンタが個々に有する処理・制御システムの条件を考慮した開発を別々に行っているのが現状であり、開発コストの増大につながっている。
また、上記した描画処理に係わる2つの方法のいずれにも対応可能とした仕様においては、アプリケーションからの同じ印刷要求に対する2つの方法による出力結果(例えば、一つのジョブに対する描画処理をプリンタドライバとプリンタで分担して行った場合の出力)がそれぞれ微妙に異なる場合が生じるという問題がある。これは、上記したように開発を別々に行った結果として起きる各描画処理手段間の相違が一つの原因になるものと考えられる。
【0005】
本発明はPC等の画像出力制御装置(原画像情報を対象として画像出力を行うためのジョブを作成する装置)と該制御装置により出力が制御される画像出力(印刷)装置からなる画像処理システムにおける上述の従来技術の問題点に鑑みてなされたもので、その目的(課題)は、開発コストの増大を招くことなく、画像出力制御装置(例えば、プリンタドライバ)或いは画像出力(印刷)装置(例えば、プリンタ)のどちら側でシステムに組み込んでも処理出力結果に相違が生じることのない、前記画像処理システムの構成要素としての画像描画処理装置及び該画像描画処理装置をシステム要素として構成する画像処理システムを提供することにある。
また、上記した課題に対する解決手段として、本発明では、画像出力制御装置側及び画像出力(印刷)装置側で共通に用いることができる(或いは両者から独立した要素として用いることができる)ように、通信インタフェースで接続し得、独立した機能を持つモジュール構成を画像描画処理装置に採用するようにしているが、このような構成を採用した場合に、処理速度の低下、或いは装置規模の拡大を伴う可能性がある。また、仕様が異なる毎に対応したモジュールを別に用意することは、開発負担が増大する。本発明は、こうした望ましくない処理速度の低下、装置規模の拡大、或いは増大する開発負担を抑制し、処理の高速化、装置の小型化、開発負担の軽減化を図るようにした前記画像描画処理装置を提供することをさらなる目的とする。
【0006】
【課題を解決するための手段】
請求項1の発明は、受け入れた原画像情報を基に描画データを生成し、該描画データを送出する処理を行う画像描画処理装置であって、原画像情報を対象にしたジョブを受信し、描画データを送信するための入出力インタフェースと、受信したジョブを解釈し、その指示に従い原画像情報を基に描画データを生成し、描画データの利用装置への送信データを作成する処理を行うための描画データ処理部と、描画データ処理部及び前記入出力インタフェースが動作に使用するメモリを管理するメモリ管理部を備えた画像描画処理装置と、印刷要求を受け取り原画像情報を対象にした印刷ジョブを作成し、前記画像描画処理装置に前記入出力インタフェースで接続する画像出力制御装置と、該画像出力制御装置にインタフェースで接続するとともに、前記画像描画処理装置に前記入出力インタフェースで接続し、受け取った描画データを用い可視像化を行う画像出力装置と、を要素としてシステムを構成し、前記画像出力制御装置から入出力インタフェースを介して依頼された描画処理を行い、得られる処理結果を前記画像出力制御装置に戻さずに、入出力インタフェースを介して前記画像出力装置に転送することを特徴とする画像処理システムである。
請求項2の発明は、請求項1に記載された画像描画処理システムにおいて、前記描画データ処理部は、共通の処理関数を用い、該関数のパラメータの設定を変えることにより異なる描画出力モードに対応する処理を行うようにしたことを特徴とする画像描画処理装置である。
【0025】
【発明の実施の形態】
本発明に係わる画像描画処理装置及び画像処理システムを添付する図面とともに示す以下の実施形態に基づき説明する。
以下に示す各実施形態では、好適な実施対象としてのプリンタシステムにおける描画処理を例に、画像描画処理装置及び該画像描画処理装置をシステム要素として構成する画像処理システム(プリンタシステム)について説明する。
なお、以下の「実施形態1」では、画像描画処理装置の基本形態を説明し、「実施形態2」〜「実施形態9」では、画像描画処理装置を適用して構成するプリンタシステムの実施形態を説明し、「実施形態10」〜「実施形態20」では、「実施形態1」の基本形態に改良を加えた画像描画処理装置の実施形態を説明する。
【0026】
「実施形態1」
ここでは、画像描画処理装置の基本形態について示す。画像描画処理装置は、画像処理システム(プリンタシステム)のシステム要素となるものである。プリンタシステムは、後述のプリンタシステムに関する実施形態に例示するように、基本的にはアプリケーションからの印刷要求を受け取る画像出力制御装置(PCに搭載したプリンタドライバ)により作成された印刷ジョブを通信インタフェースを介して画像出力装置としてのプリンタに送り、プリンタ側でジョブに従った印刷出力を行うシステムである。画像描画処理装置は、このプリンタシステムにおいて印刷ジョブに含まれる印刷出力用の描画データを生成する処理部分をなすもので、印刷ジョブの指示に従い原画像情報をもとにメモリ上に描画データを展開し、印刷出力に用いる描画データを生成する処理を行うための手段を構成する。
本画像描画処理装置の特徴は、プリンタドライバ側及びプリンタ側で共通に用いることができ、また、両者から独立したシステム要素として用いることができるように、通信インタフェースでプリンタドライバ及びプリンタに接続し得、独立した機能を持つモジュール構成を採用するものである。従って、このプリンタシステムでは、描画データを生成する描画処理機能は画像描画処理装置のみに持たせるという考え方であるから、プリンタドライバ、プリンタに描画処理機能を内蔵することは本来あり得ない。
このような考え方を導入することにより、従来、問題となった開発コストの増大を招くことなく、処理出力結果に相違が生じることのないプリンタシステムを構成し、そのシステム要素として用いることが可能な画像描画処理装置を提供することを可能にする。
【0027】
図1は、本実施形態に係わる画像描画処理装置の構成を示すブロック図である。
同図に示すように、画像描画処理装置1は、入出力インタフェース2と描画処理部3とメモリ管理部4を有し、独立した機能モジュールとして構成する。入出力インタフェース2は、画像描画処理装置1を利用する側のシステム要素(例えば、プリンタドライバ、プリンタ)とのデータ入出力を行う。描画処理部3は、入力データの二値化等、原画像情報をもとにメモリ上に描画データを展開し、印刷出力に用いる描画データを生成し、この描画データをもとに利用する側のシステム要素への送信データを作成する処理を行う。また、メモリ管理部4は、描画処理時及びデータの送受信処理時に使用するワークメモリの管理を行う。なお、本画像描画処理装置1は、上記した描画処理や処理データの送受信動作をコンピュータプログラムに従って行うためのCPU、メモリ、入出力インタフェースを備えたモジュールにより具体化が可能である。
【0028】
「実施形態2」
本実施形態には、画像描画処理装置(実施形態1、実施形態10〜20)を適用して構成する画像処理システムとしてのプリンタシステムを示す。ここに示すシステムの構成例は、プリンタドライバ(画像出力制御装置)側に画像描画処理装置を接続するものを示す。
図2は、本実施形態のプリンタシステムの構成を示すブロック図である。同図に示すように、プリンタドライバ5は、ユーザーインタフェース6と、入出力インタフェース7と解釈部8とワークメモリ9を有する。プリンタドライバ5側に実施形態1に示した画像描画処理装置1を接続するので、これらは入出力インタフェース7,2を介して接続される。また、プリンタ10は、入出力インタフェース11と、解釈部12と、ワークメモリ13と、フレームメモリ14を有する。プリンタドライバ5とプリンタ10とは、入出力インタフェース7,11を介して接続する。
プリンタドライバ側に画像描画処理装置1を組み込んだ本実施形態のシステムでは、プリンタドライバ5は、ユーザインタフェース6を介し、アプリケーションからの印刷要求を受け、解釈部8で印刷要求に示される指示を解釈する。その後、解釈部8により解釈された指示内容に従って動作を行わせる。即ち、入出力インタフェース7,2を介して画像描画処理装置1に描画処理を依頼し、この依頼に応じて、画像描画処理装置1を使用しながらワークメモリ9上に描画結果を展開する、描画処理を行う。このときに描画処理による結果は、描画データとして通常ビットマップ形式のイメージデータとして得られる。次いで、解釈部8は、この描画結果をプリンタシステム内部コマンド(受け取るプリンタ側が理解できるコマンド)と共に印刷ジョブとしてプリンタ10に入出力インタフェース7,11を介して送出する。プリンタは、入出力インタフェース11を介して送られたイメージデータを伴う内部コマンドに示される指示を解釈部12で解釈し、解釈部12により解釈された指示内容に従って、ワークメモリ13を用いながらフレームメモリ14に描画結果を描き込み、その後、入出力インタフェース11を介して図示しない印刷出力部(可視像化を行う画像出力部)へのデータ送出を行う。
【0029】
「実施形態3」
本実施形態には、画像描画処理装置(実施形態1、実施形態10〜20)を適用して構成するプリンタシステムの他の形態を示す。ここに示すシステムの構成例は、プリンタ(画像出力装置)側に画像描画処理装置を接続するものを示す。図3は、本実施形態のプリンタシステムの構成を示すブロック図である。同図に示すように、上記実施形態2と同じ構成要素からなるプリンタドライバ5とプリンタ10が入出力インタフェース7,11を介して接続される。また、本実施形態では、プリンタ10側に実施形態1に示した画像描画処理装置1を組み込むので、画像描画処理装置1とプリンタ10は入出力インタフェース11,2を介して接続される。
プリンタ側に画像描画処理装置1を組み込んだ本実施形態のシステムでは、プリンタドライバ5は、ユーザインタフェース6を介し、アプリケーションからの印刷要求を受け、解釈部8で印刷要求に示される指示を解釈するが、プリンタドライバ側で描画処理をしないので、印刷要求をプリンタシステム内部コマンドに変換し、入出力インタフェース7,11を介してイメージデータを伴う内部コマンドを印刷ジョブとしてプリンタ10に送出する。プリンタ10側では、入出力インタフェース11を介して送られた印刷ジョブの内部コマンドを解釈部12で解釈する。その後、解釈されたコマンドの指示内容に従って入出力インタフェース11,2を介して画像描画処理装置1に描画処理を依頼し、この依頼に応じて描画処理を行う画像描画処理装置1を使用しながら、描画処理により通常ビットマップ形式のイメージデータとして得られる描画データをフレームメモリ14に展開する。フレームメモリ14に描画結果を書き込んだ後、入出力インタフェース11を介して図示しない印刷出力部(可視像化を行う画像出力部)へのデータ送出を行う。
【0030】
「実施形態4」
本実施形態には、画像描画処理装置(実施形態1、実施形態10〜20)を適用して構成するプリンタシステムの他の形態を示す。ここに示すシステムの構成例は、プリンタドライバ(画像出力制御装置)、またプリンタ(画像出力装置)のいずれの側に対しても対等な関係で画像描画処理装置をシステム化するものを示す。
図4は、本実施形態のプリンタシステムの構成を示すブロック図である。同図示の例では、画像描画処理装置1を共通に用いるような形態で、プリンタドライバ5とプリンタ10に対し対等な関係でシステム化し、上記実施形態2と実施形態3の複合を図る。即ち、図4に示すように、画像描画処理装置1の入出力インタフェース2に対してプリンタドライバ5とプリンタ10それぞれの入出力インタフェース7,11が接続されている。なお、本実施形態においても、プリンタドライバ5とプリンタ10の構成要素は、上記実施形態2と実施形態3におけると同じ要素からなる。
画像描画処理装置1をプリンタドライバ5とプリンタ10に対し対等な関係でシステム化した本実施形態のシステムでは、実施形態2と実施形態3における上記した動作に加え、特異な動作として、プリンタドライバ5から入出力インタフェース7,2を介して依頼された描画処理を行い、得られる処理結果をプリンタドライバ5に戻さずに、入出力インタフェース2,11を介してプリンタ10に転送するという方法をとることができる。従って、本実施形態に特異の動作或いは実施形態2の動作のいずれを動作方法とするかを選択することを可能にした形態によっても、実施することができる。
上記のように、画像描画処理装置1をプリンタドライバ(画像出力制御装置)、プリンタ(画像出力装置)いずれの側にも組み込まない(専属させない)方法をとって両者に対等な関係でシステム化する場合には、画像描画処理装置1を例えばPCのような独立した装置に搭載した形態で実施するようにしても良い。
【0031】
「実施形態5」
本実施形態には、画像描画処理装置(実施形態1、実施形態10〜20)を適用して構成するプリンタシステムの他の形態を示す。ここに示すシステムの構成例は、二つの画像描画処理装置を用い、プリンタドライバ(画像出力制御装置)及びプリンタ(画像出力装置)のいずれの側にも画像描画処理装置を接続することを可能にするものを示す。
図5は、本実施形態のプリンタシステムの構成を示すブロック図である。同図示の例では、同一の画像描画処理装置1,17をプリンタドライバ5とプリンタ10にそれぞれ接続しシステム化し、上記実施形態2と実施形態3を複合させるものである。なお、本実施形態においても、プリンタドライバ5とプリンタ10の構成要素は上記実施形態2と実施形態3におけると同じ要素からなる。
画像描画処理装置1をプリンタドライバ5とプリンタ10に対し同一の画像描画処理装置1,17をそれぞれ接続してシステム化した本実施形態のシステムでは、実施形態2と実施形態3における上記した動作に加え、特異な動作として、プリンタドライバ5側の画像描画処理装置1で入出力インタフェース7,2を介して依頼された描画処理を行っている間に、プリンタ10側の画像描画処理装置17でも入出力インタフェース11,16を介して依頼された描画処理を行うことが可能になる。つまり、描画処理の一部が画像描画処理装置1を使用して行われ、この処理結果と残りの描画処理要求をプリンタドライバ5の解釈部8が内部コマンドに変換し、入出力インタフェース7,11を介してプリンタ10へ転送し、プリンタ10側では残りの描画処理要求を解釈部12で解釈し、解釈されたコマンドの指示内容に従い必要となる描画処理を画像描画処理装置17によって行わせる。この間に、プリンタドライバ5側では次の印刷ジョブに対する処理を行うことができるので、システム内で同時に複数のジョブに対する処理を行うことが可能になる。
【0032】
「実施形態6」
本実施形態には、上記実施形態5に示したプリンタシステムの機能を有効に引き出すための動作方式に係わる実施形態を示す。ここに示すシステムの動作方式は、二つの画像描画処理装置1,17で描画処理を分担可能とし、各描画処理装置の処理分担をプリンタドライバ5及びプリンタ10の処理性能に応じた比率で定めることにより処理の効率化(処理時間の短縮)を図るものである。
本実施形態では、アプリケーションからの印刷要求を受け取るプリンタドライバ5の解釈部8で処理の分担を決める。また、プリンタドライバ側とプリンタ側それぞれで決めた分担に従いジョブを処理する際に、処理の連携を図るために必要な情報を伝達することが可能な入出力インタフェース7,11が用いられる。本実施形態では、プリンタドライバ5の処理性能により分担を決めるようにする。そのために、解釈部8においてプリンタドライバ側が持つPCの処理性能に係わる情報として、CPUの動作クロック(周波数)、メモリ量、ディスク容量等を取得し、これらの数値をもとに処理性能のランクを判断し(例えば、判断基準として予め数値範囲をランクに対応付けておくことにより、当該PCの処理性能がどのランクに属するかを判定する)、性能が高ければ多くの描画処理をプリンタドライバ側の画像描画処理装置1を用いて処理し、この描画処理結果と残りの処理をプリンタ10に転送して、そこで処理を行うようにする。ここで、PCの処理性能が低いと判断される場合は、プリンタドライバ側で行う処理を少なくし、プリンタ側の画像描画処理装置17で行う処理を多くして、そこで描画処理を行い、ジョブ全体の描画処理時間を短縮する。ジョブ全体の描画処理を完了させた後、図示しない可視像化を行う出力装置への描画データの出力を行う。
【0033】
「実施形態7」
本実施形態には、上記実施形態5のプリンタシステムを有効に機能させるための動作方式に係わる他の実施形態を示す。ここに示すシステムの動作方式は、二つの画像描画処理装置1,17で描画処理を分担可能とし、各描画処理装置の処理分担を描画コマンドの種類に応じて定めることを意図するものである。
本実施形態では、アプリケーションからの印刷要求を受け取るプリンタドライバ5の解釈部8で処理の分担を決める。また、プリンタドライバ側とプリンタ側それぞれで決めた分担に従いジョブを処理する際に、処理の連携を図るために必要な情報を伝達することが可能な入出力インタフェース7,11が用いられる。本実施形態では、描画コマンド(描画オブジェクトの種類等)に応じて分担を決めるようにする。そのために、プリンタドライバ5がアプリケーションから印刷要求を受け取り、解釈部8において印刷要求の内容を解釈する際に、印刷要求に含まれる印刷対象の入力画像情報に対する印刷コマンドを解析する。ここでは、印刷コマンドの解析結果を入力画像情報に対し指示された文字データの描画、グラフィックデータの描画、イメージデータの描画等の描画コマンドとして得る。
解釈部8では、取得した描画コマンドの種類を表す情報をもとに、描画コマンドの種類に対応づけて予め定めたプリンタドライバ5側とプリンタ10側それぞれの画像描画処理装置1,17を指定し、指定した処理装置に描画処理を分担させる判断をする。例えば、文字データの描画処理は、プリンタ10側の画像描画処理装置17で行い、イメージデータの描画処理は、プリンタドライバ5側の画像描画処理装置1で行う等の判断を行う。各々の画像描画処理装置1,17で処理されたデータは、それぞれに関係する入出力インタフェースを介してプリンタ10に転送され、プリンタ内のフレームメモリ14に展開し、その後、図示しない可視像化を行う出力装置への描画データの出力を行う。
【0034】
「実施形態8」
本実施形態には、上記実施形態5のプリンタシステムを有効に機能させるための動作方式に係わる他の実施形態を示す。ここに示すシステムの動作方式は、二つの画像描画処理装置1,17で描画処理を分担可能とし、各描画処理装置の処理分担を描画単位に応じて定めることを意図するものである。
本実施形態では、アプリケーションからの印刷要求を受け取るプリンタドライバ5の解釈部8で処理の分担を決める。また、プリンタドライバ5側とプリンタ10側それぞれで決めた分担に従いジョブを処理する際に、処理の連携を図るために必要な情報を伝達することが可能な入出力インタフェース7,11が用いられる。
本実施形態では、描画単位に応じて分担を決めるようにする。そのために、プリンタドライバ5がアプリケーションから印刷要求を受け取り、解釈部8において印刷要求の内容を解析する際に、印刷要求に含まれる描画単位を解析する。ここでは、印刷ジョブとして入力される画像情報は、複数のバンドから構成されるページ、さらに複数のページから構成されるジョブからなり、印刷コマンドの解析結果として、ジョブ単位、ページ単位、バンド単位等の描画単位を認識することが可能である。
解釈部8では、認識した描画単位に対してプリンタドライバ5側或いはプリンタ10側の画像描画処理装置1,17のいずれを用いるかを指定する。この場合、描画単位で予め描画処理させる装置を定めた描画処理ルールに従いプリンタドライバ5側とプリンタ10側それぞれの画像描画処理装置1,17を指定するようにしても良い。例えば、奇数ページの描画処理はプリンタ10の画像描画処理装置17で行い、偶数ページはプリンタドライバ5側の画像描画処理装置1で行なう等のルールを定めるようにした場合には、各描画単位毎にそのルールに従って、処理を分担する画像描画処理装置を指定する。各々の画像描画処理装置1,17で処理されたデータは、それぞれに関係する入出力インタフェースを介してプリンタ10に転送され、プリンタ内のフレームメモリ14に展開し、その後、図示しない可視像化を行う出力装置への描画データの出力を行う。
【0035】
「実施形態9」
本実施形態には、上記実施形態5のプリンタシステムを有効に機能させるための動作方式に係わる他の実施形態を示す。ここに示すシステムの動作方式は、二つの画像描画処理装置1,17で描画処理を分担可能とし、各描画処理装置の処理分担をプリンタドライバ5とプリンタ10における処理状態(処理進行状況)に応じて定めることを意図するものである。
本実施形態では、アプリケーションからの印刷要求を受け取るプリンタドライバ5の解釈部8で処理の分担を決める。また、プリンタドライバ5側とプリンタ10側それぞれで決めた分担に従いジョブを処理する際に、処理の連携を図るために必要な情報を伝達することが可能な入出力インタフェース7,11が用いられる。
本実施形態では、プリンタドライバ5及びプリンタ10における処理状態(処理進行状況)に応じて分担を決めるようにする。そのために、アプリケーションから印刷要求を受け取るプリンタドライバ5が有する解釈部8において、プリンタドライバ5自身の処理状態と、入出力インタフェース7,11を介して知ることが可能なプリンタ10の処理状態を把握する必要がある。
解釈部8では、把握したプリンタドライバ5とプリンタ10における処理状態に応じ、処理すべきジョブが存在する場合には、できるだけプリンタドライバ5、プリンタ10の両方に設けた画像描画処理装置1,17を有効に働かせるようにして、処理効率を上げ、高速化を図る。
プリンタドライバ5側の解釈部8は、入出力インタフェース7,11を介して得られるプリンタ10の処理進行状況によって、以降の描画処理の分担処理を行うようにする。即ち、プリンタ10側で処理が可能な状態にあれば、直ちにプリンタ10に処理を分担させるようにして、プリンタドライバ5側の処理と共に同時処理の形でジョブの分担を可能にする。例えば、プリンタ10が描画処理中で、かつコマンド待ち受け状態にもない場合、以降の処理をプリンタ10の処理が解放されるまでプリンタドライバ5側で行うようにし、さらに、プリンタ10に何らかのエラー(ドアオープン、トナー切れ等)がある場合に、エラーが解消されるまでプリンタドライバ5側で処理を行うようにする。処理を分担した場合に、各々の画像描画処理装置1,17で処理されたデータは、それぞれに関係する入出力インタフェースを介してプリンタ10に転送され、プリンタ内のフレームメモリ14に展開し、その後、図示しない可視像化を行う出力装置への描画データの出力を行う。
【0036】
「実施形態10」
本実施形態は、上記「実施形態1」に基本形態を示した画像描画処理装置の改良に係わるものである。
本例の画像描画処理装置の特徴は、実施形態1の画像描画処理装置と同様の機能を持つモジュールにおいて、描画条件等が異なるために仕様を変更する必要がある場合に、新たな開発を行うことなく、容易に仕様の変更に応えることを可能にする構成を備えたものである。
図6は、本実施形態に係わる画像描画処理装置の構成を示すブロック図である。同図に示すように、画像描画処理装置1は、入出力インタフェース2と描画処理部3と初期化部31とメモリ管理部4を有し、独立した機能モジュールとして構成する。入出力インタフェース2は、画像描画処理装置1を利用する側のシステム要素(例えば、プリンタドライバ、プリンタ)とのデータ入出力を行う。描画処理部3は、入力データの二値化等、原画像情報をもとにメモリ上に描画データを展開し、印刷出力に用いる描画データを生成し、この描画データを利用する側のシステム要素への送信データを作成する処理を行う。初期化部31は、プリンタの作像部等の可視像化を行う装置で出力される画像の解像度、深さ(bit)等に関する初期化条件を描画処理部3に設定する。描画処理部3では、描画に必要な出力解像度、深さ等のパラメータに依存しない形で各描画出力モード共通の方法(共通の処理関数)をもっており、処理関数のパラメータとして初期化部31から出力解像度、深さ等のパラメータが与えられ、初期化部31との協調により、仕様の変更に対応して描画処理を行うことを可能にする。なお、初期化部31は、描画処理に含まれる後述のディザリング処理を行うための使用ディザパターンの判定(実施形態12)、初期化メタパターンの作成(実施形態13〜18)を行う手段としても機能する。
また、メモリ管理部4は、描画処理時及びデータの送受信処理時に使用するワークメモリの管理を行う。なお、本画像描画処理装置1は、上記した描画処理や処理データの送受信動作をコンピュータプログラムに従って行うためのCPU、メモリ、入出力インタフェースを備えたモジュールにより具体化が可能である。
【0037】
「実施形態11」
本実施形態は、上記「実施形態1」に基本形態を示した画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態1の画像描画処理装置1と同様の機能を実現するためのモジュールにおいて、ワークメモリをモジュール内に持つ必要をなくすことを可能にする構成を備えたもので、描画処理及び入出力インタフェースの動作に用いるワークメモリ領域として、入出力インタフェースで接続する外部の装置が有するメモリの領域を用いるようにし、そのためのメモリの管理を行う。
従って、本実施形態では、例えば図5のシステム構成に用いる画像描画処理装置1を例にすると、画像描画処理装置1が用いるワークメモリ領域としてプリンタドライバ5、プリンタ10側のワークメモリ9,13を利用する。プリンタドライバ5、プリンタ10は、画像描画処理装置1に描画処理を依頼する際にその描画処理に必要なワークメモリを確保し、その領域とメモリ操作(確保、解放等)関数を初期化時、画像描画処理装置1に渡す。画像描画処理装置1のメモリ管理部4は、このときに渡された管理情報をもとにプリンタドライバ5、プリンタ10に確保されたワークメモリの管理を行う。つまり、画像描画処理装置1を利用する側であるプリンタドライバ5、プリンタ10は、描画処理に使用するメモリを間接的に管理することになる。
このように、画像描画処理装置1側では、描画処理に必要なワークメモリを独自に持つ必要が無く、利用側が確保したメモリ領域を使用するために利用側から渡されたメモリ操作関数による管理を行うだけでよい。
【0038】
「実施形態12」
本実施形態は、上記「実施形態1」に基本形態を示した画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態1の画像描画処理装置1と同様の機能を実現するためのモジュールにおいて、ディザリングによる描画処理を行うための手段を装備するとともに、ディザリングによる処理を行う際に複数種のディザパターンを用い、描画オブジェクトごとに複数種のディザパターンを切り替えて使用する方式を採用するようにしたもので、この方式により処理を高速化して、画像描画処理装置1に独立した機能モジュール構成を採用した場合の装置の高パフォーマンス化を図る。
本実施形態では、描画処理対象となる写真、文字、グラフィック塗りつぶし、線画等の描画オブジェクトに対応してオブジェクト毎にディザリングに用いるディザパターンを複数種用意し、アプリケーションからの印刷要求を受け取るプリンタドライバ5の解釈部8で解析した描画オブジェクト情報を描画処理時に取得し、描画オブジェクト毎に対応するディザパターンを切り替えて使用する。描画処理動作の手順としては、例えば図5のシステム構成に用いる画像描画処理装置1,17を例にすると、画像描画処理装置1,17を利用するプリンタドライバ5、プリンタ10は、描画処理依頼時に入出力インタフェースを介し、描画処理対象情報とディザパターンの指定が含まれた内部コマンドを送出する。なお、ディザパターンの指定情報は、描画オブジェクトの種類毎に使用するディザパターンが予め定められているので、描画処理対象情報を解析して描画オブジェクトの種類を求め、対応するディザパターンの指定情報を取得し、内部コマンドで指定しておく。画像描画処理装置1,17は、内部コマンドに指定された使用ディザパターンを初期化部31で判別し、描画処理部3において対応したディザパターンを使用してディザリングを行う。
【0039】
「実施形態13」
本実施形態は、上記「実施形態12」に示した画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態12に示した画像描画処理装置1,17のモジュールにおいて、描画処理としてのディザリングに用いるディザパターンに単位パターンを複数連結させ、拡張したパターンサイズを用いるようにする方式を採用したもので、この方式により処理を高速化することを可能にする。
本実施形態では、使用するディザパターンは、例えば “4×4”、“6×12” のような矩形のサイズを持つものを採用する(“4×4”の例を示す図8、参照)。このようなディザパターンを用いる場合、入力画像の1ピクセルごとにメモリ上のディザデータを参照し、ディザパターンを生成する処理を行い、その処理結果をメモリ上に描き込むといった処理を繰り返す方法では、処理コストがかかる。そこで、同濃度のピクセルが連続する場合のようにディザパターンを繰り返して貼り付けるようにして用いることが可能な場合には、ディザパターンの各行を複数連続させることで新たなパターン(以下、この連続パターンを「メタパターン」という)を作成し、メタパターンを使用してディザパターンの生成処理を行うことで処理コストを低減する。
ここでは、メタパターンのサイズは、32bitsとし、32bitsに収まらない場合は複数の32bitsのメタパターンをリスト形式で接続しておく。図7は、このメタパターンを例示するものである。ここには、単位ディザパターンが、4bitsと6bitsの例を示す。メタパターンのサイズを32bitsアラインとしているから、単位ディザが4bitsの場合は、単位ディザを8回繰り返す。また、単位ディザが6bitsの場合は、複数の 32bitsのメタパターンを3つ接続し、単位ディザを16回繰り返す。
このようなメタパターンを使用してディザ処理を行うことにより、処理の高速化を図ることを可能にする。
【0040】
「実施形態14」
本実施形態は、上記「実施形態13」に示した画像描画処理装置の改良に係わるものである。
実施形態13に示した画像描画処理装置1,17のモジュールにおいて、ディザパターンとして拡張パターン(メタパターン)を用いてディザリング処理行うとしたが、メタパターンは繰り返して使用することが多く、描画の都度にメタパターンを作成するという方法は非効率的である。そこで、本画像描画処理装置では、実施形態13に示したような方法で作成したメタパターンをキャッシュメモリに一時的に格納し、キャッシュしておいたメタパターンを再利用することにより、処理効率の向上を図るものである。
本実施形態では、画像描画処理装置1,17の描画処理部3でメタパターンを作成したときに、作成したメタパターンをこの画像描画処理装置内のメモリに設けたキャッシュ領域に格納し、その後、同じメタパターンの描画要求がなされたときに、キャッシュしておいたメタパターンを読み出して、再利用する。こうしたメタパターンを再利用するキャッシュ動作を行うために、画像描画処理装置1,17のメモリ管理部4では、作成したメタパターンのキャッシュ管理を行う。
【0041】
「実施形態15」
本実施形態は、上記「実施形態14」に示した画像描画処理装置の改良に係わるものである。
実施形態14に示した画像描画処理装置1,17のモジュールにおいて、ディザパターンとして拡張パターン(メタパターン)のキャッシュ管理を行うとしたが、描画に使用するメタパターンとして写真用、文字用等の描画オブジェクトやカラー(例えば、KCMYの4つの色成分による)に対応して複数のパターンを用意する必要があり、こうした場合に、キャッシュに必要なメモリ容量が可成り大きくなってしまう。そこで、以下に示す方式によりキャッシュ容量の低減を図るようにするものである。
描画に使用するメタパターンには、上記のように写真用、文字用等の描画オブジェクトに応じたパターンのように、複数種のディザパターンがあり、さらに、同じ写真用パターンにおいてもKCMY4色の各成分でそれぞれ違うディザパターンを用いることがある。ところが、KCMY4色全ての色で同じディザパターンを使用する場合もあり、この場合にKCMYの4色分全てのメタパターンをキャッシュメモリに用意すると、メモリを無駄に使用することになる。そこで、初期化部31におけるメタディザパターンのキャッシュ初期化処理において、カラー構成色(例えばKCMY)の各色別に異なるディザパターンを用いる必要があるか否かの要否に従い、各色別のディザパターンを用いる場合には、4 色分のキャッシュ領域を使用する設定を行い、単色のディザパターンを用いる場合には、KCMY 全てが同一のキャッシュ領域を使用するように設定し、キャッシュ容量を低減させる。
【0042】
「実施形態16」
本実施形態は、上記「実施形態14」に示した画像描画処理装置の改良に係わるものである。
実施形態14に示した画像描画処理装置1,17のモジュールにおいて、ディザパターンとして拡張パターン(メタパターン)のキャッシュ管理を行うとしたが、描画に使用するメタパターンとして描画オブジェクトやカラーに対応した種類、及び濃度(0〜255)の複数のパターンを用意する必要があり、こうした場合に、キャッシュに莫大なメモリ容量が必要になってしまう。そこで、以下に示す方式によりキャッシュ容量の低減を図るようにするものである。
本実施形態では、行列状に配された各種のディザパターンを用いる場合、共通の行パターンのみキャッシュするという方式によりキャッシュ容量を低減する。このために、初期化部31は、各種のディザパターンの行ごとのパターンを判別し、同一の行パターンのみをキャッシュすることでキャッシュに用いる容量を低減する。図8は、各種のディザパターンの行ごとのパターンを判別し、同一の行パターンにキャッシュされたデータを用いる方式を説明する図である。図8を参照すると、使用するディザパターンを例えば4×4 の矩形のサイズを持つものとした場合における0〜255のカラー濃度レベルのディザパターンが図示されているが、その矩形ディザパターンにおける各ライン(この例では4ラインある)毎にライン(行)パターンが同一となるレベルを示し、どのレベルと同一であるかが分かるように、カラー濃度レベルに対し同一パターンを持つレベルを指示する図中に示すようなテーブルを作成する。ここに示す例では、レベル10,11,12の2ライン(行)目の行パターンが同一であり、2ライン目について作成したテーブルに示すように、レベル11,12はレベル10と同一のパターンを用いることができ、キャッシュパターンを用いることができることを示す。
このようにしてキャッシュするディザパターンを使用する可能性の高いものに限定することにより、キャッシュ容量を低減させることが可能になり、また、これにより描画時に 0〜255の全カラー濃度レベルのパターンを検索することなく、キャッシュされた同一のパターンの検索で処理に必要なデータが得られるので、処理の高速化を図ることも可能になる。
【0043】
「実施形態17」
本実施形態は、上記「実施形態16」に示した画像描画処理装置の改良に係わるものである。
実施形態16に示した画像描画処理装置1,17のモジュールにおいて、キャッシュするメタパターンとして、繰り返し使用する可能性の高い、各種のメタパターン間に共通の行パターンのみキャッシュするとしたが、使用するキャッシュメモリに限りがあり、全ての共通パターンがキャッシュできず、不都合を生じる場合がある。そこで、以下に示す方式により不都合の解消を図ることを可能にするものである。
本実施形態では、キャッシュメモリ領域に不足が生じたときに、該キャッシュメモリ領域の初期化を行う方式を採用する。即ち、キャッシュメモリが足りなくなる場合には、一旦メモリをフラッシュしてキャッシュメモリの再構築を行なうようにする。こうすることにより、画像描画処理装置1,17内で使用するキャッシュメモリのサイズを可変にし、画像描画処理装置1,17を利用する側のワークメモリ量に応じて適切なキャッシュメモリ容量を確保することができ、不都合なく画像描画処理装置1,17における描画処理動作を行うことが可能になる。
【0044】
「実施形態18」
本実施形態は、上記「実施形態14」に示した画像描画処理装置の改良に係わるものである。
実施形態14に示した画像描画処理装置1,17のモジュールにおいて、メタパターンをキャッシュするメモリ領域を初期設定した領域に固定すると、キャッシュメモリ領域が不足する場合があり、この対応策として実際に不足するときに画像描画処理装置1,17内で一旦メモリをフラッシュしてキャッシュメモリの再構築を行うようにする方式を採用することができる(実施形態17,参照)が、こうした再構築のし方では、キャッシュされたデータを再度入れ直すという無駄な作業が生じる場合もある。そこで、以下に示す方式によりこの不具合の解消を図ることを可能にするものである。
本実施形態では、キャッシュの有効範囲を必要に応じて切り替えることを可能とする。即ち、画像描画処理装置1,17内のキャッシュメモリのサイズを可変とし、画像描画処理装置1,17を利用する側(プリンタドライバ5或いはプリンタ10側)から描画データの単位が変わる所定のタイミングを選んで、指定したメモリサイズの使用を可能とする設定で初期化を行う。つまり、画像描画処理装置1,17を利用する側から意図的に再構築を行わせることにより、キャッシュメモリの有効範囲を変えることを可能にする。例えば、有効範囲をページ内とした場合、ページ描画の先頭でキャッシュメモリの再構築を行い、有効範囲をジョブ内とした場合には、ジョブ先頭で再構築を行う。後者の例では、複数ページの描画にまたがってキャッシュを利用することができる。なお、画像描画処理装置1,17を利用する側から意図的に行われる初期化(再構築)の間に、メモリサイズが足りなくなった場合には画像描画処理装置1,17側で自動的に再構築を行なうことを可能にするようにしても良い。
【0045】
「実施形態19」
本実施形態は、上記「実施形態14」に示した画像描画処理装置の改良に係わるものである。
実施形態14に示した画像描画処理装置1,17のモジュールにおいて、メタパターンをキャッシュして描画処理に用いることにより高速化を図るとしたが、描画処理結果を利用するプリンタ10側への処理後の描画データの転送を高速化しないとキャッシュを採用した意義が減殺する。そこで、以下に示す方式により合目的化を図ることを可能にするものである。
メタパターンを使用したディザ処理において、上記実施形態13に示したように、キャッシュされたパターンは高速処理のために、単位ディザパターンを繰り返し、この例では32bits のパターンとしている。一方で、描画処理結果を利用するプリンタ10側の描画データを描き込むフレームメモリ14へのアクセスは回数が少ないほど高速に処理できるため、入力画像 1 画素毎に毎回フレームメモリ14に書き込んでいては、処理が遅くなる。そこで、本実施形態では、キャッシュされたメタパターンと同様にフレームメモリ14へのアクセスも32bits ごとにまとめて描き込むようにするため、描画処理結果を転送するためのワークメモリ領域として、キャッシュされたメタパターンに見合う32bits サイズのワークメモリ領域を確保し、描画処理結果を確保したこのワークメモリ領域に一旦書き込んでおき、32bits 溜まったところでフレームメモリ14に描き出すことで、描画処理、描画データの送信という一連の処理を高速化することが可能になる。
【0046】
「実施形態20」
本実施形態は、上記「実施形態19」に示した画像描画処理装置の改良に係わるものである。
上記実施形態19に示した画像描画処理装置1,17のモジュールにおいて、描画データの利用側に描画処理結果を転送するためのワークメモリ領域として、キャッシュされたメタパターンに見合うサイズの領域を確保することにより高速化を図るとしたが、本実施形態は、実施形態19における描画処理、描画データの送信という一連の処理をさらに高速化することを意図する。
このために本実施形態では、ワークメモリ領域に一旦保持した描画処理後のデータを描画対象として入力される画素の色レベル(濃度)が変動しない間、継続して保持するようにし、入力画素の同一色(濃度)を“まとめ塗り”することにより、処理の高速化を図る。
図9は、本実施形態の描画処理のフローチャートを示す。図9を参照すると、フローの開始時に、描画データを利用するプリンタ10側に描画処理結果を転送するためのバッファメモリのデータをクリアし、初期化する(S11)。
その後、描画対象として入力された現画素の色レベル(濃度)を前画素と比較し同レベルであるか否かを判定し(S12)、同レベルであれば(S12-YES)、次画素のレベル判定に移り(S13)、同レベルである間は入力画素の判定を次々に進める。このように同レベルの画素が継続する場合、メタパターンの検索・描画処理を一旦保留しておくので、描画データのフレームメモリ14への書き込み処理は。後述するようにまとめて行われることになる。
ステップS12で違うレベルの画素が判定される場合(S12-NO)、前画素のレベルに対応するメタパターンをキャッシュから検索し(S14)、検索したメタパターンを描画処理結果としてプリンタ10側に転送するためのバッファメモリに一時格納し、前画素までに同レベルの継続する画素があれば、これらの画素をまとめてフレームメモリ14へ書き込む“まとめ塗り”を行う(S15)。
描画処理の後、最終画素をオーバーしたかをチェックし(S16)、処理すべき画素が残っている場合、次画素のレベル判定を行うためのステップに戻す(S13,S12)。他方、最終画素をオーバーした場合には(S16-YES)、本フローの処理を終了する。
上記のように、描画処理時のフレームメモリ14のアクセスにおいて、入力画像 画素毎にメタパターンを検索し転送バッファメモリに書き込んでいては処理が遅くなるが、“まとめ塗り”により処理の高速化が可能になる。
【0047】
「実施形態21」
本実施形態は、上記「実施形態1」に基本形態を示した画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態1の画像描画処理装置1と同様の機能を実現するためのモジュールにおいて、擬似階調処理に用いられる誤差拡散処理法による描画処理を行うための手段を装備するとともに、誤差拡散処理法による処理を行う際に、描画処理全体としての処理コストをあまり上げることなく、誤差拡散処理を行うことを意図するものである。
誤差拡散処理法は、擬似階調という同様の目的で用いられるディザ処理法に比較して処理コストがかかる。これは、誤差拡散処理を行う場合、一般的にCMYKや RGBの各色 8bitで確保されたフレームメモリ等のメモリ上に描画処理結果を残しながら、その後の誤差拡散処理によって擬似階調処理を行うという処理プロセスをとるためである。
本実施形態では、上記実施形態12に示した描画オブジェクトごとに複数種のディザパターンを切り替えて使用する方式を採用することにより処理の高速化を図るようにしたディザリングによる描画処理を拡張するという形態で誤差拡散処理を適用する。
描画処理動作の手順としては、例えば図5の画像描画処理システムを例にすると、画像描画処理装置1,17を利用するプリンタドライバ5、プリンタ10は、描画処理依頼時に入出力インタフェースを介し、描画処理対象情報が含まれた内部コマンドを送出する。内部コマンドを受け取る画像描画処理装置1,17は、コマンドに含まれた描画処理対象情報を解析して描画オブジェクトの種類を求め、写真オブジェクトのみに対して誤差拡散を行い、それ以外のオブジェクトに対してはディザ処理を行うことで描画処理全体としての処理コストをあまり上げることなく、誤差拡散処理を行なうことを可能とする。
【0048】
図10は、本実施形態の描画処理のフローチャートを示す。図10を参照すると、画像描画処理装置1,17は内部コマンドの描画処理対象情報を解析して描画オブジェクトの種類を求めておき、擬似階調処理フローの開始時に、各種描画オブジェクトの中の写真オブジェクトのみに対して誤差拡散処理を適用するために、処理対象の描画オブジェクトがイメージ(写真)であるか否かをチェックする(S21)。
チェックの結果、イメージ(写真)オブジェクトである場合には(S21-YES)、誤差拡散法により原写真画像の中間調の濃度を持つ画素に対応する擬似階調の描画データを生成する処理を行う(S22)。
また、イメージ(写真)オブジェクト以外である場合には(S21-NO)、ディザパターンを用いた擬似階調の描画データを生成する。ディザ処理の場合には、描画オブジェクト種類ごとに適用するディザパターンを切り替えて使用するので、解析結果として得ている描画オブジェクト種別に応じたディザパターンを選択し(S23)、選択したパターンを用いてディザ処理を行う(S24)。
誤差拡散、ディザリングのいずれかの擬似階調の描画データの生成処理を終え、本描画データの生成処理フローを抜ける。
【0049】
「実施形態22」
本実施形態は、上記「実施形態21」に基本形態を示した画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、誤差拡散処理法による描画処理を行うための手段を用いる擬似階調の描画データの生成処理をバンド分割のように分割されたイメージに対して行う際に、正常な描画データを生成することを意図するものである。
実施形態21に示したイメージ(写真)オブジェクトに対する誤差拡散処理において、描画オブジェクトとなる写真イメージは、使用するアプリケーションやプリンタドライバ等の印刷制御装置によっては、描画オブジェクトを作成するための処理過程でワークメモリとして用いるメモリ上の制約等により1つの描画オブジェクトが複数のより小さなイメージ部分に分割されてしまう場合がある。バンド処理はその1例で、1ページを複数のバンドに分割して描画を行うプリンタシステムの場合は、一つの描画オブジェクトがバンドによって複数に区切られてしまう。
誤差拡散処理においては、二値化対象画素の前ラインに蓄積された誤差を使用して二値化を行なう周知の手法により擬似階調の描画データを生成する。この手法を用いて誤差拡散処理をする場合に、バンド分割のように元々一つのオブジェクトが分割されたままの形で処理対象とされると、それぞれが別個のオブジェクトとして処理・描画されてしまうために、前ラインの蓄積された誤差を使用することができない。これにより各分割イメージの接続点(ライン)上にスジが出てしまうような描画出力結果となってしまうという描画上の問題が発生する。
【0050】
そこで、本発明では1つの描画オブジェクトが複数のより小さなイメージ部分に分割された場合に分割されたイメージ部分の開始・終了のX座標を使用して誤差メモリを管理し、同一座標を持つ分割されたイメージ部分は元々同一オブジェクトであったように扱うことで1つのオブジェクトを正常に描画することができるようにする。
図11は、本実施形態における分割されたイメージ部分に対する操作を説明するものである。図11の(A)には、3分割されたオブジェクトを示し、分割された3つのイメージ部分を同一オブジェクトとして扱うようにする、元のオブジェクトを(B)に示している。
図11の(B)は元の一つのイメージ(写真)オブジェクトであり、ページ画像の一部として描画されるもので、ページ上の所定のXY座標位置を指定して描画が命令されるものであるから、図11の(A)に示される一つの写真オブジェクトから分割された各イメージ部分の分割位置の開始X座標:SXと終了X座標:EXは一致するはずである。この原理により、各イメージ部分のSXとEXを比較し、同一座標である場合にはそれらのイメージ部分が同一オブジェクトを分割したものである(イメージ部分が接続条件を満たす)と判断し、誤差拡散処理をする場合に一つの写真オブジェクトとして扱うようにして、他の分割イメージ部分に含まれる前ラインの蓄積された誤差を用いた処理を行うことにより、上記した分割イメージの接続点(ライン)上におけるスジの発生を回避する。
【0051】
「実施形態23」
本実施形態は、上記「実施形態22」に示した画像描画処理装置の改良に係わるものである。
上記実施形態22では、一つのオブジェクトから分割されたイメージ部分を対象にする誤差拡散処理法において、正常な擬似階調描画データを生成するための手段として、分割イメージ部分双方の分割位置の開始X座標:SXと終了X座標:EXの一致により一つの写真オブジェクトを判断し、1オブジェクトとして扱うようにする手段を用いる例を示した。しかしながら、実施形態22において採用した、分割イメージ部分の誤差メモリ管理に上記X座標を用いるだけでは、同じ幅を持った全く別個のオブジェクトが重なっていた場合に正常に描画することが出来ない場合が生じる可能性がある。
そこで、本実施形態では、元々一つのオブジェクトである各分割イメージ部分に対しては、画像描画処理装置1,17を利用する側(図5を例にすると、プリンタドライバ5或いはプリンタ10側)において、一つのオブジェクトを分割した各分割イメージ部分に対する描画処理を指令する内部コマンドに同一の オブジェクトID を付加して送信する。画像描画処理装置1,17側では、受信したコマンドを解釈し、同一のID を持つ分割イメージ部分だけを元々同一オブジェクトであったように扱うことで、分割されたイメージ部分、別の描画オブジェクトいずれの場合であっても正常な擬似階調描画データを生成することができる。図12は、本実施形態における分割イメージ部分及び別の単独オブジェクトに対する操作を説明するものである。図12の(A)には、2分割されたオブジェクトとこれらの分割イメージ部分とは別の単独オブジェクトを示し、(B)には、2分割イメージ部分が同一オブジェクトとして扱われる元のオブジェクトに統合された形を示している。
図12の(A)の分割イメージ部分として同一のID を持つ描画オブジェクトは、(B)に示すように統合されて一つの写真オブジェクトとして扱われ、図12の(A)に示される分割イメージ部分とは別の単独オブジェクトは、オブジェクトの分割位置の開始X座標:SXと終了X座標:EXは一致しても、オブジェクトIDが異なるので、統合されず単独オブジェクトとして扱われる。このようにして、実施形態22で起こり得る不適正な処理を回避することが可能になる。
【0052】
「実施形態24」
本実施形態は、上記「実施形態23」に示した画像描画処理装置の改良に係わるものである。
上記実施形態23では、分割イメージ部分を対象にする誤差拡散処理法において、正常な擬似階調描画データを生成するための手段として、分割イメージ部分双方の分割位置の開始X座標:SXと終了X座標:EXの一致と、オブジェクトIDの一致により分割イメージ部分の接続条件を判断し、1オブジェクトとして扱うようにする手段を用いる例を示した。本実施形態では、さらに分割イメージ部分の接続を正しく判断するための手段を付加するものである。
本実施形態では、オブジェクトID, X 座標(開始、終了)に加えて、二値化対象ラインの Y 座標を使用して分割イメージ部分の接続を判断して、誤差メモリの管理を行なうことで正常な誤差拡散処理を行うようにする。
ここで、接続を判断するために用いるY 座標は、先のX 座標のように分割イメージ部分同士の開始、終了座標双方を使用して管理するのではなく、前の分割イメージ部分の終了 Y 座標と後の分割イメージ部分の開始 Y 座標とを用いて管理を行なう。つまり、Y軸上で分割された分割イメージ部分に対しては、処理終了の Y 座標で誤差メモリ管理を行い、分割イメージ部分が次に処理される場合に、前に処理された分割イメージ部分の終了 Y 座標と、これから処理を行なう分割イメージ部分の開始Y座標を比較して接続するかどうか判別して(図13、参照)、一つのオブジェクトとして扱う場合に前の分割イメージ部分(前ライン)の誤差を用いることができるように誤差メモリの管理を行なうことによって、正常な描画処理を可能にする。
【0053】
「実施形態25」
本実施形態は、分割イメージ部分に対する誤差拡散処理を可能にする誤差メモリの管理手段を有する画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態22〜24において、分割イメージ部分の接続が判断され、1オブジェクトとして分割イメージ部分間で誤差メモリの管理を行うようにする際に、使用メモリを最小限で済ませることを意図するものである。
本実施形態の誤差拡散処理の誤差メモリ管理方法では、1オブジェクトから分割したイメージ部分と判断された分割イメージ部分に対し、前ラインの誤差メモリを1ライン分のみ確保し、各分割イメージ部分においてはこの誤差メモリを共有することで省メモリ化を行なうようにする。また、共有することで前ラインの蓄積誤差が接続されるイメージにそのまま伝播されることになり、誤差メモリをコピーするという操作やそのために余分なメモリ容量を必要とすることなく、目的とする正常な誤差拡散処理による描画データの生成を行うことが可能になる。図13は、本実施形態における分割イメージ部分に対する誤差メモリの操作を説明するものである。図13の(A)には、2分割されたオブジェクトとこれらの分割イメージ部分とは別の単独オブジェクトを示している(なお、ここでは、実施形態23に示した形態をとるものを例示している)。図13の(B)には、2分割イメージ部分が接続条件を満たす場合に、1ライン分の誤差メモリを共有する1オブジェクトとしてのメモリ管理を行うことを示している。
図13の(A)の分割イメージ部分として同一のID (図示では、ID=0)を持つ描画イメージ部分は、分割イメージ部分の分割位置の開始X座標:SXと終了X座標:EXが一致し、かつ前の分割イメージ部分の分割終了Y座標:EYと後のオブジェクトの分割開始Y座標:SY’の関係が接続条件(SY’= EY+1)を満たしているので、一つのオブジェクトとして扱われ1ライン分の誤差メモリを共有する。また、図13の(A)に示される分割イメージ部分とは別の単独オブジェクトは、オブジェクトの分割位置の開始X座標:SXと終了X座標:EXは一致しても、オブジェクトIDが異なるので、一単独オブジェクトとして扱われ、別の誤差メモリによる管理を行う。このようにして、分割イメージ部分に対し適正な誤差拡散処理を行う場合の誤差メモリの省メモリ化を可能にする。
【0054】
「実施形態26」
本実施形態は、分割イメージ部分に対し適正な誤差拡散処理を行う場合の誤差メモリの管理手段を有する画像描画処理装置の改良に係わるものである。
本実施形態の画像描画処理装置は、実施形態22〜25において、分割イメージ部分の誤差メモリの管理を行う際に、メモリ利用の効率化を図ることを意図するものである。
本実施形態の誤差メモリ管理方法では、バンディングを伴う描画データの生成処理のようにバンド単位で処理されるオブジェクトに対し誤差拡散処理を適用する場合、処理の終了したバンド内に閉じて存在する(即ち、次のバンドは別の描画オブジェクトとなる)描画オブジェクトの誤差メモリは、次のバンドで使用することは無い。現在行っている処理の誤差メモリで次のバンドで必要となるのは、バンドを跨いで分割される描画オブジェクトのみであるため、それ以外のオブジェクトについては必要がなくなる。従って、処理が終了したバンド内に存在するそのような描画オブジェクトの誤差メモリについては、バンド終了時に解放することで誤差蓄積に使用するメモリを削減し、メモリ領域を無駄に使用することをなくし、省メモリ化を図るようにする。
【0055】
「実施形態27」
本実施形態は、分割イメージ部分に対し適正な誤差拡散処理を行う場合の誤差メモリの管理手段を有する画像描画処理装置の改良に係わるものである。
本実施形態の画像描画処理装置は、実施形態26におけると同様に、分割イメージ部分の誤差メモリの管理を行う際に、メモリ利用の効率化を図ることを意図するものである。
本実施形態の誤差メモリ管理方法では、複数ページの印刷ジョブに対して誤差拡散処理を適用する場合、現在処理を行っているページで使用した誤差メモリは次のページに対する処理に使用することは無い。よって、処理が終了したページに存在する描画オブジェクトの誤差メモリについては、ページ終了時に解放することで誤差蓄積に使用するメモリを削減し、メモリ領域を無駄に使用することをなくし、省メモリ化を図るようにする。
【0056】
「実施形態28」
本実施形態は、複数のオブジェクトに対する誤差拡散処理を可能にする誤差メモリの管理手段を有する画像描画処理装置の改良に係わるものである。
本画像描画処理装置の特徴は、実施形態22〜27において、複数オブジェクトの誤差メモリの管理を行う際に、誤差メモリ利用時に行う検索の高速化を図ることを意図するものである。ページを構成する描画オブジェクトの中に誤差拡散処理の対象となるイメージ(写真)オブジェクトが複数存在する場合があるので、各オブジェクトにIDを付与して描画処理に必要なメモリ管理をする。
誤差メモリについても各描画オブジェクトをそのIDにより管理し、描画処理はライン単位で行うので、オブジェクト毎に確保した1ライン分の誤差メモリをリスト構造化するという管理方法がとられる。なお、バンド分割される場合、分割前の元々のオブジェクトIDによりオブジェクト毎に管理される。
誤差拡散法を用いるイメージ(写真)オブジェクトの描画処理では、ページ内のオブジェクトをライン毎に処理していくときに、同一オブジェクトを連続して描画する(バンド分割された場合を含めて)ことの方が多く、全く別の描画オブジェクトがランダムに描画されることはあまり無い。
このようなことから、本実施形態では、リスト構造により1ライン分の誤差メモリを管理する際に、新しい描画オブジェクトの処理が始まる毎に、確保した誤差メモリをリストの先頭に付加することで、リスト先頭に存在する直近に処理したオブジェクトの誤差メモリのアクセス時間を短くするようにして、次のラインにおけるオブジェクトの描画処理時に、誤差メモリの検索を高速に行うことを可能にする。
【0057】
「実施形態29」
本実施形態は、誤差拡散処理を行う描画オブジェクトに対してスキャンラインクリップが設定されている場合に描画処理の高速化を可能にする手段を有する画像描画処理装置に係わるものである。
本画像描画処理装置の特徴は、誤差拡散処理の対象となるイメージ(写真)オブジェクトがページ内に存在する描画ジョブにスキャンラインクリップが設定され、スキャンラインによりクリップされた描画部分以外を描画する必要がない場合に短い処理時間で済ませる処理手順にある。
本実施形態の手順としては、誤差拡散処理を行う描画オブジェクトに対してスキャンラインクリップが設定されていてオブジェクトの全てを描画する必要が無い場合、誤差拡散処理を行う前に(上記実施形態21に関して添付した図10の例では、例えば擬似階調処理の開始直後の手順として実行)クリップの処理を行なってクリップ範囲のみオブジェクトを切り出しておくことで、その後にクリップ範囲以外のオブジェクトに対して無駄な誤差拡散処理と描画を行う必要が無くなる。これにより描画処理の高速化を可能とする。
【0058】
「実施形態30」
本実施形態は、誤差拡散処理を行う描画オブジェクトに対して矩形クリップが設定されている場合に描画処理の高速化を可能にする手段を有する画像描画処理装置に係わるものである。
本画像描画処理装置の特徴は、誤差拡散処理の対象となるイメージ(写真)オブジェクトがページ内に存在する描画ジョブに矩形(XY座標により指示されたページ内の任意の矩形領域)クリップが設定され、クリップされた矩形描画領域以外の領域を描画する必要がない場合に短い処理時間で済ませる処理手順にある。本実施形態の手順としては、誤差拡散処理を行う描画オブジェクトに対して矩形クリップが設定されていてオブジェクトの全てを描画する必要が無い場合、誤差拡散処理を行う前に(上記実施形態21に関して添付した図10の例では、例えば擬似階調処理の開始直後の手順として実行)クリップの処理を行って矩形クリップ範囲内のみオブジェクトを切り出しておくことで、その後にクリップ範囲外のオブジェクトに対して無駄な誤差拡散処理と描画を行う必要が無くなる。これにより描画処理の高速化を可能とする。
【0059】
【発明の効果】
(1)請求項1の発明に対応する効果
画像描画処理装置を描画処理のジョブを作成する装置側及び処理した描画データを用い可視像化を行う出力装置側どちらへも接続することが可能な、或いは両者から独立したシステム要素としても用いることが可能なモジュール構成にしたので、開発コストが軽減され、上記のように異なるシステム構成で用いても、描画処理結果に相違が生じることがなく、信頼性の高い画像描画処理装置を提供することが可能になる。
(2)請求項2の発明に対応する効果
上記(1)の効果に加え、共通の処理関数のパラメータの設定を変えることにより異なる描画出力モードに対応する処理を行なうようにしたことにより、新たな開発を行うことなく、容易に仕様の変更に応えることが可能になる。
【図面の簡単な説明】
【図1】 本発明の実施形態に係わる画像描画処理装置の構成を示すブロック図である。
【図2】 本発明の実施形態に係わるプリンタシステムの構成を示すブロック図である。
【図3】 本発明の実施形態に係わるプリンタシステムの構成を示すブロック図である。
【図4】 本発明の実施形態に係わるプリンタシステムの構成を示すブロック図である。
【図5】 本発明の実施形態に係わるプリンタシステムの構成を示すブロック図である。
【図6】 本発明の実施形態に係わる画像描画処理装置の構成を示すブロック図である。
【図7】 単位パターンを繰り返して貼り付ける方式に用いるディザパターンの例を示す。
【図8】 ディザパターンデータのキャッシュ方式に関する説明図である。
【図9】 本発明の実施形態に係わる描画処理のフローチャートを示す。
【図10】 本発明の実施形態に係わる擬似階調処理のフローチャートを示す。
【図11】 開始、終了各X座標を接続条件として考慮した誤差拡散処理対象の分割されたイメージ部分に対する操作を説明する図である。
【図12】 オブジェクトIDを接続条件として考慮した誤差拡散処理対象の分割されたイメージ部分に対する操作を説明する図である。
【図13】 誤差拡散処理対象の分割されたイメージ部分に対する誤差メモリの管理形態を説明する図である。
【符号の説明】
1…画像描画処理装置、 2…入出力インタフェース、
3…描画処理部、 4…メモリ管理部、
5…プリンタドライバ、 6…ユーザインタフェース、
7…入出力インタフェース、 8…解釈部、
9…ワークメモリ、 10…プリンタ、
11…入出力インタフェース、 12…解釈部、
13…ワークメモリ、 14…フレームメモリ、
16…入出力インタフェース、 17…画像描画処理装置、
18…描画処理部、 19…メモリ管理部、
31…初期化部。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image drawing processing apparatus and an image processing system, and more particularly to a modularized image drawing processing apparatus that can be suitably used for drawing processing in a printer system, and image processing that configures the image drawing processing apparatus as a system element. About the system.
[0002]
[Prior art]
An image processing system comprising an image output control device such as a personal computer (PC) and an image output (printing) device whose output is controlled by the control device so that an example can be seen in a printing system using a printer today. Is widely used (see Patent Documents 1 to 5 below).
In such a printing system using a printer, a print job created by a printer driver of a PC is sent to the printer via a communication means such as a LAN and the printer side performs print output according to the job. Conventionally, target original image information requested to be printed by two methods is processed as print data, and print output is performed using the print data. The first is to perform all image processing in response to a print request from an application on the printer driver (that is, including drawing processing that generates drawing data used for print output), and the drawing data developed on the memory as a processing result at that time In the printer driver, the print request from the application is converted into an internal command (a command that can be understood by the receiving printer), and this command is transferred to the printer. In this method, a command is interpreted in the printer, and a drawing process according to the command is performed and output.
By the way, with respect to these two methods, in each printer driver and printer, which method is to be supported or which method is to be supported is determined as a specification, and equipment for that is provided. . Accordingly, the means for performing the drawing process may be provided only on the printer side (see Patent Document 2 below), but may be provided not only on the printer side but also on the printer driver side. Yes (see Patent Documents 1, 3 to 5 below), and the equipment is usually incorporated in a part of a PC system that operates the printer driver or in a processing / control system of the printer. This is the way it is done.
Of the following examples in which drawing processing is performed by both the printer driver and the printer, in Japanese Patent Application Laid-Open No. 2004-228688, an image is provided on the printer driver side on the premise that the printer side only includes drawing processing means performed in the YMCK color space. In order to guarantee the correctness of the image, a rendering processing means for performing in the RGB color space is provided. Patent Documents 3 to 5 basically include drawing processing means that enables the same print output by both the printer driver and the printer, and are optimized as a printing system from the viewpoint of load distribution, processing efficiency, and processing speed. Is intended.
[0003]
[Patent Document 1]
Japanese Patent Laid-Open No. 11-355588
[Patent Document 2]
Japanese Patent No. 2879933
[Patent Document 3]
Japanese Patent Laid-Open No. 2001-109598
[Patent Document 4]
Japanese Unexamined Patent Publication No. 2000-10742
[Patent Document 5]
JP 2002-169672 A
[0004]
[Problems to be solved by the invention]
However, when drawing processing means is incorporated in each PC or printer processing / control system that operates the printer driver, the processing / control system that the PC and printer individually have, even for performing the same drawing processing. The present situation is that development is performed separately considering the above conditions, which leads to an increase in development costs.
In addition, in the specification that can correspond to either of the two methods related to the drawing processing described above, the output result by two methods for the same print request from the application (for example, the drawing processing for one job is performed by a printer driver and a printer). There is a problem in that the output (when output is shared by each other) may be slightly different. This is considered to be caused by the difference between the respective drawing processing means that occurs as a result of performing the development separately as described above.
[0005]
The present invention relates to an image processing system comprising an image output control device (device for creating a job for performing image output for original image information) such as a PC and an image output (printing) device whose output is controlled by the control device. In view of the above-described problems of the prior art, the object (problem) of the image output control device (for example, a printer driver) or the image output (printing) device (without increasing the development cost) For example, an image drawing processing device as a component of the image processing system and an image processing that constitutes the image drawing processing device as a system element that does not cause a difference in processing output result regardless of which side of the printer is incorporated into the system To provide a system.
As a means for solving the above-described problems, in the present invention, the image output control device side and the image output (printing) device side can be used in common (or can be used as elements independent of both), A module configuration that can be connected via a communication interface and has an independent function is adopted in the image drawing processing device. However, when such a configuration is adopted, the processing speed decreases or the device scale increases. there is a possibility. Also, preparing a separate module for each different specification increases the development burden. The present invention suppresses such an undesired decrease in processing speed, expansion of the apparatus scale, or an increasing development burden, and increases the processing speed, downsizing the apparatus, and reducing the development burden. It is a further object to provide an apparatus.
[0006]
[Means for Solving the Problems]
  The invention of claim 1 is an image drawing processing device that generates drawing data based on received original image information and performs processing for sending the drawing data, receiving a job for the original image information, An input / output interface for sending drawing data, interpreting the received job, generating drawing data based on the original image information in accordance with the instructions, and processing for creating the drawing data to be sent to the device A drawing data processing unit, a drawing data processing unit, and a memory management unit that manages a memory used by the input / output interface for operation.PictureImage drawing processing deviceAnd receiving a print request and creating a print job for the original image information, connecting to the image drawing processing device via the input / output interface, connecting to the image output control device via an interface, The image output processing device is connected to the image drawing processing device via the input / output interface, and an image output device that visualizes the received drawing data is configured as a component, and the image output control device via the input / output interface The image processing system is characterized in that the requested drawing process is performed and the obtained processing result is transferred to the image output device via the input / output interface without returning to the image output control device.It is.
  According to a second aspect of the present invention, in the image drawing processing system according to the first aspect, the drawing data processing unit uses a common processing function and supports different drawing output modes by changing parameter settings of the function. An image drawing processing device characterized in that the processing is performed.
[0025]
DETAILED DESCRIPTION OF THE INVENTION
An image drawing processing apparatus and an image processing system according to the present invention will be described based on the following embodiments shown in the accompanying drawings.
In each of the embodiments described below, an image drawing processing apparatus and an image processing system (printer system) that includes the image drawing processing apparatus as system elements will be described by way of an example of drawing processing in a printer system as a preferred implementation target.
In the following “Embodiment 1”, a basic form of an image drawing processing apparatus will be described, and in “Embodiment 2” to “Embodiment 9”, an embodiment of a printer system configured by applying the image drawing processing apparatus is described. In “Embodiment 10” to “Embodiment 20”, an embodiment of an image drawing processing device obtained by improving the basic form of “Embodiment 1” will be described.
[0026]
Embodiment 1”
Here, a basic form of the image drawing processing apparatus will be described. The image drawing processing apparatus is a system element of an image processing system (printer system). The printer system basically has a communication interface for print jobs created by an image output control device (printer driver installed in a PC) that receives a print request from an application, as exemplified in the embodiments related to the printer system described later. Via the printer as an image output apparatus, and the printer performs print output according to the job. The image drawing processing apparatus forms a processing part for generating drawing data for print output included in the print job in this printer system, and expands the drawing data on the memory based on the original image information in accordance with the instruction of the print job. And means for performing processing for generating drawing data used for print output.
The features of this image drawing processing device can be used in common on the printer driver side and the printer side, and can be connected to the printer driver and printer via a communication interface so that they can be used as system elements independent of both. Adopting a module configuration with independent functions. Therefore, in this printer system, the drawing processing function for generating the drawing data is based on the idea that only the image drawing processing apparatus is provided, and therefore it is impossible for the printer driver and the printer to incorporate the drawing processing function.
By introducing such a concept, it is possible to configure a printer system that does not cause a difference in processing output results without causing an increase in development cost, which has been a problem, and can be used as a system element thereof. It is possible to provide an image drawing processing apparatus.
[0027]
FIG. 1 is a block diagram showing a configuration of an image drawing processing apparatus according to the present embodiment.
As shown in FIG. 1, the image drawing processing apparatus 1 includes an input / output interface 2, a drawing processing unit 3, and a memory management unit 4, and is configured as an independent functional module. The input / output interface 2 performs data input / output with a system element (for example, a printer driver or a printer) on the side using the image drawing processing apparatus 1. The drawing processing unit 3 develops drawing data on a memory based on original image information, such as binarization of input data, generates drawing data used for print output, and uses the drawing data based on the drawing data Process to create data to be sent to the system element. The memory management unit 4 manages a work memory used at the time of drawing processing and data transmission / reception processing. The image drawing processing apparatus 1 can be embodied by a module including a CPU, a memory, and an input / output interface for performing the above-described drawing processing and processing data transmission / reception operation according to a computer program.
[0028]
Embodiment 2”
In this embodiment, a printer system as an image processing system configured by applying an image drawing processing apparatus (Embodiment 1, 10 to 20) is shown. The system configuration example shown here is one in which an image drawing processing device is connected to the printer driver (image output control device) side.
FIG. 2 is a block diagram showing the configuration of the printer system of this embodiment. As shown in the figure, the printer driver 5 includes a user interface 6, an input / output interface 7, an interpreter 8, and a work memory 9. Since the image drawing processing apparatus 1 shown in the first embodiment is connected to the printer driver 5 side, these are connected via the input / output interfaces 7 and 2. The printer 10 also includes an input / output interface 11, an interpretation unit 12, a work memory 13, and a frame memory 14. The printer driver 5 and the printer 10 are connected via input / output interfaces 7 and 11.
In the system of the present embodiment in which the image drawing processing apparatus 1 is incorporated on the printer driver side, the printer driver 5 receives a print request from an application via the user interface 6 and interprets an instruction indicated in the print request by the interpretation unit 8. To do. Thereafter, the operation is performed according to the instruction content interpreted by the interpretation unit 8. That is, a drawing process is requested to the image drawing processing apparatus 1 via the input / output interfaces 7 and 2, and a drawing result is developed on the work memory 9 while using the image drawing processing apparatus 1 in response to the request. Process. At this time, the result of the drawing process is obtained as image data in a normal bitmap format as drawing data. Next, the interpretation unit 8 sends the drawing result together with a printer system internal command (a command that can be understood by the receiving printer) to the printer 10 via the input / output interfaces 7 and 11 as a print job. The printer interprets the instruction shown in the internal command accompanied by the image data sent via the input / output interface 11 by the interpreting unit 12, and uses the work memory 13 according to the instruction content interpreted by the interpreting unit 12 while using the frame memory. The drawing result is drawn in 14, and then data is sent to a print output unit (image output unit for visualizing) (not shown) via the input / output interface 11.
[0029]
Embodiment 3”
In this embodiment, another form of a printer system configured by applying the image drawing processing apparatus (Embodiment 1, Embodiments 10 to 20) is shown. The system configuration example shown here is one in which an image drawing processing device is connected to the printer (image output device) side. FIG. 3 is a block diagram showing the configuration of the printer system of this embodiment. As shown in the figure, a printer driver 5 and a printer 10 having the same components as those in the second embodiment are connected via input / output interfaces 7 and 11. In this embodiment, since the image drawing processing apparatus 1 shown in the first embodiment is incorporated on the printer 10 side, the image drawing processing apparatus 1 and the printer 10 are connected via the input / output interfaces 11 and 2.
In the system of the present embodiment in which the image drawing processing device 1 is incorporated on the printer side, the printer driver 5 receives a print request from an application via the user interface 6 and interprets an instruction indicated in the print request by the interpretation unit 8. However, since the drawing process is not performed on the printer driver side, the print request is converted into a printer system internal command, and the internal command with image data is sent to the printer 10 via the input / output interfaces 7 and 11 as a print job. On the printer 10 side, the interpreter 12 interprets an internal command of a print job sent via the input / output interface 11. Thereafter, the image drawing processing apparatus 1 is requested to perform the drawing process via the input / output interfaces 11 and 2 according to the instruction content of the interpreted command, and the image drawing processing apparatus 1 that performs the drawing process in response to the request is used. Drawing data obtained as image data in the normal bitmap format by drawing processing is developed in the frame memory 14. After the drawing result is written in the frame memory 14, data is sent to a print output unit (image output unit for visualizing) (not shown) via the input / output interface 11.
[0030]
Embodiment 4”
In this embodiment, another form of a printer system configured by applying the image drawing processing apparatus (Embodiment 1, Embodiments 10 to 20) is shown. The configuration example of the system shown here shows a system in which an image drawing processing apparatus is systematized in an equal relationship to either a printer driver (image output control apparatus) or a printer (image output apparatus).
FIG. 4 is a block diagram showing the configuration of the printer system of this embodiment. In the example shown in the figure, the image drawing processing apparatus 1 is commonly used, and the system is systematized in an equal relationship with the printer driver 5 and the printer 10, so that the second embodiment and the third embodiment are combined. That is, as shown in FIG. 4, the input / output interfaces 7 and 11 of the printer driver 5 and the printer 10 are connected to the input / output interface 2 of the image drawing processing apparatus 1. Also in this embodiment, the constituent elements of the printer driver 5 and the printer 10 are the same as those in the second and third embodiments.
In the system of the present embodiment in which the image drawing processing apparatus 1 is systematized in an equal relationship with the printer driver 5 and the printer 10, in addition to the operations described in the second and third embodiments, the printer driver 5 The drawing processing requested by the user via the input / output interfaces 7 and 2 is performed, and the obtained processing result is transferred to the printer 10 via the input / output interfaces 2 and 11 without returning to the printer driver 5. Can do. Therefore, the present invention can also be carried out by a mode that makes it possible to select which operation specific to the present embodiment or the operation of the second embodiment is used as the operation method.
As described above, the image drawing processing apparatus 1 is systematized in an equal relationship with the printer driver (image output control apparatus) and the printer (image output apparatus) so as not to be incorporated (exclusively) on either side. In this case, the image drawing processing device 1 may be implemented in a form mounted on an independent device such as a PC.
[0031]
Embodiment 5”
In this embodiment, another form of a printer system configured by applying the image drawing processing apparatus (Embodiment 1, Embodiments 10 to 20) is shown. The system configuration example shown here uses two image drawing processing devices, and allows the image drawing processing device to be connected to either the printer driver (image output control device) or the printer (image output device). Indicates what to do.
FIG. 5 is a block diagram showing the configuration of the printer system of this embodiment. In the example shown in the figure, the same image drawing processing devices 1 and 17 are connected to a printer driver 5 and a printer 10 to form a system, and the second and third embodiments are combined. Also in this embodiment, the components of the printer driver 5 and the printer 10 are the same as those in the second and third embodiments.
In the system of the present embodiment in which the image drawing processing apparatus 1 is systematized by connecting the same image drawing processing apparatuses 1 and 17 to the printer driver 5 and the printer 10, the operations described in the second and third embodiments are performed. In addition, as a unique operation, the image drawing processing device 17 on the printer 10 side performs the drawing processing requested by the image drawing processing device 1 on the printer driver 5 side via the input / output interfaces 7 and 2. The requested drawing process can be performed via the output interfaces 11 and 16. That is, part of the drawing process is performed using the image drawing processing apparatus 1, and the interpreter 8 of the printer driver 5 converts the processing result and the remaining drawing process request into an internal command. The printer 10 side interprets the remaining drawing processing request by the interpretation unit 12 and causes the image drawing processing device 17 to perform the necessary drawing processing according to the instruction content of the interpreted command. In the meantime, since the printer driver 5 can process the next print job, it is possible to simultaneously process a plurality of jobs in the system.
[0032]
Embodiment 6”
In this embodiment, an embodiment relating to an operation method for effectively extracting the functions of the printer system shown in the fifth embodiment will be described. The operation method of the system shown here is such that the drawing processing can be shared by the two image drawing processing devices 1 and 17, and the processing sharing of each drawing processing device is determined at a ratio according to the processing performance of the printer driver 5 and the printer 10. As a result, the processing efficiency is improved (processing time is shortened).
In the present embodiment, the sharing of processing is determined by the interpretation unit 8 of the printer driver 5 that receives a print request from an application. In addition, input / output interfaces 7 and 11 that can transmit information necessary for cooperation of processing when jobs are processed according to sharing determined by the printer driver side and the printer side are used. In this embodiment, the sharing is determined by the processing performance of the printer driver 5. Therefore, the interpreter 8 obtains the CPU operation clock (frequency), memory amount, disk capacity, etc. as information related to the PC processing performance on the printer driver side, and ranks the processing performance rank based on these values. (For example, by associating a numerical range with a rank as a criterion in advance, it is determined which rank the processing performance of the PC belongs to.) If the performance is high, many drawing processes are performed on the printer driver side. The image drawing processing apparatus 1 is used for processing, and the drawing processing result and the remaining processing are transferred to the printer 10 for processing. Here, if it is determined that the processing performance of the PC is low, the processing performed on the printer driver side is reduced, the processing performed on the image drawing processing device 17 on the printer side is increased, the drawing processing is performed there, and the entire job The drawing processing time is reduced. After the drawing process for the entire job is completed, the drawing data is output to an output device for visualizing the image (not shown).
[0033]
Embodiment 7”
In this embodiment, another embodiment relating to an operation method for effectively functioning the printer system of the fifth embodiment will be described. The operation method of the system shown here is intended to allow the drawing processing to be shared by the two image drawing processing devices 1 and 17 and to determine the processing sharing of each drawing processing device according to the type of the drawing command.
In the present embodiment, the sharing of processing is determined by the interpretation unit 8 of the printer driver 5 that receives a print request from an application. In addition, input / output interfaces 7 and 11 that can transmit information necessary for cooperation of processing when jobs are processed according to sharing determined by the printer driver side and the printer side are used. In the present embodiment, the assignment is determined according to the drawing command (type of drawing object, etc.). For this purpose, when the printer driver 5 receives a print request from the application and interprets the contents of the print request in the interpretation unit 8, the print command for the input image information to be printed included in the print request is analyzed. Here, the analysis result of the print command is obtained as a drawing command such as drawing of character data, drawing of graphic data, drawing of image data, etc. designated for the input image information.
The interpretation unit 8 designates the image drawing processing devices 1 and 17 on the printer driver 5 side and the printer 10 side, which are predetermined in association with the type of the drawing command, based on the acquired information indicating the type of the drawing command. Then, the designated processing device is determined to share the drawing process. For example, it is determined that character data drawing processing is performed by the image drawing processing device 17 on the printer 10 side, and image data drawing processing is performed by the image drawing processing device 1 on the printer driver 5 side. Data processed by each of the image drawing processing apparatuses 1 and 17 is transferred to the printer 10 via the input / output interface related to each of the image drawing processing apparatuses 1 and 17 and developed in the frame memory 14 in the printer. The drawing data is output to the output device that performs the above.
[0034]
“Eighth embodiment”
In this embodiment, another embodiment relating to an operation method for effectively functioning the printer system of the fifth embodiment will be described. The operation method of the system shown here is intended to allow the drawing processing to be shared by the two image drawing processing devices 1 and 17 and to determine the processing sharing of each drawing processing device according to the drawing unit.
In the present embodiment, the sharing of processing is determined by the interpretation unit 8 of the printer driver 5 that receives a print request from an application. In addition, input / output interfaces 7 and 11 that can transmit information necessary for cooperation of processing when jobs are processed according to sharing determined by the printer driver 5 side and the printer 10 side are used.
In the present embodiment, the assignment is determined according to the drawing unit. For this purpose, when the printer driver 5 receives a print request from an application and analyzes the contents of the print request in the interpretation unit 8, the drawing unit included in the print request is analyzed. Here, the image information input as a print job is composed of a page composed of a plurality of bands and a job composed of a plurality of pages. As a result of analyzing the print command, job unit, page unit, band unit, etc. It is possible to recognize the drawing unit.
The interpretation unit 8 designates which of the image drawing processing apparatuses 1 and 17 on the printer driver 5 side or the printer 10 side is used for the recognized drawing unit. In this case, the image drawing processing devices 1 and 17 on the printer driver 5 side and the printer 10 side may be designated in accordance with a drawing processing rule that predetermines a device for drawing processing in units of drawing. For example, when a rule is set such that the odd page rendering process is performed by the image rendering processing device 17 of the printer 10 and the even page is performed by the image rendering processing device 1 on the printer driver 5 side, for example, for each rendering unit. In accordance with the rule, an image drawing processing device for sharing the processing is designated. Data processed by each of the image drawing processing apparatuses 1 and 17 is transferred to the printer 10 via the input / output interface related to each of the image drawing processing apparatuses 1 and 17 and developed in the frame memory 14 in the printer. The drawing data is output to the output device that performs the above.
[0035]
Embodiment 9”
In this embodiment, another embodiment relating to an operation method for effectively functioning the printer system of the fifth embodiment will be described. The system operation method shown here enables the drawing processing to be shared by the two image drawing processing devices 1 and 17, and the processing sharing of each drawing processing device depends on the processing state (processing progress status) in the printer driver 5 and the printer 10. It is intended to be determined.
In the present embodiment, the sharing of processing is determined by the interpretation unit 8 of the printer driver 5 that receives a print request from an application. In addition, input / output interfaces 7 and 11 that can transmit information necessary for cooperation of processing when jobs are processed according to sharing determined by the printer driver 5 side and the printer 10 side are used.
In the present embodiment, the assignment is determined according to the processing state (processing progress status) in the printer driver 5 and the printer 10. For this purpose, the interpretation unit 8 of the printer driver 5 that receives the print request from the application grasps the processing state of the printer driver 5 itself and the processing state of the printer 10 that can be known through the input / output interfaces 7 and 11. There is a need.
In the interpretation unit 8, if there is a job to be processed in accordance with the grasped processing state in the printer driver 5 and the printer 10, the image drawing processing devices 1 and 17 provided in both the printer driver 5 and the printer 10 as much as possible. Work effectively to increase processing efficiency and speed.
The interpreter 8 on the printer driver 5 side performs subsequent drawing processing sharing processing according to the processing progress status of the printer 10 obtained via the input / output interfaces 7 and 11. In other words, if processing is possible on the printer 10 side, the printer 10 is made to share the processing immediately, and the job can be shared in the form of simultaneous processing together with the processing on the printer driver 5 side. For example, when the printer 10 is in the drawing process and is not in a command waiting state, the subsequent processing is performed on the printer driver 5 side until the processing of the printer 10 is released, and further, an error (door) is given to the printer 10. If there is an open, out of toner, etc., processing is performed on the printer driver 5 side until the error is resolved. When the processing is shared, the data processed by each of the image drawing processing apparatuses 1 and 17 is transferred to the printer 10 via the input / output interface related to each, and is expanded in the frame memory 14 in the printer. Then, drawing data is output to an output device for visualizing the image (not shown).
[0036]
Embodiment 10”
The present embodiment relates to an improvement of the image drawing processing apparatus whose basic form is shown in the above “Embodiment 1”.
The feature of the image drawing processing apparatus of this example is that a module having the same function as that of the image drawing processing apparatus of the first embodiment performs a new development when it is necessary to change specifications because drawing conditions are different. And a configuration that makes it possible to easily respond to changes in specifications.
FIG. 6 is a block diagram showing the configuration of the image drawing processing apparatus according to this embodiment. As shown in the figure, the image drawing processing apparatus 1 includes an input / output interface 2, a drawing processing unit 3, an initialization unit 31, and a memory management unit 4, and is configured as an independent functional module. The input / output interface 2 performs data input / output with a system element (for example, a printer driver or a printer) on the side using the image drawing processing apparatus 1. The drawing processing unit 3 develops drawing data on a memory based on original image information, such as binarization of input data, generates drawing data used for print output, and system elements on the side using this drawing data Processing to create the transmission data to. The initialization unit 31 sets initialization conditions regarding the resolution, depth (bit), and the like of an image output by a device that performs visualization such as an image forming unit of a printer in the drawing processing unit 3. The drawing processing unit 3 has a common method (common processing function) for each drawing output mode in a manner that does not depend on parameters such as output resolution and depth necessary for drawing, and is output from the initialization unit 31 as processing function parameters. Parameters such as resolution and depth are given, and it is possible to perform a drawing process corresponding to a change in specification in cooperation with the initialization unit 31. The initialization unit 31 is a means for determining a used dither pattern for performing a later-described dithering process included in the drawing process (embodiment 12) and creating an initialization metapattern (embodiments 13 to 18). Also works.
The memory management unit 4 manages a work memory used at the time of drawing processing and data transmission / reception processing. The image drawing processing apparatus 1 can be embodied by a module including a CPU, a memory, and an input / output interface for performing the above-described drawing processing and processing data transmission / reception operation according to a computer program.
[0037]
Embodiment 11”
The present embodiment relates to an improvement of the image drawing processing apparatus whose basic form is shown in the above “Embodiment 1”.
A feature of this image drawing processing apparatus is that a module for realizing the same function as that of the image drawing processing apparatus 1 of Embodiment 1 has a configuration that makes it unnecessary to have a work memory in the module. Thus, a memory area of an external device connected by the input / output interface is used as a work memory area used for the drawing process and the operation of the input / output interface, and the memory is managed for this purpose.
Therefore, in this embodiment, for example, when the image drawing processing apparatus 1 used in the system configuration of FIG. 5 is taken as an example, the printer driver 5 and the work memories 9 and 13 on the printer 10 side are used as work memory areas used by the image drawing processing apparatus 1. Use. When the printer driver 5 and the printer 10 request the image drawing processing device 1 to perform drawing processing, the printer driver 5 and the printer 10 secure work memory necessary for the drawing processing, and initialize the area and the memory operation (secure, release, etc.) function. The image is transferred to the image drawing processing apparatus 1. The memory management unit 4 of the image drawing processing apparatus 1 manages work memory secured in the printer driver 5 and the printer 10 based on the management information passed at this time. That is, the printer driver 5 and the printer 10 on the side using the image drawing processing apparatus 1 indirectly manage the memory used for the drawing process.
As described above, the image drawing processing apparatus 1 does not need to have a work memory necessary for drawing processing, and management by a memory operation function passed from the use side in order to use a memory area secured by the use side. Just do it.
[0038]
Embodiment 12”
The present embodiment relates to an improvement of the image drawing processing apparatus whose basic form is shown in the above “Embodiment 1”.
The feature of this image drawing processing apparatus is that a module for realizing the same function as the image drawing processing apparatus 1 of the first embodiment is equipped with means for performing drawing processing by dithering, and performs processing by dithering. A method of using a plurality of types of dither patterns when switching and using a plurality of types of dither patterns for each drawing object is adopted. The processing speed is increased by this method, and the image drawing processing apparatus 1 is used. To improve the performance of equipment when an independent functional module configuration is adopted.
In this embodiment, a printer driver that prepares a plurality of types of dither patterns used for dithering for each object corresponding to drawing objects such as photographs, characters, graphic fills, line drawings and the like to be drawn and receives a print request from an application The drawing object information analyzed by the interpretation unit 8 is acquired at the time of drawing processing, and the dither pattern corresponding to each drawing object is switched and used. As a procedure of the drawing processing operation, for example, when the image drawing processing devices 1 and 17 used in the system configuration of FIG. 5 are taken as an example, the printer driver 5 and the printer 10 using the image drawing processing devices 1 and 17 receive the drawing processing request. An internal command including drawing processing target information and dither pattern designation is sent via the input / output interface. Since the dither pattern used for each type of drawing object is determined in advance as the dither pattern designation information, the drawing processing object information is analyzed to determine the type of the drawing object, and the corresponding dither pattern designation information is obtained. Acquire it and specify it with an internal command. The image drawing processing devices 1 and 17 determine the dither pattern used in the internal command by the initialization unit 31 and perform dithering using the corresponding dither pattern in the drawing processing unit 3.
[0039]
Embodiment 13”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 12”.
A feature of the present image drawing processing apparatus is that the module of the image drawing processing apparatuses 1 and 17 shown in the twelfth embodiment uses a plurality of unit patterns connected to dither patterns used for dithering as drawing processing, and uses an expanded pattern size. In this way, it is possible to speed up the processing.
In the present embodiment, a dither pattern to be used has a rectangular size such as “4 × 4” or “6 × 12” (see FIG. 8 showing an example of “4 × 4”). . When such a dither pattern is used, a method of referring to the dither data on the memory for each pixel of the input image, generating a dither pattern, and drawing the processing result on the memory is repeated. Processing costs are high. Therefore, when it is possible to use the dither pattern by repeatedly pasting it, as in the case where pixels of the same density are continuous, a new pattern (hereinafter, this continuous The pattern is referred to as a “meta pattern”), and the processing cost is reduced by performing the dither pattern generation process using the meta pattern.
Here, the size of the meta pattern is 32 bits, and if it does not fit in 32 bits, a plurality of 32 bit meta patterns are connected in a list format. FIG. 7 illustrates this meta pattern. Here, an example in which the unit dither pattern is 4 bits and 6 bits is shown. Since the meta pattern size is 32 bits aligned, if the unit dither is 4 bits, the unit dither is repeated 8 times. If the unit dither is 6bits, connect multiple 32bits meta patterns and repeat the unit dither 16 times.
By performing dither processing using such a meta pattern, the processing speed can be increased.
[0040]
Embodiment 14”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 13”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the thirteenth embodiment, the dithering process is performed using the extension pattern (metapattern) as the dither pattern. The method of creating a meta pattern each time is inefficient. Therefore, in this image drawing processing apparatus, the meta pattern created by the method as shown in the thirteenth embodiment is temporarily stored in the cache memory, and the cached meta pattern is reused to improve the processing efficiency. It is intended to improve.
In this embodiment, when a meta pattern is created by the drawing processing unit 3 of the image drawing processing devices 1 and 17, the created meta pattern is stored in a cache area provided in a memory in the image drawing processing device. When a drawing request for the same meta pattern is made, the cached meta pattern is read and reused. In order to perform a cache operation for reusing such meta patterns, the memory management unit 4 of the image drawing processing apparatuses 1 and 17 performs cache management of the created meta patterns.
[0041]
“Embodiment 15”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 14”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the fourteenth embodiment, cache management of an extended pattern (meta pattern) is performed as a dither pattern. However, as a meta pattern used for drawing, drawing for photographs, characters, etc. It is necessary to prepare a plurality of patterns corresponding to objects and colors (for example, by four color components of KCMY). In such a case, the memory capacity required for the cache becomes considerably large. Therefore, the cache capacity is reduced by the following method.
There are multiple types of dither patterns in the meta patterns used for drawing, such as patterns according to drawing objects such as for photographs and characters as described above. Different dither patterns may be used for different components. However, the same dither pattern may be used for all four KCMY colors. In this case, if all the meta patterns for four KCMY colors are prepared in the cache memory, the memory is wasted. Therefore, in the cache initialization process of the meta dither pattern in the initialization unit 31, the dither pattern for each color is used according to whether or not it is necessary to use a different dither pattern for each color component color (for example, KCMY). In this case, the cache area for 4 colors is set to be used. When a dither pattern of a single color is used, all KCMY are set to use the same cache area to reduce the cache capacity.
[0042]
Embodiment 16”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 14”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the fourteenth embodiment, cache management of an extended pattern (meta pattern) is performed as a dither pattern, but the types corresponding to drawing objects and colors are used as drawing meta patterns. And a plurality of patterns of density (0 to 255) need to be prepared. In such a case, a huge memory capacity is required for the cache. Therefore, the cache capacity is reduced by the following method.
In this embodiment, when various dither patterns arranged in a matrix are used, the cache capacity is reduced by a method in which only a common row pattern is cached. For this purpose, the initialization unit 31 determines the pattern for each line of various dither patterns, and caches only the same line pattern to reduce the capacity used for the cache. FIG. 8 is a diagram for explaining a method of determining patterns for each line of various dither patterns and using data cached in the same line pattern. Referring to FIG. 8, a dither pattern having a color density level of 0 to 255 when the dither pattern to be used has a rectangular size of, for example, 4 × 4 is illustrated. Each line in the rectangular dither pattern is illustrated. In the figure, the level indicating the same line (row) pattern is shown for each (in this example, 4 lines), and the level having the same pattern for the color density level is indicated so that it can be understood which level is the same. Create a table as shown in. In the example shown here, the row pattern of the second line (row) of levels 10, 11, and 12 is the same, and as shown in the table created for the second line, levels 11 and 12 are the same pattern as level 10. Indicates that a cache pattern can be used.
By limiting the dither pattern to be cached in such a way that it is highly likely to be used, it becomes possible to reduce the cache capacity. Since the data required for the processing can be obtained by searching the same cached pattern without searching, it is possible to increase the processing speed.
[0043]
Embodiment 17”
The present embodiment relates to an improvement of the image drawing processing apparatus described in the above “Embodiment 16”.
In the modules of the image rendering processing apparatuses 1 and 17 shown in the sixteenth embodiment, only the common row pattern is cached between various meta patterns that are likely to be repeatedly used as the cached meta pattern. The memory is limited, and all common patterns cannot be cached, which may cause inconvenience. Therefore, it is possible to eliminate the inconvenience by the following method.
In the present embodiment, a method of initializing a cache memory area when a shortage occurs in the cache memory area is adopted. That is, when the cache memory becomes insufficient, the memory is once flushed and the cache memory is reconstructed. In this way, the size of the cache memory used in the image drawing processing devices 1 and 17 is made variable, and an appropriate cache memory capacity is secured according to the amount of work memory on the side using the image drawing processing devices 1 and 17. Therefore, it is possible to perform the drawing processing operation in the image drawing processing apparatuses 1 and 17 without inconvenience.
[0044]
Embodiment 18”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 14”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the fourteenth embodiment, if the memory area for caching the meta pattern is fixed to the initially set area, the cache memory area may be insufficient. In this case, it is possible to adopt a scheme in which the memory is once flashed in the image drawing processing devices 1 and 17 to reconstruct the cache memory (see Embodiment 17). Then, useless work of reinserting cached data may occur. Therefore, this problem can be solved by the following method.
In the present embodiment, the effective range of the cache can be switched as necessary. That is, the cache memory size in the image drawing processing apparatuses 1 and 17 is variable, and a predetermined timing at which the unit of drawing data changes from the side (printer driver 5 or printer 10 side) using the image drawing processing apparatuses 1 and 17 is set. Select and initialize with settings that allow the specified memory size to be used. That is, it is possible to change the effective range of the cache memory by intentionally reconstructing the image drawing processing apparatuses 1 and 17 from the side. For example, when the effective range is within the page, the cache memory is reconstructed at the top of the page drawing, and when the effective range is within the job, the reconstruction is performed at the top of the job. In the latter example, a cache can be used across a plurality of pages. If the memory size becomes insufficient during the initialization (reconstruction) intentionally performed from the side using the image drawing processing devices 1 and 17, the image drawing processing devices 1 and 17 side automatically. It may be possible to perform reconstruction.
[0045]
Embodiment 19”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 14”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the fourteenth embodiment, the meta pattern is cached and used for the drawing process, so that the processing speed is increased. If the transfer of the drawing data is not accelerated, the significance of adopting the cache is diminished. Therefore, it is possible to achieve the purpose by the following method.
In the dither processing using the meta pattern, as shown in the thirteenth embodiment, the cached pattern repeats the unit dither pattern for high-speed processing, and in this example, the pattern is a 32-bit pattern. On the other hand, access to the frame memory 14 for drawing the drawing data on the printer 10 side using the drawing processing result can be processed at a higher speed as the number of times is smaller. Therefore, writing to the frame memory 14 for each pixel of the input image every time , Processing slows down. Therefore, in the present embodiment, the cache memory is cached as a work memory area for transferring the drawing processing result so that the access to the frame memory 14 is drawn in every 32 bits as in the cached meta pattern. A work memory area of 32 bits size suitable for the meta pattern is secured, and the drawing process result is temporarily written in this work memory area, and when the 32 bits are accumulated, it is drawn in the frame memory 14, so that drawing process and drawing data transmission are called. A series of processing can be accelerated.
[0046]
Embodiment 20”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the “Embodiment 19”.
In the modules of the image drawing processing apparatuses 1 and 17 shown in the nineteenth embodiment, an area having a size corresponding to the cached meta pattern is secured as a work memory area for transferring the drawing processing result to the drawing data using side. However, the present embodiment intends to further speed up the series of processing of drawing processing and drawing data transmission in the nineteenth embodiment.
For this reason, in this embodiment, the data after drawing processing once held in the work memory area is held continuously while the color level (density) of the pixel input as a drawing target does not fluctuate. The processing is speeded up by “bundling” the same color (density).
FIG. 9 shows a flowchart of the drawing process of this embodiment. Referring to FIG. 9, at the start of the flow, the data in the buffer memory for transferring the drawing processing result to the printer 10 side using the drawing data is cleared and initialized (S11).
Thereafter, the color level (density) of the current pixel input as a drawing target is compared with the previous pixel to determine whether or not it is the same level (S12), and if it is the same level (S12-YES), The process proceeds to level determination (S13), and determination of input pixels is successively performed while the level is the same. When pixels of the same level continue in this way, the meta pattern search / drawing process is temporarily suspended, so the drawing data is written into the frame memory 14. As will be described later, it is performed collectively.
If a pixel of a different level is determined in step S12 (S12-NO), a meta pattern corresponding to the level of the previous pixel is retrieved from the cache (S14), and the retrieved meta pattern is transferred to the printer 10 side as a rendering process result. If there is a continuous pixel of the same level up to the previous pixel, “collective painting” is performed in which these pixels are collectively written to the frame memory 14 (S15).
After the drawing process, it is checked whether or not the last pixel has been exceeded (S16), and if there remains a pixel to be processed, the process returns to the step for determining the level of the next pixel (S13, S12). On the other hand, if the last pixel is exceeded (S16-YES), the processing of this flow is terminated.
As described above, in accessing the frame memory 14 at the time of rendering processing, searching for a meta pattern for each input image pixel and writing it to the transfer buffer memory slows down the processing, but “batch painting” speeds up the processing. It becomes possible.
[0047]
“Embodiment 21”
The present embodiment relates to an improvement of the image drawing processing apparatus whose basic form is shown in the above “Embodiment 1”.
The feature of this image drawing processing apparatus is that a module for realizing the same function as that of the image drawing processing apparatus 1 of the first embodiment includes means for performing drawing processing by an error diffusion processing method used for pseudo gradation processing. It is intended to perform the error diffusion process without significantly increasing the processing cost of the entire drawing process when performing the process based on the error diffusion processing method.
The error diffusion processing method has a higher processing cost than the dither processing method used for the same purpose of pseudo gradation. This means that when error diffusion processing is performed, generally, pseudo gradation processing is performed by error diffusion processing after the drawing processing result is left on a memory such as a frame memory secured by 8 bits for each color of CMYK and RGB. This is to take a processing process.
In the present embodiment, the drawing process by dithering, which is intended to increase the processing speed by adopting the method of switching and using a plurality of types of dither patterns for each drawing object shown in the above-described embodiment 12, is extended. Apply error diffusion processing in the form.
For example, in the case of the image drawing processing system in FIG. 5, the printer driver 5 and the printer 10 that use the image drawing processing apparatuses 1 and 17 use the input / output interface when drawing processing is requested. An internal command including processing target information is transmitted. The image drawing processing apparatuses 1 and 17 that receive the internal command analyze the drawing processing target information included in the command to obtain the type of the drawing object, perform error diffusion only on the photographic object, and perform processing on the other objects. In other words, by performing dither processing, error diffusion processing can be performed without significantly increasing the processing cost of the entire drawing processing.
[0048]
FIG. 10 shows a flowchart of the drawing process of this embodiment. Referring to FIG. 10, the image drawing processing devices 1 and 17 analyze the drawing processing target information of the internal command to obtain the type of drawing object, and at the start of the pseudo gradation processing flow, the pictures in the various drawing objects. In order to apply the error diffusion processing only to the object, it is checked whether or not the drawing object to be processed is an image (photograph) (S21).
If the result of the check is an image (photo) object (S21-YES), a process of generating pseudo-gradation drawing data corresponding to pixels having a halftone density of the original photo image by the error diffusion method is performed. (S22).
If the object is not an image (photo) object (S21-NO), pseudo-gradation drawing data using a dither pattern is generated. In the case of dither processing, since the dither pattern applied for each drawing object type is switched and used, a dither pattern corresponding to the drawing object type obtained as an analysis result is selected (S23), and the selected pattern is used. Dither processing is performed (S24).
The generation processing of the pseudo gradation grayscale data for either error diffusion or dithering is finished, and the processing flow for generating the main drawing data is exited.
[0049]
“Embodiment 22”
The present embodiment relates to an improvement of the image drawing processing apparatus whose basic form is shown in the above “Embodiment 21”.
The feature of this image drawing processing device is that it is normal when the pseudo-gradient drawing data generation processing using means for performing drawing processing by the error diffusion processing method is performed on an image divided like band division. It is intended to generate simple drawing data.
In the error diffusion processing for the image (photo) object shown in the twenty-first embodiment, a photographic image that becomes a drawing object is processed in the process for creating the drawing object depending on the printing control device such as an application and a printer driver to be used. There may be a case where one drawing object is divided into a plurality of smaller image portions due to restrictions on the memory used as a memory. Band processing is one example. In the case of a printer system that performs drawing by dividing one page into a plurality of bands, one drawing object is divided into a plurality of bands.
In the error diffusion process, pseudo-gradation drawing data is generated by a well-known method for binarization using an error accumulated in the previous line of the binarization target pixel. When error diffusion processing is performed using this method, if one object is originally processed in the form of being divided as in band division, each is processed and rendered as a separate object. In addition, the accumulated error of the previous line cannot be used. As a result, a drawing problem that a drawing output result that streaks appear on the connection point (line) of each divided image occurs.
[0050]
Therefore, in the present invention, when one drawing object is divided into a plurality of smaller image parts, the error memory is managed using the X coordinates of the start and end of the divided image parts, and the divided objects having the same coordinates are divided. By treating the image portion as if it were the same object, one object can be drawn normally.
FIG. 11 is a diagram for explaining an operation for a divided image portion in the present embodiment. FIG. 11A shows an object divided into three, and FIG. 11B shows an original object in which the three divided image portions are treated as the same object.
(B) in FIG. 11 is an original image (photo) object, which is drawn as a part of the page image, and a drawing is instructed by designating a predetermined XY coordinate position on the page. Therefore, the start X coordinate: SX and the end X coordinate: EX of the division position of each image portion divided from one photographic object shown in FIG. Based on this principle, SX and EX of each image part are compared, and if the coordinates are the same, it is determined that those image parts are obtained by dividing the same object (the image part satisfies the connection condition), and error diffusion is performed. When processing, it treats it as one photographic object and performs processing using the accumulated error of the previous line included in other divided image parts, so that the above connection point (line) of the divided image is Avoid streaking in
[0051]
“Embodiment 23”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “Embodiment 22”.
In the above-described twenty-second embodiment, in the error diffusion processing method for an image portion divided from one object, as a means for generating normal pseudo gradation drawing data, the start X of the divided positions of both divided image portions An example is shown in which one photographic object is determined by matching the coordinate: SX and the end X coordinate: EX and handled as one object. However, if only the X coordinate is used for the error memory management of the divided image portion employed in the twenty-second embodiment, it may not be possible to draw normally when completely separate objects having the same width overlap. It can happen.
Therefore, in the present embodiment, for each divided image portion that is originally one object, on the side using the image drawing processing devices 1 and 17 (on the side of the printer driver 5 or the printer 10 in FIG. 5 as an example). The same object ID is added to the internal command that directs the drawing process for each divided image part obtained by dividing one object. The image drawing processing devices 1 and 17 interpret the received command and treat only the divided image portion having the same ID as if it were originally the same object, so that either the divided image portion or another drawing object Even in this case, normal pseudo gradation drawing data can be generated. FIG. 12 illustrates operations for the divided image portion and another single object in the present embodiment. FIG. 12A shows an object divided into two and an individual object different from these divided image portions, and FIG. 12B shows a two-divided image portion integrated into the original object treated as the same object. Shows the shape.
Drawing objects having the same ID as the divided image portion of FIG. 12A are integrated and treated as one photographic object as shown in FIG. 12B, and the divided image portion shown in FIG. A single object different from the above is treated as a single object without being integrated because the object ID is different even if the start X coordinate: SX and the end X coordinate: EX of the object division position match. In this way, it is possible to avoid improper processing that may occur in the twenty-second embodiment.
[0052]
“Embodiment 24”
The present embodiment relates to an improvement of the image drawing processing apparatus shown in the above “embodiment 23”.
In the above embodiment 23, in the error diffusion processing method for the divided image portion, as the means for generating normal pseudo gradation drawing data, the start X coordinate: SX and end X of the divided positions of both the divided image portions An example is shown in which means for determining that the connection condition of the divided image portion is determined based on the coincidence of coordinates: EX and the coincidence of the object ID is used as one object. In the present embodiment, means for correctly determining the connection of the divided image portions is further added.
In this embodiment, in addition to the object ID and the X coordinate (start and end), the Y coordinate of the binarization target line is used to determine the connection of the divided image portion, and the error memory is managed to perform normal operation. Error diffusion processing is performed.
Here, the Y coordinate used to determine the connection is not managed using both the start and end coordinates of the divided image parts as in the previous X coordinate, but the end Y coordinate of the previous divided image part. And the start Y coordinate of the subsequent divided image part. In other words, for the divided image part divided on the Y axis, error memory management is performed with the Y coordinate at the end of processing, and when the divided image part is processed next, the divided image part processed before is processed. The end Y-coordinate and the start Y-coordinate of the divided image portion to be processed are compared to determine whether or not to connect (see FIG. 13), and the previous divided image portion (previous line) when treated as one object By managing the error memory so that the above error can be used, normal drawing processing can be performed.
[0053]
“Embodiment 25”
The present embodiment relates to an improvement of an image drawing processing apparatus having an error memory management means that enables error diffusion processing on divided image portions.
The feature of this image drawing processing apparatus is that in Embodiments 22 to 24, when connection of divided image portions is determined and error memory management is performed between divided image portions as one object, the memory used is minimized. It is intended to be done with.
In the error memory management method of the error diffusion processing of the present embodiment, only one line of error memory for the previous line is secured for the divided image portion determined as the image portion divided from one object, and in each divided image portion, This error memory is shared to save memory. In addition, by sharing, the accumulated error of the previous line is propagated as it is to the connected image, and the target normal operation can be performed without requiring the operation of copying the error memory and the extra memory capacity therefor. It is possible to generate drawing data by an error diffusion process. FIG. 13 illustrates the operation of the error memory for the divided image portion in this embodiment. FIG. 13A shows an object that is divided into two parts and a separate object that is different from these divided image portions (here, an example that takes the form shown in Embodiment 23 is shown as an example). ) FIG. 13B shows that memory management is performed as one object sharing an error memory for one line when the two-divided image portion satisfies the connection condition.
In the drawing image portion having the same ID (ID = 0 in the drawing) as the divided image portion in FIG. 13A, the start X coordinate: SX and the end X coordinate: EX of the divided position of the divided image portion match. In addition, since the relationship between the division end Y coordinate of the previous divided image portion: EY and the division start Y coordinate of the subsequent object: SY ′ satisfies the connection condition (SY ′ = EY + 1), it is treated as one object. Share line error memory. In addition, a single object different from the divided image portion shown in FIG. 13A has a different object ID even if the start X coordinate: SX and end X coordinate: EX of the divided position of the object match. It is treated as a single object and is managed by another error memory. In this way, it is possible to save the error memory when appropriate error diffusion processing is performed on the divided image portion.
[0054]
“Embodiment 26”
The present embodiment relates to an improvement of an image drawing processing apparatus having an error memory management means when appropriate error diffusion processing is performed on a divided image portion.
The image drawing processing apparatus of the present embodiment is intended to improve the efficiency of memory utilization when managing the error memory of the divided image portion in the twenty-second to twenty-fifth embodiments.
In the error memory management method of the present embodiment, when error diffusion processing is applied to an object processed in units of bands, such as drawing data generation processing accompanied with banding, it exists in a band that has been processed (closed). That is, the error memory of the drawing object is not used in the next band. In the error memory of the current processing, what is required for the next band is only a drawing object that is divided across the band, so other objects are not necessary. Therefore, with respect to the error memory of such a drawing object existing in the band for which processing has been completed, the memory used for error accumulation is reduced by releasing it at the end of the band, so that the memory area is not wasted. Try to save memory.
[0055]
“Embodiment 27”
The present embodiment relates to an improvement of an image drawing processing apparatus having an error memory management means when appropriate error diffusion processing is performed on a divided image portion.
As in the twenty-sixth embodiment, the image drawing processing apparatus of the present embodiment is intended to improve the efficiency of memory utilization when managing the error memory of the divided image portion.
In the error memory management method of the present embodiment, when error diffusion processing is applied to a print job of a plurality of pages, the error memory used in the currently processed page is not used for processing for the next page. . Therefore, for the drawing object error memory existing on the page where processing has been completed, the memory used for error accumulation is reduced by releasing it at the end of the page, so that the memory area is not wasted, and memory saving is reduced. Try to figure it out.
[0056]
“Embodiment 28”
The present embodiment relates to an improvement of an image drawing processing apparatus having error memory management means that enables error diffusion processing for a plurality of objects.
The feature of this image drawing processing device is intended to speed up the search performed when using the error memory when managing the error memory of a plurality of objects in the twenty-second to twenty-seventh embodiments. Since there are a plurality of image (photograph) objects that are subject to error diffusion processing in the drawing objects constituting the page, an ID is assigned to each object to manage the memory necessary for the drawing processing.
As for the error memory, each drawing object is managed by its ID, and drawing processing is performed in units of lines. Therefore, a management method is adopted in which the error memory for one line secured for each object is structured in a list structure. In the case of band division, each object is managed based on the original object ID before division.
In image (photo) object drawing processing using the error diffusion method, when the objects in the page are processed line by line, the same object is drawn continuously (including the case of band division). Often, there is not much that a completely different drawing object is drawn at random.
For this reason, in this embodiment, when managing the error memory for one line by the list structure, each time a new drawing object process starts, the reserved error memory is added to the head of the list, The access time of the error memory of the most recently processed object existing at the top of the list is shortened, so that the error memory can be searched at high speed when the object is drawn on the next line.
[0057]
“Embodiment 29”
The present embodiment relates to an image drawing processing apparatus having means for enabling high-speed drawing processing when a scan line clip is set for a drawing object to be subjected to error diffusion processing.
The feature of this image drawing processing device is that a scan line clip is set for a drawing job in which an image (photo) object to be subjected to error diffusion processing exists in the page, and it is necessary to draw a portion other than the drawing portion clipped by the scan line. If there is no, there is a processing procedure that can be completed in a short processing time.
As a procedure of this embodiment, when a scan line clip is set for a drawing object to be subjected to error diffusion processing and it is not necessary to draw all of the objects, before performing error diffusion processing (with respect to the above-described twenty-first embodiment). In the example of FIG. 10 attached, this is executed as a procedure immediately after the start of the pseudo gradation processing, for example. By performing clip processing and cutting out an object only in the clip range, an object other than the clip range is subsequently wasted. There is no need to perform error diffusion processing and drawing. This makes it possible to speed up the drawing process.
[0058]
“Embodiment 30”
The present embodiment relates to an image drawing processing apparatus having means for enabling high-speed drawing processing when a rectangular clip is set for a drawing object to be subjected to error diffusion processing.
A feature of this image drawing processing device is that a rectangular clip (arbitrary rectangular area in the page specified by the XY coordinates) clip is set for a drawing job in which the image (photo) object that is the target of error diffusion processing exists in the page. The processing procedure is such that when it is not necessary to draw an area other than the clipped rectangular drawing area, a short processing time is required. As a procedure of this embodiment, when a rectangular clip is set for a drawing object to be subjected to error diffusion processing and it is not necessary to draw all of the objects, before performing error diffusion processing (attached with respect to the above-described embodiment 21). In the example of FIG. 10, for example, the procedure is executed as a procedure immediately after the start of the pseudo gradation process.) Clip processing is performed to cut out an object only within the rectangular clip range, and then an object outside the clip range is wasted. It is no longer necessary to perform error diffusion processing and drawing. This makes it possible to speed up the drawing process.
[0059]
【The invention's effect】
(1) Effects corresponding to the invention of claim 1
  The image drawing processing device can be connected to both the device creating the drawing job and the output device using the processed drawing data to make the visible image, or used as a system element independent of both. Development module can be reduced, and even if used in different system configurations as described above, there is no difference in drawing processing results, and a highly reliable image drawing processing apparatus is provided. It becomes possible.
(2) Effects corresponding to the invention of claim 2
  In addition to the effect of (1) above, the specification can be easily changed without new development by changing the common processing function parameter settings to perform processing corresponding to different drawing output modes. It becomes possible to meet.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an image drawing processing apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of a printer system according to an embodiment of the present invention.
FIG. 3 is a block diagram illustrating a configuration of a printer system according to an embodiment of the present invention.
FIG. 4 is a block diagram illustrating a configuration of a printer system according to an embodiment of the present invention.
FIG. 5 is a block diagram showing a configuration of a printer system according to an embodiment of the present invention.
FIG. 6 is a block diagram illustrating a configuration of an image drawing processing apparatus according to an embodiment of the present invention.
FIG. 7 shows an example of a dither pattern used for a method of repeatedly pasting unit patterns.
FIG. 8 is an explanatory diagram relating to a cache method for dither pattern data.
FIG. 9 shows a flowchart of a drawing process according to the embodiment of the present invention.
FIG. 10 shows a flowchart of pseudo gradation processing according to an embodiment of the present invention.
FIG. 11 is a diagram for explaining an operation on a divided image portion to be subjected to error diffusion processing in consideration of start and end X-coordinates as connection conditions;
FIG. 12 is a diagram for explaining an operation for a divided image portion to be subjected to error diffusion processing in which an object ID is considered as a connection condition.
FIG. 13 is a diagram for explaining a management form of an error memory for a divided image portion to be subjected to error diffusion processing;
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Image drawing processor, 2 ... Input / output interface,
3 ... Drawing processing unit, 4 ... Memory management unit,
5 ... Printer driver, 6 ... User interface,
7 ... I / O interface, 8 ... Interpretation part,
9 ... Work memory, 10 ... Printer,
11 ... I / O interface, 12 ... Interpretation part,
13 ... Work memory, 14 ... Frame memory,
16 ... I / O interface, 17 ... Image drawing processing device,
18 ... drawing processing unit, 19 ... memory management unit,
31 ... Initialization unit.

Claims (2)

受け入れた原画像情報を基に描画データを生成し、該描画データを送出する処理を行う画像描画処理装置であって、原画像情報を対象にしたジョブを受信し、描画データを送信するための入出力インタフェースと、受信したジョブを解釈し、その指示に従い原画像情報を基に描画データを生成し、描画データの利用装置への送信データを作成する処理を行うための描画データ処理部と、描画データ処理部及び前記入出力インタフェースが動作に使用するメモリを管理するメモリ管理部を備えた画像描画処理装置と、
印刷要求を受け取り原画像情報を対象にした印刷ジョブを作成し、前記画像描画処理装置に前記入出力インタフェースで接続する画像出力制御装置と、
該画像出力制御装置にインタフェースで接続するとともに、前記画像描画処理装置に前記入出力インタフェースで接続し、受け取った描画データを用い可視像化を行う画像出力装置と、を要素としてシステムを構成し、
前記画像出力制御装置から入出力インタフェースを介して依頼された描画処理を行い、得られる処理結果を前記画像出力制御装置に戻さずに、入出力インタフェースを介して前記画像出力装置に転送することを特徴とする画像処理システム
An image drawing processing apparatus for generating drawing data based on received original image information and performing processing for sending the drawing data, for receiving a job for the original image information and transmitting drawing data An input / output interface, a drawing data processing unit for interpreting the received job, generating drawing data based on the original image information according to the instruction, and creating transmission data to the device using the drawing data; and images drawing processing apparatus having a memory management unit for managing the memory writing data processing unit and the output interface is used for operation,
An image output control device that receives a print request, creates a print job for the original image information, and connects to the image drawing processing device via the input / output interface;
An image output control device is connected to the image output control device through an interface, and is connected to the image drawing processing device through the input / output interface, and an image output device that visualizes the received drawing data is configured as a system. ,
The drawing process requested from the image output control device via the input / output interface is performed, and the obtained processing result is transferred to the image output device via the input / output interface without returning to the image output control device. A featured image processing system .
請求項1に記載された画像描画処理システムにおいて、前記描画データ処理部は、共通の処理関数を用い、該関数のパラメータの設定を変えることにより異なる描画出力モードに対応する処理を行うようにしたことを特徴とする画像描画処理装置The image drawing processing system according to claim 1 , wherein the drawing data processing unit uses a common processing function, and performs processing corresponding to different drawing output modes by changing parameter settings of the function . An image drawing processing apparatus .
JP2003009609A 2003-01-17 2003-01-17 Image drawing processing apparatus and image processing system Expired - Fee Related JP4367745B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003009609A JP4367745B2 (en) 2003-01-17 2003-01-17 Image drawing processing apparatus and image processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003009609A JP4367745B2 (en) 2003-01-17 2003-01-17 Image drawing processing apparatus and image processing system

Publications (2)

Publication Number Publication Date
JP2004216821A JP2004216821A (en) 2004-08-05
JP4367745B2 true JP4367745B2 (en) 2009-11-18

Family

ID=32899057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003009609A Expired - Fee Related JP4367745B2 (en) 2003-01-17 2003-01-17 Image drawing processing apparatus and image processing system

Country Status (1)

Country Link
JP (1) JP4367745B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5316012B2 (en) * 2009-01-16 2013-10-16 コニカミノルタ株式会社 Printing system, printing control apparatus, and printer driver program
JP5575064B2 (en) * 2011-06-24 2014-08-20 京セラドキュメントソリューションズ株式会社 Controller and image processing device

Also Published As

Publication number Publication date
JP2004216821A (en) 2004-08-05

Similar Documents

Publication Publication Date Title
US8861014B2 (en) Systems and methods for optimized printer throughput in a multi-core environment
JP4543340B2 (en) Image processing apparatus, image forming system, and program
US20040100656A1 (en) Image processing device, image processing method, program, and computer readable recording medium on which the program is recorded
JP3797013B2 (en) Image processing method, printing apparatus, image processing system, and recording medium
US8817032B2 (en) Systems and methods for framebuffer management
JP5268427B2 (en) Image forming apparatus and image forming system
US8526049B2 (en) Systems and methods for display list management
JP2000141811A (en) Printer system
JP4367745B2 (en) Image drawing processing apparatus and image processing system
JPH1131052A (en) Document processing system
JP2000035870A (en) Printing system and printer
JP2007125851A (en) Printing control apparatus, image forming method, and storage medium
JP2003323275A (en) Image drawing processing apparatus and image processing system
JP3907484B2 (en) Information processing apparatus, control method thereof, and program
JPH11305962A (en) Print processing apparatus, data processing method of print processing apparatus, and storage medium storing computer readable program
JP2003348313A (en) Image processing apparatus
JP4144293B2 (en) Image processing system
JP4467715B2 (en) Image output control apparatus and method
JP3700410B2 (en) Printer system and print control method
JP2004272485A (en) Image forming system
JP2013012935A (en) Image processing device, image processing method, program and recording medium
US7380069B2 (en) Method and apparatus for DMA-generated memory write-back
JP2004021925A (en) Image processing device
JPH09277656A (en) Printing equipment
JPH0789150A (en) Printer controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090414

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090612

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: 20090820

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090820

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: 20120904

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees