(57)【要約】【課題】一つのプリンタドライバで複数種類のプリンタに対応可能とした。【解決手段】プリンタドライバ１１１は、ジョブコマンドを生成するジョブコマンド生成モジュールを複数記憶するジョブコマンド生成モジュール記憶部１２４と、描画を指示するための描画コマンドを生成する描画コマンド生成モジュールを複数記憶する描画コマンド生成モジュール記憶部１２５と、ジョブコマンド生成モジュール記憶部１２４に記憶されたジョブコマンド生成モジュールと、描画コマンド生成モジュール記憶部１２５に記憶された描画コマンド生成モジュールと、の組合せを決定する出力コマンド規格決定部１３１と、決定されたジョブコマンド生成モジュールと、描画コマンド生成モジュールと、に対してコマンドの生成を要求するコマンド生成要求部１４１と、生成されたジョブコマンドと、描画コマンドと、をプリンタＡ１５０に対して送信する通信部１２２と、を備えた。【選択図】図１
2011060154.tif 000002
【特許請求の範囲】
【請求項１】
プリンタに対して印刷ジョブに関するジョブ命令を生成するジョブ命令生成モジュールを複数記憶するジョブ命令モジュール記憶手段と、
前記ジョブ命令生成モジュールと異なるモジュールであって、描画イメージを記述してプリンタに対して描画を指示するための描画命令を生成する描画命令生成モジュールを複数記憶する描画命令生成モジュール記憶手段と、
印刷対象となるプリンタに対して使用すべき、前記ジョブ命令生成モジュール記憶手段に記憶された前記ジョブ命令生成モジュールと、前記描画命令生成モジュール記憶手段に記憶された前記描画命令生成モジュールと、の組合せを決定する決定手段と、
前記決定手段で決定された前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、に対してコマンドの生成を要求する生成要求手段と、
前記ジョブ命令生成モジュールで生成されたジョブ命令と、前記描画命令生成モジュールで生成された描画命令と、を前記印刷対象となる前記プリンタに対して送信する送信手段と、
を備えたことを特徴とするプリンタドライバ。
【請求項２】
前記決定手段は、ユーザからの選択操作に従って、前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、を決定すること、を特徴とする請求項１に記載のプリンタドライバ。
【請求項３】
前記決定手段は、印刷対象となる前記プリンタと通信を行うことで、当該プリンタに対応している、前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、を決定すること、を特徴とする請求項１に記載のプリンタドライバ。
【請求項４】
前記生成要求手段は、前記ジョブ命令生成モジュール、又は、前記描画命令生成モジュールに対して、印刷シーケンス上の特定のタイミングに対応したコマンドの生成を要求することを、特徴とする請求項１乃至３のいずれか一つに記載のプリンタドライバ。
【請求項５】
前記生成要求手段が生成する特定のタイミングが、印刷の開始、文書の開始、ページの開始、ページの終了、文書の終了、及び印刷の終了のうちいずれか一つ以上であること、
を特徴とする請求項１乃至４のいずれか一つに記載のプリンタドライバ。
【請求項６】
プリンタに対して印刷ジョブに関するジョブ命令を生成するジョブ命令生成モジュールを複数記憶するジョブ命令モジュール記憶手段と、
前記ジョブ命令生成モジュールと異なるモジュールであって、描画イメージを記述してプリンタに対して描画を指示するための描画命令を生成する描画命令生成モジュールを複数記憶する描画命令生成モジュール記憶手段と、
印刷対象となるプリンタに対して使用すべき、前記ジョブ命令生成モジュール記憶手段に記憶された前記ジョブ命令生成モジュールと、前記描画命令生成モジュール記憶手段に記憶された前記描画命令生成モジュールと、の組合せを決定する決定手段と、
前記決定手段で決定された前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、に対してコマンドの生成を要求する生成要求手段と、
前記ジョブ命令生成モジュールで生成されたジョブ命令と、前記描画命令生成モジュールで生成された描画命令と、を前記印刷対象となる前記プリンタに対して送信する送信手段と、
を備えたことを特徴とする情報処理装置。
【請求項７】
前記決定手段は、ユーザからの選択操作に従って、前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、を決定すること、を特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記決定手段は、印刷対象となる前記プリンタと通信を行うことで、当該プリンタに対応している、前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、を決定すること、を特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記生成要求手段は、前記ジョブ命令生成モジュール、又は、前記描画命令生成モジュールに対して、印刷シーケンス上の特定のタイミングに対応したコマンドの生成を要求することを、特徴とする請求項６乃至８のいずれか一つに記載の情報処理装置。
【請求項１０】
前記生成要求手段が生成する特定のタイミングが、印刷の開始、文書の開始、ページの開始、ページの終了、文書の終了、及び印刷の終了のうちいずれか一つ以上であること、
を特徴とする請求項６乃至９のいずれか一つに記載の情報処理装置。
【請求項１１】
請求項１乃至５のいずれか一つに記載のプリンタドライバのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタドライバ、情報処理装置、及びコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【０００２】
従来から、ＰＣ等のホストコンピュータからプリンタに対して印刷命令を行うためプリンタドライバがインストールされている必要があった。当該プリンタドライバでは、プリンタに対して印刷を指示するための印刷命令が各種用いられていた。そして、ホストコンピュータからの要求に応じて、プリンタドライバは、プリンタへ印刷命令を送信していた。この送信される印刷命令は、ジョブコマンドと描画コマンドとに分かれている場合が多い。
【０００３】
ジョブコマンドには、ステーブル、部数、両面などのプリンタを機械的に制御するための命令が含まれている。そして、描画コマンドには、どのような絵を描くか(円を描く、線を引く等)と言う情報が含まれている。
【０００４】
ジョブコマンド、描画コマンドにはそれぞれいくつかの規格がある。例えば、ジョブコマンドとしては、例えばＰＪＬ(Printer  Job  Language)、ＪＤＦ（Job  Definition  Format）がある。また描画コマンドとしては、ＰｏｓｔＳｃｒｉｐｔ、ＰＣＬ、ＲＰＣＳ等の代表的な規格がある。
【０００５】
そして、これらの異なる規格のジョブコマンドと描画コマンドとが、各プリンタのプラットフォーム(プリンタを制御するソフトウェア)に応じて組み合わせて用いられている。
プリンタ毎のプラットフォーム(プリンタを制御するソフトウェア)により、使用可能なコマンドが定められる。例えば、あるプリンタでは、ジョブコマンドとしてＰＪＬが用いられ、描画コマンドとしてＰｏｓｔＳｃｒｉｐｔとが用いられる。また、他のプリンタでは、ジョブコマンドとしてＪＤＦが用いられ、描画コマンドとしてＰＣＬが用いられる。
【０００６】
このため、プリンタドライバが複数のプリンタに対応するためには、規格が異なる複数のコマンドに対応する必要がある。例えば、特許文献１に記載された技術は、複数の描画コマンドに変換する技術である。これにより描画コマンドが異なる複数のプリンタに対して、印刷要求を行うことができる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載された技術は、描画コマンドが異なる複数種類のプリンタに対応する技術であるが、ジョブコマンドについては考慮されていない。
【０００８】
本発明は、上記に鑑みてなされたものであって、複数種類のプリンタに対して印刷要求を可能とするプリンタドライバ、情報処理装置、及びコンピュータ読み取り可能な記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明にかかるプリンタドライバは、プリンタに対して印刷ジョブに関するジョブ命令を生成するジョブ命令生成モジュールを複数記憶するジョブ命令モジュール記憶手段と、前記ジョブ命令生成モジュールと異なるモジュールであって、描画イメージを記述してプリンタに対して描画を指示するための描画命令を生成する描画命令生成モジュールを複数記憶する描画命令生成モジュール記憶手段と、印刷対象となるプリンタに対して使用すべき、前記ジョブ命令生成モジュール記憶手段に記憶された前記ジョブ命令生成モジュールと、前記描画命令生成モジュール記憶手段に記憶された前記描画命令生成モジュールと、の組合せを決定する決定手段と、前記決定手段で決定された前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、に対してコマンドの生成を要求する生成要求手段と、前記ジョブ命令生成モジュールで生成されたジョブ命令と、前記描画命令生成モジュールで生成された描画命令と、を前記印刷対象となる前記プリンタに対して送信する送信手段と、を備えたことを特徴とする。
【００１０】
また、本発明にかかる情報処理装置は、プリンタに対して印刷ジョブに関するジョブ命令を生成するジョブ命令生成モジュールを複数記憶するジョブ命令モジュール記憶手段と、前記ジョブ命令生成モジュールと異なるモジュールであって、描画イメージを記述してプリンタに対して描画を指示するための描画命令を生成する描画命令生成モジュールを複数記憶する描画命令生成モジュール記憶手段と、印刷対象となるプリンタに対して使用すべき、前記ジョブ命令生成モジュール記憶手段に記憶された前記ジョブ命令生成モジュールと、前記描画命令生成モジュール記憶手段に記憶された前記描画命令生成モジュールと、の組合せを決定する決定手段と、前記決定手段で決定された前記ジョブ命令生成モジュールと、前記描画命令生成モジュールと、に対してコマンドの生成を要求する生成要求手段と、前記ジョブ命令生成モジュールで生成されたジョブ命令と、前記描画命令生成モジュールで生成された描画命令と、を前記印刷対象となる前記プリンタに対して送信する送信手段と、を備えたことを特徴とする。
【００１１】
また、本発明にかかるコンピュータ読み取り可能な記憶媒体は、請求項１乃至５のいずれか一つ記載のプリンタドライバのプログラムを記憶したことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ジョブ命令及び描画命令が異なる複数種類のプリンタに対応できるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１の実施の形態にかかる情報処理装置の構成を示すブロック図である。
【図２】図２は、情報処理装置に接続可能な複数種類のプリンタを示した説明図である。
【図３】図３は、描画コマンドを切り替える、従来のプリンタドライバの例を示した図である。
【図４】図４は、従来のプリンタドライバで各プリンタに対して印刷要求を行った例を示した説明図である。
【図５】図５は、規格決定画面表示部が表示する画面例を示した図である。
【図６】図６は、第１の実施の形態にかかる情報処理装置において決定されたコマンドの組み合わせで印刷要求を行っている概念を示した図である。
【図７】図７は、第１の実施の形態にかかる情報処理装置におけるプリンタＡに対する印刷処理の要求手順を示すシーケンス図である。
【図８】図８は、第１の実施の形態にかかる情報処理装置におけるコマンドを送信するまでの具体的な処理の手順を示すフローチャートである。
【図９】図９は、第２の実施の形態にかかる情報処理装置の構成を示したブロック図である。
【図１０】図１０は、第２の実施の形態にかかる情報処理装置におけるプリンタＡとの間のコマンドの規格を決定する際の手順を示すシーケンス図である。
【図１１】図１１は、情報処理装置のハードウェア構成を示す図である。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照して、この発明にかかるプリンタドライバ、情報処理装置、及びコンピュータ読み取り可能な記憶媒体の一実施の形態を詳細に説明する。
【００１５】
（第１の実施の形態）
図１は、第１の実施の形態にかかる情報処理装置１００の構成を示すブロック図である。図１に示すように、情報処理装置１００は、アプリケーション１０１と、ＯＳ１０２と、接続Ｉ／Ｆ１０３とを備えている。そして、接続Ｉ／Ｆ１０３は、プリンタＡ１５０とネットワークを介して接続している。これにより情報処理装置１００から、プリンタＡ１５０Ａ等に対して印刷要求を行うことができる。
【００１６】
プリンタ１５０は、当該プリンタ１５０が備えた（図示しない）操作部から入力された印刷要求に応じて印刷処理をおこなう。さらに、プリンタ１５０は、情報処理装置１００と接続するインターフェースを備え、ネットワークを介して接続された情報処理装置１００からの印刷要求に応じて印刷処理を行う。本実施の形態にかかるプリンタ１５０は、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能のうち少なくとも２つの機能を有する複合機を適用する。なお、複合機以外ではなく単なる印刷処理のみしかおこなわないプリンタであっても良い。なお、本実施の形態にかかる情報処理装置１００は、複数種類のプリンタ１５０を接続しても良く、以降、これら複数種類のプリンタ１５０をプリンタＡ〜プリンタＣとする。
【００１７】
図２は、情報処理装置１００に接続可能な複数種類のプリンタを示した説明図である。図２に示す、プリンタＡは、ジョブコマンドとしてＰＪＬと、描画コマンドとしてＰｏｓｔＳｃｒｉｐｔとの組合せ２０１を用いている。そして、プリンタＢは、ジョブコマンドとしてＪＤＦと、描画コマンドとしてＰＣＬとの組合せ２０２を用いている。
【００１８】
また、プリンタは、ジョブコマンド及び描画コマンドのそれぞれ一つずつのみサポートするものではない。例えば図２のプリンタＣに示すように、複数の組合せに対応することも可能である。つまり、プリンタＣでは、ＰＪＬとＰｏｓｔＳｃｒｉｐｔとの組合せ２０３と、ＰＪＬとＰＣＬとの組合せ２０４と、ＰＪＬとＲＰＣＳとの組合せ２０５と、を用いることができる。
【００１９】
ところで、従来のプリンタドライバは、特定の規格のコマンドしかプリンタに送信できなかった。その為、プリンタが対応しているコマンドの規格と異なる場合には、当該規格に合ったプリンタドライバをインストールしなければいけなかった。このような問題を解決するために、複数の描画コマンドをサポートするプリンタドライバが求められた。そこで、以下に示すように描画コマンドを切り替えるプリンタドライバがすでに提案されている。
【００２０】
図３は、描画コマンドを切り替える、従来のプリンタドライバ３００の例を示した図である。図３に示すように、従来のプリンタドライバ３００は、印刷設定モジュール３０１と、描画モジュール３０２と、ＰＳコマンド生成モジュール３０３と、ＰＣＬコマンド生成モジュール３０４と、ＲＰＣＳコマンド生成モジュール３０５と、通信部３０６と、を備えている。なお、印刷設定モジュール３０１と、描画モジュール３０２と、通信部３０６とは、本実施の形態のプリンタドライバ１１１が備えるものとほぼ同様の構成として説明を省略する。
【００２１】
そして、ＰＳコマンド生成モジュール３０３は、ＰＪＬジョブコマンド生成モジュールと、ＰＳ描画コマンド生成モジュールと、を有している。また、ＰＣＬコマンド生成モジュール３０４は、ＰＪＬジョブコマンド生成モジュールと、ＰＣＬ描画コマンド生成モジュールと、を有している。また、ＲＰＣＳコマンド生成モジュール３０４は、ＰＪＬジョブコマンド生成モジュールと、ＲＰＣＳＬ描画コマンド生成モジュールと、を有している。
【００２２】
つまり、従来のプリンタドライバ３００においては、描画コマンド毎に利用すべきジョブコマンドが予め組み合わせられている。このため、ジョブコマンドと描画コマンドとを異なる組合せで使用することができなかった。
【００２３】
図４は、従来のプリンタドライバ３００で各プリンタに対して印刷要求を行った例を示した説明図である。図４に示すように従来のプリンタドライバ３００では、ＰＪＬとＰＳの組合せと、ＰＪＬとＰＣＬの組み合わせと、ＰＪＬとＲＰＣＳとの組み合わせとに限り対応していた。このため、ＰＪＬとＰｏｓｔＳｃｒｉｐｔとの組み合わせに限り印刷要求を受け付けるプリンタＡは利用できる。また、ＰＪＬとＰｏｓｔＳｃｒｉｐｔとの組み合わせ、ＰＪＬとＰＣＬとの組合せ、及びＰＪＬとＲＰＣＳとの組合せについて印刷要求を受け付けるプリンタＣは利用できる。
【００２４】
しかしながら、従来のプリンタドライバ３００では、ＪＤＦとＰＣＬとの組み合わせのみ印刷要求可能なプリンタＢについては、印刷要求を行うことができない。このように、従来のプリンタドライバ３００では、描画コマンドＰＣＬに対応しているにも拘わらず、ジョブコマンドＪＤＦとの組み合わせに対応していないため、プリンタＢに対して印刷要求を行うことができないという問題が生じていた。これに対し、本実施の形態にかかるプリンタドライバ１１１では、サポートしているジョブコマンド及び描画コマンドであれば、いずれの組み合わせであっても印刷要求を行うことを可能としている。
【００２５】
情報処理装置１００のアプリケーション１０１は、後述するＯＳ１０２上で動作するソフトウェアであり、ＯＳ１０２内に対して印刷要求を行うものとする。
【００２６】
ＯＳ１０２は、プリンタドライバ１１１と、ＧＤＩ（Graphics  Device  Interface）１１２とを備え、情報処理装置１００全体の制御を行う。
【００２７】
ＧＤＩ１１２は、ＯＳ１０２が備えるサブシステムの１つであり、描画処理を行う。そして、ＧＤＩ１１２は、ＯＳ１０２がアプリケーション１０１等から印刷要求を受け付けた場合に、プリンタドライバ１１１を呼び出して、印刷処理を要求する。
【００２８】
プリンタドライバ１１１は、印刷設定モジュール１２１と、通信部１２２と、描画モジュール１２３と、ジョブコマンド生成モジュール記憶部１２４と、描画コマンド生成モジュール記憶部１２５と、を備える。
【００２９】
ジョブコマンド生成モジュール記憶部１２４は、各種プリンタに対して印刷ジョブの処理を要求するジョブコマンドを生成するジョブコマンド生成モジュールを複数記憶する。本実施の形態にかかるジョブコマンド生成モジュール記憶部１２４は、ＰＪＬジョブコマンド生成モジュール１２４ａと、ＪＤＦジョブコマンド生成モジュール１２４ｂと、を記憶する。
【００３０】
ＰＪＬジョブコマンド生成モジュール１２４ａは、描画モジュール１２３からの要求に従って、ＰＪＬに基づくジョブコマンドを生成するモジュールとする。ＪＤＦジョブコマンド生成モジュール１２４ｂは、描画モジュール１２３からの要求に従って、ＪＤＦに基づくジョブコマンドを生成するモジュールとする。これらのモジュールで生成されたジョブコマンドは、プリンタＡ１５０に対して出力するために用いられる。
【００３１】
描画コマンド生成モジュール記憶部１２５は、描画イメージを記述してプリンタに対して描画を指示するための描画コマンドを生成する描画命令モジュールを複数記憶する。本実施の形態にかかる描画コマンド生成モジュール記憶部１２５は、ＰＳ描画コマンド生成モジュール１２５ａと、ＰＣＬ描画コマンド生成モジュール１２５ｂと、ＲＰＣＳ描画コマンド生成モジュール１２５ａと、を記憶する。
【００３２】
印刷設定モジュール１２１は、出力コマンド規格決定部１３１を備え、印刷要求を行うプリンタで印刷を行うための設定を行う。
【００３３】
出力コマンド規格決定部１３１は、規格決定画面表示部１３２と、規格選択受付部１３３と、を備え、印刷対象となるプリンタに対して使用すべきジョブコマンド生成モジュールと、描画コマンド生成モジュールと、の組合せを決定する。本実施の形態においては、ユーザによりなされた選択操作に従って、各モジュールを決定する。そのための構成について説明する。
【００３４】
規格決定画面表示部１３２は、情報処理装置１００の（図示しない）表示部に対して規格決定するための画面を表示する処理を行う。当該処理は、ＧＤＩ１１２を介して行われる。図５は、規格決定画面表示部１３２が表示する画面例を示した図である。図５に示すように当該画面では、出力先となるプリンタ名５０１が表示されている。そして、表示されたプリンタ名５０１が指し示すプリンタに対して使用するジョブコマンドを選択するためのジョブコマンド選択欄５０２と、描画コマンドを選択するための描画コマンド選択欄５０３とを表示する。
【００３５】
規格選択受付部１３３は、規格決定画面表示部１３２が表示した画面から選択された各項目を受け付ける。つまり、ジョブコマンド選択欄５０２で選択されたジョブコマンドと、描画コマンド選択欄５０３で選択された描画コマンドとを受け付ける。
【００３６】
そして、出力コマンド規格決定部１３１は、選択を受け付けたコマンドに対応する、生成モジュールと、描画コマンド生成モジュールと、を、プリンタ名５０１が指し示すプリンタに対して出力するコマンドを生成するモジュールとして決定する。
【００３７】
描画モジュール１２３は、コマンド生成要求部１４１を備え、ＧＤＩ１１２等からの印刷要求に応じたコマンドを生成する。生成するコマンドは以下の２種類とする。
【００３８】
一つは、線、図形画像などの印刷されるオブジェクトのデータを記述した描画コマンドである。当該描画コマンドは、ＰＳ描画コマンド生成モジュール１２５ａ、ＰＣＬ描画コマンド生成モジュール１２５ｂ、及びＲＰＣＳ描画コマンド生成モジュール１２５ｃにより生成される。
【００３９】
もう一つは、印刷されるオブジェクトと関係するものではなく、例えば、フィニッシャの設定、ジョブ名、又はユーザ名などベンダごとに多種多様ジョブの情報を記述したジョブコマンドである。当該ジョブコマンドは、ＰＪＬジョブコマンド生成モジュール１２４ａ、及びＪＤＦジョブコマンド生成モジュール１２４ｂにより生成される。
【００４０】
コマンド生成要求部１４１は、出力コマンド規格決定部１３１で決定されたジョブコマンド生成モジュールと、描画コマンド生成モジュールと、に対して、プリンタに対して出力すべきコマンドの生成の要求を行う。
【００４１】
その際、コマンド生成要求部１４１は、各コマンド生成モジュールでコマンドを生成させるために、コマンド生成モジュールに対して、印刷シーケンスにおけるタイミング、及びコマンドを生成するのに必要な印刷設定を受け渡す。
【００４２】
本実施の形態では、印刷シーケンスにおけるタイミングとして、印刷（ジョブ）の開始、文書の開始、ページの開始、ページの終了、文書の終了、及び印刷の終了のタイミングがあるものとする。いずれのタイミングであっても、ジョブコマンド生成モジュール、及び描画コマンド生成モジュールの基本的な動作は変わらないものとする。
【００４３】
通信部１２２は、コマンド生成要求部１４１の生成要求に従って、ジョブコマンド生成モジュールで生成されたジョブコマンドと、描画コマンド生成モジュールで生成された描画コマンドと、を印刷要求の対象となるプリンタ（例えばプリンタＡ）に対して送信する。
【００４４】
図６は、本実施の形態にかかる情報処理装置１００において決定されたコマンドの組み合わせで印刷要求を行っている概念を示した図である。まずは、ユーザが、プリンタＡに対してはＰＪＬとＰｏｓｔＳｃｒｉｐｔを、プリンタＢに対してはＪＤＦとＰＣＬを、プリンタＣに対してはＰＪＬとＰＣＬを予め選択しているものとする。そして、図６に示す例では、情報処理装置１００は、ユーザに選択されたコマンドの組み合わせに従って、プリンタに対して印刷要求を行う。
【００４５】
具体的には、情報処理装置１００は、プリンタＡに対しては、ＰＪＬジョブコマンド生成モジュール１２４ａで生成されたジョブコマンドと、ＰＳ描画コマンド生成モジュール１２５ａで生成された描画コマンドとを出力する。また、情報処理装置１００は、プリンタＢに対しては、ＪＤＦジョブコマンド生成モジュール１２４ｂで生成されたジョブコマンドと、ＰＣＬ描画コマンド生成モジュール１２５ｂで生成された描画コマンドとを出力する。さらに、情報処理装置１００は、プリンタＣに対しては、ＰＪＬジョブコマンド生成モジュール１２４ａで生成されたジョブコマンドと、ＰＣＬ描画コマンド生成モジュール１２５ｂで生成された描画コマンドとを出力する。このように、本実施の形態では、プリンタごとに、ユーザに選択されたコマンドの組み合わせで印刷要求等のコマンドを出力するため、プリンタごとに柔軟な対応が可能となる。
【００４６】
次に、以上のように構成された本実施の形態にかかる情報処理装置１００におけるプリンタＡ１５０に対する印刷処理の要求手順について説明する。図７は、本実施の形態にかかる情報処理装置１００における上述した処理の手順を示すシーケンス図である。まずは、印刷要求のための設定から行う。なお、すでに設定が行われている場合には、ステップＳ６０１〜Ｓ６０５の処理を省略してもよい。
【００４７】
まず、ＯＳ１０２が、印刷設定モジュール１２１に対して、印刷設定の決定依頼を行う（ステップＳ６０１）。次に、印刷設定モジュール１２１が、ユーザからの印刷設定の入力を受け付ける（ステップＳ６０２）。
【００４８】
印刷時の印刷設定を決定する際に、印刷時に送信するコマンドの規格を決定する。そこで、印刷設定モジュール１２１は、出力コマンド規格決定部１３１に対して、出力コマンドの規格決定要求を行う（ステップＳ６０３）。
【００４９】
規格決定要求を受け付けた場合、規格決定画面表示部１３２は、規格決定画面を表示する（ステップＳ６０４）。そして、規格選択受付部１３３が、規格決定画面でユーザに選択されたコマンドの規格の選択を受け付ける（ステップＳ６０５）。これにより、印刷要求に用いるジョブコマンドと描画コマンドの規格が決定される。
【００５０】
そして、出力コマンド規格決定部１３１が、規格が決定された旨を印刷設定モジュール１２１に対して通知する（ステップＳ６０６）。そして、印刷設定モジュール１２１は、ＯＳ１０２に対して、印刷設定が終了した旨を通知する（ステップＳ６０７）。
【００５１】
その後、ＯＳ１０２は、ジョブの開始要求を、描画モジュール１２３に対して行う（ステップＳ６０８）。この際、ＯＳ１０２から印刷設定モジュール１２１で決定した印刷設定値が受け渡される。この印刷設定値には、出力するジョブコマンド及び描画コマンドの規格も含まれる。
【００５２】
そこで、当該開始要求を受け付けた描画モジュール１２３のコマンド生成要求部１４１は、受け渡された印刷設定値に含まれるジョブコマンド及び描画コマンドの規格に基づいて、呼び出すコマンド生成モジュールを決定する（ステップＳ６０９）。本シーケンスでは、ＰＪＬジョブコマンド生成モジュール１２４ａと、ＰＳ描画コマンド生成モジュール１２５ａとに決定されたものとする。なお、この際、決定されたコマンド生成モジュールが、ロードされていない場合には、ロードする処理をおこなうものとする。
【００５３】
そして、コマンド生成要求部１４１は、ジョブ開始時のコマンド生成を、ＰＪＬジョブコマンド生成モジュール１２４ａに対して要求する（ステップＳ６１０）。そして、ＰＪＬジョブコマンド生成モジュール１２４ａが、生成したジョブコマンドを描画モジュール１２３が受け取る（ステップＳ６１１）。
【００５４】
さらに、コマンド生成要求部１４１は、ジョブ開始時のコマンド生成を、ＰＳ描画コマンド生成モジュール１２４ａに対して要求する（ステップＳ６１２）。そして、ＰＳ描画コマンド生成モジュール１２４ａが、生成した描画コマンドを描画モジュール１２３が受け取る（ステップＳ６１３）。
【００５５】
その後、描画モジュール１２３は、通信部１２２を介して、生成されたジョブコマンドと、描画コマンドとを、プリンタＡ１５０に対して送信する（ステップＳ６１４）。
【００５６】
その後、ＯＳ１０２は、ドキュメントの開始要求を、描画モジュールに対して行う（ステップＳ６１５）。さらに、ＯＳ１０２は、ページの開始要求を、描画モジュールに対して行う（ステップＳ６１６）。
【００５７】
そして、ＯＳ１０２は、ページの終了要求を、描画モジュールに対して行う（ステップＳ６１７）。ＯＳ１０２は、ドキュメントの終了要求を、描画モジュールに対して行う（ステップＳ６１８）。最後に、ＯＳ１０２は、ジョブの終了要求を、描画モジュールに対して行う（ステップＳ６１９）。なお、上述したステップＳ６１５〜Ｓ６１９の処理においては、省略しているがそれぞれステップＳ６１０〜Ｓ９１２と同様の処理が行われる。
【００５８】
上述した処理手順により、ユーザに選択された規格に基づいて生成されたコマンドの組み合わせが、プリンタに対して出力されることになる。
【００５９】
次に、本実施の形態にかかる情報処理装置１００におけるコマンドを送信するまでの具体的な処理について説明する。図８は、本実施の形態にかかる情報処理装置１００における上述した処理の手順を示すフローチャートである。なお、出力コマンド規格決定部１３１による決定はすでに終了しているものとする。
【００６０】
まずは、描画モジュール１２３のコマンド生成要求部１４１は、ＯＳ１０２から受け渡された印刷設定値に含まれるジョブコマンド及び描画コマンドの規格に基づいて、呼び出すコマンド生成モジュールを決定する（ステップＳ７０１）。
【００６１】
そして、描画モジュール１２３は、呼び出すジョブコマンド生成モジュールがロード済みか否か判定する（ステップＳ７０２）。そして、ロード済みと判定した場合（ステップＳ７０２：Ｙｅｓ）、特に処理を行わずにステップＳ７０４に進む。
【００６２】
一方、ロード済みでないと判定した場合（ステップＳ７０２：Ｎｏ）、描画モジュール１２３は、呼び出すジョブコマンド生成モジュールを、図示しないメモリ上にロードする（ステップＳ７０３）。これにより、ジョブ生成モジュールの使用が可能となる。ロードされるモジュールとしては、ＰＪＬジョブコマンド生成モジュール１２４ａ又はＪＤＦジョブコマンド生成モジュール１２４ｂなどとする。
【００６３】
次に、コマンド生成要求部１４１が、決定されたジョブコマンド生成モジュールに対してジョブコマンドの生成を要求する（ステップＳ７０４）。これにより、ジョブコマンドが、ジョブコマンド生成モジュールにより生成される。
【００６４】
そして、描画モジュール１２３は、ジョブコマンド生成モジュールから、生成されたジョブコマンドを受信する（ステップＳ７０５）。
【００６５】
そして、描画モジュール１２３は、呼び出す描画コマンド生成モジュールがロード済みか否か判定する（ステップＳ７０６）。そして、ロード済みと判定した場合（ステップＳ７０６：Ｙｅｓ）、特に処理を行わずにステップＳ７０８に進む。
【００６６】
一方、ロード済みでないと判定した場合（ステップＳ７０６：Ｎｏ）、描画モジュール１２３は、呼び出す描画コマンド生成モジュールを、図示しないメモリ上にロードする（ステップＳ７０７）。これにより、描画生成モジュールの使用が可能となる。ロードされるモジュールとしては、ＰＳ描画コマンド生成モジュール１２５ａ、ＰＣＬ描画コマンド生成モジュール１２５ｂ、又はＲＰＣＳ描画コマンド生成モジュール１２５ｃとする。
【００６７】
次に、コマンド生成要求部１４１が、決定された描画コマンド生成モジュールに対して描画コマンドの生成を要求する（ステップＳ７０８）。これにより、描画コマンドが、描画コマンド生成モジュールにより生成される。
【００６８】
そして、描画モジュール１２３は、描画コマンド生成モジュールから、生成されたジョブコマンドを受信する（ステップＳ７０９）。
【００６９】
そして、描画モジュール１２３は、生成されたジョブコマンド及び描画コマンドを、通信部１２２を介して、プリンタＡ１５０等に対して送信する（ステップＳ７１０）。
【００７０】
上述した処理手順により、プリンタに対してジョブコマンド生成モジュール、及び描画コマンド生成モジュールで生成されたコマンドを送信することが可能となる。
【００７１】
また、本実施の形態は、対応可能なジョブコマンドをＰＪＬ及びＪＤＦに制限するものではなく、あらゆるジョブコマンドに対して適応できる。また、描画コマンドについても同様に、ＰｏｓｔＳｃｒｉｐｔ、ＰＣＬ、及びＲＰＣＳ以外の描画コマンドを用いても良い。また、プリンタドライバのインストール先も、ＰＣ等の他、各種携帯端末などあらゆる情報処理装置に適応できる。
【００７２】
本実施の形態にかかる情報処理装置１００においては、従来の３種類の規格の描画コマンドをサポートしていてもジョブコマンドの規格が異なるプリンタは制御できないという問題を解決し、描画コマンドだけではなくジョブコマンドの規格の異なるプリンタであっても、一つのプリンタドライバで制御することを可能とした。
【００７３】
さらには、ジョブコマンドの規格が異なるプリンタを一つのプリンタドライバ１１１で制御できるため、ユーザの利便性が向上する。
【００７４】
（第２の実施の形態）
第１の実施の形態においては、ユーザにより選択されたコマンドの規格に基づいて生成されたコマンドをプリンタに送信する例について説明した。しかしながら、コマンドの規格の決定は、ユーザの選択に制限するものではない。そこで、第２の実施の形態では、プリンタとの通信により規格を決定する手法について説明する。
【００７５】
図９は、第２の実施の形態にかかる情報処理装置８００の構成を示したブロック図である。図９に示す、情報処理装置８００は、ＯＳ８０１に搭載されたプリンタドライバ８１０の印刷設定モジュール８１１が、第１の実施の形態にかかる印刷設定モジュール１２１と異なるものとする。なお、第１の実施の形態と同一の構成については、同じ符号を割り当て、説明を省略する。
【００７６】
また、本実施の形態にかかるプリンタ８５０は、情報処理装置８００との通信で使用されているジョブコマンド及び描画コマンドの規格を送信するものとする。他の点については第１の実施の形態にかかるプリンタと同様の処理を行うものとする。
【００７７】
印刷設定モジュール８１１は、出力コマンド規格決定部８１２を備える他は、第１の実施の形態の印刷設定モジュール１２１と同様の構成とする。
【００７８】
出力コマンド規格決定部８１２は、規格問合部８１３を備え、を備え、印刷対象となるプリンタに対して使用すべきジョブコマンド生成モジュールと、描画コマンド生成モジュールと、の組合せを決定する。本実施の形態においては、印刷対象となるプリンタと通信を行うことで、各モジュールを決定する。
【００７９】
規格問合部８１３は、通信部１２２を介して、印刷要求を行うプリンタ８５０に対して、使用可能なジョブコマンドと、描画コマンドと、の規格を問い合わせる。そして、当該問い合わせ結果により、使用するジョブコマンド生成モジュールと、描画コマンド生成モジュールと、が決定される。
【００８０】
次に、以上のように構成された本実施の形態にかかる情報処理装置８００におけるプリンタＡ８５０との間のコマンドの規格を決定する際の手順について説明する。図１０は、本実施の形態にかかる情報処理装置８００における上述した処理の手順を示すシーケンス図である。
【００８１】
まず、ＯＳ８０１が、印刷設定モジュール８１１に対して、印刷設定の決定依頼を行う（ステップＳ９０１）。次に、印刷設定モジュール８１１が、ユーザからの印刷設定の入力を受け付ける（ステップＳ９０２）。次に、印刷設定モジュール８１１は、出力コマンド規格決定部８１２に対して、出力コマンドの規格決定要求を行う（ステップＳ９０３）。
【００８２】
規格決定要求を受け付けた場合、出力コマンド規格決定部８１２の規格問合部８１３は、通信部１２２を介して、印刷対象とのプリンタ８５０に対してジョブコマンドの規格の問い合わせを行う（ステップＳ９０４）。そして、プリンタ８５０は、適用可能なジョブコマンドの規格を、情報処理装置８００に対して送信する（ステップＳ９０５）。
【００８３】
さらに、通信部１２２を介して、印刷対象とのプリンタ８５０に対して描画コマンドの規格の問い合わせを行う（ステップＳ９０６）。そして、プリンタ８５０は、適用可能な描画コマンドの規格を、情報処理装置８００に対して送信する（ステップＳ９０７）。これにより、印刷要求に用いるジョブコマンドと描画コマンドの規格が決定される。
【００８４】
そして、出力コマンド規格決定部８１２が、規格が決定された旨を印刷設定モジュール８１１に対して通知する（ステップＳ９０８）。そして、印刷設定モジュール８１１は、ＯＳ８０１に対して、印刷設定が終了した旨を通知する（ステップＳ９０９）。
【００８５】
上述した処理手順により、プリンタ８５０に対して適用するジョブコマンド及び描画コマンドの規格が決定される。なお、図９の処理手順の後は、ジョブの開始要求などが行われるが、第１の実施の形態と同様として説明を省略する。
【００８６】
（変形例）
また、上述した各実施の形態で示したようにユーザの選択や、プリンタとの双方向通信で、ジョブコマンドと描画コマンドとの組合せを決定することに制限するものではない。例えば、ネットワーク上に存在するサーバが配信している外部ファイル等を参照して、ジョブコマンドと、描画コマンドとの組合せを決定しても良い。
【００８７】
上述した実施の形態の情報処理装置１００、８００は、図１１に示すように、ＣＰＵ１００１と、ＲＯＭ（Read  Only  Memory）１００２と、ＲＡＭ１００３と、入力Ｉ／Ｆ１００４と、通信Ｉ／Ｆ１００５と、表示部１００６と、これらを接続するバス１００７と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００８８】
本実施形態の情報処理装置１００、８００で実行されるプリンタドライバプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【００８９】
また、本実施形態の情報処理装置１００、８００で実行されるプリンタドライバプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態の情報処理装置１００で実行されるプリンタドライバプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００９０】
また、本実施形態のプリンタドライバプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００９１】
本実施の形態の情報処理装置１００、８００で実行されるプリンタドライバプログラムは、上述した各部（印刷設定モジュール、通信部、描画モジュール、ジョブコマンド生成モジュール記憶部、及び描画コマンド生成モジュール記憶部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ１００１が上記記憶媒体からプリンタドライバプログラムを読み出して実行することにより上記各部が主記憶装置上（ＲＡＭ１００３）にロードされ、印刷設定モジュール、通信部、描画モジュール、ジョブコマンド生成モジュール記憶部、及び描画コマンド生成モジュール記憶部がＲＡＭ１００３上に生成されるようになっている。
【符号の説明】
【００９２】
１００、８００  情報処理装置
１０１  アプリケーション
１０２  ＯＳ
１０３  接続Ｉ／Ｆ
１１１、８１０  プリンタドライバ
１１２  ＧＤＩ
１２１、８１１  印刷設定モジュール
１２２  通信部
１２３  描画モジュール
１２４  ジョブコマンド生成モジュール記憶部
１２４ａ  ＰＪＬジョブコマンド生成モジュール
１２４ｂ  ＪＤＦジョブコマンド生成モジュール
１２５  描画コマンド生成モジュール記憶部
１２５ａ  ＰＳ描画コマンド生成モジュール
１２５ｂ  ＰＣＬ描画コマンド生成モジュール
１２５ｃ  ＲＰＣＳ描画コマンド生成モジュール
１３１、８１２  出力コマンド規格決定部
１３２  規格決定画面表示部
１３３  規格選択受付部
１４１  コマンド生成要求部
１５０  プリンタＡ
８１３  規格問合部
８５０  プリンタ
【先行技術文献】
【特許文献】
【００９３】
【特許文献１】特開２００９−０５３７８９号公報
【図１】
2011060154.tif 000003
【図２】
2011060154.tif 000004
【図３】
2011060154.tif 000005
【図４】
2011060154.tif 000006
【図５】
2011060154.tif 000007
【図６】
2011060154.tif 000008
【図７】
2011060154.tif 000009
【図８】
2011060154.tif 000010
【図９】
2011060154.tif 000011
【図１０】
2011060154.tif 000012
【図１１】
2011060154.tif 000013