(57)【要約】【課題】  プリンタの印刷の完了と、カメラ付き携帯電話からのデータ送信の完了に伴うカメラ付き携帯電話の解放のいずれを優先させるかをユーザが指定できないため、ユーザの優先順位に即した適切な処理が行われていない。【解決手段】  無線通信により携帯電話からの画像データを受信し、当該画像データの受信が完了する前に有線通信によりプリンタに印刷ジョブを発行する第１動作モード（Ｓ４０４〜Ｓ４０９）と、無線通信で携帯電話からの画像データを受信し、当該画像データの受信が完了した後、有線通信でプリンタに印刷ジョブを発行する第２動作モード（Ｓ４１３〜Ｓ４１９）とのいずれかを選択して印刷を実行できる。【選択図】  図３０
2006209235.tif 000002
【特許請求の範囲】
【請求項１】
画像供給機器が保持する画像データを中継装置を経由させて印刷装置に出力して印刷する印刷システムであって、
前記中継装置は、第１通信プロトコルで前記印刷装置と通信する第１インターフェースと、前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２インターフェースとを有し、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードと、
前記第１動作モードと前記第２動作モードのいずれかを選択する選択手段と、
前記選択手段による選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え手段と、
を有することを特徴とする印刷システム。
【請求項２】
前記選択手段は、前記画像供給装置からの画像データに基づいて選択することを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記選択手段による選択はユーザの選択操作に基づいて行われることを特徴とする請求項１に記載の印刷システム。
【請求項４】
前記選択手段は、前記画像データのファイル名、画像フォーマット、前記画像データの転送時刻、前記画像データの付帯情報のうち少なくとも１つに基づいて選択することを特徴とする請求項２に記載の印刷システム。
【請求項５】
前記第１インターフェースは物理的な信号接続を含み、前記第２インターフェースは無線通信を含むことを特徴とする請求項１乃至４のいずれか１項に記載の印刷システム。
【請求項６】
画像データを中継装置を経由させて印刷装置に出力する画像供給装置であって、
前記中継装置と通信するインターフェースと、
前記中継装置への画像データの送信が完了する前に前記中継装置から前記印刷装置に印刷ジョブを発行させる第１動作モードと、前記中継装置への画像データの送信が完了した後前記インターフェースを介して前記印刷装置に印刷ジョブを発行させる第２動作モードのいずれかを選択する選択手段と、
を有することを特徴とする画像供給装置。
【請求項７】
前記選択手段による選択はユーザの選択操作に基づいて行われることを特徴とする請求項６に記載の画像供給装置。
【請求項８】
前記選択手段は、前記画像データのファイル名、画像フォーマット種別、前記画像データの転送時刻、前記画像データの付帯情報のうち少なくとも１つに基づいて選択させることを特徴とする請求項６に記載の画像供給装置。
【請求項９】
画像供給機器が保持する画像データを中継して印刷装置に出力して印刷させる中継装置であって、
第１通信プロトコルで前記印刷装置と通信する第１インターフェースと、
前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２インターフェースと、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードとのいずれかを選択する選択手段と、
前記選択手段による選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え手段と、
を有することを特徴とする中継装置。
【請求項１０】
前記選択手段は、前記画像供給装置からの画像データに基づいて選択することを特徴とする請求項９に記載の中継装置。
【請求項１１】
前記選択手段による選択は、ユーザの選択操作に基づいて行われることを特徴とする請求項９に記載の中継装置。
【請求項１２】
前記選択手段は、前記画像データのファイル名、画像フォーマット、前記画像データの転送時刻、前記画像データの付帯情報のうち少なくとも１つに基づいて選択することを特徴とする請求項１０に記載の中継装置。
【請求項１３】
前記第１インターフェースは物理的な信号接続を含み、前記第２インターフェースは無線通信を含むことを特徴とする請求項９乃至１２のいずれか１項に記載の中継装置。
【請求項１４】
画像供給機器が保持する画像データを中継して印刷装置に出力して印刷させる中継装置の制御方法であって、
第１通信プロトコルで前記印刷装置と通信する第１通信工程と、
前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２通信工程と、
前記第２通信工程で前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、前記第２通信工程で前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードとのいずれかを選択する選択工程と、
前記選択工程での選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え工程と、
を有することを特徴とする中継装置の制御方法。
【請求項１５】
前記選択工程では、前記画像供給装置からの画像データに基づいて選択することを特徴とする請求項１４に記載の中継装置の制御方法。
【請求項１６】
前記選択工程での選択は、ユーザの選択操作に基づいて行われることを特徴とする請求項１４に記載の中継装置の制御方法。
【請求項１７】
前記選択工程では、前記画像データのファイル名、画像フォーマット、前記画像データの転送時刻、前記画像データの付帯情報のうち少なくとも１つに基づいて選択することを特徴とする請求項１５に記載の中継装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像供給装置が保持する画像データを中継装置を介して印刷装置に送信して印刷を行う印刷システム、及びその中継装置とその制御方法に関するものである。
【背景技術】
【０００２】
近年、簡単な操作で画像を撮影し、その撮影した画像をデジタル画像データに変換してメモリに保存したり、その画像データを各種機器に供給できるデジタルカメラ（撮像装置）が広く使用されるようになってきている。また、このようなデジタルカメラにより撮影された画像を印刷し写真として使用するために、直接、デジタルカメラからプリンタ装置にデジタル画像データを伝送して印刷できるダイレクト印刷システムに適用可能なデジタルカメラやプリンタ装置が広く普及しつつある。
【０００３】
通常、ダイレクト印刷システム機能は、カメラやプリンタ装置に予め組み込まれた仕様に準じて実行される。よって、一旦、製造販売されたダイレクト印刷対応のデジタルカメラやプリンタ装置を、それ以降に開発された新規なダイレクト印刷機能に対応させるためには、その機能をアップデートしなければならないが、そのようなアップデートは困難であり不可能な場合も多い。また互いに仕様が異なるダイレクト印刷システム間は互換性は無い。例えば無線接続によるダイレクト印刷とＵＳＢ接続によるダイレクト印刷は、それぞれ個別に規定され製品化されて、それぞれ個別の発展をして来た。その結果、無線接続でのダイレクト印刷にのみに対応した機器や、ＵＳＢ接続でのダイレクト印刷にのみ対応した機器が既に市場に大量に出回る状況となっている。このため、これら互いに異なるダイレクト印刷機能を変換、伝達することにより、それらを異なる印刷仕様の機器同士を接続してダイレクト印刷を可能にできるダイレクト印刷用のアダプタの登場が期待されている。
【０００４】
従来のＰＣ環境における印刷変換アダプタはプリントサーバと呼ばれ、このようなプリントサーバは、まずプリンタが存在し、そのプリンタの機能を補完、拡充したり、複数のユーザによって共有できることを目的として設計されて来た。
【０００５】
図３１は従来のＰＣ環境におけるプリントサーバシステムを説明する図である。
【０００６】
このプリントサーバシステムは、クライアント２１１１，２１１２，２１１３により共用可能なプリンタ２１１７，２１１９をそれぞれ制御するためのプリントサーバ２１１５，２１１６とで構成される。このような構成において、例えば、クライアント２１１１〜２１１３がプリンタ２１１７で印刷を行うには、以下の手順により印刷処理が進められる。
【０００７】
まずクライアント２１１１〜２１１３が、プリントサーバ２１１５に印刷を依頼するため、ネットワーク２１１０を介して文書データをプリントサーバ２１１５へ送信する。この文書データは、文書の各ページについて、文字、図形、イメージの印刷内容を記述するための印刷コマンド列からなっている。この印刷コマンド列は、ＰＤＬ（Page Description Language：ページ記述言語）とも呼ばれる。クライアント２１１１〜２１１３から文書データを受信したプリントサーバ２１１５は、まず、文書データをプリントサーバ２１１５のスプールと呼ぶファイルに一旦格納する。続いて、その格納した文書データを読み出し、プリンタ２１１７へ送信して印刷を指示する。そしてプリンタ２１１７が、その文書データを処理して用紙への印刷を行う。
【０００８】
そして、プリントサーバを利用するクライアント２１１１〜２１１３に対して、プリンタ２１１７，２１１９のそれぞれと、各対応するプリントサーバ２１１５，２１１６との間のローカル接続でやり取りされるプリンタ情報が、プリントサーバ２１１５，２１１６を介して正しく伝達されるように設計されている。特許文献１には、印刷ステータスをプリンタ装置から取得してクライアントに通達するアダプタの例が開示されており、特許文献２には、エラーの通知や再印刷、中止命令等をサポートしているネットワーク系のプリントサーバが開示されている。またプリントサーバは、対応するプリンタ装置の仕様が確定した後に設計されるので、より高度な機能がサポート可能であり、特許文献３には、高機能なプリントサーバが複数の低機能プリンタ装置のアダプタとして機能する例が記載されている。また特許文献４には、複数のプリンタ装置の機能を登録しておき、印刷ジョブに好適なプリンタ装置を選択するプリントサーバが記載されている。
【特許文献１】特許第０３４８６５５３号公報
【特許文献２】特許第０３５７３４６６号公報
【特許文献３】特開平１１−１８４６４９号公報
【特許文献４】特許第０３４９５８４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
これに対してダイレクト印刷用のアダプタでは、従来のＰＣ環境におけるプリントサーバとはその要求される役割が大きく異なる。即ち、ダイレクト印刷用のアダプタを作成する場合は、新規のダイレクト印刷プロトコルを設計すると、既に市場に大量に出回っている既存の製品との互換性が保証されなくなるので、既存のダイレクト印刷プロトコルをそのまま利用する必要性がある。また、複数のダイレクト印刷プロトコル間で、プリンタ情報等の伝達等の機能面で大きな差異があるので、プリンタ情報等がデジタルカメラに正しく伝達されない可能性がある。一例としては、無線接続のダイレクト印刷においては、純粋なファイル転送プロトコルが利用いられている場合が多く、それらでは、ダイレクト印刷に固有の機器情報や印刷ジョブ情報の伝達が規定されていない。
【００１０】
また上記課題を解決したとしても、新たな課題が発生する。この新たな課題について、上記課題の解決方法として以下のような方法をとった場合を例にとって説明する。
【００１１】
ＩｒＤＡ（Infrared Data Association）によって規定された赤外線送受信装置を備えるカメラ付き携帯電話からの画像ファイルを転送して印刷する場合、アダプタは自機の備える赤外線送受信装置によって、その画像ファイルを受け取ると、プリンタに対してその画像ファイルの印刷を行うための印刷ジョブを発行する。ここで、カメラ付き携帯電話からの画像ファイルの転送が正しく完了した場合、アダプタはカメラ付き携帯電話に対して転送完了応答を行う。
【００１２】
このとき例えば、このデータ転送完了応答後に印刷ジョブをプリンタへ発行すると、プリンタが、例えばＰＣからの印刷中でビジー（Busy）状態で、直ぐに印刷ができなかったり、或いは用紙無し等のトラブルが発生していて印刷が行えない場合がある。この場合、携帯電話のユーザは、その携帯電話での動作結果（転送完了）から、これらの問題を認識することができない。
【００１３】
またプリンタがＰＣと接続されている場合、カメラ付き携帯電話からの画像転送中にＰＣからの印刷要求が発生すると、そのプリンタにおける印刷の優先度がＰＣの方が高いと、ＰＣからの印刷要求に応じた印刷が優先されてしまう。例えば、ユーザがカメラ付き携帯電話で撮影した画像を印刷するために、プリンタにＬ判の用紙をセットした状態でプリンタに画像データを転送している際に、ＰＣからの印刷要求により印刷が開始されると、そのＬ判の写真用紙に文書が印刷されることになる。
【００１４】
また低価格のプリンタでは、プリンタ本体に液晶画面を有していないものも多く、このようなプリンタでは、ダイレクト印刷時の印刷状況の表示機能を接続先のデジタルカメラに任せている。これに対してアダプタを介してカメラ付き携帯電話と低価格のプリンタとを接続している場合、印刷状況などをユーザに提示するために、そのプリンタとアダプタ間とは異なる通信プロトコルで、そのプリンタの印刷状況をそのアダプタを介してカメラ付き携帯電話へ転送し、その携帯電話の表示部に印刷状況を表示させることは非常に困難である。また低価格のプリンタでは、プリンタのＵＩが乏しく、印刷時の紙サイズなどの各種印刷設定をプリンタ単体では行えない場合が多い。またアダプタを介してプリンタとカメラ付き携帯電話を接続している場合、カメラ付き携帯電話からの画像データの転送時には、前述の印刷設定をアダプタに対して指示できない場合がある。
【００１５】
また画像データ源である携帯電話やデジカメからプリンタ装置への画像データの送信手段が、例えばＩｒＤＡのように低速なインターフェースを使用している場合は、そのインターフェースによる画像データの転送中、そのプリンタ装置がそのデータ供給源にに占有されてしまうため、プリンタ装置の稼働率の大幅な低下を招いてしまう。
【００１６】
また画像データ源からの画像データに基づいて印刷が開始された後、印刷途中にプリンタ装置のインクや記録シートがなくなったり、何らかのエラーが生じたりして印刷が完了できなくなる場合がある。しかしこの様な場合でも、画像データ源からの画像データの転送が完了してしまっていると、その画像データ源とプリンタ装置との間の接続は正常終了してしまっているので、プリンタ装置からその画像データ源に対して印刷不具合の発生を通知する手段がないため、印刷が未完了である旨を、その画像データ源に通知できなくなる。これはサーバであるプリンタ装置とクライアントである画像データ源とが共通のプロトコルで接続されてダイレクト印刷を行うのではなく、互いのプロトコルの差異を介在しているアダプタが吸収してダイレクト印刷を行っている場合に顕在化する問題である。
【００１７】
更に、クライアントがバッテリ駆動で動作するモバイル機器の場合には、画像データの転送に多くの時間を要するのに加えて、プリンタ装置によっては印刷に時間を要する場合があり、印刷が完了する前にクライアントのバッテリ残量がなくなったり、最悪の場合には印刷を完了できなくなる場合が考えられる。またバッテリ残量がなくなるまでは電池が消耗しないまでも、ダイレクト印刷のために長い時間を要すると、その後のモバイル機器としての動作を保障する観点から大きな問題となり得る。
【００１８】
また、クライアントからアダプタに画像データが転送されても、そのアダプタからプリンタ装置がデータを受信できない状況、例えばプリンタ装置がＰＣと接続されていてＰＣからのデータを印刷している場合には、そのアダプタからプリンタ装置へのデータ転送が長時間待たされてしまい、その間、そのクライアントもデータ転送の完了が通知されずに待たされてしまう。これは、クライアントがバッテリ駆動のモバイル機器の場合には大きな問題となる。
【００１９】
また従来は、プリンタの印刷の完了と、カメラ付き携帯電話からのデータ送信の完了に伴うカメラ付き携帯電話の解放のいずれを優先させるかをユーザが指定できないため、ユーザの優先順位に即した適切な処理が行われていなかった。
【００２０】
本発明の目的は上記従来技術の問題点を解決することにある。
【００２１】
また本願発明の特徴は、画像供給装置と印刷装置との間に中継装置を介在させて印刷する印刷システムにおいて、画像供給装置と印刷装置の稼動効率を高めることができる印刷システム及びその中継装置とその制御方法を提供することにある。
【課題を解決するための手段】
【００２２】
上記特徴は、独立クレームに記載の特徴の組み合わせにより達成され、従属項は発明の単なる有利な具体例を規定するものである。
【００２３】
本発明の一態様に係る印刷システムは以下のような構成を備える。即ち、
画像供給機器が保持する画像データを中継装置を経由させて印刷装置に出力して印刷する印刷システムであって、
前記中継装置は、第１通信プロトコルで前記印刷装置と通信する第１インターフェースと、前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２インターフェースとを有し、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードと、
前記第１動作モードと前記第２動作モードのいずれかを選択する選択手段と、
前記選択手段による選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え手段とを有することを特徴とする。
【００２４】
本発明の一態様に係る画像供給装置は以下のような構成を備える。即ち、
画像データを中継装置を経由させて印刷装置に出力する画像供給装置であって、
前記中継装置と通信するインターフェースと、
前記中継装置への画像データの送信が完了する前に前記中継装置から前記印刷装置に印刷ジョブを発行させる第１動作モードと、前記中継装置への画像データの送信が完了した後前記インターフェースを介して前記印刷装置に印刷ジョブを発行させる第２動作モードのいずれかを選択する選択手段とを有することを特徴とする。
【００２５】
本発明の一態様に係る中継装置は以下のような構成を備える。即ち、
画像供給機器が保持する画像データを中継して印刷装置に出力して印刷させる中継装置であって、
第１通信プロトコルで前記印刷装置と通信する第１インターフェースと、
前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２インターフェースと、
前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、前記第２インターフェースにより前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードとのいずれかを選択する選択手段と、
前記選択手段による選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え手段とを有することを特徴とする。
【００２６】
本発明の一態様に係る中継装置の制御方法は以下のような工程を備える。即ち、
画像供給機器が保持する画像データを中継して印刷装置に出力して印刷させる中継装置の制御方法であって、
第１通信プロトコルで前記印刷装置と通信する第１通信工程と、
前記第１通信プロトコルとは異なる第２通信プロトコルで前記画像供給機器と通信する第２通信工程と、
前記第２通信工程で前記画像供給装置からの画像データを受信し、当該画像データの受信が完了する前に前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第１動作モードと、前記第２通信工程で前記画像供給装置からの画像データを受信し、当該画像データの受信が完了した後前記第１インターフェースを介して前記印刷装置に印刷ジョブを発行する第２動作モードとのいずれかを選択する選択工程と、
前記選択工程での選択結果に応じて前記第１動作モードと前記第２動作モードとを切り替える切替え工程とを有することを特徴とする。
【００２７】
尚、この発明の概要は、必要な特徴を全て列挙しているものでなく、よって、これら特徴群のサブコンビネーションも発明になり得る。
【発明の効果】
【００２８】
本発明によれば、画像供給装置と印刷装置との間に中継装置を介在させて印刷する印刷システムにおいて、画像供給装置と印刷装置の稼動効率を高めることができる。
【発明を実施するための最良の形態】
【００２９】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は、本願の特許請求の範囲に係る発明を限定するものでなく、また、本実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００３０】
図１は、本発明の実施の形態に係るフォトダイレクトプリンタ装置（以下、ＰＤプリンタ）１０００の概観斜視図である。このＰＤプリンタ１０００は、ホストコンピュータ（ＰＣ）からデータを受信して印刷する通常のＰＣプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラやＰＤＡなどからの画像データを受信して印刷する機能を備えている。
【００３１】
図１において、本実施形態に係るＰＤプリンタ１０００の外殻をなす本体は、下ケース１００１、上ケース１００２、アクセスカバー１００３及び排出トレイ１００４の外装部材を有している。また、下ケース１００１は、ＰＤプリンタ１０００の略下半部を、上ケース１００２は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部がされている。更に、排出トレイ１００４は、その一端部が下ケース１００１に回転自在に保持され、その回転によって下ケース１００１の前面部に形成される開口部を開閉させ得るようになっている。このため記録動作を実行させる際には、排出トレイ１００４を前面側へと回転させて開口部を開成させることにより、ここから記録されたシート（普通紙、専用紙、樹脂シート等を含む。以下単に記録シート）が排出可能となると共に、排出された記録シートを順次積載し得るようになっている。また排紙トレイ１００４には、２枚の補助トレイ１００４ａ，１００４ｂが収納されており、必要に応じて各トレイを手前に引き出すことにより、記録シートの支持面積を３段階に拡大、縮小させ得るようになっている。
【００３２】
アクセスカバー１００３は、その一端部が上ケース１００２に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー１００３を開くことによって本体内部に収納されている記録ヘッドカートリッジ（不図示）或いはインクタンク（不図示）等の交換が可能となる。尚、ここでは特に図示しないが、アクセスカバー１００３を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバー１００３の開閉状態を検出し得るようになっている。
【００３３】
また、上ケース１００２の上面には、電源キー１００５が設けられている。また、上ケース１００２の右側には、液晶表示部１００６や各種キースイッチ等を備える操作パネル１０１０が設けられている。この操作パネル１０１０の構造は、図２を参照して詳しく後述する。１００７は自動給送部で、記録シートを装置本体内へと自動的に給送する。１００８は紙間選択レバーで、プリントヘッドと記録シートとの間隔を調整するためのレバーである。１００９はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード（ＰＣ）としては、例えばコンパクトフラッシュ（登録商標）メモリ、スマートメディア、メモリスティック等がある。１０１１はビューワ（液晶表示部）で、このＰＤプリンタ１０００の本体に着脱可能であり、ＰＣカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、１コマ毎の画像やインデックス画像などを表示するのに使用される。１０１２は後述するデジタルカメラを接続するためのＵＳＢ端子であり、本発明によるアダプタ１２００を接続することが可能である。また、このＰＤ装置１０００の後面には、パーソナルコンピュータ（ＰＣ）を接続するためのＵＳＢコネクタが設けられている。
【００３４】
図２は、本実施の形態に係るＰＤプリンタ１０００の操作パネル１０１０の概観図である。
【００３５】
図において、液晶表示部１００６には、その左右に印刷されている項目に関するデータを各種設定するためのメニュー項目が表示される。ここに表示される項目としては、例えば、複数ある写真画像ファイルの内、印刷したい写真画像の先頭番号、指定コマ番号（開始コマ指定／印刷コマ指定）、印刷を終了したい最後の写真番号（終了）、印刷部数（部数）、印刷に使用するシートの種類（用紙種類）、１枚のシートに印刷する写真の枚数設定（レイアウト）、印刷の品位の指定（品位）、撮影した日付を印刷するかどうかの指定（日付印刷）、写真を補正して印刷するかどうかの指定（画像補正）、印刷に必要なシートの枚数表示（用紙枚数）等がある。これら各項目は、カーソルキー２００１を用いて選択、或いは指定される。２００２はモードキーで、このキーを押下する毎に、印刷の種類（インデックス印刷、全コマ印刷、１コマ印刷、指定コマ印刷等）を切り替えることができ、これに応じてＬＥＤ２００３の対応するＬＥＤが点灯される。２００４はメンテナンスキーで、プリントヘッドのクリーニング等、プリンタ装置のメンテナンスを行わせるためのキーである。２００５は印刷開始キーで、印刷の開始を指示する時、或いはメンテナンスの設定を確立する際に押下される。２００６は印刷中止キーで、印刷を中止させる時や、メンテナンスの中止を指示する際に押下される。
【００３６】
次に図３を参照して、本発明の実施の形態に係るＰＤプリンタ１０００の制御に係る主要部の構成を説明する。なお、この図３において、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【００３７】
図３において、３０００は制御部（制御基板）を示している。３００１はＡＳＩＣ（専用カスタムＬＳＩ）を示している。３００２はＤＳＰ（デジタル信号処理プロセッサ）で、内部にＣＰＵを有し、後述する各種制御処理及び、輝度信号（ＲＧＢ）から濃度信号（ＣＭＹＫ）への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。３００３はメモリで、ＤＳＰ３００２のＣＰＵの制御プログラムを記憶するプログラムメモリ３００３ａ、及び実行時のプログラムを記憶するＲＡＭエリア、画像データなどを記憶するワークメモリとして機能するメモリエリアを有している。３００４はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリント方式のプリンタエンジンが搭載されている。３００５はデジタルカメラ（ＤＳＣ）３０１２を接続するためのポートとしてのＵＳＢコネクタである。このＵＳＢコネクタ３００５には、後述するアダプタ１２００も接続することができ、このアダプタ１２００を介して、赤外線インターフェースを有するカメラ付き携帯電話１１００と接続し、その携帯電話１１００から画像データを受信してダイレクト印刷を行うことができる。この処理は詳しく後述する。
【００３８】
３００６はビューワ１０１１を接続するためのコネクタである。１０１３はＰＣ３０１０を接続するためのポートとしてのＵＳＢコネクタである。３００８はＵＳＢハブ（ＵＳＢＨＵＢ）で、このＰＤプリンタ１０００がＰＣ３０１０からの画像データに基づいて印刷を行う際には、ＰＣ３０１０からのデータをそのままスルーし、ＵＳＢ３０２１を介してプリンタエンジン３００４に出力する。これにより、接続されているＰＣ３０１０は、プリンタエンジン３００４と直接、データや信号のやり取りを行って印刷を実行することができる（一般的なＰＣプリンタとして機能する）。３００９は電源コネクタで、電源３０１９により、商用ＡＣから変換された直流電圧を入力している。ＰＣ３０１０は一般的なパーソナルコンピュータ、３０１１は前述したメモリカード（ＰＣカード）、３０１２はデジタルカメラ（ＤＳＣ：Digital Still Camera）である。
【００３９】
尚、この制御部３０００とプリンタエンジン３００４との間の信号のやり取りは、前述したＵＳＢ３０２１を介して行われる。
【００４０】
＜カメラ付き携帯電話の説明＞
図４は、本発明の実施の形態に係るアダプタ１２００を介してＰＤプリンタ１０００に画像データを供給してダイレクト印刷が可能なカメラ付き携帯電話１１００の外観図で、図４（Ａ）は、操作面が見えるように携帯電話を開放した状態を示し、図４（Ｂ）は、その背面を示している。
【００４１】
赤外線送受信部（ＩｒＤＡ）１１０１は、赤外線通信のために赤外線の送受信を行う。この赤外線送受信部１１０１は、アダプタ１２００との赤外線による送受信以外にも、他のカメラ付き携帯電話１１００との間での赤外線での送受信、ＴＶなどのリモコン受光部を持つ電子機器に対しての赤外線送信などが可能である。液晶表示部１１０２は、携帯電話として使用する際に各種情報を表示する以外にも、カメラ機能を使用する際には、ファインダとして画像を表示するとともに、撮影した写真などを表示することも可能である。操作ボタン１１０３は、携帯電話として使用する際のダイヤル操作を以外にも、メール文書の作成に使用される。またカメラ機能を使用する際には、シャッタなどのカメラ操作が可能である。尚、この操作ボタン１１０３の機能は、携帯電話１１００の仕様状況に応じて多種多様に変化する。撮像用レンズ１１０４は、通常のカメラのレンズとしての機能を有しており、このレンズ１１０４で被写体を捉えて操作ボタン１１０３を操作することにより、光学ズーム操作やピント調整などを行ったり、撮影を行うことができる。カードスロット１１０５は、メモリカードを接続するためのメモリカードスロットで、このメモリカードを使用することにより、撮像した画像を保存／参照する以外にも、携帯電話１１００内部の各種情報を保存／参照することが可能である。
【００４２】
図５は、本発明の実施の形態に係るカメラ付き携帯電話１１００の制御に係る主要部の構成を説明するブロック図である。尚、この図５において、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【００４３】
ＣＰＵ３１０３は、このカメラ付き携帯電話１１００全体の制御を司っている。ＲＯＭ３１０１は、ＣＰＵ３１０３により実行される処理手順を実行するためのプログラムや、各種データを記憶している。ここではプログラムが適宜バージョンアップが行われることを想定し、このＲＯＭ３１０１に書き込み可能な不揮発性メモリ、例えばフラッシュメモリを使用しても良い。ＲＡＭ３１０２は、ＣＰＵ３１０３による処理の実行時にワークエリアとして使用され、各種データを一時的に保存する。このＲＡＭ３１０２は、通常の揮発性メモリで構成してもよく、また電源を切断しても、その内容を保持する不揮発性メモリで構成してもよい。ＣＣＤ素子３１０６は、その素子面に光学ユニット３１０５で結像された画像に応じた電気信号を発生する。ドライバ３１０７は、ＣＰＵ３１０３の制御下で、光学ユニット３１０５のフォーカシングや絞りなどを制御する。メモリカード３１０９は、通常、コンパクトフラッシュ（登録商標）メモリカード、スマートメディア等が用いられ、撮影した画像の画像データ等を記憶している。
【００４４】
＜アダプタの説明＞
図６（Ａ）（Ｂ）は、本発明の実施の形態に係るアダプタ１２００の外観図である。
【００４５】
図６（Ａ）において、印刷続行ボタン１２０１は、印刷中断時の印刷再開を指示するボタンである。この印刷続行ボタン１２０１は、印刷ジョブの実行中以外では、他の機能を持たせてもよい。例えば、印刷時の記録シート（記録用紙）のサイズを選択するための用紙サイズ選択機能を持たせてもよい。また或は、用紙サイズ選択、印刷再開のそれぞれについて別個に、操作用ボタンを設けても良い。また用紙サイズ以外に、レイアウト、印刷枚数、日付設定その他印刷結果に関わる各種設定を行うための操作ボタンを別個に用意しても良い。赤外線送受信部１２０２は、赤外線による無線通信で使用され、本実施の形態では、携帯電話１１００の赤外線インターフェース１１０１との間でデータのやり取りを行うのに使用される。ＵＳＢ端子１２０３は、ＰＤプリンタ１０００のダイレクト印刷用のＵＳＢコネクタ３００５に接続するための端子である。状態表示ＬＥＤ（インジケータ）１２０４は、このアダプタ１２００の状態を表示しており、印刷待機状態、印刷受付状態、画像転送状態、印刷実行中状態、印刷エラー状態、転送エラー状態などに応じて、その発光色や、点灯、点滅のパターンを切り替えることで、このアダプタ１２００の状態をユーザに報知することができる。尚、このＬＥＤ１２０４は、このアダプタ１２００の状態を表示する以外に、各種ＵＩとして機能するものを具備しても良い。例えば、複数のＬＥＤをそれぞれの用紙サイズに対応させて用紙サイズを表示するようにしても良い。その場合は、各ＬＥＤの上部には、用紙サイズを示す文字列（Ａ４、ハガキ、カードなど）が印刷され、操作ボタン１２０１を押下する度に、そのＬＥＤの表示が切り替わり、それに応じて印刷に使用する用紙サイズを選択するようにしても良い。また用紙サイズ以外に、例えば、レイアウト、印刷枚数、日付設定、その他の印刷結果に関わる各種設定結果を表示するＬＥＤを別個に容易しても良い。また、数値を好適に表示するために、７セグメントのＬＥＤやＬＣＤなどを用いても良い。尚、上述した用紙サイズを示す文字列は、前述したようにアダプタ１２００の筐体に直接印刷する以外に、シールを添付して表示してもかまわない。この場合、世界各国の印刷文化圏に好適な用紙サイズ（例として、日本ではＡ４、Ｌ判、ハガキ、米国ではLetter（レター）、４×６、カード等）を印刷したシールを用意し、これらのサイズに対応するようにアダプタ１２００のＲＯＭ３１０１を差し替えることにより、アダプタ１２００の筐体は共通のままで、シールを張り替えることにより、世界各国で好適に利用できるようにしても良い。ロゴシール１２０５は、ダイレクト印刷規格であることを示すシールである。これにより、ＵＳＢ端子１２０３を、そのダイレクト印刷適用可能なＰＤプリンタに接続できることをユーザに認識させることができる。尚、このロゴシール１２０５を貼付する以外に、アダプタ１２００の筐体に直接ロゴを印刷したり、刻印したりしても良い。図６（Ａ）では、ＬＥＤやボタンといったＵＩを具備したアダプタを示したが、これらＵＩを排したアダプタも考えられる。このとき、アダプタがダイレクト印刷用のアダプタであることを明確にするためにも、ロゴシール貼付はますます有用で���る。
【００４６】
図６（Ｂ）は、同じく本実施の形態に係るアダプタ１２１０であって、前述した赤外線通信の代わりに後述するＵＳＢ通信を用いてアダプタを実現した場合の概観図である。
【００４７】
図中の１２１１、１２１３乃至１２１５の説明については、前述の図６（Ａ）における１２０１、１２０３乃至１２１５と同様である。１２１２はＤＳＣなどの画像供給装置とのＵＳＢ通信のためのＵＳＢ端子である。ここで、ＰＤプリンタ１０００および画像供給装置への接続は有線で行われ、取り回しの利便性を考えると本実施の形態に係るアダプタ１２１０は、外見上はケーブルのような形状となる。このとき、アダプタ上のＵＳＢ端子は１２１２，１２１３ともＵＳＢ−Ａコネクタの形状となるため、ユーザがアダプタの接続方向を誤る恐れがある。ここでアダプタ上のＰＤプリンタへ接続する側のＵＳＢ端子１２０３の近傍にロゴシール１２０５を添付または印刷、刻印することにより、前述した効果に加えて、アダプタの接続方向を誤ってしまうことを防ぐことも可能である。
【００４８】
次に図７を参照して、本発明の実施の形態に係るアダプタ１２００の制御に係る主要部の構成を説明する。
【００４９】
図７は、本実施の形態に係るアダプタ１２００のハードウェア構成を説明するブロック図である。尚、図７において、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【００５０】
ＣＰＵ３２０１は、ＲＯＭ３２０２に記憶されているプログラムに従って、後述する各種制御処理を担当している。ＲＯＭ３２０２は、ＣＰＵ３２０１により実行されるプログラムや、各種データを記憶している。ここではＲＯＭ３２０２に記憶されるプログラムが適宜バージョンアップされることを想定し、ＲＯＭ３２０２を、書き込み可能な不揮発性メモリ、例えばフラッシュメモリで構成してもよい。ＲＡＭ３２０３は、ＣＰＵ３２０１のワークエリアとして使用され、ＣＰＵ３２０１による制御処理時に各種データを一時的に保存する。尚、このＲＡＭ３２０３は、電源遮断時に内容が消去される揮発性のメモリであってもよく、或はＲＯＭ３２０２と同様に、書き込み可能な不揮発性メモリ、例えばフラッシュメモリで構成されてもよい。またこれらを混在させ、目的に応じて別個のＲＡＭを利用するようにしてもかまわない。一例としては、印刷画像ファイルを保持する領域のみを不揮発性メモリに割り当てることで、アダプタ１２００の電源遮断後であっても、そのアダプタ１２００内に画像ファイルを不揮発に保持し、アダプタ１２００の電源再投入時に画像の再印刷を実現できる。
【００５１】
図８は、本発明の実施の形態に係るアダプタ１２００をＰＤプリンタ１０００に接続し、そのアダプタ１２００の赤外線送受信部１２０２に対しカメラ付き携帯電話１１００の赤外線送受信部１１０１を向けた様子を説明する図である。図８のような接続により、本実施の形態に係るアダプタ１２００を介して、携帯電話１１００からＰＤプリンタ１０００に画像データを送信してダイレクト印刷を実行できる。
【００５２】
＜ダイレクト印刷アダプタの通信プロトコルスタックの説明＞
図９は、本実施の形態に係るアダプタ１２００を、図８に示すようにＰＤプリンタ１０００に接続し、カメラ付き携帯電話１１００から画像データを供給する場合における、ＰＤプリンタ１０００、アダプタ１２００、カメラ付き携帯電話１１００それぞれが構築するプロトコルスタックの概要を説明する図である。
【００５３】
ＰＤプリンタ１０００は、物理インターフェースとしてＵＳＢホストとなり、ＵＳＢで標準に規定されているＳＩＣＤ（Still Image Capture Device）クラスのＵＳＢホストとして働く。トランスポート制御は、このＳＩＣＤを利用したＰＴＰ（Picture Transfer Protocol（PIMA15740））によって実現される。ＰＤプリンタ１０００内部のダイレクト印刷アプリケーションは、このＰＴＰを利用してダイレクト印刷のための情報を、画像供給装置と交換することにより、ダイレクト印刷対応のプリンタ装置として機能する。
【００５４】
また携帯電話１１００は、物理インターフェースとしてＩｒＤＡ（Infrared Data Association）のＳＩＲ装置、又ははＦＩＲ装置を用い、赤外線通信端末装置としても機能している。上位のプロトコルとして、リンクアクセスにＩｒＬＡＰ（Link Access Protocol）を、リンク管理にＩｒＬＭＰ（Link Management Protocol）を用い、トランスポート制御は、このＩｒＬＭＰを利用したＩｒＴｉｎｙＴＰ（Tiny Transport Protocol）によって実現される。この携帯電話１１００内部のデータ転送アプリケーションは、このＩｒＴｉｎｙＴＰ上のＩｒＯＢＥＸ（Object Exchange Protocol）を利用してデータ転送を行うことにより、赤外線データ通信端末として機能する。尚、他のプロトコル構成によっても赤外線データ通信端末を実現でき、例えばデータ転送アプリケーションは、ＩｒＴｒａｎ−Ｐ（Transfer Picture）を用いた画像転送や、ＩｒＣＯＭＭによるシリアル／パラレルポートエミュレーションを用いたデータ転送によっても実現可能である。
【００５５】
本実施の形態に係るアダプタ１２００は、ＰＤプリンタ１０００及びカメラ付き携帯電話１１００に対応するプロトコルスタックを両方とも具備し、プロトコル変換部（Protocol Translator）９００によって相互の通信プロトコルを変換する。例としては、このアダプタ１２００は、携帯電話１１００より赤外線で送信された画像データを受け取り、その受け取った画像データを用い、プロトコル変換部９００によってダイレクト印刷用情報を生成する。そして、その生成した印刷用情報をＰＤプリンタ１０００へ送信してダイレクト印刷ジョブを発行する。
【００５６】
尚、図９においては、画像データのデータ源としてＩｒＤＡ端子を具備したカメラ付き携帯電話１１００を示したが、これ以外にもＩｒＤＡ端子を具備し画像情報を転送できる端末であればカメラ付きでない携帯電話、ＰＨＳ，ＰＤＡ、デジタルスチルカメラその他の端末であってもよい。
【００５７】
また、画像データを転送するために画像データ源が具備する通信手段がＩｒＤＡ以外のものであってもよく、例えばBlueTooth, 802.11xなどの無線通信手段や、ＵＳＢ、ＩＥＥＥ１３９４、Ｅｔｈｅｒｎｅｔ（イーサネット）（登録商標）などの有線通信手段であってもよい。
【００５８】
図１０は、アダプタ１２００と携帯電話１１００との間でブルーツース（BlueTooth）により通信する場合のプロトコルスタックの構成の一例を示す図で、ＯＢＥＸ（Object Exchange Protocol）は、ＯＰＰ，ＢＩＰ，ＢＰＰであっても良い。
、図１１は、アダプタ１２００とＰＣやゲーム機との間をＵＳＢ接続した場合のプロトコルスタックの構成の一例を示す図で、ファイルシステム（FileSystem）はＭＳＣであっても良い。
【００５９】
図１２は、アダプタ１２００とＰＣやデジタルテレビとの間をＩＥＥＥ１３９４を用いた際のプロトコルスタックの構成の一例を示す図で、ＤＰＰはＳＢＰ−２であっても良い。
【００６０】
図１３は、アダプタ１２００とＰＣやＰＤＡやモバイルゲーム機との間で８０２．１１ｘを用いて通信する際のプロトコルスタックの構成の一例を示す図で、PrintBasisはＩＰＰ，ＰＴＰ／ＩＰであっても良い。
【００６１】
これらプロトコルスタックの各層の説明については省略するが、基本的には前述のＩｒＤＡによる例と同じく、画像データの供給源から受け取った画像データを用いて、プロトコル変換部９００によってダイレクト印刷用情報を生成し、ＰＤプリンタ１０００へダイレクト印刷ジョブを発行する。これら各種の通信手段を用いた画像データの供給源としては、前述の携帯電話など以外にも、カーナビゲーションシステム、ＰＣ、ゲーム機、デジタルＴＶその他の機器が考えられる。
【００６２】
図１４は、本実施の形態に係るＰＤプリンタ１０００とアダプタ１２００とをＵＳＢ接続してダイレクト印刷を行う場合、ＰＤプリンタ１０００とアダプタ１２００との間でのデータのやり取りを説明する図である。この図１４は、図９に示すＰＴＰアーキテクチャでダイレクト印刷を実現する場合で示している。
【００６３】
ＰＤプリンタ１０００とアダプタ１２００とが物理的に接続された後、まず１４０１で、ＰＤプリンタ１０００とアダプタ１２００との間で初期化が行われる。ここで互いの機器がダイレクト印刷に対応していることが確認される。次に１４０２で、アダプタ１２００はＰＤプリンタ１０００に対して、ＰＤプリンタ１０００のCapability要求を発行し、ＰＤプリンタ１０００のCapabilityを取得する。次に１４０３で、アダプタ１２００はＰＤプリンタ１０００に対してジョブを発行して印刷を依頼する。次に１４０４で、ＰＤプリンタ１０００は、アダプタ１２００に対してステータス（Status）を通知し、印刷処理の開始を通知する。次に１４０５で、ＰＤプリンタ１０００は、アダプタ１２００に対してファイル取得を要求して、印刷処理に必要な画像ファイルを取得する。そして１４０６で、ＰＤプリンタ１０００は印刷処理を実行して印刷を完了する。最後に１４０７で、ＰＤプリンタ１０００はアダプタ１２００に対してステータスを通知し、印刷処理の完了を通知する。
【００６４】
ここで１４０１〜１４０４，１４０７では、ＰＤプリンタ１０００とアダプタ１２００とはスクリプトを交換して互いに情報を交換している。１４０５は、ＰＴＰプロトコルをそのまま利用した純粋なファイル転送であり、ここでは「GetObject」，「GetPartialObject」等のファイル転送オペレーションが用いられる。また印刷処理１４０６はＰＤプリンタ１０００における内部処理である。
【００６５】
以下、図１５〜１９を参照して各処理の詳細を説明する。
【００６６】
図１５は、図１４の１４０１で示す、ＵＳＢを使用したダイレクト印刷時の初期化処理の流れを示す図である。
【００６７】
ＰＤプリンタ１０００とアダプタ１２００とが物理的に接続された後、まず１５０１で、ＰＤプリンタ１０００からアダプタ１２００に対して「GetDeviceInfo」が送信される。これによりアダプタ１２００に対して、そのアダプタ１２００が保持しているオブジェクトに関する情報が要求される。これに対して１５０２で、アダプタ１２００は、「DeviceInfo Dataset」により、そのアダプタ１２００が保持しているオブジェクトに関する情報をＰＤプリンタ１０００に送信する。次に１５０３で、「OpenSession」により、アダプタ１２００を画像データのリソースとして割り当て、必要に応じてデータオブジェクトにハンドルをアサインしたり、特別な初期化を行うための手順の開始要求が発行される。これに対してアダプタ１２００から肯定応答（ＯＫ）が返送されるとＰＴＰによる通信が開始される。
【００６８】
次に１５０４で、ＰＤプリンタ１０００からアダプタ１２００に対して、スクリプト形式の全てのハンドルを要求する（Storage ID: FFFFFF, Object Type: Script）。これに対して１５０５で、アダプタ１２００に保持されている全てのハンドルリストが返送される。次に１５０６，１５０７において、ＰＤプリンタ１０００からｉ番目のオブジェクトハンドルの情報を取得する。ここで、このオブジェクトに、アダプタ１２００の識別を示すキーワード（例えば「山」）が含まれていると、次に１５０８において、ＰＤプリンタ１０００からオブジェクト情報の送信を指示して（SendObjectInfo）、それに対して肯定応答（ＯＫ）を受信すると、「SendObject」により、オブジェクト情報をＰＤプリンタ１０００からアダプタ１２００に対して送信する。ここで、このオブジェクトには、前述の１５０７で受信したキーワードに対する応答キーワード（合言葉）として、例えば「川」が含まれている。
【００６９】
このようにして、ＰＤプリンタ１０００とアダプタ１２００の双方が互いに接続相手を認識できることになり、これ以降はダイレクト印刷を開始することができる。
【００７０】
図１６（Ａ）（Ｂ）は、ＰＤプリンタ１０００（ホスト）とアダプタ１２００（スレーブ）との間でのＵＳＢによるダイレクト印刷時のスクリプトの転送処理を説明する流れ図で、図１４の１４０２〜１４０４，１４０７におけるＰＴＰレベルでの共通の通信手順を示している。
【００７１】
図１６（Ａ）は、ＰＤプリンタ１０００からアダプタ１２００に対してスクリプトを伝達する手順を示している。
【００７２】
まず最初に、ＰＤプリンタ１０００は「SendObjectInfo」により、アダプタ１２００に対してオブジェクト情報の送信要求を伝える。次にＰＤプリンタ１０００からアダプタ１２００に「ObjectInfo Dataset」を送信することにより、そのオブジェクトに関する情報を通知する。これを受信したアダプタ１２００は、そのオブジェクト情報を解析し、オブジェクト本体が受信可能であれば受信予定のオブジェクトに割り当てるオブジェクトハンドル番号と共に「ＯＫ」を応答する。この「ＯＫ」の応答に続いて、ＰＤプリンタ１０００は「SendObject」により、アダプタ１２００に対してオブジェクト本体の送信要求を伝える。そして続いて「Object Data」を送信して、そのオブジェクト本体をスクリプト（Script）形式でアダプタ１２００に送信する。アダプタ１２００はそのオブジェクト本体を受信し、オブジェクト本体の受信を完了したら「ＯＫ」で応答する。
【００７３】
図１６（Ｂ）は、アダプタ１２００からＰＤプリンタ１０００に対してスクリプトを伝達する手順を説明する図である。
【００７４】
まずアダプタ１２００からＰＤプリンタ１０００に対して「RequestObjectTransfer」を送信して、ＰＤプリンタ１０００が所定のオブジェクトハンドルのオブジェクト取得を行うように促す。これにより、ＰＤプリンタ１０００は「GetObjectInfo」によりアダプタ１２００に対して所定のオブジェクトハンドルのオブジェクトのオブジェクト情報の取得要求を伝える。この「GetObjectInfo」を受信すると、アダプタ１２００は、送信したいオブジェクトに関する情報「ObjectInfo Dataset」をＰＤプリンタ１０００に送信し、送信が完了したら「ＯＫ」を応答する。この応答「ＯＫ」に続いて、ＰＤプリンタ１０００は、「GetObject」によりオブジェクト本体の伝送要求を伝える。これを受信するとアダプタ１２００は、「ObjectDataset」により、送信したいオブジェクトのオブジェクト本体をＰＤプリンタ１０００に送信し、送信が完了したら「ＯＫ」を送信する。
【００７５】
以上の様にして、ＵＳＢでのダイレクト印刷時には、ＰＤプリンタ１０００とアダプタ１２００との間でスクリプトをやり取りして情報の交換を行う。
【００７６】
図１７〜図１９は、本実施の形態に係るＵＳＢでのダイレクト印刷時に交換されるスクリプトの一例を説明する図である。
【００７７】
図１７（Ａ）（Ｂ）は、本実施の形態に係るＵＳＢでのダイレクト印刷時のCapability取得スクリプトの一例を示す図であり、前述の図１４の処理１４０２で使用される。
【００７８】
図１７（Ａ）は、アダプタ１２００からＰＤプリンタ１０００に対して送信されるCapability要求スクリプト例を示し、この例では、「Format/」により、ＰＤプリンタ１０００がサポートしている画像フォーマットの種類を要求している。
【００７９】
図１７（Ｂ）は、図１７（Ａ）に示すCapability要求に対して、ＰＤプリンタ１０００からアダプタ１２００に対して送信される応答スクリプトの一例を示し、この例では、＜Format＞と＜Format/＞で挟まれた「JPEG」「PNG」により、ＰＤプリンタ１０００が、ＪＰＥＧ及びＰＮＧの２種類の画像フォーマットをサポートしていることが記述されている。
【００８０】
ここで図１７（Ａ）に示すCapability要求スクリプトは、図１６（Ｂ）の「Object Dataset」でアダプタ１２００からＰＤプリンタ１０００に送信され、図１７（Ｂ）に示す応答スクリプトは、図１６（Ａ）の「Object Dataset」で、ＰＤプリンタ１０００からアダプタ１２００に送信される。
【００８１】
Capability取得スクリプトは、これ以外にも、印刷用紙のサポートサイズや、印刷用紙の種類、また各印刷用紙のサイズに対応したレイアウト印刷機能、固定サイズ印刷機能、印刷品位、画像補正、画像切り取り、日付印刷、ファイル名印刷等のCapability情報のやり取りに利用される。
【００８２】
図１８（Ａ）〜（Ｃ）は、本実施の形態に係るＵＳＢでのダイレクト印刷時のジョブ発行スクリプト例を示し、これは例えば図１４の１４０３で使用される。
【００８３】
図１８（Ａ）は、アダプタ１２００からＰＤプリンタ１０００に送信されるジョブ発行スクリプトの一例を示し、本例ではオブジェクトハンドル番号が「00000001」のＪＰＥＧ画像の印刷を要求している。このジョブ発行スクリプトは、図１６（Ｂ）の「Object Dataset」を使用して、アダプタ１２００からＰＤプリンタ１０００に送信される。
【００８４】
図１８（Ｂ）は、図１６（Ａ）の「Object Dataset」を使用して、ＰＤプリンタ１０００からアダプタ１２００に送信され、図１８（Ａ）のジョブ発行スクリプトに対する応答スクリプト例を示しており、本例ではＰＤプリンタ１０００が印刷ジョブを受け付けて、「ＯＫ」で応答している。
【００８５】
図１８（Ｃ）は、図１６（Ａ）の「Object Dataset」を使用して、ＰＤプリンタ１０００からアダプタ１２００に送信する、図１８（Ａ）のジョブ発行スクリプトに対する他の応答スクリプト例を示しており、本例ではＰＤプリンタ１０００が印刷ジョブを実行できずに拒否を示す「ＮＧ」で応答している。
【００８６】
このジョブ発行スクリプトは、他にもCapability取得のスクリプトで説明した様に、画像フォーマット以外にも、例えば用紙サイズ等を指定する場合にも利用される。
【００８７】
また複数の画像を１回のジョブ発行スクリプトで指定することや、各画像の部数指定、切り取り領域指定、日付指定、ファイル名の指定にも利用される。
【００８８】
また図１８（Ｃ）における拒否内容も「ＮＧ」だけでなく、その拒否の理由として、例えば、現在、他の画像データ源からの印刷を行っているためか、それとも印刷ジョブの設定が間違っているためか等の理由を通知する場合にも利用されても良い。
【００８９】
図１９（Ａ）（Ｂ）は、本実施の形態に係るＵＳＢによるダイレクト印刷時のステータス（Status）通知スクリプトの一例を示す図で、図１４の１４０４及び１４０７で使用される。
【００９０】
図１９（Ａ）は、図１６（Ａ）の「Object Dataset」を使用して、ＰＤプリンタ１０００からアダプタ１２００に送信されるStatus通知スクリプト例を示し、本例ではＰＤプリンタ１０００が現在印刷状態に無く、印刷開始可能な待機状態「IDLE」であるステータスを通知している。
【００９１】
図１９（Ｂ）は、図１６（Ｂ）の「Object Dataset」を使用して、アダプタ１２００からＰＤプリンタ１０００に送信される、図１８（Ａ）のStatus通知のスクリプトに対する応答スクリプト例を示し、この例では「ＯＫ」で応答している。
【００９２】
このStatus通知スクリプトは、他にも、ＰＤプリンタ１０００におけるエラーの発生状況や、その発生したエラーの種別、印刷中のページ数や印刷枚数等の印刷中のジョブの状況、ケーブルを外してもＰＤプリンタ１０００が印刷ジョブを完遂できる状態で有るか否か、ＰＤプリンタ１０００が次の印刷ジョブを受け付け可能であるか否か、ＰＤプリンタ１０００のCapabilityが更新されたか否か、印刷ジョブの終了理由等のやり取りに利用される。
【００９３】
またこのステータス（status）は、ＰＤプリンタ１０００からアダプタ１２００にステータスを通知する場合だけでなく、アダプタ１２００からＰＤプリンタ１０００にステータスを要求する場合も有り得る。
【００９４】
更に、スクリプト交換は、本例で説明したCapabilityの取得、ジョブ発行、ステータス通知以外にも、印刷ジョブの中断、エラーからの復帰、バージョン情報、機器名、シリアル番号、ベンダ名等の認証情報の確認・交換、等のコマンドにも利用されても良い。
【００９５】
図２０は、本実施の形態に係るアダプタ１２００と携帯電話１１００とが赤外線インターフェース１１０１を介して通信する場合の初期化及びファイル転送時の処理の流れを説明する図である。この図では、ファイル転送を図９に示すＩｒＯＢＥＸアーキテクチャで実施した場合で説明する。
【００９６】
まず２０１１で、携帯電話１１００からアダプタ１２００に対して接続確認「CONNECT」を発行する。次に２０１２で、アダプタ１２００が携帯電話１１００との接続を許可する場合には「SUCCESS」応答を返す。次に２０１３で、携帯電話１１００は転送したいファイルのファイル名やサイズ等の情報とファイル本体を含む全体データのうちの先頭パケットを送信する（PUT）。アダプタ１２００は、その先頭パケットを正常に受信したら、２０１４で次のデータを送付可能である旨を示す応答「CONTINUE」を返す。これにより携帯電話１１００は、２０１５で次のパケットを送信する（PUT）。次に２０１６で、アダプタ１２００は、そのパケットを正常に受信すると、次のデータを送付可能である旨を示す応答「CONTINUE」返す。以下同様にして、２０１７〜２０１８が、送信するパケットの数分繰り返し実行される。こうして２０１９で、携帯電話１１００が最終パケットを送信し（PUT）、２０２０で、アダプタ１２００が最後のパケットを正常に受信したら、データの受信が完了した旨を示す応答「SUCCESS」を携帯電話１１００に返して、この手順を終了する。
【００９７】
以上説明したように、携帯電話１１００から「PUT」で送信された画像に対し、アダプタ１２００はＰＴＰのオブジェクトハンドルを割り振り、そのオブジェクトハンドルを利用したダイレクト印刷をＰＤプリンタ装置１０００に対して依頼することとなる。
【００９８】
図１０に示すような、アダプタ１２００と携帯電話１１００とがブルーツースで接続された場合の処理の流れも、前述した図２０の説明とほぼ同等であるので、その説明を省略する。
【００９９】
また図１１に示す、アダプタ１２００と携帯電話１１００とがＵＳＢで接続された場合の処理は、ＰＴＰの「SendObjectInfo」と「SendObject」の手順を利用するので、その説明を省略する。
【０１００】
［実施の形態１］
以下、本発明の実施の形態１について、前述の図面及び図２１乃至図２６を参照して説明する。尚、本実施の形態に係るアダプタ１２００の動作を説明するために、ＰＤプリンタ１０００、アダプタ１２００、カメラ付き携帯電話１１００（以下、携帯電話）の相互作用を時系列順に並べた図面を示した。ここでＰＤプリンタ１０００及び携帯電話１１００の動作については市場での該当製品の動作の一例で示している。
【０１０１】
＜アダプタ接続時の動作シーケンス＞
図２１は、本発明の実施の形態に係る印刷システムにおいて、ＰＤプリンタ１０００とアダプタ１２００とを接続した時のＰＤプリンタ１０００とアダプタ１２００と携帯電話１１００の動作シーケンスを説明する図である。尚、ここでアダプタ１２００の動作シーケンスの中でアダプタ１２００の状態表示ＬＥＤ（以下、インジケータ）１２０４の状態変化についても記載している。
【０１０２】
本実施の形態１では、インジケータ１２０４の各表示状態を以下のように割り当てる。  アダプタ１２００の電源がオフになっている状態ではインジケータ１２０４を消灯する。アダプタ１２００がＰＤプリンタ１０００との間での接続を確立途中では、インジケータ１２０４を点滅１で表示駆動する（例：インジケータ１２０４を緑色で毎秒１回点滅する）。アダプタ１２００がＰＤプリンタ１０００との間での接続を確立し、携帯電話１１００から画像データの受付が可能である状態では、インジケータ１２０４を点灯（例：インジケータ１２０４を緑色で点灯する）する。アダプタ１２００が携帯電話１１００からの画像データを受信している最中は、インジケータ１２０４を点滅２で表示駆動する（例：インジケータ１２０４を緑色で毎秒５回点滅する）。アダプタ１２００が携帯電話１１００からの画像データの受信を完了した後、ＰＤプリンタ１０００に画像データを転送して印刷ジョブを実行している間では、インジケータ１２０４を点滅３で駆動する（例：インジケータ１２０４を緑色で毎秒２回点滅する）。更に、アダプタ１２００がＰＤプリンタ１０００からの印刷エラーの通知を受け取って印刷を中断している状態では、インジケータ１２０４を点滅４で駆動する（例：インジケータ１２０４を黄色で毎秒２回点滅する）とした。尚、これ以外にも、インジケータ１２０４の点滅パターンの数を増やすことで、アダプタ１２００における上記以外の状態を表すことも可能である。
【０１０３】
以下、図注の各符号によって各シーケンスを解説する。
【０１０４】
２１００は、アダプタ１２００とＰＤプリンタ１０００とが接続されていない状態を示し、この場合は電源はオフであり、インジケータ１２０４は消灯している。２１０１は、アダプタ１２００がＰＤプリンタ１０００のＵＳＢ端子に接続された状態を示し、この状態では、アダプタ１２００はＰＤプリンタ１０００からＵＳＢの電源供給回路を通じて電源供給を受けて、アダプタ１２００が電源オン状態になる。尚、アダプタ１２００が電池を内蔵して、電源スイッチなどによってその電池からの電力供給で動作しても良い。その場合は、ＰＤプリンタ１０００が携帯型の場合に、そのプリンタの電力消費を抑えることができる。また、その電池を充電式とすることにより、ＵＳＢの電源供給量を超える消費電力の携帯電話１１００との通信を行うことも可能になる。この場合、電池の充電量が十分になって初めて携帯電話１１００からの画像データの転送待機状態となる。
【０１０５】
２１０２では、アダプタ１２００がＰＤプリンタ１０００との間での接続を確立途中であるため、インジケータ１２０４を点滅１で表示駆動する。尚、この点滅１を開始するタイミングは、ＰＤプリンタ１０００との接続２１０１の直後であっても、或いはＰＤプリンタ１０００との間でダイレクト印刷のプロトコルが確立した（２１０３）直後であっても良い。また、ダイレクト印刷のための接続の確立処理を行っている過程で、ＰＤプリンタ１０００のCapabilityを取得し、それに基づいてＰＤプリンタ１０００で印刷可能な用紙サイズ、紙種、各種画像補正処理などを確認して、印刷指示を行うためのアダプタ１２００のＵＩに反映させても良い。例えば、ＰＤプリンタ１０００がＡ４とＬ判の用紙のみに印刷可能な場合には、アダプタ１２００のＵＩの用紙選択ボタンでＡ４とＬ判のみが選択できるようにする。
【０１０６】
２１０３では、アダプタ１２００はＰＤプリンタ１０００との間で、ダイレクト印刷のための通信確立を行う。こうして２１０４で、アダプタ１２００は、ＰＤプリンタ１０００からダイレクト印刷のための接続確立完了の通知を受ける。そして２１０５で、アダプタ１２００はＰＤプリンタ１０００からダイレクト印刷のための接続確立完了の通知を受け、アダプタとＰＤプリンタとの間での接続を確立する。これにより、図９のプロトコルスタックの内で、ダイレクト印刷のための接続に関する部分が構築される。そしてインジケータ１２０４の表示を、点滅１から点灯状態に変える。尚、ここで前述した充電式の電池を使用している場合、その電池の充電が不十分であればアダプタ１２００のインジケータ１２０４をオンにしないようにしても良い。
【０１０７】
＜携帯電話からの画像データの転送開始から印刷完了までの動作説明＞
図２２は、本発明の実施の形態に係る印刷システムにおいて、携帯電話１１００からの画像ファイルの転送開始からＰＤプリンタ１０００による印刷が完了するまでの動作シーケンスを説明する図である。尚、この動作の開始時点では、図２１の２１０５で示すように、アダプタ１２００とＰＤプリンタ１０００との間での接続が確立してインジケータ１２０４が点灯し、携帯電話１１００から画像ファイルを受付可能な状態となっている。この状態で、前述のアダプタ１２００の用紙選択ボタンを操作して、印刷する用紙サイズを選択したり、同様に紙種や印刷枚数、日付印刷の有無などの設定を行ってもよい。
【０１０８】
２２０１では、ユーザは携帯電話１１００の液晶表示部１１０２の表示を確認しながら操作ボタン１１０３を操作し、ＰＤプリンタ１０００に転送する画像ファイルを指定する。尚、携帯電話１１００において、転送する画像ファイルを指定している間は携帯電話１１００とアダプタ１２００との間での通信接続が確立されている必要は無い。従って、例えば携帯電話１１００を持って外出した外出先でこの操作を行ってもよい。その場合は、転送する画像ファイルの指定処理のステップと、アダプタ１２００へ画像ファイルの転送を要求するための転送要求を行う処理ステップとを別個に用意し、転送要求を通知するステップでアダプタ１２００と通信すれば良い。
【０１０９】
２２０２では、ＰＤプリンタ１０００とアダプタ１２００との間、及びアダプタ１２００と携帯電話１１００との間での接続が確立しているので、携帯電話１１００からアダプタ１２００へ画像ファイルの転送要求を通知する。その際、必要であればアダプタ１２００と携帯電話１１００との間で接続確立を行ってもよい。本実施の形態の場合、図９のプロトコルスタックの内で、ＩｒＤＡ接続に関する部分を構築する。
【０１１０】
こうしてアダプタ１２００が、携帯電話１１００からの画像ファイルの転送要求を受信すると、この転送要求を受け付ける旨の返答の前に、アダプタ１２００はＰＤプリンタ１０００へCapability要求、そのCapabilityの確認、印刷ジョブの開始要求を行う。この手順について、以下シーケンス２２０３〜２２０７で説明する。
【０１１１】
２２０３では、アダプタ１２００からＰＤプリンタ１０００へCapabilityを要求する。２２０４では、ＰＤプリンタ１０００からアダプタ１２００へCapabilityを転送する。２２０５では、アダプタ１２００は、ＰＤプリンタ１０００から受け取ったCapabilityと、携帯電話１１００から受け取った画像ファイルの転送要求に含まれる情報とを基に、携帯電話１１００から転送される画像ファイルがＰＤプリンタ１０００で印刷可能か否かを判断する。この判断の一例として、携帯電話１１００から転送される画像ファイルのフォーマットが、ＰＤプリンタ１０００が印刷可能な画像ファイルのフォーマットと一致していれば印刷可能であると判断し、一致しないときは印刷不可能と判断する。尚、図２２のシーケンスでは、印刷可能と判断した場合で説明し、印刷不可能と判断した場合の動作は、後述する図２３のフローチャートを参照して説明する。
【０１１２】
２２０６では、アダプタ１２００からＰＤプリンタ１０００へ印刷要求を通知する。このとき、印刷要求を通知するにあたり印刷ジョブの情報が必要であれば、携帯電話１１００から受け取った転送要求を基に印刷ジョブ情報を作成してもよい。次に２２０７で、ＰＤプリンタ１０００からアダプタ１２００へ印刷要求を受付けたことを示す応答（印刷受付）を返す。２２０８では、アダプタ１２００は、ＰＤプリンタ１０００からの印刷要求受付の返答内容を基に、ＰＤプリンタ１０００で印刷要求が受け付けられたか否かを判断する。この際、事前にＰＤプリンタ１０００の状態を取得しても良い。例えば、ＰＤプリンタ１０００からの返答に記載されたプリンタの状態が、印刷レディであれば印刷可能と判断し、ＰＤプリンタ１０００がＰＣからの印刷ジョブを実行中で印刷ビジー状態であれば印刷不可能と判断する。またアクセスカバー１００３が開いている、或いはＰＤプリンタ１０００に用紙がセットされていない、又はインクがセットされていない等の理由で、印刷が不可能であれば印刷不可能であると判断する。尚、図２２では、２２０８で印刷要求が受け付けられたと判断された場合について説明する。また印刷要求が受け付けられなかったと判断された場合の動作は、後述する図２３のフローチャートで説明する。
【０１１３】
こうして印刷可能と判断すると２２０９で、アダプタ１２００が携帯電話１１００からの画像ファイルを受信している間、インジケータ１２０４を点滅２で表示駆動する。尚、この点滅２を開始するタイミングは、印刷要求の受付２２０７の直後であっても、或いはアダプタ１２００から携帯電話１１００への転送要求の受け付け２２１０の直後であっても良い。２２１０では、アダプタ１２００から携帯電話１１００に対して転送要求の受付を回答する。
【０１１４】
また２２１１で、携帯電話１１００は、画像ファイルの転送を開始する旨を液晶表示部１１０２に表示する。そして２２１２で、携帯電話１１００からアダプタ１２００へ画像ファイルを転送する。こうして転送された画像ファイルは、アダプタ１２００のＲＡＭ３２０３に書き込まれる。この画像ファイルの書き込み方は、ＲＡＭ３２０３の書き込み先のアドレスを固定しておき、前回転送された画像ファイルに上書きするようにしてもよく、或いはＲＡＭ３２０３をリングバッファとして扱い、前回の画像ファイルの格納アドレスを基に、次の画像ファイルの書き込みアドレスを決定してもよい。大容量のＲＡＭ３２０３を用意できれば、後者のリングバッファ形式をとることで、転送された画像ファイルの履歴をＲＡＭ３２０３に保持できる。そしてアダプタ１２００に適切なＵＩを持たせることで、アダプタ１２００のＵＩ操作によって以前に転送された画像ファイルを、再度携帯電話１１００からアダプタ１２００に転送することなく再印刷を行えるようにする等の応用が可能である。
【０１１５】
こうして２２１３で、携帯電話１１００が、その画像ファイルの全画像データを転送し終えると、アダプタ１２００へ画像ファイルの転送終了を通知する。なお、これは転送プロトコルの持つ規約を利用し、最終画像データの転送時に、そのデータが最終データである旨の通知を行うことで、画像転送終了通知として利用してもよい。そして２２１４で、アダプタ１２００は、携帯電話１１００へ画像転送終了を受付けた旨を返答する。これにより、２２１５で、携帯電話１１００は液晶表示部１１０２にデータ転送が終了した旨を表示する。
【０１１６】
２２１６では、ＰＤプリンタ１０００は液晶表示部１００６に印刷を開始する旨を表示する。次に２２１７で、ＰＤプリンタ１０００からはアダプタ１２００に対して印刷用の画像ファイルの転送を要求する。２２１８では、アダプタ１２００は、携帯電話１１００からの画像ファイルの受信が終了した後、ＰＤプリンタ１０００が印刷ジョブを実行しているので、インジケータ１２０４を点滅３で表示駆動する。尚、この点滅３を開始するタイミングは、携帯電話１１００からの画像ファイルの転送終了通知（２２１３）の直後であっても、或いはアダプタ１２００から携帯電話１１００への画像転送終了受付（２２１４）の直後であっても、又はアダプタ１２００からＰＤプリンタ１０００への画像ファイルの転送（２２１９）の直前であっても良い。この２２１９では、アダプタ１２００は、携帯電話１１００から印刷を依頼された画像ファイルをＰＤプリンタ１０００へ転送する。そして２２２０では、アダプタ１２００がＰＤプリンタ１０００へ、その画像ファイルを全て転送すると、ＰＤプリンタ１０００へ画像転送終了を通知する。尚、この通知は、転送プロトコルの持つ規約を利用し、画像ファイルの最後の画像データの転送時に、その画像データが最終データである旨を通知することで、この画像転送終了通知としてもよい。
【０１１７】
次に２２２１で、ＰＤプリンタ１０００はアダプタ１２００から受け取った画像ファイルを基に印刷を行う。２２２２で、ＰＤプリンタ１０００が印刷を終了するとアダプタ１２００へ印刷終了を通知する。次に２２２３で、アダプタ１２００はＰＤプリンタ１０００に対して、印刷終了通知を受付けたことを示す返答を行う。そして２２２５で、ＰＤプリンタ１０００は液晶表示部１００６に印刷が終了した旨を表示する。またアダプタ１２００は、ＰＤプリンタ１０００における印刷終了を確認すると、携帯電話１１００からの新たな画像ファイルを受信可能となるため、２２２４でインジケータ１２０４を点灯する。尚、この点灯を開始するタイミングは、ＰＤプリンタ１０００からの印刷終了が通知された（２２２２）直後であっても、或いはアダプタ１２００からＰＤプリンタ１０００への終了受付応答（２２２３）の直後であってもよい。
【０１１８】
また本実施の形態では、印刷終了時（２２２３）に、アダプタ１２００のＲＡＭ３２０３に書き込まれている画像ファイルを自動的に消去してもよい。このように印刷済の画像ファイルをＲＡＭ３２０３から消去することで、機密性の高い画像ファイルであっても安全に印刷することができる。
【０１１９】
＜アダプタによる処理の説明＞
図２３は、本実施の形態に係るアダプタ１２００が携帯電話１１００からの画像ファイルの転送を受け付ける処理を説明するフローチャートで、この処理を実行するプログラムはＲＯＭ３２０２に記憶されており、ＣＰＵ３２０１の制御の下で実行される。尚、この処理は、図２１で説明したようにしてアダプタ１２００とＰＤプリンタ１０００との接続が完了し、インジケータ１２０４が点灯状態になっている状態で開始される。
【０１２０】
まずステップＳ１０で、アダプタ１２００はＰＤプリンタ１０００との間でダイレクト印刷のための接続を確立し、携帯電話１１００からの画像ファイルの転送要求（２２０２）が送信されるまで待つ。携帯電話１１００からの転送要求を受けると、この転送要求通知をＲＡＭ３２０３に保持してステップＳ１１に進み、ＰＤプリンタ１０００にCapabilityを要求して（２２０３）、それを取得し（２２０４）ＲＡＭ３２０３に保持する。次にステップＳ１２で、ステップＳ１１で得たCapabilityと、携帯電話１１００から送られてくる画像転送要求に含まれる画像ファイルのフォーマットを調べ、ＰＤプリンタ１０００が携帯電話１１００から送られてくる画像ファイルのフォーマットをサポートしているかどうかを判定する（２２０５）。サポートしていればステップＳ１３に進むが、サポートしていないければステップＳ１７に進み、携帯電話１１００に対して画像ファイルの転送を拒否する情報を通知する。尚、この際、携帯電話１１００の転送要求に対して何も応答せずに携帯電話１１００でタイムアウトを発生させることにより、転送拒否であることを通知してもよい。また携帯電話１１００からの転送要求に対して転送拒否をしたことを表すためのインジケータ１２０４の点滅パターンを用意し、一定時間表示してもよい。
【０１２１】
ステップＳ１３では、アダプタ１２００からＰＤプリンタ１０００に印刷要求を通知する（２２０６）。尚、この印刷要求の通知前にＰＤプリンタ１０００の状態を取得し、プリンタがレディ状態でなければ、ＰＤプリンタ１０００に対して印刷要求を通知せずにステップＳ１７に進んでもよい。次にステップＳ１４で、ＰＤプリンタ１０００が印刷要求を受け付けて、それに応答するのを待ち、応答があると（２２０７）ＰＤプリンタ１０００からの印刷要求受付の返答内容を確認し、ＰＤプリンタ１０００が印刷を実行できるかどうかを判定する（２２０８）。印刷が実行できないときはステップＳ１７に進むが、印刷を実行できるときはステップＳ１６に進み、ステップＳ１０で携帯電話１１００から受信した画像転送要求に対して、画像ファイルの転送を開始しても良いことを示す転送要求受付で応答する（２２１３）。そしてアダプタ１２００は、それ以降、携帯電話１１００からの画像ファイルの転送を受け付けてＲＡＭ３２０３に格納する。またＰＤプリンタ１０００が印刷が実行できないときはステップＳ１７で、画像ファイルの転送を拒否する転送要求拒否で応答する。この場合は携帯電話１１００からアダプタ１２００への画像ファイルの転送は行われない。
【０１２２】
＜プリンタが印刷を中断した時の動作説明＞
図２４は、本発明の実施の形態に係る印刷システムにおいて、ＰＤプリンタ１０００が印刷を中断して印刷を再開するまでの動作を説明する図である。尚、ＰＤプリンタ１０００が印刷を中断する例としては、例えば印刷用紙がプリンタ内部で紙詰まり（用紙ジャム）を起こした場合、プリンタに印刷用紙がセットされていない場合、インクやバッテリ残量が不十分である場合など、ユーザが何らかの対処を行わなければ印刷が続行できない場合が想定できる。
【０１２３】
２４０１では、ＰＤプリンタ１０００がアダプタ１２００から受け取った画像データに基づいて印刷を行っている。２４０２では、アダプタ１２００は、携帯電話１１００からの画像ファイルの受信を終了し、ＰＤプリンタ１０００が印刷ジョブを実行している間、インジケータ１２０４を点滅３で表示駆動している。ここで２４０３で、ＰＤプリンタ１０００において、印刷を続行できない事態が発生して印刷処理が中断される。本実施の形態では一例として、ＰＤプリンタ１０００の用紙が無くなり、給紙ができない場合で説明する。次に２４０４で、ＰＤプリンタ１０００からアダプタ１２００へ用紙なしであることを示すエラーを通知する。このエラー通知の方法はダイレクト印刷プロトコルに準ずる。
【０１２４】
アダプタ１２００が、この用紙なしエラーの通知を受け取ると、インジケータ１２０４を点滅４の表示に切替える（２４０５）。これによりユーザは、ＰＤプリンタ１０００が用紙なしであることを認識して用紙をセットする。尚、ここでそのエラーが復帰不可能なエラーであれば印刷処理をキャンセルし、インジケータ１２０４を点灯させてアダプタ１２００を図２１、図２２の２１０５で示す状態へ戻す。このとき、印刷がエラー終了したことをユーザに明確に知らせるために、インジケータ１２０４を点滅４、又は他の点滅に変更し、アダプタ１２００の印刷続行ボタン１２０１が押下されるとインジケータ１２０４を点灯し、図２１の２１０５で示す状態へ戻ってもよい。
【０１２５】
２４０６では、ユーザが用紙をセットしてＰＤプリンタ１０００が印刷可能な状態になると、アダプタ１２００の印刷続行ボタン１２０１を押下する。これによりアダプタ１２００は、この印刷続行ボタン１２０１の押下を検知して、ＰＤプリンタ１０００へ印刷処理の再開依頼を送信する（２４０７）。ダイレクト印刷の方式によっては、この印刷処理の再開は、ＰＤプリンタ１０００の印刷開始キー２００５を押下して印刷の再開を指示してもよい。その場合、ＰＤプリンタ１０００は印刷再開通知をアダプタ１２００へ送信する（２４０８）。この印刷処理の再開の通知を受けると、アダプタ１２００のインジケータ１２０４を点滅３で表示駆動するようにしてもよい（２４０９）。この場合、シーケンス２４０８，２４１０は省略される。
【０１２６】
２４０８で、ＰＤプリンタ１０００はアダプタ１２００へ印刷再開を受付けた旨を通知すると、ＰＤプリンタ１０００は、印刷中断の原因となったエラーが回復したことを確認して印刷処理を再開する（２４１０）。これによりアダプタ１２００は、ＰＤプリンタ１０００が印刷ジョブを実行している間、インジケータ１２０４を、再び点滅３で表示駆動する（２４０９）。
【０１２７】
以上説明したように本実施の形態１によれば、以下のような効果がある。
（１）プリンタとの間でダイレクト印刷を実現できない携帯電話とプリンタとの間をアダプタで仲介する。このアダプタは、携帯電話から受け取った画像データを基に、プリンタのダイレクト印刷システムで利用可能な印刷用データを作成し、そのプリンタが解釈可能なダイレクト印刷プロトコルを用いてプリンタに転送する。これにより携帯電話とプリンタとの間でダイレクト印刷を実現できる。
（２）アダプタは、プリンタが印刷可能な時のみ携帯電話から画像データを受け付け、プリンタが印刷不可能な時には携帯電話からの画像データの受信を拒否することにより、携帯電話を操作するユーザが容易に印刷状況を把握できる。
（３）携帯電話からの画像データを受信する際、携帯電話からアダプタへ画像データの転送処理が完了する前に、プリンタに対してダイレクト印刷を要求する。これにより、携帯電話との間での画像データの転送中に、印刷予定のプリンタが他の機器からの印刷要求を受け付けてしまい、結果として携帯電話からの画像の印刷が遅れるのを防止できる。
（４）ダイレクト印刷時の印刷状況を表示する機能をアダプタに持たせることで、プリンタにおける印刷状況をユーザに知らせることができる。また、ダイレクト印刷時の印刷設定用のＵＩをアダプタに持たせることで、ユーザはアダプタのＵＩを操作することで、印刷設定を行える。これにより例えば、印刷用紙の種類を設定する手段を有していない低価格のプリンタと、同じく、そのような用紙設定手段を有していないＩｒＤＡ端子付きカメラ付き携帯電話を用いた場合でも、ユーザが所望する用紙を設定して、携帯電話からの画像をＰＤプリンタで印刷させることができる。これにより任意のサイズや種類の用紙に印刷することができる。
【０１２８】
＜実施の形態１の変形例（Ａ）（Ｂ）＞
（Ａ）前述の図２２では、アダプタ１２００は携帯電話１１００からの画像ファイルの受信が全て完了してからＰＤプリンタ１０００に印刷用の画像ファイルの転送を開始している。しかし、必ずしも携帯電話１１００から画像ファイルが全てアダプタ１２００に転送されてＲＡＭ３２０３に記憶されてからＰＤプリンタ１０００へ画像ファイルの転送を開始する必要は無く、例えば、アダプタ１２００のＲＡＭ３２０３に画像データを記憶しながら随時プリンタ１０００へ画像データを転送するようにしてもよい。この場合、ＰＤプリンタ１０００は、「印刷用画像データの断片」を得ることができるため、印刷用画像データを全てを取得する前であっても、それまで受信して記憶している画像データの断片を利用して、早期に印刷処理を開始することができ、これにより印刷処理を完了するまでの時間を短縮することができる。
（Ｂ）また図２２では、ＰＤプリンタ１０００からの印刷用画像ファイルの転送依頼は、２２１７での一度のみとしたが、ＰＤプリンタ１０００からの画像ファイルの転送依頼が複数回に分けた「画像データ片の転送依頼」によって行われてもよい。この場合、前述の例と同様に、アダプタ１２００は携帯電話１１００からの各画像データ片をアダプタ１２００のＲＡＭ３２０３に記憶しながらＰＤプリンタ１０００へ画像データを転送してもよい。この場合、ＰＤプリンタ１０００は逐次「印刷用画像データ片」を得ることができるため、その画像ファイルの全画像データを取得する前であっても、その画像データの断片を利用して早期に印刷処理を開始することができる。これにより印刷完了までの時間を短縮することができる。この時、更に「印刷用画像データ片」の単位でなく、それよりも細かい「印刷画像データ片の断片」単位であっても良い。
【０１２９】
上述の変形例Ａ，Ｂに限らず、アダプタ１２００とＰＤプリンタ１０００との間のデータ転送方式がいかなる方式であっても、前述と同様に、携帯電話１１００からアダプタ１２００が受け取った画像データを逐次ＰＤプリンタ１０００に転送することにより同様の効果が得られる。
【０１３０】
＜（変形例Ａ）の動作シーケンス＞
図２５は、本発明の実施の形態に係る印刷システムにおける動作シーケンス（上記変形例Ａ）を説明する図である。
【０１３１】
２５０１では、携帯電話１１００からアダプタ１２００へ画像ファイルの一部である画像データ片を転送する。次に２５０２で、ＰＤプリンタ１０００からアダプタ１２００へ印刷用の画像データ片の転送依頼を送信する。これに対してアダプタ１２００は、携帯電話１００から受信した画像データの断片をＰＤプリンタ１０００に転送する（２５０３）。これにより２５０４で、ＰＤプリンタ１０００は、そのアダプタ１２００から受け取った画像データの断片データを基に印刷を行う。例として、１／４ページ分に相当する印刷用画像データの断片がアダプタ１２００から転送されていれば、その１／４ページ分の印刷が可能となる。
【０１３２】
こうしてＰＤプリンタ１０００が印刷ジョブを実行している間（２５０４）、アダプタ１２００のインジケータ１２０４は点滅３で表示駆動される（２５０５）。このとき、携帯電話１１００からのデータ転送を尊重して、データの受信中であることを示す点滅２を繰り返してもよく、或いはアダプタ１２００へのデータ片の転送と、ＰＤプリンタ１０００による印刷処理の両方を表すために、点滅２と点滅３とを交互に繰り返して表示駆動しても良い。または新たな点滅パターンを用意してもよい。
【０１３３】
こうして携帯電話１１００からアダプタ１２００に、画像データ片を転送し終えると、アダプタ１２００へ画像データの転送終了を通知する（２５０６）。尚、これは最終の画像データである旨を通知することにより転送終了を通知するものであっても良い。２５０７で、アダプタ１２００から携帯電話１１００へ転送終了受付の返答を行う。
【０１３４】
こうして２５０８で、アダプタ１２００が携帯電話１１００から依頼された画像データ片をＰＤプリンタ１０００に送信すると、ＰＤプリンタ１０００へ画像データ片の転送終了を通知する。ここでは、転送プロトコルの持つ規約を利用し、最終画像データの転送時に、その画像データが最終データである旨を通知することで、画像ファイルの転送終了通知としてもよい。
【０１３５】
＜（変形例Ｂ）の動作シーケンス＞
図２６は、本発明の実施の形態に係る印刷システムにおける動作シーケンス（上記変形例Ｂ）を説明する図である。
【０１３６】
２６０１で、携帯電話１１００からアダプタ１２００へ画像ファイルを転送する。次に２６０２で、ＰＤプリンタ１０００からアダプタ１２００へ一番目の画像データ片（画像ファイルの一部）の転送を依頼する。次に２６０３で、アダプタ１２００からＰＤプリンタ１０００へ、その依頼された一番目の画像データ片を転送する。ここで、この画像データ片は、携帯電話１１００から転送された画像データの断片を基に生成する。尚、前述の（変形例Ａ）にならって、画像データ片の断片を逐次転送してもよい。そしてアダプタ１２００からＰＤプリンタ１０００に対して、その依頼された一番目の画像データ片を全て転送すると、ＰＤプリンタ１０００へ一番目の画像データ片の転送が終了した旨を通知する（２６０４）。ここでは、転送プロトコルの持つ規約を利用し、一番目の画像データ片の転送時に、そのデータが最終データである旨を通知することで、画像データ片の転送が終了したことを通知してもよい。
【０１３７】
これによりＰＤプリンタ１０００は、そのアダプタ１２００から受け取った画像データ片に基づいて逐次印刷を行う（２６０５）。例えば、１／４ページ分に相当する画像データ片がアダプタ１２００からＰＤプリンタ１０００に送信されると、その１／４ページ分の印刷が可能となる。よって、前述の（変形Ｃ）にならって、その画像データ片の断片をもとに逐次印刷を行ってもよい。
【０１３８】
こうしてＰＤプリンタ１０００が画像データ片の印刷を実行している間、アダプタ１２００のインジケータ１２０４は点滅３を繰り返す。このとき携帯電話１１００からのデータ転送を尊重して点滅２（データ転送中を示す）を繰り返してもよく、またデータ転送と印刷の両方を表すために点滅２と点滅３を交互に繰り返してもよく、または新たな点滅パターンを用意してもよい。
【０１３９】
２６０７，２６１０では、ＰＤプリンタ１０００からアダプタ１２００に対して、二番目、三番目の画像データ片の転送依頼を送信する。これによりアダプタ１２００は、その依頼された二番目、三番目の画像データ片をＰＤプリンタ１０００に転送する（２６０８，２６１１）。ここで各画像データ片は、携帯電話１１００から転送された画像データの断片を基に生成される。こうしてアダプタ１２００からＰＤプリンタ１０００に、それら二番目、三番目の画像データ片が全て転送されると、ＰＤプリンタ１０００に画像データ片の転送終了を通知する（２６０９，２６１２）。
【０１４０】
次に２６１３で、ＰＤプリンタ１０００からアダプタ１２００に対して、最後の画像データ片の転送依頼を送信する。
【０１４１】
一方、携帯電話１１００が全ての画像データをアダプタ１２００に転送し終えると、アダプタ１２００に画像ファイルの転送終了を通知する（２６１５）。これは転送プロトコルの持つ規約を利用し、最終画像データの転送時に、そのデータが最終データである旨の通知を行うことで、転送終了通知として利用してもよい。次に２６１８で、アダプタ１２００から携帯電話１１００へ転送終了受付を示す応答を返す。
【０１４２】
こうして２６１４で、アダプタ１２００からＰＤプリンタ１０００に、その依頼された最後の画像データ片を転送する。ここで、画像データ片は、携帯電話１１００から転送された画像データの断片を基に生成される。次に２６１６で、アダプタ１２００からＰＤプリンタ１０００に対して、その画像データ片を転送すると、その画像データ片の転送終了を通知する。こうしてアダプタ１２００からＰＤプリンタ１０００へ、その依頼された画像ファイルを全て転送すると、ＰＤプリンタ１０００へ画像ファイルの転送終了を通知する（２６１７）。尚、これはシーケンス２６１６の通知で、最終データである旨を通知することで置き換えても良い。
【０１４３】
＜その他の変形例＞
その他の実施の変形例として考えられるものを下記に挙げる。
【０１４４】
前述の実施の形態では、携帯電話１１００の通信プロトコルスタックとして、図９に示す構成によるＩｒＯＢＥＸを例にして説明したが、図１０乃至図１３のような他の構成の画像データ源に対しても同様のアダプタ１２００が適用できる。これらのプロトコルにおいても、アダプタ１２００は、画像データ源及びＰＤプリンタ１０００の各々と通信をするためのプロトコルスタックを持ち、図中のプロトコル変換部９００において、携帯電話１１００からの画像データを用いてＰＤプリンタ１０００への印刷要求を生成し、印刷を実行させることが考えられる。
【０１４５】
また本実施の形態に係る画像データや印刷データの転送方法はあくまでも一例であり、転送手続きの詳細な順番や、転送開始手続きを転送元が行うか転送先が行うかによらず、本実施の形態に係る効果が得られる。例えば、本実施の形態では、携帯電話１１００からアダプタ１２００への画像データの転送は、携帯電話１１００からの転送要求通知に基づいて開始されたが、アダプタ１２００が携帯電話１１００に対し画像転送要求を送り、それに対して携帯電話１１００が画像転送受付を返すことにより開始されてもよい。
【０１４６】
また本実施の形態に係るインジケータ１２０４の表示パターン以外にも、様々な表示パターンのバリエーションを用いることで、アダプタ１２００における種々の状態をより明瞭に表すことが可能になる。
【０１４７】
また、インジケータの点滅パターンとして、一回の点滅における点灯時間と消灯時間の割合を変化させることで、より点滅パターンを増大することも可能である。例えば、印刷中を表す点滅パターンとして、「点灯０．１秒、消灯１秒」で構成することが考えられる。これによりインジケータ１２０４の点灯時間を短くし、アダプタ１２００の電力消費を少なく抑えることができる。
【０１４８】
また、アダプタ１２００のＵＩとして、状態をより明確に表示するために、数値や文字列を表示できるＬＥＤやＬＣＤ、或いはその他の表示装置を用いてもかまわない。この場合、ＵＩを持たないプリンタと接続した場合、アダプタ１２００に各種エラーを表示できるため、ユーザにプリンタやアダプタ１２００の動作状況の詳細を知らせることが可能である。
【０１４９】
また携帯電話１１００からアダプタ１２００への画像データの転送中に、携帯電話１１００からの通信が途絶えた場合に、一定時間、その通信が復帰しなければアダプタ１２００からプリンタ１０００へ印刷中断を依頼してもよい。
【０１５０】
尚、携帯電話１１００とアダプタ１２００間のデータ転送の詳細や、アダプタ１２００とＰＤプリンタ１０００間のダイレクト印刷における通信の詳細は、既存のプロトコルをそのまま利用する形式である為に説明は省略する。
【０１５１】
［実施の形態２］
図２７は、本実施の形態に係るアダプタ１２００による処理を説明するフローチャートで、この処理を実行するプログラムはＲＯＭ３２０２に記憶されており、ＣＰＵ３２０１の制御の下に実行される。この処理はＰＤプリンタ１０００とアダプタ１２００とが接続されたことが検出されるか、或はアダプタ１２００が装着されているＰＤプリンタ１０００の電源がオンされることにより開始される。
【０１５２】
まずステップＳ１０１で、アダプタ１２００とＰＤプリンタ１０００との間でインターフェースの初期化が行われる。この実施の形態では、ＰＤプリンタ１０００とアダプタ１２００との間はＵＳＢで接続されている。また本実施の形態では、トランスポート層としてＰＴＰ層が採用されているが、この通信仕様は本発明を限定するものではない。またＰＴＰによるＵＳＢ接続の初期化方法は周知であるので、ここでは詳細な説明を省略する。こうしてＵＳＢ接続の初期化が完了すると、プリンタ１０００とアダプタ１２００との間でデータの送受信の準備が完了する。
【０１５３】
次にステップＳ１０２で、アダプタ１２００はＰＤプリンタ１０００から、そのプリンタのダイレクト印刷機能（Capability）を取得する。即ち、アダプタ１２００から、接続されたＰＤプリンタ１０００に対して、どの様なダイレクト印刷仕様を有しているかの情報（Capability）を要求し、それに応答してＰＤプリンタ１０００から送られてくるダイレクト印刷機能（Capability）を取得する（図１４の１４０２）。尚、この実施の形態におけるCapabilityの取得は、図１４を参照して説明したように、アダプタ１２００からの要求により実行されるが、本発明はこれに限定されるものでなく、例えばＰＤプリンタ１０００からPushされる形態で取得しても良い。
【０１５４】
次にステップＳ１０３で、アダプタ１２００はＰＤプリンタ１０００のCapabilityの取得を完了すると、そのＰＤプリンタ１０００との接続をソフト的に切断する。ここでソフト的に切断する理由は以下の通りである。
【０１５５】
アダプタ１２００は、複数種のプリンタ装置に接続されることが想定される。一方、プリンタ装置の中には、ダイレクト印刷のための通信が確立している間は、それ以外の外部機器との通信を拒絶する機種がある。即ち、アダプタ１２００が接続されている間、他のＰＣ等からの印刷要求を受信できないプリンタ装置が考えられる。その場合、そのプリンタ装置に接続される機器同士が同じダイレクト印刷仕様を有していれば、一つの機器とのダイレクト印刷が完了した時点で、その機器とプリンタ装置との間の物理的な接続が遮断されるため、上記のような問題が生じる懸念は少ない。
【０１５６】
しかし本実施の形態のように、プリンタ装置のコネクタにアダプタ１２００が接続される場合には、ダイレクト印刷の要否に係わりなく、アダプタ１２００とプリンタ装置とが有機的に接続され続けることが想定される。プリンタ装置の使用効率を考慮すると、プリンタ装置とアダプタ１２００との間では、通信が必要な場合以外は有機的に接続されたままになるのは好ましくない。しかし自動的にアダプタ１２００をプリンタ装置から物理的に切り離すのは困難であるため、ソフト的（非物理的）に、プリンタとアダプタとの間の通信を切断してプリンタ装置を解放している。本実施の形態では、アダプタ１２００の電気的な接続を切断（Open）し、アダプタ１２００がプリンタから外されたのと同等な状況を作ることにより、プリンタ装置とソフト的（非物理的）に切り離している。
【０１５７】
本実施の形態では、アダプタ１２００とＰＤプリンタ１０００とはＰＴＰ接続で、アダプタ１２００がスレーブ接続となっている。このため、プログラム的に通信を切断することが困難であったが、インターフェースの仕様によっては、アダプタ１２００からプログラム的に接続を切断できる場合もある。この様なインターフェースが採用されている場合には、前記のような電気的な切断ではなく、プログラム的にその接続を切断する仕様であっても勿論良い。
【０１５８】
次にステップＳ１０４で、アダプタ１２００は、ステップＳ１０２で取得したＰＤプリンタ１０００のCapabilityに応じて、図６を参照して前述したようにして、アダプタ１２００におけるＵＩ表示を行う。例えば、ＰＤプリンタ１０００のCapabilityの一つである「用紙サイズ」において、そのプリンタ１０００がＡ４サイズをサポートしている場合は、アダプタ１２００はアダプタ１２００のＵＩで「Ａ４」サイズが選択できるようにＵＩを構築する。もしＡ４サイズをサポートできない場合には、「Ａ４」サイズを選択できないようにアダプタ１２００のＵＩを構築する。以下同様に、「紙種」や「日付印刷の可否」など、ダイレクト印刷に関する各種Capabilityに応じてアダプタのＵＩが再構築される。
【０１５９】
これ以降アダプタ１２００は、ＰＤプリンタ１０００から取得したCapabilityに応じて構築したＵＩに基づいて、ユーザにダイレクト印刷サービスを提供することができる。
【０１６０】
次にステップＳ１０５で、このアダプタ１２００と携帯電話１１００との間で、赤外線インターフェース１１０１，１２０２を介した通信が開始されるのを待つ。こうして携帯電話１１００との通信が開始されるとステップＳ１０６に進み、アダプタ１２００と携帯電話１１００との間でインターフェースの初期化が行われる（図２０の２０１１，２０１２）。次にステップＳ１０７で、通信の初期化後、携帯電話１１００からのダイレクト印刷の印刷要求を待ち、印刷要求を受信するとステップＳ１０８で、ダイレクト印刷用の印刷データを受信する（図２０の２０１３〜２０１８）。この印刷データとしては、ダイレクト印刷の対象となる画像データと、ダイレクト印刷の印刷条件を記した制御データなどが含まれる。尚、アダプタ１２００は、この印刷命令の受信により、ＰＤプリンタ１０００との間でダイレクト印刷を行うための通信の確立（ソフト的）を行うことも可能であるが、本実施の形態では、この段階では、そのＰＤプリンタ１０００との間での通信の確立は行わずに、携帯電話１１００からの印刷データの受信を完了することを優先する。次にステップＳ１０９で、ダイレクト印刷のための印刷データを携帯電話１１００から受信する受信処理が完了するとステップＳ１１０に進み、携帯電話１１００に、印刷データの受信が正常終了したことを伝え、携帯電話１１００との間での一連のジョブを終了する。
【０１６１】
このとき携帯電話１１００の中には、その仕様によって、ダイレクト印刷を行っていることを理解していない機種がある。即ち、ＵＳＢホスト（アダプタ１２００）に対して、ダイレクト印刷であることを認識せずに、単に画像ファイルを転送するだけの機種がある。前述のように本実施の形態では、携帯電話１１００は、必ずしも特別のダイレクト印刷アプリケーションを搭載している必要はなく、単に選択されたデータ（画像ファイル）を通信が確立している接続先にファイル転送しているだけであっても良い。これはアダプタ１２００が、その印刷データをＰＤプリンタ１０００が理解できる仕様に変換してＰＤプリンタ１０００に転送できるためである。これにより結果としてダイレクト印刷を可能としている。このような場合には、このような印刷データを転送しているだけの携帯電話では、データの転送が完了した段階でジョブは終了するので、アダプタ１２００はジョブを速やかに終了させる必要がある。よって本実施の形態においても、携帯電話１１００からのデータ転送が終了した時点で、アダプタ１２００と携帯電話１１００との間のデータ転送ジョブを終了する。
【０１６２】
こうしてステップＳ１０９でダイレクト印刷に必要な全ての印刷データを受信するとステップＳ１１０で、ステップＳ１０４で構築したＵＩを基に、ユーザにより印刷仕様が設定される。尚、このＵＩによる印刷仕様の設定は、例えばデフォルトの印刷仕様で印刷を行う場合には省略されても良い。
【０１６３】
次にステップＳ１１１で、アダプタ１２００は、ＰＤプリンタ１０００とのインターフェース接続（ソフト的）を再開する。即ち、アダプタ１２００がＰＤプリンタ１０００と物理的に接続されている場合は、ＰＤプリンタ１０００との間でインターフェースを初期化して通信の確立を行う。次にステップＳ１１２で、携帯電話１１００から受信した印刷データを、ＰＤプリンタ１０００との間のダイレクト印刷プロトコルに適合したデータ仕様に変換する。次にステップＳ１１３で、その変換した印刷データを、順次ＰＤプリンタ１０００にダイレクト印刷用データとして転送する。こうしてステップＳ１１４で、ダイレクト印刷用データの転送が完了したら、ステップＳ１１５で、ＰＤプリンタ１０００とアダプタ１２００との接続を、前述したように、ソフト的（電気的）に切断し、再びステップＳ１０７に戻って携帯電話１１００から印刷要求が入力されるのを待つ。
【０１６４】
このように本実施の形態２に係るアダプタ１２００によれば、ＵＳＢと赤外線インターフェースといった互いに異なる通信プロトコルを有し、これら異なる通信プロトコルによりデータの送受信を行うプリンタ装置及び画像供給機器（デジタルカメラ等の撮像装置、カメラ付き携帯電話、画像ストレージ機器）との間でのデータの送受信を中継して、画像供給機器からの画像データをプリンタ装置で印刷させることができる。
【０１６５】
またアダプタ１２００と画像供給機器、アダプタ１２００とプリンタ装置との接続を、実際にデータをやり取りする期間に限定することにより、プリンタ１０００或は携帯電話１１００の処理の低下を防止できる。
【０１６６】
図２７のステップＳ１０３で、アダプタ１２００はソフト的にＰＤプリンタ１０００との接続を切断したが、それ以降もアダプタ１２００は電気的には接続を維持し、物理的にＰＤプリンタ１０００との接続が維持されていることを確認できるので、ステップＳ１０２で取得したＰＤプリンタ１０００のCapabilityを、それ以後利用することができた。しかし、一旦物理的にＰＤプリンタ１０００から切断、つまりコネクタから抜かれると、次に上記取得したCapabilityに非対応である別のプリンタに接続される危険性があり、その場合、最悪ユーザが設定したCapabilityでの印刷が実行不可能となってしまう。よって、図２８に上記危険性を解決する手段を示す。
【０１６７】
図２８は、本実施の形態２に係るアダプタ１２００とＰＤプリンタ１０００との接続、その切断処理を中心に説明するフローチャートで、この処理を実行するプログラムはＲＯＭ３２０２に記憶されており、ＣＰＵ３２０１の制御の下に実行される。この処理はＰＤプリンタ１０００とアダプタ１２００とが接続されたことが検出されると、或はアダプタ１２００が装着されているＰＤプリンタ１０００の電源がオンされることにより開始される。
【０１６８】
ステップＳ２０１〜Ｓ２０４の処理は前述の図２７のステップＳ１０１〜Ｓ１０４と同じであるため、その説明を省略する。
【０１６９】
ステップＳ２０５は、携帯電話１１００から印刷データを受信してＰＤプリンタ１０００により印刷を行う場合の処理を示しており、図２７のステップＳ１０５〜１１４の処理に該当している。そしてステップＳ２０６で、アダプタ１２００がＰＤプリンタ１０００から物理的に外された場合、即ち、アダプタ１２００がＰＤプリンタ１０００のＵＳＢコネクタから抜かれるとステップＳ２０７に進み、そのＰＤプリンタ１０００のCapabilityをキャンセルし、次にステップＳ２０８で、そのアダプタ１２００のＵＩを、例えばデフォルトのＵＩに変更する。即ち、ダイレクト印刷を行う上で必ず有しているマンダトリ機能にＵＩ選択機能が制限される。
【０１７０】
尚、ここでアダプタ１２００の電源は、アダプタが独自に持つ構成であっても良いが、本実施の形態では、アダプタ１２００はＰＤプリンタ１０００との間のＵＳＢ接続を介してＵＳＢから供給される仕様となっている。この時アダプタ１２００は、携帯電話１１００から送信された画像データを保持する記憶手段として不揮発性メモリを使用するのが望ましい。前述のように、アダプタ１２００は携帯電話１１００から印刷データを受信している時点では、ＰＤプリンタ１０００とのＩ／Ｆを確立していない。また印刷データを受信した後、アダプタ１２００とＰＤプリンタ１０００との間のＩ／Ｆを確立する段階で、必ずしもプリンタ１０００が印刷可能な状態であるとは限らない。またこの段階では、ＰＤプリンタ１０００は、アダプタ１２００がダイレクト印刷用のデータを受信して保持していることを知らされていないので、ＰＤプリンタ１０００における印刷ジョブが終了すると、ＰＤプリンタ１０００の電源が切られてしまう可能性がある。また例えば、ＰＣからの印刷を行っていて何らかの理由で復帰不可能なエラーが生じると、一度ＰＤプリンタ１０００の電源がオフされてプリンタの初期化が図られる場合がある。このような場合、ＵＳＢから電源供給を受けているアダプタ１２００では、そのＰＤプリンタ１０００の電源オフにより電源供給が中断してしまい、メモリに記憶していた画像データが消去されてしまう。この時点では、アダプタ１２００は既に携帯電話１１００との間でのデータ転送処理を完了しているので、携帯電話１１００に対して印刷が完了できなかったことを伝達することができない。このため、携帯電話のユーザは、画像データの転送が正常に終了したことが報知されているにも拘わらず、実際には印刷を完了できない事態となる。
【０１７１】
従って、アダプタ１２００が携帯電話１１００から受信したデータを不揮発性のメモリに記憶することは特に有効である。尚、携帯電話からの画像データを全て不揮発性メモリに格納する前に何らかの不具合が生じた場合は、まだ接続が継続されている携帯電話に対してデータ受信失敗を伝え、再度画像データの転送を要求すればよい。
【０１７２】
またアダプタ１２００がが格納する画像データは、携帯電話１１００から受信したデータをそのまま保持しておいても良いが、そのデータをダイレクト印刷のために加工し、その加工したデータを保持しても良い。尚、前述の動作は、ＰＤプリンタ１０００がアダプタ１２００と接続されたことを検出した場合に開始されると説明したが、ＰＤプリンタ１０００の電源がオンに投入された場合にも同様の処理が実行される。
【０１７３】
以上により、以下のような効果が得られる。
（１）プリンタと携帯電話とが共通のダイレクト印刷仕様のプロトコルを有していない場合でも、アダプタを介することでダイレクト印刷を行うことができる。
（２）携帯電話からの画像データの転送中など、ＰＤプリンタ１０００がダイレクト印刷動作に入れない状態でＰＤプリンタ１０００を占有してしまうのを防止できるので、プリンタの稼働率を向上できる。
（３）携帯電話からの画像データの受信中は、携帯電話からのデータ受信を最優先にするので携帯電話を速やかに解放できる。これは携帯電話やデジタルカメラ等の画像データ供給機器がバッテリ駆動のモバイル機の場合には特に有効となる。
（４）ＰＤプリンタ１０００がダイレクト印刷のためのデータ受信可能状態（Ready状態）でなくても、画像データ源からのデータをアダプタで受信できる。特にプリンタが接続されていない場合であっても、携帯電話からのダイレクト印刷用の画像データを受信できるため携帯電話を速やかに解放できる。
【０１７４】
［実施の形態２の変形例］
前述の実施の形態では、アダプタ１２００がダイレクト印刷のデータを受信した後にＰＤプリンタ１０００がレディ状態にならなかった場合、或いはＰＤプリンタ１０００の電源がオフされた場合、又はＰＤプリンタ１０００が接続されていない場合等においても、ダイレクト印刷が行える場合で説明した。これに対してこの変形例では、ダイレクト印刷の途中でＰＤプリンタ１０００が復帰不可能なエラー状態になった場合でもダイレクト印刷を完結できる場合の実施の例を説明する。
【０１７５】
図２７の「ダイレクト印刷開始」（ステップＳ１１３）から「ダイレクト印刷完了」（Ｓ１１４）の間で、ＰＤプリンタ１０００が復帰不可能なエラーを起こした場合、この印刷処理は「プリンタとアダプタ間インターフェースの初期化」（Ｓ１１１）に戻ってＰＤプリンタ１０００の復帰を待つ。通常、ＰＤプリンタ１０００が復帰不可能（この時印刷の継続も不可能となる）なエラーを起こした場合は、そのプリンタを復帰させるために、プリンタの電源のオフ／オン、もしくはそれに相当するプリンタの初期化処理が行われる。この時当然、インターフェースも初期化されるので、アダプタ１２００とプリンタとの接続は一旦切断され、プリンタ１０００が復帰した後に、再度インターフェースが確立される。よって、ダイレクト印刷の動作としてアダプタ１２００が前述のように「プリンタとアダプタ間インターフェースの初期化」（Ｓ１１１）で待機することにより、ダイレクト印刷の再開が可能となる。
【０１７６】
この時、アダプタ１２００がプリンタから電源を供給されている場合には、プリンタの初期化と同時に電源供給が断たれアダプタ１２００も初期化される場合が考えられる。このような場合、アダプタ１２００は「プリンタとアダプタ間インターフェースの初期化」（Ｓ１１１）に戻る前に、レジューム機能を用いて電源が再投入された場合に、その「プリンタとアダプタ間インターフェースの初期化」（Ｓ１１１）から復帰できるように制御されても良い。尚、電源再投入時に、電源オフ時の作業に復帰させるレジューム機能は周知であるので、ここでの詳細な説明は省略する。
【０１７７】
また上記自動復帰の仕様ではなく、アダプタのＵＩを用いてユーザが自動復帰を指示したときのみ、アダプタ内に保持されている最新のダイレクト印刷用のデータを用いて印刷を行うようにしても良い。この場合でも、再度、携帯電話を立ち上げてダイレクト印刷用の画像を選択し、ダイレクト印刷動作を行う手間隙が省け使い勝手の向上に大きく寄与できる。
【０１７８】
また同様に、プリンタが接続されていない状態で、携帯電話からダイレクト印刷のデータを受信した場合（この時アダプタ１２００は不図示の独自の電源を有している）、アダプタ１２００が「プリンタとアダプタ間の物理的インターフェース接続」の状態で待機することにより、ＰＤプリンタ１０００と接続された時に、自動的にダイレクト印刷を開始できる。また前記と同様に自動復帰の仕様ではなく、アダプタのＵＩを用いてユーザが自動復帰を指示したときのみ、アダプタに保持されている最新のダイレクト印刷用データを用いて印刷を行うようにしても良い。
【０１７９】
以上のとおり構成することにより、
（１）ダイレクト印刷の途中でプリンタが復帰不可能なエラーを発生した場合であっても、再度、携帯電話からダイレクト印刷用のジョブを転送することなくダイレクト印刷を再開できる。
（２）ダイレクト印刷のデータを携帯電話から受信した段階で、アダプタとプリンタとが接続されていない場合でも、アダプタとプリンタとが接続された時点でダイレクト印刷を開始できる。
【０１８０】
［実施の形態３］
前述したように、アダプタ１２００と携帯電話１１００との間の通信に純粋なファイル転送プロトコルを利用し、アダプタ１２００とプリンタ１０００との間の通信に、ダイレクト印刷用のプロトコルを利用する場合、携帯電話１１００からは、転送した印刷データを印刷する印刷ジョブの進捗状況が把握できないため、アダプタ１２００でジョブ管理の補助を行う必要がある。また携帯電話１１００から、用紙無しエラー等で印刷ジョブが中断した時の印刷再開指令や、印刷ジョブの中止指令等のジョブ管理が行えないので、それらを補助するために、アダプタのＵＩや操作ボタンが必要となる。但し、前述したようなジョブの管理方法を実施の形態１又は２のいずれか一方を一義的に利用した場合には、以下に示すような場合に不都合が生じ得る。
（１）実施の形態１に基づき、ＰＤプリンタ１０００が印刷ジョブを受け付けた後、携帯電話１１００からの印刷データの転送を許可する方式で、かつ携帯電話のユーザが手持ちの携帯電話１１００のメモリカード３１０９に保存されている画像を印刷し、その画像をメモリカード３１０９から消去して速やかに新たな画像を撮像しようとする場合。
【０１８１】
この場合には、印刷の完了時期は、携帯電話１１００のユーザにとってはそれほど重要ではないが、携帯電話１１００からアダプタ１２００に画像データの転送要求を通知し、アダプタ１２００がＰＤプリンタ１０００に印刷要求を行った時に、もしＰＤプリンタ１０００がＰＣ３０１０からの印刷を実行中で、その印刷要求を受け付けられない場合は、アダプタ１２００は携帯電話１１００からのデータ受信を中断してしまう。これにより、携帯電話１１００の液晶表示部１１０２にはデータ転送が不可であることを示す通信エラーが表示され、ＰＣ３０１０での印刷処理が完了するまでデータ通信が待たされることになる。その結果、携帯電話のユーザは、新たな画像の撮影ができず、好適なシャッターチャンスを逃すことになってしまうか、印刷を諦めてメモリカード３１０９の画像を消去してメモリエリアを確保する必要がある。
（２）実施の形態２において、アダプタ１２００がＰＤプリンタ１０００の印刷ジョブの受付を持たずに携帯電話１１００からの画像データの転送を許可する方式で、かつ、携帯電話１１００のユーザが画像を早急に印刷して、その印刷結果を携行して外出しようと考えていた場合。
【０１８２】
この場合には、印刷が完了するまでユーザは外出できない。しかし携帯電話１１００からアダプタ１２００に印刷データを転送しようと試み、アダプタ１２００がＰＤプリンタ１０００に印刷指示を行った時に、もしＰＤプリンタ１０００がＰＣからの印刷を実行中の場合であっても、アダプタ１２００は携帯電話１１００からの印刷データの受信を正常に終了する。この場合、携帯電話１１００の液晶表示部１１０２には通信完了が表示されるが、実際の画像の印刷開始は、ＰＣ３０１０からの印刷が完了した後になる。その結果、そのユーザは外出を遅らせるか、他のプリンタを用いて印刷する必要があるが、他のプリンタを用いて画像を印刷してその印刷結果を携行して外出した場合には、その携帯電話のユーザが不在の間に、最初のＰＤプリンタによる画像の印刷が実行されてしまい、無駄な印刷がなされたり、ユーザが不在の状態で個人の写真が印刷されて放置されたままになる。
【０１８３】
以上説明した様に、ユーザの置かれた環境等によって、アダプタ１２００が実施の形態１に基づく「印刷ジョブを現在実行できるか否かが即時に明確に分かるが、印刷ジョブの受け付けは即時実行可能時に限られたモード」で動作するべきか、若しくは実施の形態２に基づく「印刷ジョブの実行時期は保証できないが、印刷ジョブは常時受け付けることができるモード」で動作するべきか、のいずれのモードで動作するかを切り替えることが有効である。
【０１８４】
図２９は、本実施の形態３に係るカメラ付き携帯電話１１００におけるデータ転送動作の切り替え及びＵＩ処理を説明するフローチャートである。このフローチャートでは、携帯電話のユーザが置かれた環境を携帯電話１１００で判断し、その旨をアダプタ１２００に伝える。よって、このフローチャートの開始時点では、既に携帯電話１１００はアダプタ１２００がデータ転送動作の切り替え処理に対応していることを確認しているものとする。尚、この処理を実行するプログラムはＲＯＭ３１０１に記憶されており、ＣＰＵ３１０３の制御の下に実行される。
【０１８５】
まずステップＳ３０１で、アダプタ１２００へのデータ転送が即時印刷を期待してのデータ転送処理であるか否かを判定する。ここでの判定方法としては、液晶表示部１１０２に、即時印刷を希望するか否かの質問を表示し、ユーザによる回答を用いる。判定結果が肯定の場合はステップＳ３０２に進み、否定の場合にはステップＳ３０７に進む。ステップＳ３０２では、即時印刷用の印刷データの転送を行う。ここで、即時印刷用のデータ転送方法としては、例えばIrDAのPUT処理の最初に伝達するName領域が特定のファイル名（例：IMMEDIATE.JPG等）であることを用いる。次にステップＳ３０３で、データ転送が失敗したか否かを判定し、失敗していない場合にはステップＳ３０４に進み、失敗した場合にはステップＳ３０５に進む。ステップＳ３０５では、即時印刷用の画像転送の失敗は、印刷対象のＰＤプリンタ１０００が何らかの理由で現在印刷不可能であるためと判断し、印刷が実行できない旨の印刷エラーメッセージを液晶表示部１１０２に表示して処理を終了する。
【０１８６】
一方ステップＳ３０４では、データ転送が完了したか否かを判定し、完了していない場合にはステップＳ３０２に進んで、前述したデータ転送処理を実行する。こうしてデータ転送が完了するとステップＳ３０６に進み、印刷対象のＰＤプリンタ１０００が印刷可能で、且つアダプタ１２００からの印刷ジョブを受け付けていると判断し、データ転送が成功した旨の通信完了メッセージを液晶表示部１１０２に表示してデータ転送処理を終了する。
【０１８７】
またステップＳ３０１で、即時印刷要求でない場合はステップＳ３０７に進み、ステップＳ３０２とは異なる、通常の転送処理による印刷データの転送を行う。ここで、通常のデータ転送処理方法としては、例えばIrDAのPUT処理の最初に伝達するName領域が特定のファイル名（例：IMMEDIATE.JPG等）以外であることを用いる。そしてステップＳ３０８で、データ転送が失敗したか否かを判定し、失敗していない場合はステップＳ３０９で、転送完了かどうかを判断し、転送完了でないときはステップＳ３０７に戻って前述の通常のデータ転送処理を実行する。
【０１８８】
またステップＳ３０８で、通常のデータ転送が失敗した場合はステップＳ３１０で、携帯電話１１００とアダプタ１２００との間の通信で発生した純粋な通信エラーであると判断し、通信エラーメッセージを液晶表示部１１０２に表示して処理を終了する。またステップＳ３０９で転送処理を完了するとステップＳ３０６で、通常の画像転送の成功は、携帯電話１１００とアダプタ１２００との間の通信が成功したためと判断し、通信完了メッセージを液晶表示部１１０２に表示して処理を終了する。
【０１８９】
図３０は、本実施の形態３に係るアダプタ１２００によるデータ転送動作の切り替え、及び印刷処理を説明するフローチャートである。このフローチャートにおいても、携帯電話のユーザが置かれた環境を携帯電話で判断し、その旨をアダプタ１２００に伝える。よって、このフローチャート開始時点で既にアダプタ１２００は携帯電話１１００がデータ転送動作切り替え指定に対応していることを確認済みとする。尚、この処理を実行するプログラムはＲＯＭ３２０２に記憶されておりＣＰＵ３２０１の制御の下で実行される。
【０１９０】
まずステップＳ４０１で、携帯電話１１００からのデータ転送要求を受信したか否かを判定し、受信しないときはステップＳ４０１に戻り、データ転送要求を受信するまで、この処理を繰り返す。そしてデータ転送要求を受信するとステップＳ４０２で、その要求されたデータ転送が、即時印刷が必要なデータ転送であるか否かを判定する。この判定方法としては、例えばIrDAのPUT処理の最初に伝達されるName領域が特定のファイル名（例：IMMEDIATE.JPG等）である場合に、即時印刷が必要であると判定する。即時印刷が必要な場合はステップＳ４０３に進むが、そうでない場合はステップＳ４１２に進む。
【０１９１】
ステップＳ４０３では、アダプタ１２００がＰＤプリンタ１０００と物理的に接続されたか否かを判定し、接続されていないときは接続されるまでステップＳ４０３を繰り返し実行する。アダプタ１２００がＰＤプリンタ１０００とが接続されるとステップＳ４０４で、アダプタ１２００とＰＤプリンタ１０００との間でのダイレクト印刷の初期化を行う。次にステップＳ４０５で、アダプタ１２００からＰＤプリンタ１０００に対して印刷ジョブの開始を通知する。次にステップＳ４０６で、ＰＤプリンタ１０００から印刷開始ＯＫが返答されるか否か判定し、そうでないときはステップＳ４１１に進み、携帯電話１１００からのデータ転送要求に対して拒否、つまりデータ転送要求が実行できないことを通知してステップＳ４１０に進む。
【０１９２】
一方、ステップＳ４０６で、ＰＤプリンタ１０００からの応答が印刷開始ＯＫであればステップＳ４０７に進み、携帯電話１１００からのデータ転送要求を受付け、携帯電話１１００から送られてくる印刷データを受信し、ステップＳ４０８で、その印刷データに基づいてＰＤプリンタ１０００に印刷用のデータを送信して印刷させる印刷処理を実行する。こうしてステップＳ４０９で、その転送された印刷データに基づくＰＤプリンタ１０００による印刷が完了したか否かを判定し、印刷が完了していないときはステップＳ４０８に戻って前述の処理を実行する。こうして印刷が完了するとステップＳ４１０で、ＰＤプリンタ１０００とのソフト的なＩ／Ｆを切断し、ダイレクト印刷を終了してステップＳ４０１に戻り、以後処理を継続する。
【０１９３】
一方、ステップＳ４０２で即時印刷でない場合はステップＳ４１２に進み、携帯電話１１００からのデータ転送要求を受け入れて、転送される印刷データを受信する。次にステップＳ４１３で、アダプタ１２００とＰＤプリンタ１０００とが物理的に接続されたか否かを判定し、接続されていないときはステップＳ４１３の処理を接続されるまで繰り返す。ＰＤプリンタ１０００と接続されるとステップＳ４１４に進み、アダプタ１２００とＰＤプリンタ１０００との間でのダイレクト印刷の初期化を行う。次にステップＳ４１５で、ＰＤプリンタ１０００に対して印刷ジョブの開始を通知する。ステップＳ４１６で、これに対してＰＤプリンタ１０００からの応答が印刷開始ＯＫであるか否か判定し、ＯＫでなければステップＳ４１７に進み、アダプタ１２００とＰＤプリンタ１０００とのソフト的なＩ／Ｆを切断し、ダイレクト印刷を終了してステップＳ４１３に戻り、ＰＤプリンタ１０００の状況が変化して印刷可能となるか、それとも他の印刷可能なプリンタと接続されることを期待して以後処理を継続する。
【０１９４】
ステップＳ４１６で印刷が可能であればステップＳ４１８に進み、携帯電話１１００から転送された印刷データに基づいてＰＤプリンタ１０００に印刷用のデータを送信して印刷を実行させる。そしてステップＳ４１９で、ＰＤプリンタ１０００での印刷が完了したか否かを判定し、完了していないときはステップＳ４１８に戻って前述の処理を実行する。印刷が完了するとステップＳ４２０に進み、アダプタ１２００とＰＤプリンタ１０００とのソフト的なＩ／Ｆを切断し、ダイレクト印刷を終了してステップＳ４０１に戻り、以後処理を継続する。
【０１９５】
尚、この図３０で説明した処理は基本的なものであり、ステップＳ４０３〜Ｓ４１０の処理ステップには、前述の実施の形態１で説明した処理を適用しても良く、ステップＳ４１２〜Ｓ４２０の処理ステップに、前述の実施の形態２で説明した処理を適用しても構わない。
【０１９６】
また、図２９のステップＳ３０１における、即時転送が必要か否かの判定基準は、ユーザによる選択に限るものではない。例えば、印刷データとして転送する画像ファイルがＪＰＥＧ画像である場合は写真印刷であることを想定して即時印刷用のデータ転送と判断し、それ以外の場合にはアーカイブ目的であると想定して通常のデータ転送であるというように、転送される画像ファイルのフォーマットに基づいて携帯電話１１００が自動的に判別しても良い。また印刷を実行する時刻が深夜帯である場合は、ユーザが外出している可能性が低いので通常のデータ転送とし、それ以外の時間帯の場合には外出している可能性が相対的に高いので、即時印刷用のデータ転送というように、印刷が指示された時刻を基準に判断しても良い。
【０１９７】
また図２９のステップＳ３０２で、即時印刷用のデータ転送方法として、IrDAのPUT処理の最初に伝達されるName領域が特定のファイル名（例：IMMEDIATE.JPG等）を用いるとしてが本発明はこれに限定されるものでなく、例えばＰＴＰの「ObjectInfoDataset」中のキーワードを用いたり、ベンダ固有のコマンド（例：PTP OperationCode=0x9001）を用いたりする等、他の方法を用いても良い。
【０１９８】
また図３０のステップＳ４０２で、即時印刷が必要か否かの判定についても、IrDAのPUT処理の最初に伝達されるName領域が特定のファイル名（例：IMMEDIATE.JPG等）であるかにより判定するとしたが本発明はこれに限定されるものでなく、上述したＰＴＰの「ObjectInfoDataset」中のキーワードにより判定したり、ベンダ固有のコマンド（例：PTP OperationCode=0x9001）により判定する等、他の方法を用いても良い。
【０１９９】
またステップＳ４０２で、携帯電話１１００からの情報に基づいて即時印刷が必要か否かを判定したが本発明はこれに限定されるものでなく、アダプタ１２００が自ら判定しても良い。その場合には、上述した画像フォーマットや現在時刻を基準にして判定しても良く、或いはアダプタ１２００に即時印刷が必要か否かの設定手段を設け、ユーザによる選択を基準にしても良い。また、上記の判定基準は互いに組み合わせて使用しても良い。
【０２００】
更に、前述の実施の形態１，３において、携帯電話１１００とアダプタ１２００との接続を純粋なデータ転送接続、実施の形態２では、簡易なダイレクト印刷接続としたが、本発明はこれに限定されるものでなく、アダプタ１２００とＰＤプリンタ１０００との接続に用いるダイレクト印刷接続と異なる接続であれば良い。よって、実施形態１，３における携帯電話１１００とアダプタ１２００との接続を簡易なダイレクト印刷接続とし、実施の形態２における接続を、純粋なデータ転送接続としても良い。
【０２０１】
なお本発明は、前述した実施の形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが、その供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明には、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２０２】
プログラムを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。その他のプログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【０２０３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件を満足するユーザに対してインターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２０４】
またコンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０２０５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０２０６】
【図１】本発明の実施の形態に係るフォトダイレクトプリンタ装置の概観斜視図である。
【図２】本実施の形態に係るＰＤプリンタの操作パネルの概観図である。
【図３】本発明の実施形態に係るＰＤプリンタの制御に係る主要部の構成を示すブロック図である。
【図４】本発明の実施の形態に係るアダプタを介してＰＤプリンタに画像データを供給してダイレクト印刷が可能なカメラ付き携帯電話の外観図である。
【図５】本発明の実施の形態に係るカメラ付き携帯電話の制御に係る主要部の構成を説明するブロック図である。
【図６】本発明の実施の形態に係るアダプタの外観図である。
【図７】本実施の形態に係るアダプタのハードウェア構成を説明するブロック図である。
【図８】本発明の実施の形態に係るアダプタをＰＤプリンタに接続し、そのアダプタの赤外線送受信部に対しカメラ付き携帯電話の赤外線送受信部を向けた様子を説明する図である。
【図９】本発明の実施形態に係るＰＤプリンタ、アダプタとカメラ付き携帯電話の通信プロトコルスタックの構成を示す図である。
【図１０】本発明の実施形態に係るＰＤプリンタ、アダプタとＢｌｕｅＴｏｏｔｈ装置付きカメラ付き携帯電話の通信プロトコルスタックの構成を示す図である。
【図１１】本発明の実施形態に係るＰＤプリンタ、アダプタとＵＳＢホスト端子付きＰＣの通信プロトコルスタックの構成を示す図である。
【図１２】本発明の実施形態に係るＰＤプリンタ、アダプタとＩＥＥＥ１３９４−１９９５端子付きＰＣの通信プロトコルスタックの構成を示す図である。
【図１３】本発明の実施形態に係るＰＤプリンタ、アダプタと８０２．１１装置付きＰＤＡの通信プロトコルスタックの構成を示す図である。
【図１４】本実施の形態に係るＰＤプリンタとアダプタとをＵＳＢ接続してダイレクト印刷を行う場合、ＰＤプリンタとアダプタとの間でのデータのやり取りを説明する図である。
【図１５】図１４の１４０１で示す、ＵＳＢを使用したダイレクト印刷時の初期化処理の流れを示す図である。
【図１６】本実施の形態に係るＰＤプリンタとアダプタとの間でのＵＳＢによるダイレクト印刷時のスクリプトの転送処理を説明する流れ図である。
【図１７】本実施の形態に係るＵＳＢでのダイレクト印刷時のCapability取得スクリプトの一例を示す図である。
【図１８】本実施の形態に係るＵＳＢでのダイレクト印刷時のジョブ発行スクリプト例を示す図である。
【図１９】本実施の形態に係るＵＳＢによるダイレクト印刷時のStatus通知スクリプトの一例を示す図である。
【図２０】本実施の形態に係るアダプタと携帯電話とが赤外線インターフェースを介して通信する場合の初期化及びファイル転送時の処理の流れを説明する図である。
【図２１】本発明の実施の形態に係る印刷システムにおいて、ＰＤプリンタとアダプタとを接続した時のＰＤプリンタとアダプタと携帯電話の動作シーケンスを説明する図である。
【図２２】本発明の実施の形態に係る印刷システムにおいて、携帯電話からの画像ファイルの転送開始からＰＤプリンタによる印刷が完了するまでの動作シーケンスを説明する図である。
【図２３】本実施の形態に係るアダプタが携帯電話からの画像ファイルの転送を受け付ける処理を説明するフローチャートである。
【図２４】本発明の実施の形態に係る印刷システムにおいて、ＰＤプリンタが印刷を中断して印刷を再開するまでの動作を説明する図である。
【図２５】本発明の実施の形態に係る印刷システムにおける動作シーケンス（変形例Ａ）を説明する図である。
【図２６】本発明の実施の形態に係る印刷システムにおける動作シーケンス（変形例Ｂ）を説明する図である。
【図２７】本実施の形態に係るアダプタによる処理を説明するフローチャートである。
【図２８】本実施の形態２に係るアダプタとＰＤプリンタとの接続、その切断処理を中心に説明するフローチャートである。
【図２９】本実施の形態３に係るカメラ付き携帯電話におけるデータ転送動作の切り替え及びＵＩ処理を説明するフローチャートである。
【図３０】本実施の形態３に係るアダプタによるデータ転送動作の切り替え、及び印刷処理を説明するフローチャートである。
【図３１】従来のＰＣ環境におけるプリントサーバシステムを説明する図である。
【図１】
2006209235.tif 000003
【図２】
2006209235.tif 000004
【図３】
2006209235.tif 000005
【図４】
2006209235.tif 000006
【図５】
2006209235.tif 000007
【図６】
2006209235.tif 000008
【図７】
2006209235.tif 000009
【図８】
2006209235.tif 000010
【図９】
2006209235.tif 000011
【図１０】
2006209235.tif 000012
【図１１】
2006209235.tif 000013
【図１２】
2006209235.tif 000014
【図１３】
2006209235.tif 000015
【図１４】
2006209235.tif 000016
【図１５】
2006209235.tif 000017
【図１６】
2006209235.tif 000018
【図１７】
2006209235.tif 000019
【図１８】
2006209235.tif 000020
【図１９】
2006209235.tif 000021
【図２０】
2006209235.tif 000022
【図２１】
2006209235.tif 000023
【図２２】
2006209235.tif 000024
【図２３】
2006209235.tif 000025
【図２４】
2006209235.tif 000026
【図２５】
2006209235.tif 000027
【図２６】
2006209235.tif 000028
【図２７】
2006209235.tif 000029
【図２８】
2006209235.tif 000030
【図２９】
2006209235.tif 000031
【図３０】
2006209235.tif 000032
【図３１】
2006209235.tif 000033