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

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

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

特許7447064印刷設定画面を提供するアプリケーション
<>
  • 特許-印刷設定画面を提供するアプリケーション 図1
  • 特許-印刷設定画面を提供するアプリケーション 図2
  • 特許-印刷設定画面を提供するアプリケーション 図3
  • 特許-印刷設定画面を提供するアプリケーション 図4
  • 特許-印刷設定画面を提供するアプリケーション 図5
  • 特許-印刷設定画面を提供するアプリケーション 図6
  • 特許-印刷設定画面を提供するアプリケーション 図7
  • 特許-印刷設定画面を提供するアプリケーション 図8
  • 特許-印刷設定画面を提供するアプリケーション 図9
  • 特許-印刷設定画面を提供するアプリケーション 図10
  • 特許-印刷設定画面を提供するアプリケーション 図11
  • 特許-印刷設定画面を提供するアプリケーション 図12
  • 特許-印刷設定画面を提供するアプリケーション 図13
  • 特許-印刷設定画面を提供するアプリケーション 図14
  • 特許-印刷設定画面を提供するアプリケーション 図15
  • 特許-印刷設定画面を提供するアプリケーション 図16
  • 特許-印刷設定画面を提供するアプリケーション 図17
  • 特許-印刷設定画面を提供するアプリケーション 図18
  • 特許-印刷設定画面を提供するアプリケーション 図19
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-01
(45)【発行日】2024-03-11
(54)【発明の名称】印刷設定画面を提供するアプリケーション
(51)【国際特許分類】
   G06F 3/12 20060101AFI20240304BHJP
   B41J 29/38 20060101ALI20240304BHJP
