(57)【要約】【課題】  印刷実行時に印刷設定のためのユーザインターフェースで複雑な設定を行うことなく、印刷条件を自動で適用することが可能で、ユーザの操作の負担を大幅に軽減する。【解決手段】  描画命令情報を取得する取得手段、取得手段で取得した描画命令情報を記憶する記憶手段、記憶手段に記憶された描画命令情報と取得手段で別に取得した描画命令情報とを比較する比較手段、比較手段で一致した描画命令情報に対応する印刷設定情報を取得する印刷設定情報取得手段を備える。または、描画命令情報を取得する取得手段、取得手段で取得した描画命令情報を記憶する記憶手段、記憶手段に記憶された描画命令情報と取得手段で別に取得した描画命令情報とを比較する比較手段、比較手段で一致した描画命令情報をイメージ化するイメージ化手段、イメージ化されたイメージ情報に対応する印刷設定情報を取得する印刷設定情報取得手段を備える。【選択図】  図６
2006178747.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置に対する印刷設定を制御する印刷設定制御装置において、
描画命令情報を取得する取得手段と、
前記取得手段で取得した描画命令情報を記憶する記憶手段と、
前記記憶手段に記憶された描画命令情報と前記取得手段で別に取得した描画命令情報とを比較する比較手段と、
前記比較手段で一致した描画命令情報に対応する印刷設定情報を取得する印刷設定情報取得手段とを備えることを特徴とする印刷設定制御装置。
【請求項２】
前記記憶手段は、描画命令情報と印刷設定情報とを関連付け記憶しており、前記印刷設定情報取得手段は、前記比較手段で一致した描画命令情報と前記記憶部に記憶されている前記印刷設定情報に対応する描画命令情報とを比較して一致した場合に、対応する印刷設定情報を取得することを特徴とする請求項１に記載の印刷設定制御装置。
【請求項３】
前記取得手段は、１ページ分の描画命令情報をページ毎に順次取得することを特徴とする請求項１または請求項２に記載の印刷設定制御装置。
【請求項４】
前記取得手段は、指定されたページについて描画命令情報を取得することを特徴とする請求項１または請求項２に記載の印刷設定制御装置。
【請求項５】
前記描画命令情報に対応する印刷設定情報がない場合、新規に印刷設定情報の入力を受け、入力された印刷設定情報と前記描画命令情報とを関連付け前記記憶部に登録することを特徴とする請求項１から請求項４のいずれかに記載の印刷設定制御装置。
【請求項６】
前記記憶手段は、前記取得手段で取得した描画命令情報を記憶する場合、前記比較手段による比較で一致した描画命令情報のみを記憶することを特徴とする請求項１から請求項５のいずれかに記載の印刷設定制御装置。
【請求項７】
画像形成装置に対する印刷設定を制御する印刷設定制御装置において、
描画命令情報を取得する取得手段と、
前記取得手段で取得した描画命令情報を記憶する記憶手段と、
前記記憶手段に記憶された描画命令情報と前記取得手段で別に取得した描画命令情報とを比較する比較手段と、
前記比較手段で一致した描画命令情報をイメージ化するイメージ化手段と、
前記イメージ化されたイメージ情報に対応する印刷設定情報を取得する印刷設定情報取得手段とを備えることを特徴とする印刷設定制御装置。
【請求項８】
コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御方法であって、
前記コンピュータに、
描画命令情報を取得するステップと、
前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、
前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、
前記比較するステップで一致した描画命令情報に対応する印刷設定情報を取得するステップとを実行させることを特徴とする印刷設定制御装置の制御方法。
【請求項９】
コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御方法であって、
前記コンピュータに、
描画命令情報を取得するステップと、
前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、
前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、
前記比較するステップで一致した描画命令情報をイメージ化するステップと、
前記イメージ化されたイメージ情報に対応する印刷設定情報を取得するステップとを実行させることを特徴とする印刷設定制御装置の制御方法。
【請求項１０】
コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御プログラムであって、
描画命令情報を取得するステップと、
前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、
前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、
前記比較するステップで一致した描画命令情報に対応する印刷設定情報を取得するステップとを備えることを特徴とするプログラム。
【請求項１１】
コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御プログラムであって、
描画命令情報を取得するステップと、
前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、
前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、
前記比較するステップで一致した描画命令情報をイメージ化するステップと、
前記イメージ化されたイメージ情報に対応する印刷設定情報を取得するステップとを備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷設定制御装置、その制御方法及びプログラムに関し、特に印刷実行する度に適用する印刷条件設定の制御に関するものである。
【背景技術】
【０００２】
印刷制御プログラムまたは印刷装置は、通常、ユーザによる印刷条件の設定変更がなければ、初期設定された印刷条件で印刷実行を行う。したがって、ユーザは、初期設定と異なる印刷条件で印刷を行う場合、印刷するドキュメント毎に希望する印刷条件を設定しなければならない。このようなことから、近年では、特許文献１や特許文献２に開示されているように、ユーザによる印刷条件の設定に伴う操作の手間を軽減する制御方法が検討されている。
【０００３】
従来のプリンタドライバ等のプリンタ制御装置では、文書の印刷ページ範囲の指定等、印刷モードや、紙の種類等が、印刷のたびごとに一通りしか設定できず、一つの文書の中で上記のような設定を変えたい場合には、印刷設定を複数回行い、印刷設定毎に印刷を複数回に分けて行わなければならなかった。結果、ユーザに対する操作の負担が重く、また時間もかかるという問題点があった。特許文献１では、この問題を解決し、ユーザが設定した印刷条件の異なる文書を、一度に出力できるとともに、簡単な操作で文書情報に指定された印刷条件での印刷を効率よく何度でも行うことができるプリンタ制御方法を開示している。
【０００４】
また、特許文献２では、複数の設定シートを用いて印刷データを生成する際の印刷設定を行う際に、複数の設定シートに別れている複数の設定項目を組み合わせた一つの複合設定を複合設定リストに登録できるようにし、この複合設定リストに登録されている複合設定の１つを選択したときに、この複合設定のすべての設定項目を複数の設定シートに設定して表示することで、複数の設定項目を一まとめに設定できる扱いやすいユーザインタフェースを提供できるようにした制御方法が開示されている。
【０００５】
【特許文献１】特開平１０‐１８７３８４号公報
【特許文献２】特開２０００‐２２２１５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び特許文献２に記載されている印刷制御システムにおいては、以下の問題がある。  
上記特許文献に開示のいずれの方法にしても、ユーザに予め印刷条件を設定させたものを保持し、印刷実行時には保持した印刷設定情報をユーザが選択することによってそれを読み込み、適用する、という形態をとるため、これらの発明ではユーザ自身が保持した印刷設定情報を検索して適用するといった操作の手間がかかる。また保持した印刷設定情報の数が増えれば増えるほど、ますます望みの印刷設定の検索には手間がかかるため、ユーザの負担も大きくなる。さらに、印刷設定情報が増えることによる印刷設定の適用ミスが発生しやすくなり、意図しない出力によって紙資源を無駄に消費する、などといった問題を残すことになる。
【０００７】
市場では、多くのユーザが、予め決められたテンプレートを用いて帳票や仕様書等を作成し、出力している。このような定形のテンプレートを使用する場合、例えば仕様書は常に４ページ／枚にして出力しファイリングする、というように一般的には設定する印刷条件も同じであることが多い。このようなニーズが市場にある中、現状では、ドキュメントに対し適用したい印刷設定がわかりきっているにも関わらず、全シートに跨って設定を行うか、先に挙げた特許文献のように、予め登録しておいた印刷設定を読み出すという手順を踏まなければならない。
【０００８】
本発明は、印刷実行時に印刷設定のためのユーザインターフェース（以後ＵＩと称す）で複雑な設定を行うことなく、印刷条件を自動で適用することが可能で、ユーザの操作の負担を大幅に軽減することができる印刷設定制御装置、その制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１に記載の発明は、画像形成装置に対する印刷設定を制御する印刷設定制御装置において、描画命令情報を取得する取得手段と、前記取得手段で取得した描画命令情報を記憶する記憶手段と、前記記憶手段に記憶された描画命令情報と前記取得手段で別に取得した描画命令情報とを比較する比較手段と、前記比較手段で一致した描画命令情報に対応する印刷設定情報を取得する印刷設定情報取得手段とを備えることを特徴とする。
【００１０】
また、請求項２に記載の発明は、請求項１に記載の印刷設定制御装置において、前記記憶手段は、描画命令情報と印刷設定情報とを関連付け記憶しており、前記印刷設定情報取得手段は、前記比較手段で一致した描画命令情報と前記記憶部に記憶されている前記印刷設定情報に対応する描画命令情報とを比較して一致した場合に、対応する印刷設定情報を取得することを特徴とする。
【００１１】
また、請求項３に記載の発明は、請求項１または請求項２に記載の印刷設定制御装置において、前記取得手段は、１ページ分の描画命令情報をページ毎に順次取得することを特徴とする。  
また、請求項４に記載の発明は、請求項１または請求項２に記載の印刷設定制御装置において、前記取得手段は、指定されたページについて描画命令情報を取得することを特徴とする。
【００１２】
また、請求項５に記載の発明は、請求項１から請求項４のいずれかに記載の印刷設定制御装置において、前記描画命令情報に対応する印刷設定情報がない場合、新規に印刷設定情報の入力を受け、入力された印刷設定情報と前記描画命令情報とを関連付け前記記憶部に登録することを特徴とする。  
また、請求項６に記載の発明は、請求項１から請求項５のいずれかに記載の印刷設定制御装置において、前記記憶手段は、前記取得手段で取得した描画命令情報を記憶する場合、前記比較手段による比較で一致した描画命令情報のみを記憶することを特徴とする。  
【００１３】
また、請求項７に記載の発明は、画像形成装置に対する印刷設定を制御する印刷設定制御装置において、描画命令情報を取得する取得手段と、前記取得手段で取得した描画命令情報を記憶する記憶手段と、前記記憶手段に記憶された描画命令情報と前記取得手段で別に取得した描画命令情報とを比較する比較手段と、前記比較手段で一致した描画命令情報をイメージ化するイメージ化手段と、前記イメージ化されたイメージ情報に対応する印刷設定情報を取得する印刷設定情報取得手段とを備えることを特徴とする。
【００１４】
また、請求項８に記載の発明は、コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御方法であって、前記コンピュータに、描画命令情報を取得するステップと、前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、前記比較するステップで一致した描画命令情報に対応する印刷設定情報を取得するステップとを実行させることを特徴とする。
【００１５】
また、請求項９に記載の発明は、コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御方法であって、前記コンピュータに、描画命令情報を取得するステップと、前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、前記比較するステップで一致した描画命令情報をイメージ化するステップと、前記イメージ化されたイメージ情報に対応する印刷設定情報を取得するステップとを実行させることを特徴とする。
【００１６】
また、請求項１０に記載の発明は、コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御プログラムであって、描画命令情報を取得するステップと、前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、前記比較するステップで一致した描画命令情報に対応する印刷設定情報を取得するステップとを備えることを特徴とする。
【００１７】
また、請求項１１に記載の発明は、コンピュータ制御により自動で印刷設定を行う印刷設定制御装置の制御プログラムであって、描画命令情報を取得するステップと、前記取得するステップで取得した描画命令情報を記憶手段に記憶させるステップと、前記記憶させるステップで記憶された描画命令情報と前記取得するステップで別に取得した描画命令情報とを比較するステップと、前記比較するステップで一致した描画命令情報をイメージ化するステップと、前記イメージ化されたイメージ情報に対応する印刷設定情報を取得するステップとを備えることを特徴とする。
【発明の効果】
【００１８】
本発明によれば、共通する描画命令情報に対応する印刷設定情報を自動的に取得するので、印刷実行時に、ユーザに印刷条件を設定させるためのユーザインターフェースを一度も開くことなく、取得した印刷設定情報を自動で適用することで、ユーザの操作の負担を大幅に軽減することができる。すなわち、ユーザは、印刷する度に印刷条件を設定するためのＵＩを開き印刷条件を設定する、という煩わしい操作をすることなく、自動で必要な印刷条件を適用し印刷することができる。したがって、ユーザは、印刷指示画面から印刷設定のＵＩを一度も開くことなく、ただ印刷実行するだけでよいため、前述した課題を解消することができる。
【発明を実施するための最良の形態】
【００１９】
[第１の実施の形態］
以下、図面を参照して、本発明の実施形態を詳細に説明する。  
図１は、本発明を適用可能な印刷システムの構成例を示すブロック図である。なお、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ、ＷＡＮ等のネットワークを介して接続され処理が行われるシステムであっても本発明を適用することができる。すなわち、本実施形態にて示す各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００２０】
図１において、３０００はホストコンピュータであり、ＲＯＭ１０３あるいは外部メモリ１１１には、ＣＰＵ１０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下ＯＳ）や、各サーバあるいは各ＰＣの実行する機能を実現するために必要な後述の各種プログラム等が記憶されている。本実施形態で使用するＯＳは、例えばウィンドウズ（登録商標）ＸＰ（マイクロソフト（登録商標）社製）を想定するが、これに限るものではない。ＲＡＭ１０２は、ＣＰＵ１０１の主メモリ、ワークエリア等として機能する。ＣＰＵ１０１は、処理の実行に際して必要なプログラム等をＲＡＭ１０２にロードして、このプログラムを実行することで各種動作を実現するものである。
【００２１】
また、入力コントローラ（入力Ｃ）１０５は、キーボード（ＫＢ）１０９や不図示のマウス等のポインティングデバイスからの入力を制御する。ビデオコントローラ（ＶＣ）１０６は、ＣＲＴディスプレイ（ＣＲＴ）１１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイ等でも構わない。これらは必要に応じて管理者が使用するものである。
【００２２】
メモリコントローラ（ＭＣ）１０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）あるいはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ１１１へのアクセスを制御する。
【００２３】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）１０８は、ネットワークを介して、外部機器と接続し通信を行うものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信やデータ転送経路１２１を介したプリンタ１５００との間でのデータ送受信等を可能とする。さらに、外部メモリ１１１に記憶される各種プログラムやデータを、ネットワークを介して取得することも可能とする。  
なお、ＣＰＵ１０１は、例えばＲＡＭ１０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ１１０上での表示を可能としている。また、ＣＰＵ１０１は、ＣＲＴ１１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２４】
プリンタ１５００において、プリンタＣＰＵ１１２は、ＲＯＭ１１３ｂのプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１１４に記憶された制御プログラム等に基づいてシステムバス１１５に接続される印刷部（プリンタエンジン）１１７に出力情報としての画像信号を出力する。また、ＲＯＭ１１３ｂのプログラムＲＯＭには、ＣＰＵ１１２の制御プログラム等が記憶される。ＲＯＭ１１３ａのフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ＲＯＭ１１３ｃのデータ用ＲＯＭにはハードディスク等の外部メモリ１１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等も記憶される。
【００２５】
ＣＰＵ１１２は、入力部１１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ１５００内の情報等をホストコンピュータ３０００に通知可能に構成されている。ＲＡＭ１１９はＣＰＵ１１２の主メモリであり、ワークエリア等として機能する。ＲＡＭ１１９は、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
【００２６】
なお、ＲＡＭ１１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ（Ｎｏｎ  Ｖｏｌａｔｉｌｅ  ＲＡＭ）等用にも用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１１４は、メモリコントローラ（ＭＣ）１２０によりアクセスを制御される。外部メモリ１１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、１１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００２７】
また前述した外部メモリは１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶する様にしてもよい。
【００２８】
また、本実施形態では、プリンタ１５００がサポートするページ記述言語（以下、ＰＤＬ）が例えば、ＬＢＰ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ（キヤノン（登録商標）社製、以下ＬＩＰＳ）といった比較的に高度なＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）であると想定しているが、これに限るものではない。
【００２９】
また、本発明を実現するための印刷機器制御プログラム（以下、プリンタドライバ）は外部メモリ１１１に記録されており、必要に応じてＲＡＭ１０２にロードされることによりＣＰＵ１０１によって実行されるものである。さらに、本発明に係わるプリンタドライバが用いる定義ファイル及び各種情報テーブルも外部メモリ１１１に格納されており、これらについての詳細な説明は後述する。
【００３０】
図２は、図１に示したホストコンピュータ３０００からプリンタ１５００に印刷ジョブデータを送信する際の流れを示した主要な機能ブロック図である。
【００３１】
ホストコンピュータ３０００におけるアプリケーションプログラム（以下、アプリケーション）２０１、グラフィックエンジン２０２、プリンタドライバ２０３及びプリントサブシステム２０４は、それぞれ図１に示した外部メモリ１１１に保存されたファイルとして存在し、実行される際に、ＯＳやそのモジュールを利用するモジュールによってＲＡＭ１０２にロードされ実行されるプログラムモジュールである。  
なお、アプリケーション２０１及びプリンタドライバ２０３は、外部メモリ１１１のＦＤや不図示のＣＤ−ＲＯＭあるいは後述するネットワークを経由して外部メモリ１１１のハードディスク（ＨＤ）に追加可能になっている。
【００３２】
外部メモリ１１１に保存されているアプリケーション２０１は、ＣＰＵ１０１によってＲＡＭ１０２にロードされて実行される。このアプリケーション２０１からプリンタ１５００に対して印刷を行わせる際には、同様にＣＰＵ１０１によってＲＡＭ１０２にロードされて実行されるグラフィックエンジン２０２を利用して出力（描画）を行う。
【００３３】
グラフィックエンジン２０２は、印刷装置毎に用意されたプリンタドライバ２０３を起動する（これにより、プリンタドライバ２０３は、ＣＰＵ１０１によって外部メモリ１１１からＲＡＭ１０２にロードさせて実行される）。グラフィックエンジン２０２は、このプリンタドライバ２０３を用いて、アプリケーション２０１の出力をＰＤＬによるプリンタ制御命令に変換する。
【００３４】
プリンタドライバ２０３により変換されたプリンタ制御コマンドは、プリントサブシステム２０４を経て通信Ｉ／Ｆコントローラ１０８経由でプリンタ１５００に出力される仕組みとなっている。  
なお、このプリントサブシステム２０４は、ＯＳによって起動されて、ＣＰＵ１０１によって外部メモリ１１１からＲＡＭ１０２にロードされて実行されるものであり、印刷ジョブのスケジューリング、プリンタとのホストコンピュータと接続制御やプリンタのステータスの管理を行っている。
【００３５】
なお、プリンタドライバ２０３は、前述した、アプリケーション２０１から指示された印字や描画命令の出力に対してプリンタ制御コマンドを生成し、プリント出力に反映されるようプリンタに指示するだけでなく、プリンタドライバ２０３やプリンタ１５００本体が持つ機能を制御するための設定を行う機能（以下、ユーザインタフェース）と、その設定を記憶する機能、プリンタドライバ２０３やプリンタ１５００本体が持つ能力をアプリケーションやＯＳに情報提供する機能、上記ユーザインタフェースで設定された機能がプリンタの有する機能である場合にプリンタ制御命令を生成する機能、また、ユーザインタフェースで設定された機能がプリンタドライバ独自で行う機能の場合にその機能を実現する機能等を有する。
【００３６】
図３は、図１に示したホストコンピュータ３０００をクライアントおよびサーバ用途に夫々使用し、プリンタ１５００を接続した印刷システムの一例を示すシステム構成図である。  
図３において、３０１はネットワークであり、複数のホストコンピュータ（クライアントコンピュータ）３０００、プリンタ１５００、プリントサーバコンピュータ４０００が接続されている。この場合、ホストコンピュータ３０００の通信Ｉ／Ｆコントローラ１０８は、ネットワークインタフェースカード（ＮＩＣ）の機能を有するものとする。
【００３７】
プリンタ１５００は、セントロニクスやＵＳＢ等のローカルインタフェース３０２を介してプリントサーバコンピュータ４０００と接続され、このプリントサーバ４０００を介してネットワーク３０００に接続される形態であっても、ネットワーク３０１に直接接続される形態であってもよい。なお、ネットワーク３０１に直接接続されているプリンタ１５００の入力部１１８は、ネットワークインタフェースカード（ＮＩＣ）の機能を有するものとする。
【００３８】
上記プリントサーバコンピュータ４０００を介してネットワーク３０１に接続されるプリンタ１５００に、各クライアントコンピュータ３０００から印刷ジョブを送信する場合、まず各クライアントコンピュータ３０００は、プリントサブシステム２０４を介して、プリントサーバコンピュータ４０００へ印刷ジョブを送信する。そして、プリントサーバコンピュータ４０００は、各クライアントコンピュータ３０００から送信されてきた印刷ジョブを、不図示のプリントサーバコンピュータ４０００上のプリントサブシステムを介して、プリンタ１５００へ送信する。これにより、各クライアントコンピュータ３０００は、プリントサーバコンピュータ４０００を介して印刷ジョブをプリンタ１５００へ送信することができる。
【００３９】
ネットワーク３０１に直接接続されるプリンタ１５００に、各クライアントコンピュータ３０００から印刷ジョブを送信する場合は、各クライアントコンピュータ３０００は、プリントサブシステム２０４を介して、ネットワーク３０１に直接接続されるプリンタ１５００へ印刷ジョブを送信する。
【００４０】
次に、図４のステータス図を参照し、本発明を適用するのに好適なプリンタドライバの基本的な処理の流れについて説明する。  
図４は、本発明の印刷設定制御装置によって印刷を行う場合の基本的な処理の流れを示すステータス図であり、特に、図２に示したアプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３の処理に対応する。なお、図２と同一のものには同一の符号を付してある。
【００４１】
図２に示すように、アプリケーション２０１は、プリンタドライバ２０３と直接通知やコマンドのやり取りを行うのではなく、ＯＳの持つグラフィックスエンジン２０２を介して行うため、アプリケーション２０１自体は、実際にはグラフィックスエンジン２０２とやり取りを行う。すなわち、グラフィックエンジン２０２はアプリケーション２０１から指示を受け、プリンタドライバ２０３に対して指示を行う。
【００４２】
まず、アプリケーション２０１は、片面／両面設定や部数設定などの印刷のための設定を、ＲＡＭ１０２に確保されたメモリ領域を介してグラフィックエンジン２０２に通知する。プリンタドライバ２０３は、グラフィックエンジン２０２から、その印刷設定を基にプリンタドライバ２０３が印刷処理を行う上で必要な情報を格納するＲＡＭ１０２上に新たに確保されたメモリ領域の初期化要求を受信する（Ｓ４０１）。これにより、プリンタドライバ２０３は、そのプリンタドライバ２０３が印刷処理を行うために必要な情報（プリンタドライバ情報）を保持するメモリ領域を確保するとともに、印刷設定に従ってそのメモリ領域を初期化する。
【００４３】
プリンタドライバ２０３は、このプリンタドライバ２０３が参照する上記メモリ領域の初期化要求の受信により必要な処理を完了すると、ステップＳ４０１で受信した印刷設定に応じたプリンタドライバ２０３の印刷能力をグラフィックエンジン２０２に通知する。アプリケーション２０１は、グラフィックエンジン２０２より、最終的にプリンタ１５００に送信される印刷ジョブとその印刷ジョブに反映する印刷設定とを関連付けるために必要なハンドル値を取得する（Ｓ４０２）。
【００４４】
次に、アプリケーション２０１が、印刷の開始要求をグラフィックエンジン２０２に行うと、プリンタドライバ２０３は、グラフィックエンジン２０２から印刷開始要求を受信する（Ｓ４０３）。これにより、プリンタドライバ２０３は、ＰＤＬの生成処理を開始する。まず、プリンタドライバ２０３は、プリンタ１５００が印刷開始に必要なプリンタ命令を生成する。なお、このプリンタ１５００が印刷開始に必要なプリンタ命令を生成する処理は、最初のページ（１ページ目）の印刷処理が開始された時点（アプリケーションからの最初のページの描画指示を受信した時点）でもあってもよい。  
【００４５】
アプリケーション２０１は、文字やイメージ等の描画オブジェクトの描画を実現するための描画指示をグラフィックエンジン２０２に対して行う。プリンタドライバ２０３は、その描画指示をグラフィックエンジン２０２より受信する（Ｓ４０４）。これにより、プリンタドライバ２０３は、指定された描画オブジェクトや改ページ、さらには不図示の印刷設定を途中で変更するための要求などを反映したプリンタ制御命令を適宜生成し、プリンタ１５００へ出力する。なお、印刷するページ数はアプリケーション２０１からの指定に因る。
【００４６】
次に、アプリケーション２０１が、印刷の終了要求をグラフィックエンジン２０２に行うと、プリンタドライバ２０３は、グラフィックエンジン２０２より印刷終了要求を受信する（Ｓ４０５）。これにより、プリンタドライバ２０３は、プリンタ１５００が印刷終了に必要なプリンタ命令を生成し、ＰＤＬの生成処理を終了する。
【００４７】
次に、アプリケーション２０１は、ステップＳ４０２で取得したハンドル値の破棄要求をグラフィックエンジン２０２に通知し、プリンタドライバ２０３は、グラフィックエンジン２０２より、プリンタドライバ２０３が印刷処理を行う上で必要な情報を格納するメモリ領域にある情報（プリンタドライバ情報）の破棄要求を受信する。これにより、プリンタドライバ２０３は、上記プリンタドライバ情報の破棄処理を行う（Ｓ４０６）。
【００４８】
以上に示した、ステップＳ４０３〜Ｓ４０５の処理により、プリンタ１５００へ送信する１つのジョブが生成されることになる。
【００４９】
本実施形態の印刷システムは、図１および図２で示すプリンタとホストコンピュータからなる印刷システムに加えて、さらにアプリケーション２０１からの印刷データを一旦中間コードデータでスプールする構成を有する。このシステムにおいては、一旦スプールした中間コードデータの内容に対して加工を行うことができる。これによりアプリケーション２０１からの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
【００５０】
図５にグラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦中間コードからなるスプールファイル５０４を生成するべく拡張されたシステム構成を示す。図５で示すシステムにおいては、上記のようにスプールファイル５０４の内容に対して加工を行うことができる。なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供するウインドウ（ＵＩ）から設定を行い、プリンタドライバ２０３が、その設定内容をＲＡＭ１０２上あるいは外部メモリ１１１上に保管する。
【００５１】
以下、図５について、その詳細を説明する。  
同図に示すように、この拡張した処理方式では、グラフィックエンジン２０２からの印刷命令であるＤＤＩ関数をディスパッチャ５０１が受け取る。ディスパッチャ５０１がグラフィックエンジン２０２から受け取った印刷命令（ＤＤＩ関数）が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令（ＧＤＩ関数）に基づくものである場合には、ディスパッチャ５０１は外部メモリ１１１に格納されている内部スプール処理モジュールであるスプーラ５０３をＲＡＭ１０２にロードし、通常の印字データ作成処理５０７ではなくスプーラ５０３へ印刷命令（ＤＤＩ関数）を送付する。
【００５２】
スプーラ５０３は受け取った印刷命令を解析し、ページ単位に中間コードに変換してスプールファイル５０４に出力する。このページ単位に格納されている中間コードのスプールファイルをページ描画ファイル（ＰＤＦ：Ｐａｇｅ Ｄｅｓｃｒｉｐｔｉｏｎ Ｆｉｌｅ）と呼ぶ。また、スプーラ５０３は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定（製本印刷、Ｎｕｐ、両面、ステイプル、カラー／モノクロ指定等）をプリンタドライバ２０３から取得してジョブ単位のファイルとしてスプールファイル５０４に保存する。
【００５３】
この時ジョブ単位に格納されている設定ファイルをジョブ設定ファイル（簡略してＳＤＦ：Ｓｐｏｏｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｆｉｌｅと呼ぶこともある）と呼ぶ。このジョブ設定ファイルについては後述する。なお、スプールファイル５０４は外部メモリ１１１上にファイルとして生成するが、ＲＡＭ１０２上に生成してもよい。さらにスプーラ５０３は、外部メモリ１１１に格納されているスプールファイルマネージャ５０５をＲＡＭ１０２にロードし、スプールファイルマネージャ５０５に対してスプールファイル５０４の生成状況を通知する。その後、スプールファイルマネージャ５０５は、スプールファイル５０４に保存された印刷データに関する加工設定の内容に従って印刷を行えるか判断する。
【００５４】
スプールファイルマネージャ５０５がグラフィックエンジン２０２を利用して印刷を行えると判断すると、外部メモリ１１１に格納されているデスプーラ５０６をＲＡＭ１０２にロードし、デスプーラ５０６に対して、スプールファイル５０４に記述された中間コードのページ描画ファイルの印刷処理を行うように指示する。  
デスプーラ５０６はスプールファイル５０４に含まれる中間コードのページ描画ファイルをスプールファイル５０４に含まれる加工設定情報を含むジョブ設定ファイルに従って加工し、ＧＤＩ関数を再生成して、もう一度グラフィックエンジン２０２経由でＧＤＩ関数を出力する。
【００５５】
一方、ディスパッチャ５０１がグラフィックエンジン２０２から受け取った印刷命令（ＤＤＩ関数）が、デスプーラ５０６からグラフィックエンジン２０２へ発行された印刷命令（ＧＤＩ関数）に基づいたものである場合には、ディスパッチャ５０１はスプーラ１１０３ではなく、プリンタドライバの通常の印字データ作成処理５０７に印刷命令を送る。プリンタドライバ２０３は、グラフィックエンジン２０２から取得したＤＤＩ関数に基づいてＰＤＬ等からなるプリンタ制御コマンドを生成し、プリントサブシステム２０４経由でプリンタ１５００に出力する。
【００５６】
さて、これまでの記述で図１〜図５を参照し本実施形態に好適な動作環境或いはプリンタドライバ２０３の全体的な処理内容を説明したが、これより本実施形態を詳述する。  
本実施形態における処理は、プリンタドライバ２０３が、グラフィックエンジン２０２から印刷開始要求を受け付けた際（Ｓ４０３）に実行される。この処理全体を示したフローチャートが図６である。図７は、図６のＳ６０３の、また図８は、図６のＳ６１４の詳細処理の一例を示したものである。
【００５７】
図９の９０２は、外部メモリ１１１に登録されているテンプレートリストの概念図を示しており、９０１はドキュメントの印刷データの概念図を示したものである。なお、図１２の１２０１に、図９の９０２の各テンプレートが外部メモリ１１１に記憶される際のメモリイメージを示している。記憶の際にはテンプレートを識別するためのテンプレートＮＯ（番号）と予め登録された描画コマンドまたはテンプレート情報として抽出された描画コマンド群、そのテンプレートにより適用される印刷設定が記憶してある。すなわち、これらの組の一群がテンプレートリストを成している。
【００５８】
図１０の１００１は、ドキュメントに使用される定形テンプレートの一例を示したものであり、図９に示した「テンプレート」の印刷イメージを示したものでもある。市場ニーズでは、例えば図１０の１００１に示すようなテンプレートで仕様書を作成し、ファイリングする際には必ず図１３に示すように４ページ／枚（４ｉｎ１）かつ両面印刷で出力する、といった運用形態が存在する。ただし、テンプレート情報はＰＤＬにおいて、実際には描画コマンドの集合体でしかない。従ってここで言う「テンプレート情報」とは、描画コマンドの集合体を指し、図９に示すテンプレートも同様であって、その描画コマンド（図１０の１００２）を出力したものの一例が図１０の１００１ということを意味している。
【００５９】
ここで、図６を参照し、本実施形態を詳述する。  
プリンタドライバ２０３がグラフィックスエンジン２０２から印刷開始要求を受け付けると、プリンタドライバ２０３は受信した印刷設定のうち、図１１に示したコントロールに対応する値（１１０１）をＲＡＭ１０２から読み出し、本発明の自動印刷設定付加機能を適用するかどうかを判断する。この時、本機能を使用することを示す値が設定されていなかった場合は、プリンタドライバ２０３が印刷開始要求を受け付けた際の処理を変更することなくそのまま通常の印刷を実行する。一方、設定されていた場合にはＳ６０２へ進む。  
【００６０】
Ｓ６０２ではドキュメントが複数ページに及ぶデータかどうかを判別する。後述するが、２ページ以上の場合にはドキュメント中から各ページの描画コマンドを比較し、テンプレートを抽出するステップＳ６０３へと進み、１ページのデータの場合で比較ができない場合は、直接外部メモリ１１１に登録済みのテンプレートリストと比較するステップＳ６０４に分岐する。
【００６１】
外部メモリ１１１に登録済みのテンプレートリスト（図１２の１２０１に示すような形態で保持されている）にＳ６０４で抽出した描画コマンドと一致するテンプレートがあった場合（Ｓ６０５）、一致したテンプレート情報に関連付けられた印刷設定を読み出し、これを適用（Ｓ６１３）して、印刷を開始させる。一方、一致しなかった場合にはそのまま通常の印刷を実行させて終了する。なお、Ｓ６０４では、外部メモリ１１１に登録されている図９の９０２のコマンドと、印刷するドキュメントのコマンドを比較する。
【００６２】
ドキュメントが複数ページデータだった場合で、テンプレート情報を抽出できなかった場合は（Ｓ６０６）その旨ユーザに通知（Ｓ６０７）する。このままだと初期設定で出力されてしまうため、ユーザに印刷条件を設定する機会を与える。Ｓ６０９にて印刷設定をする場合はその場でプリンタドライバＵＩを提供し、ユーザに設定をさせる（Ｓ６１０）が、しない場合には初期設定のまま（Ｓ６１１）出力処理に移る。
【００６３】
一方、テンプレート情報が抽出できた場合は（Ｓ６０６）、外部メモリ１１１から登録済みのテンプレートリストを読み込み（Ｓ６１５）、抽出されたテンプレート情報が読み込んだテンプレートの描画コマンドと一致するかどうかを比較するステップ（Ｓ６１２）へ進む。一致した場合は一致したテンプレート情報に関連付けられた印刷設定を読み出し、これを適用（Ｓ６１３）して、印刷を開始させる。
【００６４】
抽出されたテンプレート情報が読み込んだテンプレートの描画コマンドと一致するか否かは、各描画コマンドの種類とそのコマンドが描画する領域のそれぞれを比較し、描画コマンドの種類（例えば、線を描かせるＬｉｎｅＴｏや矩形を描かせるＲｅｃｔａｎｇｌｅなど）と描画領域（例えば、座標値）がともに一致した場合に、テンプレート情報の描画コマンドの一致とみなす。テンプレート情報に含まれる描画コマンド全てが前述の方法で一致した場合、一致したテンプレートを適用する。
【００６５】
ＬｉｎｅＴｏ、Ｒｅｃｔａｎｇｌｅなどで線や矩形を描画する場合、線の太さ、線の種類を加味して比較してもよいし、ＴｅｘｔＯｕｔなどによるテキストの描画では、文字列のほかフォント情報・色情報・文字サイズ情報・文字の太さ情報などを加味して比較してもよい。なお、各種比較情報は描画コマンドのパラメータとして持っていなくてもよく、描画コマンドをグラフィックエンジン２０２より受け取る際に引き渡される情報であってもよい。また、プリンタドライバ２０３でプリンタ用の描画コマンドを生成する際に使用する情報であってもよい。また、グラフィックデータを描画する場合も、それに関する情報を元に比較するように構成してもよい。
【００６６】
テンプレート情報は抽出できているものの、登録済みのテンプレートリストの中に描画コマンド群が一致するテンプレートがなかった場合には、後述するように、抽出したテンプレート情報を新規に保存し、印刷条件の設定（印刷設定）と関連付けを行って登録する処理（Ｓ６１４）を行う。なお、誤差を考慮して、一定の範囲内（例えば、座標が＋−１０以内）であれば同じコマンドとみなすように構成してもよい。
【００６７】
図７の各ステップはテンプレート情報抽出処理Ｓ６０３の詳細な処理の一例である。  
Ｓ７０１は、図１１の１１０１〜１１０４に示したコントロールに対応する値をＲＡＭ１０２から取得し、Ｓ７０２は、テンプレート情報抽出処理を適用するページ範囲を決定するステップである。図１１に示すコントロールで「１ページ目と２ページ目から抽出する」（１１０２）が選択されていた場合には、開始ページが第１ページ、終了ページが第２ページとなり、「表紙と裏表紙を除いた全ページから抽出する」（１１０３）が選択されていた場合には、開始ページが第２ページ、終了ページが第Ｎ−１ページとなる。
【００６８】
同様に「全ページから抽出する」（１１０４）が選択されていた場合は、開始ページが第１ページ、終了ページが第Ｎページとなるが、任意にページを指定するように構成することもできる。その際には、開始ページと終了ページ以外に、指定しないページを記憶しておき、指定されなかったページがＳ７０３〜Ｓ７１０の処理をされないようにする。なお、本実施形態では、前述した条件のページ範囲を処理適用の前提とするが、これに限るものではなく、用途や目的に応じて、様々な構成や内容で構成してもよい。
【００６９】
Ｓ７０３〜Ｓ７１０は実際に描画コマンドを解析してテンプレートを抽出する処理部である。Ｓ７１０はループ処理の終了条件を示す。Ｓ７０３は開始ページの描画コマンドを抽出する処理であり、このときテキスト以外の描画コマンドが抽出できた場合（Ｓ７０４）に、抽出結果を外部メモリ１１１にテンプレート情報（以後、ＲＥＳＵＬＴ）として記録する（Ｓ７０５）。
【００７０】
Ｓ７０４は、描画コマンドがテキストコマンドのみの場合はドキュメントにテンプレートが適用されている可能性が低い（すなわち、該当するテンプレートがない）という推測のもとの判断である。これは描画コマンドからテンプレート情報を抽出する処理において、よりよい動作パフォーマンスを得ることを目的としているが、これに限るものではなく、用途や目的に応じて、様々な構成や内容でパフォーマンス向上を図る構成にしてもよい。
【００７１】
Ｓ７０６では次のページの描画コマンドを抽出し、外部メモリ１１１のＲＥＳＵＬＴに記憶されている描画コマンドと比較処理を行う（Ｓ７０７）。比較した結果、一致した部分だけをＲＥＳＵＬＴに上書き（Ｓ７０９）し、これを終了条件である最終ページまで繰り返すと（Ｓ７１０）、ＲＥＳＵＬＴにテンプレート情報が残ることになる。そのループ処理の過程において、一致する部分がなかった場合はその時点で処理は終了される（Ｓ７０８）。
【００７２】
次に図８のフローチャートを参照して、Ｓ６１４の詳細の処理の一例を説明する。  
Ｓ８０１〜Ｓ８０８は、ドキュメント中からテンプレート情報は抽出できたものの、登録済みのテンプレートリストの中に描画コマンド群が一致するテンプレートがなかった場合の処理である。この場合は、まずＳ８０１にてその旨をユーザに通知する。続いて印刷条件の設定を行う機会をユーザに与え（Ｓ８０３）、印刷条件の設定がなされない場合には特に処理は行わず初期設定のまま（Ｓ８０５）印刷開始処理へと移行する。
【００７３】
印刷設定を行う場合は、ユーザにＵＩを提供して設定させ、ＲＡＭ１０２などの記憶部から印刷設定情報を取得する（Ｓ８０４）。その後設定した印刷条件と抽出したテンプレート情報（ＲＥＳＵＬＴ）を関連付けて外部メモリ１１１のテンプレートリストに新規追加登録を行うかどうかを問い合わせる（Ｓ８０６）。新規追加登録を行う場合は抽出したテンプレート情報と設定された印刷条件を関連付けし、外部メモリ１１１に保持しているテンプレートリスト（図９の９０２参照）に追加で記憶させる（Ｓ８０８）。当然、新規追加登録を行わない場合は設定された印刷条件を適用し（Ｓ８０７）、印刷開始処理へと移行するのみである。
【００７４】
尚、本実施の形態では描画コマンドはＲＡＭ１０２より読み出し、抽出するものとするが、これに限定されることなく、外部メモリ１１１から読み出し、抽出することも可能である。
【００７５】
[第２の実施の形態]
上述の第１の実施の形態では、描画コマンドの集合体のリストが外部メモリ１１１にテンプレートリストとして記憶されており、上記テンプレートリストの中のテンプレートに含まれる描画コマンドとドキュメントから抽出した描画コマンド（テンプレート情報）を比較することでテンプレートの検索を行った。本第２の実施の形態ではこの描画コマンドをビットマップ等のイメージデータに変換処理（イメージ化）を施し、イメージデータファイルとしてテンプレートリストに保持する。同様にドキュメントから抽出した描画コマンド（テンプレート情報）もイメージデータファイルに変換して、イメージデータ同士を比較することによりテンプレートを決定する方式をとる。
【００７６】
第１の実施の形態ではテンプレート情報を図１０の１００２に示すように描画コマンドの形態で扱っていたが、本実施形態では図１０の１００１に示すようにイメージデータとして扱うことになる。イメージデータをバイナリデータで表現すると１００３のようなイメージになる。図１４は、ドキュメントから描画コマンド（１４０１）を抽出してイメージデータに変換し（１４０３）、テンプレートリストのイメージデータと比較して（１４０２）印刷設定を適用する処理（すなわち、図１５の詳細処理）の流れを示した概念図である。この時のマッチングの方法としてはイメージデータファイルのバイナリ比較を想定しているが、ＯＣＲ技術等で使用されている帳票認識技術を用いても実現可能であり、この場合は帳票認識技術における補正機能を利用することができる。
【００７７】
第２の実施形態は、図６のＳ６１２〜Ｓ６１５を図１５に、図８のＳ８０８を図１６に置き換えることで実現可能である（同じ処理はその説明を省略）。  
ここで、Ｓ１５０１は、Ｓ６０６の後に行われ、抽出した描画コマンドをイメージ化する。例えば、ビットマップに変換する。もちろん、イメージで比較できるものであれば別の形態であってもよい。なお、ドキュメントが１ページの場合の処理、すなわち図６のＳ６０４、Ｓ６０５の処理は、Ｓ１５０１〜Ｓ１５０３に置き換える。ただし、抽出描画コマンドは、１ページから抽出された描画コマンドである。
【００７８】
Ｓ１５０１によるイメージ化の後、Ｓ１５０２で、図１４の１４０２のように、外部メモリ１１１に登録済みのテンプレート中のテンプレートのイメージデータ（イメージ情報）を取得し、Ｓ１５０１のイメージデータとマッチング処理を行う。マッチングの方法については前述したとおりである。比較した結果（Ｓ１５０３）、イメージデータが一致した場合はＳ１５０４で当該イメージデータに関連付けられた印刷設定の適用処理を行い、一致しなかった場合はＳ１５０５の処理へ進む。
【００７９】
Ｓ１５０５は、ドキュメント中からテンプレート情報は抽出できたものの、登録済みのテンプレートリストの中に一致するイメージデータがなかった場合の処理である。これは、図８のＳ８０１〜Ｓ８０７と同じ処理であるので、説明は省略する。図１６のＳ１６０１はＳ８０６の後に行われ、イメージデータ形式のテンプレート情報と印刷設定を関連付けて外部メモリ１１１に記憶しているテンプレートリストに追加する。Ｓ８０８との違いは描画コマンド形式ではなく、イメージデータ形式で保存するということのみである。
【００８０】
なお、図１４の１４０２は外部メモリ１１１に登録されているテンプレートリストの概念図を示したものであり、１４０１はドキュメントの印刷データの概念図を示したものである。図１４の１４０２の各テンプレートが外部メモリ１１１に記憶される際のメモリイメージを図１２の１２０２に示す。記憶の際にはテンプレートを識別するためのテンプレートＮＯ（番号）とテンプレート情報として抽出された描画コマンドをイメージ化したデータ、そのテンプレートにより適用される印刷設定が記憶してある。
【００８１】
本実施形態により、アプリケーションやＯＳその他バージョンなどの違いにより使用される描画コマンドが違っても、テンプレートを検知することができる。  
また、イメージでの比較の場合、大きさがずれていても認識することができ、文章作成中に、ユーザが意図しない変更（テンプレート変更）が行われてしまっていてもそのテンプレートを検知することができ、関連付けられた印刷設定を適用することができる。  
以上、第２の実施の形態について説明した。
【００８２】
以上説明した通り、上述の各実施形態によれば、印刷実行時に、抽出したテンプレート情報に関連付けられた印刷条件の設定を読み出し、印刷条件設定のためのＵＩを一度も開くことなく、自動でこれを適用するので、ユーザは、操作のストレスを感じることなく望みの出力結果を得ることが可能となる。
【００８３】
なお、上記各実施形態では、クライアントコンピュータ３０００で行うように構成したが、テンプレート情報の記憶や印刷データのテンプレート情報抽出処理などをプリンタサーバコンピュータ４０００で行うように構成してもよい。この場合、これによりテンプレート及び印刷設定を共有することができ、また、処理を集中化できるためクライアントコンピュータ３０００の処理を軽減することができる。
【図面の簡単な説明】
【００８４】
【図１】本発明を適用可能な印刷システムの構成例を示すブロック図である。
【図２】図１に示したホストコンピュータからプリンタに印刷ジョブデータを送信する際の流れを示した主要な機能ブロック図である。
【図３】図１に示したホストコンピュータをクライアントおよびサーバ用途に夫々使用し、プリンタを接続した印刷システムの一例を示すシステム構成図である。
【図４】本発明の印刷設定制御装置によって印刷を行う場合の基本的な処理の流れを示すステータス図である。
【図５】図１に示したホストコンピュータからプリンタに印刷ジョブデータを送信する際の流れを示した主要な機能ブロック図であり、かつプリンタドライバの内部処理をより詳細に記したブロック図である。
【図６】印刷開始要求を受けてから、ドキュメントのテンプレート情報を抽出し、自動で印刷条件の設定を適用するまでのアルゴリズムを示したフローチャート図である。
【図７】印刷データの各ページの描画コマンドを比較し、テンプレート情報を抽出するまでのアルゴリズムを示したフローチャート図である。
【図８】登録済みのテンプレートリストにないテンプレート情報を抽出した場合に、新規に印刷設定と共に抽出したテンプレート情報をリストに追加登録するまでのアルゴリズムを示したフローチャート図である。
【図９】ドキュメントから抽出したテンプレート情報と一致するものを登録済みのテンプレートリストから検索し、それに対応する印刷条件の設定を読み出す様子を示す概念図である。
【図１０】ドキュメントに使用される「定形のテンプレート」の一例およびこれに対応する描画コマンド群、バイナリデータを示す図である。
【図１１】本発明の機能の使用可否を操作するコントロールを含むダイアログ例を示す図である。
【図１２】外部メモリ１１１に登録されるテンプレートリストの概念図である。
【図１３】テンプレートに適用する印刷条件の設定の一例（４ページ／枚）を示す図である。
【図１４】ドキュメントから抽出したテンプレート情報と一致するものを登録済みのテンプレートリスト（イメージデータの場合）から検索し、それに対応する印刷条件の設定を読み出す様子を示した概念図である。
【図１５】印刷データの各ページの描画コマンドを比較し、テンプレート情報を抽出するまでのアルゴリズムを示したフローチャート図である。
【図１６】登録済みのテンプレートリストにないテンプレート情報を抽出した場合に、新規に印刷設定と共に抽出したテンプレート情報をリストに追加登録するまでのアルゴリズムを示したフローチャート図である。
【符号の説明】
【００８５】
１５００…プリンタ
１５０１…操作部
３０００…ホストコンピュータ（クライアントコンピュータ）
４０００…プリントサーバコンピュータ
１０１…ＣＰＵ
１０２…ＲＡＭ
１０３…ＲＯＭ
１０４…システムバス
１０５…入力コントローラ（入力Ｃ）
１０６…ビデオコントローラ（ＶＣ）
１０７…メモリコントローラ（ＭＣ）
１０８…通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）
１０９…キーボード（ＫＢ）
１１０…ＣＲＴ（モニタ）
１１１…外部メモリ（ＨＤ、ＦＤ）
１１２…ＣＰＵ
１１３ａ…フォントＲＯＭ
１１３ｂ…プログラムＲＯＭ
１１３ｃ…データＲＯＭ
１１４…外部メモリ
１１５…システムバス
１１６…印刷部Ｉ／Ｆ
１１７…印刷部
１１８…入力部
１１９…ＲＡＭ
１２０…メモリコントローラ（ＭＣ）
１２１…データ転送経路
２０１…アプリケーション
２０２…グラフィックスエンジン
２０３…プリンタドライバ
２０４…プリントサブシステム
３０１…ネットワーク
３０２…ローカルインターフェイス
５０１…ディスパッチャ
５０２…内部スプール処理
５０３…スプーラ
５０４…スプールファイル
５０５…スプールフィルマネージャ
５０６…デスプーラ
５０７…印刷データ作成処理
【図１】
2006178747.tif 000003
【図２】
2006178747.tif 000004
【図３】
2006178747.tif 000005
【図４】
2006178747.tif 000006
【図５】
2006178747.tif 000007
【図６】
2006178747.tif 000008
【図７】
2006178747.tif 000009
【図８】
2006178747.tif 000010
【図９】
2006178747.tif 000011
【図１０】
2006178747.tif 000012
【図１１】
2006178747.tif 000013
【図１２】
2006178747.tif 000014
【図１３】
2006178747.tif 000015
【図１４】
2006178747.tif 000016
【図１５】
2006178747.tif 000017
【図１６】
2006178747.tif 000018