JP2004070521A - Control method for color and monochrome dispersed printing, program, storage medium, and device - Google Patents
Control method for color and monochrome dispersed printing, program, storage medium, and device Download PDFInfo
- Publication number
- JP2004070521A JP2004070521A JP2002226543A JP2002226543A JP2004070521A JP 2004070521 A JP2004070521 A JP 2004070521A JP 2002226543 A JP2002226543 A JP 2002226543A JP 2002226543 A JP2002226543 A JP 2002226543A JP 2004070521 A JP2004070521 A JP 2004070521A
- Authority
- JP
- Japan
- Prior art keywords
- color
- monochrome
- attribute
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、アプリケーションからの描画コマンドに対応して印刷処理を行う印刷データ処理装置および印刷データ処理方法、コンピュータが実行可能な印刷データ処理を行うプログラム、およびコンピュータが読み出し可能なプログラムを格納した記憶媒体に関するものである。
【0002】
【従来の技術】
近年、ネットワーク機器が一般に利用され、ネットワーク上に多数のパソコン(以下、PC)やプリンターが接続されるようになった。このようなネットワーク環境において、印刷を行う際、ページ数の多いドキュメントあるいは部数の多いドキュメントについては、印刷時間の短縮を図るために、いったん印刷ジョブをスプールし、複数のプリンタに頁ごとあるいは部数ごとに分散して出力するシステム(分散印刷システム)が知られている。
【0003】
さらに、このようなネットワーク環境において、カラー頁、モノクロ頁が混在する一つのドキュメントに対して、印刷時のコストおよび印刷時間の短縮を図るために、カラー頁はカラープリンタへ、モノクロ頁はモノクロプリンタへ分散して出力するシステム(カラー・モノクロ分散印刷システム)が知られている。
【0004】
例えば、特開平2002−086852号公報には、カラー/モノクロ分散印刷の仕組みが開示されており、更には、ユーザの指示に応じてカラーページ比率の閾値を設定させ、この閾値を超えたと判断された場合には、全てのページをカラープリンタに送信するような仕組みが開示されている。
【0005】
【発明が解決しようとする課題】
しかしながら、従来のカラー・モノクロ分散印刷システムによれば、更なる改善の余地がある。例えば、カラーがごく僅かしか含まれていないページがカラー画像として判断されてしまうため、カラープリンタの少ないような環境では、大量のデータを印刷時にカラープリンタの負荷が大きくなってしまうという問題がある。また、ユーザーがモノクロ印刷で十分と判断するような印刷データでも、一部にカラー画像等が含まれているだけで自動的にカラー印刷が行われてしまうような欠点があった。このように、ユーザーは印刷データの判定、分散処理をシステムに任せることしかできず、よりユーザの要望に沿ったカラーモノクロ分散印刷を実現できる仕組みが望まれる。
【0006】
【課題を解決するための手段】
上記課題を解決するための本発明は、具体的にカラー情報とモノクロ情報を含む印刷データを、カラープリンタとモノクロプリンタとを含む複数のプリンタを利用して印刷するための印刷システムにおけるカラーモノクロ分散印刷制御方法であって、前記印刷システムのユーザーから、前記印刷データをカラー情報又はモノクロ情報のいずれかに分類するための判定基準の設定を受け付けるための設定受付工程と、前記設定受付工程において受け付けた前記判定基準の設定に基づくカラーモノクロ分散印刷を実行させる印刷制御工程とを有する。
【0007】
ここで、前記設定受付工程は前記ユーザーが前記判定基準を設定するための設定画面を表示させる表示制御工程を更に備え、前記判定基準は、前記プリンタにおいて印刷されるページ毎に、前記印刷データをカラー情報又はモノクロ情報のいずれかに分類するための基準であってもよいし、前記印刷データに含まれるテキストデータ又はイメージデータの少なくとも一方を利用して、前記印刷データをカラー情報又はモノクロ情報のいずれかに分類するための基準であってもよい。
【0008】
また、前記設定受付工程が、前記印刷データに含まれるテキストデータをすべてモノクロ情報と分類するためのモノクロ設定を受け付けてもよく、さらには、前記設定受付工程において受け付けた判定基準に基づき印刷データのカラー属性をカラー又はモノクロのいずれか一方に設定するための属性設定工程をさらに備えることができる。この属性設定工程において、前記カラー属性は前記印刷データ内におけるカラー情報の占める割合と、前記判定基準とに基づいて設定されてもよい。ここで、前記印刷制御工程は、前記属性設定工程において設定された前記カラー属性に基づいて、前記印刷データのカラーモノクロ分散印刷を実行することができる。
【0009】
また、本発明の別の側面においては、前記印刷システムが、前記属性設定工程において設定された前記印刷データの前記カラー属性を記憶するための記憶部を備え、前記印刷制御工程が、前記記憶部に記憶された前記カラー属性に基づいて前記印刷データのカラーモノクロ分散印刷を実行してもよい。さらに、前記記憶部が前記印刷データについてのデフォルトのカラー属性を更に記憶し、前記属性設定工程において設定された前記カラー属性と、前記デフォルトのカラー属性のいずれかを設定するための選択工程を更に備え、前記印刷制御工程が、前記選択工程において選択されたカラー属性に基づいて前記印刷データの印刷指示を行うことができる。
【0010】
上記課題を解決するための上記本発明は、カラーモノクロ分散印刷制御方法コンピュータに実行させるためのカラーモノクロ分散印刷制御プログラムや、当該プログラムを格納したコンピュータが読取り可能な情報記憶媒体として提供されてもよい。さらには、上記方法を実施するためのカラーモノクロ分散印刷制御装置として提供できることは言うまでもない。
【0011】
【発明の実施の形態】
[第1の実施形態]
以下、本発明を適用するのに好適である実施形態について説明を行う。
【0012】
<本実施形態の情報処理システムの構成例>
図1は、本発明を適用可能な実施形態の情報処理システムの構成を説明するブロック図である。尚、本システムにおけるクライアントコンピュータは、1台、又は複数台接続されていることを仮定している。
【0013】
図において、102、103、104はクライアントコンピュータ(以下、クライアント)であり、イーサネット(登録商標)などのネットワークケーブルによって、ネットワーク106に接続され、アプリケーションプログラム等の各種のプログラムを実行可能であり、印刷データをプリンタに対応するプリンタ言語に変換する機能を有するプリンタドライバを搭載している。尚、クライアントは、複数のプリンタドライバをサポートするものとする。
【0014】
101は本実施形態のサーバ(以下、プリントサーバと呼ぶ)であり、ネットワークケーブルによって、ネットワーク106に接続され、ネットワークで使用されるファイルを蓄積したり、ネットワーク106の使用状態を監視したりする。プリントサーバ101は、ネットワーク106に接続されている複数のプリンタを管理している。
【0015】
ハードウエア構成としては、クライアント102〜104とプリントサーバ101は共に、図2で後述するような一般的な情報処理装置でよく、クライアントとプリントサーバには、それぞれの役割に対応して異なる制御を行う印刷制御プログラムが実行可能に搭載されている。又、プリントサーバ101は、クライアントの機能を同時に持つこともできる。
【0016】
本実施形態におけるプリントサーバ101は、更に、クライアントコンピュータ102、103、104から印刷要求が出された印字データを含む印刷ジョブを格納して印刷する機能や、クライアントコンピュータ102〜104から印字データを含まないジョブ情報を受け取って印刷順序を管理し、印刷順序になったクライアントに対して印字データを含む印刷ジョブの送信許可を通知する機能、ネットワークプリンタ105のステータスや印刷ジョブの各種情報を取得して、クライアントコンピュータ102〜104に通知する機能などを揃えている。
【0017】
105は印刷制御装置としてのネットワークプリンタであり、図示しないネットワークインタフェースを介してネットワーク106と接続されており、クライアントコンピュータから送信される印字データを含む印刷ジョブを解析し、1ページずつドットイメージに変換して印刷する。106はネットワークであり、クライントコンピュータ102〜104、プリントサーバ101、ネットワークプリンタ105等と接続している。
【0018】
<本実施形態の情報処理装置のハードウエア構成例>
図2は、本実施形態でクライアント102〜104とプリントサーバ101として使用される情報処理装置の構成を説明するブロック図である。尚、本実施形態においては、クライントコンピュータ102〜104もプリントサーバ101も同様あるいは同等のハードウエア構成とするが、それぞれ特殊なハードウエア構成であっても構わない。
【0019】
図2において、200は情報処理装置の制御手段であるCPUであり、ハードディスク(HD)205に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや、本実施形態のネットワークプリンタ制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
【0020】
201は記憶手段であるROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。202は一時記憶手段であるRAMであり、CPU200の主メモリ、ワークエリア等として機能する。
【0021】
203は記憶媒体読み込み手段としてのフロッピー(登録商標)ディスク(FD)ドライブであり、後述する図5に示すようにFDドライブ203を通じて、記憶媒体としてのFD204に記憶されたプログラム等を本コンピュータシステムにロードすることができる。尚、記憶媒体は、FDに限らず、CDROM、CDR、CDRW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意である。204は記憶媒体であるフロッピーディスク(FD)であり、コンピュータが読み取り可能にプログラムが格納された記憶媒体である。
【0022】
205は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HD)であり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。更に、スプール手段であるスプーラはここに確保される。スプール手段は、クライアントではクライアントスプーラのことであり、プリントサーバではサーバスプーラのことである。又、プリントサーバでは、クライアントから受けたジョブ情報を格納し、順序制御を行うためのテーブルもこの外部記憶手段に生成されて格納される。
【0023】
206は指示入力手段であるキーボードであり、ユーザーがクライアントコンピュータに対して、又、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。207は表示手段であるディスプレイであり、キーボード206から入力したコマンドや、プリンタの状態等を表示したりするものである。
【0024】
208はシステムバスであり、クライアントやプリントサーバであるコンピュータ内のデータの流れを司るものである。209は入出力手段であるインタフェースであり、該インタフェース209を介して情報処理装置は外部装置とのデータのやり取りを行う。
【0025】
尚、上記情報処理装置の構成はその一例であり、図2の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM、RAM、HDなどで変更することも可能である。
【0026】
図3は、図2に示したRAM202のメモリマップの一例を示す図であり、FD204からロードされる上記ネットワークプリンタ制御プログラムが、RAM202にロードされ実行可能となった状態のメモリマップである。
【0027】
尚、本実施形態では、ネットワークプリンタ制御プログラム及び関連データをFD204から直接RAM202にロードして実行させる例を示すが、これ以外にも、ネットワークプリンタ制御プログラムを動作させる度に、既にネットワークプリンタ制御プログラムがFD204からインストールされているHD205から、RAM202にロードするようにしてもよい。又、本ネットワークプリンタ制御プログラムを記憶する媒体は、FD以外にCDROM、CDR、PCカード、DVD、ICメモリカードであってもよい。更に、本ネットワークプリンタ制御プログラムをROM201に記憶しておき、これをメモリマップの一部となすように構成し、直接CPU200で実行することも可能である。又、以上の各装置と同等の機能を実現するソフトウェアをもって、ハードウェア装置の代替として構成することもできる。
【0028】
又、本ネットワークプリンタ制御プログラムのことを、簡単に印刷制御プログラムと呼ぶこともある。印刷制御プログラムは、クライアントにおいては、印刷ジョブの印刷先の変更を指示したり、印刷順序を変更する指示をするための制御を行うプログラムを含む。一方、プリントサーバにおいては、印刷ジョブの順序制御を行ったり、印刷ジョブの印刷終了や印刷先変更要求などを通知するためのプログラムを含んでいる。又、このような制御を行う本実施形態の印刷制御プログラムは、クライアントにインストールされるモジュールと、プリントサーバにインストールされるモジュールを別々に分けてもよいし、ひとつの印刷制御プログラムが、実行される環境によりクライアント用として機能したり、プリントサーバ用として機能するようにしてもよい。あるいは、一台のコンピュータに、クライアント用の機能を持つモジュールとプリントサーバ用として機能するモジュールとをともにインストールし、同時にあるいは時分割で、擬似的に平行動作させる構成も可能である。
【0029】
301は基本I/Oプログラムであり、本情報処理装置の電源がONされたときに、HD205からOSがRAM202に読み込み、OSの動作を開始させるIPL(イニシャルプログラムローデイング)機能などを有しているプログラムが入っている領域である。302はオペレーティングシステム(OS)であり、303はネットワークプリンタ制御プログラムで、RAM202上に確保される領域に記憶される。304は関連データで、RAM202上に確保される領域に記憶される。305はワークエリアで、CPU200が本プリンタ制御プログラムを実行する領域が確保されている。
【0030】
図4は、図2に示したFD204のメモリマップの一例を示す図である。図4において、401はデータの情報を示すボリューム情報であり、402はディレクトリ情報、403は本実施形態で説明する印刷制御プログラムであるネットワークプリンタ制御プログラム、404はその関連データである。ネットワークプリンタ制御プログラム403は、本実施形態で説明するフローチャートに基づいてプログラム化したものであり、本実施形態では、クライアント及びサーバ共に、同様の構成をとっている。
【0031】
図5は、図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図であり、図2と同一のものには同一の符号を付してある。図5において、FD204には、本実施形態で説明するネットワークプリンタ制御プログラム及び関連データが格納されている。
【0032】
<本実施形態の情報処理システムにおけるソフトウエア構成例>
ここで、本実施形態における用語の技術的意味について説明しておくと、複数のプリンタを1つのプリンタとして仮想的に束ねる仮想プリンタをグループプリンタ、束ねられるプリンタをメンバプリンタと呼ぶ、又、グループプリンタ及びメンバプリンタに対応するプリンタドライバを夫々グループプリンタドライバ、メンバプリンタドライバと呼ぶこととする。
【0033】
グループプリンタ(グループプリンタドライバ)、メンバプリンタ(メンバプリンタドライバ)を更に具体的に定義すると、アプリケーションからOSを介して生成される描画命令に基づいて中間形式ファイル(汎用印刷ファイル)を生成する為のデータを生成する仮想ドライバをグループプリンタドライバと呼ぶ。そしてジョブ制御プリントサービス622により、先の中間形式のファイルに基づいてページ記述言語を生成させるべく各個別のプリンタに印刷指示がなされるが、この個別の各プリンタをメンバプリンタと呼ぶ。
【0034】
一方、本実施形態において、アプリケーションにおける印刷指示に応じてウィンドウズ(登録商標)等のOSを介して出力される描画命令(一般的にDDI或いはGDIと呼ばれている)或いはEMF(Enhanced Metafile Format:拡張メタファイル)を解釈しページ記述言語を生成及びデバイスへ出力させるようなプリンタドライバを通常プリンタドライバ、この時のデバイスを通常デバイスと呼び、グループプリンタやメンバプリンタと区別する。尚、OSとしてはウィンドウズに限定されるものではなく、描画命令を備えるOSであれば適用可能であることは言うまでもない。又、デバイスであるプリンタとは区別してプリンタドライバとプリンタ出力ポートとの組み合わせをプリンタと呼ぶこともある。例えば、後述する図7のロジカルポート(ジョブ制御ポートモニタ621)とグループプリンタドライバとの組み合わせを指定することを、グループプリンタを指定すると呼ぶこととする。
【0035】
又、代行印刷処理においては、代行候補となる各プリンタをメンバプリンタと呼び、まず印刷に利用される出力先プリンタは、メンバプリンタを記憶するメンバプリンタリストの優先順位一位のものである。この優先順位は、ドライバユーザーインタフェース(UI:User Interface)上でメンバプリンタドライバの名称リストを表示し、その表示順位をユーザーの指示により変更可能としている。
【0036】
図6は、本システムのクライアントサーバモデルにおいて、Microsoft Word(登録商標)などの一般的なアプリケーションから発行された描画コマンドを含む印刷ジョブが、印刷ジョブ制御システムにおいてどのように処理されるかを示した図である。
【0037】
通常、印刷の指示がされると、アプリケーションプログラムは一連の描画命令をOSを介して生成させ、該生成された描画命令をプリンタドライバを経て所定の形式に変換した後、ウインドウズスプーラ(Windows Spooler)に渡される。ウィンドウズスプーラは、ユーザーがユーザーインタフェースを介して選択し指示したポートモニタにプリントジョブデータを渡して、プリントデバイスに送信させる手順をとる。本実施形態では、ユーザーはあらかじめ印刷ジョブ制御システム用のポートモニタ621(以降、ジョブ制御ポートモニタと略記)を指定して印刷を指示する。
【0038】
アプリケーションプログラム601は一連の描画命令をOSを介して生成させる。OSを介して生成された描画命令を受け取ったグループプリンタドライバ603では、汎用印刷ファイルを生成するための汎用ドキュメントデータを生成し、プリントデバイスへプリントジョブデータを送信する従来のポートモニタではなく、ジョブ制御ポートモニタ621にプリントジョブデータとして送信する。又、プリンタドライバインタフェースを介して設定された用紙サイズ、ステイプル指示等の印刷設定情報も、ジョブ制御ポートモニタ621に送信される。
【0039】
ジョブ制御ポートモニタ621は、プリントジョブデータである汎用印刷ドキュメントデータをプリントデバイス105に送信するのではなく、印刷ジョブ制御システム用プリントサービス622(以降、ジョブ制御プリントサービスと略記)に送信する。ジョブ制御プリントサービス622は、プリントジョブデータに対して、後述するような印刷ジョブ制御処理を行う。
【0040】
印刷ジョブ制御システム用プリントマネージャ623(以降、ジョブ制御プリントマネージャと略記)は、ユーザーがジョブ制御プリントサービス622内部でプリントジョブがどのような状態にあるかを調べたり、プリントジョブを操作したりするためのユーザーインタフェースを提供するプログラムである。ジョブ制御プリントマネージャ623は、ジョブ制御プリントサービス622のソフトウェアのインタフェース(API:Application Program Interface)を介して、ジョブ制御プリントサービス622と情報・指示をやり取りしている。
【0041】
印刷ジョブ制御システム用サーバ630(以降、ジョブ制御サーバと略記)は、個々のクライアント102〜104上のジョブ制御プリントサービス622がプリントデバイス105にプリントジョブデータを送信するタイミングを集中制御(スケジューリング)している。印刷ジョブ制御システム用マネージメントコンソール633(以降、ジョブ制御マネージメントコンソールと略記)は、ジョブ制御サーバ630が持つソフトウェアがアクセスするためのAPIを介して、ジョブ制御サーバ630と情報・指示をやり取りすることで、印刷ジョブ制御システム全体を監視することができる。
【0042】
又、ジョブ制御サーバ630は、デバイス情報コントロールモジュール631を用いて各プリントデバイス105と通信を行い、各プリンタ内の印刷ジョブや動作状態に関する情報を入手したり、操作を行ったりする。入手した情報は、クライアント102〜104側のジョブ制御プリントサービス622に渡すことができる。
【0043】
<本実施形態の情報処理システムにおける動作例>
次に、本実施形態におけるグループプリンタドライバ603からの印刷について説明する。グループプリンタドライバ603は、アプリケーションプログラムが生成した一連の描画コマンドをプリントデバイスやOSの種類に依存しない汎用中間フォーマットデータ(前述の汎用ドキュメントデータに相当)に変換する。この汎用中間フォーマットデータは、ウィンドウズスプーラ604からジョブ制御ポートモニタ621を経て(図6の(a))、ジョブ制御プリントサービス622に導かれる(図6の(b))。ここで、汎用中間フォーマットデータは、汎用印刷ファイルに構築される。この汎用印刷ファイルの構成については図8にて後述する。
【0044】
ジョブ制御プリントサービス622は、このプリントジョブに対して行うジョブ制御の種類に応じて、汎用印刷ファイルをもとに描画コマンドを生成し(図6の(c))、続いてPDLドライバ602がその描画コマンドをプリントデバイス105が解釈可能なPDL形式のファイルにする。
【0045】
図6では、ジョブ制御プリントサービス622で、このプリントジョブに対してプリンタ側のエラーを検知して代行印刷を行う例を示しており、実線で示されるのは当初印刷を予定していたメンバジョブであり、破線については代行印刷のために生成されたジョブを示している(図6の(c))。PDLドライバ602で生成されたPDLファイルはウィンドウズスプーラ604、ジョブ制御ポートモニタ621を経て(図6の(d))、再びジョブ制御プリントサービス622に渡される(図6の(e))。ジョブ制御プリントサービス622は、ジョブ制御サーバ630の指示に従ってPDLのプリントジョブデータをプリントデバイス105に送信する(図6の(f))。
【0046】
ジョブ制御プリントサービス622は、汎用印刷ファイル中の印刷指示書の指示にしたがって、1つの汎用印刷ファイルを複数のプリントジョブに論理的に分割してそれぞれ別のプリントデバイスに送信したり、一度送信したプリントジョブデータを別のプリントデバイスに送信し直したりする。図6中に示す(c)、(d)、(e)、(f)はそのような場合のプリントジョブデータの経路を示している。
【0047】
一方、汎用印刷ファイルをアプリケーションソフトウェアが作成し、そのアプリケーションソフトウェアが直接汎用印刷ファイルを印刷ジョブとして投入する場合は、一般のアプリケーションとはグループプリンタドライバ603への情報の渡し方やグループプリンタドライバ603での処理内容が異なる。前述のように、一般のアプリケーションの場合には、アプリケーションはグループプリンタドライバ603に描画情報を渡す際、通常のプリンタドライバと同じようにウィンドウズのGDI関数を呼び出し、グループプリンタドライバ603がそれに応じて汎用印刷ファイルを生成する。これに対して汎用印刷ファイルを直接作成するアプリケーションの場合は、アプリケーションが汎用印刷ファイルをすでに持ち、それをグループプリンタドライバ603に供給する。グループプリンタドライバ603は、必要に応じてあらかじめ設定された印刷方法にもとづいて汎用印刷ファイル内部の印刷指示書を書き換えてウィンドウズスプーラ604に送る。
【0048】
(汎用印刷ファイルの構成例)
図8は、汎用印刷ファイルの構成の一例を示した図である。本実施形態で使用される汎用印刷ファイルは、印刷指示部8a(前述の印刷指示書に相当)とドキュメントデータ部8bとからなる。印刷指示部8aは、ドキュメントの情報と印刷指示とを記述した部分である。又、ドキュメントデータ8bは、アプリケーションのドキュメントのデータを汎用的な形式のデータに変換したもの(汎用ドキュメントデータ)であり、プリンタ言語やOSの種類に依存しないデータフォーマットとなっている。言い換えれば、アプリケーション601が汎用印刷ファイルを生成する機能を備えているとも言え、具体的には、用紙サイズ、N−up、ステイプル設定等各種印刷設定を指示できるとともに、指定された印刷設定(ジョブチケットとも呼ぶ)と汎用印刷データとを合せた汎用印刷ファイルを生成する機能を備えている。
【0049】
アプリケーションデータを変換した後の変換後データ(汎用印刷データ)としては、印刷リソースデータとして利用可能で且つワードプロセッサアプリケーション等により再度編集可能な形式のデータであることが想定され、実質的な標準形式のうち、例えば、XML形式や、ウィンドウズシステムにより提供されるEMF形式やアドビシステムズによるPDF形式やSVG形式などが汎用形式の汎用印刷データとして採用できる。
【0050】
印刷指示部8aは、ヘッダ部801、ページ情報部802、ドキュメント属性部803、印刷体裁指示部804、出力方法指定部805、メンバプリンタ数806、メンバプリンタドライバ名807などから構成されている。尚、ドキュメント属性とは各ページがどのような属性を持つかに基づいて決定されるものであり、例えば、複数ページのうちの1ページ分でもカラーの画像情報が含まれれば、そのドキュメント属性はカラーの属性となるようなものを指す。
【0051】
ヘッダ部801は、本ファイルのバージョン識別やファイル情報などの情報を格納する部分である。ページ情報部802は、ドキュメントデータ部8bのドキュメントデータのページ数、各ページのサイズなどの情報を格納する部分であり、後述の図16の(a)に示されるカラー属性や各ページ毎のステイプル属性などを含められる。また、ドキュメント属性部803は、ドキュメントの属性に関する情報を格納する部分である。ドキュメントの属性には例えばカラー、ステイプル、パンチ等が含まれる。
【0052】
印刷体裁指示部804は、印刷ページ範囲、印刷部数、ドキュメントデータの面付け情報(N−UPや製本印刷など)、ステイプル指示やパンチ指示など、出力体裁に関する情報を格納する部分である。出力方法指定部805は、出力方法として、代行印刷、通常印刷(代行しない印刷)などの情報を格納する部分である。尚、ステイプル、パンチ指示については、ページ単位で指定(サブセットステイプ等)される事もある。
【0053】
メンバプリンタ数806は、グループプリンタドライバが関連付けているメンバプリンタの数を格納する部分である。メンバプリンタドライバ名807は、メンバプリンタのプリンタドライバ名を格納する部分である。このメンバプリンタドライバ名807は、前述のメンバプリンタ数806の数だけの格納エリアを持っている。後述する図16の(a)及び(b)の情報は、印刷指示部8aの各項目から構成されるものであり、ページ情報部802、印刷体裁指示部803、印刷体裁指示部804などの各項目の情報から構成される。
【0054】
前述の図6で説明したジョブ制御プリントサービス622では、汎用印刷中間フォーマットデータより汎用印刷ファイルを生成する際、グループプリンタドライバのGUI上での設定を印刷指示部8aへ記憶する。更に、グループプリンタドライバから受け取った汎用印刷中間フォーマットデータを、汎用印刷ファイルのドキュメントデータ部8bに記録する処理も、ジョブ制御プリントサービス622により実行される。
【0055】
<ウィンドウズプリントシステムと印刷ジョブ制御システムの関係例>
次に、図7でウィンドウズが提供するプリントシステムと印刷ジョブ制御システムとにおける印刷ジョブの関係と処理概要をさらに詳しく述べる。ここで、図6と同じ機能は同じ参照番号を付与しており、その機能については詳説しない。
【0056】
図7中では、印刷ジョブ制御システム700は、制御プログラムが動作するプリントサーバ101とクライアント102〜104の物理的なマシンをまたいだ、印刷ジョブ制御システムの範囲を示している。又、プリントサーバが管理している出力ポート(Output Port)711は、クライアントのジョブ制御プリントサービス622のプロキシ出力ポート(Proxy Output Port)712とそれぞれ関連付けられ、ひとつのポートに関連づけられた各クライアント上のプロキシ出力ポートの全てを統一的に管理している。本実施例では、実際のプリントジョブデータは各々のクライアントのプロキシ出力ポート712に保持される。
【0057】
ジョブ制御サーバ630は、プリントジョブデータ自体の送信処理は行わず、ジョブ制御プリントサービス622に対して印刷ジョブの送信指示のみを行う。その指示に応じて、クライアントのジョブ制御プリントサービス622はプリントジョブデータをプリントデバイス105に送信する。
【0058】
次に、印刷ジョブ制御システム700が、代行印刷といった付加価値印刷を行う場合の処理を説明する。
【0059】
印刷ジョブ制御システム700が、代行印刷といった付加価値的な印刷を行う場合には、前述のようにユーザーまたはアプリケーション601は、グループプリンタドライバ603に割り当てられたプリンタに印刷ジョブを発行しなければならない。ジョブ制御プリントサービス622は、グループプリンタドライバ603によって処理された汎用印刷中間フォーマットデータをジョブ制御ポートモニタ621を介して受け取る。ジョブ制御プリントサービス622は、この汎用印刷中間フォーマットデータより汎用印刷ファイルを生成し(図7の715)、デスプーラ701を介してPDLドライバが割り当てられた別のプリンタにジョブ(メンバジョブ)を発行して印刷を行わせる。
【0060】
この時、デスプーラ701は、前述の図8で説明した汎用印刷ファイルの印刷指示部8aを解釈し、ドキュメントデータ部88bのドキュメントデータを加工してウィンドウズのGDIに変換し、プリンタドライバに対して印刷指示を行い、印刷ジョブを発行する。例えば、印刷体裁指定部804に2−UPの指示が記録されていた場合、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトする。又、代行印刷時には、印刷指示部8aに記述されている代行先メンバプリンタにジョブを発行する。
【0061】
又、デスプーラ701はメンバプリンタにジョブを発行する際、メンバプリンタドライバに対応する印刷指示として、メンバプリンタのDEVMODEを作成する必要があるが、このDEVMODEは印刷指示部8aに記載された内容を適宜各メンバプリンタのDEVMODEに反映させて生成する。
【0062】
クライアント側のジョブ制御プリントサービス622は、PDLドライバ602によってレンダリングされた夫々のメンバジョブのPDLデータをジョブ制御ポートモニタ621を介して受け取り、受け取ったジョブ(PDLデータ)に関する情報をプリントサーバ側に知らせ、ジョブデータは自身のプロキシ出力キュー(Proxy Output Port)712で一時保持する。その後、ジョブ制御サーバ630からの送信指示を受けた後にプリントデバイス105に送信する。
【0063】
(ユーザーインタフェース例)
次に、本実施形態における、共通設定領域と拡張設定領域といった記憶領域を有するプリンタドライバを持つプリンタを複数台使用して、代行印刷処理を行う印刷ジョブ制御システム700のためのプリンタドライバのUI制御について説明する。
【0064】
図9は、本実施形態のグループプリンタドライバのUI制御フローを示すフローチャートである。
【0065】
アプリケーション601からグループプリンタドライバ603へのUI表示要求が来ると、処理はステップS91へ進む。ステップS92は、印刷ジョブ制御システムAPIを使って、出力プリンタ及び代行候補となるメンバプリンタドライバの識別IDを問い合わせるステップであり、該当する全てのプリンタドライバの識別IDを獲得し、更に獲得した出力プリンタの識別IDより出力プリンタドライバの能力を読み出すステップである。ステップS93は前記ステップS92で読み出した出力プリンタドライバの能力より、ドライバ機能の収得がドライバ設定情報の拡張領域の部分まで可能かつドライバUI制御が可能な、いわゆる“機能制御可能なドライバ”か、それ以外のドライバ、すなわち“機能制御不可能なドライバ”かを判定するステップであり、“機能制御可能なドライバ”の場合にはステップS94へ、それ以外の構成ではステップS95へ進む。
【0066】
ステップS94は、あらかじめグループプリンタドライバUIとして規定されている項目と出力プリンタドライバとの機能の対応をとるステップであり、基本設定項目及び拡張設定項目に関して対応をとる。又、この際に該当項目があればグループプリンタドライバUIに表示し、なければその項目をグレーアウト表示し、UI表示されている項目の設定を行う。ステップS95は、基本設定項目のみに対して、出力プリンタドライバとの機能の対応を取り、該当項目があればグループプリンタドライバUIに表示し、なければその項目をグレーアウト表示し、UI表示されている項目の設定を行う。又、拡張設定項目に関してはグレーアウト表示を行う。
【0067】
図10に、本実施形態のメンバプリンタの構成と設定可能項目の対応を示し、図11に、共通設定項目・拡張設定項目と各設定項目の対応を示す。
【0068】
尚、本実施形態では、共通設定項目は、前記共通設定領域に存在する項目、拡張設定項目は、前記拡張設定領域に存在する項目として分類し規定しているが、印刷ジョブ制御システム700を運用するOSの違いによっては、設定項目の分類が異なる場合や設定可能項目に変更がある場合があるが、本実施形態のUI制御フローが有効なのは言うまでもない。
【0069】
ステップS96は、前記ステップS94、S95で設定不可であった項目を設定するか判断するステップであり、ユーザーにより更に詳細設定が選択された場合には、ステップS97へ進む。ステップS97は、グループプリンタドライバUI上に設定項目がない項目を出力プリンタドライバのUIを開き詳細に設定させるステップである。
【0070】
尚、出力プリンタドライバUIを開いた場合、グループプリンタドライバで設定可能な項目についても設定可能となり、同一機能が両者に設定された場合に処理が2重にかかってしまうため、次に示すUI制御を施し表示を行う。
【0071】
(1)出力プリンタが“機能制御可能なドライバ”である場合、グループプリンタドライバUI上の設定項目と競合する項目については、出力プリンタドライバUIでの設定が行えないように、項目をグレーアウト表示もしくは非表示としてUI制御する。
【0072】
(2)出力プリンタが“機能制御不可能なドライバ”である場合、共通設定項目については出力プリンタドライバで設定された設定でUI表示する。UI表示後、出力プリンタドライバUI上でその項目について変更がなされた場合、ドライバUIを閉じる処理でグループプリンタドライバで設定された設定項目の情報を対応する出力プリンタドライバの共通設定項目に上書きし、出力プリンタUI上での設定変更を許さない。又、上書き処理を行う際に、出力プリンタUI上での設定変更が無効であるといった警告表示を行う事も可能である。
【0073】
以上全ての項目の設定が終わったらステップS98へと進む。図12及び図13に、UIのグレーアウト制御、非表示制御の具体例を示す。設定項目の両面印刷、製本印刷のダイアログボックス(点線で囲まれた1201、1301)が前記UI制御を施した部分である。
【0074】
<本実施形態の情報処理システムにおける処理手順例>
(グループプリンタドライバ603の処理手順例)
次に、図6及び図7に述べられた説明を基に、前述のグループプリンタドライバを用いた本実施例の印刷システムの処理手順を図17のフローチャートを用いて説明する。尚、図17は図6及び図7におけるグループプリンタドライバ603の処理を示すフローチャートであり、ここにおける各ステップの実際の処理は、図2にて説明したCPU200がROM201やHD205等の不揮発性記憶手段に記憶された印刷制御プログラムを読出して実行することに基づいて実現される。
【0075】
ステップS161は、グループプリンタドライバ603に対応するユーザーインタフェースに表示される印刷ボタンの押下信号入力に応じて、アプリケーション601から呼び出される印刷情報送信開始処理に対応する。ここで、アプリケーション601より送られてくる描画命令はページ単位で受け渡される。
【0076】
次に、ステップS162は、アプリケーション601より送られてくる描画命令が全てのページ分送られてきた否かを判定するステップであり、全てのページの描画情報が送られた場合には、ステップS166へ処理を移行する。無論、所定の印刷ジョブにおける最初のページにおける描画情報を受信した場合には、ステップS162の判定は「No」となる。
【0077】
ステップS163は、ページ情報送信開始処理でコールされる処理に対応するものであり、更に詳しくは、ページ単位で描画情報(例えばDDIコマンド)がOSを介してアプリケーション601から送信されてくる際に、描画情報とは別にページの先頭を示すページ開始コマンドが送られてきたか否かの判定を行う処理に対応する。そして、ステップS163にてページ開始コマンドが送られてきたと判定された場合には、処理はステップS164に進む。
【0078】
ステップS164では、印刷指示部8aへ書き込まれる印刷指示書の生成、ページ情報の判定処理、ドキュメントデータ部8bに書き込まれる汎用ドキュメントデータの生成、パケット化及びパケット送信処理が施される。詳細は図18にて後述することとする。そして、ステップS164の処理を経てステップS165の処理に移行され、ステップS165ではページの最後を示すページ終了情報が送られてきたか、言い換えればページ単位の描画情報の受信が終了したか否かの判定が行われる。処理が継続中であった場合には、ステップS164の直前へ進み処理を継続する。ページ終了情報が送られてきたと判定されると、処理をステップS162に再び戻す。
【0079】
ステップS162で「Yes」と判定されれば処理をステップS166へ移行させ、ステップS166では、ステップS164において判定された各ページの属性情報を加味して決定されたドキュメント属性情報のパケット化及びパケット送信処理が実行され、すなわち図6、図7のスプーラ604にステップS175で生成され記憶保持されていたドキュメント属性と処理終了通知IDをセットしたパケットデータ(パケット終了通知)を送信して処理を終了する。
【0080】
次に図18の説明を行う。図18は、上述した図17のステップS164の詳細を示すフローチャートである。ステップS171は、アプリケーション601より送られてきた描画コマンドを読み込む処理に対応するものであり、文字コードやアウトラインフォント等のテキストデータ、JPEGやビットマップデータ等の画像オブジェクト、画像及びフォントに関連したテキスト修飾データ、各種描画コマンドを読み込むステップである。更にステップS171で読み込まれたアプリケーションコマンドはページ単位に区別されて読み込まれている。
【0081】
ステップS172は、ページ単位で指定されているステイプル、パンチなどの印刷指示属性情報を記憶するステップである。ステップS172における印刷指示属性情報の記憶の状態を図16の(a)に示す。
【0082】
ステップS173においては、前記ステップS172より得た情報に対してページ属性の判定を行うステップであり、描画コマンド及びオブジェクトの属性情報(ウィンドウズでは、GDIコマンドやDDIコマンド)、具体的にはカラー情報を例に挙げるとテキストのカラー情報、ビットマップのカラー情報画像のプレイン(Plain)数及びピクセル情報、オブジェクト描画に用いるペンカラーやブラシスタイル情報より、カラー情報の有無を判定するステップである。
【0083】
ステップS174は、アプリケーション601よりOSを介して送られてきたJPEGやビットマップデータなどの画像データや描画オブジェクトや描画コマンドより汎用ドキュメントデータを構築するステップである。
【0084】
ステップS175は、図16の(a)の情報に基づきドキュメント属性の評価を行うステップであり、ページ情報内に、カラー、ステイプル、パンチなどドキュメント属性に該当するものがあった場合に、内部のフラグをONとしてその属性の出現を記憶する。各ページ属性を随時監視することによって、リアルタイムにドキュメントの属性の評価が行われる。上に説明した図16(a)、図16(b)の情報は後に図7の汎用印刷構築部715が汎用印刷ファイルの印刷指示部8aを生成する場合に利用される。尚、別の実施形態として、全てのページ属性の判定が行われた後、ドキュメント属性の評価を行うような形態も想定される。ドキュメント属性の評価結果の記憶状態を図16の(b)に示す。
【0085】
尚、ステップS173において、ページ内のカラー属性よりカラー判定を行う際に、カラー・モノクロの判定基準レベルをユーザーが変えることも可能である。詳細については、後述する。
【0086】
ステップS176は、前記ステップで得た、印刷指示属性情報、ページ属性情報、汎用ドキュメントデータを、パケット情報として、図6及び図7のウィンドウズスプーラ604に適宜送信するステップに相当する。又、印刷指示属性情報については、上述の図11にて説明した共通設定項目及び拡張設定項目を含むものとする。
【0087】
パケットデータの構造には、データのサイズ、データの内容(印刷指示属性情報、ページ属性情報、汎用ドキュメント情報など)をIDで示した構造体形式のパケットヘッダとパケット実データトで構成される、「パケットヘッダ+パケット実データ」といった構造が想定される。尚、ドキュメント属性情報の送信は全ページに対応する汎用ドキュメントデータのパケット送信が終了した後に行われるものとし、図17にて説明したステップS166に対応するものとする。又、1ページ目の最初のパケットヘッダには、パケット情報開始のIDがセットされる(パケット開始通知)。
【0088】
ここで、ステップS173の処理に対応して、ユーザーが、図14、15を用いて、カラー判定のレベルを指定した場合の処理について説明する。
【0089】
図14はグループプリンタドライバのUIの一例を示すものであり、カラー/モノクロ分散印刷の各種印刷設定を行う為のユーザーインタフェースを示す。
【0090】
カラープリンタ、モノクロプリンタとしてのメンバプリンタには、夫々、「プリンタA」と「プリンタB」が登録されている。
【0091】
ユーザーがカラー判定レベルを独自に設定したい場合は、図14の1401で示すような、カラーモノクロ判定基準ボタンへの指示が入力されることにより、図15に示されるようなカラー・モノクロ判定基準設定画面が表示される。
【0092】
また、1402は、独自のカラー・モノクロ判定基準の設定を有効にするか無効にするかを選択する為のチェックボックスを示し、1402にチェックが挿入されることによって、後述する図15の設定画面を介して設定されたものに基づくカラー・モノクロ判定基準が採用される。また、1402にチェックが挿入されないような場合には、デフォルトのカラー・モノクロ判定基準が本印刷制御システムによって採用される。デフォルトのカラー・モノクロ判定基準としては、例えば、カラーが少しでも含まれるような印刷データはカラー画像形成装置に転送され、カラーデータが含まれず、モノクロデータのみからなるような印刷データはモノクロプリンタに転送されるような形態が想定される。
【0093】
1501のチェックボックスに選択指示がなされると、文字データがカラーであってもモノクロと判定する。なお1501に選択指示がなされた場合には、1505での選択指示が無効となるように禁則処理が行われ、矛盾を防ぐようにユーザーインタフェース表示制御が行われる。
【0094】
1502のチェックボックスに選択指示がなされると、ユーザーがカラーの判定レベルを1504のようなスクロールバーを介して詳細に設定することができる。ここで、1505ではテキストデータのカラー判定のレベルT(%)を設定することができ、1ページ中に含まれるテキストのうち、カラーテキストの占める割合がTを超えた場合にそのページがカラーと判定される。
【0095】
また、1506では、イメージについてのカラー判定レベルI(%)を設定することができ、1ページ中に含まれるカラー画像の割合が、I以上だったらそのページがカラーと判定される。尚、図15の設定画面は印刷データの各頁毎に対して成される処理を指示する為のものであるが、ジョブ単位に対する指示する為の設定画面とすることもできる。
【0096】
次に、図19の説明を行う。図19は上述にて説明した図18のステップS173のページ情報判定処理の詳細を示すフローチャートであり、図14の1402のチェックボックスの指示に応じて図15における設定が有効とされている場合の処理を示す。
【0097】
ステップS201、S203において、図15の画面でユーザーが1501又は1502の何れを選択したかを判断し、S201においてユーザーが1501を選択したと判定された場合には、S202において、1501を選択した場合のページ情報判定処理が実行される。また、S201でユーザーが1501を選択したと判定されない場合には、S203に進み、ユーザーが1502を選択したかが判定され、判定結果が「YES」ならば、S204に進み、1502を選択した場合のページ情報判定処理が実行される。
【0098】
一方、1501及び1502のいずれも選択されていない場合は、S203からそのまま図18のステップS174に進み、通常(デフォルト設定)のカラー・モノクロ判定を行う。
【0099】
以下において、1501又は1502を選択した場合のページ情報判定処理の詳細を説明する。図20及び21は、S202、S203の詳細な処理を示すフローチャートであり、実際には各ページ毎に対応して行われる。
【0100】
まず、図20の説明を行うと、まず、ステップ210においてカラーフラグをリセットする。続いてS211に移行し、ステップS171で読み込まれたデータがテキスト情報であるか否かを判定する。その結果、テキスト情報だと判定された場合にはS215に移行して、それがカラーテキストであるか否かにかかわらずカラーフラグをONにしないようにする。
【0101】
一方、S211においてテキスト情報でないと判定された場合は、ステップS212においてイメージか否かの判定を行い、イメージと判定されればステップS213においてカラーイメージか否かを判定する。もしステップS213でカラーイメージだと判定されれば、ステップS214においてカラーフラグをONにする。一方、カラーイメージと判定されない場合には、S215に移行する。
【0102】
ステップS215では、カラーフラグがONであるか否かを判定する。もしカラーフラグがONだったら、ステップS216において図16(a)の論理ページのカラー属性をモノクロと記録し、カラーフラグがONでなければS217において図16(a)の論理ページのカラー属性をカラーと記録する。そして、ステップS174へ移行する。
【0103】
次に、図21のフローチャートを用いて図15の1502が選択された場合についての処理を説明する。
【0104】
先ず、ステップS2201では、パラメータT、Iそれぞれについて、図15のテキストのカラー判定レベル1505と、イメージのカラー判定レベル1506において設定されたテキストのカラー判定レベル、およびイメージのカラー判定レベルを読み込む。
【0105】
そして、ステップS2202では、ステップS171で読み込まれた情報がテキスト情報か否かを判定し、テキスト情報だと判断されればステップS2204においてカラーテキストか否かが判定される。カラーだと判定された場合には、ステップS2205で、カラーFlagをONにし、ステップS2206において現時点でそのページに含まれるテキストのうちカラーテキストの占める割合Yを算出する。
【0106】
一方、ステップS171で読み込まれたデータがステップS2203において、テキスト情報ではないと判定された場合には、S2203において当該データがイメージ情報であるか否かが判定される。その結果、当該データがイメージ情報と判定された場合にはステップS2207において当該イメージがカラーであるかが判定される。ここでカラーだと判定された場合には、ステップS2208で、カラーFlagをONにし、次のステップS2209において、その時点で読み込まれているページ中のイメージ領域のうちカラー領域の占める割合Xを算出する。ステップS2205、S2208を含む処理で生成された属性を示す情報は、ユーザのカスタマイズが反映されていないカラー属性情報に利用される。詳細については第2の実施形態にて説明する。
【0107】
そして、ステップS2210でページの終わりと判断されない限り、16(a)にはモノクロと記録する。そして、ステップS2210でページの最後だと判断されたら、ステップS2211に進み、次のステップS2211においてX、Yが、ユーザーの設定したカラー判定基準I及びTよりも大きければ、ステップS2212において16(a)のカラー属性をカラーを記録し、ステップS174へ移る。
【0108】
(ジョブ制御プリントサービス622の処理手順例)
次に、図17及び図18及び図19〜21のフローチャートに示される処理を受けての、図6及び図7に示されるジョブ制御プリントサービス622の処理について図22のフローチャートを用いて説明する。尚、フローチャートにおける各ステップの実際の処理は、図2にて説明したCPU200がROM201、HD205等の不揮発性記憶手段に記憶された印刷制御プログラムを読出し実行することに応じて実現される。
【0109】
図22は、前記ステップS164(S176)及びS166より受信したパケットデータを基に汎用印刷ファイルを構築する処理を示すものであり、図6及び図7のジョブ制御プリントサービス622(汎用印刷ファイル構築モジュール715)の処理に相当する。
【0110】
まず、ステップS181では、前記パケット開始通知の受信から最終パケットまでの受信処理が行われたか否かの判定を行う。言い換えれば、ステップS181は上述した処理終了通知IDが含まれるパケットの受信が行われたか否かの判定を行うステップである。
【0111】
そして、ステップS182では、受信したパケットデータの属性IDを認識することによりID毎のデータの振り分けを行う。すなわち、属性ID別に図8に示す汎用印刷ファイルの該当する部分に情報を組み込み、汎用ドキュメントデータを構築する。
【0112】
具体的には、ステップS182において属性IDに基づき印刷指示情報であると判定された場合には、ステップS183へ移行し、図8の印刷体裁指示部804へ情報の書き込み処理を行う。ここで印刷体裁指示部804に組み込む属性としては、グループプリンタUI上でセットされたステイプル、パンチや、面付け情報といったドキュメントの印刷指示属性が含まれる。尚、面付け情報とは、ドライバUI上で2−UPと指定された場合には、パケットデータより受信した1ページ目と2ページ目を印刷実行時に1ページとして扱うように、印刷指示書に記述する処理である。
【0113】
また、ステップS182においてページ情報であると判定された場合には、ステップS184へ移行し、ページ情報部802へ情報の書き込み処理を行う。ここで各ページに関する属性の具体例としては、ドキュメントのカラー情報の属性、ページ数、各ページのサイズなどの属性が含まれる。また、前述の面付け情報の指定がなされていた場合には、面付け後のページ属性をセットする。即ち、2Upと指定されいた場合には、パケットデータより受信した1ページ目と2ページ目のカラー情報の属性に対してORを取り、どちらかのページにカラー属性が存在した場合には、そのページ属性はカラーとなり、どちらのページにもカラーの情報がないケースでは、ページ属性は白黒(モノクロ)となる。
【0114】
図23は、本実施形態による印刷指示書への記述例である。
【0115】
さらに、ステップS182においてドキュメントファイルと判定された場合には、ステップS185へ処理を移行し、図8の汎用形式のドキュメントデータ部8bの領域に情報の書き込みを行う。ここでは、属性IDが汎用ドキュメントデータであると判定された場合の処理に対応し、汎用ドキュメントの構築が行われる。すなわち、パケット情報として断片的に送信されてくる汎用ドキュメントをつなぎ合わせて図8におけるドキュメントデータ部8bが構築される。
【0116】
上記ステップS183からS185までのいずれかの処理は、受信パケットの1つについて実行され、当該パケットについて処理が終了すれば再度ステップS181に戻り、上記と同様の処理をステップS181で処理終了通知IDを含むパケットが受信されたと判定されるまで繰り返す。
【0117】
そしてステップS181において処理終了通知IDを含むパケットが受信されたと判定されれば、ステップS186へ移行する。ステップS186では、図18のステップS175で評価されたドキュメント属性に応じてパケット化され送信されてきたドキュメント属性を最終的に印刷指示部8aのドキュメント属性803に設定する。
【0118】
ステップS187では、汎用印刷ファイルを構築する。前述のステップS183、S184、S185にて生成された印刷指示書及び汎用ドキュメントファイルなどから構成される図8に示されるような形態の汎用印刷ファイルを構築する。
【0119】
その後、当該汎用印刷ファイルは前述の印刷ジョブ制御システム700内のプリンティング処理内でジョブの制御に利用され、例えばカラーモノクロ分散印刷が行われる際に、ページ属性部に設定されたカラー属性情報を基に、条件の合致するメンバプリンタドライバにデスプーラ701を介して印刷処理の指示がなされ、所定のプリンタにおけるページ記述言語の生成が行われる。
【0120】
これまで説明してきた図16及び図17のフローチャートが実現されることにより、グループプリンタドライバから汎用印刷データと、ドキュメント属性部を除く印刷指示部とをジョブ制御プリントサービス622が受信して、汎用印刷ファイルを一旦構築した後に、再度メモリにドキュメントデータをページ単位で展開して属性情報を解析する処理を省略することができるので、印刷システムのパフォーマンスの向上が図れる。
【0121】
又、一旦SVGやPDFなどを採用した中間形式のデータをジョブ制御プリントサービス622側でパケットで受信し、該パケットを受信する毎に属性の解析を行うような形態も想定されるが、一旦中間形式に変換されたパケット毎の属性よりページ属性判定を行うような形態では、中間形式のデータがSVGやPDFやXMLの場合にはパースをする必要があり、印刷システムのパフォーマンス低下を招く。これに対して本実施の形態では、アプリケーションからOSを介して生成される描画コマンドやオブジェクトの属性情報に基づいて、各パケットの属性及びページ属性及びドキュメント属性を判定し、その後に汎用印刷ファイルの構築を行うので、システム全体のパフォーマンスを大幅に向上させることが可能となる。
【0122】
(カラーモノクロ分散印刷処理の手順例)
図24は、カラーモノクロ分散印刷処理におけるジョブ制御プリントサービス622における処理手順を示すフローチャートである。実際のプリンタの選択は各種属性情報に応じて適宜選択されるが、ここでは、特にカラー画像形成装置とモノクロ画像形成装置との振り分けに関して詳しく説明する。
【0123】
まず、ステップS2401では、先に生成された図8の印刷指示部8a(ページ情報部、ドキュメント属性部、印刷体裁指示部等)を取得する。そして、ステップS2402において、各論理ページ毎のページの属性(図16(a)参照)を認識する。
【0124】
そして、ステップS2403では、認識されたページの属性に基づき、ページ毎のカラー属性を判定し、判定結果に応じてメンバプリンタドライバ807を選択して、ページ毎にカラー画像形成装置に出力するよう指示するか、モノクロ画像形成装置に出力するよう指示するかを決定する。
【0125】
そして、ステップS2404では、ページ毎に決定されたメンバプリンタドライバ807にデスプーラ701を介して印刷ジョブを発行する。尚、デスプーラ701の印刷ジョブの発行については、図7と関連して説明したものと同様の仕組みとするので、ここでは詳細な説明は省略する。
【0126】
そして、ステップS2405で、全ページに渡って、対応するメンバプリンタドライバに対するジョブの発行処理が終了したか否かを判定し、終了していなければステップS2401からステップS2404の処理を繰り返し実行する。一方、ステップS205において、全ページ分の処理が終了したと判定されれば、待機或いは他の処理の実行にタスクを移行させる。
【0127】
次に、印刷体裁指定部804に2−UPの指示が記録されており、用紙1枚に2ページ分のドキュメントデータを縮小レイアウトするような場合について更に説明する。縮小レイアウト後の物理ページに含まれる複数の論理ページ内に「カラー」のカラー属性情報が1つでも含まれれば、カラー画像形成装置に分散する。即ち、ステップS2402の処理はグループプリンタドライバ603から受け取った1ページ分のドキュメントデータのカラー属性の判定を行う機能に限定されるものではなく、複数ページ(例えば、2ページ/4ページ)のドキュメントデータを縮小レイアウトした物理1ページ分のカラー属性を判定可能な機能も備えることを意味する。このように本実施形態によれば、縮小レイアウト印刷にも対応して、ユーザの希望を反映させてカラー/モノクロ分散印刷が実現される。
【0128】
選択されたプリントデバイスに対して汎用印刷ファイルから対応プリンタドライバを介して生成されたプリントデータ(PDL)が出力される(図6及び図7の破線参照)。
【0129】
(第2の実施形態)
第1の実施形態においては、図22のS187で生成された汎用印刷ファイルを図24のフローチャートに従って印刷出力させるよう説明してきたが、第2の実施形態では、図22のフローチャートのS187で生成された汎用印刷ファイルをハードディスク等の不揮発性記憶手段に保存し、再度、読み込み印刷出力させる場合について説明する。
【0130】
図25(a)は、第1の実施形態における図16(a)を更に発展させた印刷指示属性情報の記憶状態を示す。また、図25(b)は、図16(b)を更に発展させたドキュメント属性の評価結果の記憶状態を示す。尚、第1の実施形態の図23も図25に対応する情報が含まれることとなるが詳細な説明は省略する。
【0131】
2501は、デフォルトのページ属性判定に基づくカラー属性を示すものであり、図18のようにユーザのカスタム設定を利用しないデフォルトの通常ページ属性判定に従うページ属性情報(カラー属性情報)が格納されている。これは、先に説明した図21のステップS2205、S2208において設定されたカラーFlagのON或いはOFFに対応する。また、2502は図15の設定画面を介して設定されたユーザーのカスタム設定を反映させたカラー属性を示す。図25には、カラーの画像やテキストの描画データが含まれる場合にはカラー属性を「カラー」とするようなデフォルトのカラー属性判定結果と、図15のような設定画面を介して設定された判定基準に基づくカラー属性判定結果とが含まれている。
【0132】
これは図18のステップS173の処理を、単純に描画命令のカラー情報の有無に基づく判定処理(図19から図21に基づかない)と、図19から図21に基づく処理とをそれぞれ実行することによって実現される。
【0133】
さらに、図18のステップS176におけるパケット情報の送信の処理では、ページ属性情報(カラー属性情報)はデフォルトのカラー属性判定結果とカスタム設定を反映させたカラー属性判定結果との2種類のカラー属性情報がパケット送信される。
【0134】
図26は、図25のような属性情報を有する汎用印刷ファイルを所定の記憶部から読出し再印刷させる際、或いは、図25のような属性情報を有する汎用印刷ファイルを生成した際の印刷制御処理を示す。
【0135】
まず、ステップS2601では、第1カラー属性を利用するか否かの判定が行われる。これは例えば、印刷指示時のユーザーインタフェイス(例えば、図14)に第1カラー属性を利用した分散印刷(デフォルトの属性判定方式を採用)を行うか、或いは、第2カラー属性を利用した分散印刷(カスタムの属性判定方式を採用)を行うかを選択させるようなチェックボックスを設けることにより、該設定を参照することにより判断することができる。例えば、図14の1402にチェックが施されていなければ第1カラー属性を利用し、チェックが施されていれば第2カラー属性を利用するようにすることが実現できる。
【0136】
そして、ステップS2601で「YES」と判断されれば、2602で第1カラー属性に基づく分散印刷処理を実行(図24)し、ステップS2603で汎用印刷ファイルのデフォルト設定を第1カラー属性を利用するようにする。
【0137】
一方、ステップS2601で「NO」と判断されれば、ステップS2604で第2カラー属性に基づく分散印刷処理を実行(図24)する。そして、ステップS2605で汎用印刷ファイルのデフォルト設定を第2カラー属性を利用するように設定する。
【0138】
ステップS2603、2605の処理に応じて汎用印刷ファイルの設定が変更されると、ユーザーの指示に応じて変更された設定が汎用ドキュメントデータと共に保存される。そして、再び汎用印刷ファイルに基づく再印刷が指示される際には、ステップS2603、2605の設定が反映されることとなる。
【0139】
このように図26のような仕組みを設けることにより、所定の印刷情報(設定情報を含む画像情報や文書情報)を再印刷させるような場合にも、適宜ユーザの都合、要求又は用途に見合った分散印刷を実行させることができる。例えば、ユーザが自分で閲覧する為に印刷出力させるような場合にはカスタム設定を利用して印刷処理を行い、プレゼンテーションに利用するような場合には本来のカラー出力を反映させること、即ち少しでもカラーがページ内に含まれれば忠実にカラー出力を行うように制御することができる。
【0140】
(他の実施形態)
尚、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、複数の機能を有する一つの機器からなる装置に適用してもよい。
【0141】
又、前述のように、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。又、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0142】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0143】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを含むプログラムコードが格納されることになる。
【発明の効果】
以上説明したように、本発明によれば、カラー・モノクロ分散印刷時に、カラー判定レベルを明示的に指示することが可能なユーザーインタフェース上において、容易に設定することが可能となった。また、判定基準は、あらかじめ用意された選択肢や、スクロールバーなどにより設定できるようにすることで、ユーザーの嗜好に合わせた、また、印刷環境にあった効果的な印刷処理をより簡易な方法で提供できることが可能となった。
【図面の簡単な説明】
【図1】本実施形態の情報処理システムの構成を説明するブロック図である。
【図2】本実施形態の情報処理装置の構成を説明するブロック図である。
【図3】図2に示したRAM202のメモリマップの一例を示す図である。
【図4】図2に示したFD204のメモリマップの一例を示す図である。
【図5】図2に示したFDドライブ203に対して挿入されるFD204との関係を示す図である。
【図6】本実施形態の情報処理装置のプリント制御モジュール構成を説明するブロック図である。
【図7】プリントサーバで管理されるジョブ情報のデータ構造の一例を示す図である。
【図8】汎用印刷ファイルの構造の一例を示す図である。
【図9】グループメンバプリンタドライバのUI表示の基本フローチャートである。
【図10】グループメンバプリンタドライバのUIでの設定可能項目を示す図である。
【図11】グループメンバプリンタドライバのUIでの設定項目の一例を示す図である。
【図12】グループメンバプリンタドライバのUIでの表示例を示す図である。
【図13】グループメンバプリンタドライバのUIでの表示例を示す図である。
【図14】グループメンバプリンタドライバのUIでの表示例を示す図である。
【図15】グループメンバプリンタドライバで、カラー・モノクロ判定基準を設定するためのUIの表示例を示す図である。
【図16】ページ属性情報及びドキュメント属性情報の記憶状態を示す図である。
【図17】グループプリンタドライバの処理手順例を示すフローチャートである。
【図18】図17のステップS164の処理手順例を詳細に示すフローチャートである。
【図19】図18のステップS173の処理手順例を詳細に示すフローチャートである。
【図20】図20のステップS202の処理手順例を詳細に示すフローチャートである。
【図21】図20のステップS204の処理手順例を詳細に示すフローチャートである。
【図22】ジョブ制御プリントサービス622による汎用印刷ファイルの生成処理を示すフローチャートである。
【図23】印刷指示書への記述例を示す図である。
【図24】分散印刷処理におけるジョブ制御プリントサービス622の処理手順を示すフローチャートである。
【図25】ページ属性情報及びドキュメント属性情報の記憶状態を示す図である。
【図26】汎用印刷ファイルに基づく印刷処理の際の、ジョブ制御プリントサービス622による印刷制御処理のフローチャートである。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a print data processing apparatus and a print data processing method for performing print processing in response to a drawing command from an application, a computer-executable program for performing print data processing, and storage storing a computer-readable program. It is about media.
[0002]
[Prior art]
2. Description of the Related Art In recent years, network devices have been generally used, and many personal computers (hereinafter, PCs) and printers have been connected on networks. When printing in such a network environment, for a document having a large number of pages or a document having a large number of copies, the print job is spooled once in order to reduce the printing time, and is sent to a plurality of printers for each page or each copy. There is known a system (distributed printing system) for outputting in a distributed manner.
[0003]
Further, in such a network environment, in order to reduce the printing cost and printing time for one document in which color pages and monochrome pages are mixed, a color page is converted to a color printer, and a monochrome page is converted to a monochrome printer. There is known a system for distributing and outputting to a printer (color / monochrome distributed printing system).
[0004]
For example, Japanese Patent Application Laid-Open No. 2002-086852 discloses a mechanism of color / monochrome distributed printing. Further, a threshold value of a color page ratio is set according to a user's instruction, and it is determined that the threshold value is exceeded. In such a case, a mechanism for transmitting all pages to a color printer is disclosed.
[0005]
[Problems to be solved by the invention]
However, according to the conventional color / monochrome distributed printing system, there is room for further improvement. For example, a page containing very little color is determined as a color image, and in an environment where there are few color printers, there is a problem that the load on the color printer increases when printing a large amount of data. . Further, there is a disadvantage that even if the user determines that monochrome printing is sufficient, color printing is automatically performed only when a part of the data includes a color image or the like. As described above, the user can only rely on the system to determine print data and perform distributed processing, and a mechanism that can realize color / monochrome distributed printing in accordance with the user's request is desired.
[0006]
[Means for Solving the Problems]
The present invention for solving the above-mentioned problems specifically provides a color / monochrome distribution in a printing system for printing print data including color information and monochrome information using a plurality of printers including a color printer and a monochrome printer. A print control method, comprising: a setting receiving step for receiving a setting of a criterion for classifying the print data into either color information or monochrome information from a user of the printing system; A print control step of executing color / monochrome distributed printing based on the setting of the determination criteria.
[0007]
Here, the setting accepting step further includes a display control step of displaying a setting screen for the user to set the determination criterion, wherein the criterion is to set the print data for each page printed by the printer. It may be a criterion for classifying the print data into either color information or monochrome information, or using at least one of text data or image data included in the print data to convert the print data into color information or monochrome information. A criterion for classification into any of them may be used.
[0008]
Further, the setting receiving step may receive a monochrome setting for classifying all text data included in the print data as monochrome information, and further, the print data may be received based on the determination criteria received in the setting receiving step. An attribute setting step for setting the color attribute to either color or monochrome can be further provided. In the attribute setting step, the color attribute may be set based on a ratio of color information in the print data and the determination criterion. Here, the print control step may execute color / monochrome distributed printing of the print data based on the color attribute set in the attribute setting step.
[0009]
In another aspect of the present invention, the printing system includes a storage unit for storing the color attribute of the print data set in the attribute setting step, and the print control step includes: May perform color / monochrome distributed printing of the print data based on the color attributes stored in the printer. Further, the storage unit further stores a default color attribute for the print data, and further includes a selection step for setting one of the color attribute set in the attribute setting step and the default color attribute. And the print control step can issue a print instruction for the print data based on the color attribute selected in the selection step.
[0010]
The present invention for solving the above problems may be provided as a color / monochrome distributed print control program for causing a computer to execute a color / monochrome distributed print control method, or a computer-readable information storage medium storing the program. Good. Further, it goes without saying that the present invention can be provided as a color / monochrome distributed printing control apparatus for implementing the above method.
[0011]
BEST MODE FOR CARRYING OUT THE INVENTION
[First Embodiment]
Hereinafter, an embodiment suitable for applying the present invention will be described.
[0012]
<Configuration Example of Information Processing System of Present Embodiment>
FIG. 1 is a block diagram illustrating a configuration of an information processing system according to an embodiment to which the present invention can be applied. It is assumed that one or a plurality of client computers in this system are connected.
[0013]
In the figure,
[0014]
[0015]
As the hardware configuration, both the
[0016]
The
[0017]
[0018]
<Example of hardware configuration of information processing device of present embodiment>
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus used as the
[0019]
In FIG. 2, a
[0020]
[0021]
[0022]
[0023]
[0024]
A
[0025]
It should be noted that the configuration of the information processing apparatus is an example, and is not limited to the configuration example of FIG. For example, the storage destination of data and programs can be changed in ROM, RAM, HD, etc. according to the characteristics.
[0026]
FIG. 3 is a diagram illustrating an example of a memory map of the
[0027]
In this embodiment, an example is shown in which the network printer control program and related data are directly loaded from the
[0028]
The network printer control program may be simply referred to as a print control program. The print control program includes, in the client, a program for performing control for giving an instruction to change a print destination of a print job and for giving an instruction to change a print order. On the other hand, the print server includes a program for controlling the order of print jobs, and for notifying the end of printing of a print job, a print destination change request, and the like. In the print control program of the present embodiment that performs such control, the module installed on the client and the module installed on the print server may be separately separated, or one print control program may be executed. Depending on the environment, it may function as a client or may function as a print server. Alternatively, a configuration in which a module having a function for a client and a module functioning as a print server are installed together in one computer, and pseudo-parallel operations can be performed simultaneously or time-divisionally.
[0029]
[0030]
FIG. 4 is a diagram illustrating an example of a memory map of the
[0031]
FIG. 5 is a diagram showing the relationship between the FD drive 203 shown in FIG. 2 and the
[0032]
<Software Configuration Example in Information Processing System of Present Embodiment>
Here, the technical meaning of the terms in the present embodiment will be described. A virtual printer that virtually bundles a plurality of printers as one printer is called a group printer, and a bundled printer is called a member printer. Printer drivers corresponding to the member printers are referred to as a group printer driver and a member printer driver, respectively.
[0033]
When the group printer (group printer driver) and the member printer (member printer driver) are more specifically defined, an intermediate format file (general-purpose print file) is generated based on a drawing command generated from an application via the OS. A virtual driver that generates data is called a group printer driver. Then, the job
[0034]
On the other hand, in the present embodiment, a drawing command (generally called DDI or GDI) output through an OS such as Windows (registered trademark) in response to a print instruction in an application, or an EMF (Enhanced Metafile Format: A printer driver that interprets an extended metafile), generates a page description language, and outputs it to a device is called a normal printer driver, and the device at this time is called a normal device, and is distinguished from a group printer or a member printer. It is needless to say that the OS is not limited to Windows, but can be applied to any OS provided with a drawing command. Also, a combination of a printer driver and a printer output port may be called a printer to distinguish it from a printer which is a device. For example, specifying a combination of a logical port (job control port monitor 621) and a group printer driver in FIG. 7 described below is referred to as specifying a group printer.
[0035]
In the proxy printing process, each printer that is a proxy candidate is called a member printer, and the output destination printer used for printing is the one with the highest priority in the member printer list that stores the member printers. The priority order is such that a member printer driver name list is displayed on a driver user interface (UI), and the display order can be changed by a user's instruction.
[0036]
FIG. 6 shows how a print job including a drawing command issued from a general application such as Microsoft Word (registered trademark) is processed in the print job control system in the client server model of the present system. FIG.
[0037]
Normally, when a print instruction is issued, the application program generates a series of drawing commands via the OS, converts the generated drawing commands into a predetermined format through a printer driver, and then converts the commands into a Windows spooler. Passed to. The Windows spooler takes the procedure of passing the print job data to the port monitor specified and designated by the user via the user interface and transmitting the print job data to the print device. In the present embodiment, the user designates a
[0038]
The
[0039]
The job control port monitor 621 does not transmit general-purpose print document data, which is print job data, to the
[0040]
A
[0041]
The print job control system server 630 (hereinafter abbreviated as “job control server”) centrally controls (schedules) the timing at which the job
[0042]
The
[0043]
<Operation Example in Information Processing System of Present Embodiment>
Next, printing from the
[0044]
The job
[0045]
FIG. 6 illustrates an example in which the job
[0046]
The job
[0047]
On the other hand, when the application software creates a general-purpose print file and the application software directly submits the general-purpose print file as a print job, a general application is defined as a method of passing information to the
[0048]
(Configuration example of general-purpose print file)
FIG. 8 is a diagram illustrating an example of the configuration of a general-purpose print file. The general-purpose print file used in the present embodiment includes a
[0049]
The converted data (general-purpose print data) after the conversion of the application data is assumed to be data in a format that can be used as print resource data and that can be edited again by a word processor application or the like. Among them, for example, the XML format, the EMF format provided by the Windows system, the PDF format by Adobe Systems, the SVG format, and the like can be adopted as the general-purpose print data.
[0050]
The
[0051]
The
[0052]
The print
[0053]
The number of
[0054]
In the job
[0055]
<Example of relationship between Windows print system and print job control system>
Next, referring to FIG. 7, the relationship between print jobs and the processing outline in the print system and print job control system provided by Windows will be described in further detail. Here, the same functions as those in FIG. 6 are denoted by the same reference numerals, and the functions will not be described in detail.
[0056]
In FIG. 7, the print
[0057]
The
[0058]
Next, processing when the print
[0059]
When the print
[0060]
At this time, the
[0061]
When the
[0062]
The job
[0063]
(Example of user interface)
Next, UI control of a printer driver for a print
[0064]
FIG. 9 is a flowchart illustrating a UI control flow of the group printer driver according to the present embodiment.
[0065]
Upon receiving a UI display request from the
[0066]
Step S94 is a step of associating the functions of the output printer driver with the items defined as the group printer driver UI in advance, and associating the basic setting items and the extended setting items. At this time, if there is an applicable item, the item is displayed on the group printer driver UI, and if not, the item is grayed out and the items displayed on the UI are set. In step S95, the correspondence between the basic setting items and the functions of the output printer driver is established. If there is any corresponding item, the item is displayed on the group printer driver UI. If not, the item is grayed out and displayed on the UI. Set items. Further, gray-out display is performed for the extension setting items.
[0067]
FIG. 10 shows the correspondence between the configuration of the member printer of the present embodiment and the settable items, and FIG. 11 shows the correspondence between the common setting items / extended setting items and the respective setting items.
[0068]
In this embodiment, the common setting items are classified and defined as items existing in the common setting area, and the extended setting items are classified and defined as items existing in the extended setting area. Depending on the OS to be used, the classification of the setting items may be different or the setting items may be changed, but it goes without saying that the UI control flow of the present embodiment is effective.
[0069]
Step S96 is a step of judging whether or not to set an item that could not be set in steps S94 and S95. If the user selects more detailed settings, the process proceeds to step S97. Step S97 is a step for opening the UI of the output printer driver to set the items having no setting items on the group printer driver UI in detail.
[0070]
Note that when the output printer driver UI is opened, items that can be set in the group printer driver can also be set. If the same function is set in both, the processing will be duplicated. And display.
[0071]
(1) When the output printer is a “driver capable of function control”, items that conflict with the setting items on the group printer driver UI are displayed in grayed out or grayed out so that the settings cannot be made on the output printer driver UI. UI control is performed as non-display.
[0072]
(2) When the output printer is a “driver whose function cannot be controlled”, common setting items are displayed on the UI with the settings set by the output printer driver. If the item is changed on the output printer driver UI after the UI is displayed, the information of the setting item set in the group printer driver is overwritten to the common setting item of the corresponding output printer driver by closing the driver UI, It does not allow setting changes on the output printer UI. Further, when performing the overwriting process, it is also possible to display a warning indicating that the setting change on the output printer UI is invalid.
[0073]
When the setting of all items is completed, the process proceeds to step S98. 12 and 13 show specific examples of the gray-out control and the non-display control of the UI. Dialog boxes for double-sided printing and bookbinding printing of setting items (1201 and 1301 surrounded by dotted lines) are portions where the UI control is performed.
[0074]
<Example of processing procedure in information processing system of present embodiment>
(Example of processing procedure of group printer driver 603)
Next, a processing procedure of the printing system of the present embodiment using the above-described group printer driver will be described with reference to the flowchart of FIG. 17 based on the description described in FIGS. FIG. 17 is a flowchart showing the processing of the
[0075]
Step S161 corresponds to print information transmission start processing called from the
[0076]
Next, step S162 is a step of determining whether or not the drawing command sent from the
[0077]
Step S163 corresponds to the process called in the page information transmission start process. More specifically, when drawing information (for example, a DDI command) is transmitted from the
[0078]
In step S164, generation of a print instruction written in the
[0079]
If "Yes" is determined in step S162, the process proceeds to step S166. In step S166, packetization and packet transmission of the document attribute information determined in consideration of the attribute information of each page determined in step S164. The process is executed, that is, packet data (packet end notification) in which the document attribute generated and stored in step S175 and the process end notification ID are set is transmitted to the
[0080]
Next, FIG. 18 will be described. FIG. 18 is a flowchart showing details of step S164 in FIG. 17 described above. Step S171 corresponds to a process of reading a drawing command sent from the
[0081]
Step S172 is a step of storing print instruction attribute information such as staples and punches specified in page units. FIG. 16A shows the state of storage of the print instruction attribute information in step S172.
[0082]
In step S173, the page attribute is determined for the information obtained in step S172. The attribute information of the drawing command and the object (GDI command or DDI command in Windows), specifically, the color information An example is a step of determining the presence or absence of color information based on text color information, bitmap color information, the number of planes and pixels of an image, pen color and brush style information used for object drawing.
[0083]
Step S174 is a step of constructing general-purpose document data from image data such as JPEG and bitmap data, a drawing object, and a drawing command sent from the
[0084]
Step S175 is a step of evaluating the document attribute based on the information in FIG. 16A. If there is any page attribute corresponding to the document attribute such as color, staple, or punch, an internal flag is set. Is set to ON and the appearance of the attribute is stored. By monitoring each page attribute at any time, the attributes of the document are evaluated in real time. The information of FIGS. 16A and 16B described above is used later when the general-purpose
[0085]
In step S173, the user can change the color / monochrome determination reference level when performing color determination based on the color attribute in the page. Details will be described later.
[0086]
Step S176 corresponds to a step of appropriately transmitting the print instruction attribute information, page attribute information, and general-purpose document data obtained in the above step to the
[0087]
The packet data structure includes a packet header in the form of a structure in which the data size and data contents (print instruction attribute information, page attribute information, general-purpose document information, etc.) are indicated by ID, and a packet actual data. A structure such as “packet header + packet actual data” is assumed. The transmission of the document attribute information is performed after the packet transmission of the general-purpose document data corresponding to all pages is completed, and corresponds to step S166 described with reference to FIG. In the first packet header of the first page, a packet information start ID is set (packet start notification).
[0088]
Here, the processing in the case where the user has designated the color determination level in correspondence with the processing in step S173 will be described with reference to FIGS.
[0089]
FIG. 14 illustrates an example of a UI of the group printer driver, and illustrates a user interface for performing various print settings of color / monochrome distributed printing.
[0090]
“Printer A” and “Printer B” are registered in the member printers as a color printer and a monochrome printer, respectively.
[0091]
When the user wants to set the color judgment level independently, the user inputs an instruction to the color / monochrome judgment reference button as shown by 1401 in FIG. 14 to set the color / monochrome judgment reference as shown in FIG. The screen is displayed.
[0092]
[0093]
When a selection instruction is given to the
[0094]
When a selection instruction is given to the
[0095]
In
[0096]
Next, FIG. 19 will be described. FIG. 19 is a flowchart showing details of the page information determination processing in step S173 of FIG. 18 described above, and shows a case where the setting in FIG. 15 is enabled according to the instruction of the
[0097]
In steps S201 and S203, it is determined whether the user has selected 1501 or 1502 on the screen shown in FIG. 15. If it is determined in step S201 that the user has selected 1501, the user selects 1501 in step S202. Is performed. If it is not determined that the user has selected 1501 in S201, the process proceeds to S203, and it is determined whether the user has selected 1502. If the determination result is “YES”, the process proceeds to S204 and the user selects 1502 Is performed.
[0098]
On the other hand, if neither 1501 nor 1502 has been selected, the process proceeds directly from step S203 to step S174 in FIG. 18, and a normal (default setting) color / monochrome determination is performed.
[0099]
Hereinafter, the details of the page information determination processing when 1501 or 1502 is selected will be described. FIGS. 20 and 21 are flowcharts showing the detailed processing of S202 and S203, which are actually performed for each page.
[0100]
First, referring to FIG. 20, first, in step 210, the color flag is reset. Subsequently, the flow shifts to S211 to determine whether or not the data read in step S171 is text information. As a result, if it is determined that the information is text information, the process proceeds to S215, and the color flag is not turned on regardless of whether the information is color text.
[0101]
On the other hand, if it is determined in step S211 that the image is not text information, it is determined in step S212 whether or not the image is an image. If it is determined that the image is an image, it is determined in step S213 whether or not the image is a color image. If it is determined in step S213 that the image is a color image, the color flag is turned on in step S214. On the other hand, if it is not determined that the image is a color image, the process proceeds to S215.
[0102]
In step S215, it is determined whether the color flag is ON. If the color flag is ON, the color attribute of the logical page of FIG. 16A is recorded as monochrome in step S216, and if the color flag is not ON, the color attribute of the logical page of FIG. And record. Then, control goes to a step S174.
[0103]
Next, the processing when 1502 in FIG. 15 is selected will be described using the flowchart in FIG.
[0104]
First, in step S2201, for each of the parameters T and I, the text
[0105]
In step S2202, it is determined whether or not the information read in step S171 is text information. If it is determined that the information is text information, it is determined in step S2204 whether or not the information is color text. If it is determined that the page is color, the color flag is turned on in step S2205, and the ratio Y occupied by the color text in the text currently included in the page is calculated in step S2206.
[0106]
On the other hand, if it is determined in step S2203 that the data read in step S171 is not text information, it is determined in step S2203 whether the data is image information. As a result, if the data is determined to be image information, it is determined in step S2207 whether the image is color. If it is determined that the image is color, the color flag is turned on in step S2208, and in the next step S2209, the ratio X of the image area in the currently read page in the page is calculated. I do. Information indicating the attribute generated in the processing including steps S2205 and S2208 is used for color attribute information in which user customization is not reflected. Details will be described in a second embodiment.
[0107]
Unless the end of the page is determined in step S2210, monochrome is recorded at 16 (a). If it is determined in step S2210 that the page is the end of the page, the process advances to step S2211, and if X and Y are larger than the color determination criteria I and T set by the user in the next step S2211, 16 (a) is set in step S2212. The color attribute of ()) is recorded as color, and the flow advances to step S174.
[0108]
(Example of processing procedure of job control print service 622)
Next, the processing of the job
[0109]
FIG. 22 shows a process for constructing a general-purpose print file based on the packet data received from steps S164 (S176) and S166. The job control print service 622 (general-purpose print file construction module) shown in FIGS. 715).
[0110]
First, in step S181, it is determined whether or not reception processing from the reception of the packet start notification to the last packet has been performed. In other words, step S181 is a step of determining whether or not a packet including the above-described processing end notification ID has been received.
[0111]
Then, in step S182, the data is sorted for each ID by recognizing the attribute ID of the received packet data. That is, information is incorporated into a corresponding portion of the general-purpose print file shown in FIG. 8 for each attribute ID, and general-purpose document data is constructed.
[0112]
Specifically, if it is determined in step S182 that the information is the print instruction information based on the attribute ID, the process proceeds to step S183, and the information is written to the print
[0113]
If it is determined in step S182 that the page information is page information, the process proceeds to step S184, and information is written to the
[0114]
FIG. 23 is a description example of a print instruction according to the present embodiment.
[0115]
If it is determined in step S182 that the file is a document file, the process proceeds to step S185 to write information in the area of the general-purpose
[0116]
Any of the processes from step S183 to S185 is executed for one of the received packets. When the process for the packet is completed, the process returns to step S181 again, and the same process as described above is executed in step S181. Repeat until it is determined that the containing packet has been received.
[0117]
If it is determined in step S181 that the packet including the processing end notification ID has been received, the process proceeds to step S186. In step S186, the document attributes packetized and transmitted according to the document attributes evaluated in step S175 of FIG. 18 are finally set in the document attributes 803 of the
[0118]
In step S187, a general-purpose print file is constructed. A general-purpose print file having the form as shown in FIG. 8 including the print instruction and the general-purpose document file generated in steps S183, S184, and S185 is constructed.
[0119]
Thereafter, the general-purpose print file is used for job control in the printing processing in the print
[0120]
By realizing the flowcharts of FIGS. 16 and 17 described above, the job
[0121]
It is also conceivable that the job
[0122]
(Example of color / monochrome distributed printing process)
FIG. 24 is a flowchart illustrating a processing procedure in the job
[0123]
First, in step S2401, the
[0124]
In step S2403, the color attribute of each page is determined based on the attribute of the recognized page, a
[0125]
In step S2404, a print job is issued via the
[0126]
In step S2405, it is determined whether the process of issuing a job to the corresponding member printer driver has been completed over all pages, and if not completed, the processes from step S2401 to step S2404 are repeatedly executed. On the other hand, if it is determined in step S205 that processing for all pages has been completed, the task is shifted to standby or execution of other processing.
[0127]
Next, a case where a 2-UP instruction is recorded in the print
[0128]
Print data (PDL) generated from the general-purpose print file via the corresponding printer driver is output to the selected print device (see broken lines in FIGS. 6 and 7).
[0129]
(Second embodiment)
In the first embodiment, the general-purpose print file generated in step S187 in FIG. 22 is described as being printed according to the flowchart in FIG. 24. However, in the second embodiment, the general-purpose print file is generated in step S187 in the flowchart in FIG. A case in which the general-purpose print file is stored in a non-volatile storage unit such as a hard disk and read and printed again will be described.
[0130]
FIG. 25A shows a storage state of print instruction attribute information obtained by further developing FIG. 16A in the first embodiment. FIG. 25B shows a storage state of the evaluation result of the document attribute obtained by further developing FIG. 16B. Note that FIG. 23 of the first embodiment also includes information corresponding to FIG. 25, but detailed description is omitted.
[0131]
[0132]
This means that the processing of step S173 in FIG. 18 is simply executed based on the presence or absence of the color information of the drawing command (not based on FIGS. 19 to 21) and the processing based on FIGS. 19 to 21 respectively. It is realized by.
[0133]
Further, in the process of transmitting the packet information in step S176 in FIG. 18, the page attribute information (color attribute information) includes two types of color attribute information of a default color attribute determination result and a color attribute determination result reflecting a custom setting. Is transmitted as a packet.
[0134]
FIG. 26 shows print control processing when a general-purpose print file having attribute information as shown in FIG. 25 is read from a predetermined storage unit and reprinted, or when a general-purpose print file having attribute information as shown in FIG. 25 is generated. Is shown.
[0135]
First, in step S2601, it is determined whether to use the first color attribute. This is performed, for example, by performing distributed printing (using a default attribute determination method) using a first color attribute on a user interface (for example, FIG. 14) at the time of a print instruction, or performing distributed printing using a second color attribute. By providing a check box for selecting whether to perform printing (using a custom attribute determination method), determination can be made by referring to the setting. For example, it is possible to use the first color attribute if 1402 in FIG. 14 is not checked, and use the second color attribute if checked.
[0136]
If “YES” is determined in the step S2601, the distributed printing process based on the first color attribute is executed in a step 2602 (FIG. 24), and the default setting of the general-purpose print file is used in the step S2603. To do.
[0137]
On the other hand, if “NO” is determined in the step S2601, the distributed printing process based on the second color attribute is executed in a step S2604 (FIG. 24). Then, in step S2605, the default setting of the general-purpose print file is set to use the second color attribute.
[0138]
When the setting of the general-purpose print file is changed in accordance with the processing in steps S2603 and S2605, the changed setting is stored together with the general-purpose document data in accordance with the user's instruction. Then, when reprinting is instructed again based on the general-purpose print file, the settings in steps S2603 and S2605 are reflected.
[0139]
By providing a mechanism as shown in FIG. 26 in this way, even when predetermined print information (image information or document information including setting information) is reprinted, it is possible to appropriately meet the user's convenience, request, or use. Distributed printing can be executed. For example, if the user wants to print out for his / her own browsing, the print processing is performed using the custom setting, and if the user wants to use it for presentation, the original color output is reflected, that is, a little. If the color is included in the page, it can be controlled so that the color output is faithfully performed.
[0140]
(Other embodiments)
The present invention may be applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, and the like), or may be applied to an apparatus including a single device having a plurality of functions. .
[0141]
Further, as described above, an object of the present invention is to supply a storage medium (or a recording medium) recording software program codes for realizing the functions of the above-described embodiments to a system or an apparatus, and It is needless to say that the present invention is also achieved when a computer (or CPU or MPU) reads out and executes the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. When the computer executes the readout program code, not only the functions of the above-described embodiment are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a case where some or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0142]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is executed based on the instruction of the program code. It goes without saying that the CPU included in the expansion card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0143]
When the present invention is applied to the storage medium, the storage medium stores program codes including the program codes corresponding to the flowcharts described above.
【The invention's effect】
As described above, according to the present invention, at the time of color / monochrome distributed printing, it is possible to easily set the color determination level on the user interface that allows the user to explicitly specify the color determination level. In addition, by making it possible to set the judgment criterion by using a prepared option or a scroll bar, etc., it is possible to more easily perform an effective printing process that matches the user's preference and that is suitable for the printing environment. It became possible to provide.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an information processing system according to an embodiment.
FIG. 2 is a block diagram illustrating a configuration of an information processing apparatus according to the embodiment.
FIG. 3 is a diagram showing an example of a memory map of a
FIG. 4 is a diagram showing an example of a memory map of the
5 is a diagram showing a relationship between an FD drive 203 shown in FIG. 2 and an
FIG. 6 is a block diagram illustrating a configuration of a print control module of the information processing apparatus according to the embodiment.
FIG. 7 is a diagram illustrating an example of a data structure of job information managed by a print server.
FIG. 8 is a diagram illustrating an example of the structure of a general-purpose print file.
FIG. 9 is a basic flowchart of UI display of a group member printer driver.
FIG. 10 is a diagram showing items that can be set on a UI of a group member printer driver.
FIG. 11 is a diagram illustrating an example of setting items on a UI of a group member printer driver.
FIG. 12 is a diagram illustrating a display example of a group member printer driver on a UI.
FIG. 13 is a diagram illustrating a display example of a group member printer driver on a UI.
FIG. 14 is a diagram illustrating a display example of a group member printer driver on a UI.
FIG. 15 is a diagram illustrating a display example of a UI for setting a color / monochrome determination standard by a group member printer driver.
FIG. 16 is a diagram illustrating a storage state of page attribute information and document attribute information.
FIG. 17 is a flowchart illustrating an example of a processing procedure of a group printer driver.
FIG. 18 is a flowchart illustrating an example of a processing procedure of step S164 in FIG. 17 in detail.
FIG. 19 is a flowchart illustrating an example of a processing procedure of step S173 in FIG. 18 in detail.
20 is a flowchart illustrating an example of a processing procedure of step S202 in FIG. 20 in detail.
FIG. 21 is a flowchart illustrating an example of a processing procedure of step S204 in FIG. 20 in detail.
FIG. 22 is a flowchart illustrating processing for generating a general-purpose print file by the job
FIG. 23 is a diagram illustrating a description example in a print instruction.
FIG. 24 is a flowchart illustrating a processing procedure of the job
FIG. 25 is a diagram showing a storage state of page attribute information and document attribute information.
FIG. 26 is a flowchart of a print control process performed by a job
Claims (20)
前記印刷システムのユーザーから、前記印刷データをカラー情報又はモノクロ情報のいずれかに分類するための判定基準の設定を受け付けるための設定受付工程と、
前記設定受付工程において受け付けた前記判定基準の設定に基づくカラーモノクロ分散印刷をページ毎に実行させる印刷制御工程とを有することを特徴とするカラーモノクロ分散印刷制御方法。A color / monochrome distributed print control method in a printing system for printing print data including color information and monochrome information using a plurality of printers including a color printer and a monochrome printer,
From a user of the printing system, a setting receiving step for receiving a setting of a criterion for classifying the print data into either color information or monochrome information,
A print control step of executing color / monochrome distributed printing for each page based on the setting of the determination criterion received in the setting receiving step.
ユーザーから前記印刷データをカラー情報又はモノクロ情報のいずれかに分類するための判定基準の設定を受け付けるための設定受付手段と、
前記設定受付手段において受け付けた前記判定基準の設定に基づくカラーモノクロ分散印刷をページ毎に実行させる印刷制御手段とを有することを特徴とするカラーモノクロ分散印刷制御装置。A color / monochrome distributed print control apparatus for printing print data including color information and monochrome information using a plurality of printers including a color printer and a monochrome printer,
Setting receiving means for receiving a setting of a criterion for classifying the print data from the user into either color information or monochrome information,
A print control unit configured to execute color / monochrome distributed printing for each page based on the setting of the determination criterion received by the setting receiving unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002226543A JP2004070521A (en) | 2002-08-02 | 2002-08-02 | Control method for color and monochrome dispersed printing, program, storage medium, and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002226543A JP2004070521A (en) | 2002-08-02 | 2002-08-02 | Control method for color and monochrome dispersed printing, program, storage medium, and device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004070521A true JP2004070521A (en) | 2004-03-04 |
Family
ID=32013852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002226543A Withdrawn JP2004070521A (en) | 2002-08-02 | 2002-08-02 | Control method for color and monochrome dispersed printing, program, storage medium, and device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004070521A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008084325A (en) * | 2006-09-28 | 2008-04-10 | Konica Minolta Systems Lab Inc | Print shop management method and apparatus for printing mixed color and black and white documents |
US8094335B2 (en) | 2006-04-10 | 2012-01-10 | Sharp Kabushiki Kaisha | Image processing apparatus for converting print data to bitmap data, and outputting a color or monochrome image |
US8233186B2 (en) | 2004-06-07 | 2012-07-31 | Sony Corporation | Print data processing apparatus, printer, photograph vending machine, and print data processing method and program |
JP2013025412A (en) * | 2011-07-15 | 2013-02-04 | Ricoh Co Ltd | Printing control program, information processor, and recording medium |
JP2013214228A (en) * | 2012-04-03 | 2013-10-17 | Seiko Epson Corp | Print controller, printing system, and print control method |
JP2014041600A (en) * | 2012-07-25 | 2014-03-06 | Ricoh Co Ltd | Data processing apparatus, system, and program |
CN105278895A (en) * | 2012-03-30 | 2016-01-27 | 精工爱普生株式会社 | Print control device, printing system, and print control method |
CN113396385A (en) * | 2019-02-01 | 2021-09-14 | 兄弟工业株式会社 | Support program, information processing apparatus, and printing method |
-
2002
- 2002-08-02 JP JP2002226543A patent/JP2004070521A/en not_active Withdrawn
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8233186B2 (en) | 2004-06-07 | 2012-07-31 | Sony Corporation | Print data processing apparatus, printer, photograph vending machine, and print data processing method and program |
US8094335B2 (en) | 2006-04-10 | 2012-01-10 | Sharp Kabushiki Kaisha | Image processing apparatus for converting print data to bitmap data, and outputting a color or monochrome image |
JP2008084325A (en) * | 2006-09-28 | 2008-04-10 | Konica Minolta Systems Lab Inc | Print shop management method and apparatus for printing mixed color and black and white documents |
JP2013025412A (en) * | 2011-07-15 | 2013-02-04 | Ricoh Co Ltd | Printing control program, information processor, and recording medium |
CN105278895A (en) * | 2012-03-30 | 2016-01-27 | 精工爱普生株式会社 | Print control device, printing system, and print control method |
CN105278894A (en) * | 2012-03-30 | 2016-01-27 | 精工爱普生株式会社 | Print Control Device, Printing System, And Print Control Method |
US10019204B2 (en) | 2012-03-30 | 2018-07-10 | Seiko Epson Corporation | Print control device, printing system, and print control method |
US10459668B2 (en) | 2012-03-30 | 2019-10-29 | Seiko Epson Corporation | Print control device, printing system, and print control method for generating image print commands from print data in markup language |
JP2013214228A (en) * | 2012-04-03 | 2013-10-17 | Seiko Epson Corp | Print controller, printing system, and print control method |
JP2014041600A (en) * | 2012-07-25 | 2014-03-06 | Ricoh Co Ltd | Data processing apparatus, system, and program |
CN113396385A (en) * | 2019-02-01 | 2021-09-14 | 兄弟工业株式会社 | Support program, information processing apparatus, and printing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7839531B2 (en) | Printing control method | |
US7916332B2 (en) | Document processing apparatus and a method for controlling a document processing apparatus | |
US7372590B2 (en) | Printing method, printing apparatus, printing program executable by information processing apparatus, and computer-readable storage medium storing program | |
JP4669895B2 (en) | Print control apparatus, print control method, and program | |
US7609400B2 (en) | Program, recording medium, information processing apparatus, and printing data processing method | |
US20030053106A1 (en) | Print control method, print control apparatus, print control program for performing computer-executable print data process, and computer-readable memory medium | |
US8319986B2 (en) | Method of protecting leakage of information and information processing apparatus and driver program implementing the same | |
JP2004213111A (en) | Computer program | |
EP1296219A2 (en) | Print control method, print control apparatus, print control program which can be executed by information processing apparatus, and memory medium in which computer-readable program has been stored | |
US8605316B2 (en) | Information processing apparatus and control method thereof, and storage medium | |
US20010056449A1 (en) | Information processing apparatus, print control apparatus, method of controlling an information processing apparatus, method of controlling a print control apparatus, and storage medium | |
JP3854786B2 (en) | Printing control apparatus and method | |
US20080266601A1 (en) | Information processing apparatus and job management method | |
US20100232910A1 (en) | Information processing apparatus, information processing method, program, and storage medium | |
JP2004070521A (en) | Control method for color and monochrome dispersed printing, program, storage medium, and device | |
JP2002014797A (en) | Information processor, print controller and its control method, and storage medium and its control program | |
JP4164488B2 (en) | Information leakage prevention method, information processing apparatus and driver program for realizing the method | |
JP4817563B2 (en) | Information processing apparatus, data processing method of the apparatus, data processing program, and storage medium storing the program | |
JP2003271331A (en) | Print control method and print processing system and information processor | |
US20030011818A1 (en) | Printing system and management method therefor | |
JP4100912B2 (en) | Information processing apparatus, control method therefor, program, and storage medium | |
JP2003084942A (en) | Printing control method, printing control device, printing control program for computer-executable printing data process, and computer-readable recording medium | |
JP3833090B2 (en) | Control method, control device, program, and storage medium | |
JP4054544B2 (en) | Information processing apparatus, information processing method, print control program, print processing apparatus, print processing method, and print processing program | |
US8160469B2 (en) | Information processing apparatus, method for controlling the information processing apparatus, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20051004 |