説明

携帯電話及び印刷システムとその制御方法

【課題】 プリンタのCapabilityに、所定の印刷機能が含まれていない場合には、携帯電話側からの操作で、その所定の印刷指示を行う手段が存在しなかった。
【解決手段】 携帯電話と印刷装置との直接通信により携帯電話から供給される画像データに基づいて印刷装置により画像を印刷する印刷システムであって、印刷装置の印刷機能を取得し(S12)、形態電話のUIを使用して入力された印刷仕様が印刷装置の印刷機能では実現できない場合、携帯電話からサーバに対応する処理を要求し(S5)、サーバで処理された結果を受け取って(S9)印刷装置により画像を印刷させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、携帯電話と印刷装置との直接通信により携帯電話から供給される画像データに基づいて印刷装置により画像を印刷する印刷システム及び携帯電話とその制御方法に関するものである。
【背景技術】
【0002】
近年、画像を撮影し、その撮影した画像をデジタル画像データで出力できるデジタルカメラが広く使用されるようになってきている。また、このようなカメラ機能を備えた携帯電話も広く普及してきている。このようなカメラや携帯電話で撮影した画像を印刷して写真として使用する場合には、通常、一旦、そのデジタル画像データをデジタルカメラ或は携帯電話からPC(コンピュータ)に取り込み、PCで画像処理を行った後、PCからカラープリンタ等の印刷装置に出力して印刷するのが一般的であった。
【0003】
これに対して最近は、PCを介することなく、直接、カメラから印刷装置にデジタル画像データを伝送して印刷することができるカラープリントシステムや、カメラに搭載され、撮像した画像データを記憶しているメモリカードを直接カラープリンタに装着し、そのメモリカードに記憶されている画像データを読み出して印刷できる、所謂フォトダイレクト(PD)プリンタ等も開発されている。特にカメラ等から直接、USB等のインターフェースを介してカラープリンタに画像データを転送して印刷できるシステムは、カメラダイレクト、USBダイレクトもしくはデジカメダイレクトプリント等と呼ばれ、PCの操作が苦手なユーザに対しても広く普及し始めている。更に近年、カメラダイレクト印刷等における通信プロトコルを規定したPictBridgeという業界標準規格が発表されてから、カメラから直接プリンタに画像データを送信して印刷することが広く行われるようになってきている。
【0004】
最近、このようなカメラダイレクトプリント機能を採用したプリンタが市場に流通し始めてきたことに伴い、カメラ機能を搭載した携帯電話にも、ダイレクトプリント機能を採用して、携帯電話で撮影した画像を直接プリンタに転送して印刷させるといった新しいソリューションも出現し始めている。PictBridgeでは、プリンタのCapabilityに応じた画像データを画像供給装置(デジカメや携帯電話)からプリンタに供給している。また、前述のカメラ機能を搭載した携帯電話で撮影された画像も多くはEXIF/JPEGで符号化されており、プリンタ側も、画像フォーマットとしてEXIF/JPEGに対応している。このような場合は、直接、符号化された画像データを直接USBケーブルを介してプリンタに送出している。
【0005】
このようにプリンタが処理可能な画像フォーマットは、写真印刷に適しているEXIF/JPEGだけの場合が多いが、今後は市場のニーズに対応しつつ携帯電話で扱われる画像フォーマットも多種多様になると予想される。
【0006】
特に携帯電話では、インターネット網や独自の通信網を活用した各種通信サービスがユーザに提供されており、その代表的なものにメールサービスがある。このメールサービスでは、写真画像のデータや他のフォーマットのデータをメールに添付するサービスがあり、ユーザ同士で種種のフォーマットの画像データがやり取りされる。従って、カメラダイレクトで印刷を行う場合、前述した画像フォーマット以外にも、各種フォーマットの画像データを扱いたいという要求が生じることは明らかである。
【0007】
しかし、プリンタの実装に関してリソースの限度があるため、これら多種多様な画像フォーマットに対応することは大変難しい。またデジタルカメラや携帯電話においても、プリンタと同様に、多種多様な画像フォーマットに対処できる機能を実装することに限界があるため、全ての画像フォーマットに対応可能とすることは実用的ではない。
【0008】
このようなカメラをインターネットに接続し、そのカメラで処理できない画像処理を行いたい場合には、インターネット上のサーバに画像データを転送して、撮影した画像の加工変換を行わせ、その変換後の画像データを受信することが提案されている(特許文献1)。
【特許文献1】特開2001−189886号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかし上述の特許文献1に記載の技術は、あくまでもカメラが有していない機能をサーバにより代行させるものである。これに対して、カメラとプリンタとを接続して印刷を行う場合に、プリンタのCapabilityに含まれていない機能(例えばN−up印刷や日付印刷等)は、実現することができなかった。つまり従来はプリンタのCapabilityに応じて、N−up印刷や日付印刷指定をカメラ側のUIで選択できる仕組みであり、プリンタのCapabilityにそれらの機能(N−upや日付指定印刷)が含まれていない場合には、携帯電話側からの操作で印刷指示を行う手段が存在しなかった。
【0010】
本発明は上記問題点に鑑みてなされたもので、本願発明の特徴は、携帯電話から直接印刷装置に画像データを供給して印刷を行う場合に、印刷装置が有していない機能をサーバに代行させることにより、携帯電話及び印刷装置が有していない機能を実現して印刷を行うことができる携帯電話及び印刷システムとのその制御方法を提供することにある。
【課題を解決するための手段】
【0011】
本発明の一態様に係る印刷システムは以下のような構成を備える。即ち、
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷する印刷システムであって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記入力手段で入力された印刷仕様が、前記取得手段で取得した前記印刷装置の印刷機能では実現できない場合、前記携帯電話からサーバに対応する処理を依頼する手段と、
前記サーバにより処理された結果に基づいて、前記印刷装置により画像を印刷させるように制御する印刷制御手段とを有することを特徴とする。
【0012】
本発明の一態様に係る携帯電話は以下のような構成を備える。即ち、
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話であって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記入力手段で入力された印刷仕様が、前記取得手段で取得した前記印刷装置の印刷機能では実現できない場合、通信網を介してサーバに対応する処理を依頼する手段と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御手段とを有することを特徴とする。
【0013】
本発明の一態様に係る印刷制御方法は以下のような工程を備える。即ち、
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷させる印刷制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記入力工程で入力された印刷仕様が、前記取得工程で取得した前記印刷装置の印刷機能では実現できない場合、前記携帯電話からサーバに対応する処理を依頼する工程と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御工程とを有することを特徴とする。
【0014】
本発明の一態様に係る携帯電話の制御方法は以下のような工程を備える。即ち、
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話の制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記入力工程で入力された印刷仕様が、前記取得工程で取得した前記印刷装置の印刷機能では実現できない場合、通信網を介してサーバに対応する処理を依頼する工程と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御工程とを有することを特徴とする。
【発明の効果】
【0015】
本発明によれば、携帯電話に実装する機能を抑えて、各種形式の画像データの印刷や画像処理を実行できるという効果がある。
【0016】
また本発明によれば、サーバで処理された画像データをサーバに保存させ、またサーバから対象画像をダウンロードして印刷することができる。
【発明を実施するための最良の形態】
【0017】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、この接続形態では、接続確認時もしくは印刷を開始する前に携帯電話がプリンタのCapabilityを取得する場合で説明をしている。更に、この携帯電話はインターネットに接続可能であり、インターネットを介してサーバとの間でデータのやり取りを行うことができる。
【0018】
図1は、本発明の実施の形態に係る印刷システムを説明する概念図である。
【0019】
この印刷システムは、カメラ機能付き携帯電話(CP)3020とフォトダイレクトプリンタ装置(PDプリンタ)1000との間で、汎用のインターフェースを介して通信し、CP3020からPDプリンタ1000に画像データを供給して印刷させるのを基本構成としている。尚、この汎用インターフェースは、例えばUSB、IEEE.11B/G等の無線インターフェースをも含む。また、CP3020は、特にカメラ機能を有していなくても、インターネット101と接続して、例えばプロバイダ104,203から画像データを受信できるものであっても良い。
【0020】
図において、インターネット通信網101には、アクセスポイント102、サービスプロバイダ104、サーバ105、コンテンツプロバイダ203が接続されている。CP3020は、アクセスポイント102を介してインターネット通信網101と接続可能である。このような構成において、CP3020は、サービスプロバイダ104より提供される各種情報を受信して、CP3020の表示部に表示したり、コンテンツプロバイダ203から供給される音楽や画像データを受信してCP3020のメモリに保存したり、或は表示部に表示したり、音響信号としてスピーカより再生することができる。PDプリンタ1000の構成については詳しく後述する。
【0021】
CP3020により撮影した画像、或はプロバイダから受信した画像データ、更には他の携帯電話から受信した画像を印刷する場合には、CP3020はインターフェースを介して接続されているPDプリンタ1000の機能(Capability)を確認し、そのPDプリンタ1000の機能に対応できない画像データ等を印刷したい場合、或はPDプリンタ1000が有していない印刷モードで印刷を行いたい場合には、まずインターネット通信網101を介してサーバ105にその画像データを送信し、サーバ105に対して、PDプリンタ1000における印刷仕様に適合した画像フォーマット或は画像データに変換させる。こうして変換された画像データを、インターネット通信網101を介してサーバ105から受取り、その受信した、変換された画像データをPDプリンタ1000に送信して印刷する。
【0022】
また、所定対象の画像データ量が多くてサーバ105における画像データの変換処理に多くの時間が掛かると予想される場合には、前述と同様にして、まずサーバ105に対して画像データを送信し、PDプリンタ1000における印刷仕様に適合した画像フォーマット或は画像データに変換した後、その変換した画像データを、一旦サーバ105のメモリに記憶させる。こうしてサーバ105で記憶された画像データのアドレスを示すURLをサーバ105から受取る。そしてCP3020が印刷を行いたい場合には、そのURLにアクセスして、変換された画像データを取得し、その取得した画像データをPDプリンタ1000に送信して印刷する。
【0023】
図2は、本実施の形態に係るカメラ付き携帯電話機(CP)3020の構成を示すブロック図である。尚、このようなカメラ付き携帯電話機のハードウェアは公知であるので簡単に説明する。
【0024】
図において、CPU31は、ROM32に記憶されている制御プログラムに従って、このCP3020全体の制御を司っている。ROM32は、CPU31により実行される処理手順(ファームウェア)を記述したプログラムを記憶している(但し、ファームウェアは適宜バージョンアップが行われることを想定し、書き込み可能な不揮発性メモリ、例えばフラッシュメモリで構成される)。RAM33は、CPU33による処理の実行時にワークエリアとして使用され、各種データを一時的に記憶する。操作ボタン及びスイッチ群34は、数字入力や文字入力に使用されるテンキーや通話キー、各種機能を指示するスイッチ等を含んでいる。液晶表示部35は、カメラ機能を利用して撮像した画像、或はメモリカード40に記憶されている画像を画面上で確認したり、各種設定を行う際のメニューを表示するために使用される。これら操作ボタン及びスイッチ群34及び表示部35は、本実施の形態では、ダイレクトプリントシステムを実現する場合に、このシステム全体のユーザインターフェースとして機能する。光学ユニット36は、主としてレンズ及びその駆動系を有する。CCD素子37は、光学ユニット36により結像された画像を電気信号に変換する。ドライバ38は、CPU31の制御下において光学ユニット36を制御して自動焦点制御や絞りの調整などを行う。メモリカード40は、例えば、コンパクトフラッシュ(登録商標)メモリカード、スマートメディア等の記憶媒体で、コネクタ39を介してバスに接続されている。有線インターフェース41は、PC3010或いは本実施の形態に係るPDプリンタ1000と接続するためのUSBインターフェース(USBのスレーブ側)である。無線インターフェース42は、携帯電話として基地局と通信を行うための無線I/Fである。マイクロフォン43及びスピーカ44はそれぞれ電話機としての通話において使用される。スピーカ44は更に、プロバイダから受信した音楽コンテンツなどの再生に使用される。JPEG/MPEGエンコーダ45は、画像データをJPEG或はMPEGコードに符号化する。また前述したように、PDプリンタ1000と接続するための無線インターフェース(不図示)を備えていても良い。また図面に示していないが、これ以外にも、電池やアンテナなどが含まれている。
【0025】
以上が本実施の形態に係るカメラ付き携帯電話の基本的な構成であるが、この携帯電話には、以下に示すような各種機能が設けられている。これら機能には、例えばプリンタとの間での印刷処理、インターネットを介するサーバへの処理要求及びサーバとの間でのデータのやり取り、カレンダ表示、メール送受信の制御や、UI生成及びUIに基づく画像処理などが含まれる。これら各種機能については詳しく後述する。
【0026】
図3は、本発明の実施の形態に係るフォトダイレクトプリンタ装置(以下、PDプリンタ)1000の概観斜視図である。このPDプリンタ1000は、ホストコンピュータ(PC)からデータを受信して印刷する通常のPCプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラやPDAなどからの画像データを受信して印刷する機能を備えている。
【0027】
図3において、本実施の形態に係るPDプリンタ1000の外殻をなす本体は、下ケース1001、上ケース1002、アクセスカバー1003及び排出トレイ1004の外装部材を有している。また、下ケース1001は、PDプリンタ1000の略下半部を、上ケース1002は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部がされている。さらに、排出トレイ1004は、その一端部が下ケース1001に回転自在に保持され、その回転によって下ケース1001の前面部に形成される開口部を開閉させ得るようになっている。このため、記録動作を実行させる際には、排出トレイ1004を前面側へと回転させて開口部を開成させることにより、ここから記録されたシート(普通紙、専用紙、樹脂シート等を含む。以下単にシートとする)が排出可能となると共に、排出されたシートを順次積載し得るようになっている。また排紙トレイ1004には、2枚の補助トレイ1004a,1004bが収納されており、必要に応じて各トレイを手前に引き出すことにより、シートの支持面積を3段階に拡大、縮小させ得るようになっている。
【0028】
アクセスカバー1003は、その一端部が上ケース1002に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー1003を開くことによって本体内部に収納されている記録ヘッドカートリッジ(不図示)或いはインクタンク(不図示)等の交換が可能となる。尚、ここでは特に図示しないが、アクセスカバー1003を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバー1003の開閉状態を検出し得るようになっている。
【0029】
また、上ケース1002の上面には、電源キー1005が設けられている。また、上ケース1002の右側には、液晶表示部1006や各種キースイッチ等を備える操作パネル1010が設けられている。この操作パネル1010の構造は、図4を参照して詳しく後述する。1007は自動給送部で、シートを装置本体内へと自動的に給送する。1008は紙間選択レバーで、プリントヘッドとシートとの間隔を調整するためのレバーである。1009はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード(PC)としては、例えばコンパクトフラッシュ(登録商標)メモリ、スマートメディア、メモリスティック等がある。1011はビューワ(液晶表示部)で、このPDプリンタ1000の本体に着脱可能であり、PCカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、1コマ毎の画像やインデックス画像などを表示するのに使用される。1012は後述するデジタルカメラを接続するためのUSB端子である。また、このPD装置1000の後面には、パーソナルコンピュータ(PC)を接続するためのUSBコネクタが設けられている。
【0030】
図4は本実施の形態に係るPDプリンタ1000の操作パネル1010の概観図である。
【0031】
図において、液晶表示部1006には、その左右に印刷されている項目に関するデータを各種設定するためのメニュー項目が表示される。ここに表示される項目としては、例えば、複数ある写真画像ファイルの内、印刷したい写真画像の先頭番号、指定コマ番号(開始コマ指定/印刷コマ指定)、印刷を終了したい最後の写真番号(終了)、印刷部数(部数)、印刷に使用するシートの種類(用紙種類)、1枚のシートに印刷する写真の枚数設定(レイアウト)、印刷の品位の指定(品位)、撮影した日付を印刷するかどうかの指定(日付印刷)、写真を補正して印刷するかどうかの指定(画像補正)、印刷に必要なシートの枚数表示(用紙枚数)等がある。これら各項目は、カーソルキー2001を用いて選択、或いは指定される。2002はモードキーで、このキーを押下する毎に、印刷の種類(インデックス印刷、全コマ印刷、1コマ印刷、指定コマ印刷等)を切り替えることができ、これに応じてLED2003の対応するLEDが点灯される。2004はメンテナンスキーで、プリントヘッドのクリーニング等、プリンタのメンテナンスを行わせるためのキーである。2005は印刷開始キーで、印刷の開始を指示する時、或いはメンテナンスの設定を確立する際に押下される。2006は印刷中止キーで、印刷を中止させる時や、メンテナンスの中止を指示する際に押下される。
【0032】
次に図5を参照して、本実施の形態1に係るPDプリンタ1000の制御に係る主要部の構成を説明する。尚、この図5において、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【0033】
図5は、本実施の形態1に係るPDプリンタの制御に係る主要部の構成を示すブロック図である。
【0034】
図において、3000は制御部(制御基板)を示している。3001はASIC(専用カスタムLSI)を示している。3002はDSP(デジタル信号処理プロセッサ)で、内部にCPUを有し、後述する各種制御処理及び、輝度信号(RGB)から濃度信号(CMYK)への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。3003はメモリで、DSP3002のCPUの制御プログラムを記憶するプログラムメモリ3003a、及び実行時のプログラムを記憶するRAMエリア、画像データなどを記憶するワークメモリとして機能するメモリエリアを有している。3004はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリンタのプリンタエンジンが搭載されている。3005はデジタルカメラ(DSC)3012を接続するためのポートとしてのSUB−USBで、コネクタ1012を有している。更に、このコネクタ1012には、DSC3012或はカメラ付き携帯電話(CP3020)が接続される。3006はビューワ1011を接続するためのコネクタである。3008はUSBハブ(USBHUB)で、このPDプリンタ1000がPC3010からの画像データに基づいて印刷を行う際には、PC3010からのデータをそのままスルーし、USB3021を介してプリンタエンジン3004に出力する。これにより、接続されているPC3010は、プリンタエンジン3004と直接、データや信号のやり取りを行って印刷を実行することができる(一般的なPCプリンタとして機能する)。3009は電源コネクタで、電源3019により、商用ACから変換された直流電圧を入力している。PC3010は一般的なパーソナルコンピュータ、3011は前述したメモリカード(PCカード)、3012はデジタルカメラ(DSC:DigitalStillCamera)である。
【0035】
尚、この制御部3000とプリンタエンジン3004との間の信号のやり取りは、前述したUSB3021又はIEEE1284バス3022を介して行われる。
【0036】
図6は、本実施の形態に係るPDプリンタ1000のASIC3001の構成を示すブロック図である。この図6においても、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【0037】
4001はPCカードインターフェース部で、装着されたPCカード3011に記憶されている画像データの読取り、或いはPCカード3011へのデータの書き込み等を行う。4002はIEEE1284インターフェース部で、プリンタエンジン3004との間のデータのやり取りを行う。このIEEE1284インターフェース部4002は、DSC3012、CP3020からの、或いはPCカード3011に記憶されている画像データを印刷する場合に使用されるバスである。4003はUSBインターフェース部で、PC3010との間でのデータのやり取りを行う。4004はUSBホストインターフェース部で、接続されたDSC3012或いはCP3020との間でのデータのやり取りを行う。4005は操作パネル・インターフェース部で、操作パネル1010からの各種操作信号の入力や、表示部1006への表示データの出力等を行う。4006はビューワ・インターフェース部で、ビューワ1011への画像データの表示を制御している。4007は各種スイッチやLED4009等との間のインターフェースを制御するインターフェース部である。4008はCPUインターフェース部で、DSP3002との間でのデータのやり取りの制御を行っている。4010はこれら各部を接続する内部バス(ASICバス)である。
【0038】
図7は、上述の印刷システムにおいて、CP3020からPDプリンタ1000に対してプリント要求を発行して印刷を行う場合の大まかな信号フローを説明する図である。
【0039】
この処理手順は、PDプリンタ1000とCP3020とがUSBケーブルを介して接続された後、或は無線により通信を行うことにより互いにDPS仕様に準拠していることを確認した後に実行される。まずCP3020は「ConfigurePrintService」をPDプリンタ1000に送信して、PDプリンタ1000の状態をチェックする(600)。これに対してPDプリンタ1000から、その時点でのPDプリンタ1000の状態(ここでは「アイドル」状態)が通知される(601)。ここでは「アイドル」状態であるため、CP3020はPDプリンタ1000のCapabilityを問合せ(602)、PDプリンタ1000から、そのプリンタのCapabilityを取得する。次にそのCapabilityに応じたプリント開始要求(StartJob)を発行する(603)。尚、このプリント開始要求は、601で、後述するPDプリンタ1000からのステータス情報の中の「newJobOK」が「True(真)」になっていることを条件にしてCP3020からPDプリンタ1000に発行される。
【0040】
このプリント開始要求に対してPDプリンタ1000は、印刷が指示された画像データのファイルIDに基づいてファイル情報をCP3020に要求する(GetFileInfo)(604)。これに応答してCP3020から、そのファイル情報(FileInfo)が送信される。このファイル情報にはファイル容量等の情報が含まれる。そしてPDプリンタ1000がそのファイル情報を受信して処理可能であると判断すると、そのファイル情報をCP3020に要求する(GetFile)(605)。これによりその要求されたファイルの画像データ(ImageFile)がCP3020からPDプリンタ1000に送られる。これによりPDプリンタ1000がプリント処理を開始すると、606で「印刷中(Printing)」を示すステータス情報が、PDプリンタ1000からCP3020に「NotifyDeviceStatus」によって送られる。そして1頁のプリント処理が終了すると、次のページの処理開始時にPDプリンタ1000から「NotifyJobStatus」607により、それが通知される。そして1頁だけの印刷であれば、そのプリント要求した1頁の印刷が終了すると、次に「NotifyDviceStatus」608によりPDプリンタ1000が「アイドル」状態になったことが通知される(NotifyDeviceStatus(Idle))。
【0041】
尚、例えば、1頁に複数(N)の画像をレイアウトして印刷するN−up印刷の場合には、N枚の画像を印刷する度に、「NotifyJobStatus」607がPDプリンタ1000からCP3020に送られることになる。本実施の形態での「NotifyJobStatus」及び「NotifyDeviceStatus」の発行タイミングと画像データの取得の順番は一例であり、製品の実装によっては様々なケースが起こりうる。
【0042】
[実施の形態1]
図8は、本発明の実施の形態1に係るカメラ付き携帯電話(CP)3020とPDプリンタ1000との間で通信を行って、CP3020からPDプリンタ1000に画像データを供給して印刷を行う場合の処理の流れを説明する図である。図において、ステップS1〜S9はCP3020による処理を示し、ステップS11〜S17はPDプリンタ1000における処理を、そしてステップS21〜S23は、サーバ105による処理をそれぞれ示している。
【0043】
ステップS1及びステップS11では、CP3020とPDプリンタ1000との間で、互いにダイレクトプリント仕様に準拠していることを確認する。このときCP3020はPDプリンタ1000に対して、プリンタの状態やデバイス情報を問合せる。これに対してPDプリンタ1000から、その時点でのPDプリンタ1000の状態やデバイス情報が通知される。このデバイス情報には、例えば接続プロトコルのバージョンや、プリンタのベンダー名や機種名等が通知される。次にCP3020は、図7の602で示すように、PDプリンタ1000に対して、そのCapabilityを要求する。
【0044】
これによりPDプリンタ1000は、ステップS12でPDプリンタ1000の印刷機能に関する能力情報(Capability)を作成してCP3020に送信する。CP3020はこのCapabilityを受信し、ステップS2で、UIを構築して表示部35に表示する。尚、ここでは、このUIには、PDプリンタ1000が有していない印刷機能であっても、その機能を指示できるUIを表示する。
【0045】
図9は、本実施の形態に係るCP3020のUIを説明する図で、図2の構成と共通する部分は同じ記号で示している。このCP3020は折畳式で、表示部35の表示が見られるように開かれた状態を示している。
【0046】
図において、表示部35には印刷用のメニュが表示されており、各項目をカーソル及び選択キー801を使用して指示することにより、各印刷項目を指定できる。例えば、「画像/インデックス」印刷を指示すると、画像の印刷或はインデックス印刷を指定できる。画像印刷を指示すると、メモリカード40に記憶されている画像がインデックス表示され、その中からユーザが印刷したい画像を1つ或は複数選択できる。「レイアウト印刷」は画像印刷時にのみ有効で、1枚の用紙に複数画像をレイアウトして印刷する。この「レイアウト印刷」がONに設定されると、レイアウトされる画像数を設定する画面が表示される。「日付印刷」、「フチあり」印刷指示はそれぞれ、画像に日付を印刷するか、或はフチあり、フチなしで印刷するかを指定する。「サーバ保存」は、サーバ105により変換された画像ファイルをサーバに一時保存させる場合に指示される(この処理は後述する)。「URL印刷」は、画像ファイルが記憶されているURLを指定して印刷を行わせる場合に指示される。これがオンにされると、そのURLを入力するための画面が表示されるか、或は予め登録されているいくつかのURL候補が表示される。「印刷スタート」は印刷の開始を指示するために選択される。
【0047】
次にステップS3では、CP3020のユーザは、その構築されたUI画面を参照して印刷したい画像を選択し、その画像の印刷形式を設定して印刷処理の開始を指示する。次にステップS4では、このUIを使用して設定された印刷機能がPDプリンタ1000が有していない印刷機能を含むかどうかを判定する。PDプリンタ1000が有していない印刷機能を含まない時はステップS6に進み、ユーザの指定に基づいて印刷ジョブファイルを作成し、ステップS7で、その印刷ジョブファイルをPDプリンタ1000に送信する。
【0048】
この印刷ジョブファイルはステップS13でPDプリンタ1000により受信される。次にステップS14で、PDプリンタ1000は、その受信した印刷ジョブファイルを解析してプリントの準備を行う。そして、その印刷ジョブファイルに記載されている印刷対象の「画像ファイル情報の取得要求」をCP3020に対して発行し、これに応答してCP3020から送信される画像ファイル情報に基づいて、実際に印刷する画像データを含む画像ファイルをCP3020に要求して、その画像をファイルを得る(ステップS14)。PDプリンタ1000は、その印刷用の画像ファイルを受信すると、その画像ファイルの画像データを復号して画像処理を行い、PDプリンタ1000で印刷できる形式の画像に変換する(ステップS15)。そしてステップS16で、その変換した画像データに基づいて印刷を行う。こうして、その画像ファイルの画像データの印刷が完了すると、ステップS17でその画像ファイルの印刷が完了した旨をCP3020に通知する。CP3020は、ステップS8でこの印刷終了通知を受信すると、この処理を終了する。
【0049】
一方、ステップS4で、PDプリンタ1000が有していない印刷機能を含む場合はステップS5に進み、サーバ105に対して、その印刷機能を満足できるように画像を処理を依頼する。
【0050】
この具体例を以下に説明する。
【0051】
先ずCP3020では、印刷用の画像データは、CP3020が有しているカメラ機能を使用して撮影して規定のフォーマットにエンコードされて、メモリーカード40或は本体の不揮発性メモリなどに記憶されている。本実施の形態では、この記憶されている画像のフォーマットをPNGフォーマットとする。このPNGフォーマットは、可逆圧縮方式を採用した圧縮率の高い画像フォーマットで、最近汎用的に使われ始めている。
【0052】
このとき前述のステップS12で取得したPDプリンタ1000のCapabilityによれば、PDプリンタ1000における処理対象の画像フォーマットは、「EXIF」及び「JPEG」と規定されていたとする。この場合、CP3020からPNGフォーマットの画像データをPDプリンタ1000に送信しても、PDプリンタ1000において、それを復号して印刷することは不可能である。この場合CP3020自身も、機器の制約上、このような画像フォーマットの変換機能を有していない事を前提としている。そこで、CP3020は、インターネット101を介してサーバ105にそのPNGフォーマットの画像データを送信して、PNGフォーマットからEXIF/JPEGのフォーマットに変換するように依頼する場合が考えられる。
【0053】
このような要求を受信したサーバ105は、その受信画像フォーマットを、指定されたフォーマット(ここではEXIF/JPEGフォーマット))に変換すべく処理を実行する(ステップS22)。こうして処理された画像ファイルをCP3020に送信する(ステップS23)。
【0054】
この変換された画像ファイルはステップS9でCP3020により受信され、これに基づいて印刷ジョブファイルが作成される。そしてステップS7で、その作成した印刷ジョブファイルをPDプリンタ1000に送信する。これ以降の処理は前述のステップS8,ステップS13〜S17の場合と同様にして実行される。
【0055】
尚、本実施の形態に係るサーバ105は、CP3020から受信した依頼情報を解釈する機能、及びPNGフォーマットの画像をデコードしてEXIF/JPEGフォーマットの画像にエンコードする機能を有している必要がある。又、このサーバ105の機能としては、上述のフォーマット変換のみでなく、他のフォーマットの変換情報及びエンコード/デコード機能の保有、例えば、XHTMLフォーマット、GIFFフォーマット等の他のフォーマットにも対応していてもよい。
【0056】
また更に、ステップS21で、CP3020からの依頼要求を受信した際、サーバ105がそれに対応する機能を有していない場合は、その旨をCP3020に通知するようにしても良い。この場合は、CP3020UIはUIを変更し、ユーザに対して印刷不可などを報知するようにしても良い。
【0057】
上述の実施の形態では、一枚の画像をCP3020からPDプリンタ1000に送信して印刷する場合で説明したが、複数枚の画像印刷、或は他のCapabilityに応じた形態での画像印刷、DPOFに基づく画像印刷など、各種印刷レイアウト等のサービスを組み合わせた印刷ジョブの場合にも適用できる。
【0058】
この一例として、例えばN−up印刷を行う例で説明する。ステップS3でCP3020のUIを使用して、2つの画像が選択されて2−up印刷(1枚用紙に2つの画像を印刷する)が指示されたが、PDプリンタ1000がこの2−up印刷機能を有していないことが、PDプリンタ1000のCapabilityから事前に分かっている場合で説明する。
【0059】
この場合は、PDプリンタ1000が有していない機能であるため、ステップS5で、サーバ105に対して2−up印刷を行うための画像処理を依頼する。ここでは2−upの変換情報とともに、選択された印刷対象の2つのEXIF/JPEG画像ファイルをサーバ105に送信する。ステップS21で、この情報を受信したサーバ105は、ステップS22で、その受信したEXIF/JPEG画像データをレイアウト情報を基に、一枚の用紙に、2つの選択された画像が入るように縮小してレイアウトして、2−upとなる新たな1つのEXIF/JPEG画像データを作成する。そしてステップS23で、その作成した1つの画像ファイルをCP3020に送信する。
【0060】
これによりCP3020は、その受信した画像を基に、通常の1枚の画像印刷の場合(図8)と同様にして、印刷ジョブファイルを作成してPDプリンタ1000に送信して印刷を行う。
【0061】
尚、サーバ105に依頼する画像変換処理として、用紙レイアウトを例に説明したが、これ以外にも、固定サイズプリント、日付印刷、ファイル名印刷、クロッピング印刷等、様々な画像処理に適用してもよい。
【0062】
図10は、本実施の形態1に係るCP3020とサーバ105との間でのデータのやり取りを説明する図である。ここではCP3020とサーバ105とはTCP/IP接続されており、両機器間の通信プロトコルとしては、ネットワークで一般的に用いられているHTTPが用いられているものとする。
【0063】
本実施の形態では、サーバ105が提供するサービスは、クライアント側からHTTP POSTメソッドによりサーバ105の所定のアドレスに送付されたPNG画像ファイルをExif/JPEG画像ファイルに変換し、クライアント側からサーバ105側の所定のアドレスに対して行われるHTTP GETメソッドに対して、前述の変換したExif/JPEG画像ファイルを供給する。また、CP3020は不図示の何らかの既存の仕組みにより、サーバ105のIPアドレス及びサービスの形態を既に取得しているものとする。
【0064】
まずステップS101で、CP3020はHTTP POSTメソッドを用いて変換を希望するPNG画像ファイルをサーバ105に送信する。901は、このHTTP POSTリクエスト例を示している。1行目に記載のPOST宛先「xyz/input/」は、サーバ105が提供するサービスで規定された「サービス利用者がPNG画像ファイルを送付するべき宛先」である。2行目の送信元情報「abc:pn-abc」は、「abc」は送信元であるクライアント(CP3020)のアドレスを示し、「pn-abc」は、送信元であるクライアントが、このHTTP POSTメソッドで用いるポート番号が記述される。3行目の「CONTENT-LENGHT」には、このHTTP POSTリクエストに添付されたPNG画像ファイルのデータサイズが記述され、4行目の「CONTENT-TYPE」にはPNG画像ファイルを意味する文字列「img/png」が記述されている。そして、「CONTENT-TYPE」から一行空けて6行目からPNG画像ファイルがバイナリデータで添付されている。
【0065】
サーバ105では、ステップS111で、PNG画像ファイルを受信してステップS112で内部的に保持し(ここででは「xyz/input/」中に保持しているが、この保持形式及び場所は如何なる形式、方法を用いても良い)、ステップS113で、CP3020に対してHTTP POSTリクエストが正常に処理されたことを通知する。910は、HTTP POSTレスポンス例を示しており、1行目に記載の「200 OK」は正常終了を示す。
【0066】
この正常応答がステップS102で受信されるとステップS103に進み、CP3020はHTTP GETメソッドを利用して、送付したPNG画像ファイルをExif/JPG画像ファイルに変換した変換後の画像ファイルの取得要求をサーバ105に送信する。902は、HTTP GETリクエスト例を示す。1行目に記載のGET宛先「xyz/output/abc.jpg」は、サーバ105が提供するサービスで規定された「サービス利用者がExif/JPEG画像ファイルの送付を要求する際に指定すべき宛先」である。2行目の記述は901の場合と同様である。3行目の「CONTENT-TYPE」には、JPEG画像ファイルを意味する文字列「img/jpg」が記述されている。
【0067】
この要求がステップS114でサーバ105により受信されると、ステップS115に進み、保持しているPNG画像ファイルをExif/JPG画像ファイルに変換する。そしてステップS116で、変換したExif/JPEG画像ファイルをHTTP GETレスポンスとしてCP3020に送付する。911は、このHTTP GETレスポンス例を示す。1行目に記載の「200 OK」は正常終了を示す。2行目の「CONTENT-LENGTH」には、このHTTP GETレスポンスに添付されたExif/JPEG画像ファイルのデータサイズが記述され、3行目の「CONTENT-TYPE」には、Exif/JPEG画像ファイルを意味する文字列「img/jpg」が記述されている。そして「CONTNE-TYPE」から一行空けて5行目からExif/JPEG画像ファイルが添付されている。
【0068】
この変換済みの画像データは、ステップS104でCP3020により受信され、次にステップS105で、その受信した変換後のExif/JPEG画像ファイルが取得される。
【0069】
図11は、本実施の形態1の他の具体例(N−up印刷)におけるCP3020とサーバ105との間でのデータのやり取りを説明する図である。
【0070】
本実施の形態1では、サーバ105が提供するサービスは、クライアント側からHTTP POSTメソッドによりサーバ105の所定のアドレスに送付されたN−up画像合成依頼XMLスクリプト及びXMLスクリプト中に記載された枚数分のExif/JPEG画像ファイルから1枚のExif/JPEG画像ファイルを合成し、クライアント側からサーバ側の所定のアドレスに対して行われるHTTP GETメソッドに対して、前述の合成したExif/JPEG画像ファイルを供給する。またCP3020は、前述の図10と同様に、不図示の何らかの既存の仕組みにより、サーバ105のIPアドレス及びサービスの形態を既に取得しているものとする。
【0071】
まずステップS121で、CP3020は、HTTP POSTメソッドを用いて合成を希望するExif/JPEG画像ファイルの枚数を記述したXMLスクリプトをサーバ105に対して送付する。920は、HTTP POSTリクエスト例を示す。1行目及び2行目は図10中の901の場合と同じなので、その説明を省略する。3行目の「CONTENT-LENGTH」には、このHTTP POSTリクエストに添付された合成希望枚数を記述したXMLスクリプトのサイズが記述される。4行目の「CONTENT-TYPE」には、XMLスクリプトを意味する文字列「text/xml」が記述されている。そして「CONTENT-TYPE」から一行空けて6行目から合成希望枚数を記述したXMLスクリプトが記述されている。更に7行目の「n-up-request」が、複数枚の画像の合成依頼であるこのを示し、8行目の「number」に記載の「002」が2枚の画像合成を希望していることを示す。
【0072】
ステップS131で、このN−up依頼を受信したサーバ105は、ステップS132で、CP3020に対してHTTP POSTリクエストが正常に処理された事を通知する。930は、HTTP POSTレスポンス例を示し、1行目に記載の「200 OK」は正常終了を示す。
【0073】
これを受信したCP3020(ステップS122)は、ステップS123でHTTP POSTメソッドを用いて合成を希望する1枚目のExif/JPEG画像ファイルをサーバ105に送信する。921は、HTTP POSTリクエスト例を示す図である。1行目及び2行目は図10の901と同じなので、その説明を省略する。3行目の「CONTENT-LENGTH」には、HTTP POSTリクエストに添付された合成を希望する1枚目のExif/JPEG画像ファイルのデータサイズが記述され、4行目の「CONTENT-TYPE」には、Exif/JPEG画像ファイルを意味する文字列「img/jpg」が記述されている。そして「CONTNET-TYPE」から一行空けて6行目から合成を希望する1枚目のExif/JPEG画像ファイルが添付されている。
【0074】
この画像ファイルは、ステップS133でサーバ105により受信されると、サーバ105は、その受信した1枚目のExif/JPEG画像ファイルを内部的に保持し(ここでは「xyz/input/」に保持しているが、この保持形式、場所は如何なる形式、方法を用いても良い)、CP3020に対してHTTP POSTリクエストが正常に処理された事を通知する(ステップS134)。931は、HTTP POSTレスポンス例を示す。
【0075】
これを受信した(ステップS124)CP3020は、続いてステップS125で、ステップS123と同様にして合成を希望する2枚目のExif/JPEG画像ファイルを送信する。ステップS135〜S136で、サーバ105はステップS133〜S134と同様に保持と応答を行う。
【0076】
以上のステップS121〜S126で、CP3020が依頼する合成画像ファイルの枚数及び画像ファイルが送付されたので、ステップS127で、CP3020はHTTP GETメソッドを利用して、合成されたExif/JPG画像ファイルの取得要求を行う。922は、HTTP GETリクエスト例を示し、1行目に記載のGET宛先「xyz/output/abc.jpg」は、サーバ105が提供するサービスで規定された「サービス利用者が合成されたExif/JPEG画像ファイルの送付を要求する際に指定すべき宛先」を示す。2行目の記述は図10の902と同様である。3行目の「CONTENT-TYPE」には、Exif/JPEG画像ファイルを意味する文字列「img/jpg」が記述されている。
【0077】
ステップS137で、この要求を受信するとサーバ105は、保持した2枚のExif/JPEG画像ファイルを1枚のExif/JPG画像ファイルに合成する(ステップS138)。次にステップS139で、その合成したExif/JPEG画像ファイルをHTTP GETレスポンスとしてCP3020に送信する。933は、HTTP GETレスポンス例を示す。1行目に記載の「200 OK」は正常終了を示す。2行目の「CONTENT-LENGTH」には、このHTTP GETレスポンスに添付されたExif/JPEG画像ファイルのデータサイズが記述される。3行目の「CONTENT-TYPE」には、Exif/JPEG画像ファイルを意味する文字列「img/jpg」が記述されている。そして「CONTENT-TYPE」から一行空けて5行目からExif/JPEG画像ファイルが添付されている。
【0078】
CP3020では、ステップS128で、この画像ファイルを受信し、ステップS129で、この受信した、合成されたExif/JPEG画像ファイルを取得する。
【0079】
以上説明したように本実施の形態1では、通信プロトコルとしてHTTPを用い、HTTP POSTメソッド及びHTTP GETメソッドを利用して説明したが、この両メソッドに限定する必要は無く、HTTP PUTを用いても良いし、他のプロトコルを用いても構わない。
【0080】
また本実施の形態1のサーバ105が提供するサービスは、サーバ105の所定のアドレスに対してクライアント側からPOSTされたPNG画像ファイルを変換するようにしたが、クライアント側からPOSTしたスクリプト中の記述によって依頼する等、他の方法で変換するべきPNG画像ファイルを特定しても構わない。
【0081】
また、本実施の形態1のサーバ105が提供するサービスは、サーバ105の所定のアドレスに対してクライアント側からGETされた場合にExif/JPEG画像ファイルを変換して送付するようにしたが、クライアント側からPOSTしたスクリプト中の記述によって依頼する等、他の方法で変換画像ファイルのリクエストを行っても良い。また、画像の変換は何時行ってもよく、クライアント側からの変換画像送付リクエストが発行される前に行っても構わない。また或は、単にクライアント側からHTTP GETリクエストを送付する前に行ったExif/JPEG画像ファイルのPOST回数によって合成枚数、方法を決定する等、他の方法で合成するべきExif/JPEG画像ファイル及び合成枚数・方法を特定しても構わない。
【0082】
図16は、本発明の実施の形態1に係るカメラ付き携帯電話(CP)3020とPDプリンタ1000及びサーバ105との間で通信を行って、CP3020でUIを構築する場合の処理の流れを説明する図である。尚、図において、ステップS1〜S2はCP3020による処理を示し、ステップS11〜S12はPDプリンタ1000における処理を、そしてステップS21〜S21は、サーバ105による処理をそれぞれ示している。またステップS1及びステップS11は、図8と同じなので説明を省略する。
【0083】
CP3020は、図7の602で示すように、PDプリンタ1000に対して、そのCapabilityを要求すると、PDプリンタ1000は、ステップS12でPDプリンタ1000の印刷機能に関する能力情報(Capability1)を作成してCP3020に送信する。CP3020はこのCapability1を受信する。またCP3020は、サーバ105に対して、そのCapabilityを要求する。これによりサーバ105は、ステップS71で、サーバ105のサービス機能に関する能力情報(Capability2)を作成してCP3020に送信する。CP3020はこのCapability2を受信する。
【0084】
そしてCP3020はステップS2で、受信したCapability1及びCapability2を利用してUIを構築して表示部35に表示する。この場合、必ずしもサーバ105のサービス機能Capability2が、常にPDプリンタ1000の印刷機能Capability1よりも優れているという保証は無いので、CP3020はCapability1とCapability2とを比較して、より高機能と判定されたCapabilityに基づいてUIを構築しても良いし、Capability1とCapability2の両方の良い部分を合成したCapability3を作成し、そのCapability3に基づいてUIを構築しても良い。この結果、このUIには、PDプリンタ1000が有していない印刷機能であっても、その機能を指示できるUIが表示され得る。
【0085】
尚、CP3020からサーバ105に対して行うCapabilityを要求する方法は如何なる手法を用いてもよく、既存の標準手法(UPnP等)を利用しても良いし、独自の規則に則ったスクリプトをHTTPメソッドを用いてやり取りして行う等しても良い。
【0086】
[実施の形態2]
次に本発明の実施の形態2について説明する。この実施の形態2では、前述の実施の形態1において、CP3020からサーバ105に対して画像処理を要求する場合、例えば画像データのデータ量が膨大でサーバ105での処理時間が長くなると、CP3020とPDプリンタ1000との間の印刷処理において通信タイムアウトが発生することが考えられる。そこで、このような場合は、一旦、サーバ105において変換した画像データをサーバ105が有しているデータベース105a(図1)等に記憶しておき、サーバ105からは、その格納アドレスを示すURLが、サーバ105からCP3020に通知される。
【0087】
これを受信したCP3020は、そのURLを指定して印刷を指示できるUIを構築し表示部35に表示する(図9参照)。こうしてユーザにより、そのUIを用いて、そのURLが指示されPDプリンタ1000による印刷が指示されると、CP3020はそのURLに基づいてデータベース105aから、対応する画像データを読み出し、その画像データをPDプリンタ1000に送信して印刷を行うように動作するものである。尚、この実施の形態2に係る印刷システムの構成及びCP3020、PDプリンタ1000のハードウェア構成は前述の実施の形態1と同様であるため、その説明を省略する。
【0088】
図12及び図13は、本発明の実施の形態2に係るカメラ付き携帯電話(CP)3020とPDプリンタ1000との間で通信を行って、CP3020からPDプリンタ1000に画像データを供給して印刷を行う場合の処理の流れを説明する図である。図12のフローチャートにおいて、図8の処理ステップと同じ処理を実行するステップには同じ記号を付し、その説明を省略する。
【0089】
ステップS3で、ユーザはCP3020のUIを使用して印刷指定を行う。ここでは例えば印刷対象の画像フォーマットがPNGフォーマットで、PDプリンタ1000が、このような画像フォーマットに対応していないとする。この場合はステップS41で、サーバ105による画像変換処理が必要と判断してステップS42に進む。ステップS42では、PNGフォーマットからEXIF/JPEGフォーマットに変換するように指示するとともに、そのフォーマット変換する画像データのデータ量が多い等に応じて、その変換処理に多くの時間を要すると判断すると、その変換した画像データをサーバ105に格納するように指示する。ステップS43では、サーバ105に格納するように指示したかどうかを調べ、指示している場合はステップS45に進み、PDプリンタ1000との通信接続を切断する。尚、このサーバ105に格納するかどうかは、データ量に基づいて判断するだけでなく、図9のUI画面でも説明したように、UIを使用してユーザが指定しても良い。
【0090】
次にサーバ105の処理を説明する。ステップS31で、CP3020からの処理依頼を受信するとステップS32で、その依頼された処理を実行する。このステップS32では、例えば、CP3020から受信したPNGデータの変換情報を基に、EXIF/JPEGフォーマットの画像データに変換する。次にステップS33では、ステップS31で受信した変換情報に、その変換した画像ファイルをデータベース105aに記憶するように指示されているかどうかをみる。指示されているときはステップS35に進み、その変換処理済みの画像データをデータベース105aに記憶し、その格納アドレスを示すURLを作成し、それをCP3020に送信する。このURLはステップS45でCP3020により受信されてRAM33に記憶される。
【0091】
一方ステップS33で、サーバ105に格納しない場合はステップS34に進み、前述の図8の処理と同様に、その処理した画像データをCP3020に送信する。この画像データは、ステップS9でCP3020により受信されて印刷ジョブが作成される。
【0092】
ステップS45で、URLを受信したCP3020は、ステップS46で再びPDプリンタ1000との通信接続を確立する。次にステップS47で、そのURLにより印刷画像を指定できるUIを構築して表示部35に表示する。これによりユーザは、そのCP3020のUIで、そのURLを使用して印刷指定を行なうことができる。こうしてステップS48のユーザによる操作で、このURLが指示されて印刷指示が入力されるとステップS49からステップS50に進み、そのURLを基に、インターネット101を介してサーバ105にアクセスする。
【0093】
これによりサーバ105は、ステップS51で、そのURLで指定された画像データをデータベース105aから読み出し、ステップS52で、その画像データをCP3020に送信する。
【0094】
これによりCP3020は、ステップS53で、印刷対象の画像ファイルをダウンロードする。そしてステップS9(図8)に進み、PDプリンタ1000に送信する印刷ジョブを作成してPDプリンタ1000に送信する。尚、ステップS49で、URLを使用した印刷指定でない場合はステップS54に進み、その指示に対応する処理を実行する。
【0095】
このように本実施の形態2によれば、サーバにおける処理時間が長くなって、PDプリンタ1000との間で通信タイムアウトが発生すると予想できる場合には、その処理済みの画像データを一旦、サーバ105に記憶しておき、その格納アドレスを示すURLを受信する。そして、そのURLを使用して画像ファイルを指定できるUIを構築して表示することにより、CP3020でUIを使用した印刷対象画像の選択指示及び印刷指示を行うことができる。
【0096】
図14は、本発明の実施の形態2に係るCP3020とサーバ105との間でのデータのやり取りを説明する図である。図14において、CP3020とサーバ105は前述の実施の形態と同様に接続されている。
【0097】
本実施の形態2では、サーバ105が提供するサービスは、クライアント側からHTTP POSTメソッドを用いてサーバ105の所定のアドレスにに送付されたPNG―JPG画像変換、保存依頼XMLスクリプト及びPNG画像ファイルから、Exif/JPEG画像ファイルを変換、保存し、サーバ105よりHTTP POSTメソッドを用いてクライアント側の所定のアドレスに保存場所を記述したXMLスクリプトを供給するものとする。またCP3020は、前述の実施の形態1と同様に、既存の仕組みにより、サーバのIPアドレス及びサービスの形態を既に取得しているとする。
【0098】
まずステップS141で、CP3020はHTTP POSTメソッドを用いてPNG画像ファイルからExif/JPEG画像ファイルへの変換、保存を希望する旨を記述したXMLスクリプトをサーバ105に対して送付する。940は、HTTP POSTリクエスト例を示す。1行目及び2行目は図10の901と同じなので説明を省略する。3行目の「CONTENT-LENGTH」には、HTTP POSTリクエストに添付されたPNG画像ファイルからExif/JPEG画像ファイルへの変換、保存を希望する旨を記述したXMLスクリプトのデータサイズが記述され、4行目の「CONTENT-TYPE」にはXMLスクリプトを意味する文字列「text/xml」が記述されている。そして、「CONTENT-TYPE」から一行空けて6行目から変換、保存を希望する旨を記述したXMLスクリプトが記述されている。7行目の「pmg-jpg-convert-request」が、PNG画像ファイルからExif/JPEG画像ファイルへの変換要求である事を示し、8行目の「store」に記載の「yes」が、サーバ105への保存を希望していることを示す。
【0099】
これをステップS151で受信したサーバ105は、続いてステップS152で、CP3020からの要求がPNG画像ファイルからExif/JPEG画像ファイルへの変換及び保存である旨を理解し、CP3020に対してHTTP POSTリクエストが正常に処理された事を通知する。950は、HTTP POSTレスポンス例を示す。これは前述したOK応答と同じである。
【0100】
これによりCP3020は、OK応答を受信する(ステップS142)とステップS143に進み、HTTP POSTメソッドを用いて変換、保存を希望するPNG画像ファイルをサーバ105に対して送信する。941は、HTTP POSTリクエストの中身の例であるが、全て図10の902と同じなので説明を省略する。
【0101】
サーバ105はステップS153でPNGデータを受信し、ステップS154で、その受信したPNG画像ファイルを内部的に保持し(ここでは「xyz/input/」に保持しているが、保持形式、場所は如何なる形式・方法を用いても良い)、CP3020に対してHTTP POSTリクエストが正常に処理された事を通知する(ステップS155)。このHTTP POSTレスポンス例は、前述のとおりである。そしてステップS156で、サーバ105は、これら保持したPNG画像ファイルをExif/JPG画像ファイルに変換する。続いてステップS157で、サーバ105は、その変換したExif/JPG画像ファイルを所定の場所で、CP3020からアクセス可能な様に保存する(ここでは「xyz/result/」中にファイル名「abc1.jpg」という形式で保持している。これはクライアント名「abc」からの1番目の依頼という理由で変換、保存ファイルの管理を行っているためであるが、保持形式、場所、管理方式は如何なる形式或は方法を用いても良い)。そしてステップS158で、サーバ105はHTTP POSTメソッドを用いて、その保存したExif/JPEG画像ファイルの保存場所を記述したXMLスクリプトをCP3020に送付する。951は、HTTP POSTリクエスト例を示す。1行目に記載のPOST宛先「abc/result/」は、サーバ105の提供するサービスで規定された「サーバが保存したExif/JPEG画像ファイルの保存場所を記述したXMLスクリプトを受信する際に指定するクライアント側の宛先」である。2行目の送信元情報「xyz:pn-xyz」の記述内容を説明すると、「xyz」には送信元であるサーバ105のアドレスが、「pn-xyz」には送信元であるサーバ105が、HTTP POSTメソッドで用いるポート番号が記述される。3行目の「CONTENT-LENGTH」には、保存したExif/JPEG画像ファイルの保存場所を記述したXMLスクリプトのサイズが記述される。4行目の「CONTENT-TYPE」には、XMLスクリプトを意味する文字列が記述されている。そして「CONTENT-TYPE」から一行空けて6行目から変換、保存したExif/JPEG画像ファイルの保存場所を記述したXMLスクリプトが記述されている。7行目の「png-jpg-convert-result」が変換依頼の結果である事を示し、8行目の「url」に記載の「xyz/result.abc1.jpg」が、保存場所を示す。
【0102】
CP3020はステップS145でこれを受信すると、ステップS146で、変換、保存したExif/JPEG画像ファイルの保存場所を取得し、サーバ105に対してHTTP POSTリクエストが正常に処理された事を通知する。
【0103】
これ以後、CP3020からはHTTP GETメソッドを用いることにより、そのサーバ105から、格納されている画像を取得出来るようになる。
【0104】
以上本実施の形態2では、通信プロトコルとしてHTTPを用い、HTTP POSTメソッド及びHTTP GETメソッドを利用して説明したが、この両メソッドに限定する必要は無く、HTTP PUTを用いても良いし、他のプロトコルを用いても構わない。
【0105】
また本実施の形態2に係るサーバが提供するサービスは、所定のアドレスに対してPOSTされたXMLスクリプトファイル中の記述に基づいてPNG画像ファイルをExif/JPEG画像ファイルに変換、保存し、その保存場所を通知することとしたが、単にCP3020からPNG画像ファイルを受信しただけで変換、保存し、その保存場所を通知する等、他の方法で保存するべきExif/JPEG画像ファイル及び保存方法を特定しても構わない。
【0106】
また本実施の形態2のサーバ105が提供するサービスは、クライアント側の所定のアドレスに対してPOSTする事としたが、CP3020からPOSTしたスクリプト中の記述に基づいて保存場所を決定する、又はCP3020からサーバ105の所定のアドレスに対して行われたGETへのレスポンスとして保存場所を通知する等、他の方法により、変換画像ファイルの保存場所の通知しても良い。また、画像の変換及び保存は何時行ってもよく、CP3020から保存場所への画像送付リクエストが発行された後に行っても構わない。
【0107】
[実施の形態3]
前述の実施の形態1で、CP3020のRAM,ROMのリソースを利用してPNGフォーマットよりEXIF/JPEGフォーマットに変換できる場合に、画像データのデータ量等を基に、サーバにより対象画像の加工変換が必要か否かを判断しても良い。つまり、CP3020で画像の加工変換が可能な場合であっても、サイズの大きな画像処理はリソースの観点より不可能な場合もある。このような場合の判断基準を設けることを特徴としている。
【0108】
図15は、本発明の実施の形態3に係る処理を説明するフローチャートで、前述の図8の処理フローチャートに追加する形式で示している。
【0109】
即ち、前述の図8のステップS3で、UI操作により、PNGフォーマットの画像をJPEGフォーマットの画像に変換して印刷する指示が入力されるとステップS61に進み、そのPNGフォーマットの画像データのデータ量を求める。そしてステップS62で、その画像データ量が所定量以上かどうか判定する。所定量以上であれば、サーバ105による処理が妥当と判断してステップS5に進み、サーバ105に画像フォーマットの変換処理を依頼する。一方、ステップS62で所定量以上でないときは、CP3020によりフォーマット変換処理が可能であると判断してステップS63に進み、PNGフォーマットからJPEGフォーマットへの画像変換処理を実行する。そしてステップS6に進み、印刷ジョブファイルを作成してステップS7で、その印刷ジョブファイルをPDプリンタ1000に送信して印刷を指示する。
【0110】
以上説明したように本実施の形態によれば、PDプリンタ1000或はCP3020での画像処理をサーバで代行させることにより、プリンタが対応していない画像フォーマットの印刷も可能となり、CP3020で印刷対象画像として扱える画像フォーマットの適用範囲が拡大できる。
【0111】
又、本実施の形態によれば、プリンタで対応していない印刷機能に対して印刷が要求された場合、サーバで加工変換することにより多種多様な画像形態を提供することが出来る。
【0112】
更に本実施の形態によれば、サーバでの印刷画像の保存、及びサーバから対象画像をCPにダウンロードして印刷することができる。
【0113】
[他の実施の形態]
本発明の目的は前述したように、実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM,CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0114】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0115】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含む。
【図面の簡単な説明】
【0116】
【図1】本発明の実施の形態に係る印刷システムを説明する概念図である。
【図2】本実施の形態に係るカメラ付き携帯電話機(CP)の構成を示すブロック図である。
【図3】本発明の実施の形態に係るフォトダイレクトプリンタ装置の概観斜視図である。
【図4】本実施の形態に係るPDプリンタの操作パネルの概観図である。
【図5】本実施の形態に係るPDプリンタの制御に係る主要部の構成を示すブロック図である。
【図6】本実施の形態に係るPDプリンタのASICの構成を示すブロック図である。
【図7】PictBridgeを採用した印刷システムにおいて、CPからPDプリンタに対してプリント要求を発行して印刷を行う場合の大まかな信号フローを説明する図である。
【図8】本発明の実施の形態1に係るカメラ付き携帯電話(CP)とPDプリンタとの間で通信を行って、CPからPDプリンタに画像データを供給して印刷を行う場合の処理の流れを説明する図である。
【図9】本実施の形態に係るCPのUIを説明する図である。
【図10】本実施の形態1に係るCPとサーバとの間でのデータのやり取りを説明する図である。
【図11】本実施の形態1の他の具体例(N−up印刷)におけるCPとサーバとの間でのデータのやり取りを説明する図である。
【図12】、
【図13】本発明の実施の形態2に係るカメラ付き携帯電話(CP)とPDプリンタとの間で通信を行って、CPからPDプリンタに画像データを供給して印刷を行う場合の処理の流れを説明する図である。
【図14】本発明の実施の形態2に係るCPとサーバとの間でのデータのやり取りを説明する図である。
【図15】本発明の実施の形態3に係る処理を説明するフローチャートである。
【図16】本発明の実施の形態1に係るカメラ付き携帯電話とPDプリンタ及びサーバとの間で通信を行ってCPでUIを構築する場合の処理の流れを説明する図である。

