(57)【特許請求の範囲】
【請求項１】
印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置であって、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定手段と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成手段と、
前記設定手段によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成手段と、
前記設定手段によって設定された後処理情報が適用されない範囲を示す情報を付加する付加手段と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成手段とを備え、
前記印刷ジョブ生成手段は、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成することを特徴とする情報処理装置。
【請求項２】
前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成手段は、該命令により特定されるバナー情報を含む印刷ジョブを生成することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記印刷ジョブ生成手段は、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記後処理情報は、印刷された印刷用紙に適用されるステイプル処理であることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置における情報処理方法であって、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定工程と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成工程と、
前記設定工程によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成工程と、
前記設定工程によって設定された後処理情報が適用されない範囲を示す情報を付加する付加工程と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成工程とを備え、
前記印刷ジョブ生成工程では、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成することを特徴とする情報処理方法。
【請求項６】
前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成工程では、該命令により特定されるバナー情報を含む印刷ジョブを生成することを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記印刷ジョブ生成工程では、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成することを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記後処理情報は、印刷された印刷用紙に適用されるステイプル処理であることを特徴とする請求項５乃至７のいずれか１項に記載の情報処理方法。
【請求項９】
印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置で実行可能な印刷制御プログラムであって、当該印刷制御プログラムが前記情報処理装置を、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定手段と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成手段と、
前記設定手段によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成手段と、
前記設定手段によって設定された後処理情報が適用されない範囲を示す情報を付加する付加手段と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成手段と、して機能させ、
前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成させることを特徴とする印刷制御プログラム。
【請求項１０】
前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、該命令により特定されるバナー情報を含む印刷ジョブを生成させることを特徴とする請求項９に記載の印刷制御プログラム。
【請求項１１】
前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成させることを特徴とする請求項１０に記載の印刷制御プログラム。
【請求項１２】
前記後処理情報は、印刷された印刷用紙に適用されるステイプル処理であることを特徴とする請求項９乃至１１のいずれか１項に記載の印刷制御プログラム。
【請求項１３】
印刷された印刷用紙に適用される後処理情報をバナーデータに適用せず、本文データに適用するために、前記後処理情報と、前記本文データの描画命令と、バナー情報と、後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成する情報処理装置から前記印刷ジョブを受信する印刷処理装置であって、
前記印刷ジョブに基づいて生成されるバナーの印刷結果に対して前記後処理情報を適用せず、前記印刷ジョブに基づいて生成される前記描画命令の印刷結果に対して前記後処理情報を適用する印刷ジョブ制御手段を備えることを特徴とする印刷処理装置。
【請求項１４】
前記印刷ジョブ制御手段は、前記情報処理装置から発行される第１印刷ジョブと、前記第１印刷ジョブとは異なる第２印刷ジョブとを並行して処理し、前記第１印刷ジョブのバナーデータを展開してから、前記第１印刷ジョブの本文の描画命令の処理が終了するまでの間に、前記第２印刷ジョブのバナーデータの展開が処理が終了した場合、前記第１印刷ジョブの印刷が終了するまで前記第２印刷ジョブのバナーの出力を待機させることを特徴とする請求項１３に記載の印刷処理装置。
【請求項１５】
印刷された印刷用紙に適用される後処理情報をバナーデータに適用せず、本文データに適用するために、前記後処理情報と、前記本文データの描画命令と、バナー情報と、後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成する情報処理装置から前記印刷ジョブを受信する印刷処理装置における印刷処理方法であって、
前記印刷ジョブに基づいて生成されるバナーの印刷結果に対して前記後処理情報を適用せず、前記印刷ジョブに基づいて生成される前記描画命令の印刷結果に対して前記後処理情報を適用する印刷ジョブ制御工程を備えることを特徴とする印刷処理方法。
【請求項１６】
前記印刷ジョブ制御工程では、前記情報処理装置から発行される第１印刷ジョブと、前記第１印刷ジョブとは異なる第２印刷ジョブとを並行して処理し、前記第１印刷ジョブのバナーデータを展開してから、前記第１印刷ジョブの本文の描画命令の処理が終了するまでの間に、前記第２印刷ジョブのバナーデータの展開が処理が終了した場合、前記第１印刷ジョブの印刷が終了するまで前記第２印刷ジョブのバナーの出力を待機させることを特徴とする請求項１５に記載の印刷処理方法。
【請求項１７】
印刷された印刷用紙に適用される後処理情報をバナーデータに適用せず、本文データに適用するために、前記後処理情報と、前記本文データの描画命令と、バナー情報と、後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成する情報処理装置から前記印刷ジョブを受信する印刷処理装置で実行可能な印刷処理プログラムであって、当該印刷処理プログラムが前記印刷処理装置を、
前記印刷ジョブに基づいて生成されるバナーの印刷結果に対して前記後処理情報を適用せず、前記印刷ジョブに基づいて生成される前記描画命令の印刷結果に対して前記後処理情報を適用する印刷ジョブ制御手段として機能させることを特徴とする印刷処理プログラム。
【請求項１８】
前記印刷ジョブ制御手段としての機能は、前記情報処理装置から発行される第１印刷ジョブと、前記第１印刷ジョブとは異なる第２印刷ジョブとを並行して処理し、前記第１印刷ジョブのバナーデータを展開してから、前記第１印刷ジョブの本文の描画命令の処理が終了するまでの間に、前記第２印刷ジョブのバナーデータの展開が処理が終了した場合、前記第１印刷ジョブの印刷が終了するまで前記第２印刷ジョブのバナーの出力を待機させることを特徴とする請求項１７に記載の印刷処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置、および情報処理方法、および印刷制御プログラム、および記憶媒体、および印刷制御システムに関するもので、特にパーソナルコンピュータ等の情報処理装置と、プリンタ（印刷処理装置）からなるシステムにおける印刷制御方法に関するものである。
【０００２】
【従来の技術】
バナー（Banner)とは、いわゆる情報の仕切りとして機能するものであり、Network Serverが作成するバナーや、Windows systemが作成するバナーのことを一般的に指称する。例えば、Network Severが作成するバナーを例にあげて説明すると、クライアントPCでドライバが作成したジョブがNetwork Serverに届くと、Network Serverはログインしたユーザー名が記述されたバナーをテキストデータで作成し、これを送られてきたジョブの先頭につけてプリンタに送っていた。
【０００３】
また、Windows systemが作成するバナーに関しても全く同様で、プリントの命令が実行されると、Windows systemがクライアントPCにログインしたユーザー名を記述したバナーを作成し、これをジョブの先頭につけてプリンタに送っていた。
【０００４】
しかしながら、上記の方法では、Network Serverが作成するバナーやWindows systemが作成するバナーは、プリンタドライバが作成するPDL印刷ジョブとは、別のジョブとしてそれぞれプリンタに送られるため、他のユーザーからの印刷ジョブがほぼ同時期に送られる場合は、バナーと印刷ジョブの間に第３者の印刷ジョブが割り込む可能性があった。
【０００５】
これは、本来、自分が印刷した印刷ジョブと第３者の印刷ジョブを仕切ることがバナーの目的ということを考えると、バナーが印刷ジョブと一対にならないことは、バナーの本来の目的を達していないことになる。しかも、最近は、一台のプリンタを複数のユーザーで共有するようなネットワーク接続の高速プリンタが普及してきているため、さらにこの問題が顕著化する傾向にあった。
【０００６】
また、ステイプル機能をもったフィニッシャーに、ステイプル指示がされた印刷ジョブを送った場合、プリンタドライバが作成するPDL印刷ジョブと、バナーが別ジョブとしてプリンタに送られると、ステイプルの指示がされたPDL印刷ジョブだけが、ステイプル機能のあるトレイに出力され、ステイプルの指示がされていないバナーは、標準トレイ、つまり印刷ジョブとは異なったトレイに出力されるといった問題もあった。
【０００７】
これらの問題は、バナーが印刷ジョブとは別ジョブとして作成されたために発生する問題である。
【０００８】
本発明は、プリンタドライバがバナーを作成し、それをプリンタがバナーとして認識することにより解決するものである。つまり、プリンタドライバが作成したバナーに、バナー開始命令と終了命令を付加することによって、それを受け取ったプリンタは、送られてきたバナーをバナーとして認識出来るようになり、バナーと印刷ジョブの間に第３者の印刷ジョブを割り込ませないこと、バナーと印刷ジョブの出力先（同じトレイ、若しくは指定した特定のトレイ）を制御することを目的とするものである。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明にかかる印刷制御システム及び方法は主として以下の構成からなることを特徴とする。
【００１０】
すなわち、印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置は、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定手段と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成手段と、
前記設定手段によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成手段と、
前記設定手段によって設定された後処理情報が適用されない範囲を示す情報を付加する付加手段と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成手段とを備え、
前記印刷ジョブ生成手段は、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成することを特徴とする。
【００１１】
上記の情報処理装置において、前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成手段は、該命令により特定されるバナー情報を含む印刷ジョブを生成することを特徴とする。
【００１２】
上記の情報処理装置において、前記印刷ジョブ生成手段は、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成することを特徴とする。
【００１３】
あるいは、印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置における情報処理方法は、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定工程と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成工程と、
前記設定工程によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成工程と、
前記設定工程によって設定された後処理情報が適用されない範囲を示す情報を付加する付加工程と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成工程とを備え、
前記印刷ジョブ生成工程では、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成することを特徴とする。
【００１４】
上記の情報処理方法において、前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成工程では、該命令により特定されるバナー情報を含む印刷ジョブを生成することを特徴とする。
【００１５】
上記の情報処理方法において、前記印刷ジョブ生成工程では、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成することを特徴とする。
【００１９】
あるいは、印刷処理装置で印刷処理すべき印刷ジョブを生成する情報処理装置で実行可能な印刷制御プログラムであって、当該印刷制御プログラムが前記情報処理装置を、
印刷処理装置にて実行される処理内容を設定する設定画面を介して、前記印刷ジョブの仕切りとなるバナーを出力すること、および、前記印刷処理装置により印刷された印刷用紙に適用される後処理情報を設定する設定手段と、
アプリケーションによって発行される印刷命令に基づいて描画命令を生成する描画命令生成手段と、
前記設定手段によりバナーを出力することが設定された場合、 前記バナーを印刷処理させるためのバナー情報を生成するバナー情報生成手段と、
前記設定手段によって設定された後処理情報が適用されない範囲を示す情報を付加する付加手段と、
前記アプリケーションからの印刷実行命令に従って、前記後処理情報、前記描画命令、前記バナー情報及び前記後処理情報が適用されない範囲を示す情報に基づき、前記印刷処理装置が解釈可能な印刷ジョブを生成する印刷ジョブ生成手段と、して機能させ、
前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、前記後処理情報を前記バナー情報に適用せず、前記後処理情報を前記描画命令に適用するために、前記後処理情報と、前記描画命令と、前記バナー情報と、前記後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成させることを特徴とする。
【００２０】
上記の印刷制御プログラムにおいて、前記後処理情報が適用されない範囲を示す情報は、バナーを識別するためのバナー開始命令と該バナー終了命令を指し、
前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、該命令により特定されるバナー情報を含む印刷ジョブを生成させることを特徴とする。
【００２１】
上記の印刷制御プログラムにおいて、前記印刷ジョブ生成手段としての機能は、前記情報処理装置に、印刷ジョブの開始命令、前記バナー開始命令、前記バナー情報、前記バナー終了命令、前記後処理情報、前記描画命令、印刷ジョブの終了命令の順で構成される印刷ジョブを生成させることを特徴とする。
【００２２】
あるいは、印刷された印刷用紙に適用される後処理情報をバナーデータに適用せず、本文データに適用するために、前記後処理情報と、前記本文データの描画命令と、バナー情報と、後処理情報が適用されない範囲を示す情報を、印刷ジョブの開始命令および終了命令で挟む印刷ジョブを生成する情報処理装置から前記印刷ジョブを受信する印刷処理装置は、
前記印刷ジョブに基づいて生成されるバナーの印刷結果に対して前記後処理情報を適用せず、前記印刷ジョブに基づいて生成される前記描画命令の印刷結果に対して前記後処理情報を適用する印刷ジョブ制御手段を備えることを特徴とする。
【００２３】
上記の印刷処理装置において、前記印刷ジョブ制御手段は、前記情報処理装置から発行される第１印刷ジョブと、前記第１印刷ジョブとは異なる第２印刷ジョブとを並行して処理し、前記第１印刷ジョブのバナーデータを展開してから、前記第１印刷ジョブの本文の描画命令の処理が終了するまでの間に、前記第２印刷ジョブのバナーデータの展開が処理が終了した場合、前記第１印刷ジョブの印刷が終了するまで前記第２印刷ジョブのバナーの出力を待機させることを特徴とする。
【００２７】
【発明の実施の形態】
＜実施形態１＞
以下、本発明の実施形態について図面を参照して説明する。
【００２８】
図１は本発明の実施形態を示すプリンタ制御システムの構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ,ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できる。同図において、ホストコンピュータ３０００は、ＲＯM３のプログラム用ＲＯＭ（３ｂ）あるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２９】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。
【００３０】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピーディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、双方向性インターフェース（インターフェース）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００３１】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００３２】
プリンタ１５００は、ＣＰＵ１２により制御される。プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ１３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００３３】
ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭ１９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶したり、展開した印刷データのスプール用として使われる。また、１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００３４】
また、前述した外部メモリ１４は１個に限らず、複数個備えられ、内蔵フォントを加えたオプションカード、展開した印刷データのスプール用メモリ、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００３５】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。
【００３６】
また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部ディスク１１のＨＤに追加することが可能となっている。外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００３７】
グラフィックエンジン２０２は、印刷装置ごとに用意されたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Graphic Device Interface）関数からＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェース２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００３８】
本実施形態の印刷システムは、図２で示すプリンタとホストコンピュータからなる印刷システムに加えて、更に第３図に示すように、アプリケーションからの印刷データを、一旦、中間コードデータでスプールする構成を有する。
【００３９】
図３は、図２のシステムを拡張したもので、グラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦、中間コードからなるスプールファイル３０３を生成する構成をとる。図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのは、プリンタドライバ２０３がグラフィックエンジン２０２からのすべての印刷命令をプリンタの制御コマンドへ変換し終った時点である。
【００４０】
これに対して、図３のシステムでは、アプリケーション２０１が印刷処理から開放されるのは、スプーラ３０２がすべての印刷命令を中間コードデータに変換し、スプールファイル３０３に出力した時点である。通常、後者の方が短時間で済む。
【００４１】
また、図３で示すシステムにおいては、スプールファイル３０３の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現する事ができる。これらの目的のために、図２のシステムに対し、図３のように中間コードデータでスプールするようにシステムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供するウインドウから設定を行い、プリンタドライバ２０３がその設定内容をＲＡＭ２上あるいは外部メモリ１１上に保管する。
【００４２】
以下、図３の詳細な構成を説明する。同図に示す通り、図３のように拡張された処理方式を採用する構成では、グラフィックエンジン２０２からの印刷命令をディスパッチャ３０１が受信する。ディスパッチャ３０１はグラフィックエンジン２０２から受信した印刷命令が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令であると判断した場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２へ印刷命令を送信する。
【００４３】
スプーラ３０２は受信した印刷命令を中間コードに変換してスプールファイル３０３に出力する。
【００４４】
また、スプーラ３０２は、設定されている印刷命令に関する加工設定に関する情報をプリンタドライバ２０３から取得してスプールファイル３０３に保存する。スプールファイル３０３には、アプリケーション２０１で作成された印刷命令に関する情報と、その印刷命令を加工するための加工設定の情報とが格納される。スプールファイル３０３は外部メモリ１１上にファイルとして生成するが、ＲＡＭ２上に生成されても構わない。
【００４５】
更に、スプーラ３０２は外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２にロードし、スプールファイルマネージャ３０４に対して、スプールファイル３０３の生成状況を通知する。その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷命令に関する加工設定の内容に従って印刷を行えるか判断する。
【００４６】
スプールファイルマネージャ３０４はグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対して、スプールファイル３０３に記述された中間コードの印刷処理を行うように指示する。
【００４７】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従って加工し、もう一度グラフィックエンジン２０２に出力する。
【００４８】
ディスパッチャ３０１はグラフィックエンジン２０２から受け取った印刷命令がデスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。
【００４９】
プリンタドライバ２０３はプリンタ制御コマンドを生成し、システムスプーラ２０４経由でプリンタ１５００に出力する。
【００５０】
＜バナー情報による印刷制御＞
図４、図５に示すフローチャートによりバナー付印刷情報の制御について説明する。図４は、クライアントでバナーを作成する時の制御方法を示したフローチャートであり、図５は、バナー付き印刷ジョブを受け取ったプリンタが、どのようにバナーを制御するかを示したフローチャートである。
【００５１】
まず、図４のステップＳ４０１で、ホストコンピュータ上のアプリケーション（図３の２０１）から印刷実行命令が指示されると、図３のディスパッチャ３０１は、グラフィックエンジン２０２から印刷命令を受け取り、プリンタドライバ（図３の２０３）に対する印刷命令を、一旦、スプーラ３０２に出力する。
【００５２】
スプールファイル３０２は、上述のように受信した印刷命令を中間コードに変換してスプールファイル３０３に格納する。また、スプーラ３０２は、このとき、印刷命令に対する加工設定の情報としてプリンタドライバ２０３より、バナーの設定に関する情報を取得して、印刷命令と併せてスプールファイル３０３に格納する。
【００５３】
ステップＳ４０２で、スプールファイルマネージャ３０４はスプールファイル３０３に格納された印刷命令を解析し、バナー印刷が設定されている場合には（ステップＳ４０２−ＹＥＳ）、デスプーラ３０５にその旨を出力し、デスプーラ３０５は、スプールファイルマネージャ３０４からバナー印刷設定の旨の受信に従い、バナーの作成を行う（ステップＳ４０３）。
【００５４】
この際に、デスプーラ３０５はバナー作成と併せて、スプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従って加工する。
【００５５】
バナーの印刷が設定されていない場合（ステップＳ４０２−ＮＯ）には、バナーの作成は行わず、スプールファイル３０３に格納された印刷命令の処理が実行される。
【００５６】
デスプーラ３０５は、ステップＳ４０３においてバナーの作成が終わると、この情報をもう一度グラフィックエンジン２０２に送り、その送られてきたデータに対して、プリンタドライバ２０３はバナー開始命令と終了命令を付加して、ＰＤＬ印刷ジョブとしてプリンタ１５００に送出する（ステップＳ４０４）。
【００５７】
図５は、プリンタドライバ２０３によって作成されたプリンタ制御コマンドが、システムスプーラ２０４を経由してプリンタ１５００に送られてきた場合のプリンタ側の制御方法を説明したフローチャートである。まず、図５のステップＳ５０１で、「バナーの開始命令」がＰＤＬ印刷ジョブの先頭にあるか否かの確認が行われ、ＰＤＬ印刷ジョブの先頭に、「バナーの開始命令」がある場合は、処理をステップＳ５０２に進め、バナー終了命令がくるまでのデータをバナーとして認識し、プリンタメモリ上にバナーをビットマップで展開する。
【００５８】
次に、ステップＳ５０３で、バナー終了命令に続くフィニッシング（Finishing）制御コマンドの確認を行い、引き続き展開をする実際の描画データの制御を行なう。描画データを特定のトレイに出力する場合には（ステップＳ５０４−ＹＥＳ）、処理をステップＳ５０４に進め、ステップＳ５０３でビットマップに展開したバナーを、描画データが出力されるのと同じトレイに出力する。特に特定のトレイに出力する必要がない場合には（ステップＳ５０３−ＮＯ）、処理をステップＳ５０５に進め、例えば、プリンタのパネルで設定されているデフォルトのトレイにバナーの出力を行う。
【００５９】
ここで、「描画データを特定のトレイに出力しなくてはいけない場合」とは、例えばステイプルによるフィニッシングが選択されている場合で、かつプリンタがステイプルを行えないトレイを持っている場合などが該当する。
【００６０】
バナーの出力が終わったら、実際の描画データをメモリ上に展開して、順次プリンタに出力する（ステップＳ５０６）。
【００６１】
また、図６は、クライアントで作成されるバナー付きPDL印刷ジョブを、コマンドレベルで説明した図である。
【００６２】
まず、ジョブ開始命令が発行され、次に「バナー開始命令」と「バナー終了命令」に囲まれたバナーの内容が続く。そして、その後に、フィニッシング等の設定内容を示すJL Commandが、PJLのコメントとして発行される。ここでPJLのコメントを用いてフィニッシング等の制御を行っているのは、誤って本ドライバから、本システムをサポートしていない他社のプリンタに印刷ジョブが送られた場合でも、PJLのコメントとして追加された独自コマンドなら、誤動作等を起こさないためである。
【００６３】
次に、独自コマンドとして追加したPJLについて説明する。例えば、「ステイプルを左上に打ちたい」といった内容が設定される場合には、
@PJL COMMENT CANPJL SET BANNER=GENERICON
@PJL COMMENT CANPJL SET STAPLE=GENERICON
@PJL COMMENT CANPJL SET LOCATION=UPPER_LEFT
というPJLが発行される。
【００６４】
プリンタは、２行目のCANPJL SET STAPLEのチェックを行い、ここがGENERICONであればステイプルありと判断し、上記で説明したように、必要があればバナーの出力されるトレイを変更する。
【００６５】
本実施形態で説明しているプリンタドライバは、バナーと描画データを１つのジョブとしてプリンタに送っているが、プリンタ内部では、バナーと描画データは、別ジョブとして処理されている。つまり、印刷ジョブを受け取ったプリンタは、バナーの終了命令を受け取った時点でジョブを一度クローズして、エンジンに対して出力命令を行う。これは、バナーも含めた描画データを１ジョブと見なすと、例えば描画データに対してステイプル命令があった場合に、バナーまで本文と一緒にステイプルされてしまうためである。つまり、図６で示すフィニッシング等の設定を示すJL Commandの影響する範囲は、バナーを含まない本文だけである。
【００６６】
図７は、クライアントから送られてくるバナー付きＰＤＬ印刷ジョブを、プリンタ１５００側のコントローラとエンジンがどのように時系列的に処理するかを示した図である。上記のように説明したとおり、プリンタ１５００はバナーと描画データを別々のジョブとして内部的には処理を行っているが、別ジョブにしたことにより、バナーと描画データに対する加工設定がそれぞれ異なる場合でも、制御が独立に実行することができる。但し、この場合、バナーと描画データの間に、第３者の印刷ジョブが割り込む可能性が出てくる。これを防ぐために、たとえプリンタ１５００が並列処理を行って、第３者のバナーのイメージ展開を、本文の印刷ジョブの展開より早く終わらせても、バナーと対になった本文の印刷が終わるまでは、第３者のバナー出力を行わないように制御される。
【００６７】
例えば、図７において、ジョブAの展開で、Aのバナーの展開終了後、Aのプリントジョブの展開中に、ジョブBのバナーの展開が並列的に処理される場合があっても、印刷においては、ジョブAの印刷（バナー及びプリントジョブ）の終了後に、ジョブBの印刷が開始するように制御される。ジョブBのバナー展開終了からジョブBの印刷開始までは、待機時間が設けられ、先行するジョブAの処理の終了までジョブBは待機状態となる。
【００６８】
バナーとプリントジョブとは別個のジョブとして印刷制御されるが、その出力においては、一対としてその出力が同調された制御が施されることになる。
【００６９】
図８及び図９は、バナーの内容に関し、印刷制御の設定画面を示す図である。図８において、「バナーを付ける」（８０１）が設定されると、本チェックボックスの右側にある「Details...」ボタン（８０２）が有効となる。このボタン（８０２）が選択されると、図９で示すような、バナーの詳細内容に関する設定画面が表示される。また、本画面から、バナーに記載する内容の変更も可能である。
【００７０】
以上の処理により、プリンタドライバが発行したバナー開始命令と終了命令をプリンタが読み取ることによって、バナーの識別が容易に行えるようになり、バナーと本文の間に第３者の印刷ジョブが割り込むといった弊害を防ぎ、バナーと印刷ジョブの出力先（同じトレイ、若しくは指定した特定のトレイ）を制御することが可能になる。
【００７１】
＜実施形態２＞
上記の実施形態１では、バナー付きＰＤＬ印刷ジョブの作成を、クライアント上のプリンタドライバで行っていたが、プリンタドライバではバナーの作成に必要となる情報だけをコマンドレベルでプリンタに送って、実際のバナー作成は、プリンタ側で行うことも可能である。このようにすれば、プリンタドライバで作成する印刷ジョブサイズは小さくなるので、一般的にはパフォーマンスの向上を図ることが可能である。
【００７２】
以下に、具体的な動作仕様を図３を用いて説明する。
【００７３】
まず、ホストコンピュータ３０００上のアプリケーション２０１から印刷実行命令が指示されると、ディスパッチャ３０１はグラフィックエンジン２０２から印刷命令を受け取り、このデータは、スプーラ３０２、スプールファイル３０３、スプールファイルマネージャ３０４、デスプーラ３０５を介して、中間コードデータに対して加工設定が加えられる。
【００７４】
バナー印刷が設定されている場合には、デスプーラ３０５は、スプールファイルマネージャ３０４からバナー印刷設定の旨の受信に従い、プリンタドライバで必要な情報（作成者名、作成時間、アプリケーション名等）をPJLのコメントとして作成する。
【００７５】
プリンタドライバ２０３は、このPJLコメントを印刷ジョブの先頭に付けてプリンタ１５００に送る。
【００７６】
プリンタドライバ２０３によって作成されたプリンタ制御コマンドが、システムスプーラ２０４経由でプリンタ１５００に送られてきた場合、まず、このジョブがバナー付きかどうかの確認が行われる。
【００７７】
バナー付きのプリンタ制御コマンドである場合には、その後に続くバナー作成の為に必要なPJL コメントを基にバナーの作成をプリンタ１５００側で行う。
【００７８】
次に、フィニッシング制御コマンドの確認を行い、引き続き送られてくる描画データを特定のトレイに出力しなくてはいけない場合には、先程作成したバナーを、描画データが出力されるのと同じトレイに出力する。
【００７９】
特定のトレイに出力する必要がない場合には、例えば、プリンタのパネルで設定されているデフォルトのトレイにバナーの出力を行う。
【００８０】
バナーの出力が終わったら、実際の描画データをメモリ上に展開して、順次プリンタに出力する。
【００８１】
このように、プリンタ１５００側で、バナーの作成を行うと、プリンタドライバが作成する印刷ジョブサイズが小さくなるので、プリンタドライバがバナーを作成する場合と全く同じ出力結果を保ちつつ、かつパフォーマンスの向上を図ることが可能である。
【００８２】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００８３】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００８４】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８５】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００８６】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８７】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８８】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図４、図５に示す）フローチャートに対応するプログラムコードが格納されることになる。
【００８９】
【発明の効果】
以上説明したように、本発明にかかる印刷制御システム、および印刷制御方法によれば、バナーの識別を行い、バナーとプリントジョブとを別個のジョブとして印刷制御しつつ、その出力に際してはそれぞれ同調した制御が可能になる。
【００９０】
バナーとプリントジョブとの間に第３者の印刷ジョブが割り込むといった弊害を防ぎ、バナーと印刷ジョブの出力先（同じトレイ、若しくは指定した特定のトレイ）を制御することが可能になる。
【図面の簡単な説明】
【図１】本発明の第1の実施形態を示す印刷制御装置の構成を説明するブロック図である。
【図２】ホストコンピュータにおいて、印刷命令の生成と処理を説明するブロック図である。
【図３】中間コードを生成して、印刷命令を処理するための構成を説明するブロック図である。
【図４】本実施例における、クライアント側でバナーを作成する際の印刷制御を説明するフローチャートである。
【図５】本実施例における、バナー付きＰＤＬ印刷ジョブを受け取ったプリンタ側での、印刷ジョブの制御を説明するフローチャートである。
【図６】クライアントで作成されるバナー付きＰＤＬ印刷ジョブを、コマンド単位に説明した図である。
【図７】クライアントから送られてくるバナー付きＰＤＬ印刷ジョブを、プリンタ側のコントローラとエンジンがどのように時系列的に処理するかを例示した図である。
【図８】印刷制御の設定を行なう画面例を示す図である。
【図９】バナーの詳細設定をする画面例を示す図である。
【符号の説明】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
１２  ＣＰＵ
１３  ＲＯＭ
１９  ＲＡＭ
３０００  ホストコンピュータ
１５００  プリンタ
【図１】
0004054544.tif 000002
【図２】
0004054544.tif 000003
【図３】
0004054544.tif 000004
【図４】
0004054544.tif 000005
【図５】
0004054544.tif 000006
【図６】
0004054544.tif 000007
【図７】
0004054544.tif 000008
【図８】
0004054544.tif 000009
【図９】
0004054544.tif 000010