JP5791311B2 - 情報処理装置、印刷設定方法、及びコンピュータプログラム - Google Patents

情報処理装置、印刷設定方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP5791311B2
JP5791311B2 JP2011045481A JP2011045481A JP5791311B2 JP 5791311 B2 JP5791311 B2 JP 5791311B2 JP 2011045481 A JP2011045481 A JP 2011045481A JP 2011045481 A JP2011045481 A JP 2011045481A JP 5791311 B2 JP5791311 B2 JP 5791311B2
Authority
JP
Japan
Prior art keywords
print setting
setting
item
print
items
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.)
Active
Application number
JP2011045481A
Other languages
English (en)
Other versions
JP2012181762A (ja
Inventor
芳子 末繁
芳子 末繁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2011045481A priority Critical patent/JP5791311B2/ja
Priority to US13/399,880 priority patent/US9213508B2/en
Publication of JP2012181762A publication Critical patent/JP2012181762A/ja
Application granted granted Critical
Publication of JP5791311B2 publication Critical patent/JP5791311B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver

Description

本発明は、情報処理装置、印刷設定方法、及びコンピュータプログラムに関し、特に、複数の印刷設定項目の間の設定値の不整合を解消するために用いて好適なものである。
一般に、ホストコンピュータとプリンタとを有する印刷システムにおいて、ホストコンピュータに組み込まれたプリンタドライバの多くでは、用紙サイズ、用紙の種類、フチなし設定、両面印刷等の様々な印刷設定を指定することが可能となっている。しかし、これらの印刷設定の全ての組み合わせを設定することが可能であるわけではない。例えば、用紙の種類の設定値が「写真用紙」のように用紙の表面にしか印刷できないような設定に対して、両面印刷を行わせるような設定を組み合わせることは不可能である。このように、複数の印刷設定の設定値の組み合わせであって、共存できない組み合わせが作られることによる設定値間の不整合を回避するために、プリンタドライバには、印刷設定項目間の依存関係が存在する。以下の説明では、設定値間の不整合が生じることを、必要に応じて「コンフリクト」と称する。ここで、印刷設定項目間の依存関係とは、ある印刷設定項目の設定値によって、他の印刷設定項目の設定可能な設定値が制限されることを表す。すなわち、用紙の種類の設定値が「写真用紙」であることによって、両面印刷の設定値として設定することが可能なものは「オフ」のみに制限されてしまう場合、両面印刷よりも用紙の種類の方が、優先順位の高い印刷設定項目であることを意味する。
プリンタドライバは、ユーザからの印刷設定を受け付けるためのユーザインターフェース(以下の説明では、このユーザインターフェースを必要に応じて「印刷設定UI」と称する)を備える。この印刷設定UIを介して設定された印刷設定に対してプリンタドライバの持つ固有の優先順位に従って設定値間にコンフリクトがないかどうかを判別する。この判別の結果、設定値間にコンフリクトがあった場合には、優先順位の低い項目の設定値を強制的に変更したり、印刷を中断してコンフリクトが発生していることをユーザに通知して印刷設定の変更を促したりすることでコンフリクトを回避する。
また、プリンタドライバが固有に持つ印刷設定の優先順位によらない印刷を実現するために、優先して設定を行う印刷設定をユーザが指定する方法がある(特許文献1を参照)。これによると、プリンタドライバは、印刷設定の競合を禁止する禁則ルールの元で、印刷設定の固定化を指示する手段を備え、固定化が指示された印刷設定は、禁則ルールの優先度を従前の優先度よりも上げて設定することを可能にしている。
特開2010−40002号公報
しかしながら、コンフリクトが発生していることをユーザに通知する手段、印刷設定を変更する手段、あるいはユーザが望む優先度を指定する手段を、プリンタドライバがユーザに常に提供できるとは限らない。
近年、パーソナルコンピュータ以外の携帯端末等の小型の通信端末が急激に普及し、そのような通信端末からの印刷を実現したいという要望は急速に高まっている。通常、パーソナルコンピュータからの印刷を行う場合には、プリンタに対応するプリンタドライバがパーソナルコンピュータにインストールされている必要である。そのため、プリンタベンダーは、パーソナルコンピュータに搭載されている各OS(例えば「Windows(登録商標)」、「Mac OS(登録商標)」、「Linux(登録商標)」)に対応したプリンタドライバを提供する。
しかしながら、一般的に、携帯端末等の小型の通信端末に搭載されるOSは、プリンタドライバをインストールする仕組みを備えていない。なぜなら、パーソナルコンピュータとは異なり、携帯端末に搭載可能なメモリ容量は限られている。そのため、仮に携帯端末に搭載されるOSがプリンタドライバをインストールする仕組みを備えていたとしても、各プリンタベンダーが提供するプリンタドライバを携帯端末にインストールすることは困難である。従って、携帯端末からの印刷を行う場合には、プリンタドライバに依存することなく印刷を実現する方法が求められている。
一般的に、携帯端末のようなプリンタドライバがインストールされていない装置からの印刷を実現する処理の流れは大きく分けて二種類存在する。
まず一つ目は、携帯端末側で生成した印刷データをプリンタに対して直接送信することで印刷処理を行うものである。この形態において、データのやりとりを携帯端末とプリンタとの間で直接行うためには、プリンタドライバに依存しない仕組みの代わりにプリンタ側に特別な仕組みを備える必要があり、このような仕組みを容易に実現することが困難である。
一方、二つ目は、プリンタに接続されたホストコンピュータがプリントサーバの役割を果たすものである。具体的には、ネットワークを介して携帯端末からの印刷要求により印刷データをホストコンピュータが受け付ける。ホストコンピュータに組み込まれたプリンタドライバが、その印刷データからプリンタに適した印刷ジョブを生成してプリンタに送信することで印刷処理を行う。この形態においては、ネットワーク上のプリンタを複数のホストコンピュータが共有するネットワーク印刷システムと同様の仕組みを利用することができる。このため、前述した一つ目の形態と異なり、既存のプリンタを利用して容易に実現することが可能である。一般的なネットワーク印刷システムにおいては、クライアントであるホストコンピュータ側にも、使用するプリンタに対応するプリンタドライバをインストールしておく必要がある。
クライアントが携帯端末であり、使用するプリンタに対応するプリンタドライバが携帯端末にインストールされていない場合、携帯端末では、次のような印刷方法が多く利用されている。すなわち、携帯端末では、プリンタベンダーによって提供される汎用アプリケーションを使って、プリンタドライバに依存することなく印刷を行う方法が多く利用されている。このような、携帯端末で動作する汎用アプリケーションは、プリンタの機種ごとに作成されたプリンタドライバとは異なる。すなわち、携帯端末で動作する汎用アプリケーションは、プリンタの全機能を完全に把握することはなく、汎用的な印刷設定UIを備えるのみであり、プリンタに固有の機能を設定することはできない。そのため、クライアント側で生成される印刷データは、印刷設定の情報が不足していたり、印刷設定の設定値間でコンフリクトが発生したままの不完全なものであったりする可能性が高い。そこで、それを解決するためにプリントサーバに組み込まれたプリンタドライバは、クライアントで生成された印刷データを受信すると、不足している印刷設定情報を補完する処理や、各印刷設定の設定値間のコンフリクトを解決する処理を行う。
しかしながら、プリントサーバ側のプリンタドライバが、コンフリクトが発生していることをユーザに通知して印刷設定の変更を促す形態では、変更を促された設定項目を変更する手段をクライアント側の汎用アプリケーションが備えていない場合がある。その場合には、ユーザは印刷設定を変更することができず、印刷設定の設定値間でのコンフリクトが解決できないという問題がある。また、クライアント側の汎用アプリケーションには、プリントサーバからのエラー情報の通知自体が行えないものも存在する。この場合、プリントサーバ側がコンフリクト情報をエラーとしてクライアント側に通知したとしても、クライアント側ではエラーにより印刷が中断していることに気づくことができず、印刷が完了しない理由をユーザは知ることができないという問題がある。
また、ホストコンピュータとプリンタとが一対一で接続されているローカル印刷システムにおいて、印刷要求を行うプログラムもしくはアプリケーションの中には、プリンタドライバの印刷設定UIを介さずに、直接印刷処理を実行する場合がある。この場合においても、プリンタドライバが、印刷設定の設定値間のコンフリクトの発生を示す情報や、印刷設定の変更を促す情報を通知する形態では、ユーザは印刷設定を変更する方法が分からない場合があるという問題がある。
本発明は、このような問題点に鑑みてなされたものであり、クライアントの環境に応じた印刷設定の補間処理と、印刷設定の設定値間のコンフリクトの抑制処理とを行えるようにすることを目的とする。
本発明の情報処理装置は、刷設定項目の設定値を少なくとも有する設定データをクライアント装置から受信する受信手段と、前記設定データに基づいて、前記クライアント装置で指定できる印刷設定項目の少なくとも1つを優先項目として特定する特定手段と、前記設定データにおける印刷設定項目の設定値に不整合があるか否かを判定する判定手段と、前記判定手段により設定値の不整合があると判定された印刷設定項目が、前記特定手段により特定された優先項目である場合、当該印刷設定項目の再設定を促す情報を前記クライアント装置に送信する送信手段と、前記判定手段により設定値の不整合があると判定された印刷設定項目が、前記特定手段により特定された優先項目でない場合、当該印刷設定項目の設定値を、当該不整合が解消するように変更する変更手段と、を有することを特徴とする。
本発明によれば、クライアントの環境に応じた印刷設定の補間処理と、印刷設定の設定値間のコンフリクトの抑制処理とを行うことができる。
印刷システムの構成を示す図である。 ホストコンピュータとクライアント装置の構成を示す図である。 印刷設定情報制御部が行う処理の流れを表すフローチャートである。 ジョブチケットのデータ構成の第1、第2の例を示す図である。 印刷処理の中で印刷設定情報制御部が行う処理の流れの第1の例を表すフローチャートである。 印刷設定項目間の依存関係を表すデータテーブルを示す図である。 第1のコンフリクト解決切替処理の流れを表すフローチャートである。 第2のコンフリクト解決切替処理の流れを表すフローチャートである。 第1の印刷設定UI情報判別処理の流れを表すフローチャートである。 第2の印刷設定UI情報判別処理の流れを表すフローチャートである。 ジョブチケットのデータ構成の第3の例を示す図である。 第3の印刷設定UI情報判別処理の流れを表すフローチャートである。 ジョブチケットのデータ構成の第4の例を示す図である。 第4の印刷設定UI情報判別処理の流れを表すフローチャートである。 UIレベル定義テーブルを示す図である。 印刷処理の中で印刷設定情報制御部が行う処理の流れの第2の例を表すフローチャートである。 ジョブチケット内の印刷設定項目の分類方法を説明する図である。 第1の優先設定項目決定処理の流れを表すフローチャートである。 第2の優先設定項目決定処理の流れを表すフローチャートである。 第3の優先設定項目決定処理の流れを表すフローチャートである。 第4の優先設定項目決定処理の流れを表すフローチャートである。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施形態は、特許請求の範囲に係る本発明を限定するものでなく、また、実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<第1の実施形態>
図1は、印刷システムの構成の一例を示す図である。図1において、ホストコンピュータ1とプリンタ2は、Ethernet(登録商標)やUSB(Universal Serial Bus)等の通信バス111を介して相互に通信可能となっている。本実施形態では、ホストコンピュータ1には、OS(Operating System)として「Mac OS(登録商標)X」と同等のOSがインストールされているものとする。図1では、プリンタ2を1つのみ図示したが、通信バス111を介して任意の数のプリンタがホストコンピュータ1に通信可能に接続することが可能である。
ホストコンピュータ1において、CPU101は、RAM103及び外部記憶装置104に格納されたコンピュータプログラムに従って各部を制御する。CPU101は、プリンタ2に対応したプリンタドライバを実行し、アプリケーションプログラムに基づいて作成された出力情報をプリンタ2に対応する出力コマンドに変換し、当該出力コマンドを、所定のプロトコルでプリンタ2に出力する。ROM102は、CPU101が実行するBIOS(Basic Input Output System)プログラムやフォントデータ等を格納する。
RAM103は、CPU101がデータの書き込みや読み出しを行うために必要に応じて使用される。プリンタドライバの起動時には、プリンタドライバのプログラムコードがこのRAM103にロードされる。外部記憶装置104には、CPU101が読み出すプログラムコードが格納されている。外部記憶装置104は、本実施形態の機能の一部を実現するデバイスであり、例えば、FD、CD−RW、HDD等である。入力デバイス制御部105は、キーボードやマウス等の入力デバイス107を制御する。表示装置制御部106は、CRT等の表示装置108を制御する。内部バス109は、各構成要素間のデータ通信を行うものであり、データバスやシステムバスで構成される。通信I/F110は、通信バス111を介したプリンタ2との通信を司り、双方向の通信が可能である。
尚、シリアルインターフェースとしてはUSBやIEEE1394等が、パラレルインターフェースとしてはセントロニクスやSCSI等が、ネットワークとしてはEthernet(登録商標)や無線LAN(IEEE802.11)等がそれぞれ想定される。このように、通信I/F110としては複数の種類が想定される。しかしながら、通信I/F110は、双方向の通信を実現するものであればどのようなインターフェースでも構わない。
プリンタ2において、プリンタコントローラ113は、通信I/F112より得られたプリンタコマンドをもとにプリンタエンジン114を制御し印刷を行う。プリンタエンジン114は、プリンタヘッドの操作や記録媒体の搬送を行う機構である。
図2は、プリントサーバとして利用されるホストコンピュータ1とクライアント装置3のソフトウェア構成の一例を示す図である。
ホストコンピュータ1は、印刷システム201と、プリンタドライバ202と、I/F制御部206とを備える情報処理装置である。ホストコンピュータ1は、クライアント装置3から受け取った印刷データを、印刷システム201及びプリンタドライバ202を通じてプリンタ2が処理可能(印刷可能)な印刷ジョブに変換して出力する。
印刷システム201は、OSの印刷制御プログラムであり、プリンタ2に印刷を実行させるための印刷処理全般を管理する。この印刷システム201は、アプリケーションから送られた印刷データを管理するスプール処理や、プリンタドライバ202のロード/実行等、様々な印刷制御を行うプログラムで構成される。
プリンタドライバ202は、ユーザインターフェース部203と、印刷設定情報制御部204と、プリントデータ生成部205とを備えている。ユーザインターフェース部203は、プリンタ2において設定することが可能な全ての印刷設定項目を設定するための印刷設定UIを備え、ユーザからの印刷設定指示を受け付けることでそれらの設定値に基づいた制御を行う。印刷要求を行うアプリケーションは、印刷システム201を介してユーザインターフェース部203が提供する前記印刷設定UIを表示装置108に表示させることでプリンタ2に依存した印刷設定情報の設定を受け付ける。アプリケーションは、ユーザインターフェース部203から返却された印刷設定情報に基づいて印刷データを生成する。但し、ここで述べたアプリケーションとは、ホストコンピュータ1に備わる不図示のアプリケーションを表す。すなわち、ここで述べたアプリケーションは、ホストコンピュータ1が接続されたプリンタ2に直接印刷を行うローカル印刷システムとして動作する場合に利用される。
一方、プリンタドライバ202に渡された印刷データは、まず印刷設定情報制御部204によって処理される。ここで、図3に、印刷設定情報制御部204が行う処理の流れの一例を表すフローチャートを示す。
まず、プリンタドライバ202が、クライアント装置3から印刷データを受け取ると、ステップS301において、印刷設定情報制御部204は、印刷データに付加されたジョブチケット情報の解析を行う。
次に、ステップS302において、印刷設定情報制御部204は、印刷要求クライアント特定処理を行う。すなわち、印刷設定情報制御部204は、ステップS301で解析したジョブチケット情報に基づいて、印刷要求がどのようなクライアント装置3から行われたのかを判断し、クライアントの種類を特定する。
最後に、ステップS303において、印刷設定情報制御部204は、印刷設定情報補間処理とコンフリクト解決処理とを行う。すなわち、印刷設定情報制御部204は、ステップS302で特定したクライアントの種類に応じて、プリンタ2への印刷を実行するために不足している印刷設定情報がある場合には、適切な設定値で印刷設定情報を補完する処理を行う。また、印刷設定情報制御部204は、各印刷設定項目の設定値間にコンフリクトが発生している場合には、そのコンフリクトを解消する処理等を行う。こうして、プリンタドライバ202が持つ全ての印刷設定項目に対して、プリンタ2が動作可能な印刷設定の組み合わせになるように印刷設定情報の制御が行われる。
プリントデータ生成部205は、印刷設定情報と印刷データに基づいて、プリンタ2が解釈可能なデータ形式の印刷ジョブを生成する。この印刷ジョブは、I/F制御部206を経てプリンタ2へ出力される。これにより、プリンタ2に印刷の実行が指示される。
クライアント装置3は、アプリケーション207とユーザインターフェース部208とを備え、通信バス111(ネットワーク)を介してホストコンピュータ1に接続されたプリンタ2を共有するために、ホストコンピュータ1に対して印刷要求を行う。
アプリケーション207は、印刷を行う印刷データの作成/編集や、作成された印刷データをネットワーク経由でホストコンピュータ1が備えるOSの印刷システム201へ渡す。ユーザインターフェース部208は、印刷設定情報を設定するための印刷設定UIを有し、印刷設定UIを介してユーザからの印刷設定情報の入力を受け付けることでそれらの設定値に基づいた印刷設定情報を生成する。クライアント装置3が、ホストコンピュータ1と同等のソフトウェア構成を持つ装置である場合、クライアント装置3にもプリンタ2に対応するプリンタドライバ202(不図示)がインストールされている。その場合には、クライアント装置3が備えるユーザインターフェース部208は、プリンタドライバ202が提供するユーザインターフェース部203と同等であり、プリンタ2に依存した印刷設定情報を設定できる。
一方、クライアント装置3が、携帯端末のように、プリンタドライバ202がインストールされていない装置である場合、クライアント装置3が備えるユーザインターフェース部208は、アプリケーション207が提供する汎用的な印刷設定UIを表示する。この場合、ユーザインターフェース部208は、印刷設定UIに対するユーザの入力操作に基づいて、プリンタ2に依存しない汎用的な印刷設定情報のみが設定される。こうして、アプリケーション207は、ユーザインターフェース部208から返却された印刷設定情報に基づく印刷データを生成する。例えば、Mac OS(登録商標)Xシステムでは、この印刷データに付加される印刷設定情報を制御するための印刷オブジェクトが用意されている。この印刷オブジェクトは、ジョブチケットとも言われ、ジョブチケットには、プリンタ2から印刷を実行するために必要なプリンタ情報、及び様々な設定データが格納されている。
図4は、アプリケーション207が生成するジョブチケットのデータ構成の一例を示す図である。
図4(a)に示すジョブチケット400aには、プリンタ2で印刷を行うために必要な全ての情報が格納されている。より具体的には、ジョブチケット400aは、現在選択されているプリンタ名称等のプリンタ2に関する基本情報402と、用紙サイズや両面印刷等の印刷設定情報の一般的な基本情報403に加え、プリンタ2に固有の印刷設定等の拡張情報404を有する。クライアント装置3がプリンタドライバ202を備えている場合、ユーザは、プリンタドライバ202が提供する印刷設定UIを介して印刷設定情報を設定することで、プリンタ2において設定可能な機能を設定することができる。このとき、プリンタドライバ202が持つユーザインターフェース部203によって、プリンタ2が持つ全ての機能に対する印刷設定項目が印刷設定情報としてジョブチケット400に書き込まれる。
一方、クライアント装置3がプリンタドライバ202を備えていない場合、ジョブチケット400に書き込むことができる印刷設定情報の内容は、クライアント装置3に備わるOSやアプリケーションによって様々である。例えば、プリンタ2の持つ機能情報を一切把握することができないタイプのクライアント装置3では、アプリケーション207は、図4(b)に示すようなジョブチケット400bを作成する。このジョブチケット400bには、汎用的な印刷設定UIを用いて設定可能な印刷設定項目に対する設定値しか印刷設定情報として書き込まれない。つまり、プリンタ2に固有の印刷設定情報等の拡張情報404は一切書き込まれていない状態でジョブチケット400bが作成される。
また、アプリケーション207は汎用的な印刷設定UIしか備えていないにも関わらず、プリンタ2が持つ機能情報を把握することができるようなタイプのクライアント装置3も存在する。アプリケーション207は、ホストコンピュータ1が備えるOSの印刷システム201を介してプリンタドライバ202からネットワーク経由でプリンタ2の持つ機能情報を取得する。アプリケーション207は、汎用的な印刷設定UIを用いて設定された印刷設定項目に対する設定値を印刷設定情報としてジョブチケット400に書き込む。これに加えて、アプリケーション207は、プリンタドライバ202から取得した機能情報に基づいて、プリンタ2の持つ設定項目に対して何らかの設定値を印刷設定情報としてジョブチケット400に書き込む。こうして作成されたジョブチケット400には、図4(a)に示すようなプリンタ2が持つ機能に対する印刷設定項目の設定値が一通り書き込まれている状態と同等のように見える。しかしながら、実際には、プリンタドライバ202の持つ印刷設定項目間の依存関係が考慮されていない。
このように、プリンタドライバ202を備えていないクライアント装置3により生成されるジョブチケット情報には、プリンタ2での印刷にとって必要な情報の不足や、印刷設定項目の設定値間のコンフリクトの発生等が生じ得る。すなわち、ジョブチケット情報は、クライアント装置3の種類によって異なる。
図5は、ホストコンピュータ1のプリンタドライバ202で実行される処理のうち、印刷設定情報制御部204が行う処理の流れの一例を表すフローチャートである。より詳しくは、印刷設定情報制御部204が、印刷データに付加されたジョブチケット情報の内容を解析して、プリンタ2での印刷に必要な全ての印刷設定項目に対して適切な設定値を設定する処理の流れを表すものである。なお、本願のフローチャートの各ステップは、CPU101が関係するプログラムをメモリから読み出して実行することで実現される。
まず、ステップS501において、印刷設定情報制御部204は、アプリケーション207から、印刷データに付加された印刷設定情報をジョブチケット001として受信する。
次に、ステップS502において、印刷設定情報制御部204は、空の印刷オブジェクトであるジョブチケット002を新規に生成する。
次に、ステップS503において、印刷設定情報制御部204は、ジョブチケット002に対してプリンタドライバ202の持つ全ての印刷設定項目にデフォルト値を設定する。
次に、ステップS504において、印刷設定情報制御部204は、ステップS501でアプリケーション207から受信したジョブチケット001に書き込まれた情報を、ステップS503でデフォルト値が設定されたジョブチケット002に上書きする。これにより、ジョブチケット002には、プリンタドライバ202の持つ全ての印刷設定項目のうち、アプリケーション207が書き込んだ印刷設定項目に対しては、ジョブチケット001に書き込んだ設定値が設定される。一方、アプリケーション207が書き込まなかった設定項目に対しては、デフォルト値がジョブチケット002に設定される。
次に、ステップS505において、印刷設定情報制御部204は、印刷設定UI情報判別処理を行う。詳細は後述するが、印刷設定情報制御部204は、どのような印刷設定UIを備えるクライアント装置3からの印刷要求であるのかを、ジョブチケット001の情報に基づいて判別する。本実施形態では、この印刷設定UI情報判別処理により、クライアント装置3により指定される印刷設定項目が特定される。
次に、ステップS506において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目に設定値が設定されている状態のジョブチケット002の各印刷設定項目を確認する。
次に、ステップS507において、印刷設定情報制御部204は、プリンタドライバ202が固有に持つ優先順位に基づいて、印刷設定項目間で設定値のコンフリクト(不整合)が発生していないかどうかを判断する。
ここで、プリンタドライバ202が固有に持つ優先順位の一例について詳しく説明する。プリンタドライバ202が固有に持つ優先順位は、プリンタドライバ202の各印刷設定項目間に存在する依存関係に基づいて決定される。
図6は、プリンタドライバ202の各印刷設定項目間の依存関係を表すデータテーブルの一例を示す図である。
図6に示すデータテーブル600では、図に向かって相対的に左側に示されている印刷設定項目の優先順位が強い。すなわち、相対的に右側に示されている印刷設定項目は、当該印刷設定項目よりも左側に示されている印刷設定項目の設定値によって制限を受ける。具体的に説明すると、用紙の種類の設定値によって、選択可能なフチ無し印刷の設定値が決定される。また、用紙の種類の設定値とフチなし印刷の設定値とによって、選択可能な用紙サイズが決定される。また、用紙の種類の設定値と、フチなし印刷の設定値と、用紙サイズの設定値とによって、選択可能な給紙口の設定値が決定される。また、用紙の種類の設定値と、フチなし印刷の設定値と、用紙サイズの設定値と、給紙口の設定値とによって、選択可能な両面印刷の設定値が決定される。
例えば、用紙の種類の設定値として普通紙が、フチなし印刷の設定値としてOFFが、用紙サイズの設定値としてA4サイズが、給紙口の設定値として給紙トレイAが設定されている状態では、両面印刷の設定値としてONとOFFとを選択することが可能である。これに対し、用紙の種類の設定値として光沢紙が、フチなし印刷の設定値としてOFFが、用紙サイズの設定値としてA4サイズが、給紙口の設定値として給紙トレイAが設定されている状態では、両面印刷の設定値としてOFFのみを選択することが可能となる。このように、印刷設定情報制御部204は、印刷設定項目間の依存関係に基づいて印刷設定項目の優先順位を決定している。これにより、プリンタドライバ202が持つ印刷設定項目について、ユーザに不都合であると予想される印刷設定情報や、プリンタ2に不可能な動作を行わせるような印刷設定情報の生成を防ぐことができる。
図5の説明に戻る。前述したように、ステップS507において、印刷設定情報制御部204は、印刷設定項目間で設定値のコンフリクトが発生していないかどうかを判断する。この判断の結果、何れかの印刷設定項目間で設定値のコンフリクトが発生している場合には(ステップS507でNoと判断された場合には)、ステップS508に進み、コンフリクト解決切替処理が行われる。一方、何れの印刷設定項目間においても設定値のコンフリクトが発生していない場合には(ステップS507でYesと判断された場合には)、そのまま、図5のフローチャートによる処理を終了する。
図7、図8は、図5のステップS508におけるコンフリクト解決切替処理の流れの第1の例、第2の例を表すフローチャートである。ここでは、印刷設定項目間で設定値のコンフリクトが発生した場合、プリンタドライバ202がどのようにコンフリクトを解決するかを切り替える処理を行う。図7に示す第1のコンフリクト解決切替処理では、コンフリクトに関連する印刷設定項目のうち、優先順位の低い印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備える場合にのみ、ユーザに再設定を促す通知を行うというものである。一方、図8に示す第2のコンフリクト解決処理では、コンフリクトに関連する印刷設定項目の何れか一つでも設定可能な印刷設定UIをクライアント装置3が備えていれば、その印刷設定項目の再設定をユーザに促す通知を行うというものである。
図7に示す第1のコンフリクト解決切替処理の流れの一例について説明する。
まず、ステップS701において、印刷設定情報制御部204は、コンフリクトが発生していると判断した印刷設定項目を取得する。
次に、ステップS702において、印刷設定情報制御部204は、コンフリクトが発生している印刷設定項目について、プリンタドライバ202が固有に持つ優先順位に基づいて、再設定すべき印刷設定項目を決定する。
次に、ステップS703において、印刷設定情報制御部204は、再設定すべき印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えているか否かを判断する。クライアント装置3がどのような印刷設定UIを備えているか否かの情報は、ステップS505に示した印刷設定UI情報判別処理によって判別された情報に基づくものである。
この判断の結果、再設定すべき印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えている場合(ステップS503でYesと判断された場合)には、ステップS704に進む。ステップS704に進むと、印刷設定情報制御部204は、再設定すべき印刷設定項目について印刷設定の再設定をユーザに促す通知を行う。一方、再設定すべき印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えていないと判断した場合(ステップS503でNoと判断された場合)には、ステップS705に進む。ステップS705に進むと、印刷設定情報制御部204は、プリンタドライバ202側で再設定すべき印刷設定項目に適切な設定値を再設定(変更)することでコンフリクトの解決を行う。
次に、図8に示す第2のコンフリクト解決切替処理の流れの一例について説明する。尚、図8の説明において、図7と共通する処理についてはその説明は省略し、異なる点についてのみ説明する。
図8の処理と図7の処理との違いは、再設定すべき印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えていないと判断した場合の処理である。
図7の処理では、再設定すべき印刷設定項目を設定可能な印刷設定UIをクライアント装置3が備えていないと判断した場合、再設定すべき印刷設定項目に適切な設定値をプリンタドライバ202側で再設定することでコンフリクトの解決を行う。一方、図8の処理では、ステップS801において、印刷設定情報制御部204は、次の処理を行う。すなわち、ステップS702で再設定すべき印刷設定項目に決定されなかった印刷設定項目であっても、コンフリクトに関連する印刷設定項目の何れか1つでも設定することが可能な印刷設定UIをクライアント装置3が備えているか否かを判断する。
この判断の結果、コンフリクトに関連する印刷設定項目の何れか1つでも設定することが可能な印刷設定UIをクライアント装置3が備えている場合(ステップS801でYesと判断された場合)には、ステップS802に進む。ステップS802に進むと、印刷設定情報制御部204は、クライアント装置3が備えている印刷設定項目(コンフリクトに関連する印刷設定項目のうち設定することが可能な印刷設定項目)について印刷設定の再設定(変更)をユーザに促す通知を行う。
一方、コンフリクトに関連する印刷設定項目の何れか1つでも設定することが可能な印刷設定UIをクライアント装置3が備えていない場合(ステップS801でNoと判断された場合)には、ステップS803に進む。ステップS803に進むと、印刷設定情報制御部204は、プリンタドライバ202が固有に持つ優先順位に基づいて、プリンタドライバ202側で再設定すべき印刷設定項目に適切な設定値を再設定させることでコンフリクトの解決を行う。
図9は、図5のステップS505に示した印刷設定UI情報判別処理(第1の印刷設定UI情報判別処理)の流れの一例を表すフローチャートである。より詳しくは、図9は、アプリケーション207がプリンタ2に依存しない汎用的な印刷設定UIを用いて設定することが可能な印刷設定項目に対する設定値しかジョブチケットに書き込まないクライアント装置3に係る印刷設定情報を制御する処理の流れを表す。
まず、ステップS901において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケット001から取得することを試みたか否かを判断する。この判断の結果、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケット001から取得することを試みていない場合には、ステップS902に進む。ステップS902に進むと、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目について、ジョブチケット001から、優先順位の高い印刷設定項目から順に1つずつ設定値の取得を試みる。
そして、ステップS903において、印刷設定情報制御部204は、ジョブチケット001から設定値が取得できたか否かを判断する。この判断の結果、ジョブチケット001から設定値が取得できた場合(ステップS903でYesと判断された場合)には、ステップS904に進む。ステップS904に進むと、印刷設定情報制御部204は、ユーザがその取得された設定値に関する印刷設定項目に対して設定値を設定することが可能な印刷設定UIをクライアント装置3が備えていると判断し、その印刷設定項目を印刷設定UI情報に登録する。この印刷設定UI情報は、クライアント装置3が備えている印刷設定UIの印刷設定項目をリストとして保持しておくためのものである。この印刷設定UI情報により、クライアント装置3で指定できる印刷設定項目をプリンタドライバ202側で特定することができる。この印刷設定UI情報は、図5のステップS508におけるコンフリクト解決切替処理を行う際に参照される。その後、ステップS901に戻り、プリンタドライバ202の持つ全ての印刷設定項目に対して処理を繰り返す。プリンタドライバ202の持つ全ての印刷設定項目に対して処理が行われると、図9のフローチャートによる処理を終了する。こうして、クライアント装置3がどのような印刷設定UIを備えているかの判別を行う。
尚、本実施形態では、クライアント装置3がどのような印刷設定UIを備えているかによって、コンフリクトを解決する方法を切り替える処理について述べたが、必ずしもこのようにする必要はない。例えば、ジョブチケット001から一つでも取得できない印刷設定項目がある場合には、常にプリンタドライバ202側で、印刷設定項目の設定値を再設定するようにしてもよい。こうすることで、アプリケーション207が汎用的な印刷設定UIしか備えておらず、且つ、クライアント装置3がエラーを通知する手段を持たない場合に、印刷設定項目の設定値の再設定情報をユーザが知ることができずに印刷続行が不可能になるのを防げる。図10は、このような形態における図5のステップS505に示した印刷設定UI情報判別処理(第2の印刷設定UI情報判別処理)の流れの一例を表すフローチャートである。尚、図10の説明において、図9と共通する処理についてはその詳細な説明を省略し、異なる点についてのみ説明する。
図9の処理と図10の処理との違いは、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケット001から取得することを試みたと判断した場合の処理である。
すなわち、図9の処理と同様に、プリンタドライバ202の持つ全ての印刷設定項目のうち、ジョブチケット001から設定値を取得できた印刷設定項目を印刷設定UI情報に登録する。その後、ステップS1001において、印刷設定情報制御部204は、プリンタドライバ202が持つ全ての印刷設定項目について、ジョブチケット001から設定値を取得できたか否かを判断する。この判断の結果、プリンタドライバ202が持つ全ての印刷設定項目について、ジョブチケット001から設定値を取得できた場合(ステップS1001でYesと判断された場合)には、そのまま図10のフローチャートによる処理を終了する。
一方、プリンタドライバ202が持つ全ての印刷設定項目について、一項目でもジョブチケット001から設定値を取得できなかった場合(ステップS1001でNoと判断された場合)には、ステップS1002に進む。ステップS1002に進むと、印刷設定情報制御部204は、印刷設定UI情報から、ステップS904で登録した印刷設定項目の削除を行う。こうすることで、ジョブチケット001内に必要な印刷設定項目が一項目でも不足している場合には、その時点でクライアント装置3が十分な印刷設定を行う手段を備えていないと判断し、印刷設定UIを何も持たないクライアント装置3と同等に扱う。このようなクライアント装置3の印刷設定UIに対しては、常にプリンタドライバ202側で適切な設定値に再設定を行って、コンフリクトを解決する。
このように、本実施形態では、ジョブチケット001内にプリンタドライバ202が必要とする印刷設定項目が書き込まれているか(設定されているか)否かで、クライアント装置3がどのような機能を備えているかを推測する。そして、それに応じてどのようにコンフリクトを解決するかを切り替える。
例えば、プリンタドライバ202が、用紙サイズ、用紙の種類、フチなし印刷設定、両面印刷設定、給紙口設定という印刷設定項目を持つのに対し、クライアント装置3が、用紙サイズと両面印刷の印刷設定UIしか備えていない携帯端末であるとする。また、クライアント装置3は、プリンタ2の全機能を把握することはなく、作成するジョブチケット001には、設定可能な用紙サイズと両面印刷の設定値のみが書き込まれるものとする。より具体的には、用紙サイズの設定値としてA5が、両面印刷の設定値としてONがそれぞれジョブチケット001に設定されている状態を考える。
この状態では、図5のステップS503において、ジョブチケット002の「用紙の種類、フチなし印刷設定、及び給紙口設定の設定値」には、デフォルト値が設定される。そして、ステップS504において、用紙サイズの設定値と両面印刷設定の設定値には、それぞれ、ジョブチケット001より上書き設定された「A5サイズと両面印刷ON」が設定される。用紙サイズと両面印刷設定以外の各印刷設定項目に設定されるデフォルト値は、図6に示したデータテーブル600によれば、次のようになる。すなわち、用紙の種類の設定値には普通紙が、フチなし印刷設定の設定値にはOFFが、給紙口設定にはトレイAがそれぞれ設定される(図6では◎で示されているものがデフォルト値である)。
次に、ステップS505において、どのような印刷設定UIを備えるクライアント装置3であるかを、例えば、図9に示した第1の印刷設定UI情報判別処理に基づいて判断する。ここでは、ジョブチケット001から取得できた用紙サイズと両面印刷設定の印刷設定項目を設定可能な印刷設定UIをクライアント装置3が備えていると判断する。そして、ステップS506において、全ての印刷設定項目に設定値が設定されたジョブチケット002の内容を確認する。次に、ステップS507において、プリンタドライバ202が固有に持つ優先順位に基づいて、印刷設定項目の設定値間でコンフリクトがないかを判断する。ここでは、用紙の種類の設定値が普通紙、フチなし印刷設定の設定値がOFF、用紙サイズの設定値がA5であることから、図6に示したデータテーブル600によれば、給紙口設定の設定値がトレイBのみに制限される。しかしながら、ジョブチケット002には、ステップS503でデフォルト値のトレイAが設定されている状態である。よって、給紙口設定の設定値と、その他の印刷設定項目の設定値との間にコンフリクトが発生していることになる(ステップS507でNoと判断される)。そのため、ステップS508のコンフリクト解決切替処理に進む。
図7に示す第1のコンフリクト解決切替処理によれば、ステップS702において、プリンタドライバ202が固有に持つ優先順位に基づいて、再設定すべき印刷設定項目を給紙口設定であると決定する。しかし、ステップS505において、クライアント装置3は、用紙サイズと両面印刷設定の印刷設定項目を設定可能な印刷設定UIしか備えていないと判断されている。つまり、プリンタドライバ202としては、給紙口設定の再設定を促したいのにも関わらず、クライアント装置3は給紙口を設定する手段を備えていないと判断される(ステップS703でNoと判断される)。そのため、ステップS705に進み、プリンタドライバ202側で、選択可能なトレイBに給紙口設定の設定値を変更することでコンフリクトの解決処理を行う。
一方、図8に示す第2のコンフリクト解決切替処理によれば、クライアント装置3は、再設定すべき給紙口設定を設定可能な印刷設定UIを備えていないため(ステップS703でNoと判断されるため)、ステップS801に進む。そして、コンフリクトを解決することが可能な別の印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えていないかどうかを判断する。ここで、図6に示したデータテーブル600によれば、用紙サイズの設定値をA4に変更することで、給紙口設定のトレイAを選択することが可能になる。つまり、用紙サイズの設定値を設定することが可能な印刷設定UIをクライアント装置3が備えていないかどうかを判断する。ここでは、クライアント装置3は、用紙サイズの印刷設定UIを備えているため(ステップS801でYesと判断されるため)、クライアント装置3が設定することが可能な用紙サイズの設定値の再設定を促すコンフリクト情報をユーザに通知する。
以上のように本実施形態では、ホストコンピュータ1は、クライアント装置3から送信されるジョブチケット400に記述されている印刷設定項目の設定値に基づいて、クライアント装置3の印刷設定UIで設定することが可能な印刷設定項目を特定する。そして、プリンタドライバ202が固有に持つ優先順位(データテーブル600)に基づいて、印刷設定項目の設定値間でコンフリクトがないかを判定する。この判定の結果、コンフリクトがある場合には、コンフリクトがある印刷設定項目を、再設定すべき印刷設定項目としてプリンタドライバ202が固有に持つ優先順位に従って選択する。再設定すべき印刷設定項目をクライアント装置3の印刷設定UIが持っていない場合には、プリンタドライバ202側で当該印刷設定項目の設定値を再設定する。このようにして、本実施形態では、クライアント装置3が設定することが可能な印刷設定項目以外の設定値間のコンフリクトは、プリンタドライバ202側で解決して印刷処理を続行する。したがって、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを防ぐことが可能となる。また、全ての印刷設定項目をクライアント装置3の印刷設定UIが持っていない場合には、プリンタドライバ202側で当該全ての印刷設定項目の設定値を再設定することもできる。よって、クライアント装置3がエラーを通知する手段を備えておらず、コンフリクトの発生時に設定値の再設定情報を知ることができない場合であっても、印刷を続行することが可能となる。
<第2の実施形態>
次に、第2の実施形態について説明する。尚、以下の説明では、第1の実施形態と共通する図、及びその詳細な説明は省略し、異なる点について説明する。第1の実施形態で説明した印刷設定情報制御部204が行う処理のうち、図5、図7、及び図8の処理は、本実施形態においても適用される。本実施形態と、第1の実施形態との違いは、クライアント装置3が備える印刷設定UIの印刷設定項目の判別処理である(図9、図10を参照)。すなわち、第1の実施形態では、ジョブチケットから印刷設定項目に対する設定値が取得できたか否かに基づいて、クライアント装置3が備える印刷設定UIの印刷設定項目を判断した。一方、本実施形態では、ジョブチケットから設定値が取得できた印刷設定項目の設定値を、クライアント装置3が設定する手段を備えているか否かに基づいて、クライアント装置3が備える印刷設定UIの印刷設定項目を判断する。
本実施形態では、例えば、アプリケーション207が汎用的な印刷設定UIしか備えていないにも関わらず、プリンタ2が持つ機能情報を把握でき、ジョブチケット001に印刷設定項目に対する何らかの設定値を書き込めるクライアント装置3を想定する。本実施形態では、アプリケーション207は、各印刷設定項目に対して設定値を設定する手段を備えているか否かの情報をジョブチケットに付加する。この情報により、ホストコンピュータ1は、自装置で設定することが可能な印刷設定項目のそれぞれについて、クライアント装置3で設定値を変更することができるか否かを識別することができる。図11は、アプリケーション207が生成するジョブチケットのデータ構成の一例を示す図である。アプリケーション207は、各印刷設定項目に対して設定値を設定する手段を備えているか否かの情報として、設定UI有無情報1101をジョブチケット001(1100)に付加する。
図12は、図5のステップS505に示した印刷設定UI情報判別処理(第3の印刷設定UI情報判別処理)の流れの一例を表すフローチャートである。
まず、ステップS1201において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケット001から取得することを試みたか否かを判断する。この判断の結果、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケット001から取得することを試みていない場合には、ステップS1202に進む。ステップS1202に進むと、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目について、ジョブチケット001から、優先順位の高い印刷設定項目から順に1つずつ設定値の取得を試みる。
そして、ステップS1203において、印刷設定情報制御部204は、ジョブチケット001から設定値が取得できたか否かを判断する。この判断の結果、ジョブチケット001から設定値が取得できた場合(ステップS1203でYesと判断された場合)には、ステップS1204に進む。ステップS1204に進むと、印刷設定情報制御部204は、その設定値を取得できた印刷設定項目の設定を行う手段をクライアント装置3が備えているか否かを示す設定UI有無情報1101の設定値が「有」であるか否かを判断する。
この判断の結果、設定UI有無情報1101の設定値が「有」であり、設定値を取得できた印刷設定項目の設定を行う手段をクライアント装置3が備えている場合(ステップS1204でYesと判断された場合)には、ステップS1205に進む。ステップS1205に進むと、印刷設定情報制御部204は、その印刷設定項目を印刷設定UI情報に登録する。そして、ステップS1201に戻り、プリンタドライバ202の持つ全ての設定項目に対して処理を繰り返す。プリンタドライバ202の持つ全ての設定項目に対して処理が行われると、図12のフローチャートによる処理を終了する。
また、ステップS1203の判断の結果、ジョブチケット001から設定値が取得できなかった場合と、ステップS1204の判断の結果、設定UI有無情報1101の設定値が「無」である場合にも、ステップS1201に戻る。こうして、クライアント装置3がどのような印刷設定UIを備えているかの判別を行う。
尚、本実施形態では、設定UI有無情報1101の設定値が「有」であるか、「無」であるかによって、クライアント装置3がどのような印刷設定UIを備えているかを決定する場合を例に挙げて述べた。しかしながら、クライアント装置3がどのような印刷設定UIを備えているかの決定方法は、これに限定されるものではない。例えば、ジョブチケット1100の印刷設定項目(基本情報403及び拡張情報404)に付加される設定UI有無情報1101は、印刷設定UIを備える印刷設定項目(すなわち印刷設定UIを持つことを示す場合)についてのみ付加するような形態としてもよい。
このように、本実施形態では、クライアント装置3がどの印刷設定項目の設定を行う手段を備えているか否かの情報を示す設定UI有無情報1101を、クライアント装置3が自らジョブチケット1100の印刷設定項目に付加する。これにより、ホストコンピュータ1は、クライアント装置3がどのような機能を備えているかをより詳細に推測して、それに応じてどのようにコンフリクトを解決するかを切り替える。
例えば、プリンタドライバ202が、用紙サイズ、用紙の種類、フチなし印刷設定、両面印刷設定、給紙口設定を行える機能を持つのに対し、クライアント装置3が用紙サイズと両面印刷の印刷設定UIしか備えていない携帯端末であるとする。この場合、クライアント装置3である携帯端末は、ホストコンピュータ1が備えるOSの印刷システム201を介してプリンタドライバ202から、プリンタ2の持つ機能情報をネットワーク経由で取得する。そして、クライアント装置3は、取得した機能情報(印刷設定項目)に対して、あまり意味をなさない何らかの設定値を埋めてジョブチケット001を生成する。
この場合、第1の実施形態のように、ジョブチケット001から印刷設定項目に対する設定値が取得できたか否かの情報だけで、クライアント装置3がその印刷設定項目に対する印刷設定UIを備えていると判断することはできない。そのため、クライアント装置3が、自装置が備える印刷設定UIの情報を設定UI有無情報という形で各印刷設定項目に明確に指定することで、ホストコンピュータ1は、クライアント装置3の備える機能を特定する。具体的に、クライアント装置3は、用紙サイズと両面印刷の印刷設定項目の設定値に加えて、当該印刷設定項目に対して設定UI有無情報として「有」の設定値を書き込んだジョブチケット001を作成する。このとき、クライアント装置3は、用紙サイズと両面印刷以外の用紙の種類、フチなし印刷設定に対しても何らの設定値と、設定UI有無情報「無」の設定値とを書き込むものとする。
ジョブチケット001を受信したプリンタドライバ202は、図5のステップS504において、デフォルト値を設定したジョブチケット002に対して、ジョブチケット001に書き込まれた設定値を上書きする。ここでは、給紙口設定にのみデフォルト値が設定され、それ以外の用紙サイズ、両面印刷設定、用紙の種類、フチなし印刷設定には、クライアント装置3が設定した設定値が設定される。次に、ステップS505において、どのような印刷設定UIを備えるクライアント装置3であるかを、図12に示した第3の印刷設定UI情報判別処理に基づいて判断する。ここでは、ジョブチケット001から取得できた「用紙サイズ、用紙の種類、フチなし印刷設定、両面印刷設定」の印刷設定項目のうち、設定UI有無情報の設定値として「有」が設定されているのは「用紙サイズと両面印刷設定」である。したがって、これら「用紙サイズと両面印刷設定」を設定することが可能な印刷設定UIをクライアント装置3が備えていると判断することができる。
このように、本実施形態では、クライアント装置3が設定することが可能な印刷設定項目を確実に判別し、当該印刷設定項目以外の印刷設定項目間の設定値のコンフリクトを、プリンタドライバ202側で解決して印刷処理を続行する。したがって、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを、より確実に防ぐことが可能となる。
<第3の実施形態>
次に、第3の実施形態について説明する。尚、以下の説明では、第1及び第2の実施形態と共通する図、及びその詳細な説明は省略し、異なる点について説明する。第1の実施形態で説明した印刷設定情報制御部204が行う処理のうち、図5、図7、及び図8の処理は、本実施形態においても適用される。本実施形態と、第1及び第2の実施形態との違いは、クライアント装置3が備える印刷設定UIの印刷設定項目の判別処理である(図9、図10、図12を参照)。本実施形態では、クライアント装置3がどの印刷設定項目を設定する手段を備えているかを特定する情報(クライアント装置3で指定できる印刷設定項目を特定するための情報)をジョブチケットに書き込む。そして、ホストコンピュータ1は、当該情報の設定値に基づいて、クライアント装置3が備える印刷設定UIの印刷設定項目を判断する。本実施形態では、アプリケーション207は、どの印刷設定項目の設定値を設定する手段をクライアント装置3が備えているかを特定する情報として、印刷設定UIレベル情報を、ジョブチケットに付加するものとする。図13は、アプリケーション207が生成するジョブチケットのデータ構成の一例を示す図である。アプリケーション207は、プリンタドライバ202が予め定義した印刷設定UIレベル情報1301をジョブチケット001(1300)に付加する。
図14は、図5のステップS505に示した印刷設定UI情報判別処理(第4の印刷設定UI情報判別処理)の流れの一例を表すフローチャートである。
まず、ステップS1401において、印刷設定情報制御部204は、ジョブチケット001から、クライアント装置3自身がどの印刷設定項目の設定値を設定する手段を備えているかを特定する印刷設定UIレベル情報1301の取得を試みる。
図15は、クライアント装置3がどの印刷設定項目を設定する手段を備えているかを特定する印刷設定UIレベル情報1301の内容を定義するUIレベル定義テーブルの一例を示す図である。UIレベル定義テーブル1501は、UIレベルを示すレベルと、各レベルが取り決めている印刷設定項目情報とを相互に関連付けて記憶しており、プリンタドライバ202によって予め定義されているものである。例えば、「レベル0」は、全ての印刷設定項目が優先項目(印刷設定項目の設定値のコンフリクトを解消を優先的に行う印刷設定項目)となることを表す。「レベル0」は、プリンタドライバ202の提供する印刷設定UIを用いた場合に、印刷設定UIレベル情報1301の設定値として付与されるレベルである。このようにして定義されたUIレベルの情報が、印刷設定UIレベル情報1301の設定値としてジョブチケット001に書き込まれている。ただし、本実施形態では、クライアント装置3が、全ての印刷設定項目について、設定値を設定する手段を備えていない場合には、UIレベルの情報は指定されない(図15の「指定なし」の欄を参照)。
図14の説明に戻る。ステップS1402において、印刷設定情報制御部204は、ジョブチケット001に、印刷設定UIレベル情報1301が指定されているか否かを判断する。この判断の結果、ジョブチケット001に、印刷設定UIレベル情報1301が指定されていない場合(ステップS802でNoと判断された場合)には、図14のフローチャートによる処理を終了する。
一方、ジョブチケット001に、印刷設定UIレベル情報1301が指定されている場合(ステップS1402でYesと判断された場合)には、ステップS1403に進む。ステップS1403に進むと、印刷設定情報制御部204は、UIレベル定義テーブル1501を参照して、指定された印刷設定UIレベル情報1301に対応する印刷設定項目を取得する。
そして、ステップS1404において、印刷設定情報制御部204は、ステップS1403で取得した印刷設定項目を設定することが可能な印刷設定UIをクライアント装置3が備えていると判断し、当該印刷設定項目を印刷設定UI情報に登録する。こうして、クライアント装置3がどのような印刷設定UIを備えているかの判別を行う。
このように、本実施形態では、クライアント装置3が予め、クライアント装置3自身が備える印刷設定UIに応じたUIレベルの情報を選択し、ジョブチケット001に付与する。これにより、クライアント装置3が自ら備える機能を明確にジョブチケット001に指定することができるので、プリンタドライバ202は、クライアント装置3がどのような機能を備えているかをより正確に推測することが可能となる。こうして、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを、より確実に防ぐことが可能となる。
<第4の実施形態>
次に、第4の実施形態について説明する。尚、以下の説明では、第1乃至第3の実施形態と共通する図、及びその詳細な説明は省略し、異なる点について説明する。本実施形態の第1乃至第3の実施形態との違いは、本実施形態では、プリンタ2での印刷に必要な全ての印刷設定項目に対して適切な設定値を設定する点である。第1乃至第3の実施形態では、クライアント装置3から受信したジョブチケットに、プリンタ2での印刷に必要な印刷設定項目の設定値が不足している場合、当該設定値としてデフォルト値を設定した上で印刷設定項目の設定値間のコンフリクトの有無を判断する。一方、本実施形態では、印刷設定項目の設定値としてデフォルト値を設定しないかわりに、印刷ジョブに付加されたジョブチケット情報の内容を解析して、適切な設定値を設定する処理を行うに際し、基準となる優先項目を決定する。
図16は、ホストコンピュータ1のプリンタドライバ202で実行される印刷ジョブの印刷処理のうち、印刷設定情報制御部204が行う処理の流れの一例を表すフローチャートである。
まず、ステップS1601において、印刷設定情報制御部204は、アプリケーション207から、印刷ジョブに付加された印刷設定情報をジョブチケットとして受信する。
次に、ステップS1602において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目の中から、優先する印刷設定項目を決定する優先設定項目決定処理を行う。すなわち、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目を、優先項目データテーブル、準優先項目データテーブル、又は非優先項目データテーブルに分類することで、優先すべき印刷設定項目の決定を行う。この優先設定項目決定処理についての詳細は後述する。
図17は、ジョブチケット内の印刷設定項目を、優先項目データテーブル、準優先項目データテーブル、又は非優先項目データテーブルに分類する方法の一例を説明する図である。図17において、優先順位情報1701は、印刷設定項目の優先順位を示すものであり、プリンタドライバ202に固有のものである。優先順位情報1701は、予めホストコンピュータ1に設定されている。
まず、最も優先するべきと判断された印刷設定項目は、優先項目データテーブル1702に登録される。そして、優先項目ほど強制力はないが、優先項目の次に優先する方がより好ましいと判断された印刷設定項目は、準優先項目データテーブル1703に登録される。一方、優先項目でも準優先項目でもないと判断されたその他の印刷設定項目は、非優先項目データテーブル1704に登録される。また、優先項目データテーブル1702、準優先項目データテーブル1703、及び非優先項目データテーブル1704のデータは、プリンタドライバ202の内部でのみ使用されるデータである。このため、優先項目データテーブル1702、準優先項目データテーブル1703、及び非優先項目データテーブル1704のデータ形式は、任意のフォーマットを用いて好適である。
図16の説明に戻る。前述したように、ステップS1602において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目に対して優先項目の決定処理が行われる。これにより、プリンタドライバ202の持つ全ての印刷設定項目が、優先項目データテーブル1702、準優先項目データテーブル1703、又は非優先項目データテーブル1704に分類される。
そして、ステップS1703において、印刷設定情報制御部204は、優先項目データテーブル1702に登録された印刷設定項目を参照する。そして、ステップS1704において、印刷設定情報制御部204は、優先項目間で設定値のコンフリクトがないかどうかを判断する。
この判断の結果、優先項目であるにも関わらず、それらの優先項目同士で共存不可能な設定値が設定されている場合(ステップS1604でNoと判断された場合)には、ステップS1605に進む。ステップS1605に進むと、印刷設定情報制御部204は、印刷設定項目の再設定をユーザに促す通知を行い、図16のフローチャートによる処理を終了する。
一方、複数の優先項目同士で設定値のコンフリクトがない状態と判断された場合(ステップS1604でYesと判断された場合)には、ステップS1606に進む。また、優先項目データテーブル1702に一項目しか印刷設定項目が登録されていない場合には、優先項目の設定値間のコンフリクトを考慮しなくてよいため、この場合にも、ステップS1604でYesと判断してステップS1606に進む。
ステップS1606に進むと、印刷設定情報制御部204は、準優先項目データテーブル1703に登録された印刷設定項目を参照する。そして、ステップS1607において、印刷設定情報制御部204は、準優先項目の間で設定値のコンフリクトがないかどうかを判断する。この判断の結果、準優先項目同士で共存不可能な設定値が設定されている場合(ステップS1607でNoと判断された場合)には、ステップS1608に進む。ステップS1608に進むと、印刷設定情報制御部204は、プリンタドライバ202が固有に持つ優先順位が高い準優先項目から順に、準優先項目の適切な設定値の再設定を行う。
一方、複数の準優先項目同士で設定値のコンフリクトがない状態と判断された場合(ステップS1607でYesと判断された場合)には、ステップS1608を行わずにステップS1609に進む。また、準優先項目データテーブル1703に一項目しか印刷設定項目が登録されていない場合には、準優先項目の設定値間のコンフリクトを考慮しなくてよいため、この場合にも、ステップS1607でYesと判断してそのままステップS1609に進む。また、準優先項目データテーブル1703に一項目も印刷設定項目が登録されていない場合にも、ステップS1607でYesと判断してそのままステップS1609に進む。
次に、優先項目にも準優先項目にも登録されなかったその他の残りの印刷設定項目に関する確認処理を行う。まず、ステップS1609において、印刷設定情報制御部204は、非優先項目データテーブル1704に登録された印刷設定項目を参照する。そして、ステップS1610において、印刷設定情報制御部204は、プリンタドライバ202が固有に持つ優先順位が高い非優先項目から順に、前述した優先項目及び準優先項目の設定値を満たすように、非優先項目の適切な設定値の設定を行う。非優先項目よりも上位の優先項目及び準優先項目の設定値の組み合わせによって設定値のコンフリクトが生じる場合には、設定可能な適切な設定値を、非優先項目の印刷設定項目に再設定する。
次に、ステップS1611において、印刷設定情報制御部204は、非優先項目の全てに、適切な設定値が設定されたか否かを判断する。この判断の結果、非優先項目の全てに、適切な設定値が設定されなかった場合には、ステップS1612に進む。すなわち、非優先項目よりも上位の優先項目及び準優先項目の設定値の組み合わせによって、非優先項目に設定することが可能な設定値が存在せず、非優先項目の設定値の設定が不可能である場合には、ステップS1612に進む。ステップS1612に進むと、印刷設定情報制御部204は、全ての非優先項目に、プリンタドライバ202の持つデフォルト値を設定し、図16のフローチャートによる処理を終了する。
一方、ステップS1611の判断の結果、非優先項目の全てに、適切な設定値が設定された場合には、そのまま図16のフローチャートによる処理を終了する。
図18は、図16のステップS1602における優先設定項目決定処理(第1の優先設定項目決定処理)の流れの一例を表すフローチャートである。より詳しくは、図18は、アプリケーション207がプリンタ2に依存しない汎用的な印刷設定UIを用いて設定することが可能な印刷設定項目の設定値しかジョブチケットに書き込まないクライアント装置3に係る印刷設定情報を制御する処理の流れを表す。
まず、ステップS1801において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケットから取得することを試みたか否かを判断する。この判断の結果、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケットから取得することを試みていない場合には、ステップS1802に進む。ステップS1802に進むと、ステップS902に進むと、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目について、ジョブチケットから、優先順位の高い印刷設定項目から順に1つずつ設定値の取得を試みる。
そして、ステップS1803において、印刷設定情報制御部204は、ジョブチケットから設定値が取得できたか否かを判断する。この判断の結果、ジョブチケットから設定値が取得できた場合(ステップS1803でYesと判断された場合)には、ステップS1804に進む。ステップS1804に進むと、印刷設定情報制御部204は、設定値が取得できた印刷設定項目を優先項目データテーブル1702に登録する。一方、ジョブチケットから設定値が取得できなかった場合(ステップS1803でNoと判断された場合)には、ステップS1805に進む。ステップS1805に進むと、印刷設定情報制御部204は、設定値が取得できなかった印刷設定項目を非優先項目データテーブル1704に登録する。その後、ステップS1801に戻り、プリンタドライバ202の持つ全ての印刷設定項目に対して各テーブルへの分類処理を繰り返す。プリンタドライバ202の持つ全ての印刷設定項目が、優先項目データテーブル1702又は非優先項目データテーブル1704に分類されると、図18のフローチャートによる処理を終了する。こうして、図18に示す例では、優先項目データテーブル1702に登録された印刷設定項目を優先する印刷設定項目(優先項目)として決定する。
尚、本実施形態では、ジョブチケットから設定値が取得できた印刷設定項目の全てを優先項目として分類するため、準優先項目は存在しないが、印刷設定項目を分類する方法は、このような方法に限定されるものではない。例えば、ジョブチケットから一つでも取得できない印刷設定項目がある場合には、ジョブチケットから取得できた印刷設定項目の中で、プリンタドライバ202が持つ固有の優先順位の最上位の印刷設定項目のみを優先項目と決定するような形態にしてもよい。こうすることで、アプリケーション207が汎用的な印刷設定UIしか備えておらず、且つ、クライアント装置3がエラーを通知する手段を持たない場合に、印刷設定項目の設定値の再設定情報をユーザが知ることができずに印刷続行が不可能になるのを防げる。図19は、このような形態における図16のステップS1602に示した優先設定項目決定処理(第2の優先設定項目決定処理)の流れの一例を表すフローチャートである。尚、図19の説明において、図18と共通する処理についてはその詳細な説明を省略し、異なる点についてのみ説明する。
まず、図18の処理と同様に、ジョブチケットから設定値を取得できた印刷設定項目については優先項目データテーブル1702に登録し、ジョブチケットから設定値を取得できなかった印刷設定項目については非優先項目データテーブル1704に登録する。この印刷設定項目の登録は、プリンタドライバ202の持つ全ての印刷設定項目について行う。ステップS1801において、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケットから取得することを試みたと判断すると、プリンタドライバ202の持つ全ての印刷設定項目に対して各テーブルへの分類処理が完了したと判断する。そして、ステップS1901に進む。
ステップS1901に進むと、印刷設定情報制御部204は、プリンタドライバ202が持つ全ての印刷設定項目について、ジョブチケットから設定値を取得できたか否かを判断する。この判断の結果、プリンタドライバ202が持つ全ての印刷設定項目について、ジョブチケットから設定値を取得できた場合(ステップS1901でYesと判断された場合)には、そのまま図19のフローチャートによる処理を終了する。
一方、プリンタドライバ202が持つ全ての印刷設定項目について、ジョブチケットから設定値を取得できなかった場合(ステップS1901でNoと判断された場合)には、ステップS1902に進む。ステップS1902に進むと、印刷設定情報制御部204は、優先項目データテーブル1702に登録されている印刷設定項目のうち、最上位一項目のみを残して、その他の印刷設定項目を準優先項目データテーブル1703に登録し直す再分類処理を行う。こうして、優先項目データテーブル1702に登録された印刷設定項目を最優先項目とし、準優先項目データテーブル1703に登録された印刷設定項目を準優先項目として決定する。
このように、本実施形態では、ジョブチケット内にプリンタドライバ202が必要とする印刷設定項目が書き込まれているか(設定されているか)否かで優先する印刷設定項目を決定する。つまり、ジョブチケットに書き込まれている印刷設定項目の情報をもとに、クライアント装置3がどのような機能を備えているかを推測して、それに応じた処理を行うというものである。
例えば、プリンタドライバ202が、用紙サイズ、用紙の種類、フチなし印刷設定、両面印刷設定、給紙口設定という印刷設定項目を持つのに対し、クライアント装置3が、用紙サイズと両面印刷の印刷設定UIしか備えていない携帯端末であるとする。また、クライアント装置3は、プリンタ2の全機能を把握することはなく、作成するジョブチケットには、設定可能な用紙サイズと両面印刷の設定値のみが書き込まれるものとする。
このジョブチケットを受信したホストコンピュータ1のプリンタドライバ202は、本来持つ印刷設定項目の優先順位よりも、用紙サイズと両面印刷の印刷設定項目を優先させることで、よりユーザが望む印刷を実現することができる。
より具体的には、図16のステップS1602において、ジョブチケットから取得できた「用紙サイズと両面印刷設定」の印刷設定項目を、優先項目データテーブル1702に登録する。一方、ジョブチケットから取得できなかった「用紙の種類、フチなし印刷設定、給紙口設定」の印刷設定項目を、非優先項目データテーブル1704に登録する。そして、ステップS1604において、優先項目データテーブル1702に登録された「用紙サイズと両面印刷設定」の設定値の間にコンフリクトがないかどうかを判断する。図6に示したデータテーブル600によれば、用紙サイズの方が両面印刷設定よりも優先順位が高い。例えば、用紙サイズの設定値として2Lが、両面印刷設定の設定値としてONが設定されているとする。この場合、図6に示したデータテーブル600によれば、用紙サイズの設定値として2Lが設定されていることによって、両面印刷設定の設定値はOFFのみに制限される。このため、これらの設定値は共存不可能な組み合わせであるといえる(ステップS1604でNoと判断される)。よって、ステップS1605に進み、印刷設定項目間で設定値のコンフリクトが発生していることをユーザに通知し、優先順位の低い両面印刷設定の設定値をOFFに再設定することをユーザに促す。
一方、用紙サイズの設定値として2Lが、両面印刷設定の設定値としてOFFが設定されているとする。この場合には、印刷設定項目間での設定値にコンフリクトは発生せず、これらの印刷設定項目の設定値は、共存可能な組み合わせであるといえる(ステップS1604でYesと判断される)。よって、ステップS1607に進み、準優先項目データテーブル1703に登録された準優先項目間で設定値のコンフリクトがないかどうかを確認するが、この例では準優先項目となる印刷設定項目は存在しない。従って、ステップS1610まで処理が進み、非優先項目データテーブル1704に登録された残りの印刷設定項目(用紙の種類、フチなし印刷設定、給紙口設定)について、設定することが不可能な設定値が設定されていないか判断する。
このとき、非優先項目データテーブル1704に登録された印刷設定項目の優先順位は、プリンタドライバ202が本来持つ固有の優先順位となる。すなわち、図6に示したデータテーブル600によれば、相対的に左側に示されている印刷設定項目から順に設定を行う。従って、最上位の優先項目データテーブル1702によって既に決定された用紙サイズの設定値(2L)と、両面印刷設定の設定値(OFF)とがコンフリクトしないようにする必要がある。この場合、データテーブル600において最も左に示されている用紙の種類の設定値は、光沢紙のみを選択することが可能である。このため、用紙の種類の設定値として光沢紙が設定される。
また、用紙サイズの設定値(2L)と、両面印刷設定の設定値(OFF)と、用紙の種類の設定値(光沢紙)とがコンフリクトしないようにする場合、フチなし印刷設定の設定値としては、ONとOFFの何れかを選択することが可能である。このように、選択することが可能な設定値が複数存在する場合には、フチなし印刷設定の設定値として、デフォルト値であるOFFが設定される。また、用紙サイズの設定値(2L)と、両面印刷設定の設定値(OFF)と、用紙の種類の設定値(光沢紙)と、フチなし印刷設定の設定値(OFF)とがコンフリクトしないようにする場合、給紙口設定の設定値としてトレイAのみを選択することが可能である。このため、給紙口設定の設定値としてトレイAが設定される。
このようにして、全ての印刷設定項目に適切な設定値の再設定を行うことで、よりユーザが望む印刷を実現することができる。そして、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを防ぐことが可能となる。また、クライアント装置3がエラー通知する手段を備えておらず、コンフリクトの発生時に設定値の再設定情報を知ることができない場合であっても、印刷を続行することが可能となる。
<第5の実施形態>
次に、第5の実施形態について説明する。尚、以下の説明では、第1乃至第4の実施形態と共通する図、及びその詳細な説明は省略し、異なる点について説明する。第4の実施形態で説明した図16の処理は、本実施形態においても適用される。本実施形態と、第4の実施形態との違いは、優先設定項目決定処理である。第4の実施形態では、ジョブチケットから印刷設定項目に対する設定値が取得できたか否かに基づいて、優先する印刷設定項目を判断した。一方、本実施形態では、ジョブチケットから取得できた印刷設定項目の設定値を設定する手段をクライアント装置3が備えているか否かの情報に基づいて、最優先項目を決定する。より詳しくは、アプリケーション207が汎用的な印刷設定UIしか備えていないにも関わらず、プリンタ2が持つ機能情報を把握でき、ジョブチケットに印刷設定項目の設定値を書き込めるクライアント装置3に係る印刷設定情報を制御する処理の流れを表す。本実施形態では、アプリケーション207は、第2の実施形態と同様に、各印刷設定項目に対して設定値を設定する手段を備えているかの情報として、設定UI有無情報1101をジョブチケットに付加するものとする(図11を参照)。
図20は、図16のステップS1602における優先設定項目決定処理(第3の優先設定項目決定処理)の流れの一例を表すフローチャートである。
まず、ステップS2001において、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケットから取得することを試みたか否かを判断する。この判断の結果、プリンタドライバ202の持つ全ての印刷設定項目の設定値をジョブチケットから取得することを試みていない場合には、ステップS2002に進む。ステップS2002に進むと、ステップS2002に進むと、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目について、ジョブチケットから、優先順位の高い印刷設定項目から順に1つずつ設定値の取得を試みる。
そして、ステップS2003において、印刷設定情報制御部204は、ジョブチケットから設定値が取得できたか否かを判断する。この判断の結果、ジョブチケットから設定値が取得できた場合(ステップS2003でYesと判断された場合)には、ステップS2004に進む。ステップS2004に進むと、印刷設定情報制御部204は、設定値を取得できた印刷設定項目の設定を行う手段をクライアント装置3が備えているかを示す設定UI有無情報1101の設定値が「有」であるか否かを判断する。この判断の結果、設定UI有無情報1101の設定値が「有」であり、設定値を取得できた印刷設定項目の設定を行う手段をクライアント装置3が備えている場合(ステップS2004でYesと判断された場合)には、ステップS2005に進む。ステップS2005に進むと、印刷設定情報制御部204は、優先項目データテーブル1702に、ステップS2003で設定値を取得できたと判断した印刷設定項目を登録する。
一方、設定UI有無情報1101の設定値が「無」である場合(ステップS2004でNoと判断された場合)には、ステップS2006に進む。すなわち、設定値を取得できた印刷設定項目はジョブチケットに存在するものの、その設定値に付加された設定UI有無情報1101が、その印刷設定項目の設定を行う手段を持たないことを示す情報だった場合には、ステップS2006に進む。ステップS2006に進むと、印刷設定情報制御部204は、準優先項目データテーブル1703に、ステップS2003で設定値を取得できたと判断した印刷設定項目を登録する。
また、ジョブチケットから設定値を取得できなかった場合(ステップS2003でNoと判断された場合)には、ステップS2007に進む。ステップS2007に進むと、印刷設定情報制御部204は、非優先項目データテーブル1704に、ステップS2003で設定値を取得できなかったと判断した印刷設定項目を登録する。その後、ステップS2001に戻り、プリンタドライバ202の持つ全ての印刷設定項目に対して各テーブルへの分類処理を繰り返す。こうして、図20に示す例では、優先項目データテーブル1702及び準優先項目データテーブル1703に登録された印刷設定項目を優先する印刷設定項目(優先項目、準優先項目)として決定する。
尚、本実施形態では、ジョブチケット内に印刷設定項目は存在するが、その印刷設定項目を設定する印刷設定UIを持たないことを示す情報がジョブチケットに付加されている場合、当該印刷設定項目を、準設定項目とする場合について説明した。しかしながら、ジョブチケット内の印刷設定項目を分類する方法は、このような方法に限定されるものではない。例えば、設定UI有無情報1101により、印刷設定UIで設定することができないと判断された印刷設定項目を、全て非優先項目として処理を行う形態としてもよい。
また、本実施形態では、設定UI有無情報1101の設定値が「有」であるか、「無」であるかによって、印刷設定項目の各テーブルへの分類を行う場合を例に挙げて述べた。しかしながら、印刷設定項目の各テーブルへの分類する際の判断基準は、これに限定されるものではない。例えば、ジョブチケット1100の印刷設定項目(基本情報403及び拡張情報404)に付加される設定UI有無情報1101は、印刷設定UIを備える印刷設定項目(すなわち印刷設定UIを持つことを示す場合)についてのみ付加するような形態としてもよい。
このように、本実施形態では、ジョブチケット内に、プリンタドライバ202が必要とする印刷設定項目が存在するか否かによって優先する印刷設定項目を判断した上で、さらにその中からより最優先する印刷設定項目を決定する。つまり、クライアント装置3がどの印刷設定項目の設定を行う手段を備えているかの情報を示す設定UI有無情報1101を、クライアント装置3が自らジョブチケットの印刷設定項目に付加する。これにより、ホストコンピュータ1は、クライアント装置3がどのような機能を備えているかをより詳細に推測して、それに応じて処理を行う。
例えば、プリンタドライバ202が、用紙サイズ、用紙の種類、フチなし印刷設定、両面印刷設定、給紙口設定を行える機能を持つのに対し、クライアント装置3が用紙サイズと両面印刷の印刷設定UIしか備えていない携帯端末であるとする。この場合、クライアント装置3である携帯端末は、ホストコンピュータ1が備えるOSの印刷システム201を介してプリンタドライバ202から、プリンタ2の持つ機能情報をネットワーク経由で取得する。そして、クライアント装置3は、取得した機能情報(印刷設定項目)に対して、あまり意味をなさない何らかの設定値を埋めてジョブチケットを生成する。
この場合、ジョブチケットから印刷設定項目に対する設定値が取得できたか否かの情報だけで、当該印刷設定項目を優先する印刷設定項目(優先項目)として決定することはできない。そのため、クライアント装置3が、自らが備える印刷設定UIの情報を設定UI有無情報という形で各印刷設定項目に明確に指定することで、より詳細にクライアント装置3の備える機能をホストコンピュータ1で推測することが可能となる。
具体的に説明すると、ここでは、クライアント装置3が、用紙サイズと両面印刷設定の印刷設定項目に、設定値に加えて、設定UI有無情報1101として「有」の設定値を書き込んだジョブチケットを作成するものとする。また、クライアント装置3は、用紙サイズと両面印刷設定以外の「フチなし印刷設定と用紙の種類」の印刷設定項目にも、何らかの設定値と、設定UI有無情報1101として「無」の設定値を書き込むものとする。
このジョブチケットを受信したプリンタドライバ202は、図16のステップS1602において、ジョブチケットから「用紙サイズ、両面印刷設定、フチなし印刷設定、用紙の種類」の印刷設定項目を取得する。そして、取得できた印刷設定項目の中で、設定UI有無情報1101の設定値として「有」が設定されている「用紙サイズと両面印刷設定の印刷設定項目」を、優先項目として優先項目データテーブル1702に登録する。一方、設定UI有無情報1101の設定値として「無」が設定されている「フチなし印刷設定と用紙の種類」を、準優先項目として準優先項目データテーブル1703に登録する。更に、ジョブチケットから取得できなかった「給紙口設定」を非優先項目データテーブル1704に登録する。
その後、ステップS1604において、優先項目データテーブル1702に登録された「用紙サイズと両面印刷設定」に設定値間のコンフリクトがないかどうかを、プリンタドライバ202が本来持つ固有の優先順位(データテーブル600)に基づいて判断する。例えば、用紙サイズの設定値が2Lであり、両面印刷設定の設定値がONである場合、データテーブル600によれば、各設定値は共存不可能な組み合わせである。このため、ステップS1605において、用紙サイズと両面印刷設定に設定値間のコンフリクトが発生していることをユーザに通知し、両面印刷設定の設定値をOFFに再設定することをユーザに促す。
一方、用紙サイズの設定値が2L、両面印刷設定の設定値がOFFである場合には、設定値間のコンフリクトは発生せず、各設定値は共存可能な組み合わせである。よって、ステップS1607に進む。そして、優先項目データテーブル1702により決定した「用紙サイズの設定値(2L)及び両面印刷設定の設定値(OFF)」と、準優先項目データテーブル1703に登録した「フチなし印刷設定及び用紙の種類」の設定値とにコンフリクトがないかを確認する。このとき、図6に示したデータテーブル600によれば、最も左に示されている「用紙の種類」から順に設定を行っていく。用紙サイズの設定値(2L)と、両面印刷設定の設定値(OFF)とがコンフリクトしないようにする場合、データテーブル600において最も左に示されている用紙の種類の設定値は、光沢紙のみに限定される。
ここで、ジョブチケットに設定されている印刷設定項目である用紙の種類の設定値として普通紙が設定されている場合、用紙の種類と、用紙サイズ及び両面印刷設定との間に設定値のコンフリクトが発生していることになる。そのため、ステップS1608に進み、プリンタドライバ202が、用紙の種類の設定値を光沢紙に再設定することで、準優先項目のコンフリクトを解決する。また、用紙の種類の設定値として光沢紙が設定されている場合、フチなし印刷設定の設定値としては、ONとOFFの何れかを選択することが可能であるため、準優先項目の設定値間のコンフリクトは発生しない。
一方、ジョブチケットに設定されている印刷設定項目である用紙の種類の設定値として光沢紙が設定されている場合、用紙の種類の設定値に対してコンフリクトは発生しない。また、用紙の種類の設定値として光沢紙が設定されている場合、フチなし印刷設定の設定値も、ONとOFFの何れかを選択することが可能であるため、準優先項目の設定値間のコンフリクトは発生しない。
このように、準優先項目データテーブル1703に登録された印刷設定項目の設定値間のコンフリクトを全て解決した状態で、ステップS1610の処理に進む。そして、用紙サイズの設定値(2L)と、両面印刷設定の設定値(OFF)と、用紙の種類の設定値(光沢紙)と、フチなし印刷設定の設定値(ON又はOFF)とがコンフリクトしないように、給紙口設定の設定値を設定する。すなわち、非優先項目データテーブル1704に登録された残りの給紙口設定の印刷設定項目について、データテーブル600に従って、設定可能な適切な設定値の設定を行う。用紙サイズの設定値として2Lが、両面印刷設定の設定値としてOFFが、用紙の種類の設定値として光沢紙が、フチなし印刷設定の設定値としてON又はOFFが設定されている場合、給紙口設定の設定値としてトレイAのみを選択できる。このため、給紙口設定の設定値としてトレイAが設定される。
このようにして、全ての印刷設定項目に適切な設定値の再設定を行うことで、よりユーザが望む印刷を実現することができる。そして、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを防ぐことが可能となる。
<第6の実施形態>
次に、第6の実施形態について説明する。尚、以下の説明では、第1乃至第5の実施形態と共通する図、及びその詳細な説明は省略し、異なる点について説明する。第4の実施形態で説明した図16の処理は、本実施形態においても適用される。本実施形態と、第4及び第5の実施形態との違いは、優先項目決定処理である。本実施形態では、クライアント装置3がどの印刷設定項目を設定する手段を備えているかを特定する情報をジョブチケットに書き込む。そして、ホストコンピュータ1は、当該情報の設定値に基づいて、優先項目を決定する。本実施形態では、アプリケーション207は、第3の実施形態と同様に、クライアント装置3がどの印刷設定項目を設定する手段を備えているかを特定する情報として、印刷設定UIレベル情報1301をジョブチケットに付加するものとする(図13を参照)。この印刷設定UIレベル情報1301の設定値は、図15に示したUIレベル定義テーブル1501のUIレベルの値である。
図21は、図16のステップS1602に示した優先設定項目決定処理(第4の優先設定項目決定処理)の流れの一例を表すフローチャートである。
まず、ステップS2101において、印刷設定情報制御部204は、ジョブチケットから、クライアント装置3自身がどの印刷設定項目を設定する手段を備えているかを特定する印刷設定UIレベル情報1301の取得を試みる。
次に、ステップS2102において、印刷設定情報制御部204は、ジョブチケットに、印刷設定UIレベル情報1301が指定されているか否かを判断する。この判断の結果、ジョブチケット001に、印刷設定UIレベル情報1301が指定されている場合(ステップS2102でYesと判断された場合)には、ステップS2103に進む。
ステップS2103に進むと、印刷設定情報制御部204は、図15に示したUIレベル定義テーブル1501を参照して、指定された印刷設定UIレベル情報1301に対応する印刷設定項目を取得する。
次に、ステップS2104において、印刷設定情報制御部204は、ステップS2103で取得した印刷設定項目を、優先項目データテーブル1702に登録する。
次に、ステップS2105において、印刷設定情報制御部204は、優先項目以外の残りの印刷設定項目を順次、非優先項目データテーブル1704へ登録していく。
一方、ジョブチケット001に、印刷設定UIレベル情報1301が指定されていない場合(ステップS2002でNoと判断された場合)には、ステップS2106に進む。ステップS2106に進むと、印刷設定情報制御部204は、プリンタドライバ202の持つ全ての印刷設定項目を非優先項目データテーブル1704に登録する。こうして、優先項目データテーブル1702に登録された印刷設定項目を優先する設定項目(優先項目)として決定する。
このように、本実施形態では、クライアント装置3が予め、クライアント装置3自身が備える印刷設定UIに応じたUIレベルの情報を選択し、ジョブチケットに付与する。プリンタドライバ202は、クライアント装置3が指定したこの印刷設定UIレベル情報1301に基づいて、優先する印刷設定項目を決定する。これにより、クライアント装置3が自ら備える機能を明確にジョブチケットに指定することができるので、プリンタドライバ202は、クライアント装置3がどのような機能を備えているかをより正確に推測すること可能となる。こうして、一部の印刷設定項目の設定値の変更しか行えないクライアント装置3に対して、設定値の変更ができない印刷設定項目の再設定を促すようなエラーを通知してしまうことで、印刷続行が不可能に陥ってしまうのを防ぐことが可能となる。
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
(その他の実施例)
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)が当該コンピュータプログラムを読み出して実行する。

