(57)【特許請求の範囲】
【請求項１】
印刷装置に対して印刷ジョブデータを送信する情報処理装置で動作するプリンタードライバーであって、
前記情報処理装置を、
プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、
印刷設定画面を表示部に表示させるＵＩ部、及び
前記情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、として機能させるものであり、
前記構成データは、印刷設定情報を記述したデータであり、
前記構成処理部は、
前記印刷装置の機種毎に用意され、それぞれが機種の機能を定義する固有構成情報を持つ複数の固有構成データと、
前記印刷装置の機種間で共通する機能を定義する共通構成情報を持つ共通構成データと、
をそれぞれ別個のデータとして保持し、
前記複数の固有構成データのなかから任意の固有構成データを選択し、当該選択した固有構成データと前記共通構成データとに基づいて構成データを生成し、
前記生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該対応する印刷設定項目については、現在の印刷設定情報を前記生成した構成データに反映させることで、最終的な構成データを生成することを特徴とするプリンタードライバー。
【請求項２】
前記構成処理部は、ユーザーが選択した前記印刷装置の機種に基づいて、当該機種に対応する前記固有構成データを選択することを特徴とする請求項１に記載されたプリンタードライバー。
【請求項３】
印刷装置に対して印刷ジョブデータを送信する情報処理装置で動作するプリンタードライバーであって、
前記情報処理装置を、
プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、
印刷設定画面を表示部に表示させるＵＩ部、及び
前記情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、として機能させるものであり、
前記構成データは、印刷設定情報を記述したデータであり、
前記構成処理部は、
前記印刷装置の機種毎に用意され、それぞれが機種の機能を定義する複数の固有構成情報と、
前記印刷装置の機種間で共通する機能を定義する共通構成情報と、を保持し、
前記複数の固有構成情報のなかから任意の固有構成情報を選択し、当該選択された固有構成情報と前記共通構成情報とに基づいて構成データを生成し、
前記生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該印刷設定項目については、現在の印刷設定情報を前記生成した構成データに反映させることで、最終的な構成データを生成することを特徴とするプリンタードライバー。
【請求項４】
前記構成処理部は、ユーザーが選択した前記印刷装置の機種に基づいて、当該機種に対応する前記固有構成情報を選択することを特徴とする請求項３に記載されたプリンタードライバー。
【請求項５】
前記ＵＩ部は、前記構成処理部が生成した構成データに基づいて印刷設定画面を生成し、前記生成した印刷設定画面を表示部に表示させることを特徴とする請求項１から４のいずれかに記載されたプリンタードライバー。
【請求項６】
前記描画処理部は、前記構成処理部が生成した構成データに基づいて描画処理の条件を設定することを特徴とする請求項１から５のいずれかに記載されたプリンタードライバー。
【請求項７】
印刷装置に対して印刷ジョブデータを送信する情報処理装置であって、
プロセッサーと、
当該プロセッサーにより実行されるプリンタードライバーを格納する記憶装置と、を備え、
前記プロセッサーは、
プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、
印刷設定画面を表示部に表示させるＵＩ部、及び
前記情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、としての機能を有し、
前記構成データは、印刷設定情報を記述したデータであり、
前記構成処理部は、
前記印刷装置の機種毎に用意され、それぞれが機種の機能を定義する固有構成情報を持つ複数の固有構成データと、
前記印刷装置の機種間で共通する機能を定義する共通構成情報を持つ共通構成データと、
をそれぞれ個別のデータとして保持し、
前記複数の固有構成データのなかから任意の固有構成データを選択し、当該選択した固有構成データと前記共通構成データとに基づいて構成データを生成し、
前記生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該対応する印刷設定項目については、現在の印刷設定情報を前記生成した構成データに反映させることで、最終的な構成データを生成することを特徴とする情報処理装置。
【請求項８】
前記構成処理部は、ユーザーが選択した前記印刷装置の機種に基づいて、当該機種に対応する前記固有構成データを選択することを特徴とする請求項７に記載された情報処理装置。
【請求項９】
印刷装置に対して印刷ジョブデータを送信する情報処理装置であって、
プロセッサーと、
当該プロセッサーにより実行されるプリンタードライバーを格納する記憶装置と、を備え、
前記プロセッサーは、
プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、
印刷設定画面を表示部に表示させるＵＩ部、及び
前記情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、としての機能を有し、
前記構成データは、印刷設定情報を記述したデータであり、
前記構成処理部は、
前記印刷装置の機種毎に用意され、それぞれが機種の機能を定義する複数の固有構成情報と、
前記印刷装置の機種間で共通する機能を定義する共通構成情報と、を保持し、
前記複数の固有構成情報のなかから任意の固有構成情報を選択し、当該選択された固有構成情報と前記共通構成情報とに基づいて構成データを生成し、
前記生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該印刷設定項目については、現在の印刷設定情報を前記生成した構成データに反映させることで、最終的な構成データを生成することを特徴とする情報処理装置。
【請求項１０】
前記構成処理部は、ユーザーが選択した前記印刷装置の機種に基づいて、当該機種に対応する前記固有構成情報を選択することを特徴とする請求項９に記載された情報処理装置。
【請求項１１】
前記ＵＩ部は、前記構成処理部が生成した構成データに基づいて印刷設定画面を生成し、前記生成した印刷設定画面を表示部に表示させることを特徴とする請求項７から１０のいずれかに記載された情報処理装置。
【請求項１２】
前記描画処理部は、前記構成処理部が生成した構成データに基づいて描画処理の条件を設定することを特徴とする請求項７から１１のいずれかに記載された情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタードライバー及び情報処理装置に関する。
【背景技術】
【０００２】
従来より、Ｗｉｎｄｏｗｓ（登録商標）のオペレーティングシステム（ＯＳ：Operating System）上で動作するプリンタードライバーに関して、Ｗｉｎｄｏｗｓ２０００〜Ｗｉｎｄｏｗｓ７を想定したバージョン３のプリンタードライバー（Ｖ３プリンタードライバー）が提供されている。また、様々な機種の印刷装置を１つのプリンタードライバーでサポートするユニバーサルプリンタードライバー（ＵＰＤ）として、Ｖ３プリンタードライバーのアーキテクチャーを利用したものが知られている。
【０００３】
一方、Ｗｉｎｄｏｗｓ８の登場に伴い、各メーカーでは、新しいアーキテクチャーを採用したバージョン４のプリンタードライバー（Ｖ４プリンタードライバー）の開発を進めている。今後リリースされるＷｉｎｄｏｗｓでも、このＶ４プリンタードライバーのアーキテクチャーが主流となると考えられるため、現在のアーキテクチャーをベースとしたユニバーサルプリンタードライバーの提供が求められている。
【０００４】
例えば特許文献１には、Ｖ３プリンタードライバーのアーキテクチャーをベースとするユニバーサルプリンタードライバーに関する技術が開示されている。この特許文献１によれば、機種毎に用意された複数のチャイルドドライバーを有し、出力先の印刷装置に応じてチャイルドドライバーを切り替えることとしている。これにより、１つのプリンタードライバーで複数の機種の印刷装置をサポートできるとしている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−４３１６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示された手法では、１つのドライバーで複数の機種に対応しているが、このドライバーが備える個々のチャイルドドライバーは、特定の機種に対応したＶ３プリンタードライバーそのものであって、これを切り替えているに過ぎない。また、Ｖ４プリンタードライバーとＶ３プリンタードライバーとでは、そのアーキテクチャーが全く異なることから、Ｖ４プリンタードライバーをベースとするユニバーサルプリンタードライバーを、Ｖ３プリンタードライバーと同じ方法で実現するのは困難である。
【０００７】
本発明はかかる事情に鑑みてなされたものであり、その目的は、複数の機種の印刷装置に対応するプリンタードライバー及び情報処理装置を提供する。
【課題を解決するための手段】
【０００８】
かかる課題を解決するために、第１の発明の一側面は、印刷装置に対して印刷ジョブデータを送信する情報処理装置で動作するプリンタードライバーに関する。このプリンタードライバーは、情報処理装置を、プリンタードライバーの構成情報を保持して当該構成情報に基づいて構成データを生成する構成処理部、印刷設定画面を表示部に表示させるＵＩ部、及び、情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、として機能させるものである。ここで、構成データは、印刷設定情報を記述したデータである。この場合、構成処理部は、印刷装置の機種毎に用意され、それぞれが機種の機能を定義する固有構成情報を持つ複数の固有構成データと、印刷装置の機種間で共通する機能を定義する共通構成情報を持つ共通構成データと、をそれぞれ別個のデータとして保持し、複数の固有構成データのなかから任意の固有構成データを選択し、当該選択した固有構成データと共通構成データとに基づいて構成データを生成し、生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該対応する印刷設定項目については、現在の印刷設定情報を生成した構成データに反映させることで、最終的な構成データを生成する。
【０００９】
ここで、第１の発明において、構成処理部は、ユーザーが選択した印刷装置の機種に基づいて、当該機種に対応する固有構成データを選択することが好ましい。
【００１０】
また、第１の発明の別の側面は、印刷装置に対して印刷ジョブデータを送信する情報処理装置で動作するプリンタードライバーに関する。このプリンタードライバーは、情報処理装置を、プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、印刷設定画面を表示部に表示させるＵＩ部、及び情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、として機能させるものである。この場合、構成データは、印刷設定情報を記述したデータであり、構成処理部は、印刷装置の機種毎に用意され、それぞれが機種の機能を定義する複数の固有構成情報と、印刷装置の機種間で共通する機能を定義する共通構成情報とを保持し、複数の固有構成情報のなかから任意の固有構成情報を選択し、当該選択された固有構成情報と共通構成情報とに基づいて構成データを生成し、生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該印刷設定項目については、現在の印刷設定情報を生成した構成データに反映させることで、最終的な構成データを生成する。
【００１１】
また、第１の発明において、構成処理部は、ユーザーが選択した印刷装置の機種に基づいて、当該機種に対応する固有構成情報を選択することが好ましい。
【００１２】
また、第１の発明において、ＵＩ部は、構成処理部が生成した構成データに基づいて印刷設定画面を生成し、生成した印刷設定画面を表示部に表示させることが好ましい。
【００１３】
また、第１の発明において、描画処理部は、構成処理部が生成した構成データに基づいて描画処理の条件を設定することが好ましい。
【００１４】
また、第２の発明の一側面は、印刷装置に対して印刷ジョブデータを送信する情報処理装置であって、プロセッサーと、当該プロセッサーにより実行されるプリンタードライバーを格納する記憶装置と、を備える情報提供装置に関する。ここで、プロセッサーは、プリンタードライバーの構成情報を保持して当該構成情報に基づいて構成データを生成する構成処理部、印刷設定画面を表示部に表示させるＵＩ部、及び、情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、としての機能を有している。この構成データは、印刷設定情報を記述したデータである。この場合、構成処理部は、印刷装置の機種毎に用意され、それぞれが機種の機能を定義する固有構成情報を持つ複数の固有構成データと、印刷装置の機種間で共通する機能を定義する共通構成情報を持つ共通構成データと、をそれぞれ個別のデータとして保持し、複数の固有構成データのなかから任意の固有構成データを選択し、当該選択した固有構成データと共通構成データとに基づいて構成データを生成し、生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該対応する印刷設定項目については、現在の印刷設定情報を生成した構成データに反映させることで、最終的な構成データを生成する。
【００１５】
ここで、第２の発明において、構成処理部は、ユーザーが選択した印刷装置の機種に基づいて、当該機種に対応する固有構成データを選択することが好ましい。
【００１６】
また、第２の発明の別側面は、印刷装置に対して印刷ジョブデータを送信する情報処理装置であって、プロセッサーと、当該プロセッサーにより実行されるプリンタードライバーを格納する記憶装置と、を備える情報処理装置に関する。ここで、プロセッサーは、プリンタードライバーの構成情報を保持し、当該構成情報に基づいて構成データを生成する構成処理部、印刷設定画面を表示部に表示させるＵＩ部、及び情報処理装置において生成される印刷ジョブデータに描画処理を行う描画処理部、としての機能を有している。この場合、構成データは、印刷設定情報を記述したデータであり、構成処理部は、印刷装置の機種毎に用意され、それぞれが機種の機能を定義する複数の固有構成情報と、印刷装置の機種間で共通する機能を定義する共通構成情報とを保持し、複数の固有構成情報のなかから任意の固有構成情報を選択し、当該選択された固有構成情報と共通構成情報とに基づいて構成データを生成し、生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報とを比較して、対応する印刷設定項目がある場合、当該印刷設定項目については、現在の印刷設定情報を生成した構成データに反映させることで、最終的な構成データを生成する。
【００１７】
また、第２の発明において、構成処理部は、ユーザーが選択した印刷装置の機種に基づいて、当該機種に対応する固有構成情報を選択することが好ましい。
【００１８】
また、第２の発明において、ＵＩ部は、構成処理部が生成した構成データに基づいて印刷設定画面を生成し、生成した印刷設定画面を表示部に表示させることが好ましい。
【００１９】
また、第２の発明において、描画処理部は、構成処理部が生成した構成データに基づいて描画処理の条件を設定することが好ましい。
【発明の効果】
【００２０】
本発明によれば、印刷装置の機種に応じて構成処理部を選択的に使用することで、当該機種に適した構成データを適切に生成することができる。これにより、１つのプリンタードライバーで、様々な機種の印刷装置に対応することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係る印刷制御システムの構成を示す説明図
【図２】印刷装置の構成を示すブロック図
【図３】ＰＣの構成を示すブロック図
【図４】ＰＣの制御部の構成を示す説明図
【図５】ＧＰＤファイルからなる共通構成データの一例を示す説明図
【図６】機能定義の一例を示す説明図
【図７】機種群情報の一例を示す説明図
【図８】描画処理部の構成を示す説明図
【図９】構成処理部による構成データの生成処理を示すフローチャート
【図１０】描画処理部による描画処理を示すフローチャート
【発明を実施するための形態】
【００２２】
図１は、本実施形態に係る印刷制御システムの構成を示す説明図である。本実施形態に係る印刷制御システムは、印刷装置１００と、この印刷装置１００に対して印刷ジョブデータを送信するＰＣ２００とで構成されている。印刷装置１００とＰＣ２００とは、ＬＡＮ（Local Area Network）などのネットワークに接続されて、互いに通信可能に構成されている。本実施形態では、印刷装置１００が２つ、ＰＣ２００が１つ設けられている。２つの印刷装置１００は互いに異なる機種であり、例えば、一方の印刷装置１００はＭＦＰ（Multifunction Peripheral）、他方の印刷装置１００はプリンターである。なお、印刷装置１００及びＰＣ２００の台数はこれに限定されるものではなく、また、ネットワークは、インターネットなどの外部ネットワークを含む構成であってもよい。
【００２３】
印刷装置１００は、原稿を読み取る原稿読取機能、画像データに基づいて用紙に画像を形成する画像形成機能を備えている。また、印刷装置１００は、画像が形成された用紙に後処理を行う後処理機能を備えることもできる。
【００２４】
図２は、印刷装置１００の構成を示すブロック図である。印刷装置１００は、メイン回路１１０と、自動原稿搬送装置１２０と、原稿読取部１３０と、画像形成部１４０と、給紙部１５０と、操作パネル１６０とを有している。
【００２５】
自動原稿搬送装置１２０は、原稿を原稿読取部１３０に搬送する。原稿読取部１３０は、搬送された原稿を読み取り、画像データを出力する。画像形成部１４０は、画像データに基づいて用紙に画像を形成する。給紙部１５０は、画像形成部１４０に用紙を供給する。
【００２６】
操作パネル１６０は、印刷装置１００の上面に設けられており、表示部１６１と操作部１６３とで構成されている。表示部１６１は、液晶表示装置（ＬＣＤ）、有機ＥＬＤ（Electro-Luminescence Display）等の表示装置であり、ユーザーに対する指示メニューや画像データに関する情報等を表示する。操作部１６３は、表示部１６１上に設けられたタッチパネル１６５や、複数のキーからなるハードキー部１６７を備え、ユーザーの操作による各種の指示、文字、数字などのデータの入力を受け付ける。
【００２７】
メイン回路１１０は、ＣＰＵ１１１と、通信インターフェース（Ｉ／Ｆ）部１１２と、ＲＯＭ１１３と、ＲＡＭ１１４と、ハードディスクドライブ（ＨＤＤ）１１５とを有している。
【００２８】
ＣＰＵ１１１は、自動原稿搬送装置１２０、原稿読取部１３０、画像形成部１４０、給紙部１５０及び操作パネル１６０と接続される。ＣＰＵ１１１は、これを機能的に捉えた場合、プリンターコントローラー１１１Ａと、エンジン制御部１１１Ｂとで構成されている。
【００２９】
プリンターコントローラー１１１Ａは、情報処理装置としてのＰＣ２００から送信された印刷ジョブデータを処理するための機能を備えている。プリンターコントローラー１１１Ａは、印刷ジョブデータを画像データ（ラスターデータ）に変換し、画像データをエンジン制御部１１１Ｂに出力する。
【００３０】
エンジン制御部１１１Ｂは、印刷装置１００全体の制御処理を行う。また、エンジン制御部１１１Ｂは、画像データに基づく画像形成処理を行う。
【００３１】
通信Ｉ／Ｆ部１１２は、印刷装置１００をネットワークに接続するためのインターフェースである。ＣＰＵ１１１は、通信Ｉ／Ｆ部１１２を介して、ＰＣ２００との間で通信を行うことができる。
【００３２】
ＲＯＭ１１３は、ＣＰＵ１１１が実行するプログラム、又はそのプログラムを実行するために必要なデータを記憶する。ＲＡＭ１１４は、ＣＰＵ１１１がプログラムを実行する際の作業領域である。また、ＲＡＭ１１４は、原稿読取部１３０から出力される画像データを一時的に記憶する。
【００３３】
ＨＤＤ１１５には、ＣＰＵ１１１によって実行されるプログラムが格納されている。ＣＰＵ１１１は、ＨＤＤ１１５に記録されたプログラムをＲＡＭ１１４にロードして実行する。
【００３４】
図３は、ＰＣ２００の構成を示すブロック図である。ＰＣ２００は、制御部２１０、記憶装置２２０、表示装置２３０、入力装置２４０、通信Ｉ／Ｆ部２５０などを備え、これらはバス２６０を介して相互に接続されている（情報処理装置）。
【００３５】
制御部２１０は、ＣＰＵ２１０ａ、ＲＯＭ２１０ｂ及びＲＡＭ２１０ｃを主体に構成されている。ＣＰＵ２１０ａは、オペレーティングシステムをベースとし、その上で、ミドルウェアやアプリケーションプログラムなどを実行する（プロセッサー）。ＲＯＭ２１０ｂは、ＣＰＵ２１０ａが実行する各種プログラムを、当該ＣＰＵ２１０ａが読み取り可能なプログラムコードの形態で格納する。また、ＲＯＭ２１０ｂは、プログラムの実行に必要となるデータを記憶する。ＲＡＭ２１０ｃは、作業用の記憶領域となるメモリである。ＲＯＭ２１０ｂ及び記憶装置２２０に格納されたプログラム及びデータは、ＣＰＵ２１０ａにより読み出されると、ＲＡＭ２１０ｃ上に展開される。そして、ＣＰＵ２１０ａは、ＲＡＭ２１０ｃ上に展開したプログラム及びデータに基づいて、各種の処理を行う。
【００３６】
記憶装置２２０は、例えばＨＤＤ（Hard Disk Drive）からなる装置であり、アプリケーション等の各種のプログラム等を格納している。表示装置２３０は、ＣＲＴや液晶表示装置等からなり、各種の情報、各種のメッセージ、ダイアログ等を表示する（表示部）。入力装置２４０は、キーボードやマウス等からなり、ユーザーによる入力操作に用いられる。通信Ｉ／Ｆ部２５０は、印刷装置１００や外部機器との間で、ネットワークを介してデータの送受信を行うインターフェースである。
【００３７】
ＰＣ２００は、オペレーティングシステムとして、例えばＷｉｎｄｏｗｓを搭載している。ＰＣ２００には、オペレーティングシステム上で動作するアプリケーション（アプリケーションプログラム）がインストールされている。
【００３８】
また、ＰＣ２００には、オペレーティングシステム上で動作するプリンタードライバーもインストールされている。プリンタードライバーに関するファイルの追加・削除は、オペレーティングシステムが管理しており、プリンタードライバーのインストール及びアンインストールを介して行われる。インストールされたプリンタードライバーは、Ｗｉｎｄｏｗｓのシステムフォルダーに格納され、システムフォルダーには、オペレーティングシステム上でプリンタードライバーとして動作するファイルが格納される。
【００３９】
図４は、ＰＣ２００の制御部２１０の構成を示す説明図である。ＣＰＵ２１０ａは、インストールされたプリンタードライバー１０をＲＡＭ２１０ｃに展開して実行することにより、プリンタードライバー１０によって提供される各種の機能を実行する。プリンタードライバー１０（制御部２１０）は、アプリケーション７０により印刷命令がなされると、印刷装置１００が対応可能な形式によるデータを生成し、これを印刷ジョブデータとして印刷装置１００に送信する。印刷ジョブデータの記述言語形式は、ＰＣＬ（Printer Control Language）等のＰＤＬ（ページ記述言語：Page Description Language）である。印刷ジョブデータは、文書（テキスト）、図形（グラフィックス）、画像（イメージ）等の原稿に関する印刷データと、当該印刷データを用紙に画像形成するための設定である印刷設定とを含む。
【００４０】
本実施形態において、プリンタードライバー１０は、Ｗｉｎｄｏｗｓのオペレーティングシステム上で動作するＶ４プリンタードライバーである。プリンタードライバー１０は、ドライバーコア部２０と、ＵＩ部（ユーザーインターフェース部）５０とを有している。
【００４１】
ドライバーコア部２０は、構成処理部２１と、描画処理部２５とで構成されている。
【００４２】
構成処理部２１は、プリンタードライバー１０の構成情報、すなわち、プリンタードライバー１０が対応する印刷装置１００の構成情報を保持する。構成情報は、印刷装置１００の機能を定義する機能定義などの情報である。また、構成処理部２１は、構成情報に基づいて、構成データ（プリントチケット：PrintTicket）を生成したり、それに付随する各種の処理を行ったりする。構成データは、印刷設定情報を記述したデータであり、ユーザーが選択した印刷装置１００（機種）に対応する情報を保有している。生成された構成データには、その機種に関する各種の印刷設定項目について、どの設定値が指定されているかといった情報が含まれている。また、生成された構成データには、ユーザーが選択した印刷装置１００の機種が属する機種群の情報が含まれている。生成された構成データは、描画処理部２５やＵＩ部５０、アプリケーション７０によって使用される。
【００４３】
構成処理部２１は、共通構成データ２２と、固有構成データ２３とを備えている。
【００４４】
共通構成データ２２は、印刷装置１００の機種間で共通する機能定義の情報（共通構成情報）を持つデータである。共通構成データ２２は、ＧＰＤ（Generic Printer Description）ファイル等の構成ファイルで定義される。
【００４５】
図５は、ＧＰＤファイルからなる共通構成データ２２の一例を示す説明図である。同図に示すように、共通構成データ２２は、例えば、用紙サイズ（「PageMediaSize」）や用紙の向き（「Orientation」）の情報を定義する。また、共通構成データ２２には、例えば、対応可能な機種を切り替える機能の定義が含まれている（「Model@DevOpt」）。オペレーティングシステムにより提供されるプリンターのプロパティ画面は、ＧＰＤファイルの記述に基づいて表示され、当該プリンターのプロパティ画面から、機種の切り替えを行うことができる。
【００４６】
固有構成データ２３は、印刷装置１００の各機種固有の機能定義や、その機種が属する機種群を定義する機種群定義の情報（固有構成情報）を持つデータである。ここで、「機種群」は、印刷装置１００をその機種の属性に応じて区分したものであり、個々の機種群には、１つ以上の機種が関連付けられている。固有構成データ２３には、プリンタードライバー１０が対応可能な機種に応じて複数の固有構成データ（固有構成情報）が用意されている（例えば３つの機種（DevA，DevB，DevC）に対応する固有構成データ）。固有構成データ２３は、ドライバーのプロパティの一覧を格納するドライバープロパティバッグ（Driver Propartybag）等で定義される。
【００４７】
図６は、機能定義の一例を示す説明図である。機能定義には、印刷装置１００の機種（DeviceA，DeviceB，DeviceC）についての機能が定義される。この機能は、例えばステープル（staple）、パンチ（Punch）、折り（Fold）などである。
【００４８】
図７は、機種群定義の一例を示す説明図である。機種群定義には、印刷装置１００の機種が、ＭＦＰ、プリンターといった複数の機種群のうちいずれの機種群に該当するのかを定義している。また、機種群定義には、印刷装置１００の各機種が、カラー機、モノクロ機といった複数の機種群のうちいずれの機種群に該当するのかを定義している。
【００４９】
なお、図６，７に示す例では、機能定義と、機種群定義とを別々のタグ内で定義している。しかしながら、機能定義及び機種群定義を同一のタグ内で定義することもできる。
【００５０】
再び図４を参照するに、描画処理部２５は、構成処理部２１により生成された構成データに基づいて、ＰＣ２００において生成される印刷ジョブデータに描画処理（レンダリング処理）を行う。すなわち、描画処理部２５は、構成処理部２１からの構成データに従い、アプリケーション７０により生成されるデータ（印刷ジョブデータ）をＰＣＬ等の形式の印刷ジョブデータに変換する。
【００５１】
描画処理部２５は、共通描画処理部２６と、固有描画処理部２７Ａ，２７Ｂとで構成されている。ここで、図８は、描画処理部２５の構成を示す説明図である。
【００５２】
共通描画処理部２６は、印刷装置１００の機種間で共通する描画処理を行うものである。図８に示す例では、共通描画処理部２６は、ＰＪＬプロバイダーフィルター（PJL(Printer Job Language) Provider Filter）２６ａ、１からｎまでのフィルター（Filter）２６ｂ１〜２６ｂｎ、ジョブクリエイションフィルター（Job Creation Filter）２６ｃ、及びパイプラインプロパティバッグ（Pipeline Propertybag）２６ｄを備えている。
【００５３】
固有描画処理部２７Ａ，２７Ｂは、機種群毎に用意されており、機種群固有の描画処理を行うものである。本実施形態では、固有描画処理部２７Ａ，２７Ｂは、ＭＦＰの機種群に対応するもの、プリンターの機種群に対応するものの２つが用意されている。
【００５４】
この描画処理部２５において、ＰＪＬプロバイダーフィルター２６ａは、構成処理部２１において生成された構成データに含まれる機種群の情報（機種群定義）に基づいて、ユーザーが選択した印刷装置１００の機種に適した固有描画処理部２７Ａ，２７Ｂを呼び出す。呼び出された固有描画処理部２７Ａ，２７Ｂによって描画処理を行われると、機種間で共通の描画処理が各フィルター２６ｂ１〜２６ｂｎによって行われる。そして、最終的に、ジョブクリエイションフィルター２６ｃから印刷ジョブデータが出力され、これが印刷装置１００に送信される。
【００５５】
再び図４を参照するに、ＵＩ部５０は、印刷設定を行うためのユーザーインターフェースを表示するためのモジュールである。ＵＩ部５０は、構成処理部２１が生成した構成データに基づいて印刷設定画面を生成し、生成した印刷設定画面を表示装置２３０に表示させる。
【００５６】
Ｖ４プリンタードライバーにおいて、ＵＩ部５０は、２つのＵＩ処理部５１，５２を備えている。一方のＵＩ処理部５１は、Ｗｉｎｄｏｗｓ８のモダンＵＩ（Moden UI）向けの印刷設定画面を表示するためのものである。他方のＵＩ処理部５２は、デスクトップＵＩ（Desktop UI）向けの印刷設定画面を表示するためのものである。２つのＵＩ処理部５１，５２は、印刷装置１００の機種にかかわらず共通のモジュールである。ただし、構成処理部２１で生成された機種固有の構成データに基づいて、２つのＵＩ処理部５１，５２のうち一方のＵＩ処理部５１，５２が印刷設定画面の表示を行うように動的に設定されている。そのため、ユーザーが選択した機種に応じて、印刷設定画面の表示が切り替わる仕組みとなっている。
【００５７】
以下、本実施形態に係るＰＣ２００の処理について説明する。ＰＣ２００の制御部２１０において、ＣＰＵ２１０ａは、プリンタードライバー１０をＲＡＭ２１０ｃに展開して実行することにより、後述する各処理を実行する。
【００５８】
まず、構成処理部２１による構成データの生成処理について説明する。ここで、図９は、構成処理部２１による構成データの生成処理を示すフローチャートである。まず、ステップ１０（Ｓ１０）において、構成処理部２１は、ユーザーにより前回選択された印刷装置１００の機種の情報を取得する。
【００５９】
ステップ１１（Ｓ１１）において、構成処理部２１は、Ｄｅｖｍｏｄｅ構造体に格納されたＤｅｖｍｏｄｅ情報を取得する。このＤｅｖｍｏｄｅ構造体は、Ｗｉｎｄｏｗｓが使用するものであり、Ｄｅｖｍｏｄｅ情報には、現在の印刷設定情報が含まれている。
【００６０】
ステップ１２（Ｓ１２）において、構成処理部２１は、ユーザーにより今回選択された印刷装置１００の機種の情報を取得する。
【００６１】
ステップ１３（Ｓ１３）において、構成処理部２１は、前回の機種と現在の機種とを比較して、機種の切り替えがあったか否かを判断する。機種の切り替えがない場合には、ステップ１３で否定判定されるため、ステップ１４（Ｓ１４）に進む。一方、機種の切り替えがあった場合には、ステップ１３で肯定判定されるため、ステップ１５（Ｓ１５）に進む。
【００６２】
ステップ１４において、構成処理部２１は、Ｄｅｖｍｏｄｅ情報を変換して構成データを生成する。
【００６３】
これに対して、ステップ１５（Ｓ１５）において、構成処理部２１は、今回の機種に基づいて、その機種に対応する固有構成データ２３を取得する。
【００６４】
ステップ１６（Ｓ１６）において、構成処理部２１は、共通構成データ２２と、ステップ１５において取得した固有構成データ２３とに基づいて構成データを生成する。これにより、ユーザーが選択した機種固有の構成データが生成される。
【００６５】
ステップ１７（Ｓ１７）において、構成処理部２１は、この生成した構成データとＤｅｖｍｏｄｅ情報とを比較する。そして、構成処理部２１は、Ｄｅｖｍｏｄｅ情報に含まれる印刷設定項目と構成データに含まれる印刷設定項目とにおいて一致する項目がある場合には、その印刷設定項目については、Ｄｅｖｍｏｄｅ情報を構成データに反映させる。これにより、最終的な構成データが生成される。
【００６６】
このようにして生成された構成データは、描画処理部２５やＵＩ部５０、アプリケーション７０によって使用される。
【００６７】
つぎに、描画処理部２５による描画処理について説明する。ここで、図１０は、描画処理部２５による描画処理を示すフローチャートである。なお、図１０に示す例では、印刷ジョブデータをＰＣＬ形式で出力することを想定している。
【００６８】
まず、ステップ２０（Ｓ２０）において、描画処理部２５は、構成処理部２１で生成された構成データと、印刷ジョブデータとを取得する。Ｖ４プリンタードライバーにおいて、通常、描画処理部２５に入力される構成データはプリントチケットであり、その印刷ジョブデータはＸＰＳ（XML Paper Specification）形式である。
【００６９】
ステップ２１（Ｓ２１）において、描画処理部２５は、構成データから、今回選択した印刷装置１００の機種が属する機種群の情報を取得する。
【００７０】
ステップ２２（Ｓ２２）において、ＰＪＬプロバイダーフィルター２６ａは、ステップ２１で取得した機種群の情報に基づいて、その機種群に適した固有描画処理部２７Ａ，２７Ｂを呼び出す。
【００７１】
ステップ２３（Ｓ２３）において、呼び出された固有描画処理部２７Ａ，２７Ｂは、印刷ジョブデータに描画処理（機種群固有の描画処理）を行い、今回の印刷装置１００が属する機種群に対応したＰＪＬデータを生成する。
【００７２】
ステップ２４（Ｓ２４）において、ＰＪＬプロバイダーフィルター２６ａは、生成したＰＪＬデータを固有描画処理部２７Ａ，２７Ｂから受け取ると、当該ＰＪＬデータをパイプラインプロパティバッグ２６ｄに保存する。
【００７３】
そして、ステップ２５（Ｓ２５）において、各フィルター２６ｂ１〜２６ｂｎは、構成データに基づいて、印刷ジョブデータにフィルター処理を施し、描画処理（機種間共通の描画処理）を行う。もっとも、各フィルター２６ｂ１〜２６ｂｎは機種間で共通であるが、構成データ自体は機種固有のものとして生成されているため、本ステップ２５では、機種固有の条件に基づいて描画処理がなされることとなる。また、このステップ２５における処理では、ＸＰＳ形式の印刷ジョブデータをＰＣＬ形式のデータに変換することも含まれる。
【００７４】
ステップ２６（Ｓ２６）において、ジョブクリエイションフィルター２６ｃは、ＰＣＬ形式の印刷ジョブデータを受け取ると、この印刷ジョブデータに、パイプラインプロパティバッグ２６ｄに保存されたＰＪＬデータを付加する。
【００７５】
ステップ２７（Ｓ２７）において、ジョブクリエイションフィルター２６ｃは、ステップ２６において生成された印刷ジョブデータを、最終的な印刷ジョブデータとして出力する。
【００７６】
このように本実施形態において、プリンタードライバー１０は、印刷装置１００に対して印刷ジョブデータを送信するＰＣ２００で動作するものであって、このＰＣ２００を、プリンタードライバー１０の構成情報を保持して当該構成情報に基づいて構成データを生成する構成処理部２１、印刷設定画面を表示装置２３０に表示させるＵＩ部５０、及び、ＰＣ２００において生成される印刷ジョブデータに描画処理を行う描画処理部２５、として機能させるものである。この場合、構成処理部２５は、印刷装置１００の機種毎に用意され、それぞれが機種の機能を定義する複数の固有構成データ２３（固有構成情報）を保持し、複数の固有構成データ２３のなかから任意の固有構成データ２３を選択し、当該選択した固有構成データ２３に基づいて構成データを生成する。
【００７７】
この構成によれば、印刷装置１００の機種に応じて固有構成データ２３を選択的に使用することで、機種に適した構成データを生成することができる。これにより、１つのプリンタードライバー１０で、様々な機種の印刷装置１００に対応することができる。
【００７８】
また、Ｖ４プリンタードライバーにおいては、構成処理部２１、描画処理部２５、ＵＩ部５０といった独立した機能構成のアーキテクチャーとなっており、Ｖ３プリンタードライバーのそれとは全く異なっている。そこで、本実施形態では、このようなアーキテクチャーを前提に、構成処理部２１については、機種毎の固有構成情報（固有構成データ２３）を用意することとしている。これにより、様々な機種の印刷装置１００を１つのプリンタードライバー１０でサポートすることができる。また、この手法によれば、プリンタードライバー１０そのものを、機種毎又は機種群毎に用意する必要がないので、使用するメモリやメモリ容量の削減を図ることができる。
【００７９】
また、本実施形態において、構成処理部２１は、印刷装置１００の機種間で共通する機能を定義する共通構成データ２２（共通構成情報）をさらに有し、選択された固有構成データ２３と共通構成データ２２とに基づいて構成データを生成する。
【００８０】
この構成によれば、機種群固有の構成情報と、機種間で共通する構成情報とから構成データが生成されるので、機種固有の構成データを適切に生成することができる。また、共通構成データ２２が機種間で共通する構成情報を保持することで、この構成情報を固有構成データ２３が個別的に保有する必要がない。このため、個々の固有構成データ２３を簡素化することができる。その結果、使用するメモリやメモリ容量の削減を図ることができる。
【００８１】
また、本実施形態において、構成処理部２１は、生成した構成データと、オペレーティングシステムが使用する現在の印刷設定情報（Ｄｅｖｍｏｄｅ情報）とを比較して、対応する印刷設定項目がある場合、当該印刷設定項目については、現在の印刷設定情報を生成した構成データに反映させることで、最終的な構成データを生成している。
【００８２】
この構成によれば、機種の切り替えが行われた場合であっても、共通する印刷設定項目の設定値を引き継ぐことができる。このため、機種の切り替えのたびに、印刷設定項目をユーザーの使用に応じて変更し直す必要がなく、ユーザーの利便性の向上を図ることができる。
【００８３】
また、本実施形態において、描画処理部２５は、ユーザーが選択した印刷装置１００の機種に基づいて、当該機種に対応する固有構成データ２３を選択している。
【００８４】
この構成によれば、ユーザーが選択した印刷装置１００の機種に応じて、固有構成データ２３を適切に選択することができる。これにより、機種に対応した構成データを適切に生成することができる。
【００８５】
また、本実施形態において、ＵＩ部５０は、構成処理部２１が生成した構成データに基づいて印刷設定画面を生成し、前記生成した印刷設定画面を表示装置２３０に表示させている。
【００８６】
この構成によれば、印刷装置１００の機種に応じた適切な印刷設定画面を生成することができる。
【００８７】
また、本実施形態において、描画処理部２５は、構成処理部２１が生成した構成データに基づいて描画処理の条件を設定している。
【００８８】
この構成によれば、印刷装置１００の機種に応じた適切な描画処理を行うことができる。
【００８９】
加えて、本実施形態において、描画処理部２５は、機種群毎に用意され、それぞれが機種群固有の描画処理を行う複数の固有描画処理部２７Ａ，２７Ｂを有し、複数の固有描画処理部２７Ａ，２７Ｂのなかから任意の固有描画処理部２７Ａ，２７Ｂを選択し、当該選択した固有描画処理部２７Ａ，２７Ｂにより描画処理を行う。
【００９０】
この構成によれば、印刷装置１００の機種に応じて固有描画処理部２７Ａ，２７Ｂを選択的に使用することで、機種に適した描画処理を行うことができる。これにより、１つのプリンタードライバー１０で、様々な機種の印刷装置１００に対応することができる。
【００９１】
また、Ｖ４プリンタードライバーにおいては、構成処理部２１、描画処理部２５、ＵＩ部５０といった独立した機能構成のアーキテクチャーとなっており、Ｖ３プリンタードライバーのそれとは全く異なっている。そこで、本実施形態では、このようなアーキテクチャーを前提に、描画処理部２５については、機種群毎のモジュールを用意することとしている。これにより、様々な機種の印刷装置１００を１つのプリンタードライバー１０でサポートすることができる。また、この手法によれば、プリンタードライバー１０そのものを、機種毎又は機種群毎に用意する必要がないので、使用するメモリやメモリ容量の削減を図ることができる。
【００９２】
また、本実施形態において、描画処理部２５は、印刷装置１００の機種間で共通する描画処理を行う共通描画処理部２６をさらに有し、選択された固有描画処理部２７Ａ，２７Ｂと共通描画処理部２６とにより描画処理を行う。
【００９３】
この構成によれば、機種群固有の描画処理とともに、機種間で共通する描画処理についても実施することができ、印刷ジョブデータに対する描画処理を適切に行うことができる。また、共通描画処理部２６が機種間で共通する描画処理を行うことで、この機能を固有描画処理部２７Ａ，２７Ｂが個別的に備える必要がない。このため、個々の固有描画処理部２７Ａ，２７Ｂの構成を簡素化することができる。その結果、使用するメモリやメモリ容量の削減を図ることができる。
【００９４】
また、本実施形態において、描画処理部２５は、ユーザーが選択した印刷装置１００の機種に基づいて、当該機種が属する機種群に対応した固有描画処理部２７Ａ，２７Ｂを選択している。
【００９５】
この構成によれば、ユーザーが選択した印刷装置１００の機種に応じて、固有描画処理部２７Ａ，２７Ｂを適切に選択することができる。これにより、機種に対応した描画処理を適切に行うことができる。
【００９６】
以上、本発明の実施形態にかかるプリンタードライバー及び情報処理装置について説明したが、本発明は上述した実施形態に限定されることなく、その発明の範囲内において種々の変形が可能であることはいうまでもない。上述したプリンタードライバーの効果は、このプリンタードライバーのみならず、このプリンタードライバーによって動作する情報処理装置自身によっても奏することができる。また、固有描画処理部や固有構成情報の個数は例示であって、印刷装置の機種及び機種群に応じて設定することができる。
【符号の説明】
【００９７】
１００    印刷装置
２００    ＰＣ
２１０    制御部
２１０ａ  ＣＰＵ
２１０ｂ  ＲＯＭ
２１０ｃ  ＲＡＭ
２２０    記憶装置
１０    プリンタードライバー
２０    ドライバーコア部
２１    構成処理部
２２    共通構成データ
２３    固有構成データ
２５    描画処理部
２６    共通描画処理部
２７Ａ  固有描画処理部
２７Ｂ  固有描画処理部
５０    ＵＩ部
５１    ＵＩ処理部
５２    ＵＩ処理部
【図１】
0006265177.tif 000002
【図２】
0006265177.tif 000003
【図３】
0006265177.tif 000004
【図４】
0006265177.tif 000005
【図５】
0006265177.tif 000006
【図６】
0006265177.tif 000007
【図７】
0006265177.tif 000008
【図８】
0006265177.tif 000009
【図９】
0006265177.tif 000010
【図１０】
0006265177.tif 000011