(57)【要約】【課題】無線通信により接続されたホスト側装置の消費電力を削減することのできる印刷装置を提供すること。【解決手段】印刷装置であって、無線通信によりデータの入出力を行う通信手段と、前記通信手段により入力された印刷対象データの中で画像データが格納されたファイルが前記印刷対象データに含まれることを示す情報を検知したとき、前記ファイルに格納された画像データを入力させるよう前記通信手段を制御するとともに、前記画像データが入力されたとき、前記無線通信による通信を終了させるよう前記通信手段を制御する制御手段と、前記制御手段による通信終了後に前記通信手段により入力された前記印刷対象データから印刷データを生成し、生成した前記印刷データに基づいて、前記画像データを含む前記印刷対象データを印刷する印刷処理手段と、を有している。【選択図】図４
2004255603.tif 000002
【特許請求の範囲】
【請求項１】
無線通信によりデータの入出力を行う通信手段と、
前記通信手段により入力された印刷対象データの中で画像データが格納されたファイルが前記印刷対象データに含まれることを示す情報を検知したとき、前記ファイルに格納された画像データを入力させるよう前記通信手段を制御するとともに、前記画像データが入力されたとき、前記無線通信による通信を終了させるよう前記通信手段を制御する制御手段と、
前記制御手段による通信終了後に前記通信手段により入力された前記印刷対象データから印刷データを生成し、生成した前記印刷データに基づいて、前記制御手段により入力された前記画像データを含む前記印刷対象データを印刷する印刷処理手段と、
を有することを特徴とする印刷装置。
【請求項２】
前記通信手段は、
前記制御手段により画像データを入力させるよう制御されたとき、前記画像データの入力を求めるコマンドを出力し、
前記制御手段により前記無線通信による通信を終了させるよう制御させたとき、通信の終了を示すコマンドを出力する、ことを特徴とする請求項１記載の印刷装置。
【請求項３】
前記制御手段は、
前記印刷対象データをプッシュ型により入力されるよう前記通信手段を制御し、
前記画像データをプル型により入力されるよう前記通信手段を制御する、ことを特徴とする請求項１記載の印刷装置。
【請求項４】
前記印刷対象データは、ハイパーテキストデータであることを特徴とする請求項１記載の印刷装置。
【請求項５】
前記画像データが格納されたファイルが前記印刷対象データに含まれることを示す情報は、所定のタグにより表現されていることを特徴とする請求項４記載の印刷装置。
【請求項６】
無線通信によって通信手段からデータが入力される第１のステップと、
前記第１のステップで入力された前記印刷対象データの中で画像データが格納されたファイルが前記印刷対象データに含まれることを示す情報を検知したとき、前記ファイルに格納された画像データを入力させるよう前記通信手段を制御する第２のステップと、
前記第２のステップによる前記通信手段に対する制御により、前記無線通信で前記画像データが入力されたとき、前記無線通信による通信を終了させるよう前記通信手段を制御する第３のステップと、
前記第３のステップによる通信終了後に前記第１のステップで入力された印刷対象データから印刷データを生成し、生成した印刷データに基づいて、前記画像データを含む前記印刷対象データを印刷するよう印刷処理手段を制御する第４のステップと、
を有することを特徴とする印刷方法。
【請求項７】
無線通信によって通信手段からデータが入力される第１の処理と、
前記第１の処理で入力された前記印刷対象データの中で画像データが格納されたファイルが前記印刷対象データに含まれることを示す情報を検知したとき、前記ファイルに格納された画像データを入力させるよう前記通信手段を制御する第２の処理と、
前記第２の処理による前記通信手段に対する制御により、前記無線通信で前記画像データが入力されたとき、前記無線通信による通信を終了させるよう前記通信手段を制御する第３の処理と、
前記第３の処理による通信終了後に前記第１の処理で入力された印刷対象データから印刷データを生成し、生成した印刷データに基づいて、前記画像データを含む前記印刷対象データを印刷するよう印刷処理手段を制御する第４の処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、無線通信により受信した画像データを含む印刷対象のデータを印刷する印刷装置、印刷方法、及びプログラムに関する。
【０００２】
【従来の技術】
従来から、パーソナルコンピュータなどを用いてインターネット上のホームページにアクセスすることが行われており、ユーザーは、所望のホームページにアクセスすると、必要な情報をパーソナルコンピュータに接続されたプリンタを用いて印刷している。かかる場合に、最近パーソナルコンピュータとプリンタとの接続がＵＳＢやＲＳ−２３２Ｃなどの物理的な有線接続ではなく、無線通信により接続して、必要な情報の印刷を行うことが見られるようになってきた。家庭内や職場など、パーソナルコンピュータやプリンタといったネットワークに接続可能な機器の数が多くなるとそれだけ配線が多くなり、物理的な接続に面倒な作業を伴うことになるからである。無線接続の通信プロトコルとしては、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）が上げられる。ブルートゥースは、家庭内など比較的近距離無線に適した通信プロトコルであって、種々のプロファイルと呼ばれる規格により、通信できるコマンドやデータの種類が決定されている（例えば、非特許文献１）。
【０００３】
一方、インターネット上のホームページは、ＨＴＭＬ（Ｈｙｐｅｒ  ＴｘｅｔＭａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などの言語で作成される他、最近では、ＨＴＭＬに対して様々なタグが追加され、ホームページ作成の自由度を向上させたＸＨＴＭＬ（Ｔｈｅ  Ｅｘｔｅｎｓｉｏｎ  Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇａｇｅ）言語によりホームページが表現されるようになった。パーソナルコンピュータでホームページ上の必要な情報を印刷するときは、かかるＨＴＭＬ言語やＸＨＴＭＬ言語で作成された情報（ＨＴＭＬデータ、ＸＨＴＭＬデータ）をもとに印刷する（例えば特許文献１）。
【０００４】
【非特許文献１】日本エリクソン株式会社  監修、宮津和弘  著、「テクノロジー解体新書、Ｂｌｕｅｔｏｏｔｈ  技術解説ガイド」、発行  株式会社リックテレコム、２００１年５月２５日
【０００５】
【特許文献１】公開特許公報  特開平２００２−１８２８６５号公報
【０００６】
【発明が解決しようとする課題】
しかし、ＨＴＭＬ言語やＸＨＴＭＬ言語で表現された情報の中に画像データが含まれていたとき、これをブルートゥースでプリンタに送信すると、プリンタ内での処理に時間がかかるという問題点があった。すなわち、ＨＴＭＬ言語等で表現された情報を受信したプリンタは、まず、タグごとに分類された複数のツリーからなる内部ツリーを作成し、各ツリーごとに印刷データの作成と処理を行う。そして、ツリー内で画像データを示すファイル名があれば、印刷データ処理の段階で、パーソナルコンピュータに対して画像データの取り込み処理を行って、画像データを含むデータの印刷を行っている。したがって、この印刷が完了した段階で、ブルートゥースの通信終了が行われるので、ＨＴＭＬ言語等で表現された情報を読み込んでから、画像データ取り込んで、印刷が完了しなければ、通信が終了しないことになる。パーソナルコンピュータはその分通信終了を待たなければならず、電力の消費を強いることになる。
【０００７】
そこで、本発明の目的は、無線通信により接続されたホスト側装置の消費電力を削減することのできる印刷装置を提供することにある。
【０００８】
【課題を解決するための手段】
上記の目的を達成するために、本発明は、無線通信によりデータの入出力を行う通信手段と、通信手段により入力された印刷対象データの中で画像データが格納されたファイルが印刷対象データに含まれることを示す情報を検知したとき、ファイルに格納された画像データを入力させるよう通信手段を制御するとともに、画像データが入力されたとき、無線通信による通信を終了させるよう通信手段を制御する制御手段と、制御手段による通信終了後に通信手段により入力された印刷対象データから印刷データを生成し、生成した印刷データに基づいて、制御手段により入力された画像データを含む印刷対象データを印刷する印刷処理手段と、を有する印刷装置であることを特徴としている。これにより、例えば、画像データを取り込んで無線通信を終了させその後印刷処理を行っているため、無線通信により接続されたホスト側の消費電力を削減させる印刷装置を提供することができる。
【０００９】
さらに、上記印刷装置において、通信手段は、制御手段により画像データを入力させるよう制御されたとき、画像データの入力を求めるコマンドを出力し、制御手段により無線通信による通信を終了させるよう制御させたとき、通信の終了を示すコマンドを出力することを特徴としている。これによりブルートゥースの通信プロトコルに従ったコマンドの送受信を行うことができる。
【００１０】
さらに、上記印刷装置において、制御手段は、印刷対象データをプッシュ型により入力されるよう通信手段を制御し、画像データをプル型により入力されるよう通信手段を制御することを特徴としている。これにより、画像データを入力させる際に通信を終了させることなく印刷対象データから画像データの入力まで処理を早めることができる。
【００１１】
さらに、上記印刷装置において、印刷対象データは、ハイパーテキストデータであることを特徴としている。これにより、ホームページのデータを印刷することが可能となる。
【００１２】
さらに、上記印刷装置において、画像データが格納されたファイルが印刷対象データに含まれることを示す情報は、所定のタグにより表現されていることを特徴としている。これにより、印刷装置はこのタグを検索するだけで、画像ファイルがハイパーテキスト中にあるか否かを検索することができる。
【００１３】
また、上記目的を達成するために、本発明は、無線通信によって通信手段からデータが入力される第１のステップと、第１のステップで入力された印刷対象データの中で画像データが格納されたファイルが印刷対象データに含まれることを示す情報を検知したとき、ファイルに格納された画像データを入力させるよう通信手段を制御する第２のステップと、第２のステップによる通信手段に対する制御により、無線通信で前記画像データが入力されたとき、無線通信による通信を終了させるよう通信手段を制御する第３のステップと、第３のステップによる通信終了後に第１のステップで入力された印刷対象データから印刷データを生成し、生成した印刷データに基づいて、画像データを含む印刷対象データを印刷するよう印刷処理手段を制御する第４のステップとを有する印刷方法であることを特徴としている。これにより、画像データを取り込んで無線通信を終了させその後印刷処理を行っているため、無線通信により接続されたホスト側の消費電力を削減させることができる。
【００１４】
また、上記目的を達成するために、本発明は、無線通信によって通信手段からデータが入力される第１の処理と、第１の処理で入力された印刷対象データの中で画像データが格納されたファイルが印刷対象データに含まれることを示す情報を検知したとき、ファイルに格納された画像データを入力させるよう通信手段を制御する第２の処理と、第２の処理による通信手段に対する制御により、無線通信で画像データが入力されたとき、無線通信による通信を終了させるよう通信手段を制御する第３の処理と、第３の処理による通信終了後に第１の処理で入力された印刷対象データから印刷データを生成し、生成した印刷データに基づいて、第３の処理で入力された画像データを含む印刷対象データを印刷するよう印刷処理手段を制御する第４の処理と、をコンピュータに実行させるプログラムであることを特徴としている。これにより、画像データを取り込んで無線通信を終了させその後印刷処理を行っているため、無線通信により接続されたホスト側の消費電力を削減させるプログラムを提供することができる。
【００１５】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態例を説明する。
【００１６】
図１は、本発明が適用されるホスト（パーソナルコンピュータ）１とプリンタ１０の内部構成を示す図である。
【００１７】
まず、ホスト１の内部構成から説明する。ホスト１は、全体として、ＣＰＵ２と、ＲＡＭ３と、インターフェース（Ｉ／Ｆ）４と、ハードディスクドライブ（ＨＤＤ）５と、表示部６、及びＲＯＭ７とから構成される。
【００１８】
ＣＰＵ２は、バスを介してＲＡＭ３、Ｉ／Ｆ４、ＨＤＤ５、表示部６、及びＲＯＭ７とそれぞれ接続され、ＲＯＭ７に格納されたプログラムを読み出して各種処理を実行する。また、ＣＰＵ２は、Ｉ／Ｆ４を介して外部から入力されたブルートゥースのコマンドを解釈して、ＨＤＤ５からデータを読み出したり、Ｉ／Ｆ１３からそのコマンドに対する応答などを外部に出力させるためＩ／Ｆ１３を制御したりする。詳細は後述する。
【００１９】
ＲＡＭ３は、ＣＰＵ２によってプログラムが実行された場合に、データなどを一時的に格納するためのもので、ワーキングメモリとしての役割を果たす。
【００２０】
Ｉ／Ｆ４は、外部機器とのインターフェースとなる。Ｉ／Ｆ４では、ＣＰＵ２の制御によりブルートゥースの規格に沿うコマンドが作成されて外部機器に出力するとともに、外部機器から出力されたブルートゥースの規格に沿うコマンドが入力されて、コマンドの内容に関するデータやそのコマンドに付随したデータをＣＰＵ２に出力するようになされている。なお、Ｉ／Ｆ４内でＣＰＵやＲＯＭ、ＲＡＭを有し、ＣＰＵ２からの制御命令により、その後のブルートゥースのコマンド作成と出力、及び外部から入力された内容を解釈してそのコマンドの作成と出力を行うように構成することもできる。また、Ｉ／Ｆ４は、インターネット接続のためのインターフェースとしての役割も果たし、インターネットを介して他のパーソナルコンピュータやサーバなどと接続され、ホームページ上のデータを入力させることができる。なお、かかるデータはＩ／Ｆ４を介してＣＰＵ２の制御によりＲＡＭ３やＨＤＤ５に格納される。
【００２１】
ＨＤＤ５は、記憶装置としてプリンタ１０で印刷すべき画像データなどが記憶されている。すなわち、本実施例ではホームページ上の画像がＨＤＤ５に格納されている。ＣＰＵ２の制御によりそのデータが読み出されて、Ｉ／Ｆ４に出力され、例えば外部機器としてのプリンタ１０に出力されるようになされている。
【００２２】
表示部６は、インターネット上のホームページの表示を行う。表示は、一旦ＲＡＭ３やＨＤＤ５に格納されたデータをＣＰＵ２の制御により読み出すことで表示部６に表示される。その他に、例えば、ＲＯＭ７に格納されたプログラムの実行後の内容の表示を行うこともできる。
【００２３】
ＲＯＭ７は、ＣＰＵ２によって実行される各種プログラムなどが格納されている。
【００２４】
次にプリンタ１０の内部構成を説明する。プリンタ１０は、ＣＰＵ１１と、ＲＡＭ１２と、Ｉ／Ｆ１３と、コントロールパネル１４と、印刷ユニット１５とから構成される。
【００２５】
ＣＰＵ１１は、バスを介してＲＡＭ１２と、Ｉ／Ｆ１３と、コントロールパネル１４と印刷ユニット、及びＲＯＭ１６とそれぞれ接続されている。ＣＰＵ１１は、ＲＯＭ１６に格納されたプログラムなどを読み出して各種処理を実行し、Ｉ／Ｆ１３やコントロールパネル１４、及び印刷ユニット１５を制御する。また、ＣＰＵ１１は、Ｉ／Ｆ１３を介して外部から入力されたブルートゥースのコマンドを解釈して、印刷ユニット１５を制御したり、Ｉ／Ｆ１３を制御する。詳細は後述する。
【００２６】
ＲＡＭ１２は、ＣＰＵ１１よってプログラムが実行された場合に、データなどを一時的に格納するためのもので、ワーキングメモリとしての役割を果たす。
【００２７】
Ｉ／Ｆ１３は、本発明においてはブルートゥースによって無線接続された外部機器とのインターフェースとなる。Ｉ／Ｆ１３では、ＣＰＵ１１の制御によりブルートゥースの規格に沿うコマンドが作成されて外部機器としてのホスト１に出力するとともに、ホスト１から出力されたブルートゥースの規格に沿うコマンドが入力されて、コマンドの内容に関するデータやそのコマンドに付随したデータをＣＰＵ１１に出力するようになされている。なお、Ｉ／Ｆ１３内でＣＰＵやＲＯＭ、ＲＡＭを有し、ＣＰＵ１１からの制御命令によりその後ブルートゥースのコマンドの作成や出力、及びそのコマンドが入力された内容を解釈してコマンドに対する応答コマンドを作成、出力するように構成することもできる。
【００２８】
コントロールパネル１４は、プリンタ１０内における印刷用紙や、印刷スピード、画質などの設定を行うもので、ユーザーがパネル１４に表示された設定のための画面を見て各種設定を行うことができる。設定されたデータは、ＲＡＭ１２に格納される。
【００２９】
印刷ユニット１５は、実際に印刷用紙に印刷を行うためのユニットであり、例えば用紙を移動させる給紙モータ、インクカートリッジ、カートリッジからインクを吐出させる印刷ヘッド、印刷ヘッドを印字位置まで移動させるキャリッジモータなどから構成される。なお、Ｉ／Ｆ１３から入力された印刷対象の画像データは一旦ＲＡＭ１２に格納される。そして、格納された画像データは、ＣＰＵ１１、ＲＡＭ１２、及びＲＯＭ１６によって、解像度変換処理、色補正処理、及びハーフトーン処理が行われ、印刷データとしてＲＡＭ１２に記憶される。この印刷データがＣＰＵ１１の制御により印刷ユニット１５に出力され、実際に印刷用紙には、入力された画像データの印刷が行われることになる。もちろん、ホスト１側で画像データに対する解像度変換処理、色補正処理、ハーフトーン処理を行って印刷データとしてプリンタ１０側に出力されるようにしてもよい。かかる処理は、この場合ホスト１おＣＰＵ２、ＲＡＭ３及びＲＯＭ７によって実行されることになる。
【００３０】
ＲＯＭ１６は、ＣＰＵ１１によって実行される、各種プログラムが格納される。
【００３１】
次に、ブルートゥースによる無線通信が行われる場合のホストとプリンタ１０の動作について図２を参照して説明する。
【００３２】
まずホスト１は、Ｉｎｑｕｉｒｙコマンドを出力する（ステップＳ１）。これは、ホスト１による接続要求のためのコマンドで、ホスト１のアドレスがＩｎｑｕｉｒｙコマンドに格納される。これは、ホスト１がブルートゥースによる通信を行いたい場合に、通信を受信できる様々な機器のうちホスト１と実際に通信を行う機器はどの機器なのか、ホスト１と接続を希望する機器はどの機器なのかを確認するためのコマンドである。具体的には、ホスト１のＣＰＵ２は、電源投入或いは図示しな操作手段による操作により、ＲＯＭ７に格納されたブルートゥースによる通信を行うためのプログラムが実行され、ＲＯＭ７に格納されたホスト自身のアドレスを読み出して、Ｉ／Ｆ４に出力し、ＣＰＵ２はＩ／Ｆ４を制御して、Ｉ／Ｆ４からこのアドレスを含むＩｎｑｕｉｒｙコマンドを作成させ出力するようになされている。
【００３３】
次いで、プリンタ１０は、このＩｎｑｕｉｒｙコマンドを受信し、ホスト側１と接続を行いたい場合には、そのＩｎｑｕｉｒｙコマンドに対するＲｅｓｐｏｎｎｓｅコマンドをホスト１に出力する（ステップＳ２）。上述したようにホスト１は、Ｉｎｑｕｉｒｙコマンドを出力するものの実際にどの機器と通信を行うかは通信相手側からの応答を待たなければわからない。このコマンドに対する応答をプリンタ１０が行うことでホスト１と通信受信範囲内にある機器のうちプリンタ１０が通信を行う旨を表明するのである。プリンタ１０が行う具体的な処理は、プリンタ１０がこのＩｎｑｕｉｒｙコマンドを受信できる範囲内で電源投入或いはブルートゥースによる通信可能な状態になると、Ｉｎｑｕｉｒｙコマンドをプリンタ１０のＩ／Ｆ１３が受信する。Ｉ／Ｆ１３は、Ｉｎｑｕｉｒｙコマンドの受信を示す制御信号をＣＰＵ１１に出力し、ＣＰＵ１１はホスト１と通信を行いたい場合にその応答を示すＲｅｓｐｏｎｓｅコマンドの作成をＩ／Ｆ１３に指示する。また、Ｉｎｑｕｉｒｙコマンドとともに入力されたホスト１のアドレスもＩ／Ｆ１３から出力されＣＰＵ１１の制御によりＲＡＭ１２に格納される。そして、ＲＯＭ１６に格納されたプリンタ１０自身のアドレスもＣＰＵ１１の制御により読み出され、Ｒｅｓｐｏｎｓｅコマンドとともに出力されるようＩ／Ｆ１３に指示する。Ｒｅｓｐｏｎｓｅ作成指示とプリンタ１０のアドレスを受けたＩ／Ｆ１３は、ブルートゥースの規格に沿うＲｅｓｐｏｎｓｅコマンドを作成して、ホスト１に出力する。
【００３４】
プリンタ１０からＲｅｓｐｏｎｓｅコマンドを受信したホスト１は、プリンタ１０に対して通信相手先が誰であるか、どのようなプロファイルによる通信が可能なのか等を示すＳＤＰコマンドを出力する（ステップＳ２３）。ホスト１は、プリンタ１０から自身の出力したＩｎｑｕｉｒｙコマンドに対するＲｅｓｐｏｎｓｅを受信することで、そのアドレスを有する機器とのブルートゥースによる通信接続を行うことができるようになる。しかし、Ｒｅｓｐｏｎｓｅにはアドレスに関する情報のみで通信相手先がプリンタなのか、デジタルカメラなのか、携帯電話であるのか、さらにブルートゥースによる通信が可能であるとしても具体的にどのようなプロファイルによる通信が可能なのかわからない。そこで、このＳＤＰコマンドを、Ｒｅｓｐｏｎｓｅコマンドを出力した機器に出力することで確認するのである。具体的な処理は、ＲｅｓｐｏｎｓｅコマンドをＩ／Ｆ４が受信するとＩ／Ｆ４はそのコマンドを受信したことを示す制御信号をＣＰＵ２に出力し、Ｒｅｓｐｏｎｓｅコマンドに含まれるプリンタ１０のアドレスはＣＰＵ２の制御によりＲＡＭ３に出力され一旦格納される。そして、ＣＰＵ２は、上述のＳＤＰコマンド作成のための指示をＩ／Ｆ４に出力し、Ｉ／Ｆ４からＳＤＰコマンドが出力される。
【００３５】
次いで、ＳＤＰコマンドを受信したプリンタ１０は、そのコマンドに対するＲｅｓｐｏｎｓｅを出力する（ステップＳ４）。このコマンドに対して応答するために、ＣＰＵ１１は、プリンタであることに関する情報、例えば、自身がプリンタであることや、プリンタの名称、型番等、さらにブルートゥースのどのプロファイルで通信できるかに関する情報、例えばＢＰＰ（Ｂａｓｉｃ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｆｉｌｅ）が予めＲＯＭ１６に格納されているので、ＲＯＭ１６からこれらの情報を読出し、Ｉ／Ｆ１３に出力する。また、ＣＰＵ１１は、ＳＤＰコマンドに対する応答を示すＲｅｓｐｏｎｓｅコマンド作成のための指示をＩ／Ｆ１３に行う。これにより、Ｉ／Ｆ１３からは、ＳＤＰに対するＲｅｓｐｏｎｓｅをホスト１に出力することができる。
【００３６】
このコマンドを受信したホスト１は、次いで、Ｏｐｅｎ  Ｄａｔａ  Ｃｈａｎｎｅｌコマンドを出力する（ステップＳ５）。このコマンドは、例えばプリンタ１０側のＩ／Ｆ１３にブルートゥースの通信を行うためのチャンネルが複数ある場合に具体的にどのチャンネルを使用して以後通信を行うのかを問い合わせるためのコマンドである。そして以後、ホスト１からのコマンドはこのチャンネル番号を用いて相手先（図１の例はプリンタ１０）のそのチャンネルに送信することが可能となる。具体的な処理は、ＳＤＰコマンドに対するＲｅｓｐｏｎｓｅを受信したホスト１のＩ／Ｆ４が、その受信を示す制御信号をＣＰＵ２に出力する。また、Ｒｅｓｐｏｎｓｅに含まれるプリンタに関する情報とプロファイルに関する情報（ここではＢＰＰ）はＣＰＵ２の制御によりＲＡＭ３に格納される。そして、ＣＰＵ２は、Ｏｐｅｎ  Ｄａｔａ  Ｃｈａｎｎｅｌコマンド作成のための指示をＩ／Ｆ４に対して行い、Ｉ／Ｆ４からＯｐｅｎ  Ｄａｔａ  Ｃｈａｎｎｅｌコマンド出力する。
【００３７】
このコマンドを受信したプリンタ１０は、具体的にどのチャンネルを使用するかの情報を含むＳｕｃｃｅｓｓコマンドを出力する（ステップＳ６）。図３にはＩ／Ｆ１３のポート部分の構成を示している。図３に示すように本実施例では、優先ポートと無線ポートからＩ／Ｆ１３のポート部分が構成されている。そして、有線ポートは、ＵＳＢやＲＳ−２３２Ｃなどの有線を接続できるように構成され、無線ポートは、ブルートゥースによって無線接続できるように構成されている。図３に示す例では、有線ポートはそれぞれコンピュータや外部メモリと接続される。ここで、無線ポートは２チャンネル分の通信を行うことができるように構成され、ホスト１からの上述したコマンドは“ｃｈ１”を使用して、通信を行っている。このポートのうちどのポートを使用するか、さらに、どのチャンネルを使用するかは、例えばＲＡＭ１２又はＩ／Ｆ１３の図示しないメモリでテーブル等を使用してアドレス管理されており、このＲＡＭ１２やメモリを参照して、上述のコマンドの入出力を当該チャンネルで行っている。したがって、ＯｐｅｎＤａｔａ  Ｃｈａｎｎｅｌコマンドに対するＳｕｃｃｅｓｓコマンドには、このテーブル等を参照して使用するチャンネルを含めることができる。具体的には、ＣＰＵ１１はこの情報をＲＡＭ１２又はメモリから読出し、Ｓｕｃｃｅｓｓコマンドの作成を指示する制御信号をＩ／Ｆ１３に出力することで、Ｉ／Ｆ１３からその情報を含むＳｕｃｃｅｓｓコマンドが出力される。
【００３８】
なお、図２に示すように、ホスト１及びプリンタ１０は、それぞれオブジェクトサーバとＢＰＰクライアント、及びＢＰＰサーバとオブジェクトクライアントと、１つの装置でサーバ、クライアントが構成されている。これは、物理的には、図３に示す無線ポートの各チャンネルを使用することで実現されている。すなわち、プリンタ１０のＩ／Ｆ１３は、ｃｈ１を使用してホスト１側とＢＰＰサーバの役割を果たし、ｃｈ２を使用してオブジェクトクライアントとしての役割を果たすことができる。もちろん、ホスト１側のＩ／Ｆ４もそれぞれ異なるチャンネルを使用して、ＢＰＰクライアントとオブジェクトサーバとしての役割を果たすように構成されている。
【００３９】
ここで、クライアントとサーバの関係を説明すると、上述したコマンドはホスト１がクライアント（ＢＰＰクライアント）、プリンタ１０がサーバとして入出力が行われている。これは、クライアントから（ホスト１側から）の要求に応じてサーバに（プリンタ１０に）、画像データ等のデータを送信するようにして一連の処理を行うためである。このようにクライアント側からサーバ側に画像データなど送信する場合をブルートゥースでは、Ｐｕｓｈ型と呼んでいる。一方、データが送られてきた、サーバ（プリンタ１０）であっても、さらに画像データなどのデータを取り込みたい場合もある。Ｐｕｓｈ型によりホームページの情報を取り込んだサーバ（プリンタ１０）が、その情報に含まれる画像データを示すファイルを取り込みたいときである。かかる場合に、そのサーバ、クライアントの地位を逆転させ、プリンタ１０がクライアントとして、ホスト１がサーバとして役割を果たすようにすれば、サーバ（ホスト１）に格納された画像データを取り込む処理を行うことができる。かかる、サーバ側からクライアント側に画像データなどを送信する場合をブルートゥースでは、Ｐｕｌｌ型と呼んでいる。かかる、Ｐｕｓｈ型、Ｐｕｌｌ型をそれぞれ図３に示す各チャンネルで実現するようにしている。もちろん、１チャンネルで実現することも可能であるが、後述する通信終了のコマンド（Ｃｌｏｓｅコマンド）を送受信した後、再び上述のＩｎｑｕｉｒｙコマンドの送受信から接続確認を行わなければならず、時間がかかるためである。
【００４０】
再び図２の処理に戻って、ステップＳ６でＳｕｃｃｅｓｓコマンドを受信したホスト１は、Ｄａｔａ  Ｓｅｎｄコマンドを出力する（ステップＳ７）。本実施例では、Ｄａｔａ  Ｓｅｎｄコマンドでプリンタ１０に送信される具体的なデータは、ＨＴＭＬ言語やＸＨＴＭＬ言語で作成されたホームページの情報である。ホスト１は、Ｉ／Ｆ４を介してインターネットと接続され、所定の操作を行うことで、ＨＴＭＬ言語やＸＨＴＭＬ言語で表現された、ＨＴＭＬデータやＸＨＴＭＬデータがＩ／Ｆ４からＣＰＵ２の制御によりＲＡＭ３やＨＤＤ５に格納される。そして、格納されたデータをＣＰＵ２の制御により読み出してＲＯＭ７に格納された所定のプログラムを読み出してＸＨＴＭＬ言語を解釈して、表示部６にインターネット上のホームページが表示されるようになっている。かかる言語で表現されたデータがＲＡＭ３に、そのデータ内でファイル名として表現された画像データがＨＤＤ５に格納されている。そして、上述のＳｕｃｃｅｓｓコマンド（ステップＳ６）が入力されると、ＲＡＭ３に格納されたデータをＣＰＵ２の制御によって読み出して、Ｉ／Ｆ４に出力するのである。さらに、Ｄａｔａ  Ｓｅｎｄコマンド作成、出力の指示もＣＰＵ２は、Ｉ／Ｆ４に出力することで、Ｄａｔａ  Ｓｅｎｄコマンドがホスト１からプリンタ１０に出力する。
【００４１】
このＤａｔａ  Ｓｅｎｄコマンドを受信したプリンタ１０は、図４に示す処理を開始する。以下、図２と対応する部分は適宜図２を参照して、この処理を説明する。
【００４２】
まず、Ｄａｔａ  Ｓｅｎｄコマンドを受信するとプリンタ１０のＣＰＵ１１は、Ｄａｔａ  Ｓｅｎｄコマンドに含まれるＸＨＴＭＬデータをＩ／Ｆ１３を介してＲＡＭ１２に格納させる（ステップＳ２０）。本実施例では、ＸＨＴＭＬデータが入力されるものとして以下説明する。このＸＨＴＭＬデータの例を図５に示す。この例は、説明を簡単にするために表現されたもので実際にはさらに様々なタグを有してデータが構成される。なお、ホームページの作成のためのハイパーテキストなら、ＸＨＴＭＬで作成されたデータ以外にも、ＨＴＭＬや、ＸＭＬ（ＥｅＸｔｅｎｓｉｏｎ  Ｍａｒｋ  ｕｐ  Ｌａｎｇｕａｇｅ）、ＳＧＭＬ（Ｓｔａｎｄａｒｄ  Ｇｅｎｅｒａｌｉｚｅｄ  Ｍａｒｋ  ｕｐ  Ｌａｎｇｕａｇｅ）などで作成されたデータでもよい。
【００４３】
データの最初と最後には、このデータがＸＨＴＭＬ言語で作成されたことを示しており、＜ＸＨＴＭＬ＞タグからデータが始まり、＜／ＸＨＴＭＬ＞タグでデータが終了することを示す。
【００４４】
＜ｐ＞タグは、段落の始まりを示し、＜／ｐ＞タグは段落の終了を示す。また＜ＩＭＧ＞タグは、画像データが含まれることを示し、図５の例では“ＣＣＣ．ＪＰＧ”というファイル名によって画像データが表現されることを示す。
【００４５】
かかるＸＨＴＭＬデータによって表現されたホームページは、表示部６において、図６に示すように表現される。ここで“ＡＡＡ”や“ＢＢＢ”は、“ＡＡＡ”、“ＢＢＢ”という文字を示す。その文字の下には、“ＣＣＣ．ＪＰＧ”というファイル名によって表現された画像データが表示される。
【００４６】
図４の処理に戻って、次いで、ＣＰＵ１１は、Ｓｕｃｃｅｓｓコマンド送信処理を行う（ステップＳ２１）。これは、図２のステップＳ８のＳｕｃｃｅｓｓコマンドの出力に対応するものである。Ｄａｔａ  Ｓｅｎｄコマンドによって図５に示すようなＸＨＴＭＬデータを受信してＣＰＵ１１の制御によってＲＡＭ１２に格納されると、ＣＰＵ１１はデータ受信が成功したことを示すＳｕｃｃｅｓｓコマンド作成と出力のための制御信号をＩ／Ｆ１３に出力する。これにより、プリンタ１０からホスト１に対してＳｕｃｃｅｓｓコマンドが出力される。
【００４７】
次いで、ＣＰＵ１１は、ステップＳ２０でＲＡＭ１２に格納されたＸＨＴＭＬデータからＩＭＧタグの検索を行う。図５に示す例では、上から９行目にある＜ＩＭＧ＝“ＣＣＣ．ＪＰＧ”＞を検索する。
【００４８】
次いで、ステップＳ２２による検索により、画像データを示す＜ＩＭＧ＞タグを検索すると、その画像データを取り込むべく、まず、Ｏｐｅｎ  ＯｂｊｅｃｔＣｈａｎｎｅｌコマンドを送信する（ステップＳ２３）。これは、図２のステップＳ９に対応するものである。上述したように、ここまでの処理（図２参照）は、ホストをクライアント、サーバをプリンタとしてブルートゥースによるコマンドの入出力が行われていた（Ｐｕｓｈ型）。かかる、状態のままでは、クライアントはホスト１であるので、プリンタ１０（サーバ）からの要求により、ホスト１０に格納された画像データをプリンタ１０が取り込むことができない。そこで、プリンタ１０をクライアント、ホスト１をサーバとすべく、プリンタ１０からＯｐｅｎ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンドを送信する。上述したように、プリンタ１０のＩ／Ｆ１３においては、ここまで使用したチャンネルとは異なるチャンネルを使用して以後のコマンドのやり取りを行う。具体的な処理は、ステップＳ２２で＜ＩＭＧ＞タグを検索すると、ＣＰＵ１１は、Ｉ／Ｆ１３に対してＯｐｅｎ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンドの作成、出力のための指示を示す制御信号を出力する。これにより、Ｉ／Ｆ１３は、このコマンドを作成してホスト１に出力することができる。
【００４９】
図２に戻り、このＯｐｅｎ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンドを受信したホスト１は、ホスト側で使用するポートのチャンネルを示す番号をＣＰＵ２の制御によりＩ／Ｆ４に出力する。また、このコマンドに対するＳｕｃｃｅｓｓコマンドの作成、出力をＩ／Ｆ４に出力する。これにより、ホスト１からＳｕｃｃｅｓｓコマンドがプリンタ１０に出力される（ステップＳ１０）。
【００５０】
このコマンドを受信したプリンタ１０のＩ／Ｆ１３は、受信したことを示す制御信号をＣＰＵ１１に出力する。これを受けたＣＰＵ１１は、Ｐｕｌｌによる画像データ取り込みの処理を行う（ステップＳ２４）。画像データは、ステップＳ２２で検索した＜ＩＭＧ＞タグに示された画像データである（図５の例は“ＣＣＣ．ＪＰＧ”という画像データ）。そして、この画像データはホスト１のＨＤＤ５に格納されている。図２では、Ｒｅｑｕｅｓｔ  Ｉｍａｇｅ  Ｄａｔａコマンドを送信（ステップＳ１１）して、Ｉｍａｇｅ  Ｄａｔａ取り込み（ステップＳ１２）までの処理に対応する。具体的には、ＣＰＵ１１は、図２のＳｕｃｃｅｓｓコマンドを受信すると（ステップＳ１０）、受信したことを示す制御信号がＩ／Ｆ１３から出力されるので、この信号を基にして、Ｉ／Ｆ１３に対してＲｅｑｕｅｓｔ  Ｉｍａｇｅ  Ｄａｔａコマンド作成、出力のための指示を示す制御信号をＩ／Ｆ１３に出力する。これにより、Ｉ／Ｆ１３からホスト１に対してＲｅｑｕｅｓｔ  Ｉｍａｇｅ  Ｄａｔａコマンドが出力される（ステップＳ１１）。また、ＣＰＵ１１はステップＳ２２で検索した画像データを示すファイル名に関する情報もＲＡＭ１２から読み出して、Ｉ／Ｆ１３に対してＲｅｑｕｅｓｔ  Ｉｍａｇｅ  Ｄａｔａコマンドとともに出力されるよう制御する。
【００５１】
これを受信したホスト１は、受信したことを示す制御信号がＩ／Ｆ４からＣＰＵ２に入力されて、画像データを出力するための処理を行う。具体的には、画像データを示すファイル名がＩ／Ｆ４からＣＰＵ２に入力されるので、ＣＰＵ２は、このファイル名をもとにＨＤＤ５に格納された画像データを読み出す。ＣＰＵ２の制御により、読み出された画像データはＩ／Ｆ４に出力されるようにする。また、ＣＰＵ２は、画像データを出力することを示すＳｅｎｄ  Ｉｍａｇｅ  Ｄａｔａコマンドの作成と出力をＩ／Ｆ４に指示する。Ｉ／Ｆ４からは、ＳｅｎｄＩｍａｇｅデータとともに、ステップＳ２２で検索したファイル名の画像データが出力される（図２のステップＳ１２）。
【００５２】
このコマンドとともに画像データを受信したプリンタ１０のＩ／Ｆ１３は、ＣＰＵ１１の制御により、画像データをＲＡＭ１２に格納させる。これにより、図４に示す画像データの取り込み処理が完了する（ステップＳ２４）。
【００５３】
次いで、ＣＰＵ１１は、Ｃｌｏｓｅコマンドの送信を行う。図２のステップＳ１３対応する。なお、図４のステップＳ２６以後の処理は、図２のＣｌｏｓｅ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンド出力後に行う。まず、図２のステップＳ１３以後の処理を説明する。
【００５４】
図４のステップＳ２４で画像データの取り込みを行うと、ＣＰＵ１１は、ホスト１に対してＣｌｏｓｅ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンド作成、出力をＩ／Ｆ１３に指示する制御信号を出力する。これによりＩ／Ｆ１３から、図２に示すＣｌｏｓｅ  Ｏｂｊｅｃｔ  Ｃｈａｎｎｅｌコマンドがホストに対して出力される（ステップＳ１３）。
【００５５】
これを受信したホスト１のＩ／Ｆ４は、受信したことを示す制御信号をＣＰＵ２に出力し、オブジェクトサーバとしてオープンさせたＩ／Ｆ４のチャンネルの通信を終了させるべく（Ｐｕｌｌ型としてオープンさせたチャンネルの通信を終了させるべく）、ＣＰＵ２は、Ｓｕｃｃｅｓｓコマンドの作成、出力をＩ／Ｆ４に指示する。これにより、Ｉ／Ｆ４からＳｕｃｃｅｓｓコマンドが出力される（ステップＳ１４）。
【００５６】
次いで、ホスト１のＣＰＵ２は、Ｃｌｏｓｅ  Ｄａｔａ  Ｃｈａｎｎｅｌコマンドの作成、出力をＩ／Ｆ４に指示する。これにより、ホスト１からＣｌｏｓｅＤａｔａ  Ｃｈａｎｎｅｌコマンドが出力される（ステップＳ１５）。Ｐｕｓｈ型としてオープンされたチャンネルの通信終了を行うためである。
【００５７】
このコマンドを受信したプリンタ１０のＩ／Ｆ１３は、このコマンドを受信したことを示す制御信号をＣＰＵ１１に出力する。これを受けたＣＰＵ１１は、通信終了を行うべく、Ｓｕｃｃｅｓｓコマンドの作成、出力を指示する制御信号をＩ／Ｆ１３に出力する。以上により、ステップＳ１から開始したブルートゥースによる一連の通信が終了することになる。
【００５８】
かかる一連の通信を終了したＣＰＵ１１は、次いで、ツリー生成の処理を行う（ステップＳ２６）。ツリーの生成とは、ＸＨＴＭＬ言語で表現された要素に対して例えば各属性ごとにツリーを生成し、同じ属性を有する要素を各ノードに振り分けて、木構造（ツリー）を生成することである。これにより、その後の処理、ホームページの表示や印刷などが効果的に行われる。この内部ツリーの例を図８に示す。実際には、ツリーは所定のコードにより表現されているが、説明を簡易にするため図８のように示されている。図５の示すように同じ属性を有する＜ｐ＞タグは、全部で３種類あるので、３つのノードが作成されることになる。そして、各タグの要素は、文字表現である“ＡＡＡ”、と“ＢＢＢ”、そして画像データのファイル名を示す“ＣＣＣ．ＪＰＧ”である。したがって、図５に示すＸＨＴＭＬ言語で表現されたファイルは、図８のように３つのノードから構成された内部ツリーを生成することになる。なお、このツリー作成についてもステップＳ２０で取得したＸＭＴＭＬデータがＲＡＭ１２に格納されているので、このステップＳ２６においてＣＰＵ１１がこのデータを読出し、内部ツリー生成のためのプログラムをＲＯＭ１６から読み出して実行させることで、所定のコードから構成されるツリーを生成することになる。生成したツリーは、再びＲＡＭ１２に格納することになる。
【００５９】
ツリーを生成したＣＰＵ１１は、次いで、ＸＨＴＭＬの画像処理を実行する（ステップＳ２７）。この画像処理の具体的な動作をフローチャートとして図７に示す。この画像処理に移行すると、ＣＰＵ１１は、この処理のための動作を開始する（ステップＳ２７０）。動作の開始は、ＣＰＵ１１がＲＯＭ１６に格納されたＸＨＴＭＬの画像処理のためのプログラムを読み出すことで処理が開始されることになる。
【００６０】
次いでＣＰＵ１１は、全体レイアウトの処理を行う（ステップＳ２７１）。レイアウトの処理とは、印刷用紙に対する全体レイアウトを決定するための処理でである。例えば、ステップＳ２３で受信した画像データがＡ４サイズであるなら、Ａ４サイズと同様の比率のレイアウトを作成する。具体的には、ＣＰＵ１１は、ＲＡＭ１２の所定領域に、何も格納されていない空白領域を作成する。そして、この空白領域がこの画像データのサイズと同様の比率となっている。
【００６１】
次いで、ＣＰＵ１１は、ステップＳ２６（図４参照）で作成した各ツリーの処理を行う。ここでは、説明を簡単にするため、図８に示す３つのツリーを作成した場合の処理（ステップＳ２７２〜Ｓ２７４）について以下説明する。もちろん、図７に示すように３つのツリーの処理のみだけでなく、図８以外のツリー構成を生成した場合には、生成した各ツリーについての処理を行えばよい。ツリーが階層構造を有していても同様である。
【００６２】
まず、ＣＰＵ１１は、ツリー１の処理を行う。ここで、ツリー１の処理とは図８に示す一番左側にある“ＡＡＡ”という要素を処理することである。具体的には、ステップＳ２６（図４参照）で生成したツリーはＲＡＭ１２に格納されているので、ＣＰＵ１１が“ＡＡＡ”を読み出して、ステップＳ２７１で作成した全体レイアウト（ＲＡＭ１２の所定領域）にこの“ＡＡＡ”を格納する。
【００６３】
次いで、ＣＰＵ１１は、ツリー２の処理を行う。ツリー２の処理とは、図８に示す真ん中の“ＢＢＢ”という要素を処理することである。具体的には、ステップＳ２６（図４参照）で生成したツリーのうち“ＢＢＢ”という要素をＲＡＭ１２から読み出して、ステップＳ２７１で生成した全体レイアウトに格納する。
【００６４】
次いで、ＣＰＵ１１は、ツリー３の処理、すなわち図８に示す“ＩＭＧ  ＣＣＣ．ＪＰＧ”の処理を行う。具体的には、“ＩＭＧ”が画像データであることを示すため、ＣＰＵ１１は、ステップＳ２４（図４参照）ですでにＲＡＭ１２に格納した、このファイル名を有する画像データを読み出す。そして、ＲＡＭ１２より読み出した画像データを全体レイアウトの所定領域に格納する。
【００６５】
そして、ＸＨＴＭＬの画像処理が終了する（ステップＳ２７５）。かかる処理が終了すると、全体レイアウトとして確保したＲＡＭ１２の領域には、実際の画像表示、例えば図６、と同様のデータが展開されることになる。その後、このデータを印刷処理することで、ホスト１の表示部６に表示されたホームページ、例えば図６に示される表示、を印刷することができる。印刷処理は、上述したように、ＲＡＭ１２に格納されたステップＳ２８後のデータをＣＰＵ１１が読み出して、ＣＰＵ１１、ＲＡＭ１２、及びＲＯＭ１６によって、解像度変換処理、色補正処理、及びハーフトーン処理が行われ、印刷データとしてＲＡＭ１２に記憶される。この印刷データがＣＰＵ１１の制御により印刷ユニット１５に出力され、実際に印刷用紙には、ホームページの印刷が行われる。
【００６６】
ここで、最後のステップＳ２７５において画像データはすでにステップＳ２４（図４参照）でＲＡＭ１２に格納されているので、この画像データを読み出すだけである。このＸＨＴＭＬデータをプリンタ１０が取り込み、その後、ツリーを生成して、ツリーの処理の段階で（ステップＳ２７２〜Ｓ２７４の段階で）画像データの取り込み処理（図４のステップＳ２４）を行うと、それだけ以後のブルートゥースによる通信終了が遅れる。取得したＸＨＴＭＬデータで、＜ＩＭＧ＞タグを検索により発見したときに、すぐに画像データ取り込み処理を行っているので、通信を上述の場合よりも早く終了させることができる。これにより、ホスト１側の電力の省電を達成することができる。
【００６７】
上述した実施例は、ホストとしてパーソナルコンピュータで説明したが、その他にもデジタルカメラや、携帯電話、その他携帯型情報端末であってもよい。
【図面の簡単な説明】
【図１】ホスト１とプリンタ１０の内部構成を示す図である。
【図２】コマンドの流れを示すタイミングチャートを示す図である。
【図３】プリンタ１０のＩ／Ｆ１３のポートの構成を示す図である。
【図４】ＸＨＴＭＬを受信した後のプリンタ１０の動作を示すフローチャートである。
【図５】ＸＨＴＭＬデータの例を示す図である。
【図６】図５に示すＸＨＴＭＬデータが表示部６に表示されたときの例を示す図である。
【図７】ＸＨＴＭＬデータの画像処理を示すフローチャートである。
【図８】内部ツリーの構成の例を示す図である。
【符号の説明】１  ホスト  ２  ＣＰＵ  ３  ＲＡＭ  ４  Ｉ／Ｆ  ５  ＨＤＤ  ６  表示部  ７  ＲＯＭ  １０  プリンタ  １１  ＣＰＵ  １２  ＲＡＭ１３  Ｉ／Ｆ  １５  印刷ユニット
【図１】
2004255603.tif 000003
【図２】
2004255603.tif 000004
【図３】
2004255603.tif 000005
【図４】
2004255603.tif 000006
【図５】
2004255603.tif 000007
【図６】
2004255603.tif 000008
【図７】
2004255603.tif 000009
【図８】
2004255603.tif 000010