ページ記述言語データを解釈して中間データを生成し、前記中間データから画像を生成する処理のうち一部分を並列処理して、残りの部分を重複処理する画像形成装置であって、前記並列処理の際に、第1のインタプリタと、第2のインタプリタと、で前記中間データの生成を開始し、前記第1のインタプリタは、画質優先の処理を行い、前記第2のインタプリタは、カラー/モノクロ判定優先の処理を行い、ページがカラーであると判別されたことに基づき前記カラー/モノクロ判定優先の処理を行っている前記第2のインタプリタによる前記中間データの生成をスキップする画像形成装置。前記カラー/モノクロ判定優先の処理を行っている前記第2のインタプリタによる前記中間データの生成をスキップした後、前記第1のインタプリタと前記第2のインタプリタとのうち、先行するインタプリタに2ページ目の画質優先の処理を割り振る請求項1記載の画像形成装置。モノクロページが予め定められたページ数以上連続した場合、モノクロページが連続したことを示す情報を設定し、該当するページの中間データを生成する際に、前記第1のインタプリタで画質優先の処理を行い、前記第2のインタプリタでカラー/モノクロ判定優先の処理を行うと割り振られていた場合に、前記モノクロページが連続したことを示す情報が設定されていた場合、前記第1のインタプリタでカラー/モノクロ判定優先の処理を行い、前記第2のインタプリタで画質優先の処理を行うよう割り振りを入れ替える請求項1又は2記載の画像形成装置。ページ記述言語データを解釈して中間データを生成し、前記中間データから画像を生成する処理のうち一部分を並列処理して、残りの部分を重複処理する画像形成装置が実行する情報処理方法であって、前記並列処理の際に、第1のインタプリタと、第2のインタプリタと、で前記中間データの生成を開始するステップを含み、前記第1のインタプリタは、画質優先の処理を行い、前記第2のインタプリタは、カラー/モノクロ判定優先の処理を行い、ページがカラーであると判別されたことに基づき前記カラー/モノクロ判定優先の処理を行っている前記第2のインタプリタによる前記中間データの生成をスキップするステップを更に含む情報処理方法。ページ記述言語データを解釈して中間データを生成し、前記中間データから画像を生成する処理のうち一部分を並列処理して、残りの部分を重複処理するコンピュータに、前記並列処理の際に、第1のインタプリタと、第2のインタプリタと、で前記中間データの生成を開始するステップを実行させ、前記第1のインタプリタは、画質優先の処理を行い、前記第2のインタプリタは、カラー/モノクロ判定優先の処理を行い、ページがカラーであると判別されたことに基づき前記カラー/モノクロ判定優先の処理を行っている前記第2のインタプリタによる前記中間データの生成をスキップするステップを更に含むプログラム。カラーマネージメント後にカラー/モノクロ判定をする場合、元データに忠実に判定しようとすると、出力画像の画質低下を招く場合があった。元データがグレイスケールに見える箇所はカラーマネージメント後にCMYが載らない色変換処理以後、カラー/モノクロ判定優先モードと呼ぶが必要となるからである。CMYが載らない、つまりK単色で出力しようとすると、がさつきやグレイ諧調の潰れ等の画質低下が発生する場合がある。K単色で一定サイズの領域を塗りつぶすと、CMYKの複数色を使った場合よりもがさつきが目立ちやすい。更に、オリジナルデータで高濃度部の諧調をCMYKの4色で表現していた箇所をK単色若しくは少ない載り量で表現する為に諧調潰れが発生する。少ない載り量で表現する理由は元データでグレイに有彩色が混色した場合でもグレイ部分との連続性を保つために全体的にCMYの使用量を落とす必要があるからである。元データがグレイスケールに見える箇所でもカラーマネージメント後にCMYが載る色変換処理以後、画質優先モードと呼ぶの方が画質的には望ましいと言える。つまり、カラー/モノクロ判定の元データに対する忠実度と印刷画質の間にはトレードオフの関係が存在する。そもそも、カラーマネージメント後にカラー/モノクロ判定をする為に、上記の課題が現れるのであって、カラー/モノクロ判定後にカラーマネージメントを実行する場合は上記の課題は存在しない。カラーと判定された場合に画質優先モード、モノクロと判定された場合にカラー/モノクロ判定優先モードと使い分ければよいからである。しかしながら、カラー/モノクロ判定後にカラーマネージメントを実行しようとすると、性能の劣化を招くことになる。例えば、該当するページのカラー/モノクロ判定をする為に、1ページ分のデータを調べる必要がある場合があり、このような場合、少なくとも1ページ分のデータスプールが必要となるからである。データスプールとしてディスプレイリストやレンダリングイメージを用いる方法もあるが、後段の処理までカラーマネージメントに必要な情報を持ち越す必要があり、これが性能低下要因になる。本発明はこのような問題点に鑑みなされたもので、性能劣化を最小限に抑えつつ、カラー/モノクロ判定の忠実度とカラー画質との両立を可能にすることを目的とする。そこで、本発明は、ページ記述言語データを解釈して中間データを生成し、前記中間データから画像を生成する処理のうち一部分を並列処理して、残りの部分を重複処理する画像形成装置であって、前記並列処理の際に、第1のインタプリタと、第2のインタプリタと、で前記中間データの生成を開始し、前記第1のインタプリタは、画質優先の処理を行い、前記第2のインタプリタは、カラー/モノクロ判定優先の処理を行い、ページがカラーであると判別されたことに基づき前記カラー/モノクロ判定優先の処理を行っている前記第2のインタプリタによる前記中間データの生成をスキップする。本発明によれば、性能劣化を最小限に抑えつつ、カラー/モノクロ判定の忠実度とカラー画質との両立を可能にすることができる。以下、本発明の実施形態について図面に基づいて説明する。なお、以下に示す画像形成装置は、上述した部分ページ並列処理方式の処理を行うものとする。つまり、以下に示す画像形成装置は、ページ記述言語データを解釈して中間データを生成し、前記中間データから画像を生成する処理のうち一部分を並列処理して、残りの部分を重複処理する。<実施形態1>図1は、画像形成装置のハードウェア構成の一例を示す図である。なお、本実施形態では画像形成装置単体の構成を用いて説明するが、ネットワークを介して接続させるホストコンピュータ上に多くの処理を分離実行させる構成をとることもできる。コントローラユニット200は、画像信号やデバイス情報の入出力を制御する。CPU1は、ROM3或いはHDD4に記憶されたプログラムをRAM2に読み出し、実行する。更に、システムバス5に接続される各デバイスをCPU1が統括的に制御する。CPU1は、内部に二つのコアを有するデュアルコアプロセッサであり、二つの制御プログラムを同時並列に実行可能である。RAM2は、CPU1の主メモリ、ワークエリアとして機能する。ROM3には電源ON時に実行されるブートプログラムが格納される。HDD4にはオペレーティングシステムと本装置の制御プログラム本体が格納される。また、HDD4は、画像データやプリントデータ等の大容量データを一時的或いは長期的に保持する目的でも使用される。Network6は、ローカルエリアネットワーク13に接続し、印刷データやデバイス情報の入出力を担う。操作部I/F7は、操作部14とのインターフェース部で、操作部14に表示する画像データを操作部14に対して出力する。また、操作部I/F7は、操作部14から本装置の使用者が入力した情報を、CPU1に伝える役割をする。操作部14は、出力器として液晶パネルと音源を備え、入力器としてタッチパネルとハードキーとを備えるものである。コントローラユニット200は、デバイスI/F8を介して、プリンタエンジン15に接続される。デバイスI/F8は、CPU1の指示に基づき、画像信号の送出、デバイス動作指示、デバイス情報の受信を行う。プリンタエンジン15は、コントローラユニット200からの画像信号を媒体上に出力する出力機であり、電子写真方式、インクジェット方式の何れでもよい。RasterImageProcessorRIP9は、ディスプレイリスト以後、DLと略記するをラスタイメージに展開する専用ハードウェアである。RIP9は、CPU1によりRAM2上に生成されたDLを高速、かつ、CPU1の実行と並列に、処理するものである。プリンタ画像処理部10は、プリント出力画像データに対して、画像補正、ハーフトーニング等を行う。画像回転部12は、画像データの回転を行う。画像圧伸部11は、多値画像データはJPEG、2値画像データはJBIG、MMR、MHの圧縮伸張処理を行う。図2Aは、画像形成装置のソフトウェアモジュール構成の一例を示す図である。図2Aに記載した各ソフトウェアモジュールは、プログラムとしてHDD4に格納され、RAM2にロードされCPU1により実行されるものである。より具体的には、各ソフトウェアモジュールは、CPU1上で動作するOSオペレーティングシステムによりRAM2にロードされ、スレッド単位で実行権を付与され、実行されるものである。データ受信部201は、ホストから送信されたプリントデータを受信する。データ受信部201によって受信されたデータはジョブ制御部202を介してジョブデータ管理部208で保持される。ジョブ制御部202は、データ受信から印刷までのジョブ制御の全般を司る。PSインタプリタ203は、PostScriptデータを解釈して、中間データであるDLを生成する。生成されたDLはジョブ制御部202を介してジョブデータ管理部208で保持される。レンダラ204は、DLからビットマップイメージを生成するモジュールであり、多くの処理は専用ハードウェアであるRIP9により実行される。生成されたビットマップイメージはジョブ制御部202を介してジョブデータ管理部208で保持される。プリントドライバ205は、デバイスI/F8を介してプリンタエンジンへの印刷指示とビットマップイメージの送出とを行う。ユーザインターフェース206は、操作部I/F7を介して、操作部14を制御するモジュールである。ユーザインターフェース206は、主に操作部14の液晶パネルに表示するデータを生成し、タッチパネルからの入力に従い液晶パネルの表示を更新する。また、ユーザインターフェース206は、タッチパネルからの入力が何らかのジョブ実行指示であった場合は、ジョブ制御部202に指示を伝達する。ジョブデータ管理部208は、プリントデータ、DL、ビットマップイメージのそれぞれを一時的若しくは長期的に保持管理するデータベースである。なお、ビットマップイメージは、画像の一例である。図2Bは、図2AのPSインタプリタ203をより詳細に記したソフトウェアモジュール構成の一例を示す図である。PSパーサ209は、PSデータの解釈を行い、描画命令を抽出して、DL生成部210にDLの生成を依頼する。DL生成部210は、PSパーサ209からのDL生成依頼を受けて、DLを生成する。PSパーサ209とDL生成部210とは密結合であり、PSパーサ209が描画命令を抽出するたびに、DL生成部210が呼び出される。PSパーサ209が発行するDL生成依頼の内容は図3に記載の通りである。切り換え部211は、PSパーサ209からのDL生成依頼を受け付けるか、無視するかを切り替えるためのモジュールである。ここで、PSパーサ209は、ページ依存処理であるのに対して、DL生成部210は、ページ独立処理である。PSデータには前ページで定義したリソースを次ページで参照するケースがあるため、PSパーサ209は、ページ順番通りにPSデータの解釈を行う必要がある。これに対して、図3のDL生成依頼は何れも前ページの処理に依存するものはなく、DL生成部210はページ順通りに処理する必要はない。また、PSパーサ209とDL生成部210とはそれぞれリエントラントReentrant、再入可能な構造となっており、多重起動が可能である。一つのスレッド上で一つのPSパーサ209と一つのDL生成部210とが実行される。なお、PSデータは、ページ記述言語データの一例である。図4は、コントローラにて実行される基本プリントフローを表わすフローチャートである。なお、本説明では図2の各ソフトウェアモジュールによって実行されるように記述する。また、本フローチャートはHDD4に記憶された図2の各ソフトウェアモジュールに対応する各プログラムがRAM2に読み出され、CPU1により実行されることにより実現される。本フローチャートではスレッドA、スレッドB1、スレッドB2、スレッドCの四つのスレッドが並列に実行される。各スレッドは、オペレーティングシステムにより時分割され、CPU1内の二つのコアに順番にその実行権が割り振られる。時分割の単位は十分に小さいため、四つのスレッドは並列動作すると見なすことができる。しかしながら、ある一時点に着目すると同時に実行されるスレッドは二つである。これは、CPU1が前述の通り2コアのデュアルコアプロセッサであることが理由である。オペレーティングシステムによるマルチスレッディング処理は一般に広く知られる技術であるため、詳細は省略する。スレッドAがプリント処理のメインスレッドであり、スレッドB1、スレッドB2は、スレッドAにより実行時に動的生成されるものである。スレッドCは、本画像形成装置の起動時にオペレーティングシステムにより生成される常駐スレッドである。スレッドAでは最初にステップS4001において、データ受信部201は、プリントデータを受信し、ジョブ制御部202を介してジョブデータ管理部208に保持させる。次にステップS4002において、ジョブ制御部202は、PSインタプリタ203がエントリポイントとなる二つのスレッドB1、スレッドB2を起動する。即ち、PSインタプリタ203は、二つのスレッドにマッピングされて二重に起動される。そして、ジョブ制御部202は、PSインタプリタ203に対して、ジョブデータ管理部208に保持したプリントデータを渡し、プリントデータの解釈を指示する。ここで、PSインタプリタ203は二重に起動されているため、同一のプリントデータをそれぞれのスレッドで同時に解釈し始めることになる。次にステップS4003において、ジョブ制御部202は、1ページ分のDLの生成完了通知、先行スレッドの問い合わせ、の何れかのイベントを受信するまで待つ。何れのイベントも、PSインタプリタ203スレッドB1、スレッドB2からジョブ制御部202スレッドAに対して送信されるものである。先行スレッドの問い合わせは、PSインタプリタ203の二つのスレッドのうち、問い合わせを行ったスレッドが指定されたページに対して処理が先行しているか否かを問い合わせるものである。PSインタプリタ203は、PSデータを解釈して行き、新しいページが開始されると、必ず先行スレッドの問い合わせを行う。次にステップS4004に進み、ジョブ制御部202は、DLの生成完了通知を受信したかどうか判定する。図4のフローを開始した当初はDLの生成は完了していないので、Noとなる。Noの場合、ジョブ制御部202は、ステップS4005へ処理を進める。この場合、受信したイベントは先行スレッドの問い合わせとなる。ジョブ制御部202は、指定されたページに対する最初の問い合わせであれば先行スレッドと回答し、二回目の問い合わせであれば先行スレッドでは無いと返信する。ジョブ制御部202は、該当するページに対する問い合わせの有無を記憶し、最初の問い合わせか二回目の問い合わせかを判定する。S4005の処理が終了すると、ジョブ制御部202は、ステップS4003へ処理を戻す。ステップS4004でYesの場合、ジョブ制御部202は、ステップS4006へ進み、レンダリングを行い、そしてCMYKビットマップを生成する。次にステップS4007において、ジョブ制御部202は、ビットマップをジョブデータ管理部208に保存し、プリントドライバ205にプリントを依頼する。プリントの依頼はプリントドライバ205に対してレンダリング終了通知を送信することにより実行される。プリントドライバ205は、エンジン同期して処理を実行するために、スレッドCとしてスレッドAとは別スレッドで処理を実行する。依頼を受けたプリントドライバ205は、ステップS4201において、エンジンに対してプリント開始要求コマンドを送信し、画像転送する。なお、ステップS4201の詳細は別途後述する。次にステップS4008へ進み、ジョブ制御部202は、全ページのレンダリングが完了したか判定する。Yesの場合は、ジョブ制御部202は、図4のフローを終了する。Noの場合は、ジョブ制御部202は、ステップS4003へ戻り、処理を繰り返す。スレッドB1、スレッドB2のステップS4101において、PSインタプリタ203は、現在のスレッドが該当するページの処理を先行して開始するスレッドか否かをジョブ制御部202に問い合わせる。先行するスレッドの場合には、PSインタプリタ203は、該当スレッドのCMSモードを画質優先モードに設定する。後続のスレッドの場合には、PSインタプリタ203は、該当するスレッドのCMSモードをカラー/モノクロ判定優先モードに設定する。CMSモードは、RAM2に記憶されるフラグ変数で、後述の色変換処理を実行する際に参照される。CMSモードは、スレッドB1とスレッドB2と用に別々に記憶領域が用意される。スレッドB1かスレッドB2の何れかが画質優先モード、他方がカラー/モノクロ判定優先モードに設定されるが、どちらのスレッドがどちらのCMSモードになるかは処理の進行状況によって変わる。二つのCMSモードの詳細は後述する。次にステップS4102へ進み、PSインタプリタ203は、PSコマンドを解釈する。次にステップS4103へ進み、PSインタプリタ203は、該当するページがカラーと判定済みではなく、該当するPSコマンドによる描画がカラー描画か否か判定する。カラー描画か否かは、PSインタプリタ203は、色空間がCMYKのときは、C≠0又はM≠0又はY≠0かによって判定する。また、PSインタプリタ203は、RGBのときは、R=G=Bか否かによって判定する。また、PSインタプリタ203は、CIEBasedのときは、Lab表色系でa≠0又はb≠0かによって判定する。Yesの場合はステップS4104へ進み、PSインタプリタ203は、該当するページをカラーと判定する。カラー/モノクロ判定結果は、ページ毎にカラー、モノクロ、未決定の3値でRAM2上に記憶される。カラー/モノクロ判定結果は、スレッドB1とスレッドB2とから共通に参照可能である。したがって、スレッドB1かスレッドB2の何れか先行するスレッドがカラーと判別された以後は、後続のスレッドでも該当するページがカラーページであると判定される。次に、ステップS4105へ進み、PSインタプリタ203は、該当するページがカラーと判定済みか否か判定する。ステップS4105でYesの場合は、ステップS4106へ進み、PSインタプリタ203は、CMSモードがカラー/モノクロ判定優先モードか否か判定する。ここでもYesの場合はステップS4107へ進み、PSインタプリタ203は、該当する描画に対するDL出力をスキップする。前述したように、DLの生成する/しないは、切り換え部211でDL生成依頼を受け付けるか/無視するかを切り替えることにより行う。切り換え部211でDLの生成依頼を無視するように設定した場合、該当するページに対するDL生成処理が実行されないため、処理が高速化される。ステップS4105でNo場合、又はステップS4106でNoの場合はステップS4108へ進み、PSインタプリタ203は、CMSモードに従った色変換処理を実行する。色変換処理は、PSパーサ209内部のCMSエンジンによって実行される。CMSエンジンは、カラーマネージメントを行うモジュールであり、入力色を絶対色空間に変換後、プリンタエンジン固有の出力色CMYKを生成するものである。PostScript言語ではDevice色空間、CIEBased色空間、特殊色空間等多様な色空間が規定されている。Device色空間で指定された入力色に関しては、RGBソースプロファイル、CMYKシミュレーションプロファイル等の予め用意されたICCプロファイル群のうち、指定されたものを用いて色変換が行われる。CIEBased色空間で指定された入力色に関してはその色空間で指定された変換テーブル、変換関数、変換マトリックスに従い色変換が行われる。絶対色空間からプリンタエンジン固有の色空間への変換は出力プロファイル若しくは、PostScriptで規定されたColorRenderingDictionaryを用いて行われる。出力プロファイルに関してはグレイスケールがK単色で表現されることを優先したグレイ補償プロファイルと、グレイスケールをCMYK4色で表現するノーマルプロファイルと、の二つが選択的に使用可能である。Separation色空間、若しくはDeviceN色空間等で指定された特色についてはNamedICCプロファイルを用いてプロセスカラーCMYKに変換される。PSインタプリタ203は、CMSモードが画質優先モードの場合は出力プロファイルとしてノーマルプロファイルが選択され、カラー/モノクロ判定優先モードの場合はグレイ補償プロファイルが選択される。次にステップS4109へ進み、PSインタプリタ203は、該当する描画に対するDL出力をする。ディスプレイリスト上では各描画オブジェクトの色値は変換済みのCMYK値で表現される。したがって、画質優先モードの場合とカラー/モノクロ判定優先モードの場合とで生成されるディスプレイリストは異なる。次にステップS4110へ進み、PSインタプリタ203は、1ページ分の処理が完了したか否か判定する。Noの場合はステップS4102へ戻り、PSインタプリタ203は、処理を繰り返す。ステップS4110でYesの場合はステップS4111へ進み、PSインタプリタ203は、該当するページがカラーと判定済みか判定する。ここで、Noの場合、即ち1ページ分の処理を終えてカラーと判定済みで無いということは、該当するページがモノクロであるということになる。ステップS4111でNoの場合はステップS4112へ進み、PSインタプリタ203は、画質優先側のスレッドであれば、該当するページのDLを廃棄する。また、カラー/モノクロ判定優先側のスレッドであれば、PSインタプリタ203は、ジョブ制御部202に対してDL生成完了を通知する。ステップS4111でYesの場合はステップS4113へ進み、PSインタプリタ203は、カラー/モノクロ判定優先側のスレッドであれば、該当するページのDLを廃棄する。また、画質優先側のスレッドであれば、PSインタプリタ203は、ジョブ制御部202に対してDL生成完了を通知する。ステップS4112、或いはステップS4113の処理が終了すると、ステップS4114へ進み、PSインタプリタ203は、全ページの処理が終了したか否か判定する。Noの場合は、PSインタプリタ203は、ステップS4101へ戻り、処理を繰り返す。Yesの場合は、PSインタプリタ203は、フローを終了する。PSインタプリタ203の処理はリエントラントな構成となっており、同時に二つのPSデータを処理することができる。PSデータ解釈処理、及びDL生成処理にかかる時間は、PSデータの各ページのデータ量と複雑度に大きく依存する。したがって、スレッドB1、スレッドB2における各ページのDLの生成が完了するタイミングはページ順になるとは限らない。プリント時のページ順への並び替えはプリントドライバ205により実行される。なお、スレッドAとスレッドCとは同期の為の待ち時間が非常に多いスレッドCに関しては後述。結果として、CPU1の二つのコアにおける実行時間の大半がスレッドB1とスレッドB2とに割り当てられることになる。図5は、プリントドライバ205により実行される画像転送処理を表わすフローチャートである。また、図4のステップS4201を詳細化したフローチャートである。最初にステップS5001において、プリントドライバ205は、レンダリング終了通知を受信するまで待つ。レンダリング終了通知は、前述したように、ジョブ制御部202によりステップS4009で送信されるものである。次にステップS5002において、プリントドライバ205は、レンダリング済みのページがジョブの先頭ページか、若しくは前ページの印字出力が完了しているか判定する。Noの場合は、前のページのレンダリング完了を待つために、ステップS5001に戻る。前述したように、各ページのレンダリングはページ順に完了するとは限らない。ステップS5002でYesの場合は、ステップS5003へ進み、プリントドライバ205は、エンジンに対してプリント開始要求コマンドを送信し、画像を転送する。なお、ステップS5003において、プリントドライバ205は、エンジンとの同期処理も行う。プリンタエンジンは所定のスピード以上では出力できない。コントローラユニット200は、そのRIP処理が速すぎる場合にプリンタエンジン15の印字出力を待つ必要がある。次にステップS5004において、プリントドライバ205は、次ページがレンダリング済みか否か判定する。Yesであれば、ステップS5005に進み、プリントドライバ205は、エンジン同期して、プリント開始要求コマンドを送信し、画像を転送する。そして、プリントドライバ205は、再びステップS5004に戻り同様の処理を繰り返す。ステップS5004、S5005の処理により、先にレンダリング済みのページが全て出力される。ステップS5004でNoの場合は、ステップS5006へ進み、プリントドライバ205は、全ページの画像転送が完了したか否か判定する。Yesの場合は、ステップS5007へ進み、プリントドライバ205は、プリンタエンジン15に対してプリント完了要求コマンドを送信する。No場合は、ステップS5001へ戻り、プリントドライバ205は、処理を繰り返す。図6は、本実施形態における情報処理の一例をタイミングチャートの形式で示したものである。図6Aは、全5ページカラーの特定データのDL生成ありの場合となしの場合の処理時間を表す図である。このデータではDL生成なしの場合、DL生成ありの場合に比べて半分近くの処理時間で終了する。あくまで、特定データによる例を示すものであり、実際の処理時間はPSデータの内容によって変わる。図6Bは、図6Aの特定データに対して、部分ページ並列処理のみを実施した場合のタイミングチャートである。ページ開始時点で先行するスレッドB1かB2にDL生成を割り振る方式を採用している。まず、1ページ目のDL生成がスレッドB1に割り振られ、スレッドB2はDL生成しないため1ページ目の処理を先に終了する。スレッドB2で1ページ目が終了した時点で、2ページ目のDL生成を行っているスレッドは存在しないため、2ページ目のDL生成はスレッドB2に割り振られる。次に、2ページ目の処理はスレッドB2が先に終了し、3ページ目のDL生成はスレッドB2に割り振られる。以後同様に、4ページ目はスレッドB1に、5ページ目はスレッドB2に割り振られる。図6Aと図6Bとを比較することにより、部分ページ並列処理を実施することにより、処理時間が短縮されることが明らかである。図6Cは、図6Aの特定データに対して、図4の基本プリントフローを適用した場合のタイミングチャートである。まず、ページ開始時点t1ではCMSモードとしてスレッドB1に画質優先モード、スレッドB2にカラー/モノクロ判定優先モードが設定される。図4のステップS4101では先行するスレッドに画質優先モードが設定される。図6Cの1ページ目はほぼ同時ではあるが、スレッド起動順序がB1→B2の分だけスレッドB1が先行する。仮にB2が先行したとしても、図6CのスレッドB1とB2とが入れ替わるだけで、実質的な差異は生じない。なお、図6Cのタイミングチャートでは画質優先モードが設定されたページにQ、カラー/モノクロ判定優先モードが設定された場合にCを付与して表現している。1ページ目の処理を開始してt2の時点で、該当するページをカラーと判別している。1つでもカラーの描画があればカラーページと判定できるので、その直後からカラー/モノクロ判定優先側のDL生成はスキップされる。一般的にカラーのデータはページ内全般でカラー描画が行われることが多く、ページ処理の早期にカラー判別できる確率が高い。スレッドB2は1ページ目の途中からDL生成をスキップするので、1ページ目の処理が早く完了し、2ページ目の処理開始t3はスレッドB2が先行する。したがって、2ページ目はスレッドB2に画質優先モードが設定され、スレッドB1にカラー/モノクロ判定優先モードが設定される。2ページ目も同様にカラーページであるため、スレッドB2が2ページ目の処理を開始して、直ぐにカラーページと判別される。即ち、スレッドB1が2ページ目の処理を開始する時点t4でカラーページと判別されており、スレッドB1では最初からDL生成をスキップする。同様に3~5ページ目も先行するスレッドが処理開始後直ぐにカラーページと判別する為に、後続のスレッドではDL生成をスキップできる。結果として、ジョブ終了がt6の時点となり、図6Bの部分ページ並列処理のみを実行した場合の終了時間t5と比較して、僅かな遅れのみで済んでいる。図6CのスレッドB1は、第1のインタプリタの一例である。図6CのスレッドB2は、第2のインタプリタの一例である。図6Cのタイミングチャートは全ページカラー、かつ、ページの先頭付近でカラー判定可能という前提に基づいているが、そうならないケースも存在しうる。例えば、モノクロ描画しか行っていないモノクロページの場合はページの最後まで処理しないとモノクロ判定できない。したがって、DL生成のスキップを行うことができず、並列処理の効果が失われる。しかしながら、カラーデータに比べてモノクロデータは処理負荷が軽いため、処理が遅いとしてもエンジンスループットの中に吸収される可能性が高いといえる。また、モノクロページの中にワンポイントでカラー描画が行われるケースでは、ページ処理の終盤にカラーと判定される可能性がある。しかしながら、そのようなデータは一般的に少ないことと、上記モノクロページの場合と同様の理由で問題にならない。<実施形態2>実施形態1では、カラーページをページ先頭付近でカラーと判定できる確率が高いことに着目した。しかし、モノクロページの場合はページ末尾までモノクロページと判定することができない。実施形態2では、モノクロページが含まれる場合も並列処理の効果を生かしつつ、カラー/モノクロ判定の忠実度とカラー画質との両立を実現する方法を説明する。図7は、図4の基本プリントフローに対して、モノクロページが予め定められたページ数以上連続した場合に先行スレッドと後続スレッドに設定するCMSモードを入れ替える手法を説明したフローチャートである。図7においてスレッドAとスレッドCとの処理フローは図4と同じであるため、説明は省略する。また、スレッドBに関しても図4の処理フローと共通部分が多いため、図4と異なる点を中心に説明する。なお、本実施形態では、予め定められたページ数として2ページを例に説明を行う。スレッドB1、スレッドB2のステップS7101において、PSインタプリタ203は、現在のスレッドが該当するページの処理を先行して開始するスレッドか否かをジョブ制御部202に問い合わせある。先行するスレッドの場合には、該当するスレッドのCMSモードを画質優先モードに設定する。後続のスレッドの場合には、該当するスレッドのCMSモードをカラー/モノクロ判定優先モードに設定する。次にステップS7102へ進み、PSインタプリタ203は、モノクロ連続フラグがtrue真である場合にCMSモードの画質優先モードとカラー/モノクロ判定優先モードとを入れ替える。モノクロ連続フラグは、該当するページの前ページまでに連続してモノクロページが来ていることを示すフラグであり、RAM2に記憶される。また、モノクロ連続フラグは、スレッドB1とスレッドB2と用に別々に記憶領域が用意される。図7のフローを開始時にはジョブ制御部202によってfalse偽に初期化される。また、後述するフローの中でtrue真に設定されるものである。次にステップS7103へ進み、PSインタプリタ203は、PSコマンドを解釈する。次にS7104へ進み、PSインタプリタ203は、該当するページがカラーと判定済みではなく、該当するPSコマンドによる描画がカラー描画か否か判定する。Yesの場合はステップS7105へ進み、PSインタプリタ203は、該当するページをカラーと判定する。次に、ステップS7106へ進み、PSインタプリタ203は、該当するページがカラーと判定済みか否か判定する。ステップS7106でYesの場合は、ステップS7107へ進み、PSインタプリタ203は、CMSモードがカラー/モノクロ判定優先モードか否か判定する。ここでもYesの場合はステップS7108へ進み、PSインタプリタ203は、該当する描画に対するDL出力をスキップする。ステップS7107でNoの場合はステップS7109へ進み、PSインタプリタ203は、CMSモードに従った色変換処理を実行する。次にステップS7110へ進み、PSインタプリタ203は、該当する描画に対するDL出力をする。ステップS7106でNoの場合は、ステップS7111へ進み、PSインタプリタ203は、該当するページがモノクロと判定済みか否か判定する。Noの場合、PSインタプリタ203は、ステップS7109へ進む。Yesの場合はステップS7112へ進み、PSインタプリタ203は、CMSモードが画質優先モードか否か判定する。ここで、PSインタプリタ203は、Yesの場合はステップS7108へ進み、Noの場合はステップS7109へ進む。S7111でYesと判定されるのは、スレッドB1、スレッドB2の何れか後続側のスレッドにおいてのみである。先行するスレッドではページが終了して始めてモノクロと判定できるので、S7111には達しない。更にS7112でYesになる条件は後続側のスレッドで、かつ、画質優先モードのときのみなので、S7102でCMSモードの入れ替えが行われた場合に限定される。次にステップS7113へ進み、PSインタプリタ203は、1ページ分の処理が完了したか否か判定する。Noの場合はステップS7103へ戻り、PSインタプリタ203は、処理を繰り返す。ステップS7113でYesの場合はステップS7114へ進み、PSインタプリタ203は、該当するページがカラーと判定済みか判定する。ここで、Noの場合、即ち1ページ分の処理を終えてカラーと判定済みで無いということは、該当するページがモノクロであるということになる。ステップS7114でNoの場合はステップS7115へ進み、PSインタプリタ203は、画質優先側のスレッドであれば、該当するページのDLを廃棄する。また、カラー/モノクロ判定優先側のスレッドであれば、PSインタプリタ203は、ジョブ制御部202に対してDL生成完了を通知する。ステップS7114でYesの場合はステップS7116へ進み、PSインタプリタ203は、カラー/モノクロ判定優先側のスレッドであれば、該当するページのDLを廃棄する。また、画質優先側のスレッドであれば、PSインタプリタ203は、ジョブ制御部202に対してDL生成完了を通知する。ステップS7114でカラーでは無い、即ちモノクロと判定された場合、PSインタプリタ203は、ステップS7115へ進み、次にステップS7117へ進む。ステップS7117において、PSインタプリタ203は、モノクロページが2ページ以上連続したか否か判定する。Yesの場合はステップS7119へ進みPSインタプリタ203は、モノクロ連続フラグをtrue真に設定する。Noの場合はステップS7118へ進みPSインタプリタ203は、モノクロ連続フラグをfalse偽に設定する。ステップS7118、ステップ7119、或いはステップS7116の処理が終了すると、ステップS7120へ進み、PSインタプリタ203は、全ページの処理が終了したか否か判定する。Noの場合は、ステップS7101へ戻り、PSインタプリタ203は、処理を繰り返す。Yesの場合は、PSインタプリタ203は、フローを終了する。図8の処理例により図7のフローチャートを適用した場合の効果を説明する。図8Aは、1ページ目がカラー、かつ、2~5ページ目がモノクロの特定データのDL生成ありの場合となしの場合との処理時間を表す図である。図8Bは、図8Aの特定データに対して、部分ページ並列処理のみを実施した場合のタイミングチャートである。部分ページ並列処理による出力時間の削減効果は図6Bの例と同じであるため、説明は省略する。図8Cは、図8Aの特定データに対して、図7の基本プリントフローを適用した場合のタイミングチャートである。まず、ページ開始時点t1ではCMSモードとしてスレッドB1に画質優先モード、スレッドB2にカラー/モノクロ判定優先モードが設定される。図7のステップS7101では先行するスレッドに画質優先モードが設定される。また、1ページ目の時点ではモノクロ連続フラグはfalse偽のため、CMSモードの入れ替えは実行されない。なお、図8Cのタイミングチャートでは画質優先モードが設定されたページにQ、カラー/モノクロ判定優先モードが設定された場合にCを付与して表現している。1ページ目の処理を開始して直ぐに該当するページをカラーと判別し、その直後からカラー/モノクロ判定優先側のDL生成はスキップされる。スレッドB2は1ページ目の途中からDL生成をスキップするので、1ページ目の処理が早く完了し、2ページ目の処理開始はスレッドB2が先行する。2ページ目はスレッドB2に画質優先モードが設定され、スレッドB1にカラー/モノクロ判定優先モードが設定される。ここでも前ページはカラーページ1ページなので、モノクロ連続フラグはfalse偽に設定されたままである。2ページ目はモノクロページであるため、ページ終了までカラー/モノクロ判定は完了しない。したがって、何れのスレッドもDL生成をスキップすることができず、同じだけの処理時間を要する。3ページ目は一つ前のページがモノクロ、二つ前のページがカラーであるために、同様にモノクロ連続フラグはfalse偽に設定されたままである。2ページ目、3ページ目がモノクロであったため、4ページ目ではモノクロ連続フラグがtrue真に設定される。ここで、CMSモードの入れ替えが実行される。即ち、先行するスレッドB2にカラー/モノクロ判定優先モードが設定され、後続のスレッドB1に画質優先モードが設定される。スレッドB2による4ページ目の処理はt2の時点で終了し、ここで4ページ目がモノクロであることが判別される。したがって、t2の時点で必要なDL生成は完了しており、スレッドB1における画質優先モードのDL生成はスキップされる。同様に5ページ目においても前2ページがモノクロであり、モノクロ連続フラグがtrue真となる。t3の時点でモノクロページであることが判別され、スレッドB1におけるDL生成はスキップされる。先行するスレッドにカラー/モノクロ優先モードが設定されている場合は、モノクロと判別された時点で後続するスレッドによる画質優先モードのDL生成が不要となる。このようにモノクロページが含まれる場合でも、データ傾向に合わせた適応制御を行うことにより、DL生成のスキップが可能となる。つまり、モノクロページを含む場合でも、並列処理の効果を生かしつつ、カラー/モノクロ判定の忠実度とカラー画質との両立が実現される。<その他の実施形態>また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ又はCPUやMPU等がプログラムを読み出して実行する処理である。以上、上述した各実施形態によれば、性能劣化を最小限に抑えつつ、カラー/モノクロ判定の忠実度とカラー画質との両立を可能にすることができる。また、上述した各実施形態によれば、部分ページ並列処理方式の制御から大きな改変なく実現可能であり、ソフトウェアの実装保守工数を比較的少なくすることができる。以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形変更が可能である。