【特許請求の範囲】
【請求項1】
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷する印刷システムであって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記入力手段で入力された印刷仕様が、前記取得手段で取得した前記印刷装置の印刷機能では実現できない場合、前記携帯電話からサーバに対応する処理を依頼する手段と、
前記サーバにより処理された結果に基づいて、前記印刷装置により画像を印刷させるように制御する印刷制御手段と、
を有することを特徴とする印刷システム。
【請求項2】
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷する印刷システムであって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記印刷仕様で指示された印刷対象の画像データ量が所定量以上かどうかを判定する判定手段と、
前記判定手段により前記所定量以上と判定されると前記携帯電話からサーバに対応する処理を依頼するとともに、前記所定量以下と判定されると前記携帯電話により前記対応する処理を実行させる制御手段と、
前記サーバ或は前記携帯電話のいずれかにより処理された結果に基づいて、前記印刷装置により画像を印刷させるように制御する印刷制御手段と、
を有することを特徴とする印刷システム。
【請求項3】
前記印刷仕様は、画像フォーマットの変換を含むことを特徴とする請求項1又は2に記載の印刷システム。
【請求項4】
前記印刷仕様は、レイアウト印刷を含むことを特徴とする請求項1又は2に記載の印刷システム。
【請求項5】
前記サーバは通信網に接続されており、
前記通信網を介して前記携帯電話から受信した画像データを前記印刷仕様に応じて変換する変換手段と、
前記変換手段により変換した画像データを、前記通信網を介して前記携帯電話に送信する送信手段とを備えることを特徴とする請求項1乃至4のいずれか1項に記載の印刷システム。
【請求項6】
前記携帯電話は、
前記サーバにより処理された結果を前記サーバに記憶するように指示する手段と、
前記サーバに記憶された前記結果のURLを前記サーバから受信する受信手段を更に有することを特徴とする請求項1乃至5のいずれか1項に記載の印刷システム。
【請求項7】
前記サーバの処理機能を取得する第2取得手段と、
前記第2取得手段で取得した前記サーバの処理機能と前記印刷装置の印刷機能とに基づいて前記入力手段により入力可能な印刷仕様を設定する設定手段を更に有することを特徴とする請求項1乃至6のいずれか1項に記載の印刷システム。
【請求項8】
前記設定手段は、前記サーバの処理機能と前記印刷装置の印刷機能のいずれかを選択して前記印刷仕様を設定することを特徴とする請求項7に記載の印刷システム。
【請求項9】
前記設定手段は、前記サーバの処理機能と前記印刷装置の印刷機能とを組み合わせて前記印刷仕様を設定することを特徴とする請求項7に記載の印刷システム。
【請求項10】
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話であって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記入力手段で入力された印刷仕様が、前記取得手段で取得した前記印刷装置の印刷機能では実現できない場合、通信網を介してサーバに対応する処理を依頼する手段と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御手段と、
を有することを特徴とする携帯電話。
【請求項11】
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話であって、
前記印刷装置の印刷機能を取得する取得手段と、
印刷仕様を入力する入力手段と、
前記印刷仕様で指示された印刷対象の画像データ量が所定量以上かどうかを判定する判定手段と、
前記判定手段により前記所定量以上と判定されると、通信網を介してサーバに対応する処理を依頼するとともに、前記所定量以下と判定されると前記対応する処理を実行する制御手段と、
前記サーバ或は前記制御手段のいずれかにより処理された結果に基づいて、前記印刷装置により画像を印刷させるように制御する印刷制御手段と、
を有することを特徴とする携帯電話。
【請求項12】
前記印刷仕様は、画像フォーマットの変換を含むことを特徴とする請求項10又は11に記載の携帯電話。
【請求項13】
前記印刷仕様は、レイアウト印刷を含むことを特徴とする請求項10又は11に記載の携帯電話。
【請求項14】
前記サーバに対して、処理済みの画像データを記憶するように指示する指示手段を更に有することを特徴とする請求項10又は11に記載の携帯電話。
【請求項15】
前記サーバよりURLを受信する受信手段と、
前記受信手段により受信したURLを使用して前記印刷装置により印刷させる画像データを取得する取得手段を更に有することを特徴とする請求項14に記載の携帯電話。
【請求項16】
前記サーバの処理機能を取得する第2取得手段と、
前記第2取得手段により取得した前記サーバの処理機能と前記印刷装置の印刷機能とに基づいて前記入力手段により入力可能な印刷仕様を設定する設定手段を更に有することを特徴とする請求項10乃至15のいずれか1項に記載の携帯電話。
【請求項17】
前記設定手段は、前記サーバの処理機能と前記印刷装置の印刷機能のいずれかを選択して前記印刷仕様を設定することを特徴とする請求項16に記載の携帯電話。
【請求項18】
前記設定手段は、前記サーバの処理機能と前記印刷装置の印刷機能とを組み合わせて前記印刷仕様を設定することを特徴とする請求項16に記載の携帯電話。
【請求項19】
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷させる印刷制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記入力工程で入力された印刷仕様が、前記取得工程で取得した前記印刷装置の印刷機能では実現できない場合、前記携帯電話からサーバに対応する処理を依頼する工程と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御工程と、
を有することを特徴とする印刷制御方法。
【請求項20】
携帯電話と印刷装置との直接通信により前記携帯電話から供給される画像データに基づいて前記印刷装置により画像を印刷させる印刷制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記印刷仕様で指示された印刷対象の画像データ量が所定量以上かどうかを判定する判定工程と、
前記判定工程で前記所定量以上と判定されると前記携帯電話からサーバに対応する処理を依頼するとともに、前記所定量以下と判定されると前記携帯電話により前記対応する処理を実行させる制御工程と、
前記サーバ或は前記携帯電話のいずれかにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御工程と、
を有することを特徴とする印刷制御方法。
【請求項21】
前記印刷仕様は、画像フォーマットの変換を含むことを特徴とする請求項19又は20に記載の印刷制御方法。
【請求項22】
前記印刷仕様は、レイアウト印刷を含むことを特徴とする請求項19又は20に記載の印刷制御方法。
【請求項23】
前記サーバは通信網に接続されており、
前記通信網を介して前記携帯電話から受信した画像データを前記印刷仕様に応じて変換する変換工程と、
前記変換工程で変換した画像データを、前記通信網を介して前記携帯電話に送信する送信工程とを備えることを特徴とする請求項19乃至22のいずれか1項に記載の印刷制御方法。
【請求項24】
前記サーバにより処理された結果を前記サーバに記憶するように指示する工程と、
前記サーバに記憶された前記結果のURLを前記サーバから受信する受信工程を更に有することを特徴とする請求項19乃至23のいずれか1項に記載の印刷制御方法。
【請求項25】
前記サーバの処理機能を取得する第2取得工程と、
前記第2取得工程で取得した前記サーバの処理機能と前記印刷装置の印刷機能に基づいて前記入力工程で入力可能な印刷仕様を設定する設定工程を更に有することを特徴とする請求項19乃至24のいずれか1項に記載の印刷制御方法。
【請求項26】
前記設定工程では、前記サーバの処理機能と前記印刷装置の印刷機能のいずれかを選択して前記印刷仕様を設定することを特徴とする請求項25に記載の印刷制御方法。
【請求項27】
前記設定工程では、前記サーバの処理機能と前記印刷装置の印刷機能とを組み合わせることにより、前記印刷仕様を設定することを特徴とする請求項25に記載の印刷制御方法。
【請求項28】
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話の制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記入力工程で入力された印刷仕様が、前記取得工程で取得した前記印刷装置の印刷機能では実現できない場合、通信網を介してサーバに対応する処理を依頼する工程と、
前記サーバにより処理された結果に基づいて前記印刷装置により画像を印刷させるように制御する印刷制御工程と、
を有することを特徴とする制御方法。
【請求項29】
印刷装置との直接通信により前記印刷装置に画像データを供給して印刷させる携帯電話の制御方法であって、
前記印刷装置の印刷機能を取得する取得工程と、
印刷仕様を入力する入力工程と、
前記印刷仕様で指示された印刷対象の画像データ量が所定量以上かどうかを判定する判定工程と、
前記判定工程で前記所定量以上と判定されると通信網を介してサーバに対応する処理を依頼するとともに、前記所定量以下と判定されると前記対応する処理を実行する制御工程と、
前記サーバ或は前記制御工程のいずれかにより処理された結果に基づいて、前記印刷装置により画像を印刷させるように制御する印刷制御工程と、
を有することを特徴とする制御方法。
【請求項30】
前記印刷仕様は、画像フォーマットの変換を含むことを特徴とする請求項28又は29に記載の制御方法。
【請求項31】
前記印刷仕様は、レイアウト印刷を含むことを特徴とする請求項28又は29に記載の制御方法。
【請求項32】
前記サーバに対して、処理済みの画像データを記憶するように指示する指示工程を更に有することを特徴とする請求項28又は29に記載の制御方法。
【請求項33】
前記サーバよりURLを受信する受信工程と、
前記受信工程で受信したURLを使用して前記印刷装置により印刷させる画像データを取得する取得工程を更に有することを特徴とする請求項32に記載の制御方法。
【請求項34】
前記サーバの処理機能を取得する第2取得工程と、
前記第2取得工程で取得した前記サーバの処理機能と前記印刷装置の印刷機能に基づいて前記入力工程で入力可能な印刷仕様を設定する設定工程を更に有することを特徴とする請求項28乃至33のいずれか1項に記載の制御方法。
【請求項35】
前記設定工程では、前記サーバの処理機能と前記印刷装置の印刷機能のいずれかを選択して前記印刷仕様を設定することを特徴とする請求項34に記載の制御方法。
【請求項36】
前記設定工程では、前記サーバの処理機能と前記印刷装置の印刷機能とを組み合わせて前記印刷仕様を設定することを特徴とする請求項34に記載の制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2006−67368(P2006−67368A)
【公開日】平成18年3月9日(2006.3.9)
【国際特許分類】
【出願番号】特願2004−249020(P2004−249020)
【出願日】平成16年8月27日(2004.8.27)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】