図1は、本発明の実施例1に係る画像形成装置20のハードウェア構成を示すブロック図である。
図1において、実施例1に係る画像形成装置20は、ネットワークI/F21、コントローラ部22、エンジン部23、I/O入出力回路24、表示部25、入力部(以下、「操作部」と言う。)26、画像形成部27、トナーユニット28、その他の機器群29を備えている。
ネットワークI/F21は、LAN(Local Area Network)、公衆回線および無線回線等のネットワーク上の通信機器との間で、印刷データや画像形成装置20の状態を示す情報(「状態通知」)等を双方向通信によって授受する。
コントローラ部22は、コントローラ制御部221、主記憶部222を備えている。
コントローラ制御部221は、CPU(Central Processing Unit)とASIC(Application Specific Integrated Circuit)で構成され、制御用OS(Operating System)上にて、画像形成装置20の有する機能を実現するためのプログラム(例えば、「プリンタアプリケーション」等。)を実行し、システムバスを介して、画像形成装置20全体の動作を制御する。
主記憶部222は、ROM(Read Only Memory)、RAM(Random Access Memory)を備え、ROMには、コントローラ制御部221で実行されるプログラムやプログラムで使用するデータ(例えば、「ディザパターン」、「γテーブル」、「カラープロファイル」等。)が格納され、RAMには、格納されたプログラムやプログラムで使用するデータが、プログラム実行時に展開され、コントローラ制御部221により実行される。また、RAMには、コントローラ制御部221で実行されるプログラムにより、印刷データ解釈後の中間データや、中間データを画像処理(「描画処理」を含む。)したラスタイメージ(ビットマップイメージ)が一時的に保持される。
また、主記憶部222は、NVRAM(Non-Volatile Random Access Memory)を備え、NVRAMは、コントローラ部22の制御に必要な設定値や電源をOFFにした際の状態情報(例えば、「トータル印刷枚数」等。)を格納する。
エンジン部23は、エンジン制御部231、主記憶部232を備えている。
エンジン制御部231は、CPUを備え、画像形成装置20が有する印刷機能を実現するためのエンジン制御用プログラムを実行し、コントローラ部22において、印刷データ解釈後、画像処理(「RAMへの描画処理」を含む。)されたラスタイメージ(ビットマップイメージ)を印刷するため、各種サイズの印刷用紙を収納した給紙カセット部と、給紙カセット部に収納された印刷用紙を取り出して画像形成部へ搬送する給紙搬送部と、ラスタイメージ(ビットマップイメージ)から印刷画像を形成(感光体へ潜像)し、印刷用紙に印刷(現像後、転写)する画像形成部と、印刷後の用紙を排紙トレイに排紙する排紙部と、前述した各部を駆動する駆動部とを制御する。
主記憶部232は、ROM、RAMを備え、ROMには、エンジン制御部232によって実行されるプログラムやプログラムで使用するデータが格納されており、RAMには、格納されたプログラムやプログラムで使用するデータが、プログラム実行時に展開され、エンジン制御部231により実行される。また、RAMには、コントローラ部22により生成されたラスタイメージ(ビットマップイメージ)が一時的に保持される。
また、主記憶部232は、EEPROM(Electronically Erasable and Programmable Read Only Memory)を備え、EEPROMは、エンジン部23の制御に必要な設定値や電源をOFFにした時の状態情報(例えば、「レジスト調整・濃度調整値」等。)を格納する。
I/O入出力回路24は、画像形成装置20が有するコントローラ部22、エンジン部23等を含む各機能部との間で、画像形成装置20の制御に必要なデータや印刷するラスタイメージ等の授受を行う。
表示部25は、液晶表示機器等を備え、印刷ジョブに関する情報、画像形成装置20の駆動条件、印刷条件、装置状態等の各種情報を画面表示する。また、MFP(Multi-Function Printer)の場合、表示部25がタッチパネル機能を有している。
入力部26は、MFPの場合、テンキー、各種ファンクションキー、スタート/ストップキー等を備え、プリンタの場合、オンライン/オフラインキー、各種ファンクションキー等を備え、画像形成装置20の駆動条件や印刷条件等を入力(設定)する。また、MFPの場合、表示部25がタッチパネル機能を有しており、付属のタッチペン等で、パネル上に表示された機能ボタンを押下することでも、画像形成装置20の駆動条件や印刷条件等を入力(設定)できる。
画像形成部27は、エンジン部23のエンジン制御部231によって制御され、コントローラ部22から生成されたラスタイメージ(ビットマップイメージ)から、印刷画像を感光体へ潜像し、その後、潜像形成された像を現像し、印刷用紙に転写・定着させ印刷する。
トナーユニット28は、画像形成部27により印刷される場合、紙に印字する粉末インクであるトナーとトナーを感光体へ付着させるために必要な現像剤を格納している。
その他の機器群29は、各種サイズの印刷用紙を収納した給紙カセット部と、給紙カセット部に収納された印刷用紙を取り出して画像形成部27へ搬送する給紙搬送部と、印刷後の印刷用紙を排紙トレイに排紙する俳紙部と、前述した各部を駆動する駆動部及び制御用センサ類である。
このように、画像形成装置20は、ネットワークI/F21を介して、利用者からの印刷データを受け取り、コントローラ部22により印刷データを解釈後、ラスタイメージ(ビットマップイメージ)を生成する。その後、画像形成装置20は、生成されたラスタイメージ(ビットマップイメージ)を、I/O入出力回路24を介して、エンジン部23で受け取り、画像形成部27により潜像、現像の順で処理を行い、現像された像を、給紙トレイから給紙された印刷用紙に転写、定着することで、印刷データを用紙に印刷する。
図2は、本発明の実施例1に係る印刷データ受信から印刷されるまでの流れを示す図である。
図1では、画像形成装置20が備えるハードウェア構成の機能を示し、構成するハードウェアが、印刷データを受け取り用紙へ印刷するまでの流れについて説明したが、図2では、画像形成装置20が有するプリンタアプリケーションを中心に、受け取った印刷データを解釈し、エンジン部23へ渡すラスタイメージを生成するまでの流れについて説明する。
コントローラ部22のコントローラ制御部221において、印刷データを印刷するために実行される主なプログラムは、プリンタアプリケーションである。まず、プリンタアプリケーションを構成する主な機能部について説明する。
プリンタアプリケーションは、印刷データ解釈部2211n、画像処理部2212を有しており、印刷データ解釈部2211nと画像処理部2212とが、別のプログラムとなっており、アプリケーション実行時に、別スレッドとして実行され、互いにデータをやり取りしながら協調動作する。
まず、プリンティングシステムが有するPDL切換部により、ネットワークI/F21を介して受け取った印刷データが、どのPDLで記述された印刷データかをPDL切換部で判断し、印刷データが解釈できる印刷データ解釈部2211nが起動される。
印刷データ解釈部2211nは、Hewletto-Packard社が開発したPCL(登録商標)、Adobe社が開発したPostScript(登録商標)等に代表されるPDL(ページ記述言語:Page Description Language)で記述された印刷データを解釈するインタプリタのプログラムである。
印刷データは、利用者のホストPC10に搭載されたプリンタドライバにより、PDLで記述され、生成される。
印刷データ内に記述されるPDLは、図形の種類、原点、大きさ、背景色、パターン、塗りつぶし等のグラフィック情報を、それぞれ別のコマンドで設定するようになっており、1つのグラフィックオブジェクト(以下、「オブジェクト」と言う。)をラスタイメージ(ビットマップイメージ)へ変換するために、複数のコマンドを解釈しなければならない。このため、印刷データ解釈部2211nは、PDLを解釈した後、各々のオブジェクトに対して必要となる図形の情報を1つにまとめたディスプレイリスト32に変換する。
ここで、印刷データ解釈部2211nにより生成されるディスプレイリスト32を含む中間データ30について、図3の中間データ30のデータ構成例を示す図を用いて説明する。
図3によれば、印刷データ解釈部2211nは、中間データ30のディスプレイリスト32を生成する際に、1ページ分のディスプレイリスト32を描画する、コントローラ部22が備えるRAM222の容量を考慮し、ディスプレイリスト32を、複数の帯状の領域(以下、「バンド」と言う。)に分割して行う場合(例えば、「バンド1〜4」。)があり、バンド1〜4とそのバンドに描画されるべき図形のバンド対応情報31もあわせて生成する。例えば、図3に示す、ディスプレイリスト32に展開された三角形に対しては、バンド1とバンド2の両方の領域に跨る形で描画されているため、バンド対応情報31に、バンド1に描画されるべき三角形の上部を示す「バンド1:三角形1」、バンド2に描画されるべき三角形の中・下部を示す「バンド2:三角形2」の情報が生成されることになる。
印刷データ解釈部2211nは、このようにして、印刷データ解釈後、コントローラ部22が備えるRAM222内の中間データメモリ領域2221へ、バンド対応情報31とディスプレイリスト32とで構成された中間データ30を書き込む。
また、印刷データ解釈部2211nは、印刷データにより指定された印刷条件(「解像度:X及びY方向における1インチ当たりのドット数(dot per inch)」、「ビット深さ:階調を表現するビット数(bit)」等。)を読み取り、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)が、指定された印刷条件(「解像度」、「ビット深さ」等。)に対応しているか否かを判断し、対応していない場合、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い、印刷条件(「解像度」、「ビット深さ」等。)を決定し、決定された印刷条件(「解像度」、「ビット深さ」等。)へ、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を変更するように、画像処理部2212へ要求する。
画像処理部2212は、印刷データ解釈部2211nにより生成された中間データ30を基に、階調処理(「ディザ処理」、「γ補正処理」等。)等の画像処理を行い、ラスタイメージ(ビットマップイメージ)へ変換する(以下、「ラスタライズ」と言う。)プログラムである。
画像処理部2212は、コントローラ部22が備えるRAM222内の中間データメモリ領域2221に書き込まれたディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、円、矩形、直線等のオブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
また、画像処理部2212は、印刷データ解釈部2211nが生成するディスプレイリスト32を基に、オブジェクト種別等を判断し、コントローラ部22が備えるRAM222上に展開されたディザパターン、γテーブルの内、コントローラ部22が備えるRAM222上に保持されたディザ設定情報テーブル2222に設定された印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン、γテーブルを用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行う。
ここで、画像処理部2212における階調処理について、図4のディザパターン及びγテーブルのデータ例を示す図を用いて説明する。
図4によれば、画像形成装置20は、オブジェクト種別(「文字」、「グラフィック」、「写真」)、カラープレーン別(「K(ブラック)」、「C(シアン)」、「M(マゼンタ)」、「Y(イエロー)」)、印刷条件(「解像度」、「ビット深さ」等。)毎に、最適な階調処理を行うためのディザパターン40、ディザパターン40に対応したγテーブル50を有している。
ディザパターン40は、ディザ法を用いた疑似階調表現を行うために用いられるドットの集合体で、ドット毎に描画を行うか否かの情報を持たせ、描画を行う情報を持ったドット領域の面積により階調を表現する。そのため、画像処理部2212は、図4に示す600dpi 1bitの文字用ディザのように、構成するドット数が少なく、パターン面積が小さいディザパターン40を用いることで、グラフィックや文字等のエッジをシャープに表現することができ、600dpi 1bitの写真用ディザのように、構成するドット数が多く、パターン面積が大きいディザパターン40を用いることで、写真等の画像における色の連続性を表現することができる。
γテーブル50は、ディザパターン40を用いて階調表現を行った際の画像形成装置20の階調特性を補正する(以下、「γ補正」と言う。)もので、ディザパターン40に対応している。γ補正は、一番暗い部分(0)から一番明るい部分(255)まで、どのようなカーブ(γカーブ:γ補正曲線)で変化させるかを補正する処理で、明るさの中間位置を変更させるものである。γ値は、入出力の階調特性を示す値であり、γ値が1(リニア)の場合、最適な階調が表現(印刷データが忠実に表現)されていることを示している。しかし、画像形成装置20は、印刷データの階調特性や階調表現を行う際に用いるディザパターン40の特性により、必ずしも、出力結果において理想的な階調特性(γ値1)を表現できない。そのため、例えば、印刷データの階調特性のγ値が1.8であれば、出力結果の階調特性のγ値を1に近似させるようなγ補正値を0.56(1÷1.8)を用いて、最適な階調を表現するためにγ補正を行う必要がある。そこで、画像処理部2212は、図4に示す指数関数的変化を示すγ補正曲線を有するγテーブル50を用いてγ補正を行う。
次に、画像処理部2212が変更及び参照するディザ設定情報テーブル2222について、図5のディザ設定情報テーブル2222のデータ構成例を示す図を用いて説明する。
ディザ設定情報テーブル2222は、プリンティングシステムが有するデータ(ディザ設定情報テーブル2222は、プログラム内に構造体として初期データが準備されている。)で、プリンティングシステムがコントローラ制御部221で実行している間は、コントローラ部22が備えるRAM222上へ一時的に保持され、プリンタアプリケーションが有する画像処理部2212によりデータが参照・更新される。よって、各PDLに対応したプリンタアプリケーション(「印刷データ解釈部2211n」、「画像処理部2212」を含む。)から参照・更新される。
ディザ設定情報テーブル2222は、印刷データにより指定される印刷条件(「解像度」、「ビット深さ」等。)と画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に別れ、それぞれに対応した、オブジェクト種別(「文字」、「グラフィック」、「写真」)、且つカラープレーン別(「K(ブラック)」、「C(シアン)」、「M(マゼンタ)」、「Y(イエロー)」)の印刷条件(「解像度」、「ビット深さ」等。)で構成されており、印刷データにより指定された印刷条件(「解像度」、「ビット深さ」等。)に対し、印刷データ解釈部2211nが判断し決定した、印刷データの指定に最も近い、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)が対応付けられている。
例えば、印刷データが、X及びY方向の解像度300dpi、ビット深さ1bitの印刷条件を指定した場合、図5(a)のディザ設定情報テーブル2222のデータ構成例に示すように、画像形成装置20は、対応する印刷条件(「X:300dpi,Y3:300dpi」、「1bit」)を有していないため、画像形成装置20が有するX及びY方向の解像度600dpi、ビット深さ1bitの印刷条件が対応付けられている。
画像処理部2212は、階調処理(「ディザ処理」、「γ補正処理」等。)を行う際、このようなデータ構造を持つディザ設定情報テーブル2222を参照し、印刷データにより指定された印刷条件(「解像度」、「ビット深さ」等。)に対し、対応付けられた画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて処理を行う。
また、画像処理部2212は、印刷データ解釈部2211nから、ディザ設定情報テーブル2222の設定情報の変更要求があった場合、階調処理(「ディザ処理」、「γ補正処理」等。)を行う前に、ディザ設定情報テーブル2222を、印刷データ解釈部2211nにより決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更する。
ディザ設定情報テーブル2222は、プリンティングシステムが起動した際、図5(b)のディザ設定情報テーブル2222の初期データ構成例のように、全ての値が’0’に設定され、初期化された状態となっている。
例えば、図5(c)のディザ設定情報テーブル2222のデータ更新した際のデータ例に示すように、画像処理部2212は、印刷データが、X及びY方向の解像度300dpi、ビット深さ1bitの印刷条件を指定した場合、印刷データ解釈部2211nにより、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に最も近い、X及びY方向の解像度600dpi、ビット深さ1bitの印刷条件を適用することが決定され、決定された印刷条件に従い、オブジェクト種別(「文字」、「グラフィック」、「写真」)、且つカラープレーン別(「K(ブラック)」、「C(シアン)」、「M(マゼンタ)」、「Y(イエロー)」)の印刷条件(「解像度」、「ビット深さ」等。)項目へ設定する。また、図5(d)に示すように、画像処理部2212は、印刷データが、X及びY方向の解像度1200dpi、ビット深さ2bitの印刷条件を指定した場合、印刷データ解釈部2211nにより、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に最も近い、X及びY方向の解像度1200dpi、ビット深さ1bitの印刷条件を適用することが決定され、決定された印刷条件に従い、オブジェクト種別(「文字」、「グラフィック」、「写真」)、且つカラープレーン別(「K(ブラック)」、「C(シアン)」、「M(マゼンタ)」、「Y(イエロー)」)の印刷条件(「解像度」、「ビット深さ」等。)項目へ設定する。
プリンティングシステムは、プリンタアプリケーションが有する印刷データ解釈部2211n、画像処理部2212等が、印刷条件(「解像度」、「ビット深さ」等。)のデータを参照・更新、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)のデータを書き込み(描画)するためのAPI(Application Program Interface)を用意している。
プリンタアプリケーションが有する印刷データ解釈部2211n、画像処理部2212は、各プログラムにプリンティングシステムから提供されたAPIを組み込むことで、印刷データ解釈部2211n、画像処理部2212のプログラムが実行された際、APIの引数を設定することで、ディザ設定情報テーブル2222内の印刷条件(「解像度」、「ビット深さ」等。)の参照・更新、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)をコントローラ部22が備えるRAM222の中間データメモリ領域2221へ書き込むことが可能となる。
このように、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された印刷データ(図2の1-1)をネットワークI/F21を介して受け取り(図2の1-2)、受け取った印刷データに対し、プリンティングシステムが有するPDL切換部により、印刷データを解釈可能なPDLインタプリタである印刷データ解釈部2211nを起動させ(図2の1-3)、印刷データ解釈部2211nにより、印刷データを解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)を読み取り、指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20の有する印刷条件(「解像度」、「ビット深さ」等。)で対応できないと判断された場合(図2の1-4)、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)を決定し、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更するように、画像処理部2212へ要求する(図2の1-5)。
また、プリンタアプリケーションは、印刷データ解釈部2211nにより、印刷データ内のPDLコマンドを基に、中間データ30であるディスプレイリスト32、バンド対応情報31を生成し、コントローラ部22が備えるRAM222の中間データメモリ領域2221へ書き込む(図2の1-6)。
次に、プリンタアプリケーションは、画像処理部2212により、印刷データ解釈部2211nから、ディザ設定情報テーブル2222の変更要求があった場合(図2の1-5)、その要求に従い、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、印刷データ解釈部2211nにより判断され決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更する(図2の1-7)。
その後、プリンタアプリケーションは、画像処理部2212により、ディザ設定情報テーブル2222を参照し、RAM222上に展開されたディザパターン40、γテーブル50の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)を取得して(図2の1-7)、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し(図2の1-8)、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、RAM222上に展開されたディザパターン40、γテーブル50の内、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて(図2の1-8)階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する(図2の1-9)。
その結果、画像形成装置20は、エンジン部23が備えるRAM232上のページメモリ領域2321に描画されたラスタイメージ(ビットマップイメージ)を、画像形成部27により潜像、現像の順で処理を行い(図2の1-10)、エンジン部23により用紙へ印刷する(図2の1-11)。
図6は、本発明の実施例1に係る主要部の構成例を示すブロック図である。
図6の構成は、印刷データ解釈手段61、画像処理手段62に分かれている。
印刷データ解釈手段61は、PDLで記述された印刷データを解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)と、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)とを基に、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222の変更要求を発行、及び。PDLコマンドを基に、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)の生成を行う。
印刷データ解釈手段61は、印刷データにより指定された印刷条件(「解像度」、「ビット深さ」等。)を読み取り、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)が、指定された印刷条件(「解像度」、「ビット深さ」等。)に対応しているか否かを、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に対応したディザパターン40、γテーブル50の有無から判断し、対応していない場合、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い、印刷条件(「解像度」、「ビット深さ」等。)を決定し、決定された印刷条件(「解像度」、「ビット深さ」等。)へ、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を変更するように、画像処理部2212へ要求する。
また、印刷データ解釈手段61は、印刷データ内のPDLコマンドを解釈し、印刷データを構成するオブジェクト種別のグラフィック情報を、1ページ毎に読み取り、ページを構成する各オブジェクトに対して必要となるグラフィック情報を基に、中間データ30のディスプレイリスト32を生成する。また、印刷データ解釈手段61は、中間データ30のディスプレイリスト32を生成する際に、1ページ分のディスプレイリスト32を描画する、コントローラ部22が備えるRAM222の容量を考慮し、ディスプレイリスト32を、複数のバンドに分割して行う場合があり、バンドとそのバンドに描画されるべき図形のバンド対応情報31もあわせて生成する。印刷データ解釈手段61は、このようにして、印刷データ解釈後、コントローラ部22が備えるRAM222内の中間データメモリ領域2221へ、バンド対応情報31とディスプレイリスト32とで構成された中間データ30を書き込む。
印刷データ解釈手段61は、プリンタアプリケーションが有する印刷データ解釈部2211nにより行われる。
画像処理手段62は、コントローラ部22が備えるRAM222内の中間データメモリ領域2221に書き込まれたディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、円、矩形、直線等のオブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
また、画像処理手段62は、印刷データ解釈手段61が生成するディスプレイリスト32を基に、オブジェクト種別等を判断し、コントローラ部22が備えるRAM222上に展開されたディザパターン40、γテーブル50の内、コントローラ部22が備えるRAM222上に保持されたディザ設定情報テーブル2222に設定された印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行う。
画像処理手段62は、階調処理(「ディザ処理」、「γ補正処理」等。)を行う際、ディザ設定情報テーブル2222を参照し、印刷データにより指定された印刷条件(「解像度」、「ビット深さ」等。)に対し、対応付けられた画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に従い処理を行う。
また、画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル2222の設定情報の変更要求があった場合、階調処理(「ディザ処理」、「γ補正処理」等。)を行う前に、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更する。
画像処理手段62は、プリンタアプリケーションが有する画像処理部2212により行われる。
このように、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された印刷データを、印刷データ解釈手段61により解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)を読み取り、指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20の有する印刷条件(「解像度」、「ビット深さ」等。)で対応できないと判断された場合、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)を決定し、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更するように、画像処理手段62へ要求する。
また、プリンタアプリケーションは、印刷データ解釈手段61により、印刷データ内のPDLコマンドを基に、中間データ30であるディスプレイリスト32、バンド対応情報31を生成し、コントローラ部22が備えるRAM222の中間データメモリ領域2221へ書き込む。
次に、プリンタアプリケーションは、画像処理手段62により、印刷データ解釈手段61から、ディザ設定情報テーブル2222の変更要求があった場合、その要求に従い、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、印刷データ解釈手段61により判断され決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更する。
その後、プリンタアプリケーションは、画像処理手段62により、ディザ設定情報テーブル2222を参照し、RAM222上に展開されたディザパターン40、γテーブル50の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)を取得して、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、RAM222上に展開されたディザパターン40、γテーブル50の内、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
よって、画像形成装置20は、印刷データで指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20が対応していない印刷条件(「解像度」、「ビット深さ」等。)であっても、エラーとならず、ディザ設定情報テーブル2222により、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)が対応付けられ、その印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて印刷することができる。
図7は、本発明の実施例1に係る印刷データ解釈手段61の処理を示すフローチャートである。
印刷データ解釈手段61は、印刷データ解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)を読み取る(S101)。次に、印刷データ解釈手段61は、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に対応したディザパターン40、γテーブル50の種類を確認する(S102)。
次に、印刷データ解釈手段61は、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40があるか否かを判定する(S103)。
印刷データ解釈手段61は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40がない場合(画像形成装置20が、指定された印刷条件(「解像度」、「ビット深さ」等。)に対応していない場合)(S103がNO)、画像処理部2212へ、ディザ設定情報テーブル2222を、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けた、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に変更するように要求する(S104)。その後、印刷データ解釈手段61は、印刷データ内のPDLコマンドを解釈し、印刷データを構成するオブジェクト種別のグラフィック情報を、1ページ毎に読み取り、ページを構成する各オブジェクトに対して必要となるグラフィック情報を基に、中間データ30のバンド対応情報31、ディスプレイリスト32を生成する(S105)。
また、印刷データ解釈手段61は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40がある場合(S103がYES)、印刷データ内のPDLコマンドを解釈し、印刷データを構成するオブジェクト種別のグラフィック情報を、1ページ毎に読み取り、ページを構成する各オブジェクトに対して必要となるグラフィック情報を基に、中間データ30のバンド対応情報31、ディスプレイリスト32を生成する(S105)。
最後に、印刷データ解釈手段61は、コントローラ部22が備えるRAM222内の中間データメモリ領域2221へ、プリンティングシステムのAPIを介して、バンド対応情報31とディスプレイリスト32とで構成された中間データ30を書き込む(S106)。
図8は、本発明の実施例1に係る印刷データ解釈手段61において、ディザパターン40の有無を判断する処理を示すフローチャートである。
図8は、図7に示すS103において、印刷データ解釈手段61が、読み取った印刷データの印刷条件(「解像度」、「ビット深さ」等。)に対応付けた、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を決定する方法について説明するものである。
印刷データ解釈手段61は、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40があるか否かを判定する(S1031)。
印刷データ解釈手段61は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40がない場合(画像形成装置20が、指定された印刷条件(「解像度」、「ビット深さ」等。)に対応していない場合)(S1031がNO)、画像形成装置20が有する印刷条件の解像度、ビット深さにおいて、画像形成装置20が有する印刷条件のビット深さが、印刷データが指定した印刷条件のビット深さと異なるが、解像度が一致し、該当するディザパターン40があるか否かを判定する(S1032)。
印刷データ解釈手段61は、ビット深さは異なるが、解像度が一致する条件に該当するディザパターン40がある場合(S1032がYES)、この時の画像形成装置20が有する印刷条件の解像度、ビット深さを、現在、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付ける印刷条件(「解像度」、「ビット深さ」等。)と決定し、決定した印刷条件(「解像度」、「ビット深さ」等。)を保持する(S1034)。
また、印刷データ解釈手段61は、ビット深さは異なるが、解像度が一致する条件に該当するディザパターン40がない場合(S1032がNO)、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に最も近い、印刷条件(「解像度」、「ビット深さ」等。)を決定する(S1033)。その後、印刷データ解釈手段61は、決定した印刷条件(「解像度」、「ビット深さ」等。)を保持する(S1034)。
印刷データ解釈手段61は、ディザ設定情報テーブル2222の設定情報を、決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更するため、画像処理部2212へ、ディザ設定情報テーブル2222の変更を要求する(S104)。
印刷データ解釈手段61は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40がある場合(S1031がYES)、ディザ設定情報テーブル2222へ更新要求をしない。
このように、印刷データ解釈手段61は、ホストPC10から送信された印刷データを解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)を読み取り、指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20の有する印刷条件(「解像度」、「ビット深さ」等。)で対応できないと判断された場合、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)を決定し、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更するように、画像処理手段62へ要求する。
また、印刷データ解釈手段61は、印刷データ内のPDLコマンドを基に、中間データ30であるディスプレイリスト32、バンド対応情報31を生成し、コントローラ部22が備えるRAM222の中間データメモリ領域2221へ書き込む。
図9は、本発明の実施例1に係る画像処理手段62の処理を示すフローチャートである。
画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル2222の変更要求を受け取ったか否かを判定する(S201)。
画像処理手段62は、ディザ設定情報テーブル2222の変更要求を受け取った場合(S201がYES)、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更する(S202)。
次に、画像処理手段62は、コントローラ部22が有するRAM222上の中間データメモリ領域2221に、印刷データ解釈手段61により中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)が書き込まれた否かを判定する(S203)。
画像処理手段62は、中間データメモリ領域2221に書き込みがない場合(S203がNO)、印刷データ解釈手段61により中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)が書き込まれるまで待つ。
また、画像処理手段62は、中間データメモリ領域2221に書き込みがあった場合(S203がYES)、更新されたディザ設定情報テーブル2222を参照し、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられた、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を取得する(S204)。
画像処理手段62は、ディザ設定情報テーブル2222の変更要求を受け取らなかった場合(S201がNO)、印刷データ解釈手段61により中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)が書き込まれた否かを判定する(S208)。
画像処理手段62は、中間データメモリ領域2221に書き込みがない場合(S208がNO)、印刷データ解釈手段61により中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)が書き込まれるまで待つ。
また、画像処理手段62は、中間データメモリ領域2221に書き込みがあった場合(S208がYES)、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)を、印刷データ解釈手段61より取得する(S209)。
次に、画像処理手段62は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応した印刷条件(「解像度」、「ビット深さ」等。)を、画像形成装置20が有していなかった場合、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)、又、対応した印刷条件(「解像度」、「ビット深さ」等。)を、画像形成装置20が有していた場合、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)を基に、画像形成装置20が有するディザパターン40、γテーブル50を確認する(S205)。
次に、画像処理手段62は、ディザ設定情報テーブル2222を参照し、RAM222上に展開されたディザパターン40、γテーブル50の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を取得する(S206)。
最後に、画像処理手段62は、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、RAM222上に展開されたディザパターン40、γテーブル50の内、ディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する(S207)。
このように、画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル2222の変更要求があった場合、その要求に従い、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、印刷データ解釈手段61により判断され決定した印刷条件(「解像度」、「ビット深さ」等)へ変更する。
その後、画像処理手段62は、ディザ設定情報テーブル2222を参照し、RAM222上に展開されたディザパターン40、γテーブル50の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)を取得して、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、RAM222上に展開されたディザパターン40、γテーブル50の内、取得した印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
図10は、本発明の実施例1に係る印刷データ解釈部2211nと画像処理部2212との間で行われる処理を示す図である。
印刷データ解釈手段61は、印刷データを解釈し、読み取った印刷条件(「解像度」、「ビット深さ」等。)を基に、画像形成装置20が、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に対応したディザパターン40を有しているか否かを判断し、画像形成装置20が、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に対応したディザパターン40を有していなければ、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に最も近い、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を決定し、ディザ設定情報テーブル2222を、決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更するため、画像処理手段62へ、ディザ設定情報テーブル2222の変更を要求する。
画像処理手段62は、印刷データ解釈手段61により要求を受け取り、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更する。
印刷データ解釈手段61は、印刷データのPDLコマンドを基に、バンド対応情報31、ディスプレイリスト32を作成し、中間データメモリ領域2221へ書き込む。
画像処理手段62は、ディザ設定情報テーブル2222を変更した後、印刷データ解釈手段61により、中間データメモリ領域2221へ、バンド対応情報31、ディスプレイリスト32が書き込まれた否かを判断し、書き込まれた場合、更新されたディザ設定情報テーブル2222を参照し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)に対応付けられた、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を取得し、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、RAM222上に展開されたディザパターン40、γテーブル50の内、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
以上のように、本発明の実施例1によれば、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された印刷データを、印刷データ解釈手段61により解釈し、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)を読み取り、指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20の有する印刷条件(「解像度」、「ビット深さ」等。)で対応できないと判断された場合、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)を決定し、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更するように、画像処理手段62へ要求し、画像処理手段62により、その要求に従い、コントローラ部22が備えるRAM222に保持されたディザ設定情報テーブル2222を、印刷データ解釈手段61により判断され決定した印刷条件(「解像度」、「ビット深さ」等。)へ変更することで、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)を取得し、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、決定したオブジェクト種別を基に、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画することができる。
よって、画像形成装置20は、印刷データで指定された印刷条件(「解像度」、「ビット深さ」等。)が、画像形成装置20が対応していない印刷条件(「解像度」、「ビット深さ」等。)であった場合、適用するディザパターン40、γテーブル50が存在しないため、印刷時にエラーとなり、印刷できなかった印刷データに対しても、ディザ設定情報テーブル2222により、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、指定された印刷条件(「解像度」、「ビット深さ」等。)に最も近い印刷条件(「解像度」、「ビット深さ」等。)が対応付けられ、その印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて印刷することができる。
また、実施例1では、フルカラー印刷機能を有する画像形成装置20を対象として説明を行ってきたが、モノクロ印刷機能を有する画像形成装置20においても、ディザ設定情報テーブル2222のカラープレーン項目のK(ブラック)のみを用いて実施可能である。
実施例2は、印刷データが指定する印刷条件(「解像度」、「ビット深さ」等。)において、解像度、ビット深さ以外の印刷条件であるカラーマッチング方法が指定された場合について考慮したものである。
実施例1との違いは、ディザ設定情報テーブルに加え、カラープロファイル設定情報テーブルを有する点である。
よって、実施例2では、図1の画像形成装置のハードウェア構成、図2の印刷データ受信から印刷されるまでの流れ、図3の中間データのデータ構成例、図4のディザパターン及びγテーブルのデータ例、図5(a)のディザ設定情報テーブルのデータ構成例、図5(b)のディザ設定情報テーブルの初期データ構成例、図5(c)及び図5(d)のディザ設定情報テーブルのデータ更新した際のデータ例について、実施例1と同様であるため、図1〜5を用いると伴に、実施例2の説明において、同一符号を付与して説明を省略する。
また、実施例2では、以降に説明する、図12の主要部の構成例、図14の印刷データ解釈手段の処理、図15の印刷データ解釈手段において、画像形成装置内に該当するカラープロファイルの有無を判断する処理、図16の画像処理手段の処理、図18の印刷データ解釈部と画像処理部との間で行われる処理について、一部、実施例1で示した図6〜10と同様の構成例及び処理が含まれるため、同様の構成例及び処理については、同一符号を付与して説明を省略し、実施例2に関する箇所のみ説明する。
図11は、本発明の実施例2に係るカラープロファイル70のデータ例を示す図である。
カラープロファイルデータは、フルカラー印刷機能を有した画像形成装置20において、カラーマッチング処理を行う際に用いられる。
画像形成装置20において行われるカラーマッチング処理とは、ホストPC10等に接続されたモニタ上で表示される印刷データの画像と、画像形成装置20で印刷する色の違いを少なくするための方法で、モニタではRGBの光の3原色により色表現するのに対し、画像形成装置20ではCMYKの4つの色により色表現を行っており、両者において、色の表現方法が異なるため、モニタで表示した印刷データの画像をそのまま印刷し、画像形成装置20の印刷結果において色を表現することは難しく、画像形成装置20の機種によっても、同じ画像でも色の表現の違いが出てくることから、このような色の表現差を無くすために、画像形成装置20に色表現の特性を記録したデータ、カラープロファイル70を用意し、その違いを計算して、印刷データの画面表示の色表現と、画像形成装置20の印刷結果をなるべく同じくしようとするものである。
図11に示すように、画像形成装置20が有するカラープロファイル70は、印刷データを構成するオブジェクト種別(「文字」、「グラフィック」、「写真」等。)、印刷される紙種別(「普通紙」、「OHP」、「厚紙」等。)に用意されており、それぞれのカラープロファイル70において、印刷データ特性、紙種に対応し、画像形成装置20の色再現の特性を考慮した、最適な色表現を行う(RGBからCMYKへ変換する)ための変換値で構成されている。
このように、画像形成装置20は、ディザパターン40、γテーブル50だけでなく、カラープロファイル70のような機種に依存するデータを有している。
図12は、本発明の実施例2に係る主要部の構成例を示すブロック図である。
図12の構成は、印刷データ解釈手段61、画像処理手段62に分かれている。
図6に示した実施例1に係る主要部の構成例との違いは、コントローラ部22が備える主記憶部222に、カラープロファイル70、カラープロファイル設定情報テーブル2222が保持されている点である。
ここで、本発明の実施例2に係るカラープロファイル設定情報テーブル2222のデータ構成例を示す図13について説明する。
カラープロファイル設定情報テーブル2222は、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を識別する番号と、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を識別する番号とで構成されており、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対し、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)のカラープロファイルが対応付けられている。
例えば、カラーマッチング方法の「鮮やかさ優先」に対応したカラープロファイルを識別する番号を1、「階調優先」に対応したカラープロファイルを識別する番号を2、「厚紙」に対応したカラープロファイルを識別する番号を4、「OHP」に対応したカラープロファイルを識別する番号を5とした場合、「鮮やかさ優先(1)」、「階調優先(2)」に対応したカラープロファイルを有する画像形成装置20に対し、「OHP」のカラーマッチング方法を指定した印刷データを送信すると、図13のカラープロファイル設定情報テーブル2222のデータ構成例に示すように、画像形成装置20は、対応するカラーマッチング方法(「OHP(5)」)のカラープロファイルを有していないため、画像形成装置20が有する「鮮やかさ優先(1)」のカラープロファイルが対応付けられている。
以降に、カラープロファイル70、カラープロファイル設定情報テーブル2222に係わる印刷データ解釈手段61、画像処理手段62についてのみ説明する。よって、実施例2の印刷データ解釈手段61、画像処理手段62において、実施例1の印刷データ解釈手段61、画像処理手段62と同様の内容については省略する。
印刷データ解釈手段61は、印刷データにより指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を読み取り、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応しているか否かを、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応したカラープロファイル70の有無から判断し、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応していない場合、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近い、カラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定し、決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を変更するように、画像処理部2212へ要求する。
画像処理手段62は、コントローラ部22が備えるRAM222上に展開されたカラープロファイル70の内、コントローラ部22が備えるRAM222上に保持されたカラープロファイル設定情報テーブル2222に設定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いてカラーマッチング処理を行う。
画像処理手段62は、カラーマッチング処理を行う際、カラープロファイル設定情報テーブル2222を参照し、印刷データにより指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対し、対応付けられた画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従い処理を行う。
また、画像処理手段62は、印刷データ解釈手段61から、カラープロファイル設定情報テーブル2222の設定情報の変更要求があった場合、カラーマッチング処理を行う前に、カラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更する。
このように、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された印刷データを、印刷データ解釈手段61により解釈し、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を読み取り、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、画像形成装置20の有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)で対応できないと判断された場合、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近いカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定し、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更するように、画像処理手段62へ要求する。
次に、プリンタアプリケーションは、画像処理手段62により、印刷データ解釈手段61から、カラープロファイル設定情報テーブル2222の変更要求があった場合、その要求に従い、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により判断され決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更する。
その後、プリンタアプリケーションは、画像処理手段62により、RAM222上に展開されたカラープロファイル70の内、カラープロファイル設定情報テーブル2222を参照し、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けられたカラープロファイル設定情報テーブル2222のカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いてカラーマッチング処理を行う。
よって、画像形成装置20は、印刷データで指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、画像形成装置20が対応していないカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)であっても、エラーとならず、カラープロファイル設定情報テーブル2222により、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近いカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が対応付けられ、そのカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いて印刷することができる。
図14は、本発明の実施例2に係る印刷データ解釈手段61の処理を示すフローチャートである。
図14は、実施例1に示した図7の印刷データ解釈手段61の処理と同様の処理を含んでいるため、同様の処理については、同一符号を付与し説明を省略すると伴に、実施例1と違う処理を行っている箇所を点線枠にて示し、点線枠の箇所を中心に説明する。
印刷データ解釈手段61は、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)に対応したディザパターン40、γテーブル50の種類を確認(S102)した後、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応するカラープロファイル70の種類を確認する(S301)。
印刷データ解釈手段61は、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に該当するディザパターン40があるか否かを判定した(S103)後、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70があるか否かを判定する(S302)。
印刷データ解釈手段61は、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70がない場合(画像形成装置20が、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応していない場合)(S302がNO)、画像処理部2212へ、カラープロファイル設定情報テーブル2222を、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けた、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に変更するように要求する(S303)。その後、印刷データ解釈手段61は、印刷データ内のPDLコマンドを解釈し、中間データ30のバンド対応情報31、ディスプレイリスト32を生成する(S105)。
また、印刷データ解釈手段61は、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70がある場合(S302がYES)、印刷データ内のPDLコマンドを解釈し、中間データ30のバンド対応情報31、ディスプレイリスト32を生成する(S105)。
図15は、本発明の実施例2に係る印刷データ解釈手段において、画像形成装置内に該当するカラープロファイル70の有無を判断する処理を示すフローチャートである。
図15は、図14に示すS302において、印刷データ解釈手段61が、読み取った印刷データのカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けた、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定する方法を示すものである。
印刷データ解釈手段61は、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70があるか否かを判定する(S3021)。
印刷データ解釈手段61は、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70がない場合(画像形成装置20が、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応していない場合)(S3021がNO)、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近い、カラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定する(S3022)。その後、印刷データ解釈手段61は、決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を識別する番号(設定情報)を保持する(S3023)。
印刷データ解釈手段61は、カラープロファイル設定情報テーブル2222の設定情報を、決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更するため、画像処理部2212へ、カラープロファイル設定情報テーブル2222の変更を要求する(S303)。
印刷データ解釈手段61は、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に該当するカラープロファイル70がある場合(S3021がYES)、カラープロファイル設定情報テーブル2222へ更新要求をしない。
このように、印刷データ解釈手段61は、ホストPC10から送信された印刷データを解釈し、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を読み取り、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、画像形成装置20の有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)で対応できないと判断された場合、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近いカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定し、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更するように、画像処理手段62へ要求する。
図16は、本発明の実施例2に係る画像処理手段62の処理を示すフローチャートである。
図16は、実施例1に示した図9の画像処理手段62の処理と同様の処理を含んでいるため、同様の処理については、同一符号を付与し説明を省略すると伴に、実施例1と違う処理を行っている箇所を点線枠にて示し、点線枠の箇所を中心に説明する。
画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、又はカラープロファイル設定情報テーブル2222の変更要求を受け取ったか否かを判定する(S401)。
画像処理手段62は、ディザ設定情報テーブル、又はカラープロファイル設定情報テーブル2222の変更要求を受け取った場合(S401がYES)、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定された印刷条件(「解像度」、「ビット深さ」等。)、また、カラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更(識別する番号を変更)する(S402)。
次に、画像処理手段62は、印刷データ解釈手段61から、中間データメモリ領域2221に中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)の書き込みを判定し(S203)、書き込みがあった場合(S203がYES)、更新されたディザ設定情報テーブル2222を参照し、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられた、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を取得した(S204)後、更新されたカラープロファイル設定情報テーブル2222を参照し、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けられた、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を取得(識別する番号を取得)する(S403)。
画像処理手段62は、ディザ設定情報テーブル、又はカラープロファイル設定情報テーブル2222の変更要求を受け取らなかった場合(S401がNO)、印刷データ解釈手段61から、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)の書き込みを判定し(S208)、書き込みがあった場合(S208がYES)、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)を、印刷データ解釈手段61より取得した(S209)後、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を、印刷データ解釈手段61より取得する(S407)。
次に、画像処理手段62は、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)、又、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)を基に、画像形成装置20が有するディザパターン40、γテーブル50を確認し(S205)、取得した(S206)後、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を、画像形成装置20が有していなかった場合、カラープロファイル設定情報テーブル2222から取得したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)、又、対応したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を、画像形成装置20が有していた場合、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を基に、画像形成装置20が有するカラープロファイル70を確認する(S404)。
次に、画像処理手段62は、カラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を取得する(S405)。
最後に、画像処理手段62は、取得したカラープロファイル70を用いてカラーマッチング処理、その後、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、取得したディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する(S406)。
このように、画像処理手段62は、印刷データ解釈手段61から、カラープロファイル設定情報テーブル2222の変更要求があった場合、その要求に従い、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により判断され決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更する。
その後、画像処理手段62は、RAM222上に展開されたカラープロファイル70の内、カラープロファイル設定情報テーブル2222を参照し、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けられたカラープロファイル設定情報テーブル2222のカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いてカラーマッチング処理を行う。
図17は、本発明の実施例2に係る画像処理手段62において、設定情報テーブル変更要求を判断する処理を示すフローチャートである。
図17は、図16に示すS401、S402において、画像処理手段62が、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の変更要求を受け取り、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222を変更する方法を示すものである。
画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の変更要求を受け取ったか否かを判定する(S4011)。
画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の変更要求を受け取った場合(S4011がYES)、印刷データ解釈手段61からの変更要求が、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の両方を変更する要求か否かを判定する(S4012)。
画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の両方を変更する要求を受け取った場合(S4012がYES)、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更する(S4021)。次に、画像処理手段62は、カラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更(識別する番号を変更)する(S4022)。
また、画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222のどちらか一方を変更する要求を受け取った場合(S4012がNO)、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222のどちらを変更する要求かを判定する(S4013)。
画像処理手段62は、ディザ設定情報テーブル2222を変更する要求を受け取った場合(S4013が「ディザ設定情報テーブル2222」)、ディザ設定情報テーブル2222を、印刷データ解釈手段61により決定された印刷条件(「解像度」、「ビット深さ」等。)へ変更する(S4023)。
また、画像処理手段62は、カラープロファイル設定情報テーブル2222を変更する要求を受け取った場合(S4013が「カラープロファイル設定情報テーブル2222」)、カラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更(識別する番号を変更)する(S4024)。
次に、画像処理手段62は、印刷データ解釈手段61から、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)の書き込みを判定する(S203。)
また、画像処理手段62は、印刷データ解釈手段61から、ディザ設定情報テーブル、カラープロファイル設定情報テーブル2222の変更要求を受け取らなかった場合(S4011がNO)、印刷データ解釈手段61から、中間データ30(「バンド対応情報31」、「ディスプレイリスト32」)の書き込みを判定する(S208。)
図18は、本発明は実施例2に係る印刷データ解釈部2211nと画像処理部2212との間で行われる処理を示す図である。
図18は、実施例1に示した図10の印刷データ解釈部2211nと画像処理部2212との間で行われる処理と同様の処理を含んでいるため、同様の処理については、同一符号を付与し説明を省略すると伴に、実施例1と違うカラープロファイル設定情報テーブル2222、カラープロファイル70に関する処理についてのみ説明する。
印刷データ解釈手段61は、印刷データを解釈し、読み取ったカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を基に、画像形成装置20が、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応したカラープロファイル70を有しているか否かを判断し、画像形成装置20が、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応したカラープロファイル70を有していなければ、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近い、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定し、カラープロファイル設定情報テーブル2222を、決定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更(識別する番号を変更)するため、画像処理手段62へ、カラープロファイル設定情報テーブル2222の変更を要求する。
画像処理手段62は、印刷データ解釈手段61により要求を受け取り、カラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更(識別する番号を変更)する。
印刷データ解釈手段61は、印刷データのPDLコマンドを基に、バンド対応情報31、ディスプレイリスト32を作成し、中間データメモリ領域2221へ書き込む。
画像処理手段62は、カラープロファイル設定情報テーブル2222を変更した後、印刷データ解釈手段61により、中間データメモリ領域2221へ、バンド対応情報31、ディスプレイリスト32が書き込まれた否かを判断し、書き込まれた場合、更新されたカラープロファイル設定情報テーブル2222を参照し、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けられた、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を取得し、取得したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いてカラーマッチング処理を行うと伴に、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈してオブジェクトの種類を決定し、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画する。
以上のように、本発明の実施例2によれば、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された印刷データを、印刷データ解釈手段61により解釈し、印刷データが指定するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を読み取り、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、画像形成装置20の有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)で対応できないと判断された場合、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近いカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)を決定し、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更するように、画像処理手段62へ要求し、画像処理手段62により、その要求に従い、コントローラ部22が備えるRAM222に保持されたカラープロファイル設定情報テーブル2222を、印刷データ解釈手段61により判断され決定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)へ変更することで、RAM222上に展開されたカラープロファイル70の内、カラープロファイル設定情報テーブル2222を参照し、印刷データが指定したカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に対応付けられたカラープロファイル設定情報テーブル2222のカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いてカラーマッチング処理を行い、ラスタイメージ(ビットマップイメージ)をエンジン部23が備えるRAM232上のページメモリ領域2321へ描画することができる。
よって、画像形成装置20は、印刷データで指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が、画像形成装置20が対応していないカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)であった場合、適用するカラープロファイル70が存在しないため、印刷時にエラーとなり、印刷できなかった印刷データに対しても、カラープロファイル設定情報テーブル2222により、画像形成装置20が有するカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)の内、指定されたカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に最も近いカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)が対応付けられ、そのカラーマッチング方法(「鮮やかさ優先」、「階調優先」等。)に従ったカラープロファイル70を用いて印刷することができる。
また、実施例2では、カラーマッチング機能を有する画像形成装置20を対象として説明を行ってきたが、カラーマッチング機能の他、機種に依存する処理を行う機能(例えば、総量規制等。)を有する画像形成装置20においても、カラーマッチング設定情報テーブル2222のように、印刷データが指定する印刷条件に対し、画像形成装置20が有する印刷条件を対応付ける情報を用いることで実施可能である。
実施例3は、描画オプションであるブラシパターンを含んだ印刷データを印刷する際、適用するディザパターンによって、ブラシパターンとディザパターンとが干渉してしまうことがあり、印刷結果に干渉縞(モアレ)が発生し品質を低下させてしまうため、印刷時のブラシパターンとディザパターンとの干渉を防止する方法について提案するものである。
実施例1との違いは、ディザパターン、γテーブルを用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、エンジン部23が備えるRAM232上のページメモリ領域2321へ、ディザパターンの大きさ分描画したラスタイメージ(ビットマップイメージ)を解析し、干渉しているか否かを判断する点である。
よって、実施例3では、図1の画像形成装置のハードウェア構成、図2の印刷データ受信から印刷されるまでの流れ、図3の中間データのデータ構成例、図4のディザパターン及びγテーブルのデータ例、図5(a)のディザ設定情報テーブルのデータ構成例、図5(b)のディザ設定情報テーブルの初期データ構成例、図5(c)及び図5(d)のディザ設定情報テーブルのデータ更新した際のデータ例、図6の主要部の構成例、図7の印刷データ解釈手段の処理、図8の印刷データ解釈手段において、ディザパターンの有無を判断する処理、図9の画像処理手段の処理、図10の印刷データ解釈部と画像処理部との間で行われる処理について、実施例1と同様であるため、図1〜10を用いると伴に、実施例3の説明において、同一符号を付与して説明を省略する。
また、実施例3では、以降に説明する、図20の画像処理手段における描画処理について、一部、実施例1で示した図9のS205〜S207と同様の処理が含まれるため、同様の処理については、同一符号を付与して説明を省略し、実施例3に関する箇所のみ説明する。
図19は、本発明の実施例3に係るブラシパターンとディザパターン40による描画例を示す図である。
図19(a)は、ブラシパターンが正常に描画された例を示しており、図19(a)の左に示す、階調処理(「ディザ処理」、「γ補正処理」等。)の際に使用するディザパターン40と、図19(a)の右に示す、印刷データに含まれるブラシパターンとのドットパターンが同じとなっているため、干渉せず描画することができる。
一方、図19(b)は、ブラシパターンとディザパターン40が干渉した例を示しており、図19(b)の左に示すディザパターン40と、図19(b)の右に示すブラシパターンとのドットパターンが逆になっているため、干渉を起こし、ドットが抜けた状態で描画されてしまう(ドットが抜けた状態で表現されるため、実際には何も描画しない)。
図19(b)で挙げた例は、ディザパターン40を形成するドットとブラシパターンを描画するドットの大きさが同じ場合を想定した例であったが、実際の印刷データで使用されるブラシパターンは、さまざまな形状で表現されており、干渉を起こすパターンと干渉を起こさないパターンとが混在し、印刷結果に干渉縞(モアレ)を発生させてしまう。
図20は、本発明の実施例3に係る画像処理手段62における描画処理を示すフローチャートである。
実施例1に示した図20の画像処理手段62の処理と同様の処理を含んでいるため、同様の処理については、同一符号を付与し説明を省略すると伴に、実施例1と違う処理についてのみ説明する。
画像処理手段62は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応した印刷条件(「解像度」、「ビット深さ」等。)を、画像形成装置20が有していなかった場合、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)、又、対応した印刷条件(「解像度」、「ビット深さ」等。)を、画像形成装置20が有していた場合、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)を基に、画像形成装置20が有するディザパターン40、γテーブル50を確認し(S205)、印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を取得する(S206)。
次に、画像処理手段62は、ディスプレイリスト32とバンド対応情報31に基づき、現在ラスタライズを行っているバンドに描画されるオブジェクトを求め、中間データメモリ領域2221よりディスプレイリスト32を読み出し、ディスプレイリスト32を解釈して種別を決定したオブジェクトが、ブラシパターンを用いたオブジェクトであるか否かを判定し、ブラシパターンを用いたオブジェクトの場合、そのオブジェクト対して、印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ描画し、干渉しているか否かを判定して、干渉していれば、新しいディザパターン40を用いて再描画を行う(S501)。
図21は、本発明の実施例3に係る描画処理における干渉を防ぐ処理を示すフローチャートである。
図21は、図20に示すS501において、画像処理手段62が、描画処理を行う際、ブラシパターンとディザパターン40との干渉を防ぐ方法を示すものである。
画像処理手段62は、ディスプレイリスト32を解釈して種別を決定したオブジェクトが、ブラシパターンを用いたオブジェクトだった場合、ブラシパターンの大きさが、階調処理(「ディザ処理」、「γ補正処理」等。)を行い際に用いられるディザパターン40の大きさの整数倍であるか否かを判定する(S5011)。
画像処理手段62は、ブラシパターンの大きさがディザパターン40の大きさの整数倍でない場合(S5011がNO)、ブラシパターンとディザパターン40とが干渉しないと判断し、現在、使用したディザパターン40を、そのまま使用して階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ビットマップ(ラスタイメージ)化して、ページメモリ領域2321へ描画する(S5012)。
また、画像処理手段62は、ブラシパターンの大きさがディザパターン40の大きさの整数倍であった場合(S5011がYES)、ブラシパターンで使用される色は白以外の色か否かを判定する(S5013)。
画像処理手段62は、ブラシパターンで使用される色が白であった場合(S5013がNO)、ブラシパターンとディザパターン40とが干渉しないと判断し、現在、使用したディザパターン40を、そのまま使用して階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ビットマップ(ラスタイメージ)化して、ページメモリ領域2321へ描画する(S5012)。
また、画像処理手段62は、ブラシパターンで使用される色が白以外の色であった場合(S5013がYES)、ディザパターン40を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ディザパターン40の大きさ分だけ、ビットマップ(ラスタイメージ)化して、ページメモリ領域2321へ描画する(S5014)。
次に、画像処理手段62は、描画したビットマップイメージ(ラスタイメージ)を解析し、白色のデータと同じ(ドットが抜けた)状態となっているか否かを判定する(S5015)。
画像処理手段62は、描画したビットマップイメージ(ラスタイメージ)が、白色のデータと同じ(ドットが抜けた)状態となっている場合(S5015がYES)、現在、階調処理(「ディザ処理」、「γ補正処理」等。)を行う際に用いたディザパターン40を、画像形成装置20が有する、他のディザパターン40へ変更し、S5014へ戻る(S5016)。
また、画像処理手段62は、描画したビットマップイメージ(ラスタイメージ)が、白色のデータと同じ(ドットが抜けた)状態となっていない場合(S5015がNO)、現在の状態になるまでに、階調処理(「ディザ処理」、「γ補正処理」等。)を行う際に用いたディザパターン40を、画像形成装置20が有する、他のディザパターン40へ変更したか否かを判定する(S5017)。現在の状態になるまでに、他のディザパターン40へ変更していない場合(S5017がNO)、ブラシパターンとディザパターン40とが干渉しないと判断し、現在、使用したディザパターン40を、そのまま使用して階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ビットマップ(ラスタイメージ)化して、ページメモリ領域2321へ描画する(S5012)。
また、画像処理手段62は、現在の状態になるまでに、他のディザパターン40へ変更した場合(S5017がYES)、ディザ設定情報テーブル2222を、画像形成装置20が有する、ブラシパターンと干渉しないディザパターン40が対応する印刷条件(「解像度」、「ビット深さ」等。)へ変更する(S5018)。
画像形成装置20は、更新されたディザ設定情報テーブル2222を参照し、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられた、ブラシパターンと干渉しない、画像形成装置20が有する印刷条件(「解像度」、「ビット深さ」等。)を取得する(S5019)。 次に、画像処理手段62は、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応した印刷条件(「解像度」、「ビット深さ」等。)を、画像形成装置20が有していなかった場合、ディザ設定情報テーブル2222から取得した印刷条件(「解像度」、「ビット深さ」等。)を基に、画像形成装置20が有するディザパターン40、γテーブル50を確認する(S50110)。 次に、画像処理手段62は、ディザ設定情報テーブル2222を参照し、RAM222上に展開されたディザパターン40、γテーブル50の内、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられたディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を取得する(S50111)。
最後に、画像処理手段62は、RAM222上に展開されたディザパターン40、γテーブル50の内、ディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、各オブジェクトをビットマップ(ラスタイメージ)化して、エンジン部23が備えるRAM232上のページメモリ領域2321へ再描画する(S50112)。
以上のように、本発明の実施例3によれば、画像形成装置20が有するプリンタアプリケーションは、ホストPC10から送信された、描画オプションであるブラシパターンを含んだ印刷データに対し、画像処理手段62により、ディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ディザパターン40の大きさ分のラスタイメージ(ビットマップイメージ)をエンジン部23が備えるRAM232上のページメモリ領域2321へ描画し、描画したラスタイメージを解析して、干渉しているか否かを判断し、その結果、描画したビットマップイメージ(ラスタイメージ)が、白色のデータと同じ(ドットが抜けた)状態が確認され、ブラシパターンとディザパターン40とが干渉していることが分かった場合、階調処理(「ディザ処理」、「γ補正処理」等。)で用いたディザパターン40を、画像形成装置20が有する、他のディザパターン40へ変更し、ブラシパターンと干渉を起こさないディザパターン40を見つけ、ディザ設定情報テーブル2222を、干渉を起こさないディザパターン40が対応する印刷条件(「解像度」、「ビット深さ」等。)へ変更することで、更新されたディザ設定情報テーブル2222を参照し、印刷データが指定した印刷条件(「解像度」、「ビット深さ」等。)に対応付けられた、ディザ設定情報テーブル2222の印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40、γテーブル50を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行い、ブラシパターンと干渉を起こすことなく、ラスタイメージ(ビットマップイメージ)をエンジン部23が備えるRAM232上のページメモリ領域2321へ描画することができる。
よって、画像形成装置20は、適用するディザパターン40によって、ブラシパターンとディザパターン40とが干渉してしまい、印刷結果に干渉縞(モアレ)が発生し品質が低下していた印刷データに対しても、ディザ設定情報テーブル2222により、画像形成装置20が有するディザパターン40の内、印刷データに含まれるブラシパターンと干渉しないディザパターン40を用いて階調処理(「ディザ処理」、「γ補正処理」等。)を行うように、印刷条件(「解像度」、「ビット深さ」等。)が対応付けられ、その印刷条件(「解像度」、「ビット深さ」等。)に従ったディザパターン40を用いて印刷することができ、印刷品質を低下させていた、ブラシパターンとディザパターン40との干渉を防ぐことができる。
各実施例に基づき本発明の説明を行ってきたが、上記実施例に挙げた形状に、その他の要素との組み合わせ等、ここで示した要件に、本発明が限定されるものではない。
これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。