Claims (13)

  1. 刷設定項目の設定値を少なくとも有する設定データをクライアント装置から受信する受信手段と、
    前記設定データに基づいて、前記クライアント装置で指定できる印刷設定項目の少なくとも1つを優先項目として特定する特定手段と、
    前記設定データにおける印刷設定項目の設定値に不整合があるか否かを判定する判定手段と、
    前記判定手段により設定値の不整合があると判定された印刷設定項目が、前記特定手段により特定された優先項目である場合、当該印刷設定項目の再設定を促す情報を前記クライアント装置に送信する送信手段と、
    前記判定手段により設定値の不整合があると判定された印刷設定項目が、前記特定手段により特定された優先項目でない場合、当該印刷設定項目の設定値を、当該不整合が解消するように変更する変更手段と、を有することを特徴とする情報処理装置。
  2. 前記特定手段は、前記設定データから印刷設定項目の設定値を取得できると判断すると、当該印刷設定項目を、優先項目として特定することを特徴とする請求項に記載の情報処理装置。
  3. 前記設定データは、印刷設定項目の設定値の情報と、リンタドライバで設定することが可能な印刷設定項目のそれぞれについて前記クライアント装置で設定値を変更することができるか否かを識別する情報と、を含み、
    前記特定手段は、前記設定データから印刷設定項目の設定値を取得でき、且つ、当該印刷設定項目の設定値を前記クライアント装置で変更することができると判断すると、当該印刷設定項目を、優先項目として特定することを特徴とする請求項に記載の情報処理装置。
  4. 前記特定手段は、前記設定データから印刷設定項目の設定値を取得でき、且つ、当該印刷設定項目の設定値を前記クライアント装置で変更することができると判断すると、当該印刷設定項目を、優先項目として特定するとともに、前記設定データから印刷設定項目の設定値を取得できるが、当該印刷設定項目の設定値を前記プリンタドライバで変更することができないと判断すると、当該印刷設定項目を、準優先項目として特定し、
    前記変更手段は、前記特定手段により準優先項目として特定された印刷設定項目に不整合があると、当該印刷設定項目の設定値を変更することを特徴とする請求項に記載の情報処理装置。
  5. 前記設定データは、クライアント装置で指定できる印刷設定項目を特定するための情報を含み、
    前記特定手段は、前記クライアント装置で指定できる印刷設定項目を特定するための情報に基づいて、前記クライアント装置で指定できる印刷設定項目を優先項目として特定することを特徴とする請求項に記載の情報処理装置。
  6. 前記特定手段は、前記受信手段により受信された前記設定データから、リンタドライバで設定することが可能な全ての印刷設定項目の設定値を取得できないと判断すると、設定値を取得できる印刷設定項目のうち、予め設定された優先順位が最上位の印刷設定項目を優先項目として特定するとともに、設定値を取得できる印刷設定項目のうち、優先項目としなかった残りの印刷設定項目を準優先項目として特定し、
    前記変更手段は、前記特定手段により準優先項目として特定された印刷設定項目に不整合があると、当該印刷設定項目の設定値を変更することを特徴とする請求項に記載の情報処理装置。
  7. 刷設定項目の設定値を少なくとも有する設定データをクライアント装置から受信する受信工程と、
    前記設定データに基づいて、前記クライアント装置で指定できる印刷設定項目の少なくとも1つを優先項目として特定する特定工程と、
    前記設定データにおける印刷設定項目の設定値に不整合があるか否かを判定する判定工程と、
    前記判定工程により設定値の不整合があると判定された印刷設定項目が、前記特定工程により特定された優先項目である場合、当該印刷設定項目の再設定を促す情報を前記クライアント装置に送信する送信工程と、
    前記判定工程により設定値の不整合があると判定された印刷設定項目が、前記特定工程により特定された優先項目でない場合、当該印刷設定項目の設定値を、当該不整合が解消するように変更する変更工程と、を有することを特徴とする印刷設定方法。
  8. 前記特定工程は、前記設定データから印刷設定項目の設定値を取得できると判断すると、当該印刷設定項目を、優先項目として特定することを特徴とする請求項に記載の印刷設定方法。
  9. 前記設定データは、印刷設定項目の設定値の情報と、リンタドライバで設定することが可能な印刷設定項目のそれぞれについて前記クライアント装置で設定値を変更することができるか否かを識別する情報と、を含み、
    前記特定工程は、前記設定データから印刷設定項目の設定値を取得でき、且つ、当該印刷設定項目の設定値を前記クライアント装置で変更することができると判断すると、当該印刷設定項目を、優先項目として特定することを特徴とする請求項に記載の印刷設定方法。
  10. 前記特定工程は、前記設定データから印刷設定項目の設定値を取得でき、且つ、当該印刷設定項目の設定値を前記クライアント装置で変更することができると判断すると、当該印刷設定項目を、優先項目として特定するとともに、前記設定データから印刷設定項目の設定値を取得できるが、当該印刷設定項目の設定値を前記プリンタドライバで変更することができないと判断すると、当該印刷設定項目を、準優先項目として特定し、
    前記変更工程は、前記特定工程により準優先項目として特定された印刷設定項目に不整合があると、当該印刷設定項目の設定値を変更することを特徴とする請求項に記載の印刷設定方法。
  11. 前記設定データは、クライアント装置で指定できる印刷設定項目を特定するための情報を含み、
    前記特定工程は、前記クライアント装置で指定できる印刷設定項目を特定するための情報に基づいて、前記クライアント装置で指定できる印刷設定項目を優先項目として特定することを特徴とする請求項に記載の印刷設定方法。
  12. 前記特定工程は、前記受信工程により受信された前記設定データから、リンタドライバで設定することが可能な全ての印刷設定項目の設定値を取得できないと判断すると、設定値を取得できる印刷設定項目のうち、予め設定された優先順位が最上位の印刷設定項目を優先項目として特定するとともに、設定値を取得できる印刷設定項目のうち、優先項目としなかった残りの印刷設定項目を準優先項目として特定し、
    前記変更工程は、前記特定工程により準優先項目として特定された印刷設定項目に不整合があると、当該印刷設定項目の設定値を変更することを特徴とする請求項に記載の印刷設定方法。
  13. 請求項2の何れか1項に記載の印刷設定方法の各工程をコンピュータに実行させることを特徴とするコンピュータプログラム。
