(57)【要約】【課題】  カラーとモノクロが混在したドキュメントを印刷実行する際に、高速、かつ精度の高いカラーモノクロ判定システムを可能とする。【解決手段】  印刷制御アプリケーションが、プリンタドライバと印刷制御装置のカラーモノクロ判定能力を知ることによって、最も効率的なレイヤーでのカラーモノクロ判定が可能となる。【選択図】  図１
2009042990.tif 000002
【特許請求の範囲】
【請求項１】
プリンタと接続されたパーソナルコンピュータの情報処理装置上のアプリケーションから、プリンタドライバを経由して印刷ジョブをプリンタ内の記憶装置に送信可能なカラーモノクロ色処理装置において、
前記情報処理装置上のアプリケーションで色判定処理を行う手段と、前記情報処理装置上のプリンタドライバで色判定処理を行う手段と、前記プリンタのＰＤＬ解析部分で色判定処理を行う手段と、前記プリンタの色判定処理能力と前記プリンタドライバの色判定処理能力をアプリケーションに通知する通知手段と、前記通知手段で通知されたプリンタドライバとプリンタのＰＤＬ解析部分の色判定処理能力からどこのレイヤーで色判定処理を行わせるかを決定する決定手段と、前記アプリケーションから決定されたレイヤーに色判定処理を行わせることを特徴とするカラーモノクロ色処理装置。
【請求項２】
前記プリンタの色判定処理能力とは、テキストのカラーモノクロ判定能力、グラフィックスのカラーモノクロ判定能力、イメージのカラーモノクロ判定能力、上書きされたオブジェクトのハンドリング能力、スペースといった描画されないデータに対する判定能力であることを特徴とする請求項１に記載のカラーモノクロ色処理装置。
【請求項３】
前記プリンタの色判定処理能力と前記プリンタドライバの色判定処理能力をアプリケーションに通知する通知手段は、プリンタドライバＳＤＫ（Ｓｏｆｔｗａｒｅ  Ｄｅｖｅｌｏｐｍｅｎｔ Ｋｉｔ）であることを特徴とする請求項１に記載のカラーモノクロ色処理装置。
【請求項４】
前記プリンタの色判定処理能力を、前記プリンタドライバが保持するのではなく、前記プリンタから取得した情報を、前記ＳＤＫを使ってアプリケーションに通知することを特徴とする請求項１に記載のカラーモノクロ色処理装置。
【請求項５】
カラーモノクロ判定能力を、前記プリンタドライバが保持するのではなく、前記プリンタから取得した情報を、前記アプリケーションに通知するカラーモノクロ色処理装置で、正しい情報を前記プリンタから取得できなかった時には、全ての色判定処理能力をなしとすることを特徴とする請求項１に記載のカラーモノクロ色処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータ等の情報処理装置に関して、プリンタやデジタル複写機等を用いて電子文書を印刷処理する際に、色の３原色であるＲＧＢが同じなら、モノクロと判断するカラーモノクロ判定装置に関するものである。さらに詳細には、カラーとモノクロが混在したドキュメントを印刷実行する際に、アプリケーションとプリンタドライバと印刷処理装置のカラーモノクロ判定能力を比較して、最も高速に、かつ精度の高いレイヤーで、カラーモノクロ判定を行うことを特徴とする印刷装置に関する。
【背景技術】
【０００２】
昨今、カラープリンタが急速に普及したことにより、パソコン、ワープロ、ワークステーション等のＤＴＰ機器で作成したカラーモノクロ混在文書を、カラープリンタによってプリントアウトすることが多くなっている。また、最近のカラープリンタの中には、カラー印刷モードとモノクロ印刷モードを備え、モノクロ印刷モードでは印刷速度を速くしたり、モノクロ印刷モードの課金をカラー印刷モードより安く設定しているものがある。
【０００３】
そのため、パソコン、ワープロ、ワークステーション等のＤＴＰ機器から転送されるカラーモノクロ混在文書の色判定を正しく行うことが要求されているが、これは、例えば、プリンタドライバがスプールデータをチェックすることによって、カラー印刷モードとモノクロ印刷モードの判定を行っていた。
【特許文献１】特開平11-149360号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ただ、従来例のように、プリンタドライバがスプールデータをチェックすることによってカラーモノクロ判定を行っていると、プリンタドライバの能力が異なると、カラーとモノクロの課金状態が異なる現象が発生する。例えば、カラーとモノクロが混在したドキュメントを、ＡというプリンタドライバとＢというプリンタドライバで印刷した場合に、Ａではカラーで課金されたページが、Ｂではモノクロとして課金されることがあるのである。これは、プリンタドライバのカラーモノクロ判定能力が異なる為に発生する現象である。
【０００５】
また、カラーモノクロ判定が行えるレイヤーとして、アプリケーションとプリンタドライバとコントローラという３つのレイヤーがあるが、モジュールの構成上、レイヤー毎にカラーモノクロ判定能力が異なるのが普通である。仮に、全部のレイヤーでカラーモノクロ判定を行ったとしたら、確かに判定精度は上がるが、無駄な処理が多く走る分、パフォーマンス劣化が発生する。
【０００６】
本発明はこのような問題を解決する１つ手法として、カラーとモノクロが混在したドキュメントを印刷実行する際に、印刷制御アプリケーションが、プリンタドライバと印刷制御装置のカラーモノクロ判定能力を取得して、最も効率的なレイヤーでのカラーモノクロ判定を行うカラーモノクロ判定システムを提供するものである。具体的には、例えば、プリンタドライバが最も高いカラーモノクロ判定能力があることが判明したら、アプリケーションとコントローラでのカラーモノクロ判定を止めて、プリンタドライバのみで行うことを特徴とするものである。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明は次のような構成からなる。すなわち、プリンタと接続されたパーソナルコンピュータ等の情報処理装置上のアプリケーションから、プリンタドライバを経由して印刷ジョブをプリンタ内の記憶装置に送信可能な装置において、前記情報処理装置上のアプリケーションで色判定処理を行う手段と、前記情報処理装置上のプリンタドライバで色判定処理を行う手段と、前記プリンタのＰＤＬ解析部分で色判定処理を行う手段と、前記プリンタの色判定処理能力と前記プリンタドライバの色判定処理能力をアプリケーションに通知する通知手段と、前記通知手段で通知されたプリンタドライバとプリンタのＰＤＬ解析部分の色判定処理能力からどこのレイヤーで色判定処理を行わせるかを決定する決定手段と、前記アプリケーションから決定されたレイヤーに色判定処理を行わせる手段を備える。
【発明の効果】
【０００８】
以上説明したように、カラーとモノクロが混在したドキュメントを印刷実行する際に、印刷制御アプリケーションが、プリンタドライバと印刷制御装置のカラーモノクロ判定能力を知ることによって、最も効率的なレイヤーでのカラーモノクロ判定が可能となり、結果、高速に、かつ精度の高いカラーモノクロ判定システムが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態について図面を参照して説明する。
【実施例１】
【００１０】
図１は、実施形態における印刷システムの構成を示す図である。
【００１１】
同図において、ホストコンピュータ３０００は、ＲＯＭ５３のプログラム用ＲＯＭあるいは外部メモリ６１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ５１を備え、システムバス５４に接続される各デバイスをＣＰＵ５１が総括的に制御する。また、このＲＯＭ５３のプログラム用ＲＯＭあるいは外部メモリ６１には、ＣＰＵ５１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ５３のフォント用ＲＯＭあるいは外部メモリ６１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ５３のデータ用ＲＯＭあるいは外部メモリ６１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ５２は、ＣＰＵ５１の主メモリ、ワークエリア等として機能する。
【００１２】
キーボードコントローラ（ＫＢＣ）５５は、キーボード５９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）５６は、ＣＲＴディスプレイ（ＣＲＴ）６０の表示を制御する。５７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フレキシブルディスク（ＦＤ）等の外部メモリ６１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）５８は、双方向性インターフェース６５を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００１３】
なお、ＣＰＵ５１は、例えばＲＡＭ５２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ６０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ５１は、ＣＲＴ６０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００１４】
プリンタ１５００は、ＣＰＵ７２により制御される。ＣＰＵ７２は、ＲＯＭ７３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ７４に記憶された制御プログラム等に基づいてシステムバス７５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ７３のプログラムＲＯＭには、ＣＰＵ７２の制御プログラム等を記憶する。ＲＯＭ７３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ７３のデータ用ＲＯＭには、ハードディスク等の外部メモリ７４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００１５】
ＣＰＵ７２は入力部７８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭ７９は、ＣＰＵ７２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ７９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。ハードディスク（ＨＤ）、ＩＣカード等で構成される外部メモリ７４は、メモリコントローラ（ＭＣ）８０によりアクセスを制御される。外部メモリ７４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、１５０１は操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００１６】
また、このプリンタ１５００には、課金のために、印刷枚数をカウントするカウンタ８１が設けられている。このカウンタ８１のカウント動作はＣＰＵ７２によって制御されうる。
【００１７】
また、前述した外部メモリ７４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００１８】
図２は、実施形態における印刷システムの印刷処理に係るソフトウェア構成を示す図である。
【００１９】
ホストコンピュータ３０００において、アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ６１に保存され、ＯＳやそのプログラムを利用する別のプログラムからの指示によってＲＡＭ２にロードされ、ＣＰＵ１によって実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ６１のＦＤや不図示のＣＤ−ＲＯＭもしくはネットワークを経由して外部ディスク１１のＨＤに追加することが可能となっている。外部メモリ６１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００２０】
グラフィックエンジン２０２は、プリンタ１５００のために用意されたプリンタドライバ２０３を同様に外部メモリ６１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Graphic Device Interface）関数からＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェイス２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００２１】
本実施形態の印刷システムは更に、アプリケーション２０１からの印刷データを中間コードデータでスプールする構成を有する。図３は、かかる中間コードデータのスプールに係るソフトウェア構成を示す図である。
【００２２】
図３において、アプリケーション２０１からの印刷データは印刷データ保存用ドライバ３０２を介して中間データ形式の保存ファイル３０３として外部メモリ６１に保存（スプール）される。この保存ファイル３０３は印刷物のコンテンツデータや印刷用設定データ等を含む。ここで、印刷物のコンテンツデータとは、ユーザがアプリケーション２０１上で作成したデータの中間コードであり、印刷用設定データとは、コンテンツデータをどのように出力するか（出力体裁等）を記述したデータである。
【００２３】
そして、この保存ファイル３０３を印刷制御アプリケーション３０４が読み込む。このアプリケーションはこの読み込んだ保存ファイル３０３の出力体裁を変更し、表示し、保存し、印刷命令を出力することが可能である。実際に印刷を行わせるのは印刷アプリケーション（デスプーラ）３０５である。印刷制御アプリケーション３０４からの印刷命令を受けた印刷アプリケーション（デスプーラ）３０５は、印刷制御アプリケーション３０４で設定された出力体裁に従い、グラフィックエンジン３０６に出力指示を送る。これにより、プリンタドライバ２０３はグラフィックエンジン２０２から取得したＤＤＩ関数に基づいてページ記述言語等によるプリンタ制御コマンドを生成し、システムスプーラ２０４を経由してプリンタ１５００に出力することになる。
【００２４】
印刷制御アプリケーション３０４は、中間コード形式の保存ファイル３０３を加工することで印刷データの内容を変更することができる。これによりアプリケーション２０１からの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーション２０１が持たない機能を実現することができる。一般には、印刷制御アプリケーション３０４が提供するユーザインタフェース（ＵＩ）のウインドウを介して設定を行い、その設定内容がＲＡＭ２あるいは外部メモリ６１上に保管される。
【００２５】
図４は、プリンタ１５００の一例である両面印刷機能を有するカラーレーザプリンタの断面図である。
【００２６】
このプリンタはホストコンピュータ３０００より入力した印刷データに基づいて得られる各色毎の画像データで変調されたレーザ光をポリゴンミラー３１により感光ドラム１５を走査して静電潜像を形成する。そして、この静電潜像をトナー現像して可視画像を得、これを中間転写体９へ全色について多重転写してカラー可視画像を形成する。そして更に、このカラー可視画像を転写材２へ転写し、転写材２上にカラー可視画像を定着させる。以上の制御を行う画像形成部は、感光ドラム１５を有するドラムユニット、接触帯電ローラ１７を有する一次帯電部、クリーニング部、現像部、中間転写体９、用紙カセット１や各種ローラ３、４、５、７を含む給紙部、転写ローラ１０を含む転写部及び定着部２５によって構成されている。
【００２７】
ドラムユニット１３は、感光ドラム（感光体）１５と感光ドラム１５のホルダを兼ねたクリーニング機構を有するクリーナ容器１４とを一体に構成したものである。このドラムユニット１３はプリンタ本体に対して着脱自在に支持され、感光ドラム１５の寿命に合わせて容易にユニット交換可能に構成されている。上記感光ドラム１５はアルミシリンダの外周に有機光導電体層を塗布して構成し、クリーナ容器１４に回転可能に支持されている。感光ドラム１５は、図示しない駆動モータの駆動力が伝達されて回転するもので、駆動モータは感光ドラム１５を画像形成動作に応じて反時計回り方向に回転させる。感光ドラム１５の表面を選択的に露光させることにより静電潜像が形成されるように構成されている。スキャナ部３０では、変調されたレーザ光を、モータ３１ａにより画像信号の水平同期信号を同期して回転するポリゴンミラーにより反射し、レンズ３２、反射鏡３３を介して感光ドラムを照射する。
【００２８】
現像部は、上記静電潜像を可視画像化するために、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）の現像を行う３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃと、ブラック（Ｂ）の現像を行う１個のブラック現像器２１Ｂとを備えた構成を有する。カラー現像器２０Ｙ、２０Ｍ、２０Ｃ及びブラック現像器２１Ｂには、スリープ２０ＹＳ、２０ＭＳ、２０ＣＳ及び２１ＢＳと、これらスリープ２０ＹＳ、２０ＭＳ、２０ＣＳ、２１ＢＳそれぞれの外周に圧接する塗布ブレード２０ＹＢ、２０ＭＢ、２０ＣＢ及び２１ＢＢとがそれぞれ設けられる。また３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃには塗布ローラ２０ＹＲ、２０ＭＲ、２０ＣＲが設けられている。
【００２９】
また、ブラック現像器２１Ｂはプリンタ本体に対して着脱可能に取り付けられており、カラー現像器２０Ｙ、２０Ｍ、２０Ｃは回転軸２２を中心に回転する現像ロータリー２３にそれぞれ着脱可能に取り付けられている。
【００３０】
ブラック現像器２１Ｂのスリープ２１ＢＳは感光ドラム１５に対して例えば３００μｍ程度の微小間隔を持って配置されている。ブラック現像器２１Ｂは、器内に内蔵された送り込み部材によってトナーを搬送すると共に、時計回り方向に回転するスリープ２１ＢＳの外周に塗布ブレード２１ＢＢによって塗布するように摩擦帯電によってトナーへ電荷を付与する。また、スリープ２１ＢＳに現像バイアスを印加することにより、静電潜像に応じて感光ドラム１５に対して現像を行って感光ドラム１５にブラックトナーによる可視画像を形成する。
【００３１】
３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃは、画像形成に際して現像ロータリー２３の回転に伴って回転し、所定のスリープ２０ＹＳ、２０ＭＳ、２０ＣＳが感光ドラム１５に対して３００μｍ程度の微小間隔を持って対向することになる。これにより所定のカラー現像器２０Ｙ、２０Ｍ、２０Ｃが感光ドラム１５に対向する現像位置に停止し、感光ドラム１５に可視画像が作成される。
【００３２】
カラー画像形成時には、中間転写体９の１回転毎に現像ロータリー２３が回転し、イエロー現像器２０Ｙ、マゼンダ現像器２０Ｍ、シアン現像器２０Ｃ、次いでブラック現像器２１Ｂの順で現像工程がなされ、中間転写体９が４回転してイエロー、マゼンダ、シアン、ブラックのそれぞれのトナーによる可視画像を順次形成し、その結果フルカラー可視画像を中間転写体９上に形成する。
【００３３】
中間転写体９は、感光ドラム１５に接触して感光ドラム１５の回転に伴って回転するように構成されたもので、カラー画像形成時に時計回り方向に回転し、感光ドラム１５から４回の可視画像の多重転写を受ける。また、中間転写体９は画像形成時に後述する転写ローラ１０が接触して転写材２を挟持搬送することにより転写材２に中間転写体９上のカラー可視画像を同時に多重転写する。中間転写体の外周部には、中間転写体９の回転方向に関する位置を検知するためのＴＯＰセンサ９ａ及びＲＳセンサ９ｂと、中間転写体に転写されたトナー像の濃度を検知するための濃度センサ９ｃが配置されている。
【００３４】
転写ローラ１０は、感光ドラム１５に対して接離可能に支承された転写帯電器を備えたもので、金属軸を中抵抗発泡弾性体により巻回することによって構成されている。
【００３５】
転写ローラ１０は、図４に実線で示すように中間転写体９上にカラー可視画像を多重転写している間は、カラー可視画像を乱さぬように下方に離開している。そして、上記中間転写体９上に４色のカラー可視画像が形成された後は、このカラー可視画像を転写材２に転写するタイミングに合わせてカム部材（不図示）により転写ローラ１０を図示点線で示す上方に位置させる。これにより転写ローラ１０は転写材２を介して中間転写体９に所定の押圧力で圧接すると共に、バイアス電圧が印加され、中間転写体９上のカラー可視画像が転写材２に転写される。
【００３６】
定着部２５は、転写２を搬送させながら、転写されたカラー可視画像を定着させるものであり、転写材２を加熱する定着ローラ２６と転写材２を定着ローラ２６に圧接させるための加圧ローラ２７とを備えている。定着ローラ２６と加圧ローラ２７とは中空状に形成され、内部にそれぞれヒータ２８、２９が内蔵されている。即ち、カラー可視画像を保持した転写材２は定着ローラ２６と加圧ローラ２７とにより搬送されると共に、熱及び圧力を加えることによりトナーが表面に定着される。
【００３７】
可視画像定着後の転写材２は、その後排紙ローラ３４、３５、３６によって排紙部３７へ排出して画像形成動作を終了する。
【００３８】
クリーニング手段は、感光ドラム１５上及び中間転写体９上に残ったトナーをクリーニングするものであり、感光ドラム１５上に形成されたトナーによる可視画像を中間転写体９に転写した後の廃トナーあるいは、中間転写体９上に作成された４色のカラー可視画像を転写材２に転写した後の廃トナーは、クリーナ容器１４に蓄えられる。
【００３９】
印刷される転写材（記録用紙）２は、用紙カセット１から給紙ローラ３により取り出されて中間転写体９と転写ローラ１０との間に挟まれるようにして搬送されてカラートナー画像が記録され、定着部２５を通過してトナー像が定着される。片面印刷の場合には、案内３８が上方の排紙部に記録用紙を導くように搬送経路を形成するが、両面印刷に対しては、下方の両面ユニットに導くように経路を形成する。
【００４０】
両面ユニットに導かれた記録用紙は、搬送ローラ４０により用紙カセット１の下部（二点鎖線で示す搬送経路）に一旦送り込まれた後に逆方向に搬送され、両面トレイ３９に送られる。両面トレイ３９上では、用紙は用紙カセット１に載置された状態とは表裏が逆になり、また搬送方向について前後が逆になっている。この状態で再びトナー像の転写、定着を再度行うことで、両面印刷ができる。
【００４１】
また、このプリンタ１５００は、図示は省略するが、第１の記録媒体としての通常の印刷用紙を載置する上述した用紙カセット１の他、第２の記録媒体としてのインデックス用紙または合紙を載置するオプションカセットを有し、ホストコンピュータ３０００からの制御指令に従い用紙を取り出すカセットを選択しつつ印刷処理を行う。これにより、用紙カセット１からの用紙への印刷途中で、オプションカセットからのインデックス用紙を中差しすることが可能になる。
【００４２】
以下、印刷制御アプリケーション３０４および印刷アプリケーション（デスプーラ）３０５におけるカラーモノクロ切り替え処理方法を、本実施例の代表図である図５を用いて詳しく説明する。
【００４３】
図５は、カラーとモノクロ原稿が混在したドキュメントの印刷時における、印刷制御アプリケーション３０４による制御処理を示すフローチャートである。
【００４４】
まず、ステップ５０１で印刷制御アプリケーション３０４を起動する。図６は、印刷制御アプリケーション３０４が提供するメイン画面としてのＵＩ画面の一例を示す図である。
【００４５】
このＵＩ画面は、オープンした保存ファイルの文書構造を示すツリー部６０１と、印刷された状態を表示するプレビュー部６０２とを含む。ツリー部６０１には、その保存ファイルに含まれる章と、各章に含まれるページが木構造で表示される。ツリー部６０１には頁番号が表示されており、この頁番号は原稿ページの番号を示している。また、プレビュー部６０２には、印刷ページの内容が縮小されて表示される。その表示順序は、保存ファイルの文書構造を反映したものとなっている。
【００４６】
図７は、印刷制御アプリケーション３０４がオープンした保存ファイルに関する設定画面の一例を示す図である。この設定画面は前述したメイン画面から呼び出すことができる。同図におけるＰｒｉｎｔ Ｓｔｙｌｅで、２−ｓｉｄｅ Ｐｒｉｎｔｉｎｇが設定されると、図６に示すように、プレビュー部６０２にも、対応する両面情報のプレビューが表示される。
【００４７】
図８は、印刷制御アプリケーション３０４から、各々のページのカラーモノクロ色属性を指定するＵＩ画面の一例を示したものである。デフォルトは「自動判定」だが、このＵＩから「Ｕｓｅ Ｓｅｔｉｎｇ Ｄｉｆｆｅｒｅｎｔ ｆｒｏｍ Ｃｈａｐｔｅｒ ｆｏｒ  ｔｈｅ ｆｏｌｌｏｗｉｎｇ Ｓｅｔｔｉｎｇｓ」のチェックボックスをＯＮにして、「Ｂｌａｃｋ ａｎｄ Ｗｈｉｔｅ」、もしくは「Ｆｕｌｌ  Ｃｏｌｏｒ」を選択すると、選択された色属性で、印刷制御装置１５００から印刷することが可能になる。
【００４８】
次にステップ５０２で、プリンタドライバＳＤＫ（Ｓｏｆｔｗａｒｅ Ｄｅｖｅｌｏｐｍｅｎｔ Ｋｉｔ）をコールして、対象となる印刷制御装置１５００とプリンタドライバ２０３のカラーモノクロ判定能力を取得する。下記は、この時コールされるプリンタドライバＳＤＫの一例である。
【００４９】
-アイテム名
ＣＤＭ＿ＩＴＥＭ＿ＣＯＮＴ＿ＣＯＬＯＲＭＯＮＯ＿ＩＮＦＯ
- 機能
印刷制御装置のカラー/モノクロ判定能力を取得する。
【００５０】
Ｄａｔａ Ｖａｌｕｅ
（１）Ｔｅｘｔオブジェクトのカラーモノクロ判定能力
（２）Ｇｒａｐｈｉｃｓオブジェクトのカラーモノクロ判定能力
（３）Ｉｍａｇｅオブジェクトのカラーモノクロ判定能力
（４）上書きされたオブジェクトのハンドリングが可能かどうかの判定能力
（５）スペースといった描画されないデータに対する判定能力
-アイテム名
ＣＤＭ＿ＩＴＥＭ＿ＤＲＩＶＥＲ＿ＣＯＬＯＲＭＯＮＯ＿ＩＮＦＯ
- 機能
プリンタドライバのカラー/モノクロ判定能力を取得する。
【００５１】
-Ｄａｔａ Ｖａｌｕｅ
（１）Ｔｅｘｔオブジェクトのカラーモノクロ判定能力
（２）Ｇｒａｐｈｉｃｓオブジェクトのカラーモノクロ判定能力
（３）Ｉｍａｇｅオブジェクトのカラーモノクロ判定能力
（４）上書きされたオブジェクトのハンドリングが可能かどうかの判定能力
（５）スペースといった描画されないデータに対する判定能力
（１）は、Ｔｅｘｔオブジェクトに対するカラーモノクロ判定が行えるかどうかの能力を返すものである。（２）と（３）も同様で、ＧｒａｐｈｉｃｓオブジェクトとＩｍａｇｅオブジェクトのカラーモノクロ判定が行えるかどうかの能力を返すものである。（４）は、カラーオブジェクトの上に、モノクロオブジェクトが上書きされたような場合で、例えば、赤色の四角形の上を黒の四角形が覆いかぶさって、赤色が全く見えないような場合に、モノクロと判断できるかどうかの能力を返すものである。（５）は、実際には描画されない、例えばスペースといった文字コードのカラーモノクロ判定が行えるかどうかの能力を返すものである。
【００５２】
プリンタドライバは、印刷制御装置毎に作成するので、プリンタドライバが返すＣＤＭ＿ＩＴＥＭ＿ＣＯＮＴ＿ＣＯＬＯＲＭＯＮＯ＿ＩＮＦＯの値（印刷制御装置のカラーモノクロ判定能力）は、あらかじめプリンタドライバ内に記憶されているものとする。
【００５３】
ステップ５０３で、印刷制御アプリケーションから印刷実行が選択されると、上記ＳＤＫの判定結果を元に、どこのレイヤーでカラーモノクロ判定を行うのが最もよいかを、印刷制御アプリケーション内で判断する。（ステップ５０４）例えば、図９−１で示すような能力がＳＤＫで通知された場合、一番能力が高いレイヤーはプリンタドライバであるため、プリンタドライバで全てのカラーモノクロ判定を行うべきと判断する。
【００５４】
あるいは、図９−２で示すように、印刷制御装置とプリンタドライバで全く同じカラーモノクロ判定能力と判断された場合には、最も高速に判定できるレイヤーにカラーモノクロ判定を行わせる。一般的に、印刷制御アプリケーションやプリンタドライバといった情報処理装置のＣＰＵは汎用品で、かつ他のタスクも走っている為、専用のチップを用いている印刷制御装置よりは処理速度が遅いのが一般的である。そのため、この場合には、印刷制御装置で全てのカラーモノクロ判定を行うべきと判断する。
【００５５】
図９−３は、単純にはどこのレイヤーでカラーモノクロ判定を行わせるべきかを決められないケースである。このような時には、図１０で示すＵＩの設定に応じて、判定を行うレイヤーが決められる。例えば、「カラーモノクロ判定速度を優先する」が選択された場合には、一番まる（○）の多いプリンタドライバのレイヤーで、カラーモノクロ判定が行われる。ただし、この場合は、「上書きされたオブジェクトのハンドリングが可能かどうかの判定能力」はないため、例えば、赤色の四角形の上を黒の四角形が覆いかぶさって、赤色が全く見えないような場合でも、カラーと判断される。
【００５６】
上記の例でも、図１０で「カラーモノクロ判定精度を優先する」が選択された場合には、複数のレイヤーでカラーモノクロ判定が行われる。この場合だと、プリンタドライバと印刷制御装置の両方のレイヤーで、カラーモノクロ判定が行われる。これにより、カラーモノクロ判定精度は上がるが、２箇所でカラーモノクロ判定を行う為、印刷速度は劣化する。
【００５７】
図１０の「カラーモノクロ判定結果の互換性を優先する」は、全く異なる概念で、カラーモノクロ判定のレイヤーを決定する方法である。現在市場には、さまざまなＰＤＬ（Ｐｒｉｎｔｅｒ Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ プリンタ記述言語）が存在する。つまり、プリンタドライバや印刷制御装置といっても、さまざまなＰＤＬあり、ＰＤＬの能力によっては、カラーモノクロ判定能力が異なるときがある。このような状況下でも、ＰＤＬに依存しないカラーモノクロ判定結果を得るためには、プリンタドライバや印刷制御装置といった下位層でカラーモノクロ判定を行わせるのではなく、印刷制御アプリケーションという、共通でかつ上位層におけるカラーモノクロ判定が必要である。これを実現する機能が、「カラーモノクロ判定結果の互換性を優先する」である。
【００５８】
図５のフローチャートに話を戻す。ステップ５０５のカラーモノクロ判定の指示を含むデスプールテーブルの作成処理であるが、デスプールテーブルとは、印刷アプリケーション３０５に対する印刷情報を指示するためのテーブルで、例えば図１１に示すような構造を有する。同図に示すように、デスプールテーブルは、印刷設定情報を、ドキュメント全体に有効な印刷設定、シートのくくりで有効な印刷設定、シートに有効な印刷設定、および物理ページに有効な印刷設定に関する情報を階層的に記述したものである。このステップ５０５では、このような構成のデスプールテーブルを作成し、ドキュメント全体に有効な印刷設定、及び物理ページに有効な印刷設定として、カラーモノクロ判定の指示を書き込むことができる。カラーとモノクロが混在したドキュメントの印刷の場合であれば、ドキュメント全体に有効な印刷設定、及び物理ページ情報として、カラーモノクロ判定の指示を書き示すことになる。図１２は、そのときのデスプールテーブルを例示した図である。
【００５９】
次に、ステップ５０６で、印刷制御アプリケーション３０４から印刷アプリケーション（デスプーラ）３０５への印刷指示処理が行われる。これは、ステップ５０５で作成したデスプールテーブルの内容に従い印刷を行うように、印刷アプリケーション（デスプーラ）３０５に指示を行う処理である。これにより、実際に印刷処理が行われる。
【００６０】
次に、印刷アプリケーション（デスプーラ）３０５による印刷制御処理を説明する。
【００６１】
図１３は、印刷アプリケーション（デスプーラ）３０５による印刷制御処理を示すフローチャートである。
【００６２】
まず、ステップ１３０１で、印刷アプリケーション３０５は、印刷制御アプリケーション３０４より受け取ったデスプールテーブルを読み込む。具体的には、ドキュメント全体に有効な印刷設定、シートのくくりで有効な印刷設定、シートに有効な印刷設定、物理ページに有効な印刷設定が順次読み込まれる。
【００６３】
次に、ステップ１３０２で、読み込んだデスプールテーブルのドキュメント全体に有効な印刷設定として、プリンタドライバでカラーモノクロ判定をするべきかどうかを判断する。ここで、カラーモノクロ判定をプリンタドライバで行わせる指示があったときには、ステップ１３０３でプリンタドライバＳＤＫを用いてプリンタドライバによるカラーモノクロ判定の指示を行う。（ＣＤＭ＿ＩＴＥＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥで、ＣＤＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥ＿ＯＮを設定する）逆に、プリンタドライバでカラーモノクロ判定を行わない場合には、ステップ１３０４でプリンタドライバＳＤＫを用いてプリンタドライバによるカラーモノクロ判定を行わない指示を行う。（ＣＤＭ＿ＩＴＥＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥでＣＤＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥ＿ＯＦＦを設定する）下記は、この時に使用するＳＤＫの一例を示したものである。
【００６４】
アイテム名
ＣＤＭ＿ＩＴＥＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥ
[プリンタドライバによるカラーモノクロ判定を行わない場合]
ＣＤＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥ＿ＯＦＦ
[プリンタドライバによるカラーモノクロ判定を行う場合]
ＣＤＭ＿ＰＣＯＭＳＰＯＯＬＭＯＤＥ＿ＯＮ
次に、ステップ１３０５で、読み込んだデスプールテーブルに物理ページに有効な印刷設定として、印刷制御装置でカラーモノクロ判定をするべきかどうかを判断する。
【００６５】
ここでカラーモノクロ判定を印刷制御装置で行わせる指示があった場合には、ステップ１３０６でプリンタドライバＳＤＫを用いて印刷制御装置にカラーモノクロ判定の指示を行う。逆に、印刷制御装置でカラーモノクロ判定を行わない場合には、ステップ１３０７で印刷制御装置によるカラーモノクロ判定を行わない指示を行う。
【００６６】
印刷アプリケーション３０５は、プリンタドライバＳＤＫに対して印刷制御装置のカラーモノクロ判定の有無を通知する印刷設定構造体（ＤＥＶＭＯＤＥ）の作成を依頼する。プリンタドライバＳＤＫは、印刷設定構造体を定義するためのアプリケーションであり、印刷アプリケーション３０５から指示された印刷設定構造体を作成する。印刷アプリケーション３０５はプリンタドライバＳＤＫに作成してもらった印刷設定構造体を引数として、グラフィックエンジン２０２（ＧＤＩ）に対して、Ｒｅｓｅｔ＿ＤＣと呼ばれるＧＤＩ関数を吐き出す。グラフィックエンジン２０２は、受け取ったＲｅｓｅｔ＿ＤＣのＧＤＩ関数を、Ｒｅｓｅｔ＿Ｄｅｖｉｃｅと呼ばれるＤＤＩ関数に変換し、プリンタドライバ２０３に出力する。プリンタドライバ２０３は、Ｒｅｓｅｔ＿Ｄｅｖｉｃｅの引数として受け取った印刷設定構造体を利用して、印刷指示の作成を行う。この印刷指示もプリンタに依存するため、プリンタドライバ２０３を通じて作成することになる。この一連の処理により、カラーモノクロの判定指示を行うコマンドの送信準備処理が行われ（ステップ１３０８、１３０９）、印刷処理中に、印刷設定構造体（ＤＥＶＭＯＤＥ）を変更してプリンタドライバが印刷指示の生成を行うことが可能となる。
【００６７】
そして次に、ステップ１３１０と１３１１で、プリンタドライバ２０３は、カラーモノクロ判定を印刷制御装置で行うかどうかを指示するコマンドを、プリンタ１５００に送信する。カラーモノクロ判定指示コマンドを受け取ったプリンタ１５００は、それに基づいてカラーモノクロの判定を制御することになる。カラーモノクロ判定指示コマンドは、実際にはグラフィックエンジン２０２を通じてプリンタドライバ２０３経由でプリンタ１５００に送信される。下記は、カラーモノクロ判定指示コマンドの拡張実装例である。
【００６８】
印刷制御装置でカラーモノクロ判定を行う場合
Ｅｓｃ＆ｎ３２ＷｂＣＡＮＯＮＳＴＲＩＮＧ ＰＡＧＥＨＩＮＴ＿ＣＯＬＯＲ＝ＮＯＮＥ
印刷制御装置でカラーモノクロ判定を行わない場合
Ｅｓｃ＆ｎ３２ＷｂＣＡＮＯＮＳＴＲＩＮＧ ＰＡＧＥＨＩＮＴ＿ＣＯＬＯＲ＝ＭＯＮＯ
もしくは
Ｅｓｃ＆ｎ３２ＷｂＣＡＮＯＮＳＴＲＩＮＧ ＰＡＧＥＨＩＮＴ＿ＣＯＬＯＲ＝ＣＯＬＯＲ
Ｅｓｃ＆ｎ３２ＷｂＣＡＮＯＮＳＴＲＩＮＧ ＰＡＧＥＨＩＮＴ＿ＣＯＬＯＲ＝ＮＯＮＥを印刷生後装置が受信すると、送られてきたドキュメントのカラーモノクロ判定を行う。
【００６９】
ステップ１３１２で、最後のページか否かを判定する。最後のページでないと判定されれば、ステップ１３０５に戻って次のページの処理に移行する。
【００７０】
なお、上述した実施形態では、プリンタ１５００へのデータ送信を印刷アプリケーション（デスプーラ）３０５からグラフィックエンジン２０２を介して行うようにしたが、グラフィックエンジン２０２を介さすに送信する構成をとってもよい。この場合、ステップ１３０８、１３０９のカラーモノクロ判定指示コマンド送信準備処理は行われず、かわりにステップ１３１０、１３１１で、直接プリンタドライバ２０３にそのコマンド発行命令を促すことになる。
【００７１】
以上のように、カラーとモノクロが混在したドキュメントを印刷実行する際に、印刷制御アプリケーションが、プリンタドライバと印刷制御装置のカラーモノクロ判定能力を知ることによって、最も効率的なレイヤーでのカラーモノクロ判定が可能となり、結果、高速に、かつ精度の高いカラーモノクロ判定システムが提供可能となる。
【００７２】
[他の実施例]
本実施例では、ステップ５０２で、プリンタドライバが返すＣＤＭ＿ＩＴＥＭ＿ＣＯＮＴ＿ＣＯＬＯＲＭＯＮＯ＿ＩＮＦＯの値（印刷制御装置のカラーモノクロ判定能力）は、あらかじめプリンタドライバ内に記憶されているものとしたが、印刷制御装置１５００から取得した構成情報の一部としてもよい。つまり、プリンタドライバ２０３は、構成情報取得で印刷制御装置のカラーモノクロ判定能力を取得して、プリンタドライバＳＤＫを経由して印刷制御アプリケーション３０４にこの能力を返すのである。このようにすれば、例えば印刷制御装置がバージョンアップして、カラーモノクロ判定能力が上がった時も、プリンタドライバの修正なしで、ただしカラーモノクロ判定が行えるようになる。
【図面の簡単な説明】
【００７３】
【図１】実施形態における印刷システムの構成を示す図である。
【図２】実施形態における印刷システムの印刷処理に係わるソフトウエア構成を示す図である。
【図３】実施形態における印刷システムの中間コードデータのスプールに係わるソフトウエア構成を示す図である。
【図４】実施形態における両面印刷機能を有するカラーレーザプリンタの断面図である。
【図５】カラーとモノクロ原稿が混在したドキュメントの印刷時における、印刷制御アプリケーション３０４による制御処理を示したフローチャート図である。
【図６】印刷制御アプリケーションが提供するメイン画面の一例を示した図である
【図７】印刷制御アプリケーションの保存ファイルに関する設定画面の一例を示した図である。
【図８】印刷制御アプリケーションのカラーモノクロ切り替え方法に関する設定画面の一例を示した図である。
【図９】印刷制御アプリケーションとプリンタドライバと印刷制御装置のカラーモノクロ判定能力テーブルの例を示した図である。
【図１０】カラーモノクロ判定基準を変更する際の画面の一例を示した図である。
【図１１】実施形態におけるデスプールテーブルの構造例を示す図である。
【図１２】実施形態におけるデスプールテーブルへのカラーモノクロ切り替え情報の記録例を示した図である。
【図１３】実施形態における印刷アプリケーション（デスプーラ）による印刷制御処理を示すフローチャートである。
【図１】
2009042990.tif 000003
【図２】
2009042990.tif 000004
【図３】
2009042990.tif 000005
【図４】
2009042990.tif 000006
【図５】
2009042990.tif 000007
【図６】
2009042990.tif 000008
【図７】
2009042990.tif 000009
【図８】
2009042990.tif 000010
【図９】
2009042990.tif 000011
【図１０】
2009042990.tif 000012
【図１１】
2009042990.tif 000013
【図１２】
2009042990.tif 000014
【図１３】
2009042990.tif 000015