JP2004185533A - Print control unit - Google Patents

Print control unit Download PDF

Info

Publication number
JP2004185533A
JP2004185533A JP2002354707A JP2002354707A JP2004185533A JP 2004185533 A JP2004185533 A JP 2004185533A JP 2002354707 A JP2002354707 A JP 2002354707A JP 2002354707 A JP2002354707 A JP 2002354707A JP 2004185533 A JP2004185533 A JP 2004185533A
Authority
JP
Japan
Prior art keywords
cache
buffer
processing
color
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002354707A
Other languages
Japanese (ja)
Inventor
Tomoyuki Watanabe
知行 渡辺
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2002354707A priority Critical patent/JP2004185533A/en
Publication of JP2004185533A publication Critical patent/JP2004185533A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To effectively use a color processing cache in a color correction process and a color conversion process without stopping a printing process. <P>SOLUTION: The print control unit can cache generated printing data in a buffer area when carrying out a different color process with respect to display data, and the printing data which can be printed by a printing part is generated in the buffer area of predetermined volume. It is characterized by a configuration wherein a cache method determining part 212 calculates a buffer area to be secured for printing the printing data by a printer 230 and a buffer area needed by each cache means, buffer acquisition of the calculated buffer areas in the buffer area is attempted in accordance with determined acquisition priority, and enabling and disabling of cache with respect to each of a color correction processing means 214 and a color conversion processing means 215 is determined in accordance with an acquisition result. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、表示データに所定の色処理を施してプリンタが印刷可能な印刷データを生成処理する印刷制御装置に関するものである。
【0002】
【従来の技術】
従来、パソコンなどを含む印刷制御装置において、作成されたデータを接続されるプリンタで印刷する場合、各プリンタ特有のデータを作成するため、印刷制御装置内のメモリ手段に記憶されるプリンタドライバにおいて、画像に対してCRT等他の色空間からプリンタ色空間への変換を行う色補正処理、プリンタ色空間内での変換を行う色変換処理、量子化処理などの画像処理を施し、プリンタに最適なデータを送信するのが一般的である。
【0003】
これらの画像処理の中で、色補正処理と色変換処理は、その処理時間が全体の印刷時間に影響するため、様々な方法での高速化が図られているが、その高速化の一つの方法として色処理キャッシュがある。これは処理後のデータを保存し、その後同じ画像を処理する場合には処理を施す代わりに保存してあったデータを使用するといったものである。
【0004】
また、プリンタで記録を行う場合、PCを用いないで記録する需要も増えつつある。先ず、インターネットを身近に簡単に扱えるようにするシステムとしては、WebTV(登録商標)(テレビを使用してインターネットに接続するサービス)システムや、SetTopBox(インターネット接続などを利用するためにテレビに付設する端末機器)等の、一般のテレビにインターネット機能を付属させたシステムを挙げることができる。これらのいわゆるPCを用いない(Non−PC(NonPC機器))システムからのプリンタに対するプリントの需要も大きくなりつつある。
【0005】
【発明が解決しようとする課題】
しかしながら、上記従来例におけるキャッシュは、高速化の手段としては有効であるが、入力と出力を保存する領域、また効率を上げるために複数の保存領域を必要とするため、いわゆるパソコン以外のNonPC機器などのようにキャッシュとして使用可能な保存領域やメモリに制約を受けるデータ処理環境においては使用されないケースがあった。
【0006】
これは印刷処理実行時にキャッシュ用の領域を確保できないことにより、印刷処理そのものが実行できなくなってしまう可能性があるため、キャッシュを常に無効として動作させるシステムとなっているためである。
【0007】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成する際に、該生成した印刷データを前記バッファ領域上にキャッシュ可能な印刷制御装置において、印刷部で前記印刷データを印刷するために確保すべきバッファ領域と、それぞれのキャッシュ手段が必要とするバッファ領域を計算し、該計算されたバッファ領域を決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試み、該取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定することにより、印刷制御装置本体が備える有限なメモリ上で使用可能バッファが少ない機器であって、印刷処理を中止することなく、また色補正処理及び色変換処理における色処理キャッシュを効率的に使用することが可能な印刷データ作成処理環境を構築できる利便性に優れた印刷制御装置を提供することを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成する本発明の印刷制御装置は以下に示す構成を備える。
【0009】
本発明は、表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段(例えば図2に示す色補正処理手段214,色変換処理手段215)と、各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段(例えば図2に示す色補正キャッシュ処理部2141,色変換キャッシュ処理部2151)と、前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、各バッファ領域に対する取得優先順位を決定する優先順位決定手段(例えば図2に示すキャッシュ方法決定部212)と、前記優先順位決定手段により決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得手段(例えば図2に示すキャッシュ方法決定部212)と、前記バッファ取得手段による取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定するキャッシュ決定手段(例えば図2に示すキャッシュ方法決定部212)とを有することを特徴とする。
【0010】
【発明の実施の形態】
〔第1実施形態〕
以下、添付図面に従って本発明に係わる実施形態を詳細に説明する。
【0011】
図1は、本発明の一実施形態を示す印刷制御装置とその周辺機器との構成を説明するブロック図である。
【0012】
図1に示すように本発明の実施形態に係わる印刷制御装置は、後述する本発明の機能を含んだプリンタドライバが存在する印刷制御装置101、及び保存領域105、入力装置103、CRT102、及びプリンタ104を備えるハードウエア構成となっている。
【0013】
図2は、図1に示した印刷制御装置101とプリンタ104との詳細構成を説明するブロック図である。
【0014】
図2に示す印刷制御装置210内には、プリンタドライバ211、データ送信部219、保存領域220等が存在する。
【0015】
また、プリンタドライバ211内には、キャッシュ方法決定部212、印字画像入手部213、色補正処理手段214、色変換処理手段215、量子化部216、印字データ作成部217が存在する。
【0016】
一方、図2に示すプリンタ230は、データ受信部231、データ印字部232等で構成されている。また、印刷制御装置210とプリンタ230は、UBS、パラレル、ネットワークなどのインターフェースで接続されている。
【0017】
また、色補正処理手段214内には、色補正処理部2140と色補正キャッシュ処理部2141が存在し、色変換処理手段215内には、色変換処理部2150と色変換キャッシュ処理部2151が存在する。
【0018】
上記構成を詳述すると、プリンタドライバ211では、まず前処理として後述するキャッシュ方法決定部212により色処理及び色変換用キャッシュを使用するか否かを決定する。
【0019】
次に、実際の印刷処理が開始されると、印字画像入手部213において印字対象となる画像を入手し、本画像に対し色補正処理手段214を実行する。色補正処理手段214は色補正処理部2140と色補正キャッシュ処理部2141によって構成され、色補正キャッシュが無効な場合、もしくは有効であっても対象画素がキャッシュされていない場合においては、色補正処理を実行する。
【0020】
次に、色変換処理手段215は、色変換処理部2150と色変換キャッシュ処理部2151で構成され、色補正の場合と同様に処理が実行される。色変換処理を通過したデータは量子化部216により、誤差拡散処理やディザ処理を施され、プリンタが扱える量子化後のデータに変換された、印字データ作成部217によりプリンタ印字データに変換された後に、印字データ出力部218を介してプリンタに送信される。
【0021】
また、色補正キャッシュ処理部2141及び色変換キャッシュ処理部2151は後述するキャッシュテーブルを保存領域220内に蓄えて使用するものである。
【0022】
一方、プリンタ230内のデータ受信部231は、印刷制御装置210内のデータ送信部219から送信されてデータを受信し、データ印字部232を使用して印字を行う。以上が本印刷制御装置に係わるハードウエア内の動作処理の詳述である。
【0023】
図3は、図2に示したプリンタドライバ211によるデータ処理状態を説明する図である。
【0024】
図3に示すように、印字画像は、主走査方向に複数ラインのソースデータとして分割される。なお、本ソースデータは、各画素NビットのRGBデータであり、色補正処理部2140を介してMビットR’G’B’データに変換される。
【0025】
色補正処理部2140では、CRT等出力プリンタ以外のデバイス空間の値をプリンタ230における色再現空間内に変換する処理であり、本変換には一般的な公知技術である補間処理等を使用する。
【0026】
次に、MビットR’G’B’データは、色変換処理部2150を介してLビットCMYKデータに変換される。色変換処理部2150は、RGBデータをプリンタ230の印字色であるCMYK等の色空間に変換するものであり、本変換にも一般的な公知技術である補間処理等を使用する。
【0027】
変換されたLビットCMYKデータは誤差拡散処理、ディザ処理等の量子化処理部216を用いて、プリンタ230に最適なKビットCMYKデータに変換され、印字データ作成部217において、プリンタ230用のコマンドに変換されプリンタ230に送信されるのである。
【0028】
図4,図5は、図2に示した色補正キャッシュ処理部2140におけるキャッシュ処理状態を説明する図であり、図4は、キャッシュテーブルTA1へのデータ登録処理に対応し、図5は、キャッシュテーブルTA1へのデータの検索処理に対応する。なお、キャッシュテーブルTA1は、識別情報(ID),RGB値,R’G’B’値とから構成されている。
【0029】
図4において、NビットRGBデータは上述した色補正処理によりMビットR’G’B’データに変換される。この処理時に図4に示すように、保存領域220上にキャッシュ領域を確保し、処理前のRGB値と処理後のR’G’B’値を保存する。これによりキャッシュテーブルTA1への登録が行われる。
【0030】
次に、キャッシュテーブルTA1を使用する場合、例えば図5に示すように、任意の画素に対し色補正処理を行う場合、まずキャッシュテーブルTA1領域内を検索し、既に同じ画素のRGB値が登録されている場合は、登録されている対応するR’G’B’値をキャッシュテーブルTA1から入手し、色補正処理部2140を行う代わりに、本結果を処理結果とすることで、色補正処理部2140が行わずとも処理結果を取得することが可能である。
【0031】
以上が本印刷制御装置におけるキャッシュ処理例であるが、本キャッシュ処理は一例であり他のバッファを使用する形態のキャッシュ処理にも、本件は有効である。
【0032】
次に図6を参照して、図2に示したキャッシュ方法決定部212で使用されるバッファの獲得優先順位決定方法について説明する。
【0033】
図6は、本発明に係る印刷制御装置における表示対印刷の色空間を説明する図である。
【0034】
まず、図6の(a)に示すように、モニタ(図1に示した例えばCRT102)で再現可能な色空間を表す再現色可能領域は、プリンタ230で再現可能なそれよりも広い領域となっている。
【0035】
しかし実際に印刷を行う場合は、プリンタ230で再現可能な領域外のデータもその対象となる可能性があるため、図6の(b)に示すように、モニタの再現可能色領域をプリンタ230の再現可能色領域内で再定義を行う必要がある。これが色補正処理部2140となる。
【0036】
一方、図6の(c)に示す処理が色変換処理部2150であり、本処理はプリンタ230の再現可能色領域内での変換を行うが、例えばモニタがRGB空間で表現されているのに対し、プリンタ230はCMYK空間で表現されているため空間の変換が必要となり、本処理を実行するものである。
【0037】
以上の処理の違いにより、色補正処理部2140と色変換処理部2150では、対象となる色数に違いが発生し、色補正処理部2140の方が対象色数が多いこととなるのである。
【0038】
本特性を利用して、それぞれのキャッシュが利用するバッファの獲得優先順位を示したものが図7である。
【0039】
図7は、図2に示したキャッシュ方法決定部212で使用されるバッファの獲得優先順位決定方法を説明する図である。
【0040】
なお、上述したように色補正処理は色変換処理よりも対象色が多くなるため、処理に入力される色数の組み合わせが色変換のそれよりも多いものとなる。色補正処理用キャッシュと色変換処理用キャッシュに登録可能な対象色数を同じとした場合、色変換処理の方がキャッシュにヒットする可能性が高いことになる。
【0041】
そこで、本特性を生かし、図7に示すように色変換用キャッシュバッファと色補正用キャッシュバッファでは、そのヒット率から色変換用キャッシュバッファの獲得優先順位を高く位置付けることが可能である。
【0042】
一方、印刷処理に必須なバッファは、本領域が確保できない場合は印刷処理の実行もしくは継続が行えない。このため本バッファの獲得優先度を最も高く位置付けることが可能である。以上のことから、バッファの獲得優先順位を示したものが図7となる。
【0043】
図8,図9は、図2に示したキャッシュ方法決定部212によるキャッシュ方法決定処理の決定例を説明する図である。以下、図8は、理論的に可能な例であり、図9は、図7に示すバッファの獲得優先順位に従って選択される例である。以下、キャッシュ方法決定部の処理を、使用するバッファ量の観点から説明する。
【0044】
図8において、No.1のケースでは、使用可能バッファ量が、例えば800KBであるのに対し、印刷処理に必須なバッファ量が1MBであるため、印刷処理を行うことができない。
【0045】
また、No.2のケースでは、使用可能バッファ量が1.2MBであるため、印刷処理は実行可能であるが、色補正及び色変換用キャッシュバッファ量を確保することができない。このためキャッシュを使用せずに印刷を行うこととなるのである。
【0046】
また、No.3及びNo.4のケースでは、印刷処理に必須なバッファ及び、色補正もしくは色変換どちらかのキャッシュ用のバッファの確保が行える。これらのケースではどちらかのキャッシュを使用可能として処理を行うことが可能である。
【0047】
更に、No.5のケースでは全てのバッファの確保が可能であり、色補正及び色変換のキャッシュを使用して印刷処理の実行が可能である。
【0048】
しかしながら、No.3及びNo.4のケースは両立がありえないため、上述した図7に示した色補正キャッシュと色変換キャッシュ用バッファの獲得優先順位に従い、図9に示すようにNo.4のケースを選択することとなる。
【0049】
以上がキャッシュ方法決定部212で使用されるバッファの獲得優先順位決定方法である。
【0050】
次に、上記の如く構成された本発明の実施形態に係る印刷制御装置において、図2のキャッシュ方法決定部212における処理を、図2、図6を参照しながら詳細に説明する。
【0051】
図10は、本発明に係る印刷制御装置における第1のデータ処理手順の一例を示すフローチャートであり、図2に示したキャッシュ方法決定部212によるデータ処理手順に対応する。なお、S601〜S610は各ステップを示す。
【0052】
キャッシュ方法決定部212は、ステップS601において、まずキャッシュ以外に印刷に必須なバッファ量を計算し、この値をiとする。なお、本バッファ量は印刷処理に必要な全てのバッファ量の合計である。
【0053】
次に、ステップS602において、ステップS601において計算したバッファ量iの取得を試みる。これはバッファ量iが上述した優先順位に従い、最も優先順位の高いバッファであることによるものである。
【0054】
ここで、バッファ量iが取得可能でなければ終了処理に進み、印刷処理を中止する。これはバッファ量iが印刷に必須なバッファ量であるため、取得できない場合は印刷の継続が行えないためである。
【0055】
一方、ステップS602で取得可能であると判断した場合は、バッファを取得し、ステップS603に進み、色変換キャッシュに必要なバッファ量を計算し、その値をバッファ量jとする。
【0056】
同様に、ステップS604において、色補正キャッシュに必要なバッファ量を計算し、その値をバッファ量kとし、ステップS605に進む。
【0057】
そして、ステップS605では、上述した優先順位に従い、2番目に高い優先順位を持つ色変換キャッシュに必要なバッファ量jの取得を試みて、バッファ量jが取得できた場合には、ステップS606に進み、色変換キャッシュを有効とし、ステップS608に進む。
【0058】
一方、ステップS605で、バッファ量jを取得できないと判断した場合は、ステップS607に進み、色変換キャッシュを無効とし、同様にステップS608に進む。以上で色変換キャッシュの使用形態が決定される。
【0059】
次に、ステップS608において、ステップS604で計算した色補正キャッシュに必要なバッファ量kの取得を試みる。なお、バッファ量kの値は最も優先順位の低いバッファとなっている。ここで、バッファ量kが取得できたと判断した場合は、ステップS609において、色補正キャッシュを有効としキャッシュ方法決定部の処理を終了する。
【0060】
一方、ステップS608で、取得できないと判断した場合は、ステップS610において、色補正キャッシュを無効として、キャッシュ方法決定部の処理を終了する。
【0061】
以上がキャッシュ方法決定部212の処理であるが、本処理によりバッファが取得できない場合の状況に合わせて、色変換、色補正それぞれのキャッシュの動作状況を独立に指定可能とする。
【0062】
図11は、本発明に係る印刷制御装置における第2のデータ処理手順の一例を示すフローチャートであり、図2に示した色補正キャッシュ処理部2141と色変換キャッシュ処理部2151による処理手順に対応する。なお、S901〜S904は各ステップを示す。
【0063】
まず、ステップS901において、図2のキャッシュ方法決定部212により決定したキャッシュが使用可能か否かのチェックを行い、キャッシュが使用可能であると判断した場合は、ステップS902に進み、使用可能でないと判断した場合はステップS904に進む。
【0064】
そして、ステップS902では、実際にキャッシュテーブル内の検索を行い、キャッシュ名内に既に同じ画素データがキャッシュされている(キャッシュヒット)か否かを判断して、ヒットしたと判断した場合は、ステップS903に進み、キャッシュテーブル内から処理結果を入手して、処理を終了する。
【0065】
一方、ステップS902において、キャッシュ内に同じ画素データがキャッシュされていないと判断した場合は、ステップS901と同等にステップS904に進み、実際の色補正処理を実行し処理結果を入手して、処理を終了する。
【0066】
なお、本実施形態では、色補正処理手段214の色補正キャッシュ処理部2141、色変換処理手段215の色変換キャッシュ処理部2151とが共に本処理を実行することで、キャッシュの使用可能状況に従ってキャッシュを実行する。
【0067】
上記実施形態によれば、取得可能なバッファ量に併せて色処理用キャッシュバッファを取得することで、使用可能バッファ領域が少ないNonPC機器などの環境においても、印刷処理を中止することなく、また色補正処理及び色変換処理における色処理キャッシュを効率的に使用することで処理の高速化が可能となる。
【0068】
図12は、図10,図11に示すデータ処理手順をプログラムとして記録した記憶媒体の記憶内容の構成例を示す説明図である。
【0069】
本発明の記憶媒体は、例えばボリューム情報1201、ディレクトリ情報1202、プログラム実行ファイル1203などの記憶内容で構成される。
【0070】
以下、図13に示すメモリマップを参照して本発明に係る印刷制御装置で読み出し可能なデータ処理プログラムの構成について説明する。
【0071】
図13は、本発明に係る印刷制御装置で読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0072】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0073】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0074】
本実施形態における図10,図11に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0075】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0076】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0077】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROM,EEPROM等を用いることができる。
【0078】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0079】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0080】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0081】
本発明の様々な例を実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではなく、以下の実施態様も含まれることはいうまでもない。以下、その実施態様1〜20について説明する。
【0082】
〔実施態様1〕
表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段(例えば図2に示す色補正処理手段214,色変換処理手段215)と、各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段(例えば図2に示す色補正キャッシュ処理部2141,色変換キャッシュ処理部2151)と、前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、各バッファ領域に対する取得優先順位を決定する優先順位決定手段(例えば図2に示すキャッシュ方法決定部212)と、前記優先順位決定手段により決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得手段(例えば図2に示すキャッシュ方法決定部212)と、前記バッファ取得手段による取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定するキャッシュ決定手段(例えば図2に示すキャッシュ方法決定部212)とを有することを特徴とする印刷制御装置。
【0083】
〔実施態様2〕
前記複数の色処理手段は、キャッシュが有効な場合にキャッシュを使用して色処理を実行し、キャッシュが無効である場合にはキャッシュを使用せずに色処理を実行することを特徴とする実施態様1記載の印刷制御装置。
【0084】
〔実施態様3〕
前記取得優先順位決定手段は、印刷処理に必須なバッファ量、色補正処理キャッシュ用バッファ、色変換処理キャッシュ用バッファの優先順位を決定することを特徴とする実施態様1記載の印刷制御装置。
【0085】
〔実施態様4〕
前記取得優先順位決定手段は、色補正処理キャッシュ用バッファと色変換処理キャッシュ用バッファの優先順位を、そのヒット率により決定することを特徴とする実施態様1または3記載の印刷制御装置。
【0086】
〔実施態様5〕
表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段(例えば図2に示す色補正処理手段214,色変換処理手段215)と、各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段(例えば図2に示す色補正キャッシュ処理部2141,色変換キャッシュ処理部2151)と、前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算手段(例えば図2に示すキャッシュ方法決定部212)と、各バッファ領域に対する取得優先順位を決定する優先順位決定手段(例えば図2に示すキャッシュ方法決定部212)と、前記優先順位決定手段により決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得手段(例えば図2に示すキャッシュ方法決定部212)と、前記バッファ取得手段による取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定するキャッシュ決定手段(例えば図2に示すキャッシュ方法決定部212)とを有することを特徴とするプリンタドライバ。
【0087】
〔実施態様6〕
前記複数の色処理手段は、キャッシュが有効な場合にキャッシュを使用して色処理を実行し、キャッシュが無効である場合にはキャッシュを使用せずに色処理を実行することを特徴とする実施態様5記載のプリンタドライバ。
【0088】
〔実施態様7〕
前記取得優先順位決定手段は、印刷処理に必須なバッファ量、色補正処理キャッシュ用バッファ、色変換処理キャッシュ用バッファの優先順位を決定することを特徴とする実施態様5記載のプリンタドライバ。
【0089】
〔実施態様8〕
前記取得優先順位決定手段は、色補正処理キャッシュ用バッファと色変換処理キャッシュ用バッファの優先順位を、そのヒット率により決定することを特徴とする実施態様5または7記載のプリンタドライバ。
【0090】
〔実施態様9〕
表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段と、各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段とを備える印刷制御装置における印刷制御方法であって、前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算ステップ(図10に示すステップS601)と、それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算ステップ(図10に示すステップS603,S604)と、各バッファ領域に対する取得優先順位を決定する優先順位決定ステップと、前記優先順位決定ステップにより決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得ステップ(図10に示すステップS605)と、前記バッファ取得ステップによる取得結果に従いぞれぞれのキャッシュステップに対するキャッシュの有効及び無効を決定するキャッシュ決定ステップ(図10に示すステップS606〜S609)とを有することを特徴とする印刷制御方法。
【0091】
〔実施態様10〕
前記複数の色処理手段は、キャッシュが有効な場合にキャッシュを使用して色処理を実行し、キャッシュが無効である場合にはキャッシュを使用せずに色処理を実行することを特徴とする実施態様9記載の印刷制御方法。
【0092】
〔実施態様11〕
前記取得優先順位決定ステップは、印刷処理に必須なバッファ量、色補正処理キャッシュ用バッファ、色変換処理キャッシュ用バッファの優先順位を決定することを特徴とする実施態様9記載の印刷制御方法。
【0093】
〔実施態様12〕
前記取得優先順位決定ステップは、色補正処理キャッシュ用バッファと色変換処理キャッシュ用バッファの優先順位を、そのヒット率により決定することを特徴とする実施態様9または11記載の印刷制御方法。
【0094】
〔実施態様13〕
表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段と、各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段とを備えるプリンタドライのデータ処理方法であって、前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算ステップ(図10に示すステップS601)と、それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算ステップ(図10に示すステップS603,S604)と、各バッファ領域に対する取得優先順位を決定する優先順位決定ステップと、前記優先順位決定ステップにより決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得ステップ(図10に示すステップS605)と、前記バッファ取得ステップによる取得結果に従いぞれぞれのキャッシュステップに対するキャッシュの有効及び無効を決定するキャッシュ決定ステップ(図10に示すステップS606〜S609)とを有することを特徴とするプリンタドライのデータ処理方法。
【0095】
〔実施態様14〕
前記複数の色処理手段は、キャッシュが有効な場合にキャッシュを使用して色処理を実行し、キャッシュが無効である場合にはキャッシュを使用せずに色処理を実行することを特徴とする実施態様13記載のプリンタドライバのデータ処理方法。
【0096】
〔実施態様15〕
前記取得優先順位決定ステップは、印刷処理に必須なバッファ量、色補正処理キャッシュ用バッファ、色変換処理キャッシュ用バッファの優先順位を決定することを特徴とする実施態様13記載のプリンタドライバのデータ処理方法。
【0097】
〔実施態様16〕
前記取得優先順位決定ステップは、色補正処理キャッシュ用バッファと色変換処理キャッシュ用バッファの優先順位を、そのヒット率により決定することを特徴とする実施態様13または15記載のプリンタドライバのデータ処理方法。
【0098】
〔実施態様17〕
請求項9〜12のいずれかに記載の印刷制御方法を実現するプログラムを記憶したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【0099】
〔実施態様18〕
請求項13〜16のいずれかに記載のデータ処理方法を実現するプログラムを記憶したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【0100】
〔実施態様19〕
実施態様9〜12のいずれかに記載の印刷制御方法を実現することを特徴とするプログラム。
【0101】
〔実施態様20〕
実施態様13〜16のいずれかに記載のデータ処理方法を実現することを特徴とするプログラム。
【0102】
なお、上記実施形態では、印刷制御装置をプリンタドライバとして構成する場合を好例としている。
【0103】
そして、プリンタドライバ211は、印刷対象データに対して色補正処理、色変換処理、量子化処理などを施した後、プリンタにデータを送信する。
【0104】
次に、プリンタドライバ211内の色補正処理、色変換処理それぞれに対して、従来例にあるような色処理キャッシュ手段(色補正キャッシュ処理部2141,色変換キャッシュ処理部2151)を設ける。
【0105】
また、色処理キャッシュ手段は、印刷処理実行時にその機能を有効/無効とする機能を備える。またキャッシュ手段は高速化のための付加手段であるため、色補正処理、色変換処理はキャッシュ手段が無効である場合においても通常の処理を行えるものとする。
【0106】
印刷処理実行時に、まず色処理キャッシュ用以外に印刷処理に必須な使用バッファ量、色補正処理用キャッシュに必要なバッファ量、及び色変換処理用キャッシュに必要なバッファ量を調べる。次に上述する複数のバッファに対し優先順位を決定する。優先順位は、印刷処理に必須な使用バッファを最優先とすることで、他のバッファが確保できない場合においても印刷処理を実行可能とする。
【0107】
一方、色補正処理キャッシュ用バッファ、色変換処理キャッシュ用バッファは、それぞれのキャッシュのヒット率を考慮して優先順位を決定する。
【0108】
色補正処理がCRT等のプリンタの色再現空間よりも広い空間を持つデバイスのデータをプリンタ用の空間データに変換するのに対し、色変換処理はプリンタの色再現空間内での変換であるため、色変換処理の方が対象となる入力データの組み合わせが少なくなる。このためキャッシュにヒットする確立が高くなるため、色変換キャッシュ用バッファの優先順位を高く定義付ける。
【0109】
以上の優先順位に従いバッファの確保を試みる。印刷処理に必須な使用バッファが確保できた場合は印刷処理を継続し、確保できない場合は処理を中断する。また色処理用キャッシュバッファについては、確保ができた場合にはキャッシュを有効とし、確保できない場合にはキャッシュを無効として動作させるものとする。
【0110】
これにより、キャッシュが無効である場合には、キャッシュによる高速化が図れないまでも印刷を行うことを可能とする。
【0111】
また、色処理用キャッシュバッファの確保方法においては、優先順位の高いバッファが確保できない場合においても、次に優先順位の高いキャッシュバッファの確保を試みる。
【0112】
これは優先順位の高いキャッシュ用バッファ量に対し、優先順位が低いキャッシュ用バッファ量が少ない場合において、後者のバッファが確保できた場合においてはそのキャッシュを有効とするためである。
【0113】
以上の手段またはステップを設けることにより、印刷制御装置本体上のメモリ上で、使用可能な保存領域が少ない環境においても、実行時に色処理キャッシュの使用/不使用を決定し、処理の高速化が可能な印刷制御装置を提供することが可能となる。
【0114】
【発明の効果】
以上説明したように、本発明によれば、表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成する際に、該生成した印刷データを前記バッファ領域上にキャッシュ可能な印刷制御装置において、印刷部で前記印刷データを印刷するために確保すべきバッファ領域と、それぞれのキャッシュ手段が必要とするバッファ領域を計算し、該計算されたバッファ領域を決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試み、該取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定するので、印刷制御装置本体が備える有限なメモリ上で使用可能バッファが少ない機器であって、印刷処理を中止することなく、また色補正処理及び色変換処理における色処理キャッシュを効率的に使用することが可能な印刷データ作成処理環境を構築できるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施形態を示す印刷制御装置とその周辺機器との構成を説明するブロック図である。
【図2】図1に示した印刷制御装置とプリンタとの詳細構成を説明するブロック図である。
【図3】図2に示したプリンタドライバによるデータ処理状態を説明する図である。
【図4】図2に示した色補正キャッシュ処理におけるキャッシュ処理状態を説明する図である。
【図5】図2に示した色補正キャッシュ処理におけるキャッシュ処理状態を説明する図である。
【図6】本発明に係る印刷制御装置における表示対印刷の色空間を説明する図である。
【図7】図2に示したキャッシュ方法決定部で使用されるバッファの獲得優先順位決定方法を説明する図である。
【図8】図2に示したキャッシュ方法決定部によるキャッシュ方法決定処理の決定例を説明する図である。
【図9】図2に示したキャッシュ方法決定部によるキャッシュ方法決定処理の決定例を説明する図である。
【図10】本発明に係る印刷制御装置における第1のデータ処理手順の一例を示すフローチャートである。
【図11】本発明に係る印刷制御装置における第2のデータ処理手順の一例を示すフローチャートである。
【図12】図10,図11に示すデータ処理手順をプログラムとして記録した記憶媒体の記憶内容の構成例を示す説明図である。
【図13】本発明に係る印刷制御装置で読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
210 印刷制御装置
211 プリンタドライバ
212 キャッシュ方法決定部
213 印字画像入手部
214 色補正処理手段
2140 色補正処理部
2141 色補正キャッシュ処理部
215 色変換処理手段
2150 色変換処理部
216 量子化部
217 印字データ作成部
220 保存領域
230 プリンタ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a print control apparatus that performs predetermined color processing on display data to generate print data that can be printed by a printer.
[0002]
[Prior art]
Conventionally, in a print control device including a personal computer or the like, when printing created data with a connected printer, in order to create data unique to each printer, a printer driver stored in a memory means in the print control device includes: An image is subjected to image processing such as a color correction process for converting from a color space such as a CRT to a printer color space, a color conversion process for converting in a printer color space, and a quantization process, so that the image is optimal for a printer. It is common to send data.
[0003]
Among these image processes, the color correction process and the color conversion process have been speeded up by various methods because the process time affects the overall printing time. There is a color processing cache as a method. In this method, data after processing is stored, and when the same image is processed thereafter, the stored data is used instead of performing processing.
[0004]
Further, when printing is performed by a printer, demand for printing without using a PC is increasing. First, as a system that allows the user to easily and easily use the Internet, a WebTV (registered trademark) (service for connecting to the Internet using a television) system and a SetTopBox (a television attached to use an Internet connection or the like) are provided. Such as a terminal device) and a general television with an Internet function attached thereto. The demand for printing from these so-called PC-less (Non-PC (Non-PC devices)) systems to printers is also increasing.
[0005]
[Problems to be solved by the invention]
However, although the cache in the above-mentioned conventional example is effective as a means for speeding up, it requires an area for storing input and output, and a plurality of storage areas for improving efficiency. In some cases, it is not used in a data processing environment that is restricted by a storage area or memory that can be used as a cache.
[0006]
This is because the print processing itself may not be able to be executed due to the inability to secure a cache area at the time of executing the print processing. Therefore, the system always operates with the cache invalidated.
[0007]
The present invention has been made to solve the above problems, and an object of the present invention is to perform different color processing on display data and print data printable by a printing unit on a buffer area having a predetermined capacity. When generating the print data, in a print control device capable of caching the generated print data in the buffer area, a buffer area to be reserved for printing the print data by a printing unit and each cache unit are required. A buffer area is calculated, an attempt is made to obtain a buffer on the buffer area in accordance with an obtaining priority determined for the calculated buffer area, and the validity and invalidity of a cache for each cache means are determined according to the obtained result. This makes it possible to stop the printing process on a device with a small number of buffers that can be used on a finite memory provided in the print control device main body. Ku, also aims to provide a color correction process and the printing control apparatus having excellent usability can be constructed efficiently can be used for the print data creation processing environment color processing cache in the color conversion process.
[0008]
[Means for Solving the Problems]
The print control apparatus of the present invention that achieves the above object has the following configuration.
[0009]
The present invention provides a plurality of color processing units (for example, a color correction processing unit 214 shown in FIG. 2) for performing different color processing on display data and generating print data printable by a printing unit on a buffer area having a predetermined capacity. , A color conversion processing unit 215), a plurality of cache units (for example, a color correction cache processing unit 2141 and a color conversion cache processing unit 2151 shown in FIG. 2) for caching print data generated by each color processing unit in the buffer area. A first buffer area calculation unit (for example, a cache method determination unit 212 shown in FIG. 2) for calculating a buffer area to be reserved for printing the print data by the printing unit, and each cache unit is required. A second buffer area calculating means (for example, a cache method determining unit 212 shown in FIG. 2) for calculating a buffer area; Priority determining means (for example, a cache method determining unit 212 shown in FIG. 2) for determining an acquisition priority for an area, and buffer acquisition for attempting to acquire a buffer on the buffer area in accordance with the acquisition priority determined by the priority determining means Means (for example, the cache method determining unit 212 shown in FIG. 2) and cache determining means (for example, the cache method shown in FIG. 2) for determining whether the cache for each cache means is valid or invalid according to the result obtained by the buffer obtaining means. (Determination unit 212).
[0010]
BEST MODE FOR CARRYING OUT THE INVENTION
[First Embodiment]
Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
[0011]
FIG. 1 is a block diagram illustrating a configuration of a print control apparatus and its peripheral devices according to an embodiment of the present invention.
[0012]
As shown in FIG. 1, a print control apparatus according to an embodiment of the present invention includes a print control apparatus 101 having a printer driver including a function of the present invention described later, a storage area 105, an input device 103, a CRT 102, and a printer. 104 is provided.
[0013]
FIG. 2 is a block diagram illustrating a detailed configuration of the print control apparatus 101 and the printer 104 illustrated in FIG.
[0014]
The print control device 210 shown in FIG. 2 includes a printer driver 211, a data transmission unit 219, a storage area 220, and the like.
[0015]
In the printer driver 211, there are a cache method determination unit 212, a print image acquisition unit 213, a color correction processing unit 214, a color conversion processing unit 215, a quantization unit 216, and a print data creation unit 217.
[0016]
On the other hand, the printer 230 shown in FIG. 2 includes a data receiving unit 231, a data printing unit 232, and the like. The print control device 210 and the printer 230 are connected by an interface such as UBS, parallel, and network.
[0017]
The color correction processing unit 214 includes a color correction processing unit 2140 and a color correction cache processing unit 2141. The color conversion processing unit 215 includes a color conversion processing unit 2150 and a color conversion cache processing unit 2151. I do.
[0018]
More specifically, in the printer driver 211, first, as a pre-process, a cache method determining unit 212, which will be described later, determines whether to use a cache for color processing and color conversion.
[0019]
Next, when the actual printing process is started, the print image obtaining unit 213 obtains an image to be printed, and executes the color correction processing unit 214 on the main image. The color correction processing unit 214 includes a color correction processing unit 2140 and a color correction cache processing unit 2141. If the color correction cache is invalid, or if the target pixel is not cached even if the color correction cache is valid, the color correction processing unit 214 Execute
[0020]
Next, the color conversion processing unit 215 includes a color conversion processing unit 2150 and a color conversion cache processing unit 2151, and performs processing in the same manner as in the case of color correction. The data that has passed through the color conversion processing is subjected to error diffusion processing and dither processing by a quantization unit 216, converted into quantized data that can be handled by a printer, and converted to printer print data by a print data creation unit 217. Later, it is transmitted to the printer via the print data output unit 218.
[0021]
The color correction cache processing unit 2141 and the color conversion cache processing unit 2151 store and use a cache table described later in the storage area 220.
[0022]
On the other hand, the data receiving unit 231 in the printer 230 receives the data transmitted from the data transmitting unit 219 in the print control device 210 and performs printing using the data printing unit 232. The above is the detailed description of the operation processing in the hardware relating to the present print control apparatus.
[0023]
FIG. 3 is a diagram illustrating a data processing state by the printer driver 211 illustrated in FIG.
[0024]
As shown in FIG. 3, the print image is divided as a plurality of lines of source data in the main scanning direction. The source data is N-bit RGB data for each pixel, and is converted into M-bit R′G′B ′ data via the color correction processing unit 2140.
[0025]
The color correction processing unit 2140 is a process for converting a value in a device space other than an output printer such as a CRT into a color reproduction space in the printer 230. For this conversion, an interpolation process or the like, which is a commonly known technique, is used.
[0026]
Next, the M-bit R'G'B 'data is converted to L-bit CMYK data via the color conversion processing unit 2150. The color conversion processing unit 2150 converts the RGB data into a color space such as CMYK, which is a print color of the printer 230, and also uses an interpolation process or the like, which is a commonly known technique, for this conversion.
[0027]
The converted L-bit CMYK data is converted into K-bit CMYK data optimal for the printer 230 using a quantization processing unit 216 such as an error diffusion process and a dither process. And transmitted to the printer 230.
[0028]
4 and 5 are diagrams for explaining a cache processing state in the color correction cache processing unit 2140 shown in FIG. 2. FIG. 4 corresponds to data registration processing in the cache table TA1, and FIG. This corresponds to a process of retrieving data from the table TA1. Note that the cache table TA1 includes identification information (ID), RGB values, and R'G'B 'values.
[0029]
In FIG. 4, N-bit RGB data is converted into M-bit R'G'B 'data by the above-described color correction processing. At the time of this processing, as shown in FIG. 4, a cache area is secured on the storage area 220, and the RGB values before processing and the R'G'B 'values after processing are stored. Thus, registration in the cache table TA1 is performed.
[0030]
Next, when the cache table TA1 is used, for example, as shown in FIG. 5, when performing color correction processing on an arbitrary pixel, the cache table TA1 area is searched first, and the RGB values of the same pixel are already registered. In this case, the corresponding R'G'B 'value registered is obtained from the cache table TA1, and this result is used as a processing result instead of performing the color correction processing unit 2140, thereby obtaining the color correction processing unit. The processing result can be obtained without performing 2140.
[0031]
The above is an example of the cache processing in the print control apparatus. However, the present cache processing is an example, and the present invention is also effective for the cache processing using another buffer.
[0032]
Next, with reference to FIG. 6, a description will be given of a buffer acquisition priority determining method used by the cache method determining unit 212 shown in FIG.
[0033]
FIG. 6 is a diagram illustrating a display-to-print color space in the print control apparatus according to the present invention.
[0034]
First, as shown in FIG. 6A, a reproducible color area that represents a color space reproducible on a monitor (for example, the CRT 102 shown in FIG. 1) is an area wider than that reproducible by the printer 230. ing.
[0035]
However, when printing is actually performed, data outside the area reproducible by the printer 230 may also be the target. Therefore, as shown in FIG. Needs to be redefined within the reproducible color area of. This is the color correction processing unit 2140.
[0036]
On the other hand, the processing shown in FIG. 6C is the color conversion processing unit 2150, which performs conversion within the reproducible color area of the printer 230. For example, although the monitor is represented in the RGB space, On the other hand, since the printer 230 is expressed in the CMYK space, space conversion is required, and this processing is executed.
[0037]
Due to the above processing difference, the color correction processing unit 2140 and the color conversion processing unit 2150 cause a difference in the number of target colors, and the color correction processing unit 2140 has a larger number of target colors.
[0038]
FIG. 7 shows the acquisition priority of the buffer used by each cache using this characteristic.
[0039]
FIG. 7 is a diagram for explaining a method of determining a buffer acquisition priority used by the cache method determining unit 212 shown in FIG.
[0040]
As described above, since the number of target colors is larger in the color correction process than in the color conversion process, the combination of the number of colors input to the process is larger than that in the color conversion process. If the number of target colors that can be registered in the cache for color correction processing and the cache for color conversion processing are the same, the possibility that the color conversion processing will hit the cache is higher.
[0041]
Therefore, by taking advantage of this characteristic, in the color conversion cache buffer and the color correction cache buffer, as shown in FIG. 7, it is possible to position the acquisition priority of the color conversion cache buffer higher based on the hit ratio.
[0042]
On the other hand, in a buffer essential for the printing process, if this area cannot be secured, the printing process cannot be executed or continued. For this reason, it is possible to position the acquisition priority of this buffer highest. From the above, FIG. 7 shows the buffer acquisition priority.
[0043]
FIGS. 8 and 9 are diagrams illustrating an example of the determination of the cache method determination process performed by the cache method determination unit 212 illustrated in FIG. Hereinafter, FIG. 8 is an example theoretically possible, and FIG. 9 is an example in which selection is made according to the buffer acquisition priority shown in FIG. Hereinafter, the processing of the cache method determining unit will be described from the viewpoint of the used buffer amount.
[0044]
In FIG. In case 1, the available buffer amount is, for example, 800 KB, but the buffer amount required for the printing process is 1 MB, so that the printing process cannot be performed.
[0045]
No. In case 2, the available buffer amount is 1.2 MB, so the printing process can be executed, but the cache buffer amount for color correction and color conversion cannot be secured. Therefore, printing is performed without using a cache.
[0046]
No. 3 and No. In case 4, a buffer essential for the printing process and a cache buffer for either color correction or color conversion can be secured. In these cases, it is possible to perform processing with either cache available.
[0047]
Furthermore, No. In case 5, all buffers can be secured, and printing processing can be executed using a cache for color correction and color conversion.
[0048]
However, no. 3 and No. Since the case of No. 4 cannot be compatible, according to the priority of obtaining the color correction cache and the color conversion cache buffer shown in FIG. 7 described above, as shown in FIG. Case 4 will be selected.
[0049]
The above is the method for determining the buffer acquisition priority used by the cache method determination unit 212.
[0050]
Next, in the printing control apparatus according to the embodiment of the present invention configured as described above, the processing in the cache method determination unit 212 in FIG. 2 will be described in detail with reference to FIGS.
[0051]
FIG. 10 is a flowchart illustrating an example of a first data processing procedure in the print control apparatus according to the present invention, and corresponds to the data processing procedure by the cache method determination unit 212 illustrated in FIG. S601 to S610 indicate each step.
[0052]
In step S601, the cache method determination unit 212 first calculates a buffer amount necessary for printing other than the cache, and sets this value as i. Note that this buffer amount is the sum of all buffer amounts necessary for the printing process.
[0053]
Next, in step S602, an attempt is made to acquire the buffer amount i calculated in step S601. This is because the buffer amount i is the buffer having the highest priority according to the above-described priority.
[0054]
Here, if the buffer amount i cannot be obtained, the process proceeds to the end process, and the print process is stopped. This is because the buffer amount i is a buffer amount essential for printing, and if it cannot be obtained, printing cannot be continued.
[0055]
On the other hand, if it is determined in step S602 that the buffer can be acquired, a buffer is acquired, and the process advances to step S603 to calculate a buffer amount necessary for the color conversion cache, and the value is set as a buffer amount j.
[0056]
Similarly, in step S604, the buffer amount required for the color correction cache is calculated, and the calculated value is set as the buffer amount k, and the process proceeds to step S605.
[0057]
In step S605, an attempt is made to acquire the buffer amount j necessary for the color conversion cache having the second highest priority according to the above-described priority, and if the buffer amount j can be acquired, the process proceeds to step S606. , The color conversion cache is validated, and the process proceeds to step S608.
[0058]
On the other hand, if it is determined in step S605 that the buffer amount j cannot be obtained, the process proceeds to step S607, in which the color conversion cache is invalidated, and similarly, the process proceeds to step S608. The use form of the color conversion cache is determined as described above.
[0059]
Next, in step S608, an attempt is made to obtain the buffer amount k required for the color correction cache calculated in step S604. Note that the value of the buffer amount k is the buffer with the lowest priority. If it is determined that the buffer amount k has been obtained, the color correction cache is validated in step S609, and the process of the cache method determination unit ends.
[0060]
On the other hand, if it is determined in step S608 that the color correction cache cannot be obtained, the color correction cache is invalidated in step S610, and the process of the cache method determination unit ends.
[0061]
The above is the processing of the cache method determination unit 212. According to the situation where a buffer cannot be obtained by this processing, the operation states of the caches for color conversion and color correction can be independently specified.
[0062]
FIG. 11 is a flowchart showing an example of the second data processing procedure in the print control apparatus according to the present invention, and corresponds to the processing procedure by the color correction cache processing unit 2141 and the color conversion cache processing unit 2151 shown in FIG. . In addition, S901 to S904 indicate each step.
[0063]
First, in step S901, it is checked whether or not the cache determined by the cache method determination unit 212 in FIG. 2 is available. If it is determined that the cache is available, the process proceeds to step S902, and if not, it is determined that the cache is not available. If it is determined, the process proceeds to step S904.
[0064]
In step S902, a search is actually performed in the cache table to determine whether or not the same pixel data has already been cached in the cache name (cache hit). The process advances to step S903 to obtain a processing result from the cache table, and ends the processing.
[0065]
On the other hand, if it is determined in step S902 that the same pixel data is not cached in the cache, the process proceeds to step S904, similar to step S901, where an actual color correction process is performed, a process result is obtained, and the process is performed. finish.
[0066]
In the present embodiment, the color correction cache processing unit 2141 of the color correction processing unit 214 and the color conversion cache processing unit 2151 of the color conversion processing unit 215 execute this processing together, so that the cache can be cached according to the availability of the cache. Execute
[0067]
According to the above-described embodiment, by acquiring the color processing cache buffer in accordance with the amount of the buffer that can be acquired, even in an environment such as a NonPC device having a small available buffer area, the print processing can be performed without stopping the processing. The processing speed can be increased by efficiently using the color processing cache in the correction processing and the color conversion processing.
[0068]
FIG. 12 is an explanatory diagram showing a configuration example of storage contents of a storage medium in which the data processing procedures shown in FIGS. 10 and 11 are recorded as a program.
[0069]
The storage medium of the present invention includes storage contents such as volume information 1201, directory information 1202, and program execution file 1203.
[0070]
Hereinafter, the configuration of a data processing program that can be read by the print control apparatus according to the present invention will be described with reference to a memory map shown in FIG.
[0071]
FIG. 13 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by the print control device according to the present invention.
[0072]
Although not shown, information for managing a group of programs stored in the storage medium, for example, version information, a creator, and the like are also stored, and information dependent on the OS or the like on the program reading side, for example, a program is identified and displayed. Icons and the like may also be stored.
[0073]
Further, data dependent on various programs is also managed in the directory. In addition, a program for installing various programs on a computer or a program for decompressing a program to be installed when the program to be installed is compressed may be stored.
[0074]
The functions shown in FIGS. 10 and 11 in the present embodiment may be executed by a host computer by a program installed from the outside. In this case, the present invention is applied even when a group of information including a program is supplied to the output device from a storage medium such as a CD-ROM, a flash memory, or an FD, or from an external storage medium via a network. Things.
[0075]
As described above, the storage medium storing the program codes of the software for realizing the functions of the above-described embodiments is supplied to the system or the apparatus, and the computer (or CPU or MPU) of the system or the apparatus stores the storage medium in the storage medium. It goes without saying that the object of the present invention is also achieved by reading and executing the program code thus obtained.
[0076]
In this case, the program code itself read from the storage medium implements the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.
[0077]
As a storage medium for supplying the program code, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, ROM, EEPROM, or the like may be used. it can.
[0078]
When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an OS (Operating System) running on the computer based on the instruction of the program code. It goes without saying that a part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing.
[0079]
Further, after the program code read from the storage medium is written into a memory provided on a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that a CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0080]
The present invention is not limited to the above embodiments, and various modifications (including organic combinations of the embodiments) are possible based on the spirit of the present invention, and those are excluded from the scope of the present invention. is not.
[0081]
While various examples of the present invention have been described with reference to embodiments, those skilled in the art will appreciate that the spirit and scope of the present invention are not limited to the specific description herein, but rather include the following embodiments. Needless to say, this is also included. Hereinafter, Embodiments 1 to 20 will be described.
[0082]
[Embodiment 1]
A plurality of color processing means (for example, a color correction processing means 214 shown in FIG. 2 and a color conversion processing Means 215), a plurality of cache means (for example, a color correction cache processing unit 2141 and a color conversion cache processing unit 2151 shown in FIG. 2) for caching print data generated by each color processing unit in the buffer area, and the printing unit A first buffer area calculation means (for example, a cache method determination unit 212 shown in FIG. 2) for calculating a buffer area to be reserved for printing the print data, and a buffer area required by each cache means. The second buffer area calculation means (for example, the cache method determination unit 212 shown in FIG. 2) which performs Priority determining means (for example, a cache method determining unit 212 shown in FIG. 2) for determining an obtaining priority, and buffer obtaining means (attempting to obtain a buffer on the buffer area in accordance with the obtaining priority determined by the priority determining means) For example, a cache method determining unit 212 shown in FIG. 2 and a cache determining unit (for example, the cache method determining unit shown in FIG. 2) that determines whether the cache is valid or invalid for each cache unit according to the result obtained by the buffer obtaining unit. 212).
[0083]
[Embodiment 2]
The plurality of color processing means execute color processing using a cache when the cache is valid, and execute the color processing without using the cache when the cache is invalid. A print control device according to aspect 1.
[0084]
[Embodiment 3]
2. The printing control apparatus according to claim 1, wherein the acquisition priority determining unit determines a priority of a buffer amount, a buffer for a color correction process, and a buffer for a color conversion process, which are necessary for a printing process.
[0085]
[Embodiment 4]
4. The print control apparatus according to claim 1, wherein the acquisition priority determining unit determines the priority of the color correction processing cache buffer and the color conversion processing cache buffer based on the hit ratio.
[0086]
[Embodiment 5]
A plurality of color processing means (for example, a color correction processing means 214 shown in FIG. 2 and a color conversion processing Means 215), a plurality of cache means (for example, a color correction cache processing unit 2141 and a color conversion cache processing unit 2151 shown in FIG. 2) for caching print data generated by each color processing unit in the buffer area, and the printing unit A first buffer area calculation means (for example, a cache method determination unit 212 shown in FIG. 2) for calculating a buffer area to be reserved for printing the print data, and a buffer area required by each cache means. The second buffer area calculation means (for example, the cache method determination unit 212 shown in FIG. 2) which performs Priority determining means (for example, a cache method determining unit 212 shown in FIG. 2) for determining an obtaining priority, and buffer obtaining means (attempting to obtain a buffer on the buffer area in accordance with the obtaining priority determined by the priority determining means) For example, a cache method determining unit 212 shown in FIG. 2 and a cache determining unit (for example, the cache method determining unit shown in FIG. 2) that determines whether the cache is valid or invalid for each cache unit according to the result obtained by the buffer obtaining unit. 212).
[0087]
[Embodiment 6]
The plurality of color processing means execute color processing using a cache when the cache is valid, and execute the color processing without using the cache when the cache is invalid. A printer driver according to aspect 5.
[0088]
[Embodiment 7]
6. The printer driver according to claim 5, wherein the acquisition priority determining unit determines the priority of a buffer amount, a buffer for a color correction process, and a buffer for a color conversion process, which are necessary for a printing process.
[0089]
[Embodiment 8]
8. The printer driver according to claim 5, wherein the acquisition priority determining means determines the priority of the color correction processing cache buffer and the color conversion processing cache buffer based on the hit ratio.
[0090]
[Embodiment 9]
A plurality of color processing means for performing different color processing on the display data and generating print data printable by the printing unit on a buffer area having a predetermined capacity; and printing data generated by each color processing means on the buffer area. A first buffer area calculating step of calculating a buffer area to be reserved for printing the print data by the printing unit (FIG. 6). 10), a second buffer area calculation step for calculating the buffer area required by each cache unit (steps S603 and S604 shown in FIG. 10), and the acquisition priority for each buffer area is determined. A priority order determining step, and an obtaining priority determined by the priority order determining step. A buffer acquisition step of attempting to acquire a buffer in the buffer area (step S605 shown in FIG. 10) and a cache determination step of determining whether the cache is valid or invalid for each cache step according to the result of the buffer acquisition step ( 10. A print control method, comprising: steps S606 to S609) shown in FIG.
[0091]
[Embodiment 10]
The plurality of color processing means execute color processing using a cache when the cache is valid, and execute the color processing without using the cache when the cache is invalid. A print control method according to aspect 9.
[0092]
[Embodiment 11]
The print control method according to the ninth embodiment, wherein the obtaining priority determining step determines the priority of a buffer amount, a buffer for a color correction process, and a buffer for a color conversion process, which are necessary for a printing process.
[0093]
[Embodiment 12]
12. The print control method according to claim 9, wherein in the obtaining priority order determining step, the priority order of the color correction processing cache buffer and the color conversion processing cache buffer is determined based on the hit ratio.
[0094]
[Embodiment 13]
A plurality of color processing means for performing different color processing on the display data and generating print data printable by the printing unit on a buffer area having a predetermined capacity; and printing data generated by each color processing means on the buffer area. A first buffer area calculating step of calculating a buffer area to be reserved for printing the print data by the printing unit (FIG. 10). , A second buffer area calculation step for calculating the buffer area required by each cache unit (steps S603 and S604 shown in FIG. 10), and a priority for determining the acquisition priority for each buffer area. In the order determining step, and in accordance with the acquisition priority determined in the priority order determining step, A buffer acquisition step of trying to acquire a buffer in the buffer area (step S605 shown in FIG. 10), and a cache determination step of determining whether the cache is valid or invalid for each cache step according to the result of the buffer acquisition step (FIG. 10. A data processing method for a printer dry, comprising: steps S606 to S609).
[0095]
[Embodiment 14]
The plurality of color processing means execute color processing using a cache when the cache is valid, and execute the color processing without using the cache when the cache is invalid. A data processing method for a printer driver according to aspect 13.
[0096]
[Embodiment 15]
The data processing of the printer driver according to the thirteenth embodiment, wherein the obtaining priority determining step determines the priority of a buffer amount, a buffer for a color correction processing cache, and a buffer for a color conversion processing cache required for a printing process. Method.
[0097]
[Embodiment 16]
16. The data processing method of a printer driver according to the thirteenth or fifteenth aspect, wherein in the obtaining priority determining step, the priority of the color correction processing cache buffer and the color conversion processing cache buffer is determined based on the hit ratio. .
[0098]
[Embodiment 17]
A computer-readable storage medium storing a program for implementing the print control method according to claim 9.
[0099]
[Embodiment 18]
A computer-readable storage medium storing a program for implementing the data processing method according to claim 13.
[0100]
[Embodiment 19]
A program for realizing the print control method according to any one of the ninth to twelfth embodiments.
[0101]
[Embodiment 20]
A program for realizing the data processing method according to any one of embodiments 13 to 16.
[0102]
In the above embodiment, a case where the print control device is configured as a printer driver is a good example.
[0103]
Then, the printer driver 211 performs color correction processing, color conversion processing, quantization processing, and the like on the print target data, and then transmits the data to the printer.
[0104]
Next, a color processing cache unit (color correction cache processing unit 2141 and color conversion cache processing unit 2151) as in the conventional example is provided for each of the color correction processing and the color conversion processing in the printer driver 211.
[0105]
Further, the color processing cache unit has a function of validating / invalidating the function at the time of executing the printing process. Further, since the cache unit is an additional unit for speeding up, it is assumed that the color correction process and the color conversion process can perform normal processes even when the cache unit is invalid.
[0106]
At the time of execution of the printing process, first, a used buffer amount necessary for the printing process, a buffer amount required for the color correction processing cache, and a buffer amount necessary for the color conversion processing cache are checked in addition to the color processing cache. Next, priorities are determined for the plurality of buffers described above. The priority is such that the use buffer essential for the printing process is given the highest priority, so that the printing process can be executed even when another buffer cannot be secured.
[0107]
On the other hand, the priority of the color correction processing cache buffer and the color conversion processing cache buffer is determined in consideration of the hit rate of each cache.
[0108]
The color correction process converts data of a device having a larger space than the color reproduction space of a printer such as a CRT into space data for a printer, whereas the color conversion process is conversion within the color reproduction space of the printer. In the color conversion process, the number of combinations of target input data is reduced. For this reason, the probability of hitting the cache increases, so that the priority of the color conversion cache buffer is defined to be high.
[0109]
An attempt is made to reserve a buffer according to the above priorities. If the required buffer necessary for the printing process can be secured, the printing process is continued, and if not, the process is interrupted. Also, the cache buffer for color processing is operated with the cache valid when it can be secured, and invalidated when it cannot be secured.
[0110]
As a result, when the cache is invalid, it is possible to perform printing even if speeding up by the cache cannot be achieved.
[0111]
Further, in the method of securing a cache buffer for color processing, even if a buffer having a higher priority cannot be secured, an attempt is made to secure a cache buffer having the next highest priority.
[0112]
This is because when the amount of the low-priority cache buffer is smaller than the amount of the high-priority cache buffer, when the latter buffer can be secured, the cache is valid.
[0113]
By providing the above means or steps, the use / non-use of the color processing cache is determined at the time of execution even in an environment where the available storage area is small on the memory of the print control apparatus main body, and the processing can be speeded up. It is possible to provide a possible print control device.
[0114]
【The invention's effect】
As described above, according to the present invention, when performing different color processing on display data and generating print data that can be printed by a printing unit on a buffer area of a predetermined capacity, the generated print data is In a print control device that can be cached on a buffer area, a buffer area to be reserved for printing the print data by a printing unit and a buffer area required by each cache unit are calculated, and the calculated buffer area is calculated. Attempts to acquire a buffer on the buffer area according to the determined acquisition priority, and determines the validity and invalidity of the cache for each cache means according to the acquisition result. Device with a small number of buffers that can be used without interrupting print processing, and in color correction processing and color conversion processing. An effect that the color processing cache can be constructed efficiently can be used for the print data creation processing environment.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a print control apparatus and peripheral devices according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a detailed configuration of a print control device and a printer illustrated in FIG.
FIG. 3 is a diagram illustrating a data processing state by the printer driver illustrated in FIG. 2;
FIG. 4 is a diagram illustrating a cache processing state in the color correction cache processing illustrated in FIG. 2;
FIG. 5 is a diagram illustrating a cache processing state in the color correction cache processing illustrated in FIG. 2;
FIG. 6 is a diagram illustrating a display-to-print color space in the print control apparatus according to the present invention.
FIG. 7 is a diagram for explaining a buffer acquisition priority determining method used in the cache method determining unit shown in FIG. 2;
FIG. 8 is a diagram illustrating an example of determining a cache method determination process by a cache method determination unit illustrated in FIG. 2;
9 is a diagram illustrating a determination example of a cache method determination process performed by the cache method determination unit illustrated in FIG. 2;
FIG. 10 is a flowchart illustrating an example of a first data processing procedure in the print control apparatus according to the present invention.
FIG. 11 is a flowchart illustrating an example of a second data processing procedure in the print control apparatus according to the present invention.
FIG. 12 is an explanatory diagram showing a configuration example of storage contents of a storage medium in which the data processing procedure shown in FIGS. 10 and 11 is recorded as a program.
FIG. 13 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by the print control device according to the present invention.
[Explanation of symbols]
210 Print control device
211 Printer Driver
212 Cache Method Determination Unit
213 Print Image Acquisition Department
214 color correction processing means
2140 Color correction processing unit
2141 Color correction cache processing unit
215 color conversion processing means
2150 Color conversion processing unit
216 Quantization unit
217 Print data creation unit
220 storage area
230 Printer

