(57)【要約】【課題】アプリケーションプログラムが印刷条件を適切に設定しなくても、適切な印刷条件に基づいて印刷データを作成することができる印刷プログラム、印刷制御装置、及び印刷設定情報のデータ構造を提供する。【解決手段】印刷プログラムであって、印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーション手段を備えるコンピュータを、アプリケーション手段により編集可能な印刷条件を記述した第１の印刷条件と、アプリケーション手段により編集不能であり、第１の印刷条件の少なくとも一部を記述した第２の印刷条件とを含む印刷設定情報を生成する生成手段と、アプリケーション手段によって編集された第１の印刷条件と、第２の印刷条件とを含む印刷設定情報に基づいて印刷データを作成する印刷データ作成手段として機能させる。【選択図】図３
2011215747.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーション手段を備えるコンピュータを、
前記アプリケーション手段により編集可能な印刷条件を記述した第１の印刷条件と、前記アプリケーション手段により編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件とを含む印刷設定情報を生成する生成手段と、
前記アプリケーション手段によって編集された前記第１の印刷条件と、前記第２の印刷条件とを含む前記印刷設定情報に基づいて印刷データを作成する印刷データ作成手段として機能させる印刷プログラム。
【請求項２】
請求項１に記載の印刷プログラムであって、
前記印刷条件は印刷設定項目の設定値からなり、
前記印刷データ作成手段は、
前記第１の印刷条件に前記印刷設定項目の設定値が記述されているか否かを判断する判断手段を有し、
前記判断手段によって否定判断された場合は、前記第２の印刷条件から設定値を取得して印刷データを作成する、印刷プログラム。
【請求項３】
請求項１に記載の印刷プログラムであって、
前記印刷条件は印刷設定項目の設定値からなり、
前記第１の印刷条件に前記印刷設定項目の設定値が記述されているか否かを判断する判断手段と、
前記判断手段によって否定判断された場合に、前記第２の印刷条件から設定値を取得して前記第１の印刷条件を再構築する再構築手段として前記コンピュータを機能させる、印刷プログラム。
【請求項４】
請求項２又は請求項３に記載の印刷プログラムであって、
前記印刷設定項目は大項目とその大項目に従属する小項目とからなり、
前記生成手段は、前記第１の印刷条件については前記大項目の設定値と前記小項目の設定値とを記述し、前記第２の印刷条件については前記小項目の設定値のみを記述する、印刷プログラム。
【請求項５】
印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーション手段と、
前記アプリケーション手段により編集可能な印刷条件を記述した第１の印刷条件と、前記アプリケーション手段により編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件とを含む印刷設定情報を生成する生成手段と、
前記アプリケーション手段によって編集された前記第１の印刷条件と、前記第２の印刷条件とを含む前記印刷設定情報に基づいて印刷データを作成する印刷データ作成手段と、
を備える印刷制御装置。
【請求項６】
印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーションプログラムによって編集される印刷設定情報のデータ構造であって、
前記アプリケーションプログラムにより編集可能な印刷条件を記述した第１の印刷条件と、
前記アプリケーションプログラムにより編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件と、
を含む印刷設定情報のデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷プログラム、印刷制御装置、及び印刷設定情報のデータ構造に関する。
【背景技術】
【０００２】
Microsoft社のオペレーティングシステム（ＯＳ）であるWINDOWS（登録商標）では、Print Capabilitiesと呼ばれる印刷機能情報とPrint Ticketと呼ばれる印刷設定情報とを用いた印刷システムが導入されている（例えば、特許文献１参照）。
【０００３】
図１０は、Print Ticketの一例を示す模式図である。前述したPrint Capabilitiesには印刷設定項目ごとに選択可能な複数の設定値が記述されており、プリンタドライバ（印刷プログラム）はPrint Capabilitiesに記述されている設定値の中からユーザが選択した設定値（印刷条件）に基づいてPrint Ticketを生成し、生成したPrint Ticketに基づいて印刷データを作成する。
【０００４】
Print TicketはＸＭＬ形式のテキストデータであるので、アプリケーションプログラム自身がPrint Ticketを生成することもできるし、プリンタドライバによって生成されたPrint Ticketをアプリケーションプログラムで編集することもできる。この場合、アプリケーションプログラムは、プリンタドライバからPrint Capabilitiesを取得し、そのPrint Capabilitiesに記述されている設定値の中からユーザが選択した設定値（印刷条件）に基づいてPrint Ticketを生成及び編集する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２２３８３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、アプリケーションプログラムの中には、プリンタドライバによって生成されたPrint Ticketを編集する際に、適切な印刷条件を設定しないものが存在する。例えば、Print Capabilitiesのうち印刷条件として大まかな印刷条件だけを設定し、詳細な印刷条件（例えば図１０の波線１０１で囲まれている印刷条件）までを設定しないものがある。
【０００７】
図１１は、詳細な印刷条件までを設定してこないアプリケーションプログラムによって編集されたPrint Ticketの一例を示す模式図である。図示する例では「片面／両面印刷」という印刷設定項目の設定値（「両面印刷、短辺綴じ」）は設定されているが、その「両面印刷、短辺綴じ」を「自動」で行うか「手動」で行うかを設定する印刷設定項目である「両面印刷モード」の設定値は設定されていない。
【０００８】
このように、Print Ticketに適切な印刷条件が設定されていないと、プリンタドライバは適切な印刷条件で印刷データを作成することができないという問題がある。
本発明は上記のような事情に基づいて完成されたものであって、アプリケーションプログラムが印刷条件を適切に設定しなくても、適切な印刷条件に基づいて印刷データを作成することができる印刷プログラム、印刷制御装置、及び印刷設定情報のデータ構造を提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明は、印刷プログラムであって、印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーション手段を備えるコンピュータを、前記アプリケーション手段により編集可能な印刷条件を記述した第１の印刷条件と、前記アプリケーション手段により編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件とを含む印刷設定情報を生成する生成手段と、前記アプリケーション手段によって編集された前記第１の印刷条件と、前記第２の印刷条件とを含む前記印刷設定情報に基づいて印刷データを作成する印刷データ作成手段として機能させる。
この発明によると、印刷プログラムは、アプリケーション手段が編集不能であり、第１の印刷条件の少なくとも一部が記述されている第２の印刷条件を含む印刷設定情報に基づいて印刷データを作成する。従って、アプリケーション手段が第１の印刷条件を編集することにより、印刷条件が適切に設定されていなくても、適切な印刷条件に基づいて印刷データを作成することができる。
【００１０】
第２の発明は、第１の発明の印刷プログラムであって、前記印刷条件は印刷設定項目の設定値からなり、前記印刷データ作成手段は、前記第１の印刷条件に前記印刷設定項目の設定値が記述されているか否かを判断する判断手段を有し、前記判断手段によって否定判断された場合は、前記第２の印刷条件から設定値を取得して印刷データを作成する。
この発明によると、印刷データ作成手段は、第１の印刷条件に印刷設定項目の設定値が設定されていない場合は、第２の印刷条件から設定値を取得することにより、印刷データを作成できる。
【００１１】
第３の発明は、第１の発明の印刷プログラムであって、前記印刷条件は印刷設定項目の設定値からなり、前記第１の印刷条件に前記印刷設定項目の設定値が記述されているか否かを判断する判断手段と、前記判断手段によって否定判断された場合に、前記第２の印刷条件から設定値を取得して前記第１の印刷条件を再構築する再構築手段として前記コンピュータを機能させる。
【００１２】
この発明によると、第２の印刷条件から取得した設定値を用いて第１の印刷条件を再構築するので、第１の印刷条件を含む印刷設定情報に基づいて印刷データを作成する既存の印刷データ作成手段をそのまま用いることができる。
【００１３】
第４の発明は、第２又は第３の発明の印刷プログラムであって、前記印刷設定項目は大項目とその大項目に従属する小項目とからなり、前記生成手段は、前記第１の印刷条件については前記大項目の設定値と前記小項目の設定値とを記述し、前記第２の印刷条件については前記小項目の設定値のみを記述する。
この発明によると、第２の印刷条件に大項目の設定値を記述しないことにより、第２の印刷条件のデータ量を低減できる。
【００１４】
第５の発明は、印刷制御装置であって、印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーション手段と、前記アプリケーション手段により編集可能な印刷条件を記述した第１の印刷条件と、前記アプリケーション手段により編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件とを含む印刷設定情報を生成する生成手段と、前記アプリケーション手段によって編集された前記第１の印刷条件と、前記第２の印刷条件とを含む前記印刷設定情報に基づいて印刷データを作成する印刷データ作成手段と、を備える。
この発明によると、アプリケーション手段が第１の印刷条件を編集することにより、印刷条件が適切に設定されていなくても、適切な印刷条件に基づいて印刷データを作成することができる。
【００１５】
第６の発明は、印刷装置が備える印刷機能を表す印刷機能情報に基づいて印刷条件を編集可能なアプリケーションプログラムによって編集される印刷設定情報のデータ構造であって、前記アプリケーションプログラムにより編集可能な印刷条件を記述した第１の印刷条件と、前記アプリケーションプログラムにより編集不能であり、前記第１の印刷条件の少なくとも一部を記述した第２の印刷条件と、を含む。
この発明によると、アプリケーションプログラムが第１の印刷条件を編集することにより、印刷条件が適切に設定されていなくても、適切な印刷条件に基づいて印刷データを作成することができる。
【発明の効果】
【００１６】
本発明によれば、アプリケーションプログラムが印刷条件を適切に設定しなくても、適切な印刷条件に基づいて印刷データを作成することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態１に係る印刷制御装置のブロック図。
【図２】Print Capabilitiesの一例を示す模式図。
【図３】本発明の実施形態１に係るPrint Ticketの一例を示す模式図。
【図４】印刷処理の流れを示すシーケンスチャート。
【図５】アプリケーションによって表示される印刷設定画面、及び印刷プログラムによって表示される印刷設定画面の一例を示す模式図。
【図６】本発明の実施形態１に係る編集後のPrint Ticketの一例を示す模式図。
【図７】Print Ticket生成処理の流れを示すフローチャート。
【図８】印刷データ作成処理の流れを示すフローチャート。
【図９】本発明の実施形態２に係るPrint Ticket再構築処理の流れを示すフローチャート。
【図１０】従来の編集前のPrint Ticketの一例を示す模式図。
【図１１】従来の編集後のPrint Ticketの一例を示す模式図。
【発明を実施するための形態】
【００１８】
＜実施形態１＞
本発明の実施形態１を図１ないし図８によって説明する。
（１）印刷制御装置の電気的構成
図１は、本発明の実施形態１に係るパーソナルコンピュータ１（コンピュータ、及び印刷制御装置の一例、以下「ＰＣ」という）の電気的構成を示すブロック図である。ＰＣ１は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、記憶部１４、ディスプレイ駆動回路１５、通信インタフェース（通信Ｉ／Ｆ）１６などを備えて構成されている。
【００１９】
ＣＰＵ１１（アプリケーション手段、生成手段、印刷データ作成手段、判断手段の一例）は、ＲＯＭ１２や記憶部１４に記憶されている各種のプログラムを実行することによってＰＣ１の各部を制御する。ＲＯＭ１２にはＣＰＵ１１によって実行される各種のプログラムやデータなどが記憶されている。ＲＡＭ１３はＣＰＵ１１が各種の処理を実行するための主記憶装置として用いられる。
【００２０】
記憶部１４は、ハードディスクやフラッシュメモリなどの不揮発性の記憶媒体を用いて各種のプログラムやデータを記憶する外部記憶装置である。記憶部１４には、オペレーティングシステム（ＯＳ）、ＣＰＵ１１をアプリケーション手段として機能させるアプリケーションプログラム（以下「アプリケーション」という）、プリンタ２用のプリンタドライバ（印刷プログラムの一例）を含む１以上のプリンタドライバ、プリンタ２を含む１以上のプリンタのPrint Capabilitiesなどが記憶されている。また、記憶部１４には後述するPrint Ticket（印刷設定情報の一例）が記憶される。
【００２１】
実施形態１では、ＯＳとしてMicrosoft社のWINDOWS（登録商標）を例に説明する。なお、ＯＳはPrint Ticketを用いた印刷システムが導入されているものであればWINDOWS（登録商標）に限定されない。
アプリケーションはPrint Capabilitiesに基づいてPrint Ticketを生成及び編集可能なものであれば任意のものであってよい。
【００２２】
ディスプレイ駆動回路１５は、表示装置１７（ＣＲＴ、液晶ディスプレイなど）を駆動する回路であり、ケーブルを介して表示装置１７と接続されている。
通信インタフェース１６は例えばＵＳＢ（Universal Serial Bus）ホストインタフェースとして構成されており、ＵＳＢケーブルを介して入力装置１８（マウス、キーボードなど）やプリンタ２と接続されている。
【００２３】
プリンタ２（印刷装置の一例）は、紙などの被記録媒体に電子写真方式、インクジェット方式などで画像を形成する装置である。なお、プリンタ２はＬＡＮ（Local Area Network）などの通信ネットワークを介してＰＣ１と接続される構成であってもよい。
【００２４】
（２）印刷処理
次に、Print Capabilitiesと呼ばれる印刷機能情報とPrint Ticketと呼ばれる印刷設定情報とを用いた印刷処理について説明する。
（２−１）Print Capabilities
図２は、Print Capabilitiesの一例を示す模式図である。Print Capabilitiesはプリンタの機種ごとに作成されるデータであり、ＸＭＬ形式のテキストデータとして記述されている。Print CapabilitiesにはそのPrint Capabilitiesに対応するプリンタで印刷を行う際にユーザが設定値を設定可能な印刷設定項目とその印刷設定項目に設定可能な設定値とが列挙されている。
【００２５】
印刷設定項目には、大項目のみからなるものと、大項目と小項目とからなるものとがある。例えば「用紙サイズ」は大項目のみからなる印刷設定項目であり、「片面／両面印刷」は大項目と小項目とからなる印刷設定項目である。ただし、大項目と小項目とからなる印刷設定項目であっても設定値によっては大項目のみの場合がある。例えば「片面／両面印刷」の設定値が「片面印刷」である場合には、小項目の設定値は設定されない。
【００２６】
<Feature name =" xxx">タグは大項目の項目名を表すタグである。xxx部分は大項目の項目名を表わしているものとする。以降に説明するタグについても同様である。
<Feature name =" xxx">タグと</Feature>タグとの間には、その大項目に設定可能な設定値が<Option name="xxx" />タグを用いて列挙される。図示する例では、用紙サイズの設定値として「Ａ４」、「レター」、又は「リーガル」を設定でき、片面／両面印刷の設定値として「片面印刷」、「両面印刷、短辺綴じ」、又は「両面印刷、長辺綴じ」を設定できることを示している。大項目と小項目とからなる印刷設定項目の場合には、小項目の設定値ごとに大項目の設定値が繰り返し記述される。
【００２７】
大項目と小項目とからなる印刷設定項目の場合には、<Option name="xxx" />タグと</Option>タグとの間にその大項目に従属する小項目の項目名が<Property name=xxx>タグを用いて記述される。
<Property name=xxx>タグと</Property>タグとの間には、その項目名で表される小項目に設定可能な設定値の一つが<Value>xxx</Value>タグを用いて記述される。図示する例では、「両面印刷モード」の設定値として「自動」、又は「手動」を設定できることを示している。「自動」は両面印刷の際にプリンタが自動で被記録媒体を裏返すことをいい、「手動」は両面印刷の際にユーザ自身が被記録媒体を裏返すことをいう。
【００２８】
ここでは印刷設定項目として用紙サイズ、及び片面／両面印刷を例に説明したが、印刷設定項目はプリンタが備える印刷機能に依存するものであり、プリンタによってはこの他にも例えばカラー／モノクロ、片面複数ページ印刷（片面２ページ印刷など）、画質（高解像度／低解像度）、拡大／縮小率などの印刷設定項目が記述される。
【００２９】
（２−２）Print Ticket
図３は、本実施形態に係るPrint Ticketの一例を示す模式図である。Print Ticketはユーザにより選択された印刷条件がＸＭＬ形式で記述されているテキストデータである。ここで印刷条件とは、Print Capabilitiesに記述されている設定値の中からユーザが選択した設定値の組み合わせのことをいう。
【００３０】
本実施形態に係るPrint Ticketには、ユーザにより選択された印刷条件を前述したアプリケーションによる編集が可能な書式で記述した第１の印刷条件と、当該印刷条件の少なくとも一部を当該書式とは異なる書式（前述したアプリケーションによる編集が不能な書式）で記述した第２の印刷条件とが含まれている。従来のPrint Ticketには第１の印刷条件しか含まれないが、本実施形態に係るPrint Ticketには第２の印刷条件も含まれている点で従来のPrint Ticketと異なる。
【００３１】
第１の印刷条件は、ユーザにより設定された印刷条件をPrint Capabilitiesと同様の書式で記述したものである。ただし、第１の印刷条件は<Feature name ="xxx">タグと</Feature>タグとの間にユーザが選択した設定値だけが記述される点でPrint Capabilitiesと異なる。例えばユーザが用紙サイズとしてLetterを選択した場合には、Print Ticketには用紙サイズを設定するための<Feature name ="xxx">タグと</Feature>タグとの間にLetterについての<Option name="xxx" />タグだけが記述される。
【００３２】
第２の印刷条件は、大項目と小項目とからなる印刷設定項目の設定値について、小項目の設定値だけを記述したものである。第２の印刷条件の書式はPrint Capabilities及び第１の印刷条件の書式とは異なり、<Feature name ="xxx">タグは用いられず、<Property name=xxx>タグから</Property>タグまでが第２の印刷条件として記述される。
【００３３】
前述したアプリケーションは、第１の印刷条件を生成及び編集することができる。アプリケーションはPrint Capabilitiesに記述されている設定値の中からユーザによって選択された設定値をPrint Capabilitiesと同様の書式で記述することにより、Print Ticketを生成及び編集するものであるため、Print Capabilitiesと同様の書式で記述された第１の印刷条件を編集することができる。一方、アプリケーションはPrint Capabilitiesに基づいてPrint Ticketの生成及び編集をするものであるため、Print Capabilitiesに記述されていない書式で設定値を記述することができない。したがって、第２の印刷条件はPrint Capabilitiesに記述されていない書式で記述されているので、アプリケーションが編集することができない。
【００３４】
また、プリンタドライバはPrint Capabilitiesに基づいて第１の印刷条件を生成及び編集することができる。さらに、プリンタドライバはPrint Capabilitiesとは異なる書式でPrint Ticketに設定値を記述すること可能であるので、第２の印刷条件も生成及び編集することができる。
【００３５】
（２−３）印刷処理の流れ
図４は、Print CapabilitiesとPrint Ticketとを用いた印刷処理の流れを示すシーケンスチャートである。ここではプリンタドライバによって生成されたPrint Ticketをアプリケーションで編集する場合を例に説明する。本処理はアプリケーションによって表示されるメニューでユーザが印刷を指示すると開始される。
以降の説明ではアプリケーションを実行するＣＰＵ１１のことを単にアプリケーションというものとする。プリンタドライバについても同様である。
【００３６】
Ｓ１０１では、ユーザにより印刷が指示されたアプリケーションは、通常使うプリンタとして選択されているプリンタのプリンタドライバにPrint Capabilitiesの送信を要求する。ここでは通常使うプリンタとしてプリンタ２が選択されているものとする。
Ｓ１０２では、プリンタ２のプリンタドライバはアプリケーションにPrint Capabilitiesを送信する。
【００３７】
Ｓ１０３では、アプリケーションは取得したPrint Capabilitiesに基づいて、以下に説明する印刷設定画面を表示装置１７に表示する。
図５は、アプリケーションによって表示される印刷設定画面３０の一例を示す模式図である。なお、図５にはプリンタドライバによって表示される印刷設定画面４０の一例についても併せて示している。アプリケーションによって表示される印刷設定画面３０にはプリンタを選択するためのドロップダウンリスト３１が配置されている。
【００３８】
ユーザがドロップダウンリスト３１でプリンタを選択して［プロパティ］ボタン３２をクリックすると、アプリケーションは選択されているプリンタのプリンタドライバを呼び出し、選択されたプリンタドライバに対しPrint Capabilitiesの送信を要求する。そして、そのPrint Capabilitiesに合せた印刷設定画面３０が表示されることになる。なお図４では呼び出したプリンタドライバにアプリケーションがPrint Capabilitiesの送信を要求するステップ、及び呼び出されたプリンタドライバがアプリケーションにPrint Capabilitiesを送信するステップは省略している。
【００３９】
また、印刷設定画面３０には一部の印刷設定項目についての設定値を選択するためのドロップダウンリスト３３が表示される。ドロップダウンリスト３３はアプリケーション自身がPrint Ticketを生成する場合やプリンタドライバによって生成されたPrint Ticketをアプリケーションで編集する場合に設定値を選択するためのものである。アプリケーションは当該一部の印刷設定項目についてその印刷設定項目に設定可能な設定値をPrint Capabilitiesから取得し、取得した設定値をドロップダウンリスト３３に選択肢として設定する。
【００４０】
ところで、アプリケーションの中には、ドロップダウンリスト３３に設定する選択肢として大項目の設定値のみを設定し、小項目の設定値を設定しないものがある。例えば、印刷設定画面３０に示すように「Duplex（片面／両面印刷）」のドロップダウンリスト３３に設定する選択肢として「Simplex（片面印刷）」、「Short Edge（両面印刷、短辺綴じ）」、「Long Edge（両面印刷、長辺綴じ）」のみを設定し、「自動（Automatic）」や「手動（Manual）」については設定しないものがある。本実施形態に係るアプリケーションは印刷設定画面３０に示すようにドロップダウンリスト３３に小項目の設定値を選択肢として設定しないものであるとする。
【００４１】
前述したように印刷設定画面３０では一部の印刷設定項目についての設定値しか設定できないので、ユーザは他の印刷設定項目の設定値を設定したい場合には、［プロパティ］ボタン３２をクリックしてドロップダウンリスト３１で選択されたプリンタドライバを呼び出す。呼び出されたプリンタドライバは、後述する印刷設定画面４０で設定された設定値に基づいてPrint Ticketを生成する。本実施形態はプリンタドライバによってPrint Ticketを生成する例であるので、ユーザは［プロパティ］ボタン３２をクリックするものとする。
【００４２】
Ｓ１０４では、［プロパティ］ボタン３２が押されたアプリケーションは、ＯＳが提供するインタフェースを介して、選択されたプリンタのプリンタドライバを呼び出す。
【００４３】
Ｓ１０５では、アプリケーションから呼び出されたプリンタドライバは、図５に示す印刷設定画面４０を表示装置１７に表示する。
プリンタドライバによって表示される印刷設定画面４０には、プリンタドライバで設定可能な印刷設定項目についてのドロップダウンリストが配置されている。図示する例では用紙サイズのドロップダウンリスト４１と、片面／両面印刷のドロップダウンリスト４２とが配置されている。
【００４４】
ドロップダウンリスト４１、４２には、大項目のみからなる印刷設定項目の場合には大項目に設定可能な設定値が選択肢として設定されている。また、大項目と小項目とからなる印刷設定項目の場合には大項目の設定値と小項目の設定値との組み合わせが選択肢として設定されている。
なお、印刷設定画面４０はプリンタドライバに固有の画面として予め生成されていてもよいし、プリンタドライバがPrint Capabilitiesに記述されている印刷条件に合わせて生成してもよい。
ユーザがドロップダウンリスト４１、４２で設定値を選択して図示しない［ＯＫ］ボタンをクリックすると、印刷条件の設定が完了する。ここでは、「Duplex（片面／両面印刷）」で「Short Edge(Automatic)」が設定されたものとする。印刷条件の設定が完了すると、Ｓ１０６に移行する。
【００４５】
Ｓ１０６では、プリンタドライバは、設定されている印刷条件に基づいて本実施形態に係るPrint Ticketを生成する処理である「Print Ticket生成処理」を実行する。「Print Ticket生成処理」の詳細については後述するが、プリンタドライバは図３に示すように「Duplex（片面／両面印刷）」で「Short Edge(Automatic)」と設定されたPrint Ticketを生成する。
Ｓ１０７では、プリンタドライバは生成したPrint Ticketを、ＯＳを介してアプリケーションに出力し、出力後に印刷設定画面４０を閉じる。印刷設定画面４０が閉じられると、アプリケーションによって表示されている印刷設定画面３０に制御が戻る。
【００４６】
Ｓ１０８では、アプリケーションはプリンタドライバから出力されたPrint Ticketに設定されている「Duplex（片面／両面印刷）」の設定値を、現在選択されている設定値としてドロップダウンリスト３３に表示する。ユーザはドロップダウンリスト３３で設定値を変更することができる。便宜上、ここではユーザはドロップダウンリスト３３で設定値を変更しなかったものとする。
【００４７】
ユーザが設定値を変更して［ＯＫ］ボタン３４をクリックすると、アプリケーションはユーザが設定値を変更したか否かによらず、プリンタドライバから出力されたPrint Ticketに設定されている「Duplex（片面／両面印刷）」の設定値を、ドロップダウンリスト３３で現在選択されている設定値に書き換える、すなわちPrint Ticketを編集する。
なお、ドロップダウンリスト３３の選択肢はPrint Capabilitiesに合わせて設定されているので、アプリケーションがユーザにより変更された設定値に書き換えれば、結果的にPrint Capabilitiesに合せて編集することになる。
【００４８】
ここで、ドロップダウンリスト３３に小項目の設定値を選択肢として設定しない印刷設定画面３０の場合には、図６に示すように、編集後のPrint Ticketの第１の印刷条件に小項目（「両面印刷モード」）の設定値（「自動」又は「手動」）が設定されないことになる。
第２の印刷条件はアプリケーションの編集対象ではないので「Print Ticket生成処理」で生成されたときの内容のままである。
【００４９】
Ｓ１０９では、アプリケーションは編集したPrint Ticketと印刷命令とをプリンタドライバに出力する。印刷命令とは、印刷対象ページを構成している文字列、図形、画像などのオブジェクトごとに生成される情報であって、オブジェクトの内容やそのオブジェクトが描画される座標などを示す情報である。
【００５０】
Ｓ１１０では、プリンタドライバは、アプリケーションから出力されたPrint Ticketと印刷命令とに基づいて印刷データを作成してプリンタに送信する処理である「印刷データ作成処理」を実行する。「印刷データ作成処理」の詳細については後述する。
【００５１】
（２−４）Print Ticket生成処理
図７は、Print Ticket生成処理の流れを示すフローチャートである。
Ｓ２０１では、プリンタドライバは印刷設定画面４０でユーザにより選択されている印刷条件に基づいて第１の印刷条件を生成する。ここで、第１の印刷条件はPrint Capabilitiesに記述された設定値の中からユーザにより選択されている設定値が取得されて生成される。
【００５２】
Ｓ２０２では、プリンタドライバは生成した第１の印刷条件をPrint Ticketに格納する。ここで、第１の印刷条件はPrint Capabilitiesに記述された書式に合わせて格納される。
【００５３】
Ｓ２０３では、プリンタドライバはユーザにより選択されている印刷条件から小項目の設定値を取得して第２の印刷条件を生成する。
Ｓ２０４では、プリンタドライバは生成した第２の印刷条件をPrint Ticketに格納する。ここで、第２の印刷条件はPrint Capabilitiesに記述された書式とは異なる書式で格納される。
【００５４】
（２−５）印刷データ作成処理
図８は、印刷データ作成処理の流れを示すフローチャートである。
Ｓ３０１では、プリンタドライバはPrint Ticketを構文解析して第１の印刷条件に設定されている印刷設定項目の項目名と設定値とを取得する。
【００５５】
Ｓ３０２では、プリンタドライバは第１の印刷条件に小項目の設定値が設定されているか否かを判断する。
具体的には、プリンタドライバは取得した第１の印刷条件の各項目名についてその項目名が大項目と小項目とからなる印刷設定項目の項目名（例えば「片面／両面印刷」）であるか否かを判断する。大項目と小項目とからなる印刷設定項目の項目名である場合には、プリンタドライバはその大項目に設定されている設定値が、小項目に設定値が設定されるべき設定値（「Short Edge」又は「Long Edge」）であるか否かを判断する。小項目に設定値が設定されるべき設定値（「Short Edge」又は「Long Edge」）である場合には、プリンタドライバは小項目（「両面印刷モード」）の設定値（「Automatic」又は「Manual」）が設定されているか否かを判断する。
【００５６】
プリンタドライバは、第１の印刷条件の各項目名が大項目と小項目とからなる印刷設定項目の項目名であり、かつ、小項目の設定値が設定されていない場合は、小項目の設定値が設定されていないと判断してＳ３０３に進み、それ以外の場合はＳ３０４に進む。
【００５７】
Ｓ３０３では、プリンタドライバは第１の印刷条件に設定値が設定されていない小項目（「両面印刷モード」）の設定値を第２の印刷条件から取得する。図６に示すPrint Ticketの例では第２の印刷条件に「両面印刷モード」の設定値として「Automatic」が設定されているので、「両面印刷モード」の設定値として「Automatic」が取得されることになる。
【００５８】
Ｓ３０４では、プリンタドライバはPrint Ticketから取得した印刷条件（各印刷設定項目の設定値）とアプリケーションから出力された印刷命令とに基づいて印刷データを作成する。
具体的には、アプリケーションプログラムは印刷対象ページに基づいて生成した印刷命令をＯＳに出力する。ＯＳは出力された印刷命令に基づいて描画命令を生成し、プリンタドライバに出力する。プリンタドライバはＯＳから出力された描画命令とPrint Ticketから取得した印刷条件とに基づいてプリンタ２の制御コマンド（印刷データ）を作成し、作成した印刷データをプリンタ２に送信する。
【００５９】
（３）実施形態の効果
以上説明した本発明の実施形態１に係るプリンタドライバによると、アプリケーションが編集不能であり、第１の印刷条件の少なくとも一部が記述されている第２の印刷条件を含む印刷設定情報に基づいて印刷データを作成する。従って、アプリケーションが第１の印刷条件を編集することにより、印刷条件が適切に設定されていなくても、適切な印刷条件に基づいて印刷データを作成することができる。
【００６０】
ところで、Print Ticketに設定値が設定されていない場合にはデフォルト値を適用することも考えられるが、デフォルト値は必ずしもユーザが選択した設定値（プリンタドライバによって表示された印刷設定画面４０でユーザが選択した設定値）と一致しない。第２の印刷条件はユーザが選択した設定値であるので、第２の印刷条件から設定値を取得するようにすると、デフォルト値を用いる場合に比べてユーザが選択した印刷条件をより正確に印刷に反映できる。
【００６１】
更に、このプリンタドライバによると、印刷設定項目が大項目と小項目とからなる場合に、小項目の設定値のみを第２の印刷条件に設定する。これにより、第２の印刷条件に大項目の設定値も設定する場合に比べてPrint Ticketのデータ量を低減できる。
【００６２】
＜実施形態２＞
次に、本発明の実施形態２を図９によって説明する。
実施形態２では、実施形態１の印刷データ作成処理に代えて、プリンタドライバは第２の印刷条件から小項目の設定値を取得して第１の印刷条件を再構築し、第１の印刷条件が再構築されたPrint Ticketに基づいて印刷データを作成する印刷データ作成処理を実行する。
【００６３】
図９は、実施形態２に係る印刷データ作成処理の流れを示すフローチャートである。ここでは実施形態１の「印刷データ作成処理」で実行される処理と実質的に同一の処理には同一の符号を付して説明を省略する。
【００６４】
Ｓ４０１では、プリンタドライバ（再構築手段の一例）は、アプリケーションによって編集されたPrint Ticketに含まれている第１の印刷条件に第２の印刷条件から取得した小項目の設定値を追加することにより、第１の印刷条件を再構築する。また、第１の印刷条件が再構築された後のPrint Ticketには第２の印刷条件は不要であるので、プリンタドライバはPrint Ticketから第２の印刷条件を削除する。
【００６５】
第１の印刷条件が再構築されて第２の印刷条件が削除されたPrint Ticketの内容は、図１０に示す従来の編集前のPrint Ticketの内容と同様である。なお、第１の印刷条件が再構築された後のPrint Ticketは第２の印刷条件を含んだままであってもよい。
【００６６】
以上説明した本発明の実施形態２に係るプリンタドライバによると、第１の印刷条件を含むPrint Ticketに基づいて印刷データを作成するプログラムモジュールは従来から用いられているので、Print Ticketを再構築することにより、従来から用いられているプログラムモジュールをそのまま用いることができる。
【００６７】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【００６８】
（１）上記実施形態では第２の印刷条件に小項目の設定値のみを記述する場合を例に説明したが、それに加えて大項目の設定値を記述してもよい。
【００６９】
（２）上記実施形態では１つの印刷設定項目が大項目と小項目とからなる場合を例に説明したが、印刷設定項目はより細かな項目からなるものであってもよい。例えば大項目、中項目、小項目からなるものであってもよい。その場合には、第２の印刷条件には小項目の設定値のみを記述してもよいし、中項目の設定値と小項目の設定値とを記述してもよい。
【００７０】
（３）上記実施形態ではアプリケーションはプリンタドライバから取得したPrint Capabilitiesに合わせて印刷設定画面３０を表示する例を説明したが、アプリケーションが予め備えている印刷設定画面３０を表示してもよい。
その場合、アプリケーションはPrint Capabilitiesの設定値の中で自身が提供する印刷設定画面３０において設定された設定値に対応する設定値を検索し、検索された設定値をPrint Ticketに記述する。
【００７１】
このとき、アプリケーションが予め備えている印刷設定画面３０の設定項目がPrint Capabilitiesの大項目のみで構成されている場合、Ｓ１０８で第１の印刷条件がアプリケーションにより編集されると第１の印刷条件には大項目の設定値のみが記述されることになる。
よって、アプリケーションが予め備えている印刷設定画面３０で設定値が設定される場合であっても、本発明を適用すると、上記実施形態と同様の効果を得ることができる。
【符号の説明】
【００７２】
１・・・パーソナルコンピュータ
２・・・プリンタ
１１・・・ＣＰＵ
１２・・・ＲＯＭ
１３・・・ＲＡＭ
１４・・・記憶部
１５・・・ディスプレイ駆動回路
３０・・・アプリケーションプログラムによって表示される印刷設定画面
４０・・・プリンタドライバによって表示される印刷設定画面
【図１】
2011215747.tif 000003
【図２】
2011215747.tif 000004
【図３】
2011215747.tif 000005
【図４】
2011215747.tif 000006
【図５】
2011215747.tif 000007
【図６】
2011215747.tif 000008
【図７】
2011215747.tif 000009
【図８】
2011215747.tif 000010
【図９】
2011215747.tif 000011
【図１０】
2011215747.tif 000012
【図１１】
2011215747.tif 000013