(57)【特許請求の範囲】
【請求項１】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中の第一の印刷設定項目において、所定の印刷設定値の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置において、
前記印刷制限情報を取得する取得手段と、
印刷データに対して設定される前記第一の印刷設定項目に係わる第一の印刷設定値と、前記第一の印刷設定項目とは異なる第二の印刷設定項目に係わる第二の印刷設定値を特定する特定手段と、
前記印刷制限情報において定義される所定の印刷設定値と、前記特定手段が特定した前記第二の印刷設定値との間にコンフリクトが発生するかを判定する判定手段と、
前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記印刷制限情報において定義される前記所定の印刷設定値を用いずに印刷処理をすることを許可する実行手段とを有し、
前記緩和印刷を許可しない設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記第一の印刷設定値を用いた印刷処理が制限されることを特徴とする印刷制御装置。
【請求項２】
前記印刷制限情報において、前記所定の印刷設定値として、複数の印刷設定値を定義でき、
前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記印刷制限情報において定義される前記所定の印刷設定値を用いずに緩和印刷することを許すか否かを、前記所定の印刷設定値として定義された前記複数の印刷設定値ごとに入力する入力手段をさらに有する請求項１に記載の印刷制御装置。
【請求項３】
前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると判定手段が判定した場合には、警告する警告手段をさらに備える請求項１又は２に記載の印刷制御装置。
【請求項４】
前記取得手段は、前記印刷制限情報を管理装置と通信して取得する請求項１乃至３のいずれか１項に記載の印刷制御装置。
【請求項５】
前記第一の印刷設定項目が両面印刷の設定項目であって、
前記印刷制限情報において前記所定の印刷設定値として両面印刷が定義され、かつ前記特定手段により前記印刷データに対して前記第一の設定値として片面印刷が設定されていることが特定された場合に、
前記実行手段は、前記両面印刷と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記印刷制限情報において定義される前記両面印刷を強制せずに、前記印刷データに対して前記第一の設定値として設定されている前記片面印刷を許可する請求項１乃至４のいずれか１項に記載の印刷制御装置。
【請求項６】
前記第一の印刷設定項目がカラー印刷の設定項目であって、
前記印刷制限情報において前記所定の印刷設定値としてモノクロ印刷が定義され、かつ前記特定手段により前記印刷データに対して前記第一の設定値としてカラー印刷が設定されていることが特定された場合に、
前記実行手段は、前記モノクロ印刷と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記印刷制限情報において定義される前記モノクロ印刷を強制せずに、前記印刷データに対して前記第一の設定値として設定されている前記カラー印刷を許可する請求項１乃至４のいずれか１項に記載の印刷制御装置。
【請求項７】
前記実行手段は、前記第二の印刷設定値としてポスター、製本、ＯＨＰ、厚紙、電子透かし、及びメディアサイズに関する設定の少なくともひとつがなされ、前記所定の印刷設定値と、前記第二の印刷設定値との間にコンフリクトが生ずると前記前記判定手段が判定した場合には、前記印刷制限情報において定義される前記所定の印刷設定値を用いずに、前記第二の印刷設定値を用いるために前記第一の印刷設定値を用いることを許可する請求項１乃至６のいずれか１項に記載の印刷制御装置。
【請求項８】
前記実行手段により許可された印刷処理に係わる印刷データを、印刷エンジンを用いて印刷する印刷手段を備える請求項１乃至７のいずれか１項に記載の印刷制御装置。
【請求項９】
前記実行手段により許可された印刷処理に係わるデータを、印刷エンジンを備える画像形成装置に対して、ネットワークを介して送信する送信手段を備える請求項１乃至７のいずれか１項に記載の印刷制御装置。
【請求項１０】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中の両面印刷の刷設定項目において、両面印刷の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置において、
前記印刷制限情報を取得する取得手段と、
印刷データに対して両面印刷の設定項目で片面印刷が、ポスター印刷の設定項目で有効が設定されていることを特定する特定手段と、
前記両面印刷と前記ポスター印刷の有効設定との間にはコンフリクトが発生し、前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われている場合に、前記印刷制限情報において定義される前記両面印刷を行わずに、前記印刷データに対して設定されている片面印刷による印刷処理を許可する実行手段とを有し、
前記緩和印刷を許可しない設定入力が行われている場合に、前記印刷データに対して設定されている片面印刷による印刷処理が制限されることを特徴とする印刷制御装置。
【請求項１１】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中のカラー印刷の刷設定項目において、モノクロ印刷の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置において、
前記印刷制限情報を取得する取得手段と、
印刷データに対してカラー印刷の設定項目でカラー印刷が、電子透かしの設定項目で有効が設定されていることを特定する特定手段と、
前記モノクロ印刷と前記電子すかしの有効設定との間にはコンフリクトが発生し、前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われている場合に、前記印刷制限情報において定義される前記モノクロ印刷を行わずに、前記印刷データに対して設定されているカラー印刷による印刷処理を許可する実行手段とを有し、
前記緩和印刷を許可しない設定入力が行われている場合に、前記印刷データに対して設定されているカラー印刷による印刷処理が制限されることを特徴とする印刷制御装置。
【請求項１２】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中の第一の印刷設定項目において、所定の印刷設定値の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置における制御方法であって、
前記印刷制限情報を取得する取得工程と、
印刷データに対して設定される前記第一の印刷設定項目に係わる第一の印刷設定値と、前記第一の印刷設定項目とは異なる第二の印刷設定項目に係わる第二の印刷設定値を特定する特定工程と、
前記印刷制限情報において定義される所定の印刷設定値と、前記特定された前記第二の印刷設定値との間にコンフリクトが発生するかを判定する判定工程と、
前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると判断された場合、前記印刷制限情報において定義される前記所定の印刷設定値を用いずに印刷処理をすることを許可する実行工程とを有し、
前記緩和印刷を許可しない設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると判断された場合、前記第一の印刷設定値を用いた印刷処理が制限されることを特徴とする制御方法。
【請求項１３】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中の両面印刷の刷設定項目において、両面印刷の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置における制御方法であって、
前記印刷制限情報を取得する取得工程と、
印刷データに対して両面印刷の設定項目で片面印刷が、ポスター印刷の設定項目で有効が設定されていることを特定する特定工程と、
前記両面印刷と前記ポスター印刷の有効設定との間にはコンフリクトが発生し、前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われている場合に、前記印刷制限情報において定義される前記両面印刷を行わずに、前記印刷データに対して設定されている片面印刷による印刷処理を許可する実行工程とを有し、
前記緩和印刷を許可しない設定入力が行われている場合に、前記印刷データに対して設定されている片面印刷による印刷処理が制限されることを特徴とする制御方法。
【請求項１４】
複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中のカラー印刷の刷設定項目において、モノクロ印刷の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置における制御方法であって、
前記印刷制限情報を取得する取得工程と、
印刷データに対してカラー印刷の設定項目でカラー印刷が、電子透かしの設定項目で有効が設定されていることを特定する特定工程と、
前記モノクロ印刷と前記電子すかしの有効設定との間にはコンフリクトが発生し、前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われている場合に、前記印刷制限情報において定義される前記モノクロ印刷を行わずに、前記印刷データに対して設定されているカラー印刷による印刷処理を許可する実行工程とを有し、
前記緩和印刷を許可しない設定入力が行われている場合に、前記印刷データに対して設定されているカラー印刷による印刷処理が制限されることを特徴とする制御方法。
【請求項１５】
請求項１乃至９の何れか１項に記載の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータが生成した画像データをネットワークなどのインフラを介して画像処理装置に送信し、実際の用紙に印刷を行なう印刷システムに係わるものである。
【背景技術】
【０００２】
昨今、プリンタやシステムの初期導入費用だけではなく、印刷用紙やトナー等の着色剤などの消耗品のコストを含めたＴｏｔａｌ  Ｃｏｓｔ  ｏｆ  Ｏｗｎｅｒｓｈｉｐの削減が、オフィスの経費削減、あるいは地球環境の保全の点から大いに注目されている。従来の問題点として、オフィスにプリンタが設置されており、ネットワークにアクセスできてしまえれば、誰でもプリンタを使用した印刷ができてしまうということがあげられる。誰にも印刷制限がかからず、形跡も残らないため、使用者の精神的な歯止めも効かないため本来必要な出力を超えた印刷が行なわれることが度々あり、オフィスのコスト増大を招いていた。
【０００３】
これらに対抗するために、第１の手段としてＴＣＰ／ＩＰにおけるＩＰアドレスなどのアドレス情報による印刷制限や、第２の手段として印刷ログの取得による印刷枚数の管理を実現している印刷システムが多数実現化されている。しかし第１の手段は特定のＩＰアドレスに制限をかけてしまうという大雑把な方法であり、特定のユーザの出力枚数を制限するといった詳細な管理はできなかった。また第２の方法によれば、出力によりログを残すことは可能であるが、管理者がいちいちログを監視して不正な印刷が行なわれているかの調査には大きな人的コストがかかるためＴＣＯ削減の趣旨から外れてしまうことになる。
上記の問題を解決するために、特開２００３−１５０３３６において、ユーザ毎に出力を制限するユーザ制限機能が提案されている。
【０００４】
一方、プリンタドライバで提供する様々な機能に関して機能を制限する手法などについても幾つかの解決方法が提案されている。例えば特開２００４−２２０５３２号（特許文献２）には、機能制限を行う方法として、プリンタドライバの印刷設定ダイアログ画面上から選択できなくする方法について言及している。上述したとおり、従来の印刷システムではユーザ毎の印刷可能枚数制限を行ったり、ホストコンピュータ上で印刷時に用いられるプリンタドライバの機能自体の制限を行ったりして、一方的に制限する側の制限を適用させることに主眼を置いていた。
【特許文献１】特開２００３−１５０３３６
【特許文献２】特開２００４−２２０５３２号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来、制限を掛けるユーザ若しくはユーザーグループに対して印刷設定の例外を認めていなかった。このため、制限システム側の機能制限とユーザの希望する機能とが不整合を起す場合には、強制的に制限システム側の設定にまるめて印刷を行う（強制印刷）又は、印刷自体を行わせない（印刷中止）等の動作となっていた。
しかしながら、実際にこのような制限システム環境下では、過度に印刷機能が制限されるためユーザの利便性が犠牲になるという側面がある。
【０００６】
また、強制印刷が実行される場合、制限システム側の制限を優先して印刷設定で印刷を行うこととなり、ユーザの意図しない印刷結果が出力され、用紙やその他印刷に関する無駄なコストが増加してしまう側面もある。
【０００７】
さらに、印刷中止が行われる場合、制限システム側の機能制限とユーザの希望する機能とが不整合を起す場合がある。この場合には印刷自体を行わないようにする等、用紙やその他印刷に関する無駄なコストの発生は抑えられる。しかし、印刷デバイスが本来提供する機能を充分には活用できない場合がある。さらに、無意味又は不整合な設定をユーザに対して強制する場面も合った。この結果、印刷デバイスの導入コストに見合った結果を得られないことになることがあった。
【０００８】
本願発明は、上述の問題点の少なくともひとつを解決するためになされたものである。印刷制限を課したシステムの中で、必要な場合には特定の設定を許す柔軟な印刷システムを提供することが本願発明の第一の側面である。
【０００９】
さらに、印刷データに設定されている設定を、ユーザに課されている印刷制限の範囲に収めようとした場合に、例えば、強制両面設定をユーザに対して課する場合、両面、ＯＨＰが同時に設定できないなどの条件を含む特定のコンフリクト条件（競合条件）に当てはまる場合がある。印刷制限が課されるシステムであっても、当該コンフリクト条件を考慮した現実的な設定に基づく印刷処理を可能とする仕組みを提供することが第二の側面である。
【課題を解決するための手段】
【００１０】
上述の課題を解決するために、本発明は、たとえば、複数の印刷設定項目に関する定義を含む印刷制限情報であって、当該複数の印刷設定項目の中の第一の印刷設定項目において、所定の印刷設定値の使用を強制する前記印刷制限情報を用いて印刷処理を制御する印刷制御装置において、前記印刷制限情報を取得する取得手段と、印刷データに対して設定される前記第一の印刷設定項目に係わる第一の印刷設定値と、前記第一の印刷設定項目とは異なる第二の印刷設定項目に係わる第二の印刷設定値を特定する特定手段と、前記印刷制限情報において定義される所定の印刷設定値と、前記特定手段が特定した前記第二の印刷設定値との間にコンフリクトが発生するかを判定する判定手段と、前記印刷制限情報において定義される所定の印刷設定値を用いない緩和印刷を許可する設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記印刷制限情報において定義される前記所定の印刷設定値を用いずに印刷処理をすることを許可する実行手段とを有し、前記緩和印刷を許可しない設定入力が行われており、かつ、前記所定の印刷設定値と前記第二の印刷設定値との間にコンフリクトが発生すると前記判定手段が判断した場合、前記第一の印刷設定値を用いた印刷処理が制限されることを特徴とする。
【発明の効果】
【００１１】
印刷制限を課したシステムの中でも、必要な場合には特定の設定を許す柔軟な印刷システムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
（第一の実施例）
図１は本発明の前提技術を説明する図である。ユーザ毎の出力制限機能を実施するための構成を示す模式図である。
【００１３】
図１において、１００１はユーザが使用して画像データを生成し、印刷を行なうためのホストコンピュータである。１００２はユーザの認証情報や出力制限情報を持った認証サーバである。１００３はネットワークを介して受信した印刷データを受け取り、電子写真技術やインクジェット技術などの印刷技術を利用して実際の用紙に印刷を行なうプリンタである。ホストコンピュータ１００１、認証サーバ１００２、プリンタ１００３はイーサネット（登録商標）などの技術によるネットワーク１００４により相互に接続されている。
【００１４】
図２は認証サーバ１００２が保持しているユーザ別の認証情報および、制限情報を格納するデータベースを示す表である。
【００１５】
図２において、各行はユーザのエントリを示し、各列はユーザ別の認証情報、制限情報が記述されている。２０１はユーザ名を示し、２０２はパスワードを示し、２０２は当該ユーザが今月実施できる印刷枚数の最大値を示す。また、２０３は当該ユーザの今月の実際に出力した枚数の実績値が記載されている。なお、パスワード２０２は便宜上、平文のパスワードを記載しているが、実際にはセキュリティの都合上パスワードが漏洩しないように、平文の一方向ハッシュ値だけ格納しておく。そして、入力されたパスワードのハッシュ値と比較することによって認証を行なうなどの方法が実施されている。また本データベースは同じくセキュリティの都合上、管理者権限でのみ読み書き可能であることはいうまでもない。
【００１６】
２１１の行はＵｓｅｒ１という名前のユーザのエントリを示す。パスワードは”Ａｋｄ５ｓｊ４ｆ”という文字列である。さらに枚数最大値が５００枚となっており、Ｕｓｅｒ１は月の印刷枚数が５００枚までに制限されていることがわかる。枚数実績値は実際に印刷を行なった結果、プリンタから更新される値で、Ｕｓｅｒ１は今月１２３枚の印刷をすでに行なっていることがわかる。同様に２１２においてＵｓｅｒ２、２１３においてＵｓｅｒ３の定義もされている。２１４はゲストユーザの記述を示している。パスワードはなしである。また、枚数最大値が０であることから、ゲストユーザは印刷が実施できないことを示している。ゲストユーザを設けるかどうかはシステムポリシーによって決まるものである。よって、このようなユーザがあってもなくてもよい。
【００１７】
ユーザはホストコンピュータ１００１にログオンする際に、ユーザ名をパスワードを入力する。この情報は認証サーバ１００２に伝わり、認証サーバで同様にユーザ名を２０１、パスワードを２０２で照合し、認証が成功すれば、枚数最大値と枚数実績値をホストコンピュータ１０１に通知する。例えばユーザがＵｓｅｒ１だとすると認証に成功すると、戻り値として枚数最大値＝５００，枚数実績値＝１２３が返される。
【００１８】
そこで実際に印刷ジョブの印刷を行なう際に、ホストコンピュータ１００１は枚数最大値＝５００，枚数実績値＝１２３を考慮して、５００−１２３＝３７７枚までを印刷可能と認識し、印刷ジョブの枚数が３７７枚までなら印刷を実行するようにする。あるいは例えば印刷ジョブの枚数が４００枚で上限を超えているとしたら警告を発してユーザに操作を促す。図３はホストコンピュータ１００１から印刷を行なおうとした際に、印刷ドライバが表示するダイアログのＧＵＩ図である。３０１はダイアログ、３０２は印刷を実行するボタンであり、３０３は取消を行なうボタンである。３０２を押下することによって、ホストコンピュータは印刷ジョブの出力枚数を３７７枚に縮退して印刷を行なう。この時残りの２３枚は出力されないため、ユーザの所望の印刷結果は得られないかもしれない。３０３を押下した場合は印刷要求そのものを取り消すため、副作用は発生しない。
【００１９】
次に、本発明に係わる実施例を以下に示す。まず、ＯＨＰシートメディアに対する印刷を例にとって具体例を説明する。前提として、ＯＨＰシートメディアに対して両面印刷はプリンタ側の給紙・排紙機構や定着・現像などの印刷機器側の制限で禁止されているものとする。そして、プリンタドライバからＯＨＰシートの両面印刷を行うとすると片面印刷に丸められるものとし、この例の対象とするユーザは制限システムにより片面印刷機能が制限されているものとする。
【００２０】
このようなユーザがＯＨＰシートに印刷を行いたい場合、ホストＰＣ側から印刷メディアタイプを「ＯＨＰシート」に設定して通常に印刷を行う。この時点で印刷面モードは「片面印刷」に丸められることになる。しかし、制限システムにより「片面印刷」は禁止されているため、制限システムの制限（両面印刷）を優先させると、プリンタドライバ或いはプリンタの処理によりメディアタイプがデフォルト設定（例えば、普通紙）に丸められた印刷を行うことになる。ＯＨＰシートに印刷を行いたかったユーザにとっては意味のない普通紙への印刷となり、無駄な用紙や印刷に関るコストが発生したことになる。また、制限システムの制限を優先させた結果、印刷が行えない設定になった場合には印刷を行わないように制御することも考えられる。この場合対象のユーザにとってはＯＨＰシートへの印刷も禁止されたのと同じ作用を引き起こすことになる。この印刷対象のプリンタを使うユーザの大多数が同様の印刷機能制限が掛けられている場合、片面印刷機能が許可されたごく一部のユーザのためだけのＯＨＰシート印刷機能となる。このため、ＯＨＰシートへの印刷が行えるプリンタの導入コストに見合った効果を得られない恐れがあることになる。更に、オフィスなどにおいて様々な印刷権現を持つ複数のユーザが回りにいる環境においては、片面印刷権限の無いユーザは、片面印刷権限のあるユーザにＯＨＰシートの印刷を依頼する。こうすることでＯＨＰシートの印刷結果を入手する必要がでてくるなど、依頼元及び依頼先の業務に本来不要であった手番が掛かることになり、管理コストを増加させる要因にも成りうる。
【００２１】
上記具体例ではＯＨＰシートへの印刷を例にとって説明したが、プリンタの機構上許容できない組み合わせは他にも多数存在する。さらに、出力対象となるプリンタが異なれば許容できない設定の組み合わせも異なる。そのそれぞれにおいて上述した例と同様の状況が発生するのは言うまでもない。図４は本発明の実施例における印刷システムの構成を示すブロック図である。
【００２２】
図４において、４０１は画像データを生成し、印刷を行なうためのホストコンピュータである。４０２は印刷権トークンをホストコンピュータに配信するためのＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｇｅｎｔ）サーバである。４０３はネットワークを介して受信した印刷データを受け取り、電子写真技術やインクジェット技術などの印刷技術を利用して実際の用紙に印刷を行なうプリンタである。プリンタ４０３の内部構成は、図１４にも示す。４０４は印刷権トークン生成の元になる印刷機能制限情報データベースを搭載したディレクトリサーバである。４０５はディレクトリサーバ４０４のデータベースを管理するためのコンピュータである管理コンソールである。ホストコンピュータ４０１、ＳＡサーバ４０２、プリンタ４０３、ディレクトリサーバ４０４、管理コンソール４０５はイーサネット（登録商標）などの技術により、ネットワーク４０６により相互に接続されている。なお、４０１ないし４０５は一台のコンピュータ内に実装されても良い。また、４０１ないし、４０５に搭載されている機能のうち、任意の複数の機能が、一台のコンピュータに搭載されてもよい。
【００２３】
図６は一般的なコンピューターであるホストコンピュータ４０１の内部システムを表すブロック構成図である。ＣＰＵ１０１はＲＯＭ１０２あるいはＲＡＭ１０３あるいは外部記憶装置１０５に格納されたプログラムに従って装置全体の制御を行う。ＲＡＭ１０３はＣＰＵ１０１が各種処理を行う際のワークエリアとして使用される。外部記憶装置１０５はオペレーティングシステム（ＯＳ）やアプリケーションソフト、プリンタドライバソフト等を記録する。キーボード１０４もしくは図示していないマウスなどの入力機器は、ユーザーが各種指示を与えるためのデバイスである。ネットワークＩ／Ｆ１０６およびプリンタＩ／Ｆ１０７はイーサネット（登録商標）または専用インターフェースを介してレーザービームプリンタ３０と接続し、データの授受を行うためのインターフェースである。モニタＩ／Ｆ１０８はモニタに接続し表示データの転送を行うためのインターフェースである。モニタＩ／Ｆ１０８は、アプリケーションやプリンタドライバのユーザインタフェースなどを表示する。また、１１０は共通データバスである。アプリケーションソフトはＣＰＵ１０１により実行され、４０１のコンピュータの動作を制御する。
【００２４】
図７はホストコンピュータ４０１における印刷処理のための詳細な構成を表すブロック図である。図１のホストコンピュータ１００１に対応する。認証サーバ１００２も同様のハードウェア構成であるが、搭載されるアプリケーションの機能が異なる。アプリケーション７０１、グラフィックエンジン７０２、プリンタドライバ７０３、およびシステムスプーラ７０４は、外部メモリ１１に保存されたファイルとして存在する。そして、これらは、ＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされて実行されるプログラムモジュールである。また、アプリケーション７０１およびプリンタドライバ７０３は、外部メモリ１１のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部メモリ１１のＨＤに追加することが可能となっている。外部メモリ１１に保存されているアプリケーション７０１はＲＡＭ２にロードされて実行される。このアプリケーション７０１からプリンタ４０３に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン７０２を利用して出力（描画）を行う。グラフィックエンジン７０２は、プリンタなどのプリンタごとに用意されたプリンタドライバ７０３を外部メモリ１１からＲＡＭ２にロードし、アプリケーション７０１の出力をプリンタドライバ７０３に設定する。また、グラフィックエンジン７０２はアプリケーション７０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数をＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ７０３へ出力する。プリンタドライバ７０３は、グラフィックエンジン７０２から受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、であるＰＤＬデータに変換する。変換されたＰＤＬデータは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ７０４を経てインターフェース２１経由でプリンタ４０３へ印刷ジョブとして出力される仕組みとなっている。
【００２５】
また、本実施形態の印刷システムは、プリンタドライバ４０３内に印刷権処理部７０５を有する。印刷権処理部７０５はプリンタドライバ７０３のビルドインモジュールであってもよいし、個別のインストーレーションによって追加されるライブラリモジュールの形式であっても構わない。プリンタドライバ７０３が印刷のために実行されると、印刷権処理部７０５はプリンタドライバによってロードされる。印刷権処理部７０５はロードされると印刷機能制限に必要な情報をホストコンピュータ４０１上で収集し、ＳＡサーバ４０２に送信すると印刷権処理部７０５はＳＡサーバから返答として印刷権トークンを受信する。印刷権処理部７０５が受信した印刷権トークンに従いプリンタドライバ７０３はＰＤＬデータを作成しシステムスプーラ７０４に送信する。このＰＤＬデータを含む印刷ジョブは前記と同様にシステムスプーラ７０４を経てインターフェース２１経由でプリンタ４０３へ印刷ジョブとして出力される。すなわち、印刷指示におうじて、図８及び図９の処理が走行する。そして、図８又は図９の処理が施された印刷設定がなされたジョブがプリンタドライバ７０３により前述のように生成されるようにしてもよい。
【００２６】
図５は図７のプリンタドライバ７０３内の構成を詳細に示すブロック図である。
設定管理部５０１は印刷に関る設定管理する役割を担い、印刷アプリケーション７０１からの印刷設定の要求に応じて印刷対象のプリンタ４０３に関する印刷設定情報を作成し返却する。またこの設定管理部５０１は印刷設定用のＧＵＩも保持しており、アプリケーション７０１を介してユーザに印刷設定の変更の手段としてこのＧＵＩを提供する。
【００２７】
描画処理部５０２は印刷ジョブの生成の役割を担う。そして、印刷アプリケーション７０１からＧＤＩ７０２を介して渡される印刷設定情報及び描画情報を解釈する。そして、対象のプリンタ４０３の理解可能な形式のＰＤＬに変換し、システムスプーラ７０４を介してプリンタ４０３へ印刷ジョブを発行する。
【００２８】
整合性判定部５０３は設定管理部５０１及び描画処理部５０２で扱う印刷設定情報について、印刷設定情報に記述されている各々の印刷設定項目についての整合性をチェックし、許容できない印刷設定の組み合わせが発生していないかどうかのチェックを行う。この整合性チェック処理には少なくとも２つの処理を指示できるようになっているものとする。１つ目は単に整合性のチェックのみを行い整合性の合・否判定のみを行う処理（整合判定処理）である。２つ目は整合性のチェックを行った後、不整合と判定された場合に、別途規定される設定項目の優先順位及び設定項目に対する規定値に従って整合性のある印刷設定情報を作成する処理（設定丸め処理）である。
【００２９】
印刷権処理部７０５は先に述べたとおり、印刷トークンの獲得に必要な情報をＳＡサーバ４０２に送信し、印刷権トークンをＳＡサーバ４０２から受信する。ＳＡサーバには、ユーザごとに送信するべき印刷権トークン情報が格納されている。ＳＡサーバは、印刷権処理部から送信さて来る印刷発行者に対応するユーザ情報を取得する。この情報をＳＡサーバに送信する。ＳＡサーバは、ディレクトリサーバ３０４にと通信して、ユーザが正当なユーザかを確認する。具体的には、パスワード及びユーザＩＤ、ドメイン名などの組からなるユーザ情報をディレクトリサーバに送信する。ディレクトリサーバは、ユーザ情報に基づいて認証の可否をＳＡサーバに対して通知する。ＳＡサーバは，ディレクトリサーバから認証の許可の情報を受け取ると、当該ユーザに対応する印刷権トークン情報を取得する。取得した印刷権トークンを、印刷権処理部に対して送信する。
【００３０】
本実施例では少なくとも印刷権トークンには図１０に示す機能制限を特定するために必要な情報及び後述する緩和印刷を行うかどうかを示す情報が記載されているものとする。
【００３１】
まずは、図１０の機能制限について説明する。片面印刷制限とは印刷メディアの片面のみに印刷を行うことを許可するか否かを示すものであり、これを不許可とすると印刷メディアの両面（表面と裏面）に印刷を行うため、印刷メディアに対するコスト削減することが出来る。
【００３２】
カラー印刷制限とはカラー印刷を許可するか否かを示すものであり、これを不許可とするとモノクロ印刷のみが行われることになるためインクやトナーにかかわるコストやカラー印刷に対する課金を削減することが出来る。印刷レイアウト制限とはＮＵＰ印刷に関する制限の有り無し及び制限がある場合の制限内容を示すものであり、本実施例では次の３つの値が設定可能とする。
【００３３】
ＮＵＰ印刷とはＮページ分の印刷データを縮小し１ページ内に配置する機能を意味する。Ｎ値はｎ×ｍ（ｎ、ｍは１以上の整数値）で表せる１（１×１）、２（１×２）、４（２×２）、６（２×３）、８（２×４）、９（３×３）、１６（４×４）などが代表的なＮ値である。例えば、１ＵＰとは、一枚の用紙に、１ページの情報を配置する。２ＵＰとは、１枚の用紙に、２ページの情報を配置するレイアウトである。「制限なし」ではどのような印刷レイアウトであっても印刷制限は行われない。「１ＵＰ不可」では１ＵＰ印刷のみ不許可する、２ＵＰ以上の印刷については許可される。
「１〜２ＵＰ不可」では１ＵＰ、２ＵＰ印刷を不許可とする、４ＵＰ以上については許可される。
【００３４】
次に本発明の中心である緩和印刷について述べる。緩和印刷とは対象としている制限システムが規定する機能制限を適用することで、他の制限により印刷が実行できなくなる場合に対象としている制限システムの機能制限を一時的に緩和し印刷処理行う印刷を意味する。印刷権処理部７０５はＳＡサーバ４０２からこの緩和印刷を行うかどうかを示す情報も取得するものとする。
【００３５】
図８は印刷設定時の本発明の詳細なフローを示す図である。
この図を用いてアプリケーション７０１から設定管理部５０１に対して印刷設定情報の要求があった場合の処理について述べていく。
ステップＳ８０１はユーザの印刷設定を確定するステップである。
【００３６】
ここではアプリケーション７０１が自身で印刷設定情報を変更した場合を考える。この場合、この変更した設定情報を受け取り出力対象のプリンタ４０３が処理できる印刷設定情報を作成する動きや、アプリケーション７０１の指示に従い、印刷設定のためのＧＵＩを表示しユーザからの印刷設定の変更を受ける。これを出力対象のプリンタ４０３が処理できる印刷設定情報を作成する動きを行う。
【００３７】
本実施例ではいずれの場合であっても内部的には整合性判定部５０３を用いて出力対象のプリンタ４０３が処理できる印刷設定情報（”設定Ｂ”）を作成する。ここで作成された”設定Ｂ”を後のステップのため”設定Ｂｏ”として記憶領域に保存しておくことにする。
【００３８】
このステップでは、プリンタドライバのＡＰＩを用いて、出力対象のプリンタ４０３が処理できる印刷設定情報（”設定Ｂ”）が作成される。
【００３９】
ステップＳ８０２では印刷権処理部７０５を用い、ＳＡサーバ４０２から取得した印刷権トークンから印刷機能制限を特定するための情報（”制限Ａ”）、及び緩和印刷を行うかどうかの情報を生成する。また制限の掛かった制限項目の数を算出し、ワーク領域に”ｎ”として保存する。
【００４０】
本実施例では、”制限Ａ”は図１０で示したように複数の制限項目を含むことがある、有効な制限項目の数（”ｎ”）（ｎは０以上の整数値）とした場合、各々制限項目を”Ａｎ”（ｎ＝１、２、３、・・・）と記載することにする。
【００４１】
ステップＳ８０３では有効な制限項目（”ｎ”）が０になったかどうかのチェックを行う。
ｎが０になっていれば、ステップＳ８０９に進み、非０であれば次のステップＳ８０４に進む。
ステップＳ８０４は制限項目の一つを適用した印刷設定情報を作成するステップである。
つまり、制限項目”Ａｎ”を”設定Ｂ”に適用した”設定Ｂ’”をワーク領域に作成する。
【００４２】
例えば図１０に示したように片面印刷が「不許可」となっている場合には”設定Ｂ”の印刷面モードを「両面印刷」に書き換えた”設定Ｂ’”を作成することになる。
【００４３】
ステップＳ８０５ではステップＳ８０４で作成した制限項目の一つを適用した印刷設定情報が印刷可能な設定かどうかを判定するステップである。
【００４４】
このステップでは先に作成した”設定Ｂ”を引数として、整合性判定部５０３の整合判定処理を呼び出す。その結果当該整合性判定部５０３から、「整合性あり」の値が返却されたと判定した場合にはステップＳ８０６へ進む。「整合性なし」の値が返却されたと判断された場合にはステップＳ８０７へ進む。つまり、Ｓ８０５では、整合性判定部の判定結果を用いて、整合性の有無を判定する。
【００４５】
ステップＳ８０６ではステップＳ８０４で作成した制限項目の一つを適用した印刷設定情報が整合性ありと判断されたためこの設定を一時的に印刷設定情報とする処理を行う。
つまり、”設定Ｂ’”の内容を”設定Ｂ”にコピーする。そして、Ｓ８０８へ進む。
【００４６】
ステップＳ８０７では先に述べた緩和印刷処理が許可されているかどうかの判定を行う。この判定処理は、プリンタドライバのユーザインタフェースの入力や外部ファイルからの入力に基づくフラグ情報を用いる。この緩和印刷を許可するか否かの設定を示すフラグをＳ８０２で読み出して、印刷権管理部は判定処理を行なう。
【００４７】
先にステップＳ８０２で取得しておいたフラグ情報を用いて緩和印刷が許可されているか否かを判断する。Ｓ８０２で、許可されていると判断されれば、ステップＳ８０８へ進む。印刷設定情報設定処理は継続される。つまり、”設定Ｂ’”の内容を”設定Ｂ”に書き込む。
【００４８】
緩和印刷が許可されていないとＳ８０７で判定された場合にはステップＳ８１０へ進む。Ｓ８１０では、印刷設定不可若しくは印刷設定が強制された旨をユーザに通知する。以上で制限項目の一つの項目（”Ａｎ”）を印刷設定情報に反映するための処理を行ったことになる。
【００４９】
この時点での印刷設定情報（”設定Ｂ”）はステップＳ８０５で整合性ありと判断される場合には制限項目（”Ａｎ”）が反映され、整合性なしと判断される場合には制限項目（”Ａｎ”）は反映されていないことになる。
ステップＳ８０８では対象とする制限項目を次に進める処理を行う。
つまり”ｎ”値から１を減算した値を新たに”ｎ”値とし、ステップＳ８０３の処理に戻る。
【００５０】
ステップＳ８０９では本処理を通して確定した印刷設定情報（”設定Ｂ”）を印刷設定可能な情報をして要求元であるアプリケーション７０１に返す処理を行う。
【００５１】
ここでは、”設定Ｂｏ”と”設定Ｂ”の差分の設定項目、つまり本印刷機能制限システムにより強制された設定項目をユーザに通知するメッセージを表示しても良い。
【００５２】
ステップＳ８１０では本処理を通した結果、印刷設定情報として有効な設定を構築できなかった場合の処理を行う。例えば、印刷機能制限システムの制限により印刷が行えない旨のメッセージをユーザに表示し、先にステップＳ８０１で保存してあった”設定Ｂｏ”をアプリケーション７０１に対して返却する。或いは、”設定Ｂｏ”に対して全ての機能制限（Ａ１、Ａ２乃至Ａｎ）を反映した印刷設定情報（設定Ｂａ）を作成する。そして、これを印刷設定情報としてアプリケーション７０１に返却してもよい。そして同時に、”設定Ｂｏ”と設定”Ｂａ”の差分設定項目、つまり本印刷機能制限システムにより制限された設定項目をユーザに通知するメッセージを表示するなどしても良い。
【００５３】
以上が本発明の印刷設定情報を作成する場合の処理である。なお、Ｓ８１０では、ジョブをキャンセルして処理を終了してもよい。
【００５４】
具体例を用いて説明する。前提として、ＳＡサーバに管理されている印刷権が、ユーザＡに対しては片面印刷不許可（すなわち、強制両面印刷）に設定されているものとする。ここでドライバに対して、緩和印刷許可すなわちフラグが１に設定されていたとする。また、不整合発生時の両面印刷の緩和印刷は許可されているものとする。
【００５５】
まず、ユーザが、片面の印刷設定とＯＨＰシートのメディアを指定し設定を確定して、ジョブに対して印刷指示をかけたとする（Ｓ８０１）。そうすると、Ｓ８０２でドライバに入力されている緩和印刷フラグが読み出される。簡単のため、ＯＨＰ設定と片面設定の設定のみがなされていたとする。ここではＯＨＰに関しては、制限がかかっていないため、図８の処理の対象とならず、設定が継続される。よって、Ｎ＝１となり、両面印刷設定に関して図８の処理が実行される（Ｓ８０３でＮＯ）。ここで、Ｓ８０４で、片面印刷設定については、前述したように図１０に示すトークンにより、制限がかかっている。Ｓ８０４では、設定Ｂ’として、両面設定が用意される。ここで、印刷権処理部は、整合性判定部を、ＯＨＰと両面の設定値を入力値として呼び出す。
【００５６】
整合性判定部は、図１１のようなコンフリクトルールを保持している。整合性判定部は、図１１に示すとおり、ＯＨＰシート及び厚紙を含むメディアは両面印刷できないというルールに抵触することを検出する。整合性判定部は、ＯＨＰシートと両面印刷は両立しない旨を印刷権処理部に対して通知し、処理を終了する。印刷権処理部は、整合性判定部から返却された情報に基づき、Ｓ８０５の判定を行う。ここでは、両面とＯＨＰは両立しない設定であると印刷権処部は判定し、Ｓ８０５でＮＯと判定される。Ｓ８０７へ進む。続いて、Ｓ８０７では、不整合と判定された両面印刷の緩和印刷は許可されているかを判断する。予め緩和印刷を許すか否かを定義するテーブルをユーザに入力させておく。Ｓ８０７の処理は、このテーブルに基づいて判定される。Ｓ８０７では、テーブルは前述の通り定義されているので、不整合時の両面印刷の緩和印刷は許可されていると判定される。Ｓ８０７では、両面印刷を緩和して、設定Ｂとして片面印刷を保持し、処理を終了する。万一、両面印刷の処理が強制される場合は、ＯＨＰに対して両面印刷があくまでも強制されることになる。この場合は、ユーザまたは管理者に対して警告の通知を行なうことが望ましい。さらに、ジョブをキャンセルしても良い。本実施形態において、ＯＨＰと両面について述べた。両面設定と製本設定の組合わせについても同様に考えられる。製本印刷の場合には、両面設定を緩和することになる。他にも図１１に示す組合わせが考えられる。両面印刷が設定されている場合、特定のサイズ以下の場合は両面印刷を緩和することが考えられる。図１１の製本印刷については、両面印刷及び２ＵＰ印刷のいずれかひとつでも不許可の制限がなされていた場合には実現できない。よって、製本印刷を許可するように要望されている場合は、緩和印刷として、２ＵＰかつ両面のいずれも許可するように緩和印刷するよう設定することができる。
次に印刷時の動作について述べる。
【００５７】
図９は印刷時の本発明の詳細なフローを示す図である。
この図を用いてアプリケーション７０１から描画処理部５０２に対して印刷設定情報とともに描画情報が渡された場合の処理について述べる。
【００５８】
図を見ても判るとおり、処理フローは印刷設定時（図８）とほぼ同じであるため、ここでは印刷時特有の処理部分を中心に述べる。尚、先に説明した印刷設定時に図８に示したフローがまず実施され、これによって作成された印刷設定情報が描画処理部５０２に渡されるのであれば、特に印刷設定時に本発明に関る処理は行わなくても良い。ただしアプリケーション７０１の印刷フローによっては印刷設定管理部５０１からはデフォルト設定を入手するのみで独自に印刷設定情報を書き換え、描画処理部５０２へ印白湯設定情報を渡すケースもある。この場合、印刷時にも印刷設定時とほぼ同様の処理を実施しておくことにする。
【００５９】
ステップＳ９０１はユーザの印刷設定を確定するステップである。
ここではアプリケーション７０１から渡された印刷設定情報を整合性判定部５０３に渡し、出力対象のプリンタ４０３が処理できる印刷設定情報（”設定Ｂ”）を作成する。
【００６０】
ここで作成された”設定Ｂ”を後のステップのため”設定Ｂｏ”として記憶領域に保存しておいても良い。
【００６１】
ステップＳ９０２では印刷権処理部７０５を用い、ＳＡサーバ４０２から取得した印刷権トークンから印刷機能制限を特定するための情報（”制限Ａ”）、及び緩和印刷を行うかどうかの情報を生成する。また制限の掛かった制限項目の数を算出し、ワーク領域に”ｎ”として保存する。
【００６２】
ステップＳ９０３では有効な制限項目（”ｎ”）が０になったかどうかのチェックを行う。
ｎが０になっていれば、ステップＳ９０９に進み、非０であれば次のステップＳ９０４に進む。
ステップＳ９０４は制限項目の一つを適用した印刷設定情報を作成するステップである。
つまり、制限項目”Ａｎ”を”設定Ｂ”に適用した”設定Ｂ’”をワーク領域に作成する。
【００６３】
ステップＳ９０５ではステップＳ９０４で作成した制限項目の一つを適用した印刷設定情報が印刷可能な設定かどうかを判定するステップである。
【００６４】
このステップでは先に作成した”設定Ｂ”を整合性判定部５０３の整合判定処理に通し、その結果「整合性あり」と判定される場合にはステップＳ９０６へ進み、「整合性なし」と判断される場合にはステップＳ９０７へ進む。
【００６５】
ステップＳ９０６ではステップＳ９０４で作成した制限項目の一つを適用した印刷設定情報が整合性ありと判断されたためこの設定を一時的に印刷設定情報とする処理を行う。
【００６６】
つまり、”設定Ｂ’”の内容を”設定Ｂ”にコピーする。
【００６７】
ステップＳ９０７では先に述べた緩和印刷処理が許可されているかどうかの判定を行う。
【００６８】
先にステップＳ９０２で取得した緩和印刷が許可されているか否かによって、許可されていればステップＳ９０８へ進み印刷処理は継続されるが、許可されていない場合にはステップＳ９１０へ進み印刷の中止を行うか強制設定で印刷の継続の何れかを行う。
【００６９】
ステップＳ９０８では対象とする制限項目を次に進める処理を行う。
【００７０】
つまり”ｎ”値から１を減算した値を新たに”ｎ”値とし、ステップＳ９０３の処理に戻る。
【００７１】
ステップＳ９０９では本処理を通して確定した印刷設定情報（”設定Ｂ”）に基づいてアプリケーション７０１が発行する描画情報をプリンタ４０３が理解可能なデータ形式（ＰＤＬ）への変換を行なう。そしてこれをシステムスプーラ５０２に書き出すことで印刷処理を継続する。
【００７２】
ここでは、”設定Ｂｏ”と”設定Ｂ”の差分の設定項目、つまり本印刷機能制限システムにより強制された設定項目をユーザに通知するメッセージを表示しても良い。
【００７３】
ステップＳ９１０では本処理を通した結果、印刷設定情報として有効な設定を構築できなかった場合の処理を行う。
【００７４】
例えば、印刷機能制限システムの制限により印刷が行えない旨のメッセージをユーザに表示し、印刷を中止するための処理を行っても良いし、
又は、”設定Ｂｏ”に対して全ての機能制限を反映した印刷設定情報（”設定Ｂａ”）を作成し、
これを印刷設定情報として強制印刷処理（アプリケーション７０１が発行する描画情報をプリンタ４０３が理解可能なデータ形式への変換を行なう。そしてこれをシステムスプーラ５０２に書き出す）を行う。さらに、”設定Ｂｏ”と設定”Ｂａ”の差分設定項目、つまり本印刷機能制限システムにより制限された設定項目をユーザに通知するメッセージを表示するなどしても良い。
以上が本発明の印刷時の動作になる。
【００７５】
図１０に示した印刷機能の制限例に係わり合いのあるプリンタ４０３及びプリンタドライバ７０３で実現される代表的な機能の一例を図１１に示す。
【００７６】
以下これらの代表的な機能を例にとって図１０で示した印刷機能の制限項目が整合性判定部５０３の判定に対してどのように影響を及ぼすのかについて説明する。
【００７７】
メディアタイプ（印刷媒体そのもの）について、ＯＨＰシートや厚紙などのメディアについてはプリンタ４０３の機構上両面印刷が行えない。つまり、本制限システムで片面印刷が「不許可」になっていると、メディアタイプがＯＨＰシートや厚紙の場合、整合性判定部５０３は不整合と判定する。すなわち、ＯＨＰシート又は厚紙が印刷データに設定されている場合に、印刷権限情報に基づき両面設定が強制されると、これらのメディアの印刷はできなくなる。これらの場合には、警告を出してジョブをキャンセルするか、両面印刷を緩和して印刷を続行することになる。
【００７８】
メディアサイズ（印刷媒体の大きさ）について、特定のサイズ以下或いは別の特定のサイズ以上のメディアサイズはプリンタ４０３の両面印刷機構上行えない。つまり、本制限システムで片面印刷が「不許可」になっていると、メディアサイズが特定のサイズ以下或いは別の特定のサイズ以上の場合、整合性判定部５０３は不整合と判定する。
【００７９】
製本印刷について、製本印刷とは印刷メディアの両面に２ＵＰ印刷を行いかつ、排紙されたメディアをまとめて中央で二つ折にした場合に本の体裁を成すように論理的なページの配置順を制御して行う印刷である。製本印刷はレイアウト及び印刷面モードをそれぞれ２ＵＰ及び両面印刷に固定する。つまり、本制限システムで片面印刷が「不許可」になっている又はレイアウトで「１ＵＰ不可」及び「１〜２ＵＰ不可」になっている場合、整合性判定部５０３は不整合と判定する。
【００８０】
ポスター印刷について、ポスター印刷とは入力された論理的な１ページ分の印刷データを拡大し、複数の物理的ページへ分割してメディアの片面に印刷を行い、印刷された物理ページを張り合わせることで大きな論理ページの画像を得られる機能である。（２×２、３×３、４×４などの設定が一般的である）
このポスター印刷は１／ＮＵＰ（Ｎ分の１ＵＰ）として位置づけることが出来る。つまり、本制限システムで片面印刷が「不許可」になっている又はレイアウトで「１ＵＰ不可」及び「１〜２ＵＰ不可」になっている場合、整合性判定部５０３は不整合と判定する。緩和印刷については、片面印刷を許可することになる。
【００８１】
最後に電子透かし機能について、ここでいう電子透かし機能とは印刷画像に特定の情報を持った不可視の画像やパターンを埋め込み機能である。不可視化を実現するためにはカラー印刷モードで非常に薄い色を用いる必要がある。つまり、本制限システムでカラー印刷が「不許可」になっている場合、整合性判定部５０３は不整合と判定する。緩和印刷は、カラー印刷を許可することになる。尚、ここに挙げたものは単に例を示すものであって、競合する設定に係わるコンフリクトルール一般に適用可能である。
【００８２】
先の実施例ではプリンタ４０３及びプリンタドライバ７０３の制限により印刷を継続できなくなった場合の緩和印刷についての処理について述べたが、本実施形態の制限システムと対峙する制限はプリンタ４０３及びプリンタドライバ７０３の制限に限定するものではない。
【００８３】
本実施例では、本制限システムと同様或いは全く異なる目的を持って直接或いは間接的に印刷機能を制限する他システムが運用されている環境で本発明の制限システムの緩和印刷処理について述べる。図１２は本実施例のホストコンピュータ４０１内の構成を示すブロック図である。
【００８４】
図７のブロック図に対してプリンタドライバ７０３内に他システム拡張部７０６を追加した構成になっている。この他システム拡張部７０６はプリンタドライバ７０３のビルドインモジュールであってもよいし、個別のインストーレーションによって追加されるライブラリモジュールの形式であっても構わない。他システム拡張部７０６は直接或いは間接的に印刷機能を制限するためにプリンタドライバ７０１と連携し印刷設定情報を変更する動作を行う。
【００８５】
この他システム拡張部７０６は図８のステップＳ８０１、図９のステップＳ９０１内の何れか又は双方で動作し、整合性判定部５０３等と連携し他システムの意向と合わせた印刷設定情報を確定する。
【００８６】
図１３は本実施例での印刷設定情報の変更の過程を示すブロック図である。
この図を使って印刷設定情報の流れを説明する、まずアプリケーション７０１が作成した印刷設定情報はプリンタドライバ７０３に渡される。そして、プリンタドライバ７０３と他制限システムの他システム拡張部７０６は連携して動作し、他システム制限が適用された印刷設定情報を作成する。作成された印刷設定情報は図８のステップＳ８０１、図９のステップＳ９０１で確定された印刷設定情報（設定Ｂ）となり、本発明の制限システムで扱われる。以降は先の実施例で説明したとおり本制限システムの制限が緩和印刷も含めて適用され印刷機能が制限される。
【００８７】
他システムの例として、地紋印刷機能を挙げる。地紋印刷では極度に解像度に依存するパターンの描画を行うため印刷解像度を固定するために印刷設定情報を強制する。
【００８８】
ここに挙げた例はあくまでも一例であり、ある目的を達成するために、プリンタドライバ７０３と連携し印刷設定情報を強制するようなものであればどのようなシステムであってもよい。
【００８９】
図１４に別の実施の形態概略図を示す。図８や図９のように、不整合な設定のデータが送信されてこないことを保証されていないシステムもある。図１のプリンタ４０３は複合機でもよい。本実施例では、図４のプリンタ４０３が画像形成装置１４００に対応する。通信回線１０４４は、図４の４０６に対応する。しかし、他のコンピュータから送信されてきたジョブについては、不整合な設定がなされてくる場合もある。また、不整合な設定はなくても、デバイス側に印刷制限を任せる場合もある。図１に示すように、この画像形成装置１４００は、画像入力装置に接続されたプリンターコントローラ部１０４０と操作パネル１０４１、プリンタエンジン部とを有している。上記操作パネル１０４１は、現在の画像形成装置の状態を知らせたり、印字モードの選択、各種指示を行うためのものである。また、上記エンジン部１０４２はインクジェットプリンタ等の実施に画像データの印字を行うためのものである。上記プリンターコントロール部１０４０は、次を含む。各種情報、例えば対応可能な画像入力装置の種類、バージョン、画像処理情報、印字モード、データ処理方法、操作方法等、が格納されている制御プログラムがロードされているＲＡＭ１４０１を含む。これらの制御プログラムは、書き換え可能な不揮発性のＲＯＭ１４０１に格納される。上記ＲＯＭ１４０１及び１４０２の情報によって全体を制御するＣＰＵ１４０４をコントロール部は含む。さらに、上記ＣＰＵ１４０４のワークメモリ入力データのインプットバッファ、印字データ用の印字バッファ等の用途にも、ＲＡＭ１４０１は使用される。と上記エンジン１０４２とコマンドやステータス、印字データをやり取りするエンジンインターフェース１４０６をコントローラ部は含む。さらに、上記操作パネル１０４１とのやり取りをするパネルインターフェース１４０５をコントローラ部は含む。画像入力装置１０４３よりデータの送受信を行うデータ用インターフェース１４０７をコントローラ部は有している。また、外部よりデータの送受信を行うインターフェース１４０８を用いた通信回線１０４４との接続は、ＩＥＥＥ１３９４等のケーブルによる接続でも、赤外線（ＩｒＤＡ）などのケーブルを使用しないものでもよい。本実施形態において、図８と同様の処理を行なうプログラムが、不揮発性ＲＯＭ１４０３に格納されている。不揮発性ＲＯＭに格納されるプログラムが、ＣＰＵ１４０４を実行して、図８の処理を実行する。なお、プリンタドライバのユーザインタフェースをもちいて入力される緩和印刷の許可／不許可の命令は、操作パネル１０４１から入力されても良い。印刷権トークンは、通信回線１０４４を介して、通信用Ｉ／Ｆ１４０８がＳＡサーバから取得する。また、具体的な緩和印刷を許可する設定の内容も操作パネル１０４１から入力され、ＲＡＭや不揮発性ＲＯＭに書き出されるようにしてもよい。本実施形態において、図８は、ジョブをプリンタ４０１が処理処理した場合に、実行される。まず、ジョブに設定されている印刷設定を確定し、前述のＲＯＭ又はＲＡＭに格納されている緩和印刷の許可または不許可をＳ８０２で取得する。
【００９０】
以降は、前述したとおりであるが、これらは、組み込まれた制御プログラムにより、ＣＰＵ１４０４が実行する。図８の処理が終了し、有効な印刷設定が存在する場合は、当該印刷設定を用いて、ＣＰＵ１４０４は、図８の処理が施されたジョブデータを処理する。ビデオ信号をエンジン１０４２へ転送し、用いて印刷出力する。
【００９１】
（その他の実施例）
上述した実施形態における図８、９などの機能を実行するホストコンピュータ４０１及びプリンタ４０３における各処理機能は、各処理機能を実現する為のプログラムをメモリから読み出してＣＰＵ（中央演算装置）が実行することによりその機能を実現させるものである。これに限定さるものではない。また、各処理機能の全部または一部の機能を専用のハードウェアにより実現してもよい。また、上述したメモリは、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体から構成されても良い。さらに、ＲＡＭ以外の揮発性のメモリ、あるいはこれらの組合せによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【００９２】
また、ホストコンピュータ４０１及び認証サーバ４０２及びプリンタ４０３内の各機能を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録する。そして、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。具体的には、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこませる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含む。
【００９３】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信される。この場合、サーバーやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００９４】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００９５】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００９６】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【００９７】
以上説明したように、印刷制限を示す印刷制限情報を用いて印刷処理を制御する印刷制御装置の一例として、ホストコンピュータ４０１及び、プリンタ４０３を説明した。
印刷権処理部が、ＣＰＵを実行して、印刷制限情報を取得する。
【００９８】
さらに、印刷権処理部が、印刷データに設定されている印刷設定を特定する。特定された印刷設定と、印刷権限情報とを用いて、前記印刷設定が、前記印刷権限情報の範囲内になる印刷設定を印刷権処理部が決定する。
【００９９】
印刷権処理部７０５が、整合性判定部を用いて、決定された印刷設定が、前記印刷データに対して設定されている他の設定と不整合となるかを判定する。
【０１００】
印刷権処理部は、不整合であると判定された場合に、前記印刷権限情報の範囲外での前記印刷データに対する印刷設定を許可する。上記の処理はプリンタ又はホストコンピュータ内のＣＰＵにより実行される。
【０１０１】
印刷権限情報の範囲外での前記印刷データに対する印刷設定を許可するか否かを入力する入力手段の一例として、キーボード１０４及び操作パネル１０４１を開示した。
【０１０２】
印刷権限情報の一例としては図１０のトークンがある。その範囲外での前記印刷データに対する印刷設定を許可しない旨が上記入力手段により入力されている場合がある。この場合、決定された印刷設定が、前記印刷データに対して設定されている他の設定と不整合となる場合には、図６のモニタや図１４の１０４１や電子メール通知を用いて警告通知してもよい。
【０１０３】
さらに、予め印刷設定を登録する登録手段をさらに備えていてもよい。不整合となる設定が、前記登録手段により登録されている印刷設定と関連するものである場合には、前記印刷データに設定されている印刷権限情報の範囲外での印刷設定を前印刷権処理部が許可するようにしてもよい。すなわち、例えば、緩和印刷として両面の緩和あるいは、片面許可の設定がされている場合に限り、当該設定の許可を実行するようにしてもよい。競合が想定される図１１の左端の列の設定ごとに、緩和印刷の許可、不許可を指示できるようにすると好適である。それぞれの設定ができなくなるような制限印刷を緩和することができる。
【０１０４】
印刷権処理部は、ポスター、製本、ＯＨＰ、厚紙、電子透かし、メディアサイズに関する設定がなされた場合に、他の設定を変更すると、前記判定手段が不整合となると判定した場合には、前記権限情報の範囲外であっても、許可してもよい。
【図面の簡単な説明】
【０１０５】
【図１】従来提案されているユーザ毎の出力制限機能を実施するための構成を示す模式図
【図２】認証サーバ１０２が保持しているユーザ別の認証情報および、制限情報を格納するデータベースを示す表
【図３】ホストコンピュータ１０１から印刷を行なおうとした際に、印刷ドライバが表示するダイアログのＧＵＩ図
【図４】本発明の実施例における印刷システムの構成を示すブロック図
【図５】本発明の実施例におけるプリンタドライバ７０３内の構成を詳細に示すブロック図
【図６】本発明の実施例におけるホストコンピュータ４０１の内部システムを表すブロック構成図
【図７】本発明の実施例におけるホストコンピュータ４０１における印刷処理のための詳細な構成を表すブロック図
【図８】本発明の実施例における印刷設定時の詳細なフローを示す図
【図９】本発明の実施例における印刷時の詳細なフローを示す図
【図１０】本発明の実施例における機能制限を特定するために必要な情報の例を示す図
【図１１】本発明の実施例における図１０に示した印刷機能の制限例に係わり合いのあるプリンタ４０３及びプリンタドライバ７０３で実現される代表的な機能の一例を示す図
【図１２】本発明の他の実施例におけるホストコンピュータ４０１内の構成を示すブロック図
【図１３】本発明の他の実施例における印刷設定情報の変更の過程を示すブロック図
【図１４】本発明の他の実施形態における画像形成装置を示す図である。
【図１】
0004817930.tif 000002
【図２】
0004817930.tif 000003
【図３】
0004817930.tif 000004
【図４】
0004817930.tif 000005
【図５】
0004817930.tif 000006
【図６】
0004817930.tif 000007
【図７】
0004817930.tif 000008
【図８】
0004817930.tif 000009
【図９】
0004817930.tif 000010
【図１０】
0004817930.tif 000011
【図１１】
0004817930.tif 000012
【図１２】
0004817930.tif 000013
【図１３】
0004817930.tif 000014
【図１４】
0004817930.tif 000015