【FI】
G06F3/12 328
G06F3/12 305
G06F3/12 324
G06F3/12 331
G06F3/12 353
G06F3/12 388
B41J29/38
【請求項の数】 11
(21)【出願番号】P 2021145183
(22)【出願日】2021-09-07
(65)【公開番号】P2022089143
(43)【公開日】2022-06-15
【審査請求日】2022-03-15
(31)【優先権主張番号】P 2020201255
(32)【優先日】2020-12-03
(33)【優先権主張国・地域又は機関】JP
(31)【優先権主張番号】P 2021108999
(32)【優先日】2021-06-30
(33)【優先権主張国・地域又は機関】JP
【前置審査】
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【弁理士】
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【弁理士】
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【弁理士】
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【弁理士】
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【弁理士】
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】佐光 律人
(72)【発明者】
【氏名】島田 一成
【審査官】白石 圭吾
(56)【参考文献】
【文献】特開2010-250582(JP,A)
【文献】特開2020-087297(JP,A)
【文献】特開2013-037489(JP,A)
【文献】特開2012-014634(JP,A)
【文献】特開2004-192131(JP,A)
【文献】IPP Shared Infrastructure Extensions(INFRA),[online],The Printer Working Group,2015年06月19日,第27-28頁,[令和5年2月2日検索],インターネット<https://ftp.pwg.org/pub/pwg/candidates/cs-ippinfra10-20150619-5100.18.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09-3/12
B41J 29/38
G06F 3/01;3/048-3/04895
(57)【特許請求の範囲】
【請求項1】
サーバを経由して第1のプリンタに印刷データを送信し、前記サーバを経由することなく第2のプリンタに印刷データを送信する情報処理装置であって、
前記サーバから前記第1のプリンタが前記サーバに登録した情報を取得する取得手段と、
取得した前記情報と対応する前記第1のプリンタアイコン画像と、第2のプリンタから取得した情報と対応する前記第2のプリンタアイコン画像と含む一つの画面を表示手段に表示させる表示制御手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記サーバは、前記情報処理装置のオペレーティングシステムの一機能として提供されるドライバにより生成される印刷データを受信し、プリンタに送信するサーバであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記ドライバは、複数のベンダーの複数の機種のプリンタで印刷可能な互換性を持つ印刷データを生成するドライバであることを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記取得手段により取得される前記情報は、前記第1のプリンタに対応する画像の格納場所を示す情報であることを特徴とする請求項1乃至3のいずれか一項に記載の情報処理装置。
【請求項5】
前記取得手段は、前記格納場所から前記第1のプリンタに対応する画像のデータを取得することを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記情報は、Intenet Printing Protocolにおける属性printer-static-resource-directory-uriを用いて送られてきたリンクであることを特徴とする請求項4または5に記載の情報処理装置。
【請求項7】
サーバを経由して第1のプリンタに印刷データを送信し、前記サーバを経由することなく第2のプリンタに印刷データを送信する情報処理装置の制御方法であって、
前記サーバから前記第1のプリンタが前記サーバに登録した情報を取得する取得工程と、
取得した前記情報と対応する前記第1のプリンタアイコン画像、第2のプリンタから取得した情報と対応する前記第2のプリンタアイコン画像含む一つの画面を表示手段に表示させる表示制御工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項8】
前記取得工程において取得される前記情報は、前記第1のプリンタに対応する画像の格納場所を示す情報であることを特徴とする請求項7に記載の情報処理装置の制御方法。
【請求項9】
前記格納場所から前記第1のプリンタに対応する画像のデータを取得する他の取得工程をさらに有することを特徴とする請求項8に記載の情報処理装置の制御方法。
【請求項10】
サーバを経由して第1のプリンタに送信される印刷データの印刷設定画面を表示手段に表示させる第1の表示制御工程と、
前記サーバを経由することなく第2のプリンタに送信される印刷データの印刷設定画面を前記表示手段に表示させる第2の表示制御工程と、
前記サーバから受信した前記第1のプリンタに対応する画像データに関する情報に基づき取得された第1の画像データに基づく第1のアイコン画像と、前記第2のプリンタから取得された第2の画像データに基づく第2のアイコン画像含む一つの画面を前記表示手段に表示させる第3の表示制御工程と、を、前記サーバを経由して前記第1のプリンタに印刷データを送信し、前記サーバを経由することなく前記第2のプリンタに印刷データを送信する情報処理装置のコンピュータに実行させるコンピュータプログラム。
【請求項11】
前記サーバから受信する前記第1のプリンタに対応する画像データに関する情報は、前記画像データの格納場所を示す情報であることを特徴とする請求項10に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機種を問わない標準的なドライバ(以下、標準ドライバ)向けに印刷設定画面を提供するアプリケーションに関するものである。
【背景技術】
【0002】
従来は、プリンタベンダ(プリンタメーカー)によって提供されるドライバによって印刷がおこなわれてきた。近年では、プリンタベンダの提供するドライバをインストールしなくても印刷ができる環境が整ってきた。OSベンダーが標準ドライバを提供してくれているからである。例えば、Windows(登録商標)には、IPPクラスドライバーと呼ばれる標準ドライバが搭載されている。Android(登録商標)には、モプリア(登録商標)と呼ばれる標準ドライバが搭載されている。また、iOS(登録商標)には、AirPrint(登録商標)と呼ばれる標準ドライバがOSの一機能として搭載されている。これらの標準ドライバは、IPP(Internet Printing Protocol)と呼ばれる印刷プロトコルに準拠した印刷コマンドを吐くドライバとなっている。そのため、IPPをサポートするプリンタは、そうした印刷コマンドを受け取り、印刷を実行することができる。こうした標準ドライバが特徴的なのは、印刷プロトコルに対応している複数のプリンタベンダの複数の機種のプリンタに印刷を実行させることができる点である。即ち、複数の機種のプリンタと互換性を持つ点である。
【0003】
特許文献1では、プリンタと通信可能な情報処理装置において、当該情報処理装置にインストールされているドライバが、そのプリンタの外観を表したアイコン用画像データをプリンタから取得する(図7)。そして、そのアイコン用画像データをOSに提供する。そうすることで、OSはOSが提供するプリンタ管理画面(例えば、デバイスとプリンターの画面)上にそのアイコンを表示する(図2)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2004-310154号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、こうした細かな作りができるのも、そのドライバがプリンタベンダーが提供するベンダー固有のドライバだからこそである。標準ドライバとなると、そもそもがプリンタベンダーが単体で作るドライバではなく、OSベンダの意向に左右されて作られることになるし、また他のプリンタベンダーの意向にも依存して作られることになる。そのため、そうした細かな作りを標準ドライバに盛り込むことは現実的に難しい。
【課題を解決するための手段】
【0006】
本発明の一実施形態の情報処理装置は、サーバを経由して第1のプリンタに印刷データを送信し、前記サーバを経由することなく第2のプリンタに印刷データを送信する情報処理装置であって、前記サーバから前記第1のプリンタが前記サーバに登録した情報を取得する取得手段と、取得した前記情報と対応する前記第1のプリンタアイコン画像と、第2のプリンタから取得した情報に対応する前記第2のプリンタアイコン画像とを含む一つの画面を前記表示手段に表示させる表示制御手段と、を有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、アイコンのデータを取得できる。
【図面の簡単な説明】
【0008】
図1】ネットワーク構成図
図2】クライアントコンピュータ100におけるハードウェア構成図
図3】プリンタ200における機能ブロック図
図4】クラウドプリントプロキシ1054における機能ブロック図
図5】クラウドプリントサービスにおける機能ブロック図
図6】プリンタ200をクラウドプリントサービス500に登録する際のクラウドプリントサービス500のアイコン取得処理フロー図
図7】クラウドプリントサービス500のアイコン保存方法の一例
図8】クライアントコンピュータ100におけるプリンタ200登録時のアイコン取得処理フロー図
図9】印刷コモンダイアログの画面例
図10】詳細設定の画面例
図11】オペレーティングシステム1053のアイコン要求によってクラウドプリントサービス500がアイコン取得を行う処理のシーケンス図
図12】印刷設定拡張アプリがプリンタからアイコンを取得する処理のシーケンス図
図13】クライアントコンピュータ100におけるアイコン表示例
図14】印刷設定拡張アプリ1052におけるアイコン表示例
図15】クラウドプリントプロキシサーバのアイコン取得処理フロー図
図16】オペレーティングシステム1053のアイコン要求によってクラウドプリントサービス500がアイコン取得を行う処理のシーケンス図
図17】アイコンを取得する処理のフローチャート図
図18】アイコン取得が指示された際のシーケンス図
図19】クラウドプリントサービス500に直接アイコン要求をする際のシーケンス図
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態について図面を用いて説明する。
【0010】
〔実施形態1〕
図1は本発明の実施形態を示すネットワーク150の環境を簡略したネットワーク構成図である。ネットワーク150にはクライアントコンピュータ100が接続され、通信可能な状態になっている。また、別のイントラネットに接続されているクラウドプリント対応プリンタ201、クラウドプリント非対応プリンタ202、クラウドプリントプロキシサーバ300が存在しており、インターネットを通じて接続されている。ネットワーク150には、プリンタドライバ配布サービス600、印刷設定拡張アプリ配布サービス400、クラウドプリントサービス500が接続されている。
【0011】
プリンタドライバ配布サービス600は、Webベースでプリンタドライバをクライアントコンピュータ100に配布するサービスを実行する。クライアントコンピュータ100は、プリンタをWSD(Web Services for Devices)やIPP(Internet Printing Protocol)などのプロトコルで探索して発見した際に取得するプリンタの識別情報に対応したプリンタドライバをプリンタドライバ配布サービス600から取得し、インストールする。また、クライアントコンピュータ100は、クライアントコンピュータ100にインストールされているプリンタドライバよりもバージョンの新しいプリンタドライバが、プリンタドライバ配布サービス600にアップロードされている場合に、自動及び手動で新しいプリンタドライバをプリンタドライバ配布サービス600から取得し、インストールされているプリンタドライバの更新を行う。
【0012】
印刷設定拡張アプリ配布サーバ400は、クライアントコンピュータ100で実行されるアプリケーションを配布するサービスを実行するサーバである。クライアントコンピュータ100は、印刷設定拡張アプリのインストールを要求するユーザ操作を受け付けた場合か、プリンタドライバの情報ファイル(以下、Infファイル)にアプリケーションの識別子が記述されている場合、印刷設定拡張アプリ配布サーバ400から該当する印刷設定拡張アプリを取得してインストールを行う。
【0013】
クラウドプリントサービス500は、複数のサーバからなるサーバシステムであるクラウド上(すなわち、サーバシステム上)に構築されるインターネット上の印刷制御のためのサービスである。本実施形態では、其々のイントラネットに対して接続が可能であり、インターネットを通じてクライアントコンピュータ100およびクラウドプリント対応プリンタ201と直接の接続が可能である。一方、クラウドプリント非対応プリンタ202の場合、後述のクラウドプリントプロキシサーバ300を介して接続することができる。クラウドプリントサービス500は、ユーザIDとPASSWORDを利用したアカウント管理がなされており、ユーザはこのアカウントを利用してクラウドプリントサービス500にアクセスすることができる。
【0014】
クラウドプリントプロキシサーバ300はクライアントコンピュータ100と同様のハードウェア構成を持つコンピュータにクラウドプリントプロキシ1054がインストールされたものを示す。クラウドプリント非対応プリンタ202はこのクラウドプリントプロキシサーバ300を経由してクラウドプリントサービス500と接続可能となる。これにより、クラウドプリントに非対応であってもクラウドプリントサービス500に登録ができ、また出力ができる。
【0015】
図2はクライアントコンピュータ100、および、クラウドプリントプロキシサーバ300の内部の構成を示すハードウェア構成図である。
【0016】
同図においてクライアントコンピュータ100が内包するCPU101は主記憶装置102のROM1021あるいはRAM1022あるいは補助記憶装置105に格納されたプログラムに従って装置全体の制御を行う。
【0017】
RAM1022はCPU101が各種処理を行う際のワークエリアとしても使用される。補助記憶装置105は、クラウドプリンタドライバ1057を内包するオペレーティングシステム(OS)1053、アプリケーション1051、印刷設定拡張アプリ1052、デバイス管理システム1055、プリンタドライバ1056等を記憶する。以降の説明では、主記憶装置102と補助記憶装置105を合わせて記憶装置と記載する。
【0018】
マウス・タッチパネルなどに代表されるポインティングデバイス109やキーボード108などの入力機器は、入力I/F103を通じて接続され、ユーザがコンピュータに対して各種指示を与えるためのデバイスである。
【0019】
出力I/F104は、データを外部に出力するためのインターフェースであり、モニター110やパネル111のような出力機器に対してデータを出力する。
【0020】
プリンタ200(本発明の実施形態においてはクラウドプリントのサポート状況を問わないプリンタの総称として「プリンタ200」と表記する)や各システムとの接続は、通信I/F106を経由しネットワーク150を通じて接続される。また、107は共通データシステムバスで、I/Fやモジュール間でデータのやり取りを行う。加えて、CPU101が記憶装置に記憶されているプログラムに基づき処理を実行することによって、本発明の処理が実現される。
【0021】
本実施例では、オペレーティングシステムが内包する標準ドライバとしてクラウドプリンタドライバ1057とIPP標準ドライバの二つを想定している。
【0022】
クラウドプリンタドライバ1057は、クラウドプリントサービス500に接続されプリンタであれば、機種を問わずに印刷指示できるプリンタ制御プログラムである。IPP標準ドライバはIPPプロトコルで接続されたプリンタに接続されプリンタの機種を問わずに印刷指示できるプリンタ制御プログラムである。
【0023】
アプリケーション1051は一般的な業務用のアプリケーションを示しており、ドキュメントの編集やプレゼン資料の作成などが可能な一般的なアプリケーションであり、メニュー等のUIを操作することにより印刷指示が可能であるようなものを想定している。
【0024】
印刷設定拡張アプリ1052は、クラウドプリンタドライバ1057を始めとするオペレーティングシステム1053が内包する標準的なプリンタドライバと連携して動作し、印刷対象プリンタ固有の詳細な印刷設定をおこなうためのアプリケーションソフトウェアである。また、対応するプリンタそれぞれに対するアイコン群を記憶していてもよい。なお、プリンタに対するアイコン(即ち、プリンタのアイコン)は、例えば、そのプリンタの機種別に作られている。プリンタに対するアイコンは、プリンタを表す視覚情報(図又は絵)ということもできる。
【0025】
デバイス管理システム1055は後述のプリンタドライバ1056と同様にプリンタドライバ配布サービス600からダウンロードされ、出力対象であるクラウドプリント非対応プリンタ202に関する各種の情報を管理するためのプログラムである。さらに、デバイス管理システム1055は、上記以外の情報として出力対象プリンタに対応するアイコンを保持している。
【0026】
プリンタドライバ1056は、プリンタベンダーによって提供される機種固有のプリンタ制御プログラムであり、プリンタドライバ配布サービス600から入手することを想定している。また、プリンタドライバ1056においては単体で機器固有の詳細な印刷設定を行えるものとする。
【0027】
一方、クラウドプリントプロキシサーバ300については補助記憶装置1051に記憶されたアプリケーションのみが異なっているものとする。より具体的には、印刷設定拡張アプリ1052に代わって、クラウドプリントプロキシ1054が記憶されている。クラウドプリントプロキシ1054は、クラウドプリント非対応プリンタ202に対してクラウドプリントサービスを提供するために、各種通信手順の変換をおこなうためのプログラムである。
【0028】
クラウドプリントプロキシサーバ300に関しては上記以外の機能モジュールはクライアントコンピュータ100と同様であるため、説明は割愛する。
【0029】
なお、クラウドプリントプロキシサーバ300は、クライアントコンピュータ100と一体であっても良い。その場合、補助記憶装置105には、印刷設定拡張アプリ1052、クラウドプリンタドライバ1057、クラウドプリントプロキシ1054、デバイス管理システム155、プリンタドライバ1056が全て格納されるものとする。
【0030】
図3は本発明実施形態における画像処理装置の一例であるプリンタ200の機能ブロックを示す図である。なお、クラウドプリント対応プリンタ201とクラウドプリント非対応プリンタ202もこのプリンタ200の構成に準ずる。
【0031】
CPU(Central Processing Unit)222を含む制御部221は、プリンタ200全体の動作を制御する。CPU222は、メモリ223や記憶部224に記憶された制御プログラムを読み出して、印刷制御や読取制御などの各種制御を行う。メモリ223は、ワークエリア又は各種制御プログラムを展開するための一時記憶領域として用いられる。記憶部224は、印刷データ、画像データ、各種プログラム、及び各種設定情報を記憶する。本実施形態では記憶部224としてHDD(Hard Disk Drive)等の補助記憶装置を想定しているが、HDDの代わりにSSD(Solid State Drive)などの不揮発性メモリを用いるようにしても良い。このように、CPU222、メモリ223、記憶部224等のハードウェアは、いわゆるコンピュータを構成している。
【0032】
処理部230は、ネットワークを介して受信した印刷データを展開し印刷画像を生成するRIP(Raster Image Processor)の機能を備えている。また、処理部は画像処理部能力を有し、画像の解像度変換や補正処理を行うこともできる。なお、本実施形態では、画像処理部がハードウェア回路(ASIC又はFPGAなど)で実現されることを想定しているが、これに限定されるものではない。例えば、プリンタ200が画像処理用途向けのプロセッサを備え、当該画像処理用途向けのプロセッサが画像処理プログラムを実行することにより画像処理や、印刷データの展開処理を実現してもよい。更には、画像処理を行うためのプログラムをCPU222が実行し、画像処理や印刷データの展開処理を行うように構成することもできる。また、これらのいずれかの組み合わせにより画像処理を行うようにしてもよい。
【0033】
操作部227には、タッチパネル機能を有する液晶表示部や各種ハードキーなどが備えられ、情報を表示する表示部226やユーザの指示を受け付ける受付部として機能したり、読み取りとして原稿を読み取って、読取画像を生成したりする。なお、生成された読取画像は記憶部224に格納されるものとする。また処理部230によって印刷データを解析して生成された印刷画像は制御部221から印刷部228に転送され、制御部221を介して制御コマンド及び印刷画像を受信し、当該画像に基づいて給紙カセット(不図示)から給送されたシートに画像を印刷する。
【0034】
また、制御部221は、ネットワーク通信部225を介してネットワーク150に接続される。ネットワーク通信部225は、ネットワーク150上の通信装置に画像や情報を送信したり、ネットワーク150上の通信装置から印刷データや情報を受信したりする。
【0035】
プリンタ情報記憶部229は、プリンタ200を一意に判別するための識別子であるハードウェアID(以下、HWID)、能力情報、アイコンを記憶している。このプリンタ情報記憶部229は記憶部224に存在してもかまわない。
【0036】
図4は、発明の実施形態を示すクラウドプリントプロキシ1054の機能ブロック図である。
【0037】
クラウドプリントプロキシ1054は、クラウドプリントサービス500においてクラウドプリント非対応プリンタ202を利用可能にするための変換機能を持つアプリケーションである。本実施形態では、ドライバ登録部301、ジョブ管理部302、認証部303、登録済みドライバリスト310の機能を持つ。ドライバ登録部301はあらかじめクラウドプリントプロキシサーバ300に登録されているプリンタドライバ1056をリストアップして、ユーザからの選択を受け付け、該当のプリンタドライバ1056をクラウドプリントサービス500に登録し、登録が成功した場合は登録済みドライバリスト310に登録する。
【0038】
ジョブ管理部302は、クラウドプリントサービス500から印刷ジョブを受信し、状況に応じてプリンタ201に直接印刷ジョブを送付する。
【0039】
認証部303は、ユーザが利用するクラウドプリントサービス500に対するユーザIDとPASSWORDのクレデンシャル情報を管理する。またこの機能が認証先であるクラウドプリントサービス500に存在してもかまわない。
【0040】
図5は、本発明の実施形態を示すクラウドプリントサービス500の機能ブロック図である。
【0041】
クラウドプリントサービス500は、インターネットを通じたクラウド上に存在するサービスであり、印刷に関連する機能を提供可能とする。本実施形態では、プリンタ登録部501、印刷キュー生成部502、プリンタリスト生成部503、探索応答部504、プリンタデータベース510の機能を持つ。さらに、印刷ジョブ管理部505、印刷ジョブ生成部506、印刷ジョブ保存領域511の機能を持つ。また、これらの機能がクラウドプリントサービス500と連携する別のクラウドプリントサービス500にあっても構わない。
【0042】
プリンタ登録部501は、クラウドプリント対応プリンタ201からプリンタ登録指示があった場合、印刷キュー生成部502を利用して印刷キューを生成させ、生成された印刷キューをプリンタデータベース510にプリンタ識別情報と紐づけて登録する。また、プリンタデータベース510はプリンタのアイコンを記憶する。クラウドプリント非対応プリンタ202では、前記クラウドプリントプロキシサーバ300を利用して登録の操作を行う必要がある。このようにプリンタの印刷キューとプリンタ識別情報とが紐づけて登録されていることを、プリンタが登録されていると呼ぶ。ここで登録されたプリンタに対して、様々な属性が付加される場合がある。例えば、プリンタの所在地が該当する。
【0043】
プリンタリスト生成部503は、登録されたプリンタのリストを生成する。
【0044】
探索応答部504は、クライアントコンピュータ100からのクラウドプリントサービス500に対してプリンタ探索のイベントに対し、登録されているプリンタの情報を応答する。
【0045】
印刷ジョブ管理部505は、クライアントコンピュータ100から印刷ジョブを受信し、状況に応じてプリンタ200に直接印刷ジョブを送付する。もしくはいったん印刷ジョブ保存領域511に保存して、出力先のプリンタが決定したタイミングで印刷ジョブ生成部506に渡して、適切な形式に変換して印刷ジョブを送付する。
【0046】
図6は本発明の実施形態を示すクラウドプリントサービス500に対するプリンタ登録時のクラウドプリントサービス500のアイコン取得をする処理のフローチャート図である。したがって、特に明記しない限り本フローチャートにおける動作の主体はクラウドプリントサービス500である。また、本フローチャートにおいて取得可能なアイコンの情報はプリンタが内包しているものとする。
【0047】
本フローはユーザが任意のプリンタを選択し、クラウドプリントサービス500に登録するところから始まる(S600)。なお、登録するプリンタがクラウドプリント対応プリンタ201の場合、クラウドプリント対応プリンタ201が具備する本実施形態不図示のWebUIから操作することもできる。クラウドプリントサービス500は前記ユーザによるデバイス登録操作を受け付け(S600)、S601のステップにおいてクラウドプリントサービス500はクラウドプリントに対応しているプリンタであるかどうかの判断を行い、クラウドプリント対応プリンタ201であると判断された場合は、S602に進む。S602のステップにおいてクラウドプリントサービスは前記S600において登録の対象であったクラウドプリント対応プリンタ201に対してアイコンの取得要求を行う。
【0048】
一方で、前記S601のステップにおいてクラウドプリントサービス500と直接つながっていないと判断した場合はS603のステップへ進むが、これは実施形態2(わかりやすさのため、実施形態をわけて記載する。しかしこれらはS602とS603は同一の製品の中で行えるため、同じ実施例である。)で説明する。S604のステップにおいて、前記S602、S603において要求したアイコンの受信が成功した場合はS605へ進む。S605のステップにおいては、受信したアイコンをプリンタデータベース510に対してプリンタの識別情報と紐づけて保存を行う。例えば、図7のように各々のプリンタに対してHWID等とアイコンを紐づけて保存する。一方、前記S604においてアイコン受信に成功しなかった場合はプリンタの識別情報を用いてその機種に対する適切な一般化されたアイコンをプリンタデータベース510に対して識別情報と紐づけて保存を行う。
【0049】
(実施形態1の別の方法A)なお、ステップS602では、単にアイコンの取得要求を行うのではなく、以下のような手法をとっても良い。即ち、プリンタ201がアイコンの格納場所を示すURL情報の要求を事前にクラウドプリントサービスに送っておく。具体的には、プリンタ201が、IPPにおけるオペレーションGet-Printer-Attributesにて、属性printer-static-resource-directory-uriの情報を取得する要求を送信する。そして、このステップS602においてその要求に対して応答する。具体的には、クラウドプリントサービス500は、プリンタ201へと、アイコンの格納場所を示すURL情報を送ることで、この応答を行う。より詳細には、クラウドプリントサービス500が、前記IPPにおけるオペレーションGet-Printer-Attributesに応答する際に、属性printer-static-resource-directory-uriにURL情報をセットし、当該URL情報がセットされた当該属性を送信する。すると、プリンタ201は、このURL情報にアイコンを送り、上記格納場所にアイコンを保存することになる。具体的には、プリンタ201は、HTTPのPUTメソッドを使用して前記URLにアイコンを送信する。一方、S604ではアイコンの受信が成功したか確認するのではなく、アイコンが上記格納場所に保存されたかを確認することになる。そして、アイコンが上記格納場所に保存されていれば、S605でそのURL情報とデバイス情報(プリンタの識別情報)とが紐づけて保存されることになる。また、この別の方法Aによれば、S604ではアイコンの受信が成功したか確認するのではなく、アイコンが上記格納場所に保存されたかを確認することになる。そして、アイコンが上記格納場所に保存されていれば、S605でそのURL情報とデバイス情報(プリンタの識別情報)とが紐づけて保存されることになる。
【0050】
(さらに別の方法B)図6で説明した実施例はプリンタ201がアイコンデータをクラウドプリントサービス500に送信する構成であった。しかし、プリンタ201がアイコンデータそのものを送信するのではなく、アイコンデータが格納された場所の情報(URL情報)をプリンタ201が通知するという構成でも良い。この構成は、あらかじめアイコンデータが格納されたサーバがクラウド上に存在し、そのURL情報をプリンタ201が保持していることが前提となる。この場合、S602におけるアイコンの取得は以下の手順となる。プリンタ201がクラウドプリントサービス500に対し、アイコンの格納場所を示すURL情報を送信する。具体的には、プリンタ201が、IPPにおけるオペレーションSet-Printer-Attributesにて、属性printer-static-resource-directory-uriにURL情報をセットする。そして、当該URL情報のセットされた当該属性を送信することによってURL情報を送信する。ここで、printer-static-resource-directory-uriは、アイコン情報などプリンタの静的な情報を格納するURIを格納することのできるIPP属性の名称である。なお、前記URLにあらかじめアイコンが格納されていない場合、プリンタ201がアイコン格納場所にHTTP(Hypertext Transfer Protocol)におけるオペレーションPUTでアイコン情報を送信しても良い。
【0051】
クラウドプリントサービス500はS604においてURL情報の取得に成功すると、S605にてデバイス情報と対応付けてアイコン格納場所を示すURL情報を保存する。
【0052】
図8はクライアントコンピュータ100上で稼働するオペレーティングシステム1053がプリンタを登録する処理においてアイコンを取得する処理のフローチャートの図である。各ステップの実行主体は、オペレーティングシステム1053となっている。このフローチャートはユーザによるアプリケーション1051からの印刷操作を起点にオペレーティングシステムがプリンタを探索する処理から始まる。S800においてオペレーティングシステムはWSD(Web Services for Devices)やIPP(Internet Printing Protocol)などのプロトコルで探索を行い、発見したプリンタ(の名称)を列挙する。さらに、本ステップS800においてはクラウドプリントサービス500に登録され、ユーザが出力を許可されているプリンタの検出もおこなわれる。つまり、同一イントラネット上にはないクラウドプリント対応プリンタ201やクラウドプリント非対応プリンタ202もクラウドプリントサービス500に登録されていれば、プリンタ探索によって見つけることができるものとする。ここで、オペレーティングシステムは検出されたプリンタ群がWSD探索で検出されたか、IPP探索で検出されたか、クラウドプリントサービス上のプリンタであるかの検出フラグ情報を保存する。
【0053】
次にS801において、前記S800において列挙したプリンタからユーザが選択したプリンタ(の名称)の登録操作(選択操作)を受け付ける。S802において、前記S801にて選択を受け付けたプリンタを決定する。S803において前記S801において選択されたプリンタに関して保存されている検出フラグ情報において、そのプリンタがクラウドプリンタサービス上のプリンタであるか判定する。クラウドプリントサービス500上のプリンタであればS804へ進む。S804のステップにおいては、S800において保存された検出フラグ情報に基づき、オペレーティングシステム1053は、インストールするドライバがクラウドプリンタドライバ1057であると特定する。そして、特定したクラウドプリンタドライバ1057をインストールし、印刷キュー(プリンタキュー)作成し、インストールされたドライバと印刷キューとを紐づける。
【0054】
次にS805において、オペレーティングシステム1053が、プリンタドライバ配布サービス600からプリンタを識別する情報であるHWIDに基づき、ドライバ拡張パッケージのダウンロードを行う。
【0055】
ドライバ拡張パッケージは、プリンタドライバ配布サービス600から配布されるパッケージの一例である。ドライバ拡張パッケージは、プリンタドライバ配布サービスから配布可能な情報ファイルであり、プリンタを識別するためのHWID、印刷設定拡張アプリ1052の識別子情報、当該パッケージがドライバ拡張パッケージであることを示す情報や、ドライバ拡張パッケージのバージョンなどの情報を持つ。
【0056】
そしてS806において、オペレーティングシステム1053は前記S1005によってダウンロードしたドライバ拡張パッケージのインストールを行う。そして、インストールしたドライバ拡張パッケージを印刷キューに紐づける。
【0057】
次にS807において、オペレーティングシステム1053は、ドライバ拡張パッケージに記載された印刷設定拡張アプリ1052の識別子情報を基に、印刷設定拡張アプリ配布サービス400内から印刷設定拡張アプリ1052を検索する。即ち、その識別情報と同じ識別子情報を持つ印刷設定拡張アプリ1052を検索する。そして、検索により見つかった印刷設定拡張アプリ1052をダウンロードする。
【0058】
本実施形態では、印刷設定拡張アプリ配布サービス400において、ドライバ拡張パッケージの印刷設定拡張アプリ1052の識別子情報と印刷設定拡張アプリ1052は1対1で紐づいている。即ち、ドライバ拡張パッケージに記載された識別子情報で検索を行うと、2つ以上の印刷設定拡張アプリが見つかることはなく、必ず、1つだけ見つかるということである。また、印刷設定拡張アプリ配布サービス400において、印刷設定拡張アプリ1052の識別子情報とプリンタ情報に含まれるHWIDの紐づけ情報(以下、メタデータ)を保存しておいてもよい。その場合、そのメタデータを利用して、適切な印刷設定拡張アプリ1052をダウンロードする仕組みとなる。
【0059】
S808において、オペレーティングシステム1053は、前記S807によってダウンロードした印刷設定拡張アプリ1052をインストールする。
【0060】
印刷設定拡張アプリ1052インストール後は、オペレーティングシステムによって、印刷設定拡張アプリ1052は、前記S801において選択したプリンタの印刷キューと1対1で紐づけられることになる。そして、その印刷キューがプリンタの機種情報や印刷設定情報を保持していることにより、印刷設定拡張アプリ1052は、それらの情報を取得し、当該取得した情報に応じた適切な印刷設定UIを構築、提示することが可能となる。なお、印刷設定拡張アプリ1052が、クラウドプリントサービス500と直接通信し、対象の機種情報や印刷設定情報を取得し、その情報を用いてUIを構築し、提供してもよい。いずれにせよ、ユーザは、印刷設定拡張アプリ1052のインストールが完了すると、詳細な印刷設定変更が利用可能となる。以下、印刷設定拡張アプリ1052を用いた印刷の一例を説明する。
【0061】
ユーザが標準ドライバ(クラウドプリンタドライバやIPP標準ドライバ)を用いて印刷する場合、クライアントコンピュータ100のアプリケーション1051から印刷指示を行う。具体的な例として、アプリケーションのファイルメニューから印刷を押下する。通常のアプリケーションの動作として、ユーザからの印刷指示を受け付けた場合、オペレーティングシステム1053に対して図9に示す印刷コモンダイアログ(オペレーティングシステムの提供する印刷設定画面)を表示するように指示を行う。オペレーティングシステム1053はアプリケーションから指示を受けて、印刷コモンダイアログを表示する。オペレーティングシステム1053が表示する印刷コモンダイアログは、クライアントコンピュータ100にインストールされたプリンタの一覧や、印刷するページの指定、部数の設定ができるようになっている。ユーザは印刷コモンダイアログから出力したいプリンタの印刷キューを選択し、同じ画面に表示している詳細設定ボタン(オブジェクト)を押下して、その印刷キューに対して印刷設定変更指示を行うことができる。その際、その印刷キューと紐づけられた印刷設定拡張アプリ1052がオペレーティングシステムによって起動され、図10に示す印刷設定変更UIが表示される。例えば、濃度や色味などの画像処理の設定やスタンプ合成の可否や、パンチ位置やステープル位置の設定などを設定することができる。ユーザが印刷設定UI上で印刷設定の変更を行って印刷指示を行うと、その指示を受けたオペレーティングシステム1053が、その印刷設定内容をその印刷キューと紐づけられたドライバへと伝える。すると、そのドライバが、プリンタかクラウドプリントサービス500に印刷するデータを送信する。即ち、IPP標準ドライバであれば、印刷するデータはプリンタに送信するし、クラウドプリンタドライバであれば、クラウドプリントサービス500に送信することになる。
【0062】
S809においてオペレーティングシステム1053は、プリンタを識別するHWIDなどを基にクラウドプリントサービス500に対してアイコン要求を行う。
【0063】
アイコン要求を受信したクラウドプリントサービス500は、図7のように保存されているアイコンの中から受信したHWIDと一致するアイコンを要求元に送信する。そして、オペレーティングシステム1053は受信したアイコンを印刷キューと紐づける。印刷キューと紐づいたアイコンは、オペレーティングシステムによって表示されるプリンタ管理画面において、印刷キューを表すアイコンとして表示されることになる。
【0064】
なお、本フローにおいてはオペレーティングシステム1053がクラウドプリントサービス500に対してアイコン取得要求を行ったが、代わりに印刷設定拡張アプリ1052がアイコン取得要求を行ってもよい。その場合、印刷設定拡張アプリ1052は、取得したアイコンをオペレーティングシステム1053に提供することになる。また、印刷設定拡張アプリ1052がクラウドプリントサービス500への取得要求を行うにあたって、オペレーティングシステム1053からの要請を受けて、取得要求を行う構成としてもよい。
【0065】
また、本実施形態では予めクラウドプリントサービス500がプリンタからアイコンを取得しており、その後オペレーティングシステム1053や印刷設定拡張アプリ1052がクラウドプリントサービス500に対してアイコン取得要求を行っている。しかし、オペレーティングシステム1053や印刷設定拡張アプリ1052がアイコン取得要求をクラウドプリントサービス500に送ると、それを受け取ったクラウドプリントサービス500が、その時点で、プリンタに対してアイコン取得を行ってもよい。また、印刷設定拡張アプリ1052が、インストールされる前の状態から、予め、このアプリが対応しているプリンタの各機種に対応するアイコンを内包しておく形態としてもよい。その場合、プリンタやクラウドプリントサービスからわざわざ取得しなくても、内包された領域からアイコンを取得すればよいことになる。
【0066】
(実施形態1の別の方法Aの続き)なお、S809においてアイコン要求は以下の手順で行ってもよい。まず、オペレーティングシステム1053はクラウドプリントサービス500に対し、アイコンの格納場所を示すURL情報を要求する。具体的には、IPPにおけるオペレーションGet-Printer-Attributesをクラウドプリントサービス500に送信する。その際、このオペレーションの引数として、IPP属性printer-static-resource-directory-uriをセットする。そうすることにより、printer-static-resource-directory-uriの値が要求されることになる。その要求を受け取ったクラウドプリントサービス500は、オペレーティングシステム1053に対し、printer-static-resource-directory-uriの値を応答する。こおで、その値には、上述のようにアイコンの格納場所を示すURL情報(先ほどプリンタから受け取ったURL情報でも良いし、別の場所にアイコンを置き換えた場合はそのURL情報でもよい。)が格納されている。よって、そのURL情報がオペレーティングシステム1053に送信されることになる。その後、オペレーティングシステム1053は、取得したURL情報に対し、アイコン要求を送信する。その結果、アイコンが上記格納場所から送られてきて、オペレーティングシステム1053は当該アイコンを受け取ることになる。なお、上記したさらに別の方法Bに関しても、このステップでは、別の方法Aと同じ動作となる。
【0067】
図11はオペレーティングシステム1053のアイコン要求によってクラウドプリントサービス500がアイコン取得する処理のシーケンス図である。このシーケンス図は、図12のS809の中に入るシーケンスの一例を表している。
【0068】
本シーケンス図はオペレーティングシステム1053が、クラウドプリントサービス500に対して紐づいている印刷キューのクラウドプリント対応プリンタ201に対してアイコン要求を行う処理(S1100)から始まる。ここでアイコン要求がURL情報を使った別の方法でも良いことは前述の通りである。その場合、上述の記載同様、S1103におけるアイコン返答もURL情報を使ったアイコンの取得となる。その後、S1101のステップにおいてアイコン取得要求を受信したクラウドプリントサービス500は、要求されたクラウドプリント対応プリンタ201に対してアイコン取得要求を送る。ここで、このアイコン取得要求がURL情報を使った別の方法でも良いことは上述の通りである。その場合、上述の記載同様、S1102におけるアイコン返答もURL情報を使ったアイコンの取得となる。
【0069】
そして、S1102のステップにおいてアイコン取得要求を受け取ったクラウドプリント対応プリンタ201はプリンタ情報記憶部229に保存されているアイコンを要求元であるクラウドプリントサービス500に対して送信する。S1103のステップにおいて、前記S1102で送信されたアイコンを受信したクラウドプリントサービス500はアイコン要求元であるオペレーティングシステム1053に対してアイコンを送信する。その後、S1104のステップにおいて、アイコンを受信したオペレーティングシステム1053はアイコンを印刷キューに紐づける。
【0070】
S1103のステップにおいて、クラウドプリントサービス500が受け取ったアイコンは図7のようにプリンタの情報と紐づけて保存してもよいし、一時的な保存でもよい。
【0071】
また、本実施形態ではクラウドプリントサービス500からアイコンを取得する方法を説明したが、オペレーティングシステム1053が印刷設定拡張アプリ1052の記憶しているアイコン群の中からHWIDを基に適切なアイコンを決定し、取得してもよい。また、そのアイコンを印刷キューに紐づけてもよい。
【0072】
一方で、S803においてユーザが登録操作で選択したプリンタがS800において作成された検出フラグ情報により、クラウドプリントサービス500上のプリンタでないと判断した場合はS810へ進む。S810のステップにおいて、前記S801においてユーザに選択されたプリンタがS800において作成された検出フラグ情報においてIPP探索以外で見つかったプリンタの場合はS811へ進む。S811のステップでは、検出フラグ情報に基づきプリンタドライバ配布サービス600からHWIDによって該当ドライバをダウンロードし、インストールを行い印刷キューを作成する。該当ドライバの判別にはHWIDを用いる。そして、S812のステップにおいてプリンタに対応するデバイス管理システム1055をダウンロードする。S813のステップにおいてオペレーティングシステム1053は前記S812においてダウンロードしたデバイス管理システム1055に存在するアイコンの取得を行い、作成した印刷キューと紐づける。
【0073】
一方で、前記S810において、前記S801においてユーザに選択されたプリンタがS800において作成された検出フラグ情報により、IPP探索で見つかったプリンタであると判断した場合はS814へ進む。S814のステップにおいては、オペレーティングシステム1053で規定されているIPP標準ドライバは、標準規格で決められたやりとりをプリンタと行い、必要な能力情報を反映した印刷キューを生成する。
【0074】
即ち、複数のプリンタベンダーの複数の機種のプリンタに印刷を実行させることができる機能を持ったIPP標準ドライバをインストールする。なお、インストールした後は、上記プリンタとの接続が印刷キューを介して行われるため、接続されたプリンタ向けにのみ印刷指示を送ることができるように構成される。また、このS814においては、インストールされたIPP標準ドライバと関連づいた印刷キューがオペレーティングシステム上に作成されることになる。また、S815~S818においては前記S805~S808の処理と同様であるため説明を省略する。S819においては、オペレーティングシステム1053が前記S818においてインストールした印刷設定拡張アプリ1052のアイコン群の中からプリンタのHWIDなどの情報を基に適切なものを選択し、アイコンを取得する。また、この際に取得したアイコンをS814において作成した印刷キューと紐づけてもよい。
【0075】
また、S819の代わりに図12のシーケンス図のようにして印刷設定拡張アプリ1052がプリンタ200からアイコンを取得してもよい。あるいは、印刷設定拡張アプリ1052は、予め自分自身で内包している複数のアイコンの中から、S802で決定したプリンタに合うアイコンを取得してもよい。S1200において印刷設定拡張アプリ1052はプリンタ200に対してアイコン要求を行う。そしてS1201において、プリンタ200はプリンタ情報記憶部229に保存されたアイコンを要求元に返答する。S1202において、前記返答されたアイコンを受信した印刷設定拡張アプリ1052はアイコンを保存する。また、このアイコンを印刷キューと紐づけてもよい。なお、後述の図16のように、印刷設定拡張アプリ1052が、プリンタ200から、アイコンを格納しているサーバへのアクセス情報(リンク)を取得し、当該リンクに基づいて当該サーバにアクセスをし、当該サーバからアイコンを取得してもよい。
【0076】
図8によって取得されたアイコンは、オペレーティングシステム1053により、例えば、オペレーティングシステム1053の周辺機器を一覧表示する画面システム(即ち、プリンタ等のデバイスを管理するプリンタ管理画面。)において図13のように表示されることになる。また、プリンタドライバ1056をインストールした際に紐づいてインストールされる印刷設定拡張アプリ1052において、クライアントコンピュータ100にインストールされているアプリケーション1051を一覧表示する画面などから印刷設定拡張アプリ1052に該当するアイコンを押下することによって開かれる印刷設定拡張アプリの画面においてそのアイコンを表示させてもよい(図14)。
【0077】
以上の手順より、クラウドプリントサービス500上のプリンタに対してもアイコンを取得することができ、ユーザはそれをオペレーティングシステム1053の周辺機器を一覧表示する画面(図13)や印刷設定拡張アプリ1052の画面(図14)等の表示によって自分が接続しているプリンタを容易に識別することができる。
【0078】
〔実施形態2〕
実施形態1では、クラウドプリントサービス500がプリンタ200やクラウド対応プリンタ201からアイコンを取得し、そのアイコンをオペレーティングシステム1053や印刷設定拡張アプリ1052が取得し画面上に表示することができた。しかし、クラウドプリントサービス500においてクラウドプリント非対応プリンタ202を利用している場合、クラウドプリント非対応プリンタ202はクラウドプリントプロキシサーバ300を経由してクラウドプリントサービス500と繋がっているため、実施形態1の方法では実現できない。
【0079】
そこで、本実施形態ではクラウドプリントサービス500を利用している場合にクラウドプリント非対応プリンタ202からでもアイコン取得を実現する手段について図9を用いて説明する。
【0080】
本フローは、図6のステップS600においてクラウドプリントサービス500に対してクラウドプリントプロキシ1054を用いてクラウドプリント非対応プリンタ202のユーザによる登録操作を受け付けるところから始まる。そして、S601のステップにおいて登録されたプリンタが直接つながっていないと判断された場合には、S603のステップに進む。S603のステップにおいては、クラウドプリントプロキシサーバ300に対してアイコン取得要求を行う。以下のフローは実施形態1と同様なため説明を省略する。
【0081】
図15図6のS603のステップにおいてアイコン取得要求を受信したクラウドプリントプロキシサーバ300がクラウドプリント非対応プリンタ202のアイコンを取得し返答する処理のフローチャートの図である。
【0082】
本フローは、クラウドプリントサービス500からのアイコン要求を受信し、要求されたプリンタのアイコンがデバイス管理システム1055にあるか判断するところから始まる。
【0083】
ここで、デバイス管理システム1055とは、例えばMicrosoft社のDevice Stageのようなものを想定している。より具体的には、各種の周辺機器に対して機能拡張をおこなうための仕組みであり、オペレーティングシステム1053に組み込まれたデバイス管理システム1055によって起動される。デバイス管理システム1055はユーザによって周辺機器が選択されたことを検知し、予めインターネット上のサーバ(本実施形態においてはプリンタドライバ配布サービス600)から必要な制御ソフト(ドライバ)や機能拡張のためのアプリケーションを自動的にダウンロードする。なお、本実施形態においてはこのサーバ上に対応するプリンタのアイコンも格納されているものとする。
【0084】
ステップS1500において、要求されたプリンタのデバイス管理システム1055がクラウドプリントプロキシサーバ内に存在する場合にはS1501に進む。ステップS1501において、主記憶装置102もしくは補助記憶装置105に存在するアイコンを取得する。そしてステップS1602において、前記S1501において取得したアイコンを要求元であるクラウドプリントサービス500に対して送信する。前記S1500において、要求されたプリンタのデバイス管理システム1055が存在しなかった場合はアイコン取得に失敗した旨を要求元に送信する。
【0085】
以上の手順よりクラウドプリントサービス500上のクラウドプリント非対応プリンタ202に対してもアイコンを取得することができ、ユーザはオペレーティングシステム1053の周辺機器を一覧表示する画面(図13)や印刷設定拡張アプリ1052の画面(図14)等に表示されるプリンタのアイコンによって自分が接続しているプリンタを容易に識別することができる。
【0086】
〔実施形態3〕
図16は、クラウドプリントサービス500が、アイコンデータではなく、アイコンデータの格納された場所(URL)を管理している場合に、オペレーティングシステム1053がアイコンを取得する処理のシーケンス図である。
【0087】
オペレーティングシステム1053は、クラウドプリントサービス500に対しアイコン格納場所要求S1602をHWIDと共に送信する。クラウドプリントサービス500は送信されたHWIDに対応するアイコン格納場所(URL)をプリンタデータベース510から取得し、オペレーティングシステム1053にアイコン格納場所返答S1603として送信する。オペレーティングシステム1053はS1603から通知されたアイコン格納場所(URL)が示すアイコンデータ格納サーバ1601に対しアイコン要求S1604を送信する。アイコンデータ格納サーバ1601はオペレーティングシステム1053にS1605にてアイコンデータを送信する。
【0088】
〔実施形態4〕
実施形態1、2では図8に示すようにプリンタを探索した後に選択したプリンタのドライバをインストールするという流れの中でアイコンを取得する方法について記載した。
【0089】
実施形態4では印刷設定拡張アプリ1052が起動された際にアイコンを取得する方法について記載する。
【0090】
図17はユーザによって印刷設定拡張アプリ1052が起動された際にアイコンを取得する処理のフローチャートの図である。本フローチャートはユーザが印刷設定拡張アプリ1052の起動を行ったところから始まる。
【0091】
ステップS1700において、起動指示を受け付けた印刷設定拡張アプリ1052は自身と関連づいているプリンタのリストを取得する。印刷設定拡張アプリはドライバ拡張パッケージに記載されている全てのプリンタに紐づく可能性がある。そのため、ステップS1701において、前記S1700において取得したプリンタのリストについて紐づくアイコンが存在しているかそれぞれ確認する必要がある。ここで、該当のプリンタとアイコンが紐づいているかを確認し、アイコンが紐づいていないプリンタが存在する場合にはS1702に進む。ステップS1702におけるアイコン取得は図18のシーケンス図に示す処理の流れになる。この際、S1800において印刷拡張アプリ1052はオペレーティングシステム1053に対してアイコン要求の指示を行う。S1801~S1805については図8のS809の一例として用いた図11で説明したものと同様であるため説明を省略する。S1806において、オペレーティングシステムはS1804において受け取ったアイコンを印刷設定拡張アプリ1052に渡す。
【0092】
図18では印刷設定拡張アプリ1052が起点となってオペレーティングシステム1053にアイコン取得を指示した場合のシーケンス図を示した。一方で、図19のように印刷設定拡張アプリ1052がオペレーティングシステム1053を介さずにクラウドプリントサービス500に直接アイコン要求を行うことも考えられる。
【0093】
この場合は、S1900において印刷設定拡張アプリ1052はクラウドプリントサービス500に対してアイコン要求を行う。S1901、S1902においては図11のS1101、S1102と同様であるため説明を省略する。次に、S1903において取得したアイコンをクラウドプリントサービス500が印刷設定拡張アプリ1052に渡す。S1904において、前記S1903において受け取ったアイコンを該当のプリンタと紐づけて保存する。S1905において、印刷設定拡張アプリは前記S1903において受けとったアイコンをオペレーティングシステム1053に渡す。S1906において受け取ったアイコンをオペレーティングシステム1053は該当のプリンタキューとアイコンを紐づけて保存する。また、図18図19の何れの場合においても、記載のようにクラウドプリントサーバにアイコンを要求してもよいし、実施例3で述べたようにアイコンの格納場所を示すURL情報を要求したのち、そのURLからアイコン情報を印刷設定拡張アプリ1052がアイコン取得要求を行ってもよい。また、印刷設定拡張アプリ1052が予めアイコンが格納されたURL情報を保持しておき、接続しているプリンタのHWIDをクエリパラメータとしてアイコンが格納されたURLにアイコン要求を送信し、該当のアイコンを受け取ってもよい。
【0094】
S1703において、前記S1702でアイコンを受け取ることができない場合は、S1704に進む。S1704において今回不図示の手順によって取得した情報、例えばHWIDやmarker-typeによってパーソナル向け、あるいは、オフィス向けなど該当プリンタの属性判別をおこない、判別した属性に応じてデフォルトのアイコンを紐づけて保存してもよい。前記S1703において、前記S1702でアイコンを受け取ることができた場合は、該当のデバイスと紐づけて保存する。S1705において、起動した印刷設定拡張アプリ1052に紐づく全てのプリンタとアイコンの紐づけが完了した後に起動されたUIを表示する。また、その表示内容の一部としてステップS1702および、S1704において保存したアイコンを表示してもよい。
【0095】
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19