以下、図面を参照しながら本発明の実施の形態を説明する。
〔第1の実施の形態〕
図1には、本実施の形態に適用したネットワーク10の概略構成を示している。このネットワーク10は、本発明を適用した画像処理装置として設けられているプリントサーバ12と、画像処理端末として設けられている複数のクライアント端末14とが、通信回線16を介してネットワーク接続されている。
また、プリントサーバ12には、印刷出力装置としてプリンタ18が接続されており、プリントサーバ12は、クライアント端末14から出力される印刷ジョブを受信すると、この印刷ジョブに応じた印刷出力を実行する。なお、以下では、画像処理装置をプリントサーバとして用いて説明するが、本発明の画像処理装置は、これに限らずクライアント端末14とネットワーク接続されたファイルサーバ等の各種の中間サーバに設けて画像処理を行なうものであっても良い。
プリントサーバ12及びクライアント端末14には、ネットワークインターフェイス(ネットワークI/F)20、22が設けられており、このネットワークI/F20、22を介してそれぞれが通信回線16に接続している。また、プリントサーバ12は、双方向インターフェイス(双方向I/F)24を備えており、この双方向I/F24を介してプリンタ18に接続している。なお、プリントサーバ12に接続するプリンタ18は複数でも良く、使用する双方向I/F24も複数ないし複数種類でも良い。
このようなプリントサーバ12は、パーソナルコンピュータ(PC)に所定の機能を備えたPCIボードを追加するなどして構成することができる。また、プリントサーバ12は、キーボード、マウス等の入力デバイスやCRTディスプレイやLCDディスプレイ等の表示デバイスを備えており、表示デバイスに表示した画像に対する処理及び表示画像を印刷出力するWYSIWYG機能を備えたものであっても良い。
プリントサーバ12には、プリンタ18を制御するプリントコントローラ26と共に画像処理部28が設けられている。プリントサーバ12では、クライアント端末14から印刷ジョブとして画像データや描画データなどのジョブデータが入力されると、画像処理部28で、このジョブデータに基づいてラスタデータを生成するRIP処理を行なう。
なお、プリントサーバ12では、入力された印刷ジョブを処理待ちキューに格納すると共に、処理待ちキューに格納している印刷ジョブを順に読み出して、画像処理(RIP処理)を実行し、画像処理されてプリンタ18へ出力されるデータ(ラスタデータ)を印刷待ちキューに格納して、この印刷待ちキューからプリンタ18へ順に出力する。また、プリントサーバ12では、印刷処理が指定されていないか印刷処理の実行ができないジョブを保持キューに格納して保持する一般的構成となっており、このようなプリントサーバ12は、従来公知の種々の構成を用いることができ、本実施の形態では、詳細な説明を省略する。
一方、クライアント端末14は、各種のアプリケーション30を備えており、アプリケーション30を用いて、画像の作成、加工、編集等の画像処理や文書作成等を行う。
また、クライアント端末14には、プリンタドライバ32が設けられており、クライアント端末14では、このプリンタドライバ32を介して、作成した画像データ又は描画データと各種の処理指示とを印刷ジョブとしてプリントサーバ12へ送信する。プリントサーバ12は、この印刷ジョブに対して指定された画像処理を施してプリンタ18へ出力する。これにより、印刷ジョブに応じた印刷物が得られる。
プリントサーバ12の画像処理部28には、印刷機能設定部34が形成されている。この印刷機能設定部34では、印刷ジョブ等のジョブを受信すると、印刷ジョブで、プリンタドライバ32等によって指定されている各種の印刷機能の設定を行う。なお、プリントサーバ12では、従来公知の各種の印刷機能の設定が可能となっており、印刷機能設定部34では、印刷ジョブで指定されている印刷機能を判断し、それぞれの印刷機能が実行されるように設定するが、本実施の形態では、詳細な説明を省略する。
また、画像処理部28には、描画命令展開部36と各種のデータを記憶するHD38が設けられている。画像処理部28では、描画命令展開部36上で、クライアント端末14から入力された印刷ジョブに対する画像処理を行う。このとき、印刷機能設定部34で設定される印刷機能に基づいた画像処理及びRIP処理が行われる。
また、画像処理部28では、RIP処理を行うことにより、印刷ジョブの各ページごとに、C、M、Y、Kの各色版(C版、M版、Y版及びK版)のラスタデータを生成する。このラスタデータが、プリントコントローラ26を介してプリンタ18へ出力されることにより、プリンタ18では、図示しない記録紙上にC版、M版、Y版及びK版の画像を重ねたカラー画像を形成する。
ところで、プリンタ18では、スクリーン処理が可能となっており、これにより、階調重視の写真モードでのスクリーン処理及び、細線重視の文字モードでのスクリーン処理が可能となっている。
後述するように、スクリーン処理を行うか否か及び、スクリーン処理を行うときのモードの設定は、クライアント端末14上で、プリンタドライバ32に設けているユーザーインターフェイス(UI)を用いて設定されるようになっている。
プリントサーバ12には、スクリーン切換え部40が設けられている。このスクリーン切換え部40では、スクリーン処理するときの線数(スクリーン周波数)の切換えを行い、その情報をプリンタ18に設定する。なお、スクリーン処理の基本的構成は、従来公知の構成を適用でき、本実施の形態では、詳細な説明を省略する。
図2に示すように、プリンタ18には、細線重視スクリーン42と階調重視スクリーン44が設けられており、画像処理部28で生成されたC、M、Y、Kの各色の画像データ(ラスタデータ)は、細線重視スクリーン42及び階調重視スクリーン44に入力されるようになっている。
また、プリンタ18には、セレクタ46が設けられており、このセレクタ46には、スクリーン切換え部40からの信号が入力されるようになっている。セレクタ46は、細線重視スクリーン42の出力又は階調重視スクリーン44の出力を、スクリーン切換え部40からの切換え信号に基づいて切り換えて、出力画像信号として出力する。
プリンタ18では、この出力画像信号に基づいて図示しない記録紙に画像を形成する。このとき、スクリーン切換え部40が、オブジェクトごとに切換え信号を出力することにより、1ページ分のページレイアウト上で、細線重視のスクリーン処理されたオブジェクトと、階調重視のスクリーン処理されたオブジェクトを混合して形成することができるようにしている。
プリンタ18には、図示しない三角波ジェネレータが設けられており、この三角波ジェネレータによって細線重視用のスクリーン周波数の三角波と、階調重視用のスクリーン周波数の三角波を発生する。細線重視用のスクリーン周波数の三角波は細線重視スクリーン42に入力され、階調重視用のスクリーン周波数の三角波は、階調重視スクリーン44に入力される。
細線重視スクリーン42及び階調重視スクリーン44のそれぞれでは、この三角波によってスクリーン処理を行う。
細線重視用のスクリーン周波数は、階調重視用のスクリーン周波数よりも高くなっており、例えば、階調重視用の三角波が3画素で1サイクルの周期となっており、細線重視用の三角波が2画素で1サイクルの周期となっている。すなわち、細線重視スクリーン42が高線数となっており、階調重視スクリーン44が低線数となっている。
これにより、細線重視スクリーン42でスクリーン処理することにより文字等の再現性が向上され、階調重視スクリーン44でスクリーン処理することにより階調の再現性が向上される。
プリントサーバ12では、スクリーン処理するときのスクリーンモードが写真モードに設定されることにより、階調重視スクリーン44を用いた低線数でのスクリーン処理を行い、文字モードに設定されることにより、細線重視スクリーン42を用いた高線数でのスクリーン処理を行う。
一方、図1に示すように、プリントサーバ12の画像処理部28には、描画命令置換部48が設けられている。この描画命令置換部48は、スクリーン処理として写真モードと文字モードを混合した文字/写真モードが設定された印刷ジョブが入力されたとき、印刷ジョブの描画命令をオブジェクトごとに写真モードと文字モードを設定した描画命令に置換し、描画命令展開部36では、描画命令に基づいてRIP処理を行う。
すなわち、図3に示すように、プリントサーバ12では、描画命令置換部48では、描画命令に対して所定の置換処理を描画命令ごとに行う。描画命令展開部36では、描画命令置換部48で置換された描画命令に基づいてRIP処理を行う。
描画命令展開部36でのRIP処理は、C、M、Y、Kの各色(各色版)のラスタデータを生成する。このラスタデータは、画素ごとの多値データとなっており、このラスタデータが画像データとしプリンタ18へ出力される。
描画命令置換部48では、プロセスカラー(C、M、Y、K)の各色版と共に、プロセスカラーと異なる特色用の版(以下、特色版とする)を生成するように描画命令を作成する。
また、描画命令展開部36では、特色版として、オブジェクトごとに、スクリーン処理を行うときに、写真モードとするか文字モードとするかの設定情報に基づいたラスタデータを生成する。
すなわち、画素ごとのオブジェクト情報のデータが、写真モード/文字モードのフラグとなる特色版がオブジェクト情報として生成されるように描画命令の置換を行う。
これにより、描画命令展開部36では、C、M、Y、Kの各色版に加えて、オブジェクト情報となる特色版(TAG)を生成することになる。
図2に示すように、スクリーン切換え部40には、オブジェクト情報(特色版)が入力されると、画像データの出力に同期して、オブジェクト情報に基づいた切換え信号をセレクタ46へ出力する。これにより、オブジェクトごとないし画素ごとに、細線重視スクリーン42と階調重視スクリーン44が切換えられて出力画像信号が出力される。すなわち、細線重視スクリーン42と階調重視スクリーン44からの出力信号(出力画像信号)が切り替えられて出力される。
以下に、本実施の形態の作用として、プリントサーバ12での処理を説明する。プリントサーバ12では、クライアント端末14から出力されたジョブ(印刷ジョブ)を受信すると、印刷機能設定部34で印刷機能の読み込み及び設定を行う。この後、プリントサーバ12では、設定された印刷機能に基づいた画像処理、RIP処理及び印刷処理を実行する。
また、プリンタ18では、スクリーン処理が可能となっており、クライアント端末14から出力された印刷ジョブにスクリーン処理が設定されていると、その設定に基づいたスクリーン設定をプリントサーバ12から受け取ることによりスクリーン処理を行うようになっている。
一方、クライアント端末14では、アプリケーション30を用いて作成、加工、編集等の処理を行って、文字や画像等をオブジェクトとしてページレイアウト上に配置したドキュメント等を作成する。このページレイアウト等が、印刷ジョブとして、プリンタドライバ32を介して、プリントサーバ12へ出力する。
このとき、ページレイアウト上の各オブジェクトの配置は、描画命令によって指定される。
また、プリンタドライバ32で設定されているユーザーインターフェイス(UI)等を用いることにより、各種の印刷機能が設定されるようになっており、このプリンタドライバ32でスクリーン処理の設定も可能となっている。
図4には、クライアント端末14上でスクリーン処理の設定に用いるユーザインターフェイスの一例とする設定ダイアログ50を示している。この設定ダイアログ50は、例えば印刷処理を指定した状態でスクリーン処理の設定(ここでは「画質」設定としている)を選択することにより、クライアント端末14の図示しないモニタ上に表示される。
この設定ダイアログ50には、スクリーンモードとして階調を重視する「写真モード」と、細線を重視する「文字モード」の選択が可能となっている。また、設定ダイアログ50では、混合モードとして「写真/文字モード」の選択も可能となっている。なお、スクリーン処理及びスクリーンモードの設定に用いるユーザインターフェイスとしては、これに限るものではなく、任意の構成を適用することができる。また、本実施の形態では、クライアント端末14で選択及び設定を行うようにしているが、プリントサーバ12上で選択及び設定が可能であっても良い。
この設定ダイアログ50には、ラジオボックス52A、52B、52Cが設けられており、ラジオボックス52Aをチェックすることにより写真モードが選択され、ラジオボックス52Bをチェックすることにより文字モードが選択される。
プリントサーバ12では、クライアント端末14でスクリーンモードが設定されていると、設定されたスクリーンモードに基づいたスクリーン処理を行って、スクリーン処理した画像を記録紙に形成するようになっている。
また、設定ダイアログ50では、ラジオボックス52Cをチェックすることにより、写真/文字モードが選択されるようになっている。なお、写真/文字モードが選択されたときには、チェックボックス54へのチェックが可能となっており、チェックボックス54をチェックすることにより、オブジェクトのアウトラインを文字として扱うように設定される。これにより、図形のアウトライン(外形)に対して、線数の高いスクリーン処理を行って、切れの良い図形を形成できるようにしている。
プリントサーバ12では、写真/文字モードが選択されてスクリーン処理が設定されることにより、オブジェクトごとに写真モード又は文字モードに設定し、各オブジェクトに対して設定したスクリーンモードでスクリーン処理して記録紙に形成するようになっている。
図5には、プリンタ18を用いたプリントサーバ12での画像処理(印刷処理)の概略を示している。なお、図5では、スクリーン処理の設定に沿った処理の流れを示している。
このフローチャートは、受信した印刷ジョブに対する印刷機能の設定が終了すると実行され、最初のステップ100では、スクリーンモードが写真/文字モードに設定されているか否かを確認する。なお、以下の説明では、スクリーン処理が設定されていることを基本とする。
このときに、写真/文字モードではなく、写真モードまたは文字モードに設定されていると、ステップ100で否定判定してステップ102へ移行する。このステップ102では、描画命令展開処理を実行して、ラスタデータを生成する(RIP処理)。
次のステップ104では、写真モードに設定されているか否か、すなわち、写真モードと文字モードの何れに設定されているかを確認する。
ここで、写真モードに設定されているときには、ステップ104で肯定判定してステップ106へ移行し、低線数(低いスクリーン周波数)でスクリーン処理を行う階調重視スクリーン44を用いてスクリーン処理を行いながら印刷処理を実行する。
また、文字モードに設定されているときには、ステップ104で否定判定してステップ108へ移行し、高線数(高いスクリーン周波数)でスクリーン処理を行う文字重視スクリーン42を用いてスクリーン処理を行いながら印刷処理を実行する。
これに対して、写真/文字モードが設定されているときには、ステップ100で肯定判定してステップ110へ移行する。このステップ110では、描画命令に基づいて、オブジェクトを抽出し、抽出したオブジェクトに対して、文字モードでスクリーン処理するか写真モードでスクリーン処理するか、すなわち、文字重視スクリーン42を用いたスクリーン処理を行うか階調重視スクリーン44を用いたスクリーン処理するかを設定すると共に、そのオブジェクト情報となる特色版の描画命令が得られるように、描画命令置換処理を実行する。
この後にステップ112へ移行して、置換処理した描画命令に対する描画命令展開処理を行うことにより、C、M、Y、Kの各色版のラスタデータに加え、オブジェクト情報を含む特色版を生成する。
次のステップ114では、特色版を用いて、C、M、Y、Kのそれぞれの色版において、オブジェクトごと又は画素ごとに文字重視スクリーン42と階調重視スクリーン44を切換えながらスクリーン処理した画像を記録紙に形成する。
ここで、ステップ110で実行される描画命令の置換処理を説明する。
描画命令置換処理を行うときには、先ず、例えば、図7(A)に示す描画命令を付加する。これにより、C、M、Y、Kの各色版に加えて特色版の生成が実行されるようにする。なお、以下では、描画命令をPostScript言語での記述を例に説明し、「%」でコメント(記述の内容)を付加している。
この後に、オブジェクトごとの描画命令に対して、描画命令置換を行うことにより、置換した描画命令が展開処理されたときに、C、M、Y、Kの各色版のラスタデータと、特色版のラスタデータ(0x00、0xFFのデータ)が生成されるようにする。
このときの特色版がオブジェクトごと(オブジェクトを形成する画素ごと)のオブジェクト情報となるようにする。このときのオブジェクト情報が、低線数の写真モードであるか、高線数の文字モードであるかを示すようにする。
例えば、特色版のオブジェクト情報として、低線数(写真モード)のときは「0x00(白)」、高線数(文字モード)のときは「0xFF(黒)」としたときに、図形(描画命令が「fill」)に対するスクリーン処理を低線数(階調重視スクリーン44を使用)とし、文字(描画命令が「show」)に対するスクリーン処理を高線数(文字重視スクリーン42を使用)とすると、置換処理した描画命令に対して展開処理を行ったときに、元の描画命令に基づいたプロセスカラーであるC、M、Y、Kの各色版と、オブジェクト情報を示す特色版(TAG)が形成されるようにする。
一方、オブジェクトには、イメージ、グラデーション、図形、文字、線などがあり、それぞれに対して描画命令が設定されている。表1には、オブジェクトの種類と、それぞれのオブジェクトに対する描画命令を示している。
このように、描画命令からオブジェクトが定まるので、描画命令に基づいて、該当するオブジェクトがどのようなオブジェクトであるか否かを認識することができる。すなわち、描画命令から、文字重視スクリーン42を用いた高線数でのスクリーン処理が好ましいか、階調重視スクリーン44を用いた低線数でのスクリーン処理が好ましいかを判断することができる。
ここから、プリントサーバ12に設けている描画命令置換部48には、描画命令ごとに、スクリーン処理を行うときに線数(スクリーン)が予め設定されている。
表2及び表3には、描画命令に対するスクリーン線数の設定の一例を示している。
表2及び表3に示すように、イメージ(image)及びグラデーション(shfill)に対しては、階調重視スクリーン44を用いた低線数でのスクリーン処理を行うように設定されることが好ましく、文字(Show)及び線(stroke)に対しては、文字重視スクリーン42を用いた高線数でのスクリーン処理を行うように設定されることが好ましい。また、図形(fill)に対しては、低線数又は高線数の何れに設定されても良い。
なお、以下では、高線数でスクリーン処理するように設定されているオブジェクトを文字系オブジェクトとし、低線数でスクリーン処理するように設定されているオブジェクトをイメージ系オブジェクトとする。
描画命令置換部48には、表2又は表3の何れか一方の設定が記憶されており、描画命令置換部48では、該当する描画命令に対するオブジェクトが、設定されたスクリーン(線数)でスクリーン処理されるように描画命令置換を行う。なお、描画命令に対する線数の設定は、プリントサーバ12上で行っても良く、また、クライアント端末14上で行ってプリントサーバ12に記憶させるものであっても良い。
図6には、図5のステップ116で実行される処理の概略を示している。このフローチャートでは、最初のステップ130で描画命令からオブジェクトの抽出を行う。この後、抽出したオブジェクトの描画命令から、該当オブジェクトがイメージ系オブジェクトであるか否かを確認する。すなわち、描画命令から、抽出したオブジェクトがイメージ系に設定されているオブジェクトであるか、文字系に設定されているオブジェクトであるかを判定する。
ここで、イメージ系オブジェクトであるときには、ステップ132で肯定判定して、ステップ134へ移行する。このステップ134では、該当するオブジェクト(オブジェクトを形成する各画素)に対して、特色版上のデータが低線数でのスクリーン処理されるようオブジェクト情報(例えば0x00)となる描画命令置換を行う。
これに対して、文字系オブジェクトであるときには、ステップ132で否定判定して、ステップ136へ移行する。このステップ136では、該当するオブジェクト(オブジェクトを形成する各画素)に対して、特色版上のデータが高線数でのスクリーン処理されるようオブジェクト情報(例えば0xFF)となる描画命令置換を行う。
このようにして、全てのオブジェクトに対して、描画命令置換を行う(ステップ138で肯定判定して終了)。
ここで、ステップ134又はステップ136で実行される描画命令置換の具体例を説明する。
図7(B)には、図形をイメージ系オブジェクトとしたとき、四角の黒色の図形(描画命令が「fill」)を描画する描画命令(置換前の描画命令)を示している。
このような描画命令(fill)によって描画するように指定されているオブジェクト(図形)に対して、低線数(写真モード)でスクリーン処理するように設定する描画命令に置換するための特色版(オブジェクト情報)を形成(描画)するときにはオーバープリント設定を用いる。
オーバープリント設定を用いることにより、元の描画命令によって形成される画像が、特色版に形成されているオブジェクト情報に相当する画像によって消されてしまうのを防止する。
また、描画命令置換では、オーバープリント設定と共に、トランスファー関数を用いた描画命令に置換する方法を適用する。図8(A)には、トランスファー関数(トランスファーカーブ)を用いた描画命令置換の一例を示している。トランスファー関数を併用して、0x00を特色版に書き込むことにより、元の描画命令によって形成される画像を残しつつ、特色版に既に書き込まれていたオブジェクト情報を上書きすることができる。
また、特色版を描画するときには、オーバープリント設定を用いずにオブジェクトの領域を非画像領域とするノックアウトの設定を用いることができる。図8(B)には、ノックアウト設定を用いた描画命令の置換処理の一例を示している。オーバープリント設定をオフにして描画することにより、特色版には、0x00で上書きするのと同様の効果が得られる。
さらに、表3に示すように、図形に対して低線数でなく、高線数でスクリーン処理するようにしても良い。すなわち、図形に対しては、イメージ系オブジェクトではなく、文字系オブジェクトとして設定しても良く、このときには、該当する図形の領域に対するオブジェクト情報を、高線数でスクリーン処理されるように描画命令置換を行う。
図9(A)には、図形(fill)の描画命令に対して高線数のオブジェクト情報を得る描画命令置換の一例を示している。このときにも、オーバープリント設定を用いることができ、これにより、該当する文字を形成するときに、高線数の文字重視スクリーン42を用いたスクリーン処理が可能となるオブジェクト情報(特色版)を得ることができる。
図9(B)には、描画命令によって形成される画像をプロセス版に、オブジェクト情報を特色版に同時に描画する描画命令置換の一例を示している。ここで、カラースペースのようにプロセス版と特色版を同時に指定できるときには、「DeviceN」を用いてカラースペースの設定を行う。
また、文字(show)や線(stroke)等の文字系オブジェクトの描画命令に対しては、高線数でスクリーン処理されるようにオブジェクト情報(例えば0xFF)を生成する。
図10(A)には、文字系オブジェクトとして文字を形成する描画命令の一例を示している。このような描画命令に対しては、例えば、オーバープリント設定を用いて、図10(B)に示す如き描画命令置換を行う。
これにより、描画する文字情報(文字列)に対して、高線数でスクリーン処理するオブジェクト情報が得られる。
一方、図11には、低線数でスクリーン処理する写真画像などのイメージ系オブジェクトの一例として、イメージの描画命令(image)を示している。
このような描画命令に対する描画命令置換には、図12(A)に示すように、オーバープリントの設定とトランスファー関数を用いることができる(図8(A)も参照)。また、描画するオブジェクトに対してオーバープリントが設定されているときには、図12(B)に示すように、オーバープリントの設定をオフする描画命令置換を用いるようにすればよい(図8(B)も参照)。
これにより、イメージオブジェクトを低線数でスクリーン処理するためのオブジェクト情報を得る特色版を生成することができる。
一方、刷版印刷に用いる記録紙(印刷用紙)には、白色でなく、色付きのものがある。このような印刷用紙を用いた印刷を行うための印刷シミュレーションでは、紙色シミュレーションを行うことがある。
このような紙色シミュレーションを行うときには、非画像領域が紙色で描画され、白色のオブジェクトが紙色に近い色で描画される。このときに、特色版上では、非画像領域に対しては、低線数でスクリーン処理するオブジェクト情報(0x00)となっている。
また、紙色シミュレーションを行うときに、例えば、不要なオブジェクトを白色の図形で消していたり、テキスト枠内が白色に設定されていたり、さらに、テキスト枠が白色となっていると、高線数でスクリーン処理するオブジェクト情報(0xFF)となる。
図13(A)には、一例として、非画像領域60内に白色でテキスト枠62を描画するように設定され、さらに、テキスト枠62内に文字列64を描画する描画命令に基づいて形成した画像66を示している。
このような画像66を形成する描画命令に対して、紙色印刷シミュレーションと写真/文字モードによるスクリーン処理が設定する。このときには、非画像領域60が紙色で描画されるオブジェクト情報が低線数でのスクリーン処理(0x00)に設定されるが、テキスト枠62内は、高線数でスクリーン処理するオブジェクト情報(0xFF)となる。このために、図13(B)に示すように、テキスト枠62内が紙色とならずに、紙色の近似色となる画像66Aが形成されてしまう。
ここから、描画命令置換部48での処理として、白色を描画するように設定されている描画命令に対しては、低線数でのスクリーン処理を行うオブジェクト情報(0x00)となるように描画命令置換を行うようにする。
これにより、図13(C)に示すように、紙色印刷シミュレーションを行ったときに、白で描画するテキスト枠62内が低線数でのスクリーン処理に設定されるので、非画像領域60との間で色の相違が生じるのを防止して、適正な印刷シミュレーションを行った画像66Bを形成することができる。
このように、プリントサーバ12では、スクリーンモードとして低線数のスクリーン処理を行う写真モードと、高線数のスクリーン処理を行う文字モードを合わせた写真/文字モードが選択されていると、特色版の生成を設定すると共に、オブジェクトごとに低線数とするか高線数とするかのオブジェクト情報を特色版に描画する描画命令置換を行う。
これにより、イメージ系のオブジェクトに対しては、階調を重視した低線数でのスクリーン処理を行い、文字系のオブジェクトに対しては、細線を重視した高線数でのスクリーン処理を行って、高品質の画像を形成することができる。
また、プリントサーバ12では、このような処理を、ハードウェアを用いずにソフトウェアで行うことができる。
したがって、特色版の生成が可能なプリントサーバであれば、描画命令置換部48を形成するプログラムを導入させる簡単な作業で、ハードウェアを新たに追加することなく、オブジェクトごとに適正なスクリーン処理を行って、高品質の画像を形成することが可能となる。
なお、以上説明した本実施の形態では、プリントサーバ12の画像処理部28に、描画命令置換部48を設けて、オブジェクト情報によって形成される特色版の生成の設定と、描画命令置換を行うようにしたが、本発明はこれに限るものではない。
例えば、クライアント端末14のプリンタドライバ32の機能として、描画命令置換部48を設けるようにすることができる。すなわち、図14に示すように、プリントサーバ12の描画命令置換部48に換えて、クライアント端末14に、描画命令置換部70を設けても良い。
これにより、プリントサーバ12には、特色版のオブジェクト情報に基づいて、C、M、Y、Kの各色版に対して、オブジェクトごと又は画素ごとに文字重視スクリーン42と階調重視スクリーン44の切換えを行うことにより、高品質の画像形成が可能となる。
また、本実施の形態では、C、M、Y、Kのプロセスカラーによって形成される一つのオブジェクトに対してオブジェクト情報を生成するようにしたが、オブジェクトのC、M、Y、Kのそれぞれに対してオブジェクト情報を生成するようにしても良い。
また、本実施の形態では、高線数のスクリーン(0xFF)と低線数のスクリーン(0x00)の2種類のオブジェクト情報を用いたが、本発明は、これに限るものではなく、高線数(0xFF)、低線数(0x00)に加えて、高線数と低線数の間の線数である中線数のオブジェクト情報を任意の値(例えば0xA0)として生成して、文字、写真、図形のオブジェクトごとにスクリーン切換えを行うようにしても良い。また、高線数スクリーンを0x00、低線数スクリーンを0xFFとするなどの任意のデータを割り当てることができる。
また、本実施の形態では、文字重視又は階調重視に分けてスクリーン処理を行うようにしたが、文字重視、線重視又は階調重視で分けて線数を設定しても良く、さらに線の太さ、文字の大きさ、文字の太さに分けて処理が行われるようにスクリーン処理及びオブジェクト情報を設定するようにしても良い。
さらに、本実施の形態では、スクリーン切換えにオブジェクト情報を用いたが、本発明は、オブジェクト情報に基づいて色補正処理やフィルタ処理を切換えるようにしても良く、また、これらの処理を複合したオブジェクト情報を生成して、オブジェクト情報に基づいて、スクリーン処理、色補正処理、フィルター処理を切換えるようにしてもよい。
また、本発明は、高解像度(例えば1200dpi等)でRIP処理するときときに用いて、そのときに得られたタグ情報を、通常のプリンタの解像度(例えば600dpi等)で出力するときに使用するようにしても良い。
〔第2の実施の形態〕
次に、デジタルスチルカメラなどによって撮影された写真画像や、スキャナ、フィルムスキャナなどによって読み込まれた写真画像などのイメージ系オブジェクト(以下、ここでは写真画像とする)に対する色補正処理を例に、本発明の第2の実施の形態を説明する。すなわち、第2の実施の形態では、写真画像のそれぞれに対して、オブジェクト情報を生成し、生成したオブジェクト情報に基づいて色補正を施すことにより、適正な明るさ、コントラスト、カラーバランスなどが得られるようにする。
なお、第2の実施の基本的構成は、前記した第1の実施の形態と同じであり、第2の実施の形態で第1の実施の形態と同一の部品には、同一の符号を付与して説明する。
図15には、第2の実施の形態に係るプリントサーバ12Aの概略構成を示している。このプリントサーバ12Aは、描画命令置換部48に換えて、描画命令置換部72が設けられている。
写真画像の画像データは、CMYK形式ではなく、RGB形式となっていることが多く、描画命令置換部72は、例えば印刷機能の設定で、RGB色補正などが設定されているときに、写真画像(イメージオブジェクト)を抽出して、抽出した写真画像ごとに色補正を施す描画命令に置換する。
これにより、描画命令展開部36で、置換された描画命令を展開し、展開した描画命令に基づいたRIP処理が行われるようにしている。なお、プリントサーバ12Aでは、描画命令展開部36を、描画命令の展開を行う描画命令展開部.36Aと、展開した描画命令に基づいてラスタライズ(RIP処理)を実行するラスタ処理部36Bに分けて表記している。また、RGB色補正などの設定は、例えば、クライアント端末14で、プリンタドライバ32を用いて行うことができる。
描画命令置換部72においても、前記した描画命令置換部48と同様に、C、M、Y、Kのプロセスカラーと異なる特色用の版(特色版)を生成するように描画命令を作成する。すなわち、図3に示すように、プリントサーバ12Aにおいても、描画命令置換部72では、描画命令に対して所定の置換処理を行い、描画命令展開部36Aでは、置換された描画命令に基づいて展開処理を行うことにより、C、M、Y、K、の各色版に加えて、特色版(TAG)を生成するようにしている。
また、図15に示すように、プリントサーバ12Aの画像処理部28Aには、オブジェクト抽出部74及び、自動補正部76が設けられている。オブジェクト抽出部74では、展開処理部36Aで展開された描画命令に基づいてラスタ処理を実行するときに、写真画像を抽出する。
これにより、ラスタ処理部36Bでは、抽出した写真画像に基づいて特色版を生成する。このとき、一つの写真画像を形成する画素のそれぞれには、同一の情報が付与されるように特色版を生成するようにしている
また、自動補正部76では、生成された特色版をオブジェクト情報(TAG情報)として、C、M、Y、Kの各色版の画素に対して、自動色補正を施す。このとき、同一の写真画像に対しては、同じオブジェクト情報が付与されていることにより、該当写真画像の全域に対して均一な補正処理が施されるようにしている。なお、写真画像の抽出及び抽出した写真画像に対する色補正は、従来公知の方法を適用でき、ここでは詳細な説明を省略する。
ここで、第2の実施の形態の作用として、プリントサーバ12Aでの処理を説明する。
クライアント端末14では、アプリケーション30等を用いてページレイアウトなどを作成する。このとき、クライアント端末14では、複数の写真画像などを貼り付けたページレイアウトを作成することができる。また、作成したページレイアウトを印刷出力するときには、プリンタドライバ32を用いて印刷機能の設定を行い、ページレイアウト等の印刷ジョブを作成すると、この印刷ジョブをプリントサーバ12Aへ送信する。
プリントサーバ12Aでは、クライアント端末14から送信された印刷ジョブなどを受信すると、印刷機能の読込み及び設定を行う。この後、プリントサーバ12Aでは、設定された印刷機能に基づいた画像処理、RIP処理を行って、C、M、Y、Kの各色のラスタデータを生成すると、生成したラスタデータをプリンタ18へ出力する。これにより、印刷ジョブに基づいた印刷出力が得られるようにしている。
一方、プリントサーバ12Aでは、写真画像を含む印刷ジョブに対して、印刷機能としてRGB色補正が設定されているときに、印刷ジョブの写真画像に対する自動色補正を行うようにしている。
図16には、このときの画像処理の流れを示している。このフローチャートは、例えば、印刷ジョブを受信することにより実行され、最初のステップ140では、印刷機能の設定を行う。この後、ステップ142では、RGB自動補正を行うか否か、すなわち、印刷機能としてRGB色補正が設定されているかを確認する。
ここで、RGB色補正が設定され、RGB自動補正を行うときには、ステップ142で肯定判定して、ステップ144へ移行して、描画命令の置換処理を行う。なお、以下では、描画命令をPostScript言語での記述を例に説明し、「%」でコメント(記述の内容)を付加している。
描画命令置換を行うときには、先ず、例えば、図7(A)に示す描画命令を付加する。これにより、C、M、Y、Kの各色版に加えて特色版の生成が実行されるようにする。
この後、例えば、写真画像(Image)に対して、図17(A)に示す如き、描画命令があるときには、図17(B)に示すように、「image」以下に、特色版にも描画が行われるように描画命令を追加する。これにより、特色版にも描画が行われる描画命令を作成することができる。
なお、前記したように、特色版は、C、M、Y、Kの各色版にノックアウトで描画されてしまうのが一般的となっている。このために、特色版に描画するときには、オーバープリントに設定し、C、M、Y、Kの各色に描画されるオブジェクトが特色版によって消されてしまうことがないようにする。
また、特色版にのみ有効なLUTを指定できる処理系の場合には、特色版に入力値が「0」であっても指定した値に変換するLUTを設定することにより特色版の描画を行っても良い。
このようにして、描画命令の置換処理を行うと、図16のフローチャートでは、ステップ146へ移行して描画命令の展開処理を実行し、ラスタ処理(RIP処理)を行い、この後、生成したラスタデータをプリンタ18へ出力することにより印刷処理が実行されるようにする(ステップ148)。
ここで、ステップ146で実行される展開処理及びRIP処理を説明する。図18には、一例として、写真画像(イメージデータ)80、82が形成されたページレイアウト(1ページ分の画像データ)84を用いた処理の流れを示している。
プリントサーバ12Aでは、このページレイアウト84に対して、RGB補正が設定されて、特色版の描画が指定されていることにより、先ず、C、M、Y、Kの各色版84c、84m、84y、84kと共に、特色版84Tのラスタデータを生成する。なお、ラスタデータは、1画素が8bitとなっており、これにより、C、M、Y、Kの各色を256階調で表現できるようにしている。
色版84c、84m、84y、84kのラスタデータには、写真画像80、82の分解画像(画像80c、80m、80y、80k及び画像82c、82m、82y、82k)が含まれる。
一方、PostScript形式の描画命令では、図17(A)、図17(B)に示すように、幅(Width)と高さ(Height)及び描画位置(ImageMatrix)によって、矩形状の領域(以下、描画領域80E、82Eとする)として示される。
ここから、特色版84Tでは、写真画像80、82が矩形状の描画領域80E、82Eが抽出されて描画される。なお、矩形状の描画領域の抽出は、描画時に行う必要はなく、例えば、描画後のラスタデータに対して、既知の方法を用いて矩形領域を抽出するものであっても良い。
図19(A)〜図19(D)は、特色版84Tの描画を示している。ここでは、ラスタデータを8bitで描画しており、非画像部分を「00」としたときに、画像(写真画像)部分を、「01」〜「FF」の範囲の値で描画することができる。
プリントサーバ12Aでは、一つの写真画像に対しては、同一の値で描画するようにしている。また、複数の写真画像があるときには、全ての写真画像に対して同じ固定値(例えば「FF」)を用いることができる。
図19(A)及び図19(C)は、固定値「FF」を用い、写真画像80、82に対応する描画領域80E、82Eを描画した特色版84Ta、84Tcを示している。このように同じ固定値で描画したときであっても描画領域80E、82Eが重なりあっていなければ、それぞれの写真画像の領域を抽出できるので、写真画像80、82に対して、画像ごとに色補正処理が実行される。しかし、図19(C)に示すように、写真画像80、82が重なりあっているときには、一つの領域(矩形領域)となってしまうので、写真画像ごとに色補正処理を実行することができなくなる。
これに対して、写真画像80、82の間で、描画する値を変えることも可能である。図19(B)、図19(D)では、写真画像80、82の間で描画する値を変更した特色版84Tb、84Tdを示している。なお、図19(B)、図19(D)では、写真画像80を「01」で描画し、写真画像82を「02」で描画した例を示している。
このように、写真画像ごとに描画する値を変えることにより、写真画像ごとに設定した色補正を行うことが可能となる。写真画像ごとに描画する値を変更することにより、図19(D)に示すように、写真画像80、82が重なりあっているときには、上側の写真画像(図19(D)では写真画像82)の値が描画されるので、上側の写真画像82の全面を同じ補正条件で補正することが可能となる。
なお、写真画像ごとに値を変更して描画するときには、例えば、抽出順に値を「01」、「02」、「03」・・「FF」と変化させるなどの任意の手法を用いることができる。
図18に示すように、色版84c、84m、84y、84kと共に、特色版84Tを生成すると、特色版84Tで描画した描画領域80E、82Eに合わせて、色版84c、84m、84y、84kから写真画像80c、80m、80y、80k及び写真画像82c、82m、82y、82kを抽出する。
この後、写真画像80c、80m、80y、80k及び写真画像82c、82m、82y、82kに対する色補正処理を実行し、補正した写真画像80C、80M、80Y、80K及び写真画像82C、82M、82Y、84Kを生成する。
次に、写真画像80C、80M、80Y、80K及び写真画像82C、82M、82Y、84Kを、元の色版84c、84m、84y、84kに貼り付けることにより、写真画像80、82に色補正を施した色版84C、84M、84Y、84Kが得られる。
このように、プロセスカラーと異なる特色版を用いて、写真画像ごとのTAG情報を形成し、このTAG情報に基づいて、色補正を施すことにより、アプリケーション30が、一つの写真画像を複数に分割した状態で、クライアント端末14から送信されてきても、分割されたデータごとに、同じ写真画像のデータであるか否かを判断することなく、最適な色補正処理を行うことができる。
すなわち、図20(A)に示すように、写真画像などのRGB画像90が形成されたページレイアウト92を伝送するとき、アプリケーション30が、このRGB画像90の画像データを、例えば短冊状となる複数のブロック(ここでは、一例としてブロック90A、90B、90C、90D)に分割していることがある。
このような画像データに対して、プロセスカラーの各色版92C、92M、92Y、92Kに分版する(図20(B)参照)と共に、特色版を形成する。このとき、画像データのブロック90A〜90Dごとに値が設定されると、図20(C)に示すように、特色版90Taは、描画領域90E内がブロック90A〜90Dごとにデータ値が変化してしまうことになる。
このときに、RGB画像90を一つの画像として、TAG情報を形成することにより、図20(D)のように、RGB画像90に対する描画領域90E内が同じ値となる特色版92Tを生成することができる。
この特色版92Tに基づいて色補正処理を行うことにより、RGB画像90に対して最適な色補正処理を施すことができる。
なお、アプリケーションが画像を分割して送信してきたときに、同一の値でTAG情報(特色版)を形成したときには、画像形成後は一つの画像となるので問題なく色補正を施すことができる。また、TAG情報の値を変えたときには、分割された画像ごとにTAG情報が切り替わるので、一つの画像として色補正を施せないと言う問題が生じるが、TAG情報の描画時に画像領域を抽出して、直前に描画した画像と接するようなときに、TAG情報の値を変更しないようにするなどの方法を適用することもできる。
また、一つの画像データ(ページレイアウト)内に複数の写真画像があったときにも、それぞれの写真画像に対して適性な色補正処理を施すことができ、高品質の画像形成が可能となる。
なお、ここでは、プリントサーバ12Aに、描画命令置換部72を設け、印刷設定に基づいて、描画命令の置換を行うようにしたが、これに限らず、クライアント端末14のプリンタドライバ32の機能として描画命令置換を行うものであってもよい。
すなわち、図21に示すように、クライアント端末14に描画命令置換部86を設け、プリンタドライバ32を用いて印刷設定を行ったときに、例えばRGB色補正が指定されることにより、特色版84Tが描画されるように描画命令置換を行うようにしてもよい。これにより、プリントサーバ12Aに描画命令置換機能(描画命令置換部72)を不要となるようにしながら、特色版を描画する機能を含んでいれば、写真画像ごとの適正な色補正処理が可能となる。
なお、本実施の形態では、ネットワーク10のプリントサーバ12ないしプリンタ18に本発明を適用して説明したが、本発明はこれに限るものではなく、ネットワークに接続されている任意の構成の画像処理装置に適用することができる。