JP2011045481A 2011-03-02 2011-03-02 情報処理装置、印刷設定方法、及びコンピュータプログラム Active JP5791311B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011045481A JP5791311B2 (ja) 2011-03-02 2011-03-02 情報処理装置、印刷設定方法、及びコンピュータプログラム
US13/399,880 US9213508B2 (en) 2011-03-02 2012-02-17 Information processing apparatus, print setting method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011045481A JP5791311B2 (ja) 2011-03-02 2011-03-02 情報処理装置、印刷設定方法、及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2012181762A JP2012181762A (ja) 2012-09-20
JP5791311B2 true JP5791311B2 (ja) 2015-10-07

Family

ID=46753120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011045481A Active JP5791311B2 (ja) 2011-03-02 2011-03-02 情報処理装置、印刷設定方法、及びコンピュータプログラム

Country Status (2)

Country Link
US (1) US9213508B2 (ja)
JP (1) JP5791311B2 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5747885B2 (ja) * 2012-09-18 2015-07-15 コニカミノルタ株式会社 印刷システム、サーバーおよびコンピュータープログラム
JP2014106570A (ja) * 2012-11-22 2014-06-09 Ricoh Co Ltd 情報処理装置、ジョブ処理制御方法、及びジョブ処理制御プログラム
JP2014127783A (ja) * 2012-12-26 2014-07-07 Canon Inc 情報処理装置の管理システム、情報処理装置、情報処理装置の制御方法、及びプログラム
JP6142527B2 (ja) * 2012-12-27 2017-06-07 株式会社リコー 設定情報管理プログラム、情報処理装置及び設定情報管理方法
US9948809B2 (en) * 2013-02-01 2018-04-17 Canon Kabushiki Kaisha Image forming apparatus, memory management method for image forming apparatus, and program, using discretely arranged blocks in prioritizing information
JP5907919B2 (ja) * 2013-03-21 2016-04-26 株式会社沖データ 情報処理装置、機能設定方法及びコンピュータプログラム
US9292234B2 (en) 2013-11-04 2016-03-22 Ricoh Company, Ltd. Print job correction mechanism
JP6314455B2 (ja) * 2013-12-05 2018-04-25 株式会社リコー 情報処理システム、情報処理装置、情報処理方法及びプログラム
JP2015215589A (ja) * 2014-04-21 2015-12-03 キヤノン株式会社 画像形成装置及びトナー残量推定方法
US9557939B2 (en) * 2015-03-05 2017-01-31 Océ-Technologies B.V. Print job processing system and method
US10484551B2 (en) * 2015-03-18 2019-11-19 Ricoh Company, Limited Information processing apparatus configured to detect settings in a conflicting relation, information processing method, and information processing system
US9760316B2 (en) * 2015-03-27 2017-09-12 Konica Minolta Laboratory U.S.A., Inc. Method and system for managing software version compatibility amongst devices in a multi-device network environment
JP6233354B2 (ja) * 2015-06-09 2017-11-22 コニカミノルタ株式会社 画像形成装置及びプログラム
JP6478850B2 (ja) * 2015-07-13 2019-03-06 キヤノン株式会社 情報処理装置、アプリケーションプログラム及び制御方法
JP6561855B2 (ja) 2016-01-20 2019-08-21 セイコーエプソン株式会社 電子機器、電子機器の制御プログラム
EP3594801A1 (en) * 2018-06-29 2020-01-15 Canon Kabushiki Kaisha Information processing apparatus processing print setting, control method, and control program
JP2020047244A (ja) * 2018-09-14 2020-03-26 キヤノン株式会社 印刷制御装置、情報処理装置、プリントサービスシステム、及びそれらの制御方法、並びにプログラム
US10956095B2 (en) * 2018-09-14 2021-03-23 Canon Kabushiki Kaisha Server system that improves availability of a plurality of printers, print controller, information processing apparatus, and print service system
JP7207947B2 (ja) * 2018-10-29 2023-01-18 キヤノン株式会社 印刷制御装置および印刷変換プログラム
JP2020071607A (ja) * 2018-10-30 2020-05-07 キヤノン株式会社 電子機器、電子機器の制御方法およびプログラム
TWI676106B (zh) * 2018-11-09 2019-11-01 虹光精密工業股份有限公司 以圖碼開啟點對點傳輸的資料交換系統及方法
JP7282576B2 (ja) * 2019-04-09 2023-05-29 キヤノン株式会社 印刷システム、印刷装置と情報処理装置の制御方法、及びプログラム
JP2021124790A (ja) * 2020-01-31 2021-08-30 キヤノン株式会社 サーバシステム、およびサーバシステムと通信する情報処理装置ならびにコンピュータプログラム
US11048455B1 (en) * 2020-03-04 2021-06-29 Canon Kabushiki. Kaisha Devices, systems, and methods for resolving conflicting print settings
NL2026099B1 (en) * 2020-07-20 2022-03-21 Canon Production Printing Holding Bv Method for executing a print job in accordance with a job specification
JP2024001771A (ja) * 2022-06-22 2024-01-10 ブラザー工業株式会社 制御装置、制御装置のためのコンピュータプログラム、及び、制御方法
JP7456557B1 (ja) 2022-12-19 2024-03-27 三菱電機株式会社 作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6111659A (en) * 1995-09-26 2000-08-29 Matsushita Electric Industrial Co., Ltd. Digital copier with image scanner apparatus and offline image data and control data interface
JP3634783B2 (ja) * 2001-09-14 2005-03-30 キヤノン株式会社 印刷システム及び印刷データ処理方法
JP3740438B2 (ja) * 2002-05-31 2006-02-01 キヤノン株式会社 印刷制御方法、印刷制御装置、プログラム及びコンピュータ可読の記憶媒体
US7903272B2 (en) * 2004-11-15 2011-03-08 Canon Kabushiki Kaisha Data processing apparatus, print setting adjusting method, recording medium storing computer-readable program therein, and program
JP4313334B2 (ja) * 2005-05-23 2009-08-12 シャープ株式会社 印刷制御プログラム、印刷装置の制御方法および前記プログラムを備えてなる印刷制御装置
JP5105855B2 (ja) * 2006-12-19 2012-12-26 キヤノン株式会社 情報処理装置及びその制御方法、コンピュータプログラム
JP4645917B2 (ja) * 2008-06-26 2011-03-09 ブラザー工業株式会社 画像処理システム及び設定プログラム
JP5094627B2 (ja) 2008-08-08 2012-12-12 キヤノン株式会社 情報処理装置、方法、制御プログラム
JP5522952B2 (ja) * 2009-02-02 2014-06-18 キヤノン株式会社 印刷制御装置、印刷制御方法、およびプログラム
DE102009010902A1 (de) * 2009-03-02 2010-09-16 SOFHA GmbH Gesellschaft für Soft- und Hardware Verfahren und Anordnung zur Konfiguration eines Druckertreibers sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium

Also Published As

Publication number Publication date
US9213508B2 (en) 2015-12-15
US20120224207A1 (en) 2012-09-06
JP2012181762A (ja) 2012-09-20

Similar Documents

Publication Publication Date Title
JP5791311B2 (ja) 情報処理装置、印刷設定方法、及びコンピュータプログラム
US8823990B2 (en) Print job distribution within a printing system
JP5487801B2 (ja) 印刷装置
JP6238711B2 (ja) 印刷装置、印刷制御方法及びプログラム
JP2011186725A (ja) プリンタードライバー、印刷制御装置、プリンター検索プログラム
JP7230387B2 (ja) 情報処理装置及び情報処理プログラム
JP2007164480A (ja) 印刷システム及び印刷方法
JP2007310702A (ja) プリンタ検索システム、プリンタ検索方法
US10871929B2 (en) Information processing apparatus that determines an image forming apparatus to be used for a printing job based on a number of sheets to be used in the printing job, and related image forming apparatus determination method and storage medium
US9164706B2 (en) Information processing apparatus, recording medium, and control method
JP4442875B2 (ja) データ処理装置及び該装置における印刷制御方法、プログラム
JP2011128800A (ja) 印刷装置および印刷システム
JP2016099763A (ja) 印刷ジョブ管理装置、管理方法及びプログラム
JP2007179371A (ja) 印刷システム
JP2019061621A (ja) プログラムおよび印刷システム
US9575697B2 (en) Printing device, system, and method when changing of printers
JP7298217B2 (ja) 情報処理システム、情報処理装置、情報処理プログラム、画像処理装置及び画像処理プログラム
JP2023034958A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP6562989B2 (ja) 画像形成装置、画像形成装置の制御方法及びプログラム
JP7207071B2 (ja) プリントサーバプログラムおよび印刷システム
JP6494395B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
US9310746B2 (en) Printing apparatus, control method for printing apparatus, and storage medium
US9177234B2 (en) Print controlling terminal apparatus, print controlling method, image forming apparatus, and method of controlling for analyzing state information
EP4149102A1 (en) Information processing apparatus, method of controlling information processing apparatus, and program
JP2007025977A (ja) 印刷支援システムおよび印刷支援プログラム、並びに印刷支援方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150306

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150707

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150804

R151 Written notification of patent or utility model registration

Ref document number: 5791311

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151