(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-24
(45)【発行日】2024-06-03
(54)【発明の名称】情報処理装置、制御方法、およびプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240527BHJP
G06F 8/61 20180101ALI20240527BHJP
【FI】
G06F3/12 325
G06F3/12 303
G06F3/12 336
G06F3/12 392
G06F8/61
(21)【出願番号】P 2023008158
(22)【出願日】2023-01-23
(62)【分割の表示】P 2021056909の分割
【原出願日】2017-01-26
【審査請求日】2023-02-20
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100114775
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100208580
【氏名又は名称】三好 玲奈
(72)【発明者】
【氏名】加藤 央
【審査官】漆原 孝治
(56)【参考文献】
【文献】特開2007-226747(JP,A)
【文献】特開2016-045575(JP,A)
【文献】特開2006-065388(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/12
G06F 8/61
(57)【特許請求の範囲】
【請求項1】
情報処理装置であって、
プリンタを探索する探索手段と、
前
記プリンタに送信される印刷データを
前記情報処理装置のオペレーティングシステムが備える標準印刷機能により生成することを
設定する設定手段と、
前記プリンタに送信される印刷データを前記標準印刷機能により生成する
ことが
前記設定手段により有効
に設定されている場合、前記プリンタに送信される印刷データを前記標準印刷機能により生成することを指示するためのオブジェクトを表示手段に表示させる制御手段と、を有し、
前記制御手段は、前記プリンタに送信される印刷データを前記標準印刷機能により生成する
ことが前記設定手段により有効
に設定されていない場合、前記オブジェクトを前記表示手段に表示させないことを特徴とする情報処理装置。
【請求項2】
前記標準印刷機能は、所定のフォーマットの印刷データを所定の通信プロトコルで前記プリンタに送信する機能であることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記所定の通信プロトコルは、InternetPrintingProtocolであることを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記所定のフォーマットは、PWG-Rasterであることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記探索手段により検出された前記プリンタに送信される印刷データを前記標準印刷機能により生成することが有効に設定されているかを判定する判定手段をさらに有し、
前記探索手段は、前記情報処理装置のオペレーティングシステムにより提供される手段であり、
前記判定手段は、前記探索手段により検出されたプリンタに対して
前記判定を行い、前記探索手段とは異なる探索手段により検出されたプリンタに対する
前記判定を行わないことを特徴とする請求項1乃至4の何れか一項に記載の情報処理装置。
【請求項6】
前記情報処理装置は前記異なる探索手段を提供するソフトウェアを記憶しており、
前記判定手段は、前記ソフトウェアの設定に基づき、前記判定を行うことを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記オブジェクトが選択されたことに基づき、前記標準印刷機能を用いて印刷データを生成する生成手段と、
前記生成手段が生成した前記印刷データを送信する送信手段と、
を有することを特徴とする請求項1乃至6のいずれか一項に記載の情報処理装置。
【請求項8】
情報処理装置の制御方法であって、
プリンタを探索する探索工程と、
前
記プリンタに送信される印刷データを
前記情報処理装置のオペレーティングシステムが備える標準印刷機能により生成する
かを設定する設定工程と、
前記プリンタに送信される印刷データを前記標準印刷機能により生成する
ことが
前記設定工程において有効
に設定されている場合、前記プリンタに送信される印刷データを前記標準印刷機能により生成することを指示するためのオブジェクトを表示手段に表示させる制御工程と、を有し、
前記制御工程において、前記プリンタに送信される印刷データを前記標準印刷機能により生成する
ことが有効に設定されていない場合、前記オブジェクトを前記表示手段に表示させないことを特徴とする情報処理装置の制御方法。
【請求項9】
前記標準印刷機能は、所定のフォーマットの印刷データを所定の通信プロトコルで前記プリンタに送信する機能であることを特徴とする請求項8に記載の制御方法。
【請求項10】
前記所定の通信プロトコルは、InternetPrintingProtocolであることを特徴とする請求項9に記載の制御方法。
【請求項11】
前記所定のフォーマットは、PWG-Rasterであることを特徴とする請求項10に記載の制御方法。
【請求項12】
前記オブジェクトが選択されたことに基づき、前記標準印刷機能を用いて印刷データを生成する生成工程と、
前記生成工程において生成された前記印刷データを送信する送信工程と、
を有することを特徴とする請求項8乃至11のいずれか一項に記載の制御方法。
【請求項13】
プリンタを探索する探索工程と、
前記プリンタに送信される印刷データを情報処理装置のオペレーティングシステムが備える標準印刷機能により生成するかを設定する設定工程と、
前記プリンタに送信される印刷データを前記標準印刷機能により生成することが前記設定工程において有効に設定されている場合、前記プリンタに送信される印刷データを前記標準印刷機能により生成することを指示するためのオブジェクトを表示手段に表示させる制御工程と、を情報処理装置に実行させるコンピュータプログラムであって、
前記制御工程において、前記プリンタに送信される印刷データを前記標準印刷機能により生成することが有効に設定されていない場合、前記オブジェクトを前記表示手段に表示させないことを特徴とするコンピュータプログラム。
【請求項14】
前記標準印刷機能は、所定のフォーマットの印刷データを所定の通信プロトコルで前記プリンタに送信する機能であることを特徴とする請求項13に記載のコンピュータプログラム。
【請求項15】
前記所定の通信プロトコルは、InternetPrintingProtocolであることを特徴とする請求項14に記載のコンピュータプログラム。
【請求項16】
前記所定のフォーマットは、PWG-Rasterであることを特徴とする請求項15に記載のコンピュータプログラム。
【請求項17】
前記オブジェクトが選択されたことに基づき、前記標準印刷機能を用いて印刷データを生成する生成工程と、
前記生成工程において生成された前記印刷データを送信する送信工程と、
を前記情報処理装置に実行させる請求項13乃至16のいずれか一項に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、制御方法、およびプログラムに関する。
【背景技術】
【0002】
近年、Android(登録商標)に代表されるスマートフォン等の携帯端末装置では、そのオペレーティングシステム(OS)で印刷機能を標準的にサポートするようになってきている。Windows(登録商標)に代表されるパーソナルコンピュータにおいて印刷機能を司るソフトウェアはプリンタドライバである。Androidではプリンタドライバの代わりにプリントプラグインというソフトウェアを用いる。
【0003】
プリントプラグインは、探索機能と印刷機能を備え、携帯端末装置の各アプリケーションからの要求に応じて探索機能を用いて検出したプリンタの一覧をユーザに提示し、ユーザが選択したプリンタに対して印刷ジョブを送信する。プリントプラグインは、プリンタベンダやアプリケーションベンダからGoogle Play(登録商標)などのアプリケーション配信サービスを介してユーザに提供される。
【0004】
ユーザがプリントプラグインの機能を利用するには、プリントプラグインをダウンロードし、インストールする必要がある。携帯端末装置の初期状態ではプリントプラグインが該携帯端末装置にインストールされておらず、携帯端末装置のユーザは印刷することができない。
【0005】
そこで、例えば、携帯端末装置のOSが、標準的な探索機能と印刷機能をあらかじめ備えることで携帯端末装置の初期状態においても最低限の印刷が可能となる。特許文献1は、OS付随の標準的なプリンタドライバしか使用できないOSにおいて、印刷するドキュメントのみに有効となる印刷装置独自の印刷機能を実現する印刷システムを開示している。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
標準的な探索機能と印刷機能をあらかじめ備える携帯端末装置は、特定の標準技術に絞って対応することにより、低コストで、該携帯端末装置に対応するプリンタの数を増やすことができる。特定の標準技術の一例としては、探索プロトコルはBonjour、印刷フォーマットはPWG-Raster、データ送信のための通信プロトコルはIPP(Internet Printing Protocol)などがある。
【0008】
しかしながら、プリンタによっては、すべての標準技術に対応していない場合がある。例えば、Bonjourの探索に対応するプリンタであっても、印刷フォーマットはPWG―Rasterに対応していないプリンタがある。この場合、該プリンタは、携帯端末装置にプリントプラグインが未インストールの状態であっても該携帯端末装置の標準の探索機能により検出される。
【0009】
このため、携帯端末装置において、印刷対象のプリンタとして該プリンタはプリンタ一覧に表示されてしまう。しかし、プリンタ一覧で該プリンタを選択したとしても、該プリンタは標準の印刷フォーマットに対応していないため、該携帯端末装置から該プリンタを使用して印刷することはできない。
【0010】
特許文献1では、標準の印刷フォーマットに対応していないプリンタについては考慮がなされていないため、ユーザは、該プリンタに対応するプリンタドライバを入手してインストールしない限り、印刷することができない。
【0011】
本発明は、モバイル端末から印刷する際に、該モバイル端末のOSが備える印刷システムと、プリントプラグインとを、ユーザの利便性を損なうことなく、ユーザの意図に沿うように使い分けることが可能となるモバイル端末を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の一実施形態の情報処理装置は、情報処理装置であって、プリンタを探索する探索手段と、前記プリンタに送信される印刷データを前記情報処理装置のオペレーティングシステムが備える標準印刷機能により生成することを設定する設定手段と、前記プリンタに送信される印刷データを前記標準印刷機能により生成することが前記設定手段により有効に設定されている場合、前記プリンタに送信される印刷データを前記標準印刷機能により生成することを指示するためのオブジェクトを表示手段に表示させる制御手段と、を有し、前記制御手段は、前記プリンタに送信される印刷データを前記標準印刷機能により生成することが前記設定手段により有効に設定されていない場合、前記オブジェクトを前記表示手段に表示させない。
【発明の効果】
【0013】
本発明のモバイル端末によれば、モバイル端末から印刷する際に、該モバイル端末のOSが備える印刷システムと、プリントプラグインとを、ユーザの利便性を損なうことなく、ユーザの意図に沿うように使い分けることが可能となる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態におけるネットワーク構成図である。
【
図2】情報処理装置のハードウェア構成例を示す図である。
【
図3】情報処理装置のソフトウェア構成例を示す図である。
【
図4】対応プリントプラグインテーブルの一例を示す図である。
【
図5】印刷システムが表示する画面の一例を示す図である。
【
図6】印刷システムが表示する画面の一例を示す図である。
【
図7】印刷設定画面が表示されるまでの動作を示すフローチャートである。
【
図8】印刷設定画面が表示されるまでの動作を示すフローチャートである。
【
図10】プリンタ一覧画面からプリンタが選択された際の動作を示す図である。
【
図11】プリントプラグインの設定画面の一例を示す図である。
【
図12】印刷設定画面が表示されるまでの動作を示すフローチャートである。
【
図13】印刷実行を指示された際の動作を示すシーケンス図である。
【発明を実施するための形態】
【0015】
以下、本発明を実施するための形態について図面などを参照して説明する。
【0016】
(第1実施形態)
図1は、本実施形態におけるネットワーク構成を示す図である。
携帯端末装置(モバイル端末)2000は、アクセスポイント2013を介してネットワークにアクセス可能である。ネットワークには、プリンタ1000、プリンタ1001、プリンタ1002が接続されている。
【0017】
図1に示すように、各プリンタは、モデル名、およびIPアドレスの情報を内部に保持する。また、各プリンタは、それぞれ異なる能力を有し、該能力を示す情報を内部に保持する。
【0018】
例えば、プリンタ1000は、処理可能な印刷フォーマットとして以下の形式に対応する。すなわち、プリンタ1000は、PDF(Portable Document Format)、PWG―Raster、およびJPEG(Joint Photographic Experts Group)に対応する。また、プリンタ1000は、通信プロトコルとして、LPR(Line Printer Remote)、およびIPP(Internet Printing Protocol)に対応する。
【0019】
図2は、携帯端末装置2000のハードウェア構成を例示した図である。
携帯端末装置2000は、SoC2001、RAM2002、フラッシュメモリ2003、Bluetooth部2004、WiFi部2005、およびNFC部2006を備える。また携帯端末装置2000は、電源2007、Voice/Audio部2008、タッチパネル2009、LED2010、カメラ部2011、およびセンサ部2012を備える。
【0020】
ハードウェア上の実行主体はSoC(System on a chip)2001であり、ソフトウェア上の制御主体は、フラッシュメモリ2003に格納されたプログラムである。フラッシュメモリ2003は、各種プログラムを記憶する。RAM(Random Access Memory)2002にはプログラムが展開され、SoCが解釈して実行する。
【0021】
Bluetooth部2004はBluetooth(登録商標)による通信を行う。WiFi部2005はアクセスポイント2013を介して無線通信を行う。NFC部2006は、近距離無線通信を行う通信部である。電源2007は、携帯端末装置2000内の各部に必要な電力を供給する。Voice/Audio部2008は、マイクやスピーカ等を備え、音声入出力に使用される。
【0022】
タッチパネル2009は、ユーザが手指で操作を行う操作入力部である。LED(Light Emitting Diode)2010は、各種の表示に使用される。カメラ部2011は、写真や動画の撮影を行う撮像部等を備える。センサ部2012は、GPS(Global Positioning System)や、加速度センサ、地磁気センサ、近接センサ等を備える。
【0023】
各部は、SoC2001に接続されており、携帯端末装置2000は、アクセスポイント2013を介してネットワークに接続可能である。本実施形態において、OS(オペレーティングシステム)は、例えば、Google社のAndroid OS(登録商標)を想定するが、これに限るものではない。
【0024】
図3は、携帯端末装置2000上で動作するソフトウェア構成を示す図である。
このソフトウェアのプログラムは、フラッシュメモリ2003に格納される。携帯端末装置2000にインストールされているアプリケーション112~114は、OSが備える印刷システム100を介して写真、文書、Webページ等のコンテンツ(データ)を表示および印刷する機能を有する。
【0025】
印刷システム100は、UI(User Interface)部101、制御部102、通信部103、プリントプラグイン管理部104、検出結果受信部105、標準プリンタ探索部106、および標準印刷部107から構成される。UI部101は、印刷システム100のユーザインタフェースである。制御部102は、携帯端末装置2000にインストールされているプリントプラグインの動作を制御する。
【0026】
通信部103は、WiFi部2005を使用してプリンタ1000~1002とネットワーク通信を行う。プリントプラグイン管理部104は、携帯端末装置2000にインストールされているプリントプラグインの情報を管理する。検出結果受信部105は、プリントプラグインがネットワーク上のプリンタを検出した結果の通知を受信する。
【0027】
標準プリンタ探索部106は、携帯端末装置2000のOSにあらかじめ搭載されたプリンタの探索機能であり、アプリケーション112~114からの要求に応じてネットワーク上のプリンタを探索する。標準印刷部107は、携帯端末装置2000にあらかじめ搭載された印刷機能である。標準印刷部107は、アプリケーション112~114からの要求に応じて、各アプリケーションから送信されたデータを標準の印刷フォーマットに変換した後、標準の通信プロトコルでプリンタに送信する。
【0028】
本実施形態では、印刷システム100が標準でサポートする第1の探索プロトコルと、第1の印刷方式を、それぞれ標準の探索プロトコル、標準の印刷方式と呼ぶ。印刷方式とは、所定の印刷フォーマットおよび所定の通信プロトコルを含む。本実施形態では、標準の探索プロトコルの一例として、例えば、Bonjourを用いる。また、標準の印刷方式の所定のフォーマットの一例として、例えば、PWG-Rasterを用いる。また、標準の印刷方式の所定の通信方式の一例として、IPPを用いる。本実施形態では、アプリケーション112~114から送信されるデータはPDF形式とする。
【0029】
ユーザがUI部101を介して印刷指示すると、アプリケーションがPDF形式のデータを標準印刷部107に送信する。標準印刷部107は、受信したデータを標準印刷フォーマットであるPWG-Rasterに変換するレンダラである。標準印刷部107は、変換したデータを、通信部103を介してプリンタ1000にIPPプロトコルを用いて送信する。
【0030】
プリントプラグイン200は、プリンタ探索部201、印刷処理部202、パッケージ名203、およびベンダ名204から構成される。プリントプラグイン200は、第1の探索プロトコルおよび第1の印刷方式とは異なる第2の探索プロトコルおよび第2の印刷方式をサポートする。プリントプラグイン200は、印刷システム100の標準プリンタ探索部106および標準印刷部107とは異なるプリンタの探索、印刷ジョブの生成、プリンタステータスの取得等の機能を実現することができる。
【0031】
プリントプラグイン200は、印刷システム100と印刷対象となるプリンタとの橋渡しを行う。なお、
図3ではプリントプラグイン200のみがインストールされている状態を示すが、携帯端末装置2000には複数のプリントプラグインをインストールできる。プリントプラグインは、必要に応じてインストールおよびアンインストールが可能であり、プリントプラグイン管理部104が各プリントプラグインのインストール状態を管理する。
【0032】
プリンタ探索部201は、マルチキャストまたはブロードキャストを使用してネットワーク上のプリンタを探索する。プリンタ探索部201は、探索プロトコルとしてSLP(Service Location Protocol)やMulticast―DNS(Domain Name System)等を使用する。なお、プリンタ探索部201が使用する探索プロトコルはこれに限るものではなく、例えば、プリントプラグイン毎に異なっていてもよい。
【0033】
印刷処理部202は、プリンタ1000~1002が印刷可能なPDL(Page Description Language)データまたはイメージデータに対してレンダリング処理を行う。パッケージ名203は、プリントプラグイン200に割り当てられたユニークな名称であり、例えば「jp.co.efg.xxxxx」とする。パッケージ名203は、プリントプラグイン毎に異なる名称が割り当てられ、それぞれのプリントプラグインが格納する。ベンダ名204は、プリントプラグイン200を提供するベンダの名称である。
【0034】
プリントプラグイン設定300は、プリントプラグイン200に関係する設定値を格納する領域である。プリントプラグイン設定300は、フラッシュメモリ2003に格納されている。対応プリントプラグインテーブル150は、標準プリンタ探索部106が検出したネットワーク上のプリンタと、該プリンタに対応するプリントプラグインの一覧を格納するテーブルである。以下、対応プリントプラグインテーブルの詳細について説明する。
【0035】
図4は、対応プリントプラグインテーブル150の一例を示す図である。
対応プリントプラグインテーブル150は、ベンダ名1101、パッケージ名1102、およびダウンロードサイト1103から構成される。ベンダ名1101は、標準プリンタ探索部106がネットワーク上のプリンタから取得したベンダ名を格納する。パッケージ名1102は、プリントプラグインのパッケージ名を格納する。
【0036】
ダウンロードサイト1103は、プリントプラグインのダウンロードサイトのURL情報を格納する。すなわち、対応プリントプラグインテーブル150は、プリントプラグインの一覧として、プリントプラグインのベンダ名、パッケージ名およびダウンロードサイトに関する情報を対応付けて格納する。対応プリントプラグインテーブル150を参照することにより、ネットワーク上で探索されたプリンタと該プリンタが対応するプリントプラグインとを結びつけることができる。
【0037】
このため、印刷システム100は、探索されたプリンタに対応するプリントプラグインが未インストールの場合にダウンロードサイトへ誘導することができる。例えば、テーブルデータ1104は以下の情報を示す。ベンダ名が“ABC”のプリンタは、対応するプリントプラグインのパッケージ名が“jp.co.abc.xxxxx”であり、該プリントプラグインのダウンロードサイトは、“http:store.abc.printplugin“である。
【0038】
図5および
図6は、印刷システム100が表示する画面の一例を示す図である。
図5(A)は、アプリケーション上で印刷対象のデータが表示された画面400を示す。ユーザが画面400上の印刷ボタン401をタップすると、印刷システム100のUI部101が呼び出される。印刷システム100のUI部101は、条件に応じて
図5(B)、
図5(C)、または
図6(A)に示す画面を表示する。
【0039】
本実施形態では、ユーザが
図5(A)で印刷ボタン401をタップすると、印刷システム100のUI部101が印刷設定画面を表示する。以下、印刷設定画面が表示されるまでの処理について説明する。
【0040】
図7および
図8は、印刷ボタン401がタップされた後の印刷システム100の動作の一例を示すフローチャートである。
図7および
図8に示す処理は、フラッシュメモリ2003に格納されたプログラムをRAM2002にロードし、SoC2001が実行することによって実現される。
【0041】
印刷ボタン401がタップされると、ステップS501で、印刷システム100の制御部102は、標準プリンタ探索部106にプリンタの探索を指示する。標準プリンタ探索部106は、通信部103を介して、標準の探索プロトコルであるBonjourを用いてネットワーク上のプリンタを探索する。ステップS502で、制御部102は、携帯端末装置2000にインストールされているプリントプラグイン200のプリンタ探索部201にプリンタの探索を指示する。
【0042】
ステップS504で、検出結果受信部105は、探索を指示された標準プリンタ探索部106およびプリンタ探索部201から検出したプリンタ情報を受信する。プリンタ情報は、標準プリンタ探索部106またはプリンタ探索部201が用いた探索プロトコルに準拠したメッセージとして受信される。例えば、探索プロトコルとしてBonjourを用いた場合、TXT Recordが受信される。ステップS504で、制御部102は、ステップS503にて受信したプリンタ情報を検出プリンタ一覧に登録する。以下、検出プリンタ一覧の詳細について説明する。
【0043】
図9は、検出プリンタ一覧の一例を示す図である。
検出プリンタ一覧700、モデル名701、IPアドレス702、通知元703、標準印刷対応704、ベンダ705、およびプラグイン706から構成される。検出プリンタ一覧700の1行のデータは、検出された1つのプリンタのデータを示す。検出プリンタ一覧700は、RAM2002上に格納される。
【0044】
モデル名701は、検出されたプリンタのモデル名を格納する。IPアドレス702は、検出されたプリンタのIPアドレスを格納する。通知元703は、ステップS503で検出結果受信部105が検出結果を受信した際の通知元情報を格納する。ステップS503で検出結果受信部105が標準プリンタ探索部106から検出結果を受信した場合、通知元703には「標準探索」が格納される。
【0045】
一方、ステップS503で検出結果受信部105がプリントプラグイン200のプリンタ探索部201から検出結果を受信した場合、通知元703にはプリントプラグインのパッケージ名が格納される。
図9に示す例では、モデル名701が「Printer-D」の検出結果は、プリントプラグイン200が通知元であり、通知元703にはプリントプラグイン200のパッケージ名である「jp.co.efg.xxxxx」が格納されている。
【0046】
標準印刷対応704は、標準印刷部107が生成する印刷ジョブへの対応の有無を格納する。
図9に示す例では、標準印刷部107が生成する印刷ジョブへ対応する場合、標準印刷対応704には「〇」が格納され、対応しない場合、「×」が格納される。詳細には、本実施形態では、検出されたプリンタが標準の印刷フォーマットであるPWG-Raster、および標準の通信プロトコルであるIPPの両方に対応していると制御部102が判定した場合、標準印刷対応704に「○」が格納される。
【0047】
一方、標準の印刷フォーマット、標準の通信プロトコルのいずれかに対応していないと制御部102が判定した場合、標準印刷対応704には「×」が格納される。制御部102は、標準プリンタ探索部106が受信するプリンタからの応答の内容により、標準の印刷フォーマット、および標準の通信プロトコルへの対応の有無を判定する。なお、標準印刷対応704は、検出結果の通知元が標準プリンタ探索部106である場合にのみ格納され、通知元がプリントプラグイン200である場合は「非適用」を意味する「NA」が格納される。
【0048】
ベンダ705は、検出されたプリンタを提供するベンダの名称を格納する。プラグイン706は、携帯端末装置2000上に該プリンタに対応するプリントプラグインがインストールされているか否かの情報を格納する。携帯端末装置2000上に対応するプリントプラグインがインストールされている場合は「インストール済」が格納され、インストールされていない場合は「未インストール」が格納される。
【0049】
携帯端末装置2000上に該プリンタに対応するプリントプラグインがインストールされているか否かは、プリントプラグイン管理部104が、各プリンタのベンダ名に対応するプリントプラグインがインストールされているか否かを参照して判定する。なお、プラグイン706は、検出結果の通知元が標準プリンタ探索部106である場合にのみ格納され、通知元がプリントプラグイン200である場合は「非適用」を意味する「NA」が格納される。
【0050】
図7のフローチャートの説明に戻る。ステップS505で、制御部102は、ステップS503にて受信したプリンタ情報が示すプリンタが、印刷システム100を介して前回印刷に使用したプリンタであるか否かを判定する。詳細には、制御部102は、印刷システム100を介して前回印刷した際にフラッシュメモリ2003に格納しておいたプリンタ情報(不図示)を基に判定する。
【0051】
ステップS505にて前回印刷に使用したプリンタであると判定された場合、処理はステップS506に進み、制御部102は、
図5(B)に示す印刷設定画面402に表示する印刷対象となるプリンタを、前回印刷に使用したプリンタに決定する。
【0052】
図5(B)に示す印刷設定画面402は、ターゲットプリンタ表示領域403、印刷設定領域404、および印刷ボタン405を備える。ターゲットプリンタ表示領域403は、印刷対象とするプリンタを表示する領域である。ユーザは、印刷ボタン405をタップすることにより、印刷システム100の利用を指示する。ユーザが印刷設定領域404で所望の印刷設定を確定させた後、印刷ボタン405をタップすることで、ターゲットプリンタ表示領域403に表示された印刷対象となるプリンタに対し、アプリケーションのデータが送信される。
【0053】
図5(B)に示す例では、ステップS505にて前回印刷に使用したプリンタであると判定された、IPアドレスが「192.168.0.10」のプリンタ名が「Printer-A」のプリンタがターゲットプリンタ表示領域403で選択されている。データの出力先を別のプリンタに変更する場合には、ユーザがターゲットプリンタ表示領域403をタップする。
【0054】
ターゲットプリンタ表示領域403がタップされると、
図6(B)に示すプリンタ一覧画面408が表示される。
図6(B)のプリンタ一覧画面408は、UI部101が、検出プリンタ一覧700(
図9)に格納されているプリンタ情報を基に、ネットワーク上のプリンタを表示する。プリンタ一覧画面408上でプリンタをタップにより選択した場合の処理の詳細は、
図10を用いて後述する。
【0055】
一方、ステップS505にて前回印刷に使用したプリンタではないと判定された場合、処理はステップS507に進み、制御部102は、ステップS503にて検出されたプリンタが最後のプリンタであるか否かを判定する。ステップS507にて最後のプリンタであると判定された場合、処理は
図8のステップS508に進む。一方、S507にて最後のプリンタではないと判定された場合、処理はステップS503に戻り、ステップS503~S507の処理を繰り返す。
【0056】
ステップS508で、制御部102は、ステップS505にて前回印刷に使用したプリンタであると判定したプリンタが見つかったか否かを判定する。ステップS508にて前回印刷に使用したプリンタが見つかっていないと判定された場合、処理はステップS509に進み、見つかったと判定された場合、処理はステップS510に進む。
【0057】
ステップS509で、制御部102は、ステップS504にて登録された検出プリンタ一覧700(
図9)の中から、1つのプリンタを選択する。そして、UI部101が、選択されたプリンタを
図5(B)のターゲットプリンタ表示領域403に表示する。なお、ステップS509にて制御部102がプリンタを選択する際に、どのような基準で選択してもよい。制御部102は、例えば、ステップS503にて最初に検出されたプリンタを優先的に選択してもよく、また、検出プリンタ一覧700の標準印刷対応704が「○」のプリンタを優先的に選択してもよい。
【0058】
ステップS510で、制御部102は、検出プリンタ一覧700を参照してターゲットプリンタ表示領域403に表示するプリンタの通知元703が「標準探索」であるか否かを判定する。ステップS510にて通知元703が「標準探索」ではないと判定された場合、処理はステップS512に進み、「標準探索」であると判定された場合、処理はステップS511に進む。
【0059】
ステップS511で、制御部102は、検出プリンタ一覧700を参照してターゲットプリンタ表示領域403に表示されているプリンタの、標準印刷対応704が「〇」であるか否かを判定する。ステップS511にて、標準印刷対応704が「〇」であると判定された場合、処理はステップS512に進み、標準印刷対応704が「〇」以外であると判定された場合、処理はステップS513に進む。
【0060】
ステップS512で、制御部102は、UI部101を介して
図5(B)に示すようにターゲットプリンタ表示領域403、印刷設定領域404、および印刷ボタン405を含む印刷設定画面402を表示し、処理を終了する。なお、本実施形態では、印刷設定画面402の一例として
図5(B)を用いたが、ステップS510にて通知元が標準探索かプリントプラグインかに応じて、ステップS512で表示される印刷設定画面402の内容は異なる。
【0061】
ステップS513で、制御部102は、ターゲットプリンタ表示領域403に表示されているプリンタに対応するプリントプラグインがアプリケーション配信サービスであるストアで利用可能か否かを判定する。詳細には、制御部は、対応プリントプラグインテーブル150(
図4)を参照し、ターゲットプリンタ表示領域403に表示されているプリンタのベンダ名と紐づけられたプリントプラグインが存在する場合、プリントプラグインがストアで利用可能と判定する。
【0062】
ステップS513にて、対応するプリントプラグインがストアで利用可能と判定された場合、処理はステップS514に進み、利用可能でないと判定された場合、処理はステップS515に進む。ステップS514で、制御部102は、UI部101を介して
図5(C)に示すように印刷設定領域404を非表示とし、印刷ボタン405の代わりにダウンロードボタン406を追加で表示し、処理を終了する。
【0063】
すなわち、制御部102は、標準の探索プロトコルにより検出されたプリンタが標準の印刷方式に対応していない場合、プリンタに対応するプラグインをダウンロードするための機能を起動するオブジェクトを表示するように表示制御する。本実施形態では、ダウンロードボタン406が、該プリンタに対応するプリントプラグインをダウンロードするための機能を起動するための手段である。
【0064】
ダウンロードボタン406がタップされると、
図6(C)に示すように、ターゲットプリンタ表示領域403に表示されているプリンタに対応するプリントプラグインのストア画面410に遷移する。
図6(C)のストア画面410上でインストールボタン411がタップされると、プリントプラグイン管理部104が、該プリンタに対応するダウンロードサイト1103で提供されているプリントプラグインを携帯端末装置2000にダウンロードする。
【0065】
そして、プリントプラグイン管理部104は、ダウンロードしたプリントプラグインを携帯端末装置2000にインストールする。なお、本実施形態では、該プリントプラグインをダウンロードするための機能を起動するための手段としてダウンロードボタン406を示したが、これに限られるものではない。例えば、ステップS513の判定にて対応するプリントプラグインがストアで利用可能と判定された場合、該プリントプラグインのストア画面410に直接遷移するように表示制御してもよい。
【0066】
ステップS515で、制御部102は、UI部101を介して
図6(A)に示すように印刷設定領域404を非表示とし、印刷ボタン405の代わりにグレイアウトしたダウンロードボタン407を表示し、処理を終了する。
【0067】
次に、
図6(B)に示したプリンタ一覧画面408上でプリンタが選択された際に印刷システム100が実行する処理について説明する。
図10は、
図6(B)に示したプリンタ一覧画面408上でプリンタ409が選択された際の、印刷システム100の動作の一例を示すフローチャートである。
図10に示す処理は、フラッシュメモリ2003に格納されたプログラムをRAM2002にロードし、SoC2001が実行することによって実現される。
【0068】
プリンタ一覧画面408上で、プリンタ409がタップされたとする。ステップS601で、制御部102は、タップされたプリンタの情報を検出プリンタ一覧700(
図9)から取得する。ステップS602で、制御部102は、ステップS601にて取得したプリンタ情報の通知元703が「標準探索」であるか否かを判定する。
【0069】
ステップS602にて通知元703が「標準探索」であると判定された場合、処理はステップS603に進む。一方、ステップS602にて通知元703が「標準探索」ではない、すなわちプリントプラグイン200のプリンタ探索部201が通知元であると判定された場合、処理はステップS604に進む。
【0070】
ステップS603で、制御部102は、ステップS601にて取得したプリンタ情報の標準印刷対応704が「〇」、すなわち標準印刷対応のプリンタであるか否かを判定する。ステップS603にて、標準印刷対応のプリンタであると判定された場合、処理はステップS604に進み、標準印刷対応のプリンタではないと判定された場合、処理はステップS605に進む。
【0071】
ステップS604で、制御部102は、UI部101を介して
図5(B)の印刷設定画面402を以下の状態で表示する。すなわち、印刷設定画面402のターゲットプリンタ表示領域403には、プリンタ一覧画面408にてタップされたプリンタ409が表示される。そして、制御部102は、処理を終了する。
【0072】
ステップS605で、制御部102は、プリンタ一覧画面408でタップされたプリンタ409に対応するプリントプラグインがストアで利用可能か否かを判定する。制御部102が行う利用可能か否かの判定はステップS513と同様のため、詳細な説明は省略する。ステップS605にて、対応するプリントプラグインがストアで利用可能と判定された場合、処理はステップS606に進み、利用可能でないと判定された場合、処理はステップS607に進む。
【0073】
ステップS606で、制御部102は、UI部101を介して
図6(C)に示すようにプリンタ一覧画面408で選択されたプリンタ409に対応するプリントプラグインのストア画面410を表示し、処理を終了する。ステップ607で、制御部102は、UI部101を介して利用可能なプリントプラグインがないことを示すエラーメッセージ(不図示)を表示し、処理を終了する。
【0074】
以上のように、本実施形態によれば、モバイル端末から印刷する際に、該モバイル端末のOSが備える印刷システムと、プリントプラグインとを、ユーザの利便性を損なうことなく、ユーザの意図に沿うように使い分けることが可能となる。例えば、標準の探索プロトコルで検出された、標準の印刷方式に対応していないプリンタを選択した場合、該プリンタに対応するプリントプラグインが未インストールであれば、該プリントプラグインをダウンロードするように誘導することができる。
【0075】
(第2実施形態)
プリンタが標準印刷に対応している場合、インストール済みのプリントプラグイン200のプリンタ探索部201と、印刷システム100の標準プリンタ探索部106とは、同一のプリンタを検出しうる。この場合、第1実施形態では、同一のプリンタがプリンタ一覧画面に重複して表示される。ユーザには、同一のプリンタが重複してプリンタ一覧画面に表示されることは煩わしい。
【0076】
しかしながら、単純に標準プリンタ探索部106が検出したプリンタをプリンタ一覧画面において非表示にすると、標準の印刷機能を使い続けたいユーザにとっては不便である。これに対して、本実施形態では、プリントプラグインと印刷システムとが同一のプリンタを検出した場合に、同一プリンタが重複して表示される煩わしさを解消しつつ、標準の印刷機能を使用したいユーザにとっての利便性が損なわれないように設定できる。
【0077】
図11は、インストール済みのプリントプラグインの設定画面の一例を示す図である。
図11(A)は、インストール済みのプリントプラグインの印刷設定画面800を示す。印刷設定画面800は、プリントプラグイン一覧801を有する。プリントプラグイン一覧801には、携帯端末装置2000上にインストールされたプリントプラグインの一覧が表示される。プリントプラグイン一覧801上で特定のプリントプラグインをタップすると、選択されたプリントプラグインに関する設定を行うプリントプラグイン設定画面810に遷移する。
【0078】
図11(B)は、印刷設定画面800上でタップされた特定のプラグインに関する設定を行うプリントプラグイン設定画面810を示す。プリントプラグイン設定画面810は、プリントプラグインの有効化設定811、およびプリンタ一覧812を有する。プリントプラグインの有効化設定811は、プリントプラグイン設定画面810で対象となっている特定のプリントプラグインを有効化または無効化する。
【0079】
プリントプラグインの有効化設定811において該プリントプラグインが無効化された場合、印刷システム100が該プリントプラグインの呼び出しを行わない。プリンタ一覧812は、該プリントプラグインのプリンタ探索部201が探索したプリンタの一覧を表示する。プリンタ一覧812で表示されたプリンタをタップすると、選択されたプリンタに関する設定を行うプリンタ設定画面に遷移する。
【0080】
図11(C)は、プリントプラグイン設定画面810上でタップされたプリンタに関する設定を行うプリンタ設定画面820を示す。プリンタ設定画面820は、プリントプラグインのプリンタ探索部201が探索するプリンタ毎に存在する。プリンタ設定画面820は、標準印刷機能の有効化設定821を有する。標準印刷機能の有効化設定821は、プリンタ設定画面820で対象となっているプリンタの標準印刷機能を有効化または無効化する。
【0081】
プリンタ設定画面820において該プリンタの有効化設定821が「ON」に設定されると、標準印刷機能を有効化する。また、プリンタ設定画面820において該プリンタの有効化設定821が「OFF」に設定されると、標準印刷機能を無効化する。標準印刷機能の有効化設定821の設定内容は、プリントプラグイン設定300(
図3)として、フラッシュメモリ2003に格納される。
【0082】
図12は、本実施形態において、
図5(A)の印刷ボタン401がタップされた後の印刷システム100の動作の一例を示すフローチャートである。
なお、第1実施形態において印刷システム100の動作として説明したフローチャート(
図7および
図8)と同一の処理については同一の符号を付与し、その説明は省略する。
図12に示す処理は、フラッシュメモリ2003に格納されたプログラムをRAM2002にロードし、SoC2001が実行することによって実現される。
【0083】
ステップS501~S503の処理が実行された後、ステップS901で、制御部102は、ステップS503にて検出結果受信部105が受信したプリンタ情報の通知元が標準プリンタ探索部106であるか否かを判定する。ステップS901にて、通知元が標準プリンタ探索部106であると判定された場合、処理はステップS902に進み、標準プリンタ探索部106ではないと判定された場合、処理はステップS504に進む。
【0084】
ステップS902で、制御部102は、プリントプラグイン200のプリンタ探索部201にステップS503にて受信したプリンタ情報が示すプリンタの標準印刷機能の有効化設定を問い合わせる。プリントプラグイン200のプリンタ探索部201は、プリントプラグイン設定300に格納された該プリンタの有効化設定821を参照し、その結果を制御部102に通知する。
【0085】
ステップS903で、制御部102は、ステップS902にてプリントプラグイン200のプリンタ探索部201から通知された有効化設定を基に、該プリンタの標準印刷機能が有効化されているか否かを判定する。ステップS903にて標準印刷機能が有効化されていると判定された場合、処理はステップS504に進み、制御部102は、ステップS503にて受信したプリンタ情報を検出プリンタ一覧700に登録する。
【0086】
一方、ステップS903にて標準印刷機能が無効化されていると判定された場合、ステップS503にて受信したプリンタ情報を検出プリンタ一覧700に登録せずにステップS507に進む。すなわち、標準印刷機能が無効化されているプリンタは、標準プリンタ探索部106の検出結果として
図5(B)のターゲットプリンタ表示領域403や、
図6(B)のプリンタ一覧画面408には表示されない。
【0087】
なお、該プリンタは、プリントプラグイン200のプリンタ探索部201の検出結果としては、
図5(B)のターゲットプリンタ表示領域403や、
図6(B)のプリンタ一覧画面408に表示される。言い換えると、標準印刷機能が無効化されているプリンタは、標準の探索プロトコルに従う印刷対象とはしないが、プリントプラグインの探索プロトコルに従う印刷対象とする。
【0088】
(第3実施形態)
同じプリンタに対して、プリントプラグイン200を用いて印刷した場合と印刷システム100の標準印刷機能を用いて印刷した場合とでは、印刷処理部が異なることにより印字結果に差異が生じることがある。このような場合に、標準印刷機能の印字結果を好むユーザが、標準印刷機能を使い続けることが考えられる。
【0089】
しかし、この場合、ベンダが提供するプリントプラグイン200の拡張機能を使うことができない。そこで、本実施形態では、プリントプラグイン200が標準印刷部107の印刷機能を利用することにより、印刷データの生成には標準印刷機能を使用しつつ、プリントプラグインの拡張機能をも利用できるようになる。
【0090】
図13は、
図5(B)の印刷ボタン405がタップされた後の印刷システム100およびプリントプラグイン200の動作の一例を示すシーケンス図である。
図13に示す処理は、フラッシュメモリ2003に格納されたプログラムをRAM2002にロードし、SoC2001が実行することによって実現される。
【0091】
本実施形態では、
図5(B)において印刷対象として選択されているターゲットプリンタ表示領域403に表示されたプリンタに対応するプリントプラグイン200は、携帯端末装置2000に既にインストールされているものとする。
図5(B)において印刷ボタン405がタップされると、
図13の処理が開始される。ステップS1201で、印刷システム100の制御部102は、プリントプラグイン200の印刷処理部202に印刷ジョブの初期化を指示する。
【0092】
ステップS1202で、プリントプラグイン200の印刷処理部202は、フラッシュメモリ2003に格納されたプリントプラグイン設定300(
図3)の標準印刷機能の有効化設定821の設定内容を取得する。ステップS1203で、印刷処理部202は、ステップS1202にて取得したプリントプラグイン設定300を参照し、標準印刷機能が有効化されているか否かを判定する。
【0093】
ステップS1203にて標準印刷機能が無効化されていると判定された場合、処理はステップS1204進み、有効化されていると判定された場合、処理はステップS1205に進む。なお、ステップS1203の判定において、印刷処理部202は、プリントプラグイン設定300に格納された標準印刷機能の有効化設定821を参照しているが、これに限るものではない。例えば、標準印刷機能の有効化または無効化の設定を
図5(B)の印刷設定領域404において表示し、印刷を実行する毎に、すなわち印刷ジョブ毎に設定できるようにしてもよい。
【0094】
ステップS1204で、印刷処理部202は、印刷ジョブのデータ形式として「PDF」を印刷システム100の制御部102に通知する。ステップS1205で、印刷処理部202は、印刷ジョブのデータ形式として「JPEG」を印刷システム100の制御部102に通知する。
【0095】
ステップS1206で、印刷システム100の制御部102は、プリントプラグイン200の印刷処理部202から通知された印刷ジョブのデータ形式の情報を受信する。ステップS1207で、制御部102は、ステップS1206にて受信した印刷ジョブのデータ形式の情報を参照し、データ変換が必要か否かを判定する。本実施形態では、印刷時にアプリケーション112から印刷システム100に送信されるデータの形式は、PDF形式とする。
【0096】
ステップS1206にて受信したデータ形式の情報がPDF形式以外の場合、データ変換が必要と判定され、処理はステップS1208に進み、データ変換が必要ではないと判定された場合、処理はステップS1209に進む。ステップS1208で、印刷システム100の標準印刷部107は、アプリケーション112から送信されるPDF形式のデータをラスタライズ処理した後、JPEG形式に変換する。
【0097】
すなわち、印刷処理部202は、ステップS1204にてデータ形式を制御部102に通知することにより、印刷システム100にデータ変換、すなわち印刷データの生成を要求する。なお、本実施形態では、JPEG形式に変換する例について説明するが、これに限るものではなく、どのような形式であってもよい。
【0098】
ステップS1209で、制御部102は、プリントプラグイン200の印刷処理部202に印刷指示する。このとき、制御部102は、印刷データとともに印刷データのデータ形式の情報を印刷処理部202に送信する。詳細には、ステップS1207にてデータ変換が必要と判定された場合、ステップS1208にてデータ形式を変換された印刷データが印刷処理部202に送信される。
【0099】
一方、ステップS1207にてデータ変換が必要ではないと判定された場合、印刷データとしてアプリケーション112からPDF形式のデータが印刷処理部202に送信される。ステップS1210で、プリントプラグイン200の印刷処理部202は、印刷システム100の制御部102から送信された印刷データおよび印刷データのデータ形式の情報を受信する。
【0100】
ステップS1211で、印刷処理部202は、ステップS1210にて受信した印刷データのデータ形式の情報を基にデータ変換が必要か否かを判定する。印刷対象として選択されているプリンタ、すなわち
図5(B)のターゲットプリンタ表示領域403が示すプリンタの標準印刷機能の有効化設定821(
図11)が「ON」に設定されている場合、ステップS1210にてJPEG形式の印刷データを受信する。このため、ステップS1211の判定ではデータ変換が必要ではないと判定され、処理はステップS1213に進む。
【0101】
一方、印刷対象として選択されているプリンタ、すなわち
図5(B)のターゲットプリンタ表示領域403が示すプリンタの標準印刷機能の有効化設定821が「OFF」に設定されている場合、ステップS1210にてPDF形式の印刷データを受信する。このため、ステップS1211の判定ではデータ変換が必要と判定され、処理はステップS1212に進む。
【0102】
ステップS1212で、プリントプラグイン200の印刷処理部202は、ステップS1210にて受信したPDF形式のデータをラスタライズ処理した後、JPEG形式に変換する。ステップS1213で、印刷処理部202は、
図5(B)の印刷設定領域404で設定された設定値を反映したジョブ属性とともに、印刷データを印刷対象となるプリンタに送信し、処理を終了する。
【0103】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0104】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。