(57)【要約】      （修正有）【課題】モバイルの印刷システムにおいて、プリンタ探索とプリンタのオプション情報の取得とを同時に行なわなくとも印刷システムＵＩに正しい情報を表示する印刷設定の表示方法を提供する。【解決手段】印刷プラグイン２１４，２１５は、ネットワーク１００上に存在するプリンタ１２０を探索し、印刷システム２１０に対してプリンタの能力情報を送信する。印刷プラグインから印刷システムに対してプリンタのオプション能力を送信しなければならない時は、オプション能力の取得は行わずに、印刷システムにはオプション能力のデフォルト値または仮の値を送信する。ユーザーが印刷を開始したとき、または拡張設定画面に移行したときに、プリンタと通信を行ってプリンタのオプション能力を取得し、次回のプリンタ探索時のプリンタ能力情報送信には、取得したデータを使用して、印刷システムに正しい値を送信する。【選択図】図３
2017027321.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末（１１０）上で動作するプログラムであって、
同一ネットワーク上のプリンタ（１００）を探索する探索手段と、
プリンタ（１００）のオプション情報（７０１）を取得する取得手段と、
プリンタ（１００）に印刷する印刷手段と、
プリンタ（１００）の拡張設定画面（６００）を表示する表示手段と、
情報処理端末（１１０）のＯＳに搭載されている印刷システム（２１０）に対してプリンタが対応している機能の情報を送信するプリンタ情報送信手段と、を有し、
前記印刷システム（２１０）に対して、プリンタ（１００）の対応する機能を送信する際、印刷システム（１００）から要求されている情報を即座に送信することができない場合、印刷システム（１００）に対して仮の値を返却し、前記印刷手段を実行する際および前記表示手段により拡張設定画面（６００）を表示する際に、プリンタ（１００）のオプション情報（７０１）を、前記オプション情報取得手段により取得して保持し、次回のプリンタ探索時に、前記印刷システム（２１０）に対して正しいプリンタ（１００）の情報を返却することを特徴とする情報処理端末（１１０）上で動作するプログラム。
【請求項２】
請求項１に記載の情報処理端末（１１０）であって、印刷システム（２１０）にプリンタ（１００）の対応機能の情報を送信する際に、プリンタ（１００）のオプション情報（７０１）の取得を行い、一定時間以内に前記情報を取得することができた場合は、印刷システム（２１０）に正しい対応機能の情報を送信し、一定時間以内に前記オプション情報（７０１）を取得することができなかった場合は、印刷システム（２１０）に対して仮の値を返却することを特徴とする情報処理端末（１１０）上で動作するプログラム。
【請求項３】
請求項１に記載の情報処理端末（１１０）であって、印刷システム（２１０）の設定画面（図５）とプリンタ（１００）の拡張設定画面（６００）を比較し、同じ種類の設定を行うことができる場合は、前記拡張設定画面（６００）から前記同じ種類の設定を非表示にすることを特徴とする情報処理端末（１１０）上で動作するプログラム。
【請求項４】
請求項１に記載の情報処理端末（１１０）であって、印刷システム（２１０）の設定画面（図５）とプリンタ（１００）の拡張設定画面（６００）を比較し、同じ種類の設定を行うことができる場合は、前記印刷システム（２１０）の設定画面とプリンタ（１００）の拡張設定画面（６００）において、片方の画面の変更を、双方に反映させることを特徴とする情報処理端末（１１０）上で動作するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷を行う際の印刷設定の表示方法に関する。
【背景技術】
【０００２】
従来、モバイルＯＳにおいて、印刷データをプリンタに送信する技術がある。また、モバイルＯＳには印刷システムと呼ばれる印刷用のフレームワークが組み込まれている場合があり、印刷ベンダーは印刷機能を実現することができる。
【０００３】
例えば、Ａｎｄｒｏｉｄ（ＡｎｄｒｏｉｄはＧｏｏｇｌｅ  Ｉｎｃ．の登録商標）といったモバイル端末に搭載されるＯＳにおいて、各アプリケーションに共通の印刷機能を提供する「印刷システム」がある（Ａｎｄｒｏｉｄ  Ｖｅｒｓｉｏｎ  ４．４以降に搭載）。また、前記印刷システムには、「印刷プラグイン」といわれる各プリンタベンダーが各自の印刷処理装置に適応させるための依存処理をプラグイン形式でアドインできる仕組みがある。例えば、Ｃａｎｏｎ  Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅ（Ｃａｎｏｎ  Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅはキヤノン株式会社の登録商標）は、Ａｎｄｒｏｉｄの「印刷プラグイン」として提供されており、Ｇｏｏｇｌｅ  Ｐｌａｙ（Ｇｏｏｇｌｅ  ＰｌａｙはＧｏｏｇｌｅ  Ｉｎｃ．の登録商標）からダウンロードしてインストールすることができる。
【０００４】
印刷システムを利用することで、ユーザーはプリンタの探索や印刷やステータス取得の処理を、印刷システムのＵＩから行うことができる。プリンタのステータス取得の際には、印刷プラグインから印刷システムに対してプリンタの能力情報を送ることで、印刷システムの印刷設定ＵＩにプリンタの機能を反映させることができる。たとえば、プリンタが対応している用紙サイズをすべて表示したり、両面機能の有効／無効を切り替えたりすることができる。
【０００５】
プリンタの能力の取得は、プリンタ名、カラー／モノクロなどの、どのプリンタにもあるような基本的な情報については、情報量が少なく汎用的であるため、同一ネットワーク上のプリンタ探索時に、探索処理を終えたあとに、ついでにプリンタに問い合わせるのが一般的である。しかし、すべてのプリンタに備わっていないオプション機能については、プリンタ探索に時間をかけないために、前記以外のタイミングで情報を取得する場合が多い。
【０００６】
オプション能力を取得する方法はいくつかあるが、プリンタの探索処理とは別に、プリンタとモバイル端末が直接通信してプリンタが対応しているオプション情報を取得するという方法が、モバイルの印刷アプリケーションにおいては一般的である。この方法は、印刷アプリケーションが静的ファイルを持たないことによってリソースの削減ができることや、アプリのメンテナンスの手間を減らすことができるという利点がある。他のプリンタの能力情報取得方法には、静的ファイルによってプリンタ情報を管理する方法や、サーバからプリンタ情報を取得する方法などがある。
モバイル端末は、プリンタ探索時に上記のオプション能力の取得を同時に行うこともできるし、プリンタ探索時ではなく、任意のタイミングでオプション能力を取得することもできる。
【０００７】
特許文献１は、端末からプリンタの情報を取得する際に、情報取得に時間が掛かる場合、プリンタの情報が取得できるまで、能力情報を取得中であるという表示を行うことにより、ユーザーに不快感を与えないようにしている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−３１０４２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
一方で、印刷プラグインからプリンタに対して、プリンタのオプション能力を取得するための通信を行う際は、ネットワークの電波状況や、プリンタから取得するオプション能力の情報が多いことや、その他の環境要因により、端末とプリンタとの通信に時間が掛かることが多い。そのため、プリンタの探索処理とオプション能力の取得処理を同時に行うと、印刷システム上の印刷設定ＵＩの反映に時間がかかる。
【００１０】
時間をかけずに印刷設定ＵＩを更新させるためには、印刷プラグインはプリンタの能力情報を取得するときに、前記オプション情報の取得を同時に行うべきではない。
【００１１】
しかし、プリンタ探索と、プリンタのオプション情報の取得を同時に行わなければ、印刷システムのＵＩに表示させる情報を満たすことができない場合があり、ＵＩに正しい情報を表示できないという課題がある。
【００１２】
本明細書では、印刷システムＵＩに即座に正しいプリンタの情報を表示しようとする際、印刷システムＵＩにプリンタの正しい情報を表示できない場合があるという課題について検討する。
【課題を解決するための手段】
【００１３】
本発明に係るプログラムは、
印刷プラグインから印刷システムに対してプリンタのオプション能力を送信する時、オプション能力の取得は行わずに、オプション能力についてはデフォルト値または仮の値を送信する。ユーザーが印刷を開始したとき、または拡張設定画面に移行したときに、プリンタと通信を行ってプリンタのオプション能力を取得し、次回のプリンタ探索時のプリンタ能力情報送信には、取得したデータを使用して、印刷システムに正しいプリンタのオプション能力の情報を送信する。
【発明の効果】
【００１４】
本発明に係るプログラムによれば、印刷システムが印刷プラグインにプリンタの能力の問い合わせを行ったとき、ほとんど時間をかけずに情報を印刷システムに返却し、ＵＩを更新することができる。ユーザーが拡張設定画面に移行したときや、印刷を開始したときに正しいオプション機能情報を取得し、次に印刷システムからプリンタの能力の問い合わせがあったときは、印刷プラグインは印刷システムにプリンタの正しい能力情報を返し、ＵＩを更新することができる。
【図面の簡単な説明】
【００１５】
【図１】実施例における印刷システムの全体構成図
【図２】実施例における情報処理端末、プリンタのハードウェア構成図
【図３】実施例における情報処理端末、プリンタのソフトウェア構成図
【図４】実施例における情報処理端末のアプリケーションＵＩ画面
【図５】実施例における情報処理端末の印刷システムＵＩ画面
【図６】実施例における情報処理端末の印刷プラグインの拡張設定ＵＩ画面
【図７】プリンタから取得するオプション情報を表す構成図
【図８】実施例１における印刷プラグインの処理フロー示すフローチャート
【図９】実施例１における印刷プラグインの処理フロー示すフローチャート
【図１０】実施例１における印刷プラグインの処理フロー示すフローチャート
【図１１】実施例２における印刷プラグインの処理フロー示すフローチャート
【図１２】実施例３における印刷プラグインの処理フロー示すフローチャート
【図１３】実施例４における印刷プラグインの処理フロー示すフローチャート
【図１４】実施例４における印刷プラグインの処理フロー示すフローチャート
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態を図面に基づいて説明する。
【実施例１】
【００１７】
まず、本実施例におけるシステムの全体構成について説明する。
【００１８】
図１は本実施例におけるシステムの全体構成の一例を示したものである。本システムは、ネットワーク１００、情報処理端末１１０、プリンタＡ１２０がそれぞれ接続されている。このとき、情報処理端末およびプリンタはネットワーク上に複数台あってもよい。
【００１９】
ネットワーク１００は標準的なネットワーク接続であり、インターネット、イントラネットのどちらの形態であっても良く、接続方法はＷｉ−Ｆｉルータを介してネットワークを形成する方法や、Ｗｉ−Ｆｉダイレクトで情報処理端末１１０とプリンタＡ１２０を直接接続する方法などがあり、情報処理端末１１０とプリンタＡ１２０が互いにネットワーク接続されていれば、どのような接続形態でも構わない。
【００２０】
次に、本発明の実施例における情報処理端末１１０、プリンタＡ１２０の構成を、図２を用いて説明する。
【００２１】
情報処理端末１１０は、通常のモバイル端末（ＰＤＡやスマートフォン）であり、小型端末用のオペレーティングシステムや、通話、データ通信を制御するプログラムが動いている。また、情報処理端末１１０はネットワークコントローラ１１４を使用して無線通信を利用可能である。ハードウェアの各構成要素は、システムバス１１９に接続されている。ＲＯＭ１１２は不揮発性の記憶装置であり、情報処理端末１１０におけるＯＳ及び、通話、データ通信を制御するアプリケーションや、情報処理端末１１０の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。ＲＯＭ１１２に格納されたデータ通信を制御するアプリケーションとしては、ＭａｉｌソフトやＷｅｂブラウザなどが挙げられる。これらのＲＯＭ１１２に記憶された情報はＣＰＵ１１１で処理される。加えて、ＣＰＵ１１１がＲＯＭ１１２に記憶されているプログラムに基づき処理を実行することによって、図３に示されるような情報処理端末１１０のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
【００２２】
ＲＡＭ１１３は、プログラムを実行するためのワークメモリエリアである。また、印刷時にアプリケーションが生成する画像情報などを一時記憶するためのメモリでもある。
【００２３】
ネットワークコントローラ１１４はネットワーク通信を制御するためのチップであり、通信にＷｉ−Ｆｉ、Ｗｉ−Ｆｉダイレクト、および公衆回線３Ｇ／４Ｇなどが使用される。
【００２４】
表示制御部１１５は、情報処理端末１１０のディスプレイ１１７にて出力する情報の制御を行っている。入力制御部１１６は、情報処理端末１１０のボタンやタッチパネルなどの入力部１１８にてユーザーが指示した情報の制御を行っている。これらの表示制御部１１５、入力制御部１１６を利用して、情報処理端末１１０上でのアプリケーションは、ネットワーク通信情報や情報処理端末１１０のさまざまな情報をユーザーに提供する。
【００２５】
プリンタＡ１２０において、１２１はネットワークＩ／Ｆであり、ネットワーク１００を介して情報処理端末１１０との接続に使用される。１２２はＣＰＵであり、制御プログラムに基づいてシステムバス１２６に接続されるプリンタエンジン１２５に出力情報としての画像信号を出力する。なお、制御プログラムはＲＯＭ１２４に記憶される。プリンタＡ１２０はネットワークＩ／Ｆ１２１を介して情報処理端末１１０との通信処理が可能となっており、プリンタＡ１２０内の情報を情報処理端末１１０に通知可能に構成されている。さらにＣＰＵ１２２はＲＯＭ１２４に記憶されたアプリケーションプログラム等に基づいて処理を実行する。１２３はＲＡＭであり、ＣＰＵ１２２の主メモリ、ワークエリア等として機能する。なお、ＲＡＭ１２３は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。ＲＯＭ１２４には、ＣＰＵ１２２の制御プログラムや上記出力情報を生成する際に使用するフォントデータ、プリンタ１２０上で利用される情報等が記憶される。１２５はプリンタエンジンで出力情報としての画像信号を出力する。１２６はシステムバスであり、各デバイスを接続する。
【００２６】
図３は本実施形態のソフトウェア構成を説明するブロック図である。
【００２７】
まず情報処理端末１１０のソフトウェア構成を示す。なお、情報処理端末１１０を構成する各モジュールはそれぞれＲＯＭ１１２に保存されたファイルとして存在するプログラムモジュールである。そして、実行時にＯＳやそのモジュールを利用するモジュールによってＲＡＭ１１３にロードされ実行される。また、本実施例に記載されている処理は、ＲＯＭ１１２に記憶されているアプリケーション、及び各モジュール（ソフトウェア）のプログラムを、必要に応じてＲＡＭ１１３に読み出してＣＰＵ１１１により実行することによって実現される。
【００２８】
２１０は印刷システムであり、Ａｐｐ  Ａ２１１などの各アプリケーションに共通の印刷インターフェースを提供する。アプリケーションは印刷システムで定義されたインターフェースを実装することにより、印刷機能を使用することができる。このとき印刷システムはＰｌｕｇｉｎ  Ｄ２１３などの印刷プラグインに印刷や探索の命令をする。
【００２９】
Ａｐｐ  Ａ２１１、Ａｐｐ  Ｂ２１２、Ａｐｐ  Ｃ２１３は情報処理端末１１０のＯＳ上で動作する一般的なアプリケーションであり、Ｗｅｂブラウザ、ＰＤＦビューワー、Ｏｆｆｉｃｅビューワー、写真アプリ、メールアプリ等のアプリケーションがある。これらのアプリは印刷システムで定義された印刷インターフェースを実装している。
【００３０】
Ｐｌｕｇｉｎ  Ｄ２１４、Ｐｌｕｇｉｎ  Ｅ２１５、印刷プラグイン２１６は印刷プラグインであり単体のアプリとしてユーザーが使用することはできず、印刷システムに対して機能を提供するためのサービスとして存在する。Ｐｌｕｇｉｎ  Ｄ２１４が印刷システム２１０に提供する機能は、ネットワーク上のプリンタ探索機能、印刷機能、印刷設定機能、ステータス通知機能などがある。Ｐｌｕｇｉｎ  Ｄ２１４等の印刷プラグインは図３のように複数ある場合もある。
【００３１】
印刷プラグイン２１６は本実施例を行う印刷プラグインである。Ｐｌｕｇｉｎ  Ｄ２１４や他の印刷プラグインと基本構成は変わらない。印刷ジョブ生成モジュール２１７は印刷システム２１０から命令をうけて、ＲＯＭ１１２およびＲＡＭ１１３の情報から、プリンタ  Ａ１２０で印刷可能な印刷ジョブを生成する。
【００３２】
ＵＩ表示用モジュール２１８は印刷プラグイン２１６固有の設定画面を表示させるものである。印刷システム２１０では、ベンダーごとの印刷プラグインに拡張設定画面を表示させるインターフェースを持っている場合があり、印刷システム２１０で設定可能な基本設定よりも多くの設定を行うことができる。
【００３３】
通信監理モジュール２１９は印刷プラグイン２１６とプリンタＡ１２０の通信を制御するモジュールであり、プリンタの能力取得や状態取得、プリンタ探索、印刷ジョブ送信を管理する。
【００３４】
ネットワークモジュール２２０は印刷プラグイン２１６とプリンタＡ１２０などのプリンタを接続するモジュールであり、ＨＴＴＰ、ＳＮＭＰ等のプロトコルを使用して外部の機器と通信する機能を提供する。
【００３５】
次に、プリンタＡ１２０のソフトウェア構成について説明する。
【００３６】
ネットワークモジュール２００はプリンタＡ１２０と情報処理端末１１０の通信を行うモジュールであり、ＨＴＴＰ、ＳＮＭＰ等のプロトコルを使用して外部の機器と通信する機能を提供する。
【００３７】
印刷処理モジュール２０１は印刷を実行するために、画像データを作成してプリンタエンジン１２５に描画データを送るためのモジュールである。
【００３８】
次に、印刷システム２１０を起動する手順について説明する。図４はＡｐｐ  Ａ２１１等のアプリケーションが印刷システムを利用して印刷機能を使用する場合のＵＩの一例である。ユーザーはメニューボタン４００を押下すると、メニューが開き、ボタン４０１を押下することで図５に示すようなＯＳの印刷システム画面を呼ぶことができる。
【００３９】
図５はＯＳが提供する印刷システムの印刷設定ＵＩの一例である。図５の５００はネットワーク上で印刷プラグイン２１６により探索されたプリンタであり、複数のプリンタが利用可能であるときはプリンタの切り替えが可能になる。５０１は印刷設定を変更するためのボタンであり、標準的な機能について印刷設定の変更を行うことが可能である。５０２は拡張設定を表示するためのボタンであり、印刷プラグイン２１６が拡張機能の設定インターフェースを実装している場合は図６のような拡張設定画面を表示させることができる。５０３は印刷ボタンであり、タップすると、印刷システム２１０から印刷プラグイン２１６に対して印刷命令が送られる。
【００４０】
図６は印刷プラグインの拡張設定画面の一例であり、図５の印刷ダイアログで設定できない項目について、印刷ベンダー独自の実装で設定を行うことができる。
【００４１】
図７は印刷プラグインがプリンタのオプション情報をプリンタとのネットワーク通信で取得する際のデータのフォーマットの一例を示している。オプション情報７０１の構成は、プリンタのモデル名を表すモデル名７０２、プリンタが対応しているステイプル位置を表すステイプル位置７０３、プリンタが両面ユニットを装着しているかどうかを表す両面ユニット有無７０４などの情報が含まれ、それぞれの情報は、７０５に示すような文字列および数字の配列から構成されている。
【００４２】
図８は情報処理端末１１０上のアプリケーションから実行され、印刷プラグイン２１６から印刷システム２１０へのプリンタの能力に関する情報の送信についてのフローチャートを示している。
【００４３】
ステップＳ８０１ではプリンタＡ１２０および情報処理端末１１０が参加するネットワーク１００において、情報処理端末１１０がＳＮＭＰで管理されるプリンタを探索するために、ＳＮＭＰをネットワークにブロードキャストする。さらにステップＳ８０２では、ステップＳ８０１を行ってから数秒以内の間に（たとえば１秒など）、前記ブロードキャストしたＳＮＭＰの応答があったネットワーク機器のなかから、印刷プラグイン２１６が印刷可能なプリンタを判断して、図５のように印刷設定画面に結果を反映させる。
【００４４】
ステップＳ８０３では印刷プラグイン２１６はプリンタに関する基本情報を、先ほどと同様にＳＮＭＰ通信を使用してステップＳ８０２で探索されたプリンタに対して問い合わせる。ここで問い合わせる情報は、カラー／モノクロ等の一般的な情報のみである。
【００４５】
ステップＳ８０４では印刷システム２１０に送信すべきプリンタの能力情報と、ステップＳ８０３で取得済みの基本情報を比較し、印刷システム２１０に送信すべき情報が足りているかどうかを判断する。もし印刷プラグイン２１６が印刷システム２１０に送信する情報が足りない場合、ステップＳ８０５で、印刷システム２１０に対して送信すべき情報のうち、足りないものについてはデフォルト値などの仮の値を送信する。ステップＳ８０４の判断で印刷システム２１０に送信するプリンタの能力情報がすべて足りる場合は、印刷プラグイン２１６は印刷システム２１０に対して正しいプリンタの能力情報を送信して処理を終える。この処理により、図５に示すような印刷システムのＵＩは時間をかけることなく更新され、ユーザーはすぐに印刷設定を変更することができる。
【００４６】
ステップＳ９０１では、ユーザーは図５に示す印刷システム２１０の印刷設定画面からボタン５０２を押下する場合を示している。ユーザーはボタン５０２を押下すると、情報処理端末１１０は図６に示す拡張設定画面に遷移する。印刷プラグイン固有の拡張設定画面ＵＩではベンダーごとに異なる機能を実装しており、この画面では印刷プラグイン２１６は、独自の機能を加えることができる。
【００４７】
ステップＳ９０２では、プリンタの構成情報が印刷プラグイン２１６内に保存されているかどうかを判断する。構成情報とは、図７の７０１のようなプリンタがどのオプションに対応しているか等の能力情報のことであり図７の７０５に示すような文字列および数字の配列の形になっている。
【００４８】
構成情報取得の処理によって、プリンタがどんなオプションやフィニッシャーを装着しているかなど、プリンタの対応しているオプション機能に関する情報を取得することができる。また、構成情報は、プリンタのＭＡＣアドレスに紐付けられて印刷プラグイン２１６に保存されるため、１台のプリンタに対して１つの構成情報を紐付けて保存する。プリンタＡ１２０に構成情報が保存されている場合は、Ｓ９０３に示すようにすでに取得済の構成情報を使って拡張設定画面を構成する。
【００４９】
ステップＳ９０２でプリンタの構成情報が保存されていない場合は、ステップＳ９０４で構成情報の取得処理を行う。構成情報の取得処理は、情報取得専用プロトコルを使ってプリンタと直接通信をして行う。この構成情報取得処理には通信状況や取得するデータの量によっては時間が掛かることもある。
【００５０】
ステップＳ９０５では、取得した構成情報をプリンタのＭＡＣアドレスに紐付けてアプリケーション内に保存する処理を行う。保存する領域は、不揮発性のＲＯＭ１１２に保存し、情報処理端末１１０を再起動させた場合でも、情報の再取得が必要ないようにする。
【００５１】
ステップＳ９０６では、ステップＳ９０５で取得した構成情報に従って、図６の６００に示すような拡張設定画面を生成する。
【００５２】
ユーザーが図５に示す、印刷ボタン５０３を押下した場合、図１０に示すフローチャートの処理を行う。ステップＳ１００１では、印刷システム２１０は印刷プラグイン２１６に印刷命令を行う。
【００５３】
ステップＳ１００２では、印刷プラグイン２１６は印刷対象のプリンタに対して紐付けられたプリンタの構成情報が既に取得済であるかどうかを判断する。印刷対象のプリンタの構成情報が取得済であった場合は、ステップＳ１００３で印刷処理を行う。印刷処理は、印刷プラグイン２１６が印刷システム２１０からデータを受け取り、印刷ジョブ生成モジュール２１７で前記受け取った印刷データを画像データに変換し、プリンタＡ１２０に画像データを送信するという処理を行うことである。
【００５４】
ステップＳ１００２の判断で、印刷対象のプリンタに対応した構成情報を取得済でない場合は、ステップＳ１００４に移行し、プリンタの構成情報を取得する。プリンタの構成情報取得処理の方法はステップＳ１００２と同様である。
【００５５】
ステップＳ１００５では、ステップＳ１００４で取得したプリンタの構成情報と、印刷システム２１０から印刷プラグイン２１６に対して指示された印刷設定を比較し、禁則が起きていないかどうかを判断する。印刷設定とステップＳ１００４で取得したプリンタの構成情報に禁則が発生していなかった場合は、ステップＳ１００６に移行して、印刷を実行する。印刷処理の内容は前述の通りである。ステップＳ１００５で禁則が発生していた場合は、ステップＳ１００７に移行し、ユーザーに印刷処理を続行するかどうかの通知を出す。通知は、たとえばＡｎｄｒｏｉｄ  ＯＳの場合だと、通知バーにＮｏｒｔｉｆｉｃａｔｉｏｎを出すＡＰＩを使用して通知バーでユーザーに印刷処理を続行するかどうか選択させる方法などがある。ステップＳ１００８で、ユーザーが印刷を続行した場合は、現在設定されている情報のまま印刷ジョブをプリンタＡ１２０に送信する。ステップＳ９０８でユーザーが印刷処理を続行しなかった場合は、ステップＳ１０１０で印刷処理を中断し、印刷をキャンセル終了する。
【００５６】
以上の処理により、印刷システムからプリンタの能力情報を要求され、即座に情報を返却する場合、デフォルト値または仮の値を返却するため、即座に印刷システムＵＩを更新することができる。また、印刷または拡張設定画面への遷移が行われた場合は、次に印刷システムからプリンタの能力情報を要求されたときに、正しい能力情報を返却することができる。
【実施例２】
【００５７】
本実施例に記載されている処理は、ＲＯＭ１１２に記憶されているアプリケーション、及び各モジュール（ソフトウェア）のプログラムを、必要に応じてＲＡＭ１１３に読み出してＣＰＵ１１１により実行することによって実現される。
【００５８】
実施例１のステップＳ８０４では、ユーザーが一度も印刷および拡張設定画面への移行の処理を行っていない場合は、構成情報を取得していない状態となるため、印刷システムに対して送信するプリンタの情報が不足している場合、かならず仮の値を設定しなければならない。印刷プラグインは、できる限り図５に示す印刷設定画面で正しい値を表示するべきである。
【００５９】
そのため、まだ構成情報を取得済でない場合に、ユーザーが印刷設定画面を開いた場合は、プリンタの構成情報を取得する処理を行い、ある閾値の時間以内に応答が返らない場合は、実施例１の通りの処理を行い、応答が返った場合は、正しい設定を印刷システムに対して返却するという処理を行う。
【００６０】
ステップＳ１１０１では、プリンタＡ１２０および情報処理端末１１０が参加するネットワーク１００において、ステップＳ８０１と同様の処理を行い、探索を開始する。
【００６１】
ステップＳ１１０２では、ステップＳ８０２と同様の処理を行い、情報処理端末の同一ネットワーク上に存在する印刷可能なプリンタをＳＮＭＰ通信で探索する。
【００６２】
ステップＳ１１０３では、ステップＳ８０３と同様にプリンタの基本情報を取得する。
ステップＳ１１０４の判断はステップＳ８０４の判断と同様であり、印刷システムから要求された情報と、ステップＳ１１０３で取得した情報を比較して、印刷システム２１０に送る情報が足りるかどうかを判断する。情報が足りている場合は、ステップＳ１１０５に移行し、印刷システムに正しいプリンタの能力情報を送信する。
【００６３】
ステップＳ１１０６では、すでに情報処理端末１１０内にステップＳ１１０２で見つかったプリンタの構成情報が保存されているかを判断する。すでにプリンタの構成情報が情報処理端末１１０内に保存されている場合は、ステップＳ１１０５へ移行し、保存された能力情報に従って、印刷システム２１０に正しいプリンタの能力情報を送信する。
【００６４】
ステップＳ１１０６でプリンタの構成情報が保存されていない場合は、ステップＳ１１０７で、より詳細なプリンタの能力情報を取得するために、ステップＳ９０４と同様の手順により構成情報取得を開始する。
【００６５】
ステップＳ１１０８では、ステップＳ１１０７で開始した構成情報取得処理に対して、プリンタから一定時間以内に、応答があったかどうかを判断する。たとえば閾値を０．５秒とした場合は、０．５秒以内にプリンタの構成情報が取得できたかどうかを判断する。
【００６６】
ステップＳ１１０８で一定時間以内に構成情報の取得処理が完了した場合は、ステップＳ１１０５に移行し、ステップＳ１１０７で取得したプリンタの構成情報をもとに印刷システムに正しいオプション情報を送信する。
【００６７】
ステップＳ１１０７で一定時間以内に、構成情報を取得できなかった場合には、ステップＳ１１０９にて、印刷システムに、ステップＳ１１０４で判断した、印刷システムに送信すべき情報のなかで、構成情報取得により情報を取得できなかったものを、デフォルト値または仮の値として印刷システム２１０に送信する。
【００６８】
また、拡張設定画面移行時、および印刷開始時の処理は、実施例１の図９および図１０と同様の処理を行う。
【００６９】
以上の処理により、まだ構成情報取得の処理を一度も行っていない場合、印刷システムからプリンタの能力情報を要求されたとき、プリンタの構成情報取得処理を試み、一定時間以内にプリンタから応答がある場合は正しい能力情報を印刷システムに返却することができる。
【実施例３】
【００７０】
本実施例に記載されている処理は、ＲＯＭ１１２に記憶されているアプリケーション、及び各モジュール（ソフトウェア）のプログラムを、必要に応じてＲＡＭ１１３に読み出してＣＰＵ１１１により実行することによって実現される。
【００７１】
実施例１では、図５に示す印刷システムの印刷設定画面と、図６に示す拡張設定画面で同じ設定を保持している場合があり、両方の設定画面で同じ設定値を表示させることにより、ユーザーを困惑させる可能性がある。そこで実施例３では、図５に示す印刷設定と図６に示す拡張設定を比較し、同じ設定項目がある場合は図６の拡張設定画面からその項目を非表示にするという処理を加える。
【００７２】
ステップＳ１２０１では、図５の５０２を押下することにより、図６の拡張設定画面を開く。ステップＳ１２０２では、印刷システム２１０から、図５に示す印刷設定画面で、どの項目に何が入力されていたかという情報を印刷システム２１０から取得する。たとえば、拡張設定画面に移行する前に、部数、用紙サイズ、色、ステイプル、両面、印刷範囲に何が設定されていたかという情報をアプリ関連系機能（Ａｎｄｒｏｉｄ  ＯＳではＩｎｔｅｎｔ等を使用）によって取得する。
【００７３】
ステップＳ１２０３では、図６の拡張設定画面移行時に、図５で選択されていたプリンタが対応している拡張設定の情報を、保存済の構成情報または、構成情報取得処理を行うことにより取得する。
【００７４】
ステップＳ１２０４では、ステップＳ１２０２で取得した印刷システムの設定と、ステップＳ１２０３で取得したプリンタの対応機能を比較する。ステップＳ１２０４で同じ設定があった場合、たとえば図５の印刷システムが提供する設定画面で両面機能があり、かつ図６の拡張設定画面でも両面機能が設定できるような場合、ステップＳ１２０５に移行する。
【００７５】
ステップＳ１２０５では、図５の印刷設定画面で設定できる項目と、図６の拡張設定画面で同じ候目があった場合、図６の拡張設定画面からはその項目を表示させずに、図５の印刷設定画面との差分のみを表示させる。
【００７６】
ステップＳ１２０６では、ステップＳ１２０４で図５の印刷設定画面と図６の拡張設定画面で同じ設定項目がなかった場合、プリンタの対応しているすべての機能を拡張設定画面に表示させる。
【００７７】
また、本実施例では、プリンタ探索時、印刷時の処理は実施例１の図８および図１０と同様の処理を行う。
【００７８】
以上の処理により、印刷システムの印刷設定画面と、拡張設定画面で同じ設定項目がある場合は、拡張設定画面から前記項目を非表示にし、ユーザーに混乱を招くことを避けることができる。
【実施例４】
【００７９】
本実施例に記載されている処理は、ＲＯＭ１１２に記憶されているアプリケーション、及び各モジュール（ソフトウェア）のプログラムを、必要に応じてＲＡＭ１１３に読み出してＣＰＵ１１１により実行することによって実現される。
【００８０】
実施例１では、図５に示す印刷システムの印刷設定画面と、図６に示す拡張設定画面で同じ設定を保持している場合があり、両方の設定画面で同じ設定値を表示させることにより、ユーザーを困惑させる可能性があるという課題がある。そこで実施例４では、図５に示す印刷設定と図６に示す拡張設定を比較し、同じ設定項目がある場合はどちらかの画面での変更を、もう一方の画面にも反映させるという処理を加える。
【００８１】
ステップＳ１３０１では、図５の５０２を押下することにより、図６の拡張設定画面を開く。
ステップＳ１３０２では、ステップＳ１２０２と同様の方法で、現在印刷設定に設定されている項目を取得する。
【００８２】
ステップＳ１３０３では、ステップＳ１２０３と同様の処理を行いプリンタが対応している機能の情報を取得する。
【００８３】
ステップＳ１３０４では、ステップＳ１２０４と同様の処理を行い、印刷システムの設定項目と、プリンタが対応している設定を比較する。ステップＳ１３０４で、図５の印刷システムの設定と図６の拡張設定の設定項目を比較して同じ設定を持っていた場合、ステップＳ１３０５に移行する。ステップＳ１３０６では、図６の拡張設定画面にはプリンタの対応するすべての機能を表示し、ステップＳ１３０４で比較して同じ設定項目があったものについては、図５の印刷システムＵＩで設定されていた設定内容を、図６の拡張設定画面にも反映させる。たとえば、図５で「両面」機能がＯＮに設定されていた場合は、図６の拡張設定画面にも「両面」機能ＯＮを表示させる。
【００８４】
ステップＳ１３０４で、同じ設定を持っていなかった場合、ステップＳ１３０６で、図６の拡張設定画面遷移時に、プリンタのすべての対応機能を表示させる。
【００８５】
ステップＳ１４０１は、図６の拡張設定画面において、ユーザーが拡張設定画面を閉じる動作をすることである。たとえば、端末のバックキーを押下することなどが考えられる。
【００８６】
ステップＳ１４０２では、図６の拡張設定画面でユーザーが最終的に設定した値を取得する。
【００８７】
ステップＳ１４０３では、図５の印刷ダイアログで設定できる項目の一覧を取得する。設定できる項目については、ステップＳ１３０２で取得した、印刷システムの印刷設定ＵＩに設定されていた値のテーブルを使用する。
【００８８】
ステップＳ１４０４では、ステップＳ１４０２とステップＳ１４０３で取得した設定項目について、同じ設定があるかどうかを比較する。ステップＳ１４０４で同じ設定を持っている場合、ステップＳ１４０５に移行し、図５の印刷設定画面の印刷設定に対して、図６の拡張設定画面で設定されていた値をセットする。たとえば、図６の拡張設定画面で「両面」機能をＯＮに設定し、図５の印刷設定画面に遷移し、図５の印刷設定画面にも「両面」の設定項目がある場合には、両面をＯＮにする設定値を印刷システムに送信して、図５の印刷設定画面で「両面」機能ＯＮを表示させる。ステップＳ１４０４で同じ設定を持っていない場合は、ステップＳ１４０６で、印刷ダイアログから取得した値を変更せずにそのまま印刷システムに返却する。
【００８９】
また、本実施例では、プリンタ探索時、印刷時の処理は実施例１の図８および図１０と同様の処理を行う。
【００９０】
以上の処理により、印刷システムの印刷設定画面と、拡張設定画面で同じ設定項目がある場合は、双方の画面の変更を双方に反映させることで、ユーザーに混乱を招くことを避けることができる。
【００９１】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９２】
１００  ネットワーク、１１０  情報処理端末、１２０  プリンタＡ
【図１】
2017027321.tif 000003
【図２】
2017027321.tif 000004
【図３】
2017027321.tif 000005
【図４】
2017027321.tif 000006
【図５】
2017027321.tif 000007
【図６】
2017027321.tif 000008
【図７】
2017027321.tif 000009
【図８】
2017027321.tif 000010
【図９】
2017027321.tif 000011
【図１０】
2017027321.tif 000012
【図１１】
2017027321.tif 000013
【図１２】
2017027321.tif 000014
【図１３】
2017027321.tif 000015
【図１４】
2017027321.tif 000016