Claims (1)

表示データに対して異なる色処理を行い印刷部が印刷可能な印刷データを所定容量のバッファ領域上で生成するための複数の色処理手段と、
各色処理手段が生成した印刷データを前記バッファ領域上にキャッシュする複数のキャッシュ手段と、
前記印刷部で前記印刷データを印刷するために確保すべきバッファ領域を計算する第1のバッファ領域計算手段と、
それぞれのキャッシュ手段が必要とするバッファ領域を計算する第2のバッファ領域計算手段と、
各バッファ領域に対する取得優先順位を決定する優先順位決定手段と、
前記優先順位決定手段により決定される取得優先順位に従い前記バッファ領域上でバッファ取得を試みるバッファ取得手段と、
前記バッファ取得手段による取得結果に従いぞれぞれのキャッシュ手段に対するキャッシュの有効及び無効を決定するキャッシュ決定手段と、
を有することを特徴とする印刷制御装置。
A plurality of color processing means for performing different color processing on the display data and generating print data printable by the printing unit on a buffer area having a predetermined capacity;
A plurality of cache units for caching print data generated by each color processing unit on the buffer area;
First buffer area calculation means for calculating a buffer area to be reserved for printing the print data in the printing unit;
Second buffer area calculation means for calculating a buffer area required by each cache means,
Priority determining means for determining an acquisition priority for each buffer area;
A buffer acquisition unit that attempts to acquire a buffer on the buffer area according to the acquisition priority determined by the priority determination unit,
A cache determining unit that determines whether a cache is valid or invalid for each of the cache units according to a result obtained by the buffer obtaining unit;
A print control device comprising:
JP2002354707A 2002-12-06 2002-12-06 Print control unit Pending JP2004185533A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002354707A JP2004185533A (en) 2002-12-06 2002-12-06 Print control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002354707A JP2004185533A (en) 2002-12-06 2002-12-06 Print control unit

