(57)【要約】【課題】所有する機能に関する情報を正確にアプリケーションに反映させることができるプリンタドライバおよび情報処理システムを提供すること。【解決手段】プリンタドライバ４は，複数の機能フィルタ５１，５２，５３を有し，フィルタ情報部４３にてその機能フィルタの一覧となる機能フィルタの構成情報が記憶されている。そして，アプリケーション７からの所有機能についての問合せの際，フィルタ機能問合せ部４５にて，その構成情報を基に各機能フィルタ５１〜５３に所有機能を問い合わせ，当該機能フィルタの機能情報を取得する。そして，応答部４１にて，フィルタ機能問合せ部４５が取得した機能フィルタの機能情報を出力する。【選択図】            図２
2008299507.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置を，
印刷データを加工処理する少なくとも１つの機能フィルタと，
所有する機能フィルタの一覧を記憶するフィルタ構成記憶手段と，
前記フィルタ構成記憶手段に記憶された機能フィルタの構成情報を基に，各機能フィルタに問い合わせて当該機能フィルタの機能情報を取得する機能情報取得手段と，
前記機能情報取得手段にて取得した機能フィルタの機能情報を出力する出力手段として機能させることを特徴とするプリンタドライバ。
【請求項２】
請求項１に記載するプリンタドライバにおいて，
前記機能情報取得手段にて取得した各機能フィルタの情報を統合する統合手段を備え，
前記出力手段は，前記統合手段にて統合された機能フィルタの情報を出力することを特徴とするプリンタドライバ。
【請求項３】
請求項１または請求項２に記載するプリンタドライバにおいて，
前記機能フィルタは，
印刷データの加工処理を実行するデータ加工手段と，
利用可能な機能情報を出力する機能情報出力手段とを備えることを特徴とするプリンタドライバ。
【請求項４】
請求項１から請求項３のいずれか１つに記載するプリンタドライバにおいて，
前記機能フィルタは，
他の機能フィルタの機能情報を取得し，取得した機能情報を基に自身が具備する機能が利用可能であるか否かを判断する複合機能判断手段を備えることを特徴とするプリンタドライバ。
【請求項５】
請求項４に記載するプリンタドライバにおいて，
前記複合機能判断手段は，機能情報を取得した他の機能フィルタの実行順と，自身の機能フィルタの実行順とを基に判断することを特徴とするプリンタドライバ。
【請求項６】
請求項４に記載するプリンタドライバにおいて，
印刷データの印刷順を並べ替える機能を具備する並べ替え機能フィルタと，複数ページの印刷データを１ページの印刷データに割り付ける機能を具備するマルチページ機能フィルタとを備え，
前記並べ替え機能フィルタの複合機能判断手段は，
（１）前記マルチページ機能フィルタが２イン１機能を具備すること，
（２）前記並べ替え機能フィルタが前記マルチページ機能フィルタよりも先に実行されること，
の２つの条件を満たす場合にはブックレット機能が利用可能であると判断することを特徴とするプリンタドライバ。
【請求項７】
請求項１から請求項６のいずれか１つに記載するプリンタドライバにおいて，
前記フィルタ構成記憶手段の記憶内容を変更するフィルタ構成変更手段を備えることを特徴とするプリンタドライバ。
【請求項８】
請求項１から請求項７のいずれか１つに記載するプリンタドライバにおいて，
基本設定を記憶する基本設定記憶手段を備え，
前記出力手段は，前記機能フィルタの情報とともに前記基本設定記憶手段に記憶された基本設定の情報を出力することを特徴とするプリンタドライバ。
【請求項９】
印刷データを加工処理する少なくとも１つの機能フィルタと，
所有する機能フィルタの一覧を記憶するフィルタ構成記憶部と，
前記フィルタ構成記憶部に記憶された機能フィルタの構成情報を基に，各機能フィルタに問い合わせて当該機能フィルタの機能情報を取得する機能情報取得部と，
前記機能情報取得部にて取得した機能フィルタの機能情報を出力する出力部とを備えることを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，プリンタドライバおよび情報処理システムに関する。さらに詳細には，印刷出力される印刷データを加工処理するプリンタドライバおよび情報処理システムに関するものである。
【背景技術】
【０００２】
従来から，プリンタの制御を行うプリンタドライバは，印刷データを加工する機能を有している。例えば，印刷される画像の並び順序を変更する並べ替え機能や，複数のページを１枚の用紙に印刷するマルチページ機能や，印刷される画像に透かし文字等の画像を付加して印刷するウォータマーク機能が知られている。
【０００３】
また，印刷機能を有するアプリケーションソフトウェア（以下，単に「アプリケーション」とする）には，プリンタドライバがどのような機能をサポートしているかを問い合わせるものがある。このようなアプリケーションは，プリンタドライバの機能情報を取得することによってアプリケーション自身が有するユーザインターフェースにその情報を反映することができる。換言すると，プリンタドライバは，アプリケーションからサポートしている機能を問い合わされた際に，自身のサポート可能な機能を応える機能を具備している。
【０００４】
また，印刷データを加工する機能の実行順序を指定できる印刷システムが開示されている（例えば，特許文献１）。つまり，各種の機能の組み合わせによっては，その実行順によって異なる画像が出力される。例えば，マルチページ機能（例えば２ｉｎ１），ウォータマーク機能の順に加工した印刷データと，ウォータマーク機能，マルチページ機能の順に加工した印刷データとでは，出力画像が異なる。そこで，加工処理の順序を指定可能にすることでユーザの意図通りの画像が得られるとしている。
【特許文献１】特開２００６−４８５３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら，前記した従来のプリンタドライバには，次のような問題があった。すなわち，プリンタドライバは，各種の加工処理を実行するモジュールを，プリンタドライバに対して追加したり削除したりすることが可能な「機能フィルタ」として備えている。そして，プリンタドライバが具備する機能は，機能フィルタの追加，削除，バージョンアップ等によって変化する。
【０００６】
特許文献１のプリンタドライバでは，プリンタドライバ自身が具備するユーザインターフェースに機能フィルタの構成の変化を反映させることが開示されている。しかし，アプリケーションからの問い合わせについては考慮されていない。つまり，アプリケーションに対しての応答は，機能フィルタの構成の変化に対応できず，一定となってしまうことが考えられる。
【０００７】
プリンタドライバからの応答が一定となると，機能フィルタを削除したことで処理できなくなった機能があるにもかかわらず，アプリケーションにはその機能が使用可能かのような情報を応えてしまう。そして，ユーザが当該アプリケーションを介してその機能を選択してしまうと，実際にはその機能は実行できないことから意図通りの印刷結果にならない。従って，ユーザの混乱を招くことになる。
【０００８】
また，新規に機能フィルタを追加したとしても，その情報がアプリケーションに伝わらない。そのため，アプリケーション自身が有するユーザインターフェースには新規の機能が反映されず，その機能が設定できない。
【０００９】
本発明は，前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは，所有する機能に関する情報を正確にアプリケーションに反映させることができるプリンタドライバおよび情報処理システムを提供することにある。
【課題を解決するための手段】
【００１０】
この課題の解決を目的としてなされた本発明のプリンタドライバは，情報処理装置を，印刷データを加工処理する少なくとも１つの機能フィルタと，所有する機能フィルタの一覧を記憶するフィルタ構成記憶手段と，フィルタ構成記憶手段に記憶された機能フィルタの構成情報を基に，各機能フィルタに問い合わせて当該機能フィルタの機能情報を取得する機能情報取得手段と，機能情報取得手段にて取得した機能フィルタの機能情報を出力する出力手段として機能させることを特徴としている。
【００１１】
本発明のプリンタドライバでは，少なくとも１つの機能フィルタを備え，フィルタ構成記憶手段にて当該機能フィルタ群の構成情報が記憶されている。そして，機能情報取得手段にて，その構成情報を基に各機能フィルタに所有機能を問い合わせ，当該機能フィルタの機能情報を取得する。そして，出力手段にて，取得した機能フィルタの機能情報を出力する。
【００１２】
すなわち，本発明のプリンタドライバの出力手段が機能フィルタの構成および機能情報を出力することで，アプリケーションは機能フィルタの機能情報を知ることができる。また，出力手段が機能情報を出力する際には，その都度，機能情報取得手段が機能フィルタの一覧を基にすべての機能フィルタに所有機能を問い合わせる。このことから，機能フィルタの構成が変化したとしても出力される情報は正確である。よって，アプリケーションは，プリンタドライバに問い合わせたときの正確な機能情報を知ることができる。
【００１３】
また，本発明のプリンタドライバは，機能情報取得手段にて取得した各機能フィルタの情報を統合する統合手段を備え，出力手段は，統合手段にて統合された機能フィルタの情報を出力することとするとよりよい。
【００１４】
すなわち，本発明のプリンタドライバは，複数の機能フィルタを所有する場合には，フィルタごとに機能情報が得られる。そこで，統合手段にて，各機能フィルタの情報を統合し，１つのデータとする。出力手段は，この統合された機能フィルタのデータを出力する。これにより，アプリケーションは，１つの出力データで複数の機能フィルタの機能情報を知ることができる。
【００１５】
また，本発明のプリンタドライバの機能フィルタは，印刷データの加工処理を実行するデータ加工手段と，利用可能な機能情報を出力する機能情報出力手段とを備えている。各機能フィルタの機能情報出力手段が，所有する機能に関する情報を出力することで，機能情報取得手段が各機能フィルタの機能情報を取得することができる。
【００１６】
また，本発明のプリンタドライバの機能フィルタは，他の機能フィルタの機能情報を取得し，取得した機能情報を基に自身が具備する機能が利用可能であるか否かを判断する複合機能判断手段を備えることとするとよりよい。
【００１７】
すなわち，機能フィルタが所有する機能の中には，ブックレット機能のように複数の機能フィルタによって実行するものや，実行順序によって実行が制限されるものがある。そこで，複合機能判断手段にて，他の機能フィルタの機能情報を取得し，所有する機能が実行可能であるか否かを機能フィルタ自身が判断する。これにより，機能フィルタが実行不可能な機能を応答することがなく，アプリケーションはより正確な情報を得ることができる。
【００１８】
例えば，本発明のプリンタドライバの複合機能判断手段は，機能フィルタの実行順序を取得し，機能情報を取得した他の機能フィルタの実行順と，自身の機能フィルタの実行順とを基に，所有する機能が実行可能であるか否かを判断する。
【００１９】
より具体的に，本発明のプリンタドライバでは，機能フィルタとして，印刷データの印刷順を並べ替える機能を具備する並べ替え機能フィルタと，複数ページの印刷データを１ページの印刷データに割り付ける機能を具備するマルチページ機能フィルタとを備え，並べ替え機能フィルタの複合機能判断手段は，次の２つの条件を満たす場合にはブックレット機能が利用可能であると判断する。
（１）マルチページ機能フィルタが２イン１機能を具備する。
（２）並べ替え機能フィルタがマルチページ機能フィルタよりも先に実行される。
【００２０】
また，本発明のプリンタドライバは，フィルタ構成記憶手段の記憶内容を変更するフィルタ構成変更手段を備えている。すなわち，フィルタ構成変更手段にて，フィルタ構成記憶手段の記憶内容を変更することが可能であり，システムのバージョンアップや機能フィルタのアドイン等によってフィルタ構成記憶手段の記憶内容が変更される。
【００２１】
本発明のプリンタドライバは，フィルタ構成変更手段にて，機能フィルタの構成の変更の度にフィルタ構成記憶手段の記憶内容を変更される。そして，機能の問合せの度にフィルタ構成記憶手段の記憶内容を参照することで，問合せ時点での正確な機能情報を出力できる。
【００２２】
また，本発明のプリンタドライバは，基本設定を記憶する基本設定記憶手段を備え，出力手段は，機能フィルタの情報とともに基本設定記憶手段に記憶された基本設定の情報を出力することとするとよりよい。ここでいう「基本設定」とは，機能フィルタを使って実現する機能以外の機能の設定であり，用紙サイズやトレイ設定等のプリンタドライバが所有する機能として変更や削除が生じないものをいう。
【００２３】
すなわち，本発明のプリンタドライバは，基本設定記憶手段にて，所定の機能の情報を出力手段の出力形式で記憶しておく。これにより，基本設定部分についてのデータ作成の手間が減り，アプリケーションへの応答が速い。
【００２４】
また，本発明は，印刷データを加工処理する少なくとも１つの機能フィルタと，所有する機能フィルタの一覧を記憶するフィルタ構成記憶部と，フィルタ構成記憶部に記憶された機能フィルタの構成情報を基に，各機能フィルタに問い合わせて当該機能フィルタの機能情報を取得する機能情報取得部と，機能情報取得部にて取得した機能フィルタの機能情報を出力する出力部とを備えることを特徴とする情報処理システムを含んでいる。
【発明の効果】
【００２５】
本発明によれば，所有する機能に関する情報を正確にアプリケーションに反映させることができるプリンタドライバおよび情報処理システムが実現している。
【発明を実施するための最良の形態】
【００２６】
以下，本発明にかかる画像形成装置を具体化した実施の形態について，添付図面を参照しつつ詳細に説明する。本形態は，パーソナルコンピュータ（以下，単に「ＰＣ」とする）にインストールされたプリンタドライバに本発明を適用したものである。
【００２７】
［プリントシステムの構成］
本形態のプリントシステム１００は，図１に示すように，画像形成装置としてのプリンタ２と，情報端末装置としてのＰＣ１とを備えている。プリントシステム１００では，ＰＣ１とプリンタ２とがＵＳＢケーブルを介して接続されている。なお，プリントシステム１００を構成するプリンタおよびＰＣは各１台に限るものではなく，それぞれ複数台接続してもよい。また，ＰＣ１とプリンタ２との接続は，ＵＳＢケーブルに限らず，その他のシリアル通信ケーブル，パラレル通信ケーブル，有線ＬＡＮケーブル，さらには無線ＬＡＮ等の無線通信経路とすることも可能である。
【００２８】
ＰＣ１は，各種処理を実行するＣＰＵ１１と，当該ＰＣ１の起動時にＣＰＵ１１が行う起動処理のプログラム（ＢＩＯＳ）等を記憶したＲＯＭ１２と，ＣＰＵ１１が各種処理を行う際に一時的な記憶領域として利用されるＲＡＭ１３と，各種のプログラムやデータを記憶したハードディスクドライブ（ＨＤＤ）１４とを有している。
【００２９】
また，ＰＣ１は，キーボードやマウス等からなる操作部１５と，液晶ディスプレイ等からなる表示部１６と，プリンタ２との間で信号のやりとりを行うプリンタポートインターフェース１７（本形態では，ＵＳＢインターフェース等）と，ＬＡＮ，インターネット等のネットワークを介して信号のやりとりを行うネットワークインターフェース１８とを有している。
【００３０】
さらに，ＰＣ１のＨＤＤ１４には，オペレーティングシステム（ＯＳ）や，画像データを編集可能なアプリケーション（例えば，文書作成ソフト，作図ソフト，表計算ソフト，写真データ編集ソフト等）や，プリンタ２に印刷データを送信するプリンタドライバが記憶されている。
【００３１】
プリンタ２は，各種処理を実行するＣＰＵ２１と，当該プリンタ２の起動時にＣＰＵ２１が行う起動処理のプログラム等を記憶したＲＯＭ２２と，ＣＰＵ２１が各種処理を行う際に一時的な記憶領域として利用されるＲＡＭ２３と，各種のプログラムやデータ等を記憶したハードディスクドライブ（ＨＤＤ）２４とを有している。
【００３２】
また，プリンタ２は，当該プリンタ２の筐体外部に配設された複数のボタンからなる操作部２５と，同じく筐体外部に配設された液晶表示パネル等からなる表示部２６と，ＰＣ１との間で信号のやりとりを行うプリンタポートインターフェース２７（本形態では，ＵＳＢインターフェース等）と，ＬＡＮ，インターネット等のネットワークを介して信号のやりとりを行うネットワークインターフェース２８とを有している。
【００３３】
さらに，プリンタ２は，記録媒体としての用紙やＯＨＰシート（以下，単に「用紙」とする）に画像を形成する印字部３０を有している。印字部３０は，電子写真方式，インクジェット方式，その他の一般的な画像形成方式を採用していればよい。また，カラー画像の形成が可能であっても，モノクロ画像専用であってもよい。
【００３４】
このような構成であるプリンタ２およびＰＣ１を備える本形態のプリントシステム１００では，ユーザがＰＣ１を操作し，ＰＣ１に組み込まれたアプリケーションを利用して文書，図，表，あるいは写真等の画像データを編集することが可能である。そして，ユーザの指示に従って，印刷データをプリンタ２に送信し，プリンタ２によって画像を出力することが可能である。
【００３５】
ＰＣ１に組み込まれたアプリケーションの一部は，印刷機能を備えており，この印刷機能によって文書データあるいは画像データ等の印刷ジョブがプリンタドライバに対して送られる。プリンタドライバは，アプリケーションからの印刷ジョブに応じ，文書データや画像データをプリンタ２で印刷するために必要な印刷データを作成する。
【００３６】
プリンタドライバが作成した印刷データは，プリンタポートインターフェース１７を経由してプリンタ２へと送信される。プリンタ２は，印刷データを受信することで印字部３０を稼働する。そして，印刷データに基づいて，ユーザが選択した用紙にユーザの所望の画像を形成する。
【００３７】
また，アプリケーションは，プリンタ２にて画像形成が可能な用紙としてあらかじめ設定されている用紙についての設定情報をプリンタ２用のプリンタドライバから取得する。そして，用紙の設定項目およびサイズ設定項目として登録する。例えば，設定項目の１つである「用紙サイズ」には，用紙サイズの種類となる「Ａ４」，「Ａ５」，「Ｂ５」，「ハガキ」等が登録される。さらに，サイズの設定項目として，寸法および印字の向きが登録される。そして，アプリケーションでは，ユーザの選択によって登録された設定情報が反映されたページ設定画面やプレビュー画面を提供する。
【００３８】
また，アプリケーションは，プリンタドライバの機能として提供可能な機能情報をプリンタドライバから取得する。プリンタドライバの機能としては，ウォータマーク，並べ替え，マルチページ等がある。また，機能ごとに設定する項目が異なる。例えば，ウォータマーク機能では，ウォータマークを「使用する」，「使用しない」の設定であったり，ウォータマークの色の種類となる「黒」，「灰色」，「赤」等の項目が設定される。
【００３９】
また，アプリケーションは，プリンタドライバから単に機能の設定内容を取得するだけではなく，それら機能の実行順序も取得する。機能の実行順序によってはプリント内容が異なることがあるためである。例えば，ウォータマークを実行した後にマルチページを実行したものと，マルチページを実行した後にウォータマークを実行したものとではプリント内容が異なる。つまり，アプリケーションでは，ユーザが選択した機能の設定が反映されたページ設定画面やプレビュー画面を提供することができる。
【００４０】
［プリンタドライバの構成］
続いて，プリンタ２用のプリンタドライバ４について説明する。プリンタ２用のプリンタドライバ４は，各種の機能を実行するソフトウェアモジュール（本形態では，ＤＬＬ）を「機能フィルタ」として備えている。機能フィルタは，バージョンアップやアドイン等を行うことにより，追加したり削除したりあるいは機能を拡張したりすることが可能である。
【００４１】
本形態のプリンタドライバ４は，図２に示すように，応答部４１（出力手段の一例）と，基本情報部４２（基本設定記憶手段の一例）と，フィルタ情報部４３（フィルタ構成記憶手段の一例）と，フィルタ変更部４４（フィルタ構成変更手段の一例）と，フィルタ機能問合せ部４５（機能情報取得手段の一例）と，結合部４６（統合手段の一例）と，各種の機能フィルタとを有し，ＰＣ１に組み込まれている。本形態では，機能フィルタとして，マルチページ用のマルチページフィルタ５１と，並べ替え用の並べ替えフィルタ５２と，ウォータマーク用のウォータマークフィルタ５３とを例示している。
【００４２】
応答部４１は，アプリケーション７からの要求を受け付けるとともに必要に応じて情報を送り返す機能を有している。本形態のプリントシステム１００としては，アプリケーション７からの機能情報の出力要求を受け付ける。そのため，応答部４１は，プリンタドライバ４自身が所有する機能を取得し，取得した情報をアプリケーション７に出力する。
【００４３】
基本情報部４２は，プリンタ２の基本機能情報を記憶する機能を有している。基本機能情報とは，機能フィルタを使って実現する機能以外の機能の情報であり，プリンタドライバ４が所有する機能として変更や削除が生じない情報である。主としてプリンタ２のハードウェアに関する情報が該当する。
【００４４】
基本情報機能としては，例えば，「用紙サイズ」，「用紙向き」，「入力トレイ」といった情報が記憶される。本形態では，ドライバの所有機能情報の記憶方法として，ＸＭＬファイルを適用する。なお，ＸＭＬ形式のファイルに限らず，例えばＨＴＭＬ形式やＣＳＶ形式のファイルであってもよい。図３は，基本機能情報を記憶した状態の，ドライバの所有機能情報の一例を示している。
【００４５】
フィルタ情報部４３は，プリンタドライバ４が所有する機能フィルタの構成情報を記憶する機能を有している。図４は，フィルタ情報部４３で管理するＸＭＬファイルの一例であり，所有する機能フィルタの一覧が記憶されている。
【００４６】
具体的には，フィルタの種類およびそのフィルタモジュールの参照先が記憶されている。すなわち，本形態では，「ウォータマーク」，「並べ替え」，「マルチページ」の各機能フィルタがその機能を実行するモジュール名とともに記憶されている。また，図４中のフィルタ構成の各機能フィルタの登録順がそのまま機能フィルタの実行順序を意味している。すなわち，図４のフィルタ情報によれば，プリンタドライバ４が「ウォータマーク」，「並べ替え」，「マルチページ」の順に実行することが記憶されている。なお，機能フィルタの構成情報の記憶方法としては，ＸＭＬ形式のファイルに限らず，例えばＨＴＭＬ形式やＣＳＶ形式のファイルであってもよい。
【００４７】
フィルタ変更部４４は，フィルタ情報部４３が所有する機能フィルタの構成情報を変更する機能を有している。本形態では，フィルタ情報部４３で管理するＸＭＬファイルを編集する。これにより，機能フィルタの実行順序の変更や，機能フィルタの追加および削除に対応することができる。
【００４８】
機能フィルタの構成の変更は，アプリケーション７が応答部４１を介して変更指示を送っても良いし，バージョンアップやアドインを行う際の組込み用プログラムが応答部４１を介して当該指示を送っても良い。あるいは，プリンタドライバ４が有するユーザインタフェースを介してユーザ自身が行ってもよい。
【００４９】
フィルタ機能問合せ部４５は，各機能フィルタ５１〜５３に機能情報を問い合わせ，各機能フィルタ５１〜５３が所有する機能の詳細を取得する機能を有している。フィルタ機能問合せ部４５では，あらかじめ各機能フィルタ５１〜５３に問い合わせる前に，フィルタ情報部４３に記憶されている機能フィルタの情報を応答部４１を介して取得する。そして，その機能フィルタの情報を基に各機能フィルタ５１〜５３に問い合わせる。
【００５０】
なお，フィルタ機能問合せ部４５が機能フィルタの情報を取得する手段としては，必ずしも応答部４１を介して当該情報が送られてくる必要はなく，フィルタ機能問合せ部４５自身が直接フィルタ情報部４３から取得してもよい。
【００５１】
結合部４６は，複数の機能フィルタの情報を結合して１つのデータを形成する機能を有している。本形態では，フィルタ機能問合せ部４５で取得される各機能フィルタ５１〜５３の情報および基本情報部４２に記憶されている情報を結合し，プリンタドライバ４が所有する機能フィルタの機能詳細一覧を作成する。そして，この機能フィルタの機能詳細一覧を，１つのＸＭＬファイルとして応答部４１へ出力する。
【００５２】
続いて，機能フィルタの構成について説明する。各機能フィルタ５１〜５３は，概ね同じ構成をしており，代表してウォータマークフィルタ５３の構成について説明する。ウォータマークフィルタ５３は，応答部５３１（機能情報出力手段の一例）と，実行部５３２（データ加工手段の一例）とを有している。なお，他の機能フィルタ５１，５２についても，それぞれ応答部５１１，５２１と実行部５１２，５２２とを有している。
【００５３】
応答部５３１は，フィルタ機能問合せ部４５あるいは他の機能フィルタ５１，５２からの要求を受け付けるとともに必要に応じて情報を送り返す機能を有している。また，応答部５３１は，機能フィルタの詳細情報を記憶している。記憶する詳細情報は，機能フィルタの種類によって異なる。ウォータマークフィルタ５３では，ウォータマークを使用するか否かの選択情報に加え，「ウォータマーク色」として設定可能な色の情報等が記憶される。
【００５４】
実行部５３２は，ウォータマークの処理として，印刷される画像に透かし文字等の画像を付加する処理が行われる。すなわち，当該機能フィルタが有する機能が設定内容に従って処理される。
【００５５】
なお，機能フィルタによっては，制約付きの機能を所有し，その機能が実行可能であるか否かを判断する判断部を有しているものがある。ここでいう「制約」とは，次のことを意味する。すなわち，機能フィルタの各機能では，その機能フィルタだけでは実行できないものがある。例えば，並べ替え機能とマルチページフィルタ５１の機能である２ｉｎ１機能とを合わせたブックレット機能や，マルチページフィルタ５１の機能とレイアウトフィルタ（図示せず）の機能とを合わせたコピー機能が該当する。しかも，機能フィルタの実行順序にも影響される。具体的には，ブックレット機能はページを並べ替えた後に２ｉｎ１を行う。そのため，並べ替え機能である並べ替えの後に，マルチページフィルタ５１の機能である２ｉｎ１を行わなければ成立しない。また，コピー機能は，レイアウトフィルタの処理の後に，マルチページフィルタの処理を行うと正しい結果が得られない。そのため，コピー機能はレイアウトフィルタの処理後にマルチページフィルタ５１の処理を行わなければ成立しない。このように，機能フィルタの機能には，他のフィルタの存在の有無や実行順といった制約付きの機能がある。
【００５６】
機能フィルタの機能のうち，制約付き機能以外の機能は制約無し機能となる。制約無し機能は，その機能フィルタ単独で実行可能な機能であり，他の機能との実行順に影響されない。
【００５７】
そのため，制約付き機能を所有する機能フィルタでは，当該制約付き機能が実行可能であるか否かを判断する判断部を有している。本形態では，並べ替えフィルタ５２が制約付き機能であるブックレット機能を所有している。そのため，並べ替えフィルタ５２は，ブックレット機能が実行可能であるか否かを判断する判断部５２３（複合機能判断手段の一例）を有している。
【００５８】
具体的に，並べ替えフィルタ５２の判断部５２３は，他の機能フィルタであるマルチページフィルタ５１およびウォータマークフィルタ５３の各応答部５１１，５３１に対して所有する機能を問い合わせる。そして，ブックレット機能が実行可能であるか否かを判断し，その結果を応答部５２１に出力する。
【００５９】
［プリンタドライバの動作］
［ドライバ応答処理］
プリンタドライバ４が所有機能を問い合わされたときに実行されるドライバ応答処理を説明する。本ドライバ応答処理では，主として応答部４１にてプリンタドライバ４の所有機能情報を作成し，作成した所有機能情報を問合せ元に応答する。以下，ドライバ応答処理を，図５のフローチャートを基に説明する。
【００６０】
まず，プリンタドライバ４の基本機能情報を取得する（Ｓ１０１）。すなわち，応答部４１が基本情報部４２から基本機能情報（図３参照）を取得する。取得した基本機能情報は，ドライバの所有機能情報としてＸＭＬ形式で記憶される。
【００６１】
次に，プリンタドライバ４が所有する機能フィルタの構成情報を取得する（Ｓ１０２）。すなわち，応答部４１がフィルタ情報部４３から機能フィルタの構成情報（図４参照）を取得する。この機能フィルタの構成情報には，機能フィルタ名およびその機能フィルタの参照先が記憶されており，応答部４１はこの構成情報を基にドライバが所有する機能フィルタ数，各機能フィルタ名，各機能フィルタの参照先，各機能フィルタの実行順序等を取得する。
【００６２】
次に，カウンタｉに１を代入する（Ｓ１０３）。そして，カウンタｉが機能フィルタ数より大きいか否かを判断する（Ｓ１０４）。すなわち，すべての機能フィルタに問い合わせたか否かを判断する。カウンタｉが機能フィルタ数より大きくない場合（Ｓ１０４：ＮＯ），すなわち問い合わせていない機能フィルタが存在する場合には，Ｓ１０５の処理に移行する。
【００６３】
Ｓ１０５の処理では，フィルタ機能問合せ部４５がｉ番目の機能フィルタの参照先を取得し，ｉ番目の機能フィルタに問い合わせる。そして，ｉ番目の機能フィルタの応答部からの応答を受け，ｉ番目の機能フィルタの所有機能情報を取得する。図６は，１番目の機能フィルタであるウォータマークフィルタ５３から取得される機能情報の一例を示している。
【００６４】
そして，取得した機能フィルタの所有機能情報を，ドライバの所有機能情報に追加する（Ｓ１０６）。すなわち，結合部４６が，フィルタ機能問合せ部４５にて取得した機能フィルタの所有機能情報を１つのドライバの所有機能情報として統合する。図７は，基本機能情報にウォータマークフィルタ情報を追加した所有機能情報の一例を示している。
【００６５】
その後，カウンタｉに１を加え（Ｓ１０７），Ｓ１０４の処理に戻る。このＳ１０４からＳ１０７までの処理を，カウンタｉが機能フィルタ数より大きくなる（Ｓ１０４：ＹＥＳ）まで繰り返す。すなわち，すべての機能フィルタを参照するまで繰り返す。その後，Ｓ１０８の処理に移行する。図８は，すべての機能フィルタ（本形態ではウォータマーク，並べ替え，マルチページの各機能フィルタ）から所有機能情報を取得した後（Ｓ１０４：ＹＥＳ）の，所有機能情報を示している。
【００６６】
Ｓ１０８の処理では，ドライバの所有機能情報を応答する（Ｓ１０８）。すなわち，応答部４１は，作成した所有機能情報をアプリケーション７に応答する。Ｓ１０８の処理の後，本ドライバ応答処理が終了する。
【００６７】
アプリケーション７は，プリンタドライバ４から送られるドライバの所有機能情報を基に，プリンタドライバ４が所有する機能の一覧およびその詳細を知ることができる。プリンタドライバ４からの応答は，機能フィルタの構成が変わったとしても，アプリケーション７からの問合せの度にフィルタ機能問合せ部４５がすべての機能フィルタに問い合わせることから，機能フィルタの構成の変化に追随することができる。そのため，未知の機能フィルタが追加されたとしても，プリンタドライバ４はその追加機能に関する情報を追加して応答することができる。よって，アプリケーション７は，機能フィルタの構成に変化があった後でプリンタドライバ４に機能を問い合わせたとしても，正確な情報を得ることができる。
【００６８】
［フィルタ応答処理］
機能フィルタが所有機能を問い合わされたときに実行されるフィルタ応答処理を説明する。各機能フィルタ５１〜５３は，概ね同じ手順をしており，代表して並べ替えフィルタ５２の応答処理について説明する。本フィルタ応答処理では，主として応答部５３１にて機能フィルタの所有機能情報を作成し，その機能フィルタの所有機能情報を応答する。以下，フィルタ応答処理を図９のフローチャートを基に説明する。
【００６９】
まず，並べ替えフィルタ５２の制約無し機能情報を取得する（Ｓ２０１）。取得した制約無し機能情報は，フィルタの所有機能情報として記憶される。本形態では，フィルタの所有機能情報の記憶方法として，ＸＭＬファイルを適用する。なお，ＸＭＬ形式のファイルに限らず，例えばＨＴＭＬ形式やＣＳＶ形式のファイルであってもよい。図１０は，制約無し機能情報を記憶した状態の，フィルタの所有機能情報の一例を示している。
【００７０】
次に，機能フィルタ５２への問合せ元がドライバ（すなわち，フィルタ機能問合せ部４５）であるか否かを判断する（Ｓ２０２）。機能フィルタ５２への問合せは，フィルタ機能問合せ部４５だけではなく，他の機能フィルタ５１，５３からも行われる。そして，問合せ元によって応答内容が異なる。
【００７１】
問い合わせ元がドライバである場合（Ｓ２０２：ＹＥＳ）には，制約付き機能情報を取得する（Ｓ２０３）。制約付き機能情報の取得手順については後述するが，制約条件ごとに必要とされる条件が異なることから，機能フィルタごとに，さらにはその所有する機能ごとに大きく異なる。制約付き機能情報の取得後，Ｓ２０４の処理に移行する。一方，問い合わせ元がドライバでない場合（Ｓ２０２：ＮＯ）には，制約付き機能情報について確認せずにＳ２０４の処理に移行する。
【００７２】
Ｓ２０４の処理では，機能フィルタの所有機能情報を応答する（Ｓ２０４）。すなわち，並べ替えフィルタ５２の応答部５２１は，作成した所有機能情報を問合せ元に応答する。Ｓ２０４の処理の後，本ドライバ応答処理が終了する。
【００７３】
続いて，制約付き機能の確認処理（Ｓ２０３）について，並べ替えフィルタ５２のブックレット機能を例に，図１１のフローチャートを基に説明する。ブックレット機能は，先に述べたように，ページを並べ替えた後に２ｉｎ１を行うことが必要条件となる。
【００７４】
まず，プリンタドライバ４が所有する機能フィルタの構成情報を取得する（Ｓ３０１）。すなわち，並べ替えフィルタ５２の判断部５２３がフィルタ情報部４３から機能フィルタの構成情報を取得する。
【００７５】
次に，カウンタｉに１を代入する（Ｓ３０２）。そして，カウンタｉが機能フィルタ数より大きいか否かを判断する（Ｓ３０３）。すなわち，すべての機能フィルタに問い合わせたか否かを判断する。カウンタｉが機能フィルタ数より大きくない場合（Ｓ３０３：ＮＯ），すなわち問い合わせていない機能フィルタが存在する場合には，Ｓ３０４の処理に移行する。
【００７６】
Ｓ３０４の処理では，ｉ番目の機能フィルタが自身であるか否かについて判断する（Ｓ３０４）。すなわち，並べ替えフィルタ５２が何番目に実行される機能フィルタであるかを判断する。ｉ番目の機能フィルタが自身ない場合（Ｓ３０４：ＮＯ）には，カウンタｉをインクリメントし（Ｓ３０５），Ｓ３０３の処理に戻る。一方，自身の機能フィルタであった場合（Ｓ３０４：ＹＥＳ）には，Ｓ３０６の処理に移行する。
【００７７】
なお，自身の機能フィルタが見つからなかった場合（Ｓ３０３：ＹＥＳ）には，本処理を終了する。このとき，自身の機能フィルタが見つからなかったことを意味するエラー信号を応答部５２１に送り返しても良い。
【００７８】
自身の機能フィルタが見つかった（Ｓ３０４：ＹＥＳ）には，カウンタｉをインクリメントし（Ｓ３０６），カウンタｉが機能フィルタ数より大きいか否かを判断する（Ｓ３０７）。すなわち，自身よりも後に実行されるすべての機能フィルタに問い合わせたか否かを判断する。カウンタｉが機能フィルタ数より大きくない場合（Ｓ３０７：ＮＯ），すなわち問い合わせていない機能フィルタが存在する場合には，Ｓ３０８の処理に移行する。
【００７９】
Ｓ３０８の処理では，判断部５２３がｉ番目の機能フィルタに問い合わせる。そして，ｉ番目の機能フィルタの応答部からの応答を受け，ｉ番目の機能フィルタの所有機能情報を取得する。
【００８０】
そして，取得したｉ番目の機能フィルタの所有機能情報に，２ｉｎ１機能があるか否かを判断する（Ｓ３０９）。ｉ番目の機能フィルタが２ｉｎ１機能を有していない場合（Ｓ３０９：ＮＯ）には，Ｓ３０６の処理に戻り，次に実行される機能フィルタについて問い合わせる。そして，最後の機能フィルタまで２ｉｎ１機能が見つからなかった場合（Ｓ３０７：ＹＥＳ）には，本処理を終了する。
【００８１】
一方，ｉ番目の機能フィルタが２ｉｎ１機能を有している場合（Ｓ３０９：ＹＥＳ）には，並べ替え機能を実行した後に２ｉｎ１を実施することが可能であり，ブックレット機能の実行が可能であると判断できる。よって，ブックレット機能が並べ替えフィルタ５２の所有機能情報として記憶される（Ｓ３１０）。図１２は，ブックレット機能情報を記憶した状態の，フィルタの所有機能情報の一例を示している。Ｓ３１０の処理の後，ブックレット機能に関するＳ２０３処理が終了する。
【００８２】
プリンタドライバ４のフィルタ機能問合せ部４５は，並べ替えフィルタ５２から送られる機能フィルタの所有機能情報を基に，並べ替えフィルタ５２が所有する機能の一覧およびその詳細を知ることができる。その際，制約付き機能があった場合，機能フィルタ自身が他の機能フィルタに問い合わせて当該機能が実行可能であるか否かを判断し，その判断結果を応答する情報に反映している。そのため，実行可能な機能として正確な情報が得られる。
【００８３】
以上詳細に説明したように本形態のプリンタドライバ４では，複数の機能フィルタを有し，フィルタ情報部４３にてその機能フィルタの一覧となる機能フィルタの構成情報が記憶されている。そして，フィルタ機能問合せ部４５にて，その構成情報を基に各機能フィルタ５１〜５３に所有機能を問い合わせ，当該機能フィルタの機能情報を取得している。そして，応答部４１にて，フィルタ機能問合せ部４５が取得した機能フィルタの機能情報を出力している。
【００８４】
すなわち，プリンタドライバ４が機能フィルタの構成および機能情報を出力することで，アプリケーション７はプリンタドライバ４の機能情報を知ることができる。また，プリンタドライバ４が機能情報を出力する際には，その都度，機能フィルタの構成情報を基にすべての機能フィルタに問い合わせる。このことから，機能フィルタの構成が変更されたとしても出力される情報は正確である。よって，所有する機能に関する情報を正確にアプリケーションに反映させることができるプリンタドライバおよび情報処理システムが実現している。
【００８５】
また，プリンタドライバ４の応答部４１は，結合部４６にて統合された機能フィルタの情報を出力している。これにより，アプリケーション７は，１つの出力データで複数の機能フィルタの機能情報を知ることができる。
【００８６】
また，プリンタドライバ４の並べ替えフィルタ５２は，判断部５２３によって制約付き機能であるブックレット機能が実行可能であるか否かを自身で判断している。これにより，並べ替えフィルタ５２は，ブックレット機能が実行不可能であればブックレット機能を応答しない。よって，アプリケーション７はより正確な情報を得ることができる。
【００８７】
また，プリンタドライバ４は，フィルタ変更部４４にて，フィルタ情報部４３の記憶内容を変更することが可能である。フィルタ変更部４４を介して機能フィルタの構成の変更の度にフィルタ情報部４３の記憶内容が変更されることで，プリンタドライバ４は問合せ時点での正確な機能情報を出力できる。
【００８８】
また，プリンタドライバ４は，基本情報部４２にて，基本機能情報を応答部４１の出力形式であるＸＭＬ形式のファイルで記憶している。これにより，基本機能についてのデータ作成の手間が減り，アプリケーションへの応答が速い。
【００８９】
なお，本実施の形態は単なる例示にすぎず，本発明を何ら限定するものではない。したがって本発明は当然に，その要旨を逸脱しない範囲内で種々の改良，変形が可能である。例えば，画像形成装置としてはプリンタに限るものではなく，コピー機，ＦＡＸ，あるいは画像形成機能を有する複合機等であってもよい。また，情報端末装置としてはＰＣに限るものではなく，ワークステーション，携帯情報端末装置等であってもよい。また，プリントシステムは，画像形成装置と情報端末装置とが別体になっているシステムに限るものではなく，一体となっているものであってもよい。
【図面の簡単な説明】
【００９０】
【図１】実施の形態に係るプリントシステムの構成を示すブロック図である。
【図２】プリンタドライバの機能構成を示すブロック図である。
【図３】基本機能情報を記憶したＸＭＬファイルの一例を示す図である。
【図４】フィルタ情報を記憶したＸＭＬファイルの一例を示す図である。
【図５】実施の形態に係るプリンタドライバの応答処理を示すフローチャートである。
【図６】ウォータマークフィルタ情報を記憶したＸＭＬファイルの一例を示す図である。
【図７】基本機能情報にウォータマークフィルタ情報を追加したＸＭＬファイルの一例を示す図である。
【図８】ドライバの所有機能情報を記憶したＸＭＬファイルの一例を示す図である。
【図９】実施の形態に係る機能フィルタの応答処理を示すフローチャートである。
【図１０】制約無し機能情報を記憶したＸＭＬファイルの一例を示す図である。
【図１１】実施の形態に係る機能フィルタの制約付き機能確認処理を示すフローチャートである。
【図１２】制約付き機能情報を追加したＸＭＬファイルの一例を示す図である。
【符号の説明】
【００９１】
１      パーソナルコンピュータ
２      プリンタ
４      プリンタドライバ
４１    応答部
４２    基本情報部
４３    フィルタ情報部
４４    フィルタ変更部
４５    フィルタ機能問合せ部
４６    結合部
５１    マルチページ用の機能フィルタ
５２    並べ替え用の機能フィルタ
５２１  応答部
５２２  実行部
５２３  判断部
５３    ウォータマーク用の機能フィルタ
７      アプリケーション
１００  プリントシステム
【図１】
2008299507.tif 000003
【図２】
2008299507.tif 000004
【図３】
2008299507.tif 000005
【図４】
2008299507.tif 000006
【図５】
2008299507.tif 000007
【図６】
2008299507.tif 000008
【図７】
2008299507.tif 000009
【図８】
2008299507.tif 000010
【図９】
2008299507.tif 000011
【図１０】
2008299507.tif 000012
【図１１】
2008299507.tif 000013
【図１２】
2008299507.tif 000014