IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許7393477情報処理装置とその制御方法、およびコンピュータプログラム
<>
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図1
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図2
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図3
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図4
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図5
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図6
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図7
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図8
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図9
  • 特許-情報処理装置とその制御方法、およびコンピュータプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-28
(45)【発行日】2023-12-06
(54)【発明の名称】情報処理装置とその制御方法、およびコンピュータプログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20231129BHJP
   B41J 29/38 20060101ALI20231129BHJP
【FI】
G06F3/12 355
G06F3/12 305
G06F3/12 327
G06F3/12 332
G06F3/12 357
B41J29/38 202
【請求項の数】 21
(21)【出願番号】P 2022092390
(22)【出願日】2022-06-07
(62)【分割の表示】P 2018125297の分割
【原出願日】2018-06-29
(65)【公開番号】P2022125039
(43)【公開日】2022-08-26
【審査請求日】2022-06-07
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】平川 悟史
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開2012-194966(JP,A)
【文献】特開2015-232755(JP,A)
【文献】特開2016-146167(JP,A)
【文献】特開2015-125511(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
B41J 29/38
(57)【特許請求の範囲】
【請求項1】
同時に設定することができない第1の設定値の組合せが記憶されたファイルを記憶する情報処理装置であって、
外部装置から第2の設定値の組合せを取得する取得手段と、
取得した前記第2の設定値の組合せに基づき前記ファイルを更新する更新手段と、
更新後の前記ファイルを前記情報処理装置のオペレーティングシステムの機能として提供されるプリンタドライバと紐づけされた画像形成装置の情報と対応づけて記憶する記憶手段と、
前記記憶されたファイルに基づき、同時に設定することができない設定値の組合せが印刷設定に含まれないよう制御する制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記取得手段は、前記第2の設定値の組合せに加えて前記画像形成装置において同時に設定することができる設定値を、前記外部装置から取得し、
前記更新手段は、前記外部装置から取得した前記設定値を前記ファイルに書き込むことを特徴とする請求項に記載の情報処理装置。
【請求項3】
前記ファイルに書き込まれた前記設定値に基づき、印刷設定画面を表示する表示手段を、更に有することを特徴とする請求項に記載の情報処理装置。
【請求項4】
前記制御手段は、前記印刷設定画面を介して設定され印刷設定に、同時に設定することができない設定値の組合せが含まれないよう制御することを特徴とする請求項に記載の情報処理装置。
【請求項5】
前記プリンタドライバは、複数のベンダの画像形成装置で印刷することができる印刷データの生成に関する処理を行うことを特徴とする請求項1乃至4のいずれか一項に記載の情報処理装置。
【請求項6】
前記プリンタドライバは、画像形成装置を提供するベンダとは異なるベンダにより提供されるプリンタドライバであることを特徴とする請求項1乃至5のいずれか一項に記載の情報処理装置。
【請求項7】
前記プリンタドライバは、標準化された印刷方式に基づき印刷ジョブを生成するプリンタドライバであることを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置。
【請求項8】
前記ファイルは、前記プリンタドライバと対応づけられたファイルであり、画像形成装置が提供することができる機能を記述するファイルであることを特徴とする請求項1乃至7のいずれか一項に記載の情報処理装置。
【請求項9】
前記第2の設定値の組合せは、用紙サイズの設定値と他の設定項目の設定値の組合せであることを特徴とする請求項1乃至のいずれか一項に記載の情報処理装置。
【請求項10】
前記同時に設定することができない設定値の組合せは、禁則する設定値の組合せであることを特徴とする請求項1乃至のいずれか一項に記載の情報処理装置。
【請求項11】
同時に設定することができない第1の設定値の組合せが記憶されたファイルを記憶する情報処理装置の制御方法であって、
外部装置から第2の設定値の組合せを取得する取得工程と、
取得した前記第2の設定値の組合せに基づき前記ファイルを更新する更新工程と、
前記情報処理装置のオペレーティングシステムの機能として提供されるプリンタドライバと紐づけされた画像形成装置の情報と対応づけて記憶される前記ファイルに基づき、同時に設定することができない設定値の組合せが印刷設定に含まれないよう制御する制御工程と、
を有することを特徴とする制御方法。
【請求項12】
画像形成装置において利用することができる設定値を、前記外部装置から取得する他の取得工程をさらに有し、
前記更新工程において、前記取得工程において取得された前記第2の設定値の組合せ、および、前記他の取得工程において取得された前記設定値に基づき、前記ファイルを更新することを特徴とする請求項11に記載の制御方法。
【請求項13】
更に、前記ファイルに基づき、印刷設定画面を表示る表示制御工程を有することを特徴とする請求項12に記載の制御方法
【請求項14】
前記制御工程は、表示された前記印刷設定画面を介して設定された印刷設定に、同時に設定することができない設定値の組合せが含まれないよう制御することを特徴とする請求項13に記載の制御方法
【請求項15】
前記プリンタドライバは、複数のベンダの画像形成装置で印刷することができる印刷データの生成に関する処理を行うことを特徴とする請求項11乃至14のいずれか一項に記載の制御方法
【請求項16】
前記プリンタドライバは、画像形成装置を提供するベンダとは異なるベンダにより提供されるプリンタドライバであることを特徴とする請求項11乃至15のいずれか一項に記載の制御方法。
【請求項17】
前記プリンタドライバは、標準化された印刷方式に基づき印刷ジョブを生成するプリンタドライバであることを特徴とする請求項11乃至16のいずれか一項に記載の制御方法。
【請求項18】
前記ファイルは、前記プリンタドライバと対応づけられたファイルであり、前記画像形成装置が提供することができる機能を記述するファイルであることを特徴とする請求項11乃至17のいずれか一項に記載の制御方法
【請求項19】
前記第2の設定値の組合せは、用紙サイズの設定値と他の設定項目の設定値の組合せであることを特徴とする請求項11乃至18のいずれか一項に記載の制御方法
【請求項20】
前記外部装置は、画像形成装置であることを特徴とする請求項11乃至19のいずれか一項に記載の制御方法。
【請求項21】
請求項11乃至20のいずれか一項に記載の制御方法の各工程を情報処理装置のコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置とその制御方法、およびコンピュータプログラムに関する。
【背景技術】
【0002】
ホストコンピュータ(PC)から印刷装置に印刷データ送信して印刷させる際、そのPCにインストールされたプリンタドライバを利用して印刷ジョブを生成し、その生成した印刷ジョブを印刷装置に送信して印刷を行う構成が一般的である。このようなPCには、基本ソフトウェアであるオペレーティングシステム(以下、OS)がインストールされており、プリンタドライバはそのOSが規定する仕様に従って構成される。一方、印刷装置を提供するベンダーは、その印刷装置に対応し、PCにインストールされているOSの仕様に適合するプリンタドライバを提供することにより、そのPCから、その印刷装置に対して印刷ジョブを送信して印刷させることができる。このベンダーが提供するプリンタドライバは、その印刷装置の能力に適合しており、その印刷装置に適した禁則情報(印刷設定定義や禁則条件式)や禁則スクリプトを有している。従って、PCのユーザは、そのPCからその印刷装置を使用して印刷を行うことにより、そのユーザの意図を反映した印刷物を取得することができる。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2014-209316号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、プリンタドライバには、印刷装置のベンダーが提供するプリンタドライバとは別に、OSが提供する基本的な印刷機能のみ対応した標準プリンタドライバが存在する。このようなOSが提供する標準プリンタドライバは、印刷装置のベンダーが提供するプリンタドライバでないため、印刷に使用する印刷装置に適合した禁則情報や禁則スクリプトを備えていない。そのため、そのようなプリンタドライバを使用して印刷装置に印刷を実行させると、その印刷装置の機能に適合した印刷を実行できない可能性があるという課題がある。
【0005】
本発明の目的は、上記従来技術の問題点の少なくとも一つを解決することにある。
【0006】
本発明の目的は、画像形成装置の機能に適合した印刷を実行できない事態が生じるのを防止する技術を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
同時に設定することができない第1の設定値の組合せが記憶されたファイルを記憶する情報処理装置であって、
外部装置から第2の設定値の組合せを取得する取得手段と、
取得した前記第2の設定値の組合せに基づき前記ファイルを更新する更新手段と、
更新後の前記ファイルを前記情報処理装置のオペレーティングシステムの機能として提供されるプリンタドライバと紐づけされた画像形成装置の情報と対応づけて記憶する記憶手段と、
前記記憶されたファイルに基づき、同時に設定することができない設定値の組合せが印刷設定に含まれないよう制御する制御手段と、を有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像形成装置で利用することができない設定値の組合せが印刷設定に含まれるのを防止できるという効果がある。
【0009】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。尚、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【0010】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
図1】実施形態に係る印刷システムの概略構成を示す図。
図2】実施形態に係るホストコンピュータとプリンタのハードウェア構成を説明するブロック図。
図3】実施形態に係るホストコンピュータのソフトウェアの構成を説明するブロック図。
図4】実施形態に係る印刷システムの印刷環境の一例を説明する図。
図5】実施形態に係るホストコンピュータの標準プリンタドライバがプリンタからデバイス機能テキストファイルを取得し、自身のデバイス機能テキストファイルを更新する処理を説明するフローチャート。
図6】実施形態に係るプリンタのデバイス機能テキストファイルの一例を示す図。
図7】実施形態に係るホストコンピュータの標準プリンタドライバがデフォルト状態で有しているデバイス機能テキストファイルの一例を示す図。
図8図6図7で示されたデバイス機能テキストファイルを合成した例を示す図。
図9】実施形態に係るホストコンピュータで表示される、コンフィグレーションモジュールがデバイス機能テキストファイルを読み込むことで生成される印刷設定UIの一例を示す図。
図10】実施形態に係るプリンティングシステムで保存される、デバイス機能テキストファイルとプリンタとを関連付ける情報の一例を示す図。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【0012】
図1は、実施形態に係る印刷システムの概略構成を示す図である。
【0013】
実施形態に係る印刷システムは、ホストコンピュータ101、サーバ104及びプリンタ(印刷装置)102を備える。ホストコンピュータ101は、情報処理装置の一例である。サーバ104は、ホストコンピュータ101に対してデータを配信する。プリンタ102は、ページ記述言語(Page Description Language、以下PDL)形式の印刷データを受信すると、その印刷データに従って印刷を行う。これら装置は、Wide Area Network(WAN)を含むネットワーク103を通じて相互に通信可能である。尚、プリンタ102は、印刷機能のみを備える単一機能のプリンタであってもよく、例えば、印刷機能、スキャン機能、複写機能等を備える複合機であってもよい。また、ホストコンピュータ101は、ネットワーク103に複数台接続されていてもよい。
【0014】
図2は、実施形態に係るホストコンピュータ101とプリンタ102のハードウェア構成を説明するブロック図である。
【0015】
ホストコンピュータ101において、中央演算処理装置(CPU)201は、ランダムアクセスメモリ(RAM)202に展開されたプログラムに従って、システムバスに接続される各デバイスを制御する。尚、ここでホストコンピュータ101は、少なくとも1つのCPU201を備えるものとする。加えて、CPU201が外部メモリ209に記憶されているプログラムをRAM202に展開して実行することによって、ホストコンピュータ101のソフトウェア構成(図3)及び後述するフローチャートの各ステップの処理が実現される。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。リードオンリーメモリ(ROM)203は、ブートプログラムや基本入出力システム(BIOS)等の各種プログラムを記憶している。
【0016】
操作部インタフェース(I/F)204は、キーボードやポインティングデバイスなどのタッチUI(ユーザインタフェース)などの操作部205を制御するインタフェースである。操作部205は、ユーザからの操作を受け付ける受付部として機能する。表示部I/F206は、表示部207への表示を制御する。表示部207は、ユーザに対して情報を表示する表示部として機能する。外部メモリI/F208は、例えばハードディスク(HD)、ソリッドステートディスク(SSD)等の外部メモリ209との間のアクセスを制御する。外部メモリ209は、オペレーティングシステム(OS)210をはじめ、アプリケーション実行環境213、タッチパネル、デスクトップそれぞれに対応した各種アプリケーション212や各種ファイル等を記憶している。外部メモリ209は、ホストコンピュータ101が読み取り可能な記憶媒体として機能する。ネットワークI/F214は、ネットワーク103を介してプリンタ102に接続され通信制御処理を行う。尚、サーバ104もホストコンピュータ101のハードウェア構成と同じ構成を内包しており、同様に動作する。プリンタドライバ(印刷制御プログラム)211は、OS210が提供するプリンタドライバである。
【0017】
プリンタ102は、CPU221により制御される。CPU221は、ROM223のプログラム用ROM、或いは外部メモリ229に記憶された制御プログラム等に基づいて動作する。CPU221は、印刷部I/F225を介して印刷部(プリンタエンジン)226に出力情報としての画像信号を出力する。またROM223のプログラムROMには、CPU221の制御プログラム等が記憶されている。ROM223のフォント用ROMには、前述した出力情報を生成する際に使用するフォントデータ等が記憶される。プリンタ102がハードディスク等の外部メモリ229を有していないプリンタの場合、ROM223のデータ用ROMには、ホストコンピュータ101で利用される情報等が記憶される。
【0018】
CPU221は、入力部224を介して、ネットワーク103経由で、ホストコンピュータ101との通信処理が可能となっており、プリンタ102の情報等をホストコンピュータ101に通知できる。操作パネル227は、ユーザが操作するためのスイッチ及び表示器等を有する。RAM222は、CPU221の主メモリや、ワークエリア等として機能する。また、RAM222は、前述した出力情報の展開領域や、環境データの格納領域等としても用いられる。外部メモリ229は、オプションとしてプリンタ102に接続される。外部メモリ229は、フォントデータ、エミュレーションプログラム、フォームデータ、言語系の異なるプリンタ制御言語を解釈するプログラム、操作パネル227から入力されたプリンタモードの設定情報等を記憶する。また、このプリンタ102が有する機能の定義と、無効な機能の組み合わせを記述したデバイス機能テキストファイル(プリンタ記述ファイル)230を記憶している。外部メモリ229へのアクセスはメモリコントローラ(MC)228により制御される。外部メモリ229は1個に限らず、複数個であってもよい。
【0019】
図3は、実施形態に係るホストコンピュータ101のソフトウェアの構成を説明するブロック図である。
【0020】
ホストコンピュータ101のソフトウェアは、OS210、アプリケーション実行環境213とアプリケーション212の3つの層で構成されている。
【0021】
次にOS210の個々の要素について説明する。OS210は、大きくプリンティングシステム325、プリンタドライバ211とに大別される。プリンティングシステム325は以下の要素を含んでいる。プリントキュー303は、ネットワーク103に存在するプリンタを使用して印刷を行う際に、印刷ジョブを一時的に保存する領域である。実施形態では、プリンタ102のプリントキュー303が作成されているものとする。プリントキュー303が作成されると、プリンタドライバ211のデバイス機能テキストファイル307に記述されている一部の機能に基づいて、プリントキュー303に紐づく記憶領域302が生成される。この記憶領域302は、プリントキューごとに個別の設定や機能を記憶する。このように記憶領域302に特定の記述を記憶することにより、プリンタドライバ211のデバイス機能テキストファイル307の機能定義部に対して、ジョブ毎に切り替える印刷設定機能ではなく、プリントキュー毎に制御可能な機能を提供することができる。
【0022】
スプーラ301は、アプリケーション212から受け取った印刷対象データであるXPS(XML Paper Specification)ファイルを一時的に保存及び管理するモジュールである。スプーラ301に保存されたXPSファイルは、後述するフィルタパイプラインマネージャ305を通してPDLに変換された後、スプーラ301を通じてプリンタ102へ送信される。
【0023】
フィルタパイプラインマネージャ305は、OS210の一部として構成されている。プリンタドライバ211のフィルタ309は、後述するプリンタドライバ211を構成する要素の一つである。フィルタパイプラインマネージャ305は、プリンタドライバ211のフィルタコンフィグ308の定義に基づき、フィルタ309を、1或いは複数読み込み、スプーラ301に保存されているXPSファイルをPDLへ変換する。
【0024】
コンフィグレーションモジュール304は、プリントチケットの生成、変更、及び不正な設定を訂正する禁則機能などを有するモジュールである。コンフィグレーションモジュール304のAPI(Application Programming Interface)を呼び出すことで、印刷設定情報であるプリントチケットや、デバイス能力情報であるプリントケーパビリティを取得できる。これらプリントチケットや、プリントケーパビリティは、XML(Extensible Markup Language)形式で記述される。
【0025】
プリンタドライバ211は、フィルタ309、フィルタコンフィグ308、スクリプトファイル306、デバイス機能テキストファイル307を有している。フィルタ309は、フィルタパイプラインマネージャ305によって呼び出されるモジュールであり、XPSファイルをPDLに変換する役割を持っている。フィルタコンフィグ308は、フィルタパイプラインマネージャ305が参照する定義ファイルであり、フィルタ309を呼び出す順序を記述している。スクリプトファイル306と、デバイスの機能が記述されたデバイス機能テキストファイル307は、コンフィグレーションモジュール304の動作をカスタマイズするのに使用される。
【0026】
次に、アプリケーション実行環境213が有する個々の要素について説明する。アプリケーション実行環境213は、タッチアプリ実行環境323及びデスクトップアプリ実行環境324を有している。タッチアプリ実行環境323は、アプリケーション212の一種であるタッチアプリ321を実行するためのAPI群を有し、それらを実行する際のメモリ管理なども行う。一方、デスクトップアプリ実行環境324は、アプリケーション212の一種であるデスクトップアプリ322を実行するためのAPI群を有し、それらを実行する際のメモリ管理などを行う。
【0027】
次に、アプリケーション212が有する個々の要素について説明する。アプリケーション212は、タッチアプリ321及びデスクトップアプリ322の二種類のアプリケーションを含んでいる。タッチアプリ321は、アプリケーション212の一種で、タッチアプリ実行環境323の上で動作する。またタッチアプリ321は、インターネット上で公開されるアプリケーション配布システムを通じて、ユーザ自身が選択し、ホストコンピュータ101にインストールされる。デスクトップアプリ322は、メニュー画面などに表示されたアイコンなどをユーザが指示することにより動作し、その指示されたアイコンに対応する機能を起動する。
【0028】
図4は、実施形態に係る印刷システムの印刷環境の一例を説明する図である。ここではプリンタ102に代わって、図4に示すMFP401,402がネットワーク103に接続されているものとする。
【0029】
ホストコンピュータ101にインストールされるMFP401用のプリンタドライバは、複数種類存在し得る。例えば、機種別プリンタドライバ412は、MFP402専用のプリンタドライバである。一方、標準プリンタドライバ411は、標準化された印刷方法を利用することで、1つのドライバで、複数ベンダのプリンタであるMFP401,402への印刷を可能にするプリンタドライバである。標準プリンタドライバ411は、OS210と共にOS210のパッケージ内の機能の1つとして提供されており、これは前述のプリンタドライバ211に対応している。
【0030】
このように、プリンタ102が利用可能なプリンタドライバは複数存在し、利用されるプリンタドライバは、インターネット接続状態やOS210の種類、利用環境等に応じて異なる。通常、OS210は、プリンタドライバのバージョン情報等を参照して、利用可能なプリンタドライバの内、最も機能が高く、且つ新しいプリンタドライバを自動的に選定してインストールする。尚、プリンタドライバには、ハードウェアID(HWID)や、Compatible IDと呼ばれる、装置を特定するための情報が含まれている。ホストコンピュータ101にプリンタが接続されると、OS210は、そのプリンタからこれらのID情報を取得し、該当するIDを有するプリンタドライバを探索してインストールする。
【0031】
図4の例では、MFP401のハードウェアIDは「MFP1_abcd」であり、MFP402のハードウェアIDは「MFP2_ijkl」である。そしてMFP401の印刷データは、標準プリンタドライバ411により作成されてMFP401に送信される。一方、MFP401の印刷データは、標準プリンタドライバ411或いは機種別プリンタドライバ412により作成されてMFP402に送信される。
【0032】
図5は、実施形態に係るホストコンピュータ101のプリンタドライバ211がプリンタ102からデバイス機能テキストファイルを取得し、自身のデバイス機能テキストファイル307を更新する処理を説明するフローチャートである。尚、このフローチャートに示す各動作(ステップ)は、CPU201が外部メモリ209に記憶された各モジュール、コンポーネント、アプリケーションを実現するためのプログラムをRAM202に展開して実行することにより達成される。以下、各制御モジュール、コンポーネント、アプリケーションによって提供される制御を説明する場合、CPU201によって実現される機能部を主語として説明する。また、表示、ユーザ操作の受け付け、及びデータ送受信処理などの一部処理は、CPU201、各I/F及び、I/Fに接続された入出力デバイスが協働して実現するものとする。このフローチャートで示す処理は、ユーザの指示により、アプリケーション212から印刷設定画面が起動されることに応じて開始される。
【0033】
まずS501で、標準プリンタドライバであるプリンタドライバ211が、ネットワーク103経由で接続しているプリンタ102が有するデバイス機能テキストファイル230を取得するよう試みる。例えば、図4で示す印刷環境では、標準プリンタドライバ411がMFP401と接続されている。よって、タッチアプリ321もしくはデスクトップアプリ322からの印刷設定の表示指示が行われると、標準プリンタドライバ411は、MFP401に対してデバイス機能テキストファイルの取得を要求する。即ち、標準プリンタドライバ411が、MFP401が外部メモリ229に保存しているデバイス機能テキストファイル230をネットワーク103経由で取得しようとする。
【0034】
前述したようにデバイス機能テキストファイル230は、そのプリンタが有する機能の定義と、機能の無効な組み合わせを記述したものである。またこれら機能には、優先順位を設けることができる。これら機能の優先順位は、数値の小さいものほど高く、数値が大きくなるにつれて優先順位が低くなる。そして、これら機能の組み合わせが無効である設定がなされたときは、優先順位が低い機能の選択肢が他の選択肢に丸められることで、正しい設定が作成される。無効な機能の組み合わせは、機能と、機能の選択肢の複数の組からなるリストとして定義する。ここでは一対一の機能の組み合わせだけでなく、複数の機能の組み合わせも定義することができ、その場合は、記述された全ての設定が一致するときに無効であることを意味する。またデバイス機能テキストファイル230には、プリンタ102の機能に適した記述がなされており、例えば、図6で示すようなテキストで記述されている。
【0035】
図6は、実施形態に係るプリンタ102のデバイス機能テキストファイル230の一例を示す図である。
【0036】
図6では、優先順位が「100」、デフォルトの用紙サイズは「A4」で、用紙サイズのオプションとして「A4」「A3」「カスタム(ユーザ設定)」が設定可能である。また両面印刷は「なし」となっている。更に、無効な機能組み合わせとして、602には、A3サイズの縦型の用紙の右上と左下のステープルが無効となっている。更に、A3サイズの横型の用紙の左上と右下のステープルが無効となっている。
【0037】
次にS502に進みプリンタドライバ211は、S501でデバイス機能テキストファイル230を取得できたかどうか判定し、取得できたと判定した場合はS503に進み、そうでないときはS506に進む。S506でプリンタドライバ211は、プリンタ102用に合成されたデバイス機能ファイルがキャッシュとして記憶領域302に存在するか否か確認する。ここでキャッシュとして存在するか否かとは、後述するS504で合成したデバイス機能テキストファイルが記憶領域302に存在しており、かつ該当プリンタ102用のファイルであるか否かに基づいて判定する。S507でプリンタドライバ211は、そのプリンタ102用に合成されたデバイス機能ファイルが記憶されていると判定した場合はS508に進み、記憶領域302に記憶されているデバイス機能テキストファイルをプリンティングシステム325に通知して、この処理を終了する。一方、S507でそのプリンタ102用のデバイス機能ファイルが記憶されていないと判定した場合はS509に進み、基本的なデバイス機能テキストファイルをプリンティングシステム325に通知して、この処理を終了する。
【0038】
一方、S502でデバイス機能テキストファイル230を取得できたときはS503に進みプリンタドライバ211は、標準プリンタドライバ411が有する基本的な機能の定義と、機能の無効な組み合わせが記述されたデバイス機能テキストファイル307を取得する。尚、ここでデバイス機能テキストファイル307は、デフォルト状態で標準プリンタドライバ411が有しているファイルであり、例えば、図7で示すようなテキストで記述されている。
【0039】
図7は、実施形態に係るホストコンピュータ101の標準プリンタドライバ211がデフォルト状態で有しているデバイス機能テキストファイル307の一例を示す図である。
【0040】
ここでは、優先順位が「100」、デフォルトの用紙サイズは「A4」で、用紙サイズのオプションとして「A4」「カスタム(ユーザ設定)」が設定可能である。また用紙の向きの優先順位は「200」で、デフォルトの向きは「縦」、オプションとして「縦」と「横」が設定できる。更に、ステープルの設定として、優先順位が「300」、デフォルトオプションは「なし」、ステープル位置のオプションとして「左上」「左下」「右上」「右下」が設定可能である。
【0041】
次にS504に進みプリンタドライバ211は、S501でプリンタ102から取得したデバイス機能テキストファイル230と、S503で標準プリンタドライバ211から取得したデバイス機能テキストファイル307とを合成し、新たなデバイス機能テキストファイルを生成する。
【0042】
図8は、図6図7で示されたデバイス機能テキストファイルを合成した例を示す図である。
【0043】
図8では、機能の定義や、機能の無効な組み合わせで重複する記述はマージし、そのデバイス固有の記載については、追記や元の記述内容の削除等を行う。例えば、図6では「A4」「A3」「Custom」が、図7では「A4」「Custom」が記載されており、これらが合成されることにより、図8の801では「A4」「A3」「Custom」が記述されている。また図6の602で示す禁則条件式についても同様に合成し、合成したデバイス機能テキストファイルでは、図8の802で示すような記述を行う。
【0044】
尚、S504の時点では、新たなデバイス機能テキストファイルの保存は行わずに、次のS505の処理によって、ファイルの保存が行われる。S505でプリンタドライバ211は、S504で合成したデバイス機能テキストファイルをプリンティングシステム325に通知する。この通知は、合成したデバイス機能テキストファイルの内容と、その内容で禁則を行うプリンタ102の情報をプリンタドライバ211からプリンティングシステム325に受け渡すことである。
【0045】
こうしてプリンタドライバ211からの通知を受けたプリンティングシステム325は、その合成されたデバイス機能テキストファイルを、ファイルとして記憶領域302に保存する。そして、その合成したデバイス機能テキストファイルと、プリンタ201とを関連付ける。関連付けの情報は、図10に示すようにして記憶領域302に保存される。
【0046】
図10は、実施形態に係るプリンティングシステム325で保存される、デバイス機能テキストファイルとプリンタとを関連付ける情報の一例を示す図である。
【0047】
ここでは例えば、MFP401は、合成したデバイス機能テキストファイルGPD_MFP401と関連付けられており、その関連付けには、MFP401のハードウェアID「MFP1_abcd」を用いていることを示す。尚、GPDは「generic printer description」の略で、プリンタの仕様を記述したプリンタ記述ファイルを示す。
【0048】
プリンタドライバ211が禁則処理を行う場合、プリンティングシステム325経由でコンフィグレーションモジュール304を呼び出す。コンフィグレーションモジュール304は、例えば図10に示す関連付けの情報を読み込み、その関連付けに従った禁則処理を行う。
【0049】
例えば、図10に示すような関連付けの情報の場合で、かつ、ホストホストコンピュータ101に接続されたプリンタ201の名称が「MFP401」で、アプリケーションプログラムから印刷が指示された場合を想定する。この場合はOS210のコンフィグレーションモジュール304は、記憶領域302に記憶されている「GPD_MFP401」のデバイス機能テキストファイルを読み込むことで、そのプリンタ(MFP401)に適合した印刷ジョブを生成することができる。
【0050】
図9は、実施形態に係るホストコンピュータ101で表示される、コンフィグレーションモジュール304がデバイス機能テキストファイルを読み込むことで生成される印刷設定UIの一例を示す図である。
【0051】
図9(A)は、図7に示す基本的なデバイス機能テキストファイル307を読み込んだ場合、図9(B)は、図8に示す合成したデバイス機能テキストファイルを読み込んだ場合の印刷設定UIの例を示す。例えば、図9(B)では「両面印刷」機能が表示されており、また図9(B)では「用紙サイズ」に表示されている項目が、図6で記述されているA3サイズを含んでいる点が図9(A)と相違している。
【0052】
尚、この図5に示すフローチャートで示す処理は、前述したようにユーザの指示により、アプリケーション212から印刷設定画面が起動されることに応じて開始するとしたが本発明はこれに限らない。例えば、プリントキュー303の作成時や、プリントキュー303を初めて使用する場合などに実行されてもよい。
【0053】
以上説明したように実施形態によれば、OS付属のプリンタドライバであっても、接続された印刷装置から取得した禁則情報に基づいて、その印刷装置に合わせた印刷処理を実行できるという効果がある。
【0054】
なお、上記実施形態では、印刷装置から取得した禁則情報に基づいて、その印刷装置に合わせた禁則処理を実行する例で説明したが、本発明はこれに限らず、印刷装置から取得したプリンタの機能情報に基づいて、そのプリンタの機能を最大限使用できる印刷データを作成してプリンタに送信して印刷させる場合にも適用できることは勿論である。
【0055】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0056】
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【0057】
101…ホストコンピュータ、102…プリンタ、201…CPU、210…OS,211…プリンタドライバ、230…プリンタのデバイス機能テキストファイル、302…記憶領域、303…プリントキュー、307…OSのデバイス機能テキストファイル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10