Publications (1)

Publication Number Publication Date
JP2004185533A true JP2004185533A (en) 2004-07-02

Family

ID=32755619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002354707A Pending JP2004185533A (en) 2002-12-06 2002-12-06 Print control unit

Country Status (1)

Country Link
JP (1) JP2004185533A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2017199409A1 (en) * 2016-05-19 2018-11-01 富士通フロンテック株式会社 Printer device, printer control device, and printer driver program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2017199409A1 (en) * 2016-05-19 2018-11-01 富士通フロンテック株式会社 Printer device, printer control device, and printer driver program

Similar Documents

Publication Publication Date Title
US7605819B2 (en) Image processing device, method, and storage medium which stores a program
US20020041388A1 (en) Network system, information processing apparatus, and information memory medium
US7978351B2 (en) Printer configuration data setting method and server using the printer configuration data
US20060274970A1 (en) Image processing device, method, and storage medium which stores a program
JP5090834B2 (en) Information processing apparatus and authentication control program
US20060274967A1 (en) Image processing device, method, and storage medium which stores a program
US20060136963A1 (en) Apparatus and method for combining video and skin in embedded system
US7595803B2 (en) Image processing device, method, and storage medium which stores a program
KR100679529B1 (en) Resource management system, printer, printer network card and computer readable recording medium having resource management program recorded therein, and resource management method
US7602393B2 (en) Image processing device, method, and storage medium which stores a program
US20060274964A1 (en) Image processing device, method, and storage medium which stores a program
JP4165451B2 (en) Printing system, printing request terminal, compression algorithm selection program, and printing method
JP4810358B2 (en) Network device, network device control method, program, and storage medium
JP2004185533A (en) Print control unit
US20030133024A1 (en) Transmitter apparatus and method for selectively converting and transmitting still image files in requested format
US20100115141A1 (en) Processor and method for controlling memory
JP6800932B2 (en) Image forming device, image forming method, and program
JP4690115B2 (en) Control apparatus and image processing apparatus
AU2009212933A1 (en) Methods of storing and retrieving images
JP2005053009A (en) Printing device
JP2000216987A (en) Generating device, output device, output system and method for electronic watermark data, and storage medium
CN115729882A (en) Information processing method and device, apparatus, device, storage medium
KR100644655B1 (en) Emulation controlling method and apparatus in image forming apparatus
JPH11203059A (en) Image input and output device and its memory access method, and storage medium storing computer readable program
JPH09300736A (en) Printing control apparatus, data processing method therefor and memory medium storing program readable by computer