(57)【要約】【課題】  従来の技術では、プリンタの状況や送信者の意図に応じて印刷の可否を決定できるものではなかった。【解決手段】  構造化言語で記述された印刷データを送信機器１０１より受信し、その印刷データを解析し、印刷データにおける印刷不可能なデータの有無を判別する解析部１０６と、その解析結果と、印刷データに対して設定された印刷設定情報とに対応付けて、印刷部１１０による印刷の可否を判定するための印刷条件を記憶する条件テーブル１０７と、その解析結果及び印刷設定情報とを基に条件テーブル１０７を参照して印刷部１１０による印刷を制御する条件判定部１０８とを有する。【選択図】  図１
2007199779.tif 000002
【特許請求の範囲】
【請求項１】
構造化言語で記述された印刷データをホストより受信する受信手段と、
前記受信手段で受信した前記印刷データを解析する解析手段と、
前記解析手段による解析に基づいて、前記印刷データにおける印刷不可能な部分データの有無を判別する判別手段と、
前記解析手段により解析された印刷データに基づいて印刷を行う印刷手段と、
前記判別手段による判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて、前記印刷手段による印刷の可否を判定するための印刷条件を記憶する記憶手段と、
前記判別手段による判別結果及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御する制御手段と、
を有することを特徴とする印刷装置。
【請求項２】
前記印刷条件は、前記判別手段による判別結果と前記印刷設定情報とに応じて、前記印刷手段により印刷を行う否か、或は前記ホストに印刷を行うかどうかを問合せる情報を含むことを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記判別手段は、前記解析手段により解析された前記印刷データの構文エラー、或は解析できないタグ、属性、スタイルシート或はスクリプトの少なくともいずれかに基づいて印刷不可能なデータを判別することを特徴とする請求項１に記載の印刷装置。
【請求項４】
前記制御手段は更に、前記判別手段により判別された前記印刷データにおける印刷不可能なデータの数及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御することを特徴とする請求項１乃至３のいずれか１項に記載の印刷装置。
【請求項５】
前記制御手段は更に、前記判別手段により判別された前記印刷データにおける印刷不可能なデータの割合、及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御することを特徴とする請求項１乃至３のいずれか１項に記載の印刷装置。
【請求項６】
更に、前記制御手段により前記印刷手段による印刷を実行しないように制御されたことを報知する報知手段と、
前記報知手段による報知に応答して、当該印刷を実行しない理由を提示するように指示する指示手段を有することを特徴とする請求項１乃至５のいずれか１項に記載の印刷装置。
【請求項７】
前記ホストに印刷を行うかどうかを問合せた場合、前記制御手段は、前記ホストからの応答に応じて前記印刷手段による印刷を制御することを特徴とする請求項２に記載の印刷装置。
【請求項８】
前記ホストに印刷を行うかどうかを問合せる場合、前記制御手段は、前記印刷データにおける前記印刷不可能なデータを前記ホストに通知することを特徴とする請求項２に記載の印刷装置。
【請求項９】
構造化言語で記述された印刷データをホストより受信する受信工程と、
前記受信工程で受信した前記印刷データを解析する解析工程と、
前記解析工程での解析に基づいて、前記印刷データにおける印刷不可能なデータの有無を判別する判別工程と、
前記判別工程での判別結果及び前記印刷設定情報とを基に、印刷の可否を判定するための印刷条件を記憶するテーブルを参照して印刷を制御する制御工程とを有し、
前記テーブルは、前記判別工程での判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて前記印刷条件を記憶することを特徴とする印刷制御方法。
【請求項１０】
前記印刷条件は、前記判別工程による判別結果と前記印刷設定情報とに応じて、前記印刷工程により印刷を行う否か、或は前記ホストに印刷を行うかどうかを問合せる情報を含むことを特徴とする請求項９に記載の印刷制御方法。
【請求項１１】
前記判別工程では、前記解析工程で解析された前記印刷データの構文エラー、或は解析できないタグ、属性、スタイルシート或はスクリプトの少なくともいずれかに基づいて印刷不可能なデータを判別することを特徴とする請求項９に記載の印刷制御方法。
【請求項１２】
前記制御工程では更に、前記判別工程で判別された前記印刷データにおける印刷不可能なデータの数及び前記印刷設定情報とを基に前記テーブルを参照して印刷を制御することを特徴とする請求項９乃至１１のいずれか１項に記載の印刷制御方法。
【請求項１３】
前記制御工程では更に、前記判別工程で判別された前記印刷データにおける印刷不可能なデータの割合、及び前記印刷設定情報とを基に前記テーブルを参照して印刷を制御することを特徴とする請求項９乃至１１のいずれか１項に記載の印刷制御方法。
【請求項１４】
更に、前記制御工程で印刷を実行しないように制御されたことを報知する報知工程と、
前記報知工程での報知に応答して、当該印刷を実行しない理由を提示するように指示する指示工程を有することを特徴とする請求項９乃至１３のいずれか１項に記載の印刷制御方法。
【請求項１５】
前記ホストに印刷を行うかどうかを問合せた場合、前記制御工程では、前記ホストからの応答に応じて印刷を制御することを特徴とする請求項１０に記載の印刷制御方法。
【請求項１６】
前記ホストに印刷を行うかどうかを問合せる場合、前記制御工程では、前記印刷データにおける前記印刷不可能なデータを前記ホストに通知することを特徴とする請求項１０に記載の印刷制御方法。
【請求項１７】
ホストから構造化言語で記述された印刷データを印刷装置に送信して印刷させる印刷システムであって、
前記印刷装置は、
前記印刷データを解析する解析手段と、
前記解析手段による解析に基づいて、前記印刷データにおける印刷不可能なデータの有無を判別する判別手段と、
前記解析手段により解析された印刷データに基づいて印刷を行う印刷手段と、
前記判別手段による判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて、前記印刷手段による印刷の可否を判定するための印刷条件を記憶する記憶手段と、
前記判別手段による判別結果及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御する制御手段と、
前記制御手段における制御に応じて、前記ホストに応答情報を送信する送信手段とを有し、
前記ホストは、
前記送信手段により送信された前記応答情報に応じた情報を表示する表示手段と、
前記表示手段に表示された情報に応答して入力される指示情報に応じて、前記印刷装置における印刷を制御するための情報を前記印刷装置に送信して印刷を制御する印刷制御手段とを有することを特徴とする印刷システム。
【請求項１８】
前記応答情報は、前記印刷データにおける前記印刷不可能なデータを特定する情報を含み、
前記表示手段は、前記印刷不可能なデータを明示して表示することを特徴とする請求項１７に記載の印刷システム。
【請求項１９】
前記ホストは、更に
前記表示手段に表示された情報に応答して入力される指示情報に応じて、前記印刷装置における印刷設定情報を変更する手段とを有することを特徴とする請求項１７或は１８に記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化言語で記述されたデータを受信して印刷する印刷装置と印刷制御方法と印刷システムに関するものである。
【背景技術】
【０００２】
現在、様々なコンテンツがＨＴＭＬ等に代表される構造化言語により記述され、表示用データとして利用されている。特にＷＷＷではＨＴＭＬやＸＨＴＭＬが利用され、ＢＳデータ放送やＤＴＶ（デジタルテレビジョン）ではＢＭＬが利用されている。
【０００３】
これらのコンテンツが利用されるに従ってその印刷のニーズが高まるとともに、規格の面においても、ＵＰｎＰやBluetoothにおいて、その印刷用の規格としてXHTML-Printデータを印刷することが求められている。現在では、ＸＨＴＭＬ或はXHTML-Print等の構造化言語のデータを印刷する機能を備えたプリンタが市場に登場し始めている。
【０００４】
ところで、これら構造化言語のデータを印刷する機能を備えたプリンタにおける構造化言語の印刷能力は様々であり、規格上で定められたＸＨＴＭＬやXHTML-Printの機能を全て網羅して完全に正しく解析・印刷する能力を備えたプリンタは実際には存在していない。仕様の範囲内で、プリンタメーカや機種に応じて印刷可能な範囲（記述）が設定されているのが現状である。また実装上の面から考えても、規格上で定められた機能を全て網羅するのはＣＰＵやメモリ等のハードウェア資源や経済的な問題から難しく、何らかの機能の制限が発生するのは避けられない状況にある。また言語の面でも、全ての言語用のフォントを用意するのは困難であり、搭載していないフォントを必要とする印刷データが印刷できなくなる等の機能制限が発生している。従って、構造化言語で記述された印刷データをプリンタに送信しても、そのデータの送信者或はコンテンツ製作者の意図通り正しく印刷される保証は無い。そのようなプリンタにおいて、機能上の制限やデータ解析の失敗等により正しく印刷できない場合には、プリンタの有する機能内で最善と思われる機能を用いて印刷する（ベストエフォート印刷）のが通常の処理となっている。そのようなベストエフォート印刷処理以外の代替処理としては、期待通り印刷できない場合には印刷自体を行わないという選択肢がある。
【０００５】
このような状況に対処する技術として、以下に示す技術が提案されている。
【０００６】
ｖCardやｖNoteのデータを受信し、その処理に先立ってデータの中身を解析して印刷の適否を判定する。印刷不能であれば、エラー原因がプリンタに設けられた操作パネル等で報知される（特許文献１）。ＸＭＬで記述されたオーダ情報に従った印刷ジョブの実行が印刷機の故障等で不可能であれば、予め決められた他のプリンタに印刷オーダ情報を廻して処理を移す。この時、印刷エラー情報をクライアントアプリケーションに対して応答する（特許文献２）。
【特許文献１】特開２００５−０５０２９９号公報
【特許文献２】特開２００５−０３１８５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このような状況において、印刷データの送信者は、どのような印刷結果が得られるかは、実際に印刷を行ってその印刷結果を見るまでは分からない。従って、印刷を行って期待通りの印刷が得られずに、用紙やインクを無駄に消費してしまうという問題が発生していた。
【０００８】
通常の機能上の制限によるもの以外に、印刷データが外部の画像データを参照している部分で、リンク切れ等により画像データを参照できなくなり印刷が不完全になってしまうケースが存在する。このようなケースでも、印刷者は期待通りの印刷が得られない。その結果、用紙やインクを無駄に消費してしまうという問題が発生する。
【０００９】
また、プリンタのベストエフォートで印刷が行われた際に、その印刷データの送信者が印刷できなかった部分を一見して気がつかない場合がある。このように、その送信者自身が、印刷結果に不備があることを気が付かないという場合が発生する。
【００１０】
このような問題点を防止するために、印刷が正常に実行できない場合には印刷を行わないという処理を行うこともできる。しかしその場合には、その印刷データの送信者にとって、その印刷の不備が些細な問題であり、その印刷結果で満足できるものであったとしても、その印刷が全く実行されなくなる。
【００１１】
一方、印刷データのコンテンツの製作者にとっては、印刷が正しく行われなかった場合に、何が原因で印刷が不完全となっているのかが判別できない。このため、正常に印刷されるデータを作成するために、トライアンドエラーを何回も繰り返すことになる。
【００１２】
上述の特許文献１及び２に記載された技術では、上述のように印刷自体は行われるが、その印刷が不完全となるような状況に対応できない。また、プリンタの状況や送信者の意図に応じて印刷の可否を決定できるものでもなかった。そこで、構造化言語で記述されたデータが原因となって、印刷指示通りに印刷できない場合には、何が原因であるのか、またベストエフォートで印刷された場合には、印刷指示とどこが違って印刷されたか、明確に判別できるようになることが望まれる。
【００１３】
本発明の目的は、上記従来技術の問題点を解決することにある。
【００１４】
本願発明の特徴は、構造化言語により記述された印刷データに印刷不可能なデータが存在したときに、ユーザの意図を反映させて、より利便性の高い印刷を実行できる印刷装置及び印刷制御方法と印刷システムを提供することを目的としている。
【課題を解決するための手段】
【００１５】
上記目的を達成するために本発明の一態様に係る印刷装置は以下のような構成を備える。即ち、
構造化言語で記述された印刷データをホストより受信する受信手段と、
前記受信手段で受信した前記印刷データを解析する解析手段と、
前記解析手段による解析に基づいて、前記印刷データにおける印刷不可能な部分データの有無を判別する判別手段と、
前記解析手段により解析された印刷データに基づいて印刷を行う印刷手段と、
前記判別手段による判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて、前記印刷手段による印刷の可否を判定するための印刷条件を記憶する記憶手段と、
前記判別手段による判別結果及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御する制御手段とを有することを特徴とする。
【００１６】
上記目的を達成するために本発明の一態様に係る印刷制御方法は以下のような工程を備える。即ち、
構造化言語で記述された印刷データをホストより受信する受信工程と、
前記受信工程で受信した前記印刷データを解析する解析工程と、
前記解析工程での解析に基づいて、前記印刷データにおける印刷不可能なデータの有無を判別する判別工程と、
前記判別工程での判別結果及び前記印刷設定情報とを基に、印刷の可否を判定するための印刷条件を記憶するテーブルを参照して印刷を制御する制御工程とを有し、
前記テーブルは、前記判別工程での判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて前記印刷条件を記憶することを特徴とする。
【００１７】
上記目的を達成するために本発明の一態様に係る印刷システムは以下のような構成を備える。即ち、
ホストから構造化言語で記述された印刷データを印刷装置に送信して印刷させる印刷システムであって、
前記印刷装置は、
前記印刷データを解析する解析手段と、
前記解析手段による解析に基づいて、前記印刷データにおける印刷不可能なデータの有無を判別する判別手段と、
前記解析手段により解析された印刷データに基づいて印刷を行う印刷手段と、
前記判別手段による判別結果と前記印刷データに対して設定された印刷設定情報とに対応付けて、前記印刷手段による印刷の可否を判定するための印刷条件を記憶する記憶手段と、
前記判別手段による判別結果及び前記印刷設定情報とを基に前記記憶手段を参照して前記印刷手段による印刷を制御する制御手段と、
前記制御手段における制御に応じて、前記ホストに応答情報を送信する送信手段とを有し、
前記ホストは、
前記送信手段により送信された前記応答情報に応じた情報を表示する表示手段と、
前記表示手段に表示された情報に応答して入力される指示情報に応じて、前記印刷装置における印刷を制御するための情報を前記印刷装置に送信して印刷を制御する印刷制御手段とを有することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、構造化言語により記述された印刷データに印刷不可能な部分データが存在したときに、ユーザの意図を反映させて、より利便性の高い印刷を実行できるという効果がある。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００２０】
［実施の形態１］
図１は、本発明の実施の形態１に係る印刷装置（プリンタ）の機能構成を説明する機能ブロック図である。
【００２１】
このプリンタ１０２は、ＨＴＭＬ，ＸＨＴＭＬ，XHTML-Print或は他の構造化言語で記述された印刷データを送出する送信機器（ここでは携帯電話）１０１からのデータを受信して印刷するように構成されている。プリンタ１０２は、送信機器１０１と無線によるデータの送受信を行うデータ受信部１０３及びデータ送信部１０４を備えている。データ受信部１０３により受信したデータが印刷のための各種設定（印刷品位、印刷部数、用紙設定等）であれば、そのデータは印刷設定解析部１０５に送られる。またＸＨＴＭＬで記述された印刷データであれば、そのデータはＸＨＴＭＬ解析部１０６に送られる。ＸＨＴＭＬ解析部１０６では、受信したＸＨＴＭＬ印刷データに含まれる構文エラー、サポートしていないタグやプロパティ、参照データへのリンク切れ、或は実装上の制限等により印刷不可能な部分を検出して列挙する。ここで検出されたエラーの内容及び、印刷設定解析部１０５により解析された印刷設定情報は条件判定部１０８に送られる。
【００２２】
条件判定部１０８は、予め定められた条件テーブル１０７と、印刷設定解析部１０５から受け取った印刷設定情報、及びＸＨＴＭＬ解析部１０６より受け取った印刷不能情報との比較及び参照を行って印刷の可否を決定する。この判定の結果、印刷可能と判定した場合に、ＸＨＴＭＬ印刷データはＸＨＴＭＬレンダリング部１０９に送られてレンダリングされる。こうしてレンダリングされたイメージデータが印刷部１１０に送られ、印刷機構１１１を用いてＸＨＴＭＬで記述された印刷データが印刷される。
【００２３】
尚、上記説明では、構造化言語をＸＨＴＭＬに限定して説明しているが、ＨＴＭＬ，XHTML-Print或は他の構造化言語であっても良い。また送信機器１０１は携帯電話に限らず、パーソナルコンピュータ（ＰＣ）或はゲーム機、家庭用電気製品、又はモバイル機器等であっても良い。
【００２４】
図２は、本実施の形態１に係るプリンタ１０２のハードウェア構成の概略を示すブロック図である。
【００２５】
このプリンタ１０２は、ＲＯＭ２０２に記憶されているプログラムに従ってプリンタ全体の動作を制御するＣＰＵ２０１を有している。ＲＯＭ２０２は、プログラムや各種データを記憶している。ＲＡＭ２０３はＣＰＵ２０１の制御処理時に各種データを一時的に保存するワークエリアとしても機能している。プリンタ制御部２０４は、ＣＰＵ２０１の指示に従ってプリンタエンジン（印刷機構１１１）の制御を行う。無線通信I/F制御部２０５、ベースバンド部２０６、ＲＦ部２０７及びアンテナ２０８は、この実施の形態１ではブルーツース（Bluetooth）での無線通信を制御している。プリンタ１０２から送信機器（携帯電話）１０１へのデータ送信の際には、送信データがBluetooth規格で定められている方式に従って無線通信I/F制御部２０５からベースバンド部２０６に転送される。そして、その信号はＲＦ部２０７で変調されてアンテナ２０８からホストであるBluetooth通信機器（携帯電話１０１）に送信される。また送信機器１０１から送信されたデータを受信する際には、送信の場合とは逆の経路で、アンテナ２０８からＲＦ部２０７に送られた信号が復調され、ベースバンド２０６、無線通信I/F制御部２０５を介してＣＰＵ２０１に転送され処理される。
【００２６】
図３は、本実施の形態１に係るプリンタ１０２が送信機器１０１から印刷データを受信する際の動作を説明するフローチャートである。尚、この処理を実行するプログラムはＲＯＭ２０２に記憶されており、ＣＰＵ２０１の制御の下に実行される。
【００２７】
まずステップＳ２０１で、送信機器１０１から送信される印刷品位、印刷部数或は用紙設定等の印刷設定情報を受信する。そしてステップＳ２０２で、この受信した印刷設定情報を解析してＲＡＭ２０３に保存する（印刷設定解析部１０５）。尚、この印刷設定情報は、例えばプリンタ１０２に備えた操作パネルのキー等により、予めプリンタ１０２に設定されていても良い。
【００２８】
次にステップＳ２０３で、送信機器１０１からＸＨＴＭＬ印刷データを受信するとステップＳ２０４に進み、その印刷データを解析する（ＸＨＴＭＬ解析部１０６）。ここでは、構文エラー、サポートしていないタグやプロパティ、参照データへのリンク切れ、或は実装上の制限等により印刷不可能な部分データが無いかどうかを判定し、印刷不可能な部分データがあればそれらを列挙する。この解析の結果、印刷できない部分が存在しなければステップＳ２０５からステップＳ２０６に進み、印刷開始のステータス情報を送信機器１０１に送信する。そしてステップＳ２０７で、通常の印刷処理としてＸＨＴＭＬデータのレンダリング処理を行い（ＸＨＴＭＬレンダリング部１０９）、ステップＳ２０８で、そのレンダリング結果に基づいて、印刷部１１０及び印刷機構１１１により印刷を実行する。
【００２９】
一方、ステップＳ２０５で、印刷データ中に何らかの印刷不可能な部分データが存在すればステップＳ２０９に進み、ステップＳ２０２で保存されている印刷設定情報を印刷設定解析部１０５で解析する。そして条件判定部１０８により、その解析結果を参照インデックスとして印刷条件テーブル１０７を参照する。印刷条件テーブル１０７には、例えば、高品位印刷モードやインク残量が少ないなら印刷不可能な部分データがあると印刷を中止することや、普通・テスト・低品位印刷モードなら印刷不可能な部分データであっても印刷を行うことなどの印刷条件が保持されている。次にステップＳ２１０で、印刷条件テーブル１０７の参照結果と、検出された印刷不可能な部分データの情報とを比較し、印刷可能な条件であればステップＳ２０６に進んで印刷開始のステータス情報を送信機器１０１に送信する。この場合は、ステップＳ２０７で、印刷不可能な部分データを無視してＸＨＴＭＬデータのレンダリング処理を行い、そのレンダリング結果を印刷する（Ｓ２０８）。尚、ここでは印刷不可能な部分データを無視してレンダリングを行っているが、それ以外にも、枠線等で印刷不可能な部分が存在する旨を印刷するという処理を行うことも可能である。
【００３０】
一方、ステップＳ２１０で印刷不可能な条件であればステップＳ２１１に進み、テーブル１０７の参照結果により、「印刷確認」が条件となっているかどうかを判定する。そうであればステップＳ２１２に進み、印刷不可能な部分の情報を、送信機器１０１への印刷確認待ちステータス応答情報として作成する。次にステップＳ２１３で、その応答情報を送信機器１０１に送信する。そしてステップＳ２１４で、送信機器１０１からの印刷確認用のデータの受信を待つ。ここで印刷ＯＫを示すデータを受信するとステップＳ２０６に進み、印刷開始のステータス情報を送信し、ステップＳ２０７で、印刷不可能な部分を無視してＸＨＴＭＬデータのレンダリング処理を行い、そのレンダリング結果を印刷する（Ｓ２０８）。一方ステップＳ２１５で、印刷ＮＧを示すデータを受信した場合は、そのＸＨＴＭＬ印刷データを破棄して印刷を行わずに処理を終了する。
【００３１】
またステップＳ２１１で、テーブル１０７の参照結果が「印刷停止」が条件となっている場合はステップＳ２１６に進み、印刷不可能な部分の情報を送信機器１０１への印刷停止ステータス応答情報として作成する。そしてステップＳ２１７で、それを送信機器１０１に送信する。そしてステップＳ２０３で受信したＸＨＴＭＬ印刷データを破棄し、印刷を行わずに処理を終了する。
【００３２】
尚、ステップＳ２０９〜Ｓ２１１における印刷条件テーブル１０７の参照結果に基づく判定処理は、具体例を挙げて詳しく後述する。
【００３３】
図４は、本発明の実施の形態１に係る送信機器１０１である携帯電話の制御に係る主要部の構成を説明するブロック図である。
【００３４】
ＣＰＵ４０１は、この携帯電話１０１全体の制御を司っている。ＲＯＭ４０２は、ＣＰＵ４０１により実行される処理手順を実行するためのプログラムや、各種データを記憶している。ここではプログラムが適宜バージョンアップが行われることを想定し、このＲＯＭ４０２に書き込み可能な不揮発性メモリ、例えばフラッシュメモリを使用しても良い。ＲＡＭ４０３は、ＣＰＵ４０１による処理の実行時にワークエリアとして使用され、各種データを一時的に保存する。このＲＡＭ４０３は、通常の揮発性メモリで構成してもよく、また電源を切断しても、その内容を保持する不揮発性メモリで構成してもよい。ＣＣＤ４０７は、その素子面に光学ユニット４０６で結像された画像に応じた電気信号を発生する。ドライバ４０８は、ＣＰＵ４０１の制御下で、光学ユニット４０６のフォーカシングや絞りなどを制御する。メモリカード４０９は、通常、コンパクトフラッシュ（登録商標）メモリカード、スマートメディア等が用いられ、撮影した画像の画像データ等を記憶している。
【００３５】
赤外線送受信部（ＩｒＤＡ）４１１は、例えばBluetooth等による赤外線通信のために赤外線の送受信を行う。この赤外線送受信部４１１は、プリンタ１０２との赤外線による送受信以外にも、他の携帯電話との間での赤外線での送受信、ＴＶなどのリモコン受光部を持つ電子機器に対しての赤外線送信などが可能である。液晶表示部４０５は、携帯電話として使用する際に各種情報を表示する。更には、カメラ機能を使用する際には、ファインダとして画像を表示するとともに、撮影した写真などを表示することも可能である。操作ボタン及びスイッチ４０４は、携帯電話として使用する際のダイヤル操作以外にも、メール文書の作成にも使用される。またカメラ機能を使用する際には、シャッタなどのカメラ操作が可能である。尚、この操作ボタン４０４の機能は、携帯電話１０１の仕様状況に応じて多種多様に変化する。カードスロット４１０は、メモリカード４０９を接続するためのメモリカードスロットで、このメモリカード４０９を使用することにより、撮像した画像を保存／参照する以外にも、携帯電話１０１内部の各種情報を保存したり、参照することが可能になる。
【００３６】
図５は、本実施の形態１に係る送信機器（携帯電話）１０１がプリンタ１０２に対して印刷を指示する場合の動作を説明するフローチャートである。尚、この処理を実行するプログラムはＲＯＭ４０２に記憶されており、ＣＰＵ４０１の制御の下に実行される。
【００３７】
まずステップＳ３０１で、印刷品位、印刷部数或は用紙設定等の印刷設定情報をまとめてプリンタ１０２に送信する。尚、ここでは印刷設定情報は送信機器１０１から送信するフローとなっているが、前述したように、プリンタ１０２に備えたキー等の別の手段により予めプリンタ１０２で設定しておくことも可能である。
【００３８】
この印刷設定情報を送信した後、ステップＳ３０２で、ＸＨＴＭＬ印刷データをプリンタ１０２に送信する。そしてステップＳ３０３で、プリンタ１０２からのステータス応答の受信待ちとなる。そして、ステップＳ３０４で、プリンタ１０２から印刷開始のステータス情報を受信するのを待ち、この印刷開始のステータス情報を受信すると、通常の印刷終了待ち等の処理へ移行する。
【００３９】
一方ステップＳ３０４で、プリンタ１０２から印刷開始のステータス情報を受信しないときはステップＳ３０５に進み、印刷不可能な部分データを列挙した「印刷確認」待ちのステータス情報を受信するかをみる。これを受信するとステップＳ３０６に進み、送信機器１０１に備えられたＬＣＤ表示部４０５に「印刷確認」のためのメッセージを表示する。そしてステップＳ３０７で、ユーザに対して印刷を行うかどうかを確認する。ここで、ユーザが操作ボタン４０４を操作して、印刷を行うとの指示が入力された場合はステップＳ３０８に進み、プリンタ１０２に対して印刷開始（印刷ＯＫ）を示す印刷開始メッセージを送信する。
【００４０】
一方、ステップＳ３０７で、ユーザが印刷を行わないと指示した場合はステップＳ３０９に進み、印刷ＮＧを示す印刷停止メッセージをプリンタ１０２に送信する。
【００４１】
一方、ステップＳ３０４で、送信機器１０１が受信したのが「印刷停止」を示すステータス情報であった場合はステップＳ３１０に進み、ユーザに対して印刷品位、印刷部数或は用紙設定等の印刷設定を変更して再度印刷データの送信を行うかどうかを確認するためのメッセージをＬＣＤ表示部４０５に表示する。そしてステップＳ３１１で、印刷設定を変更するように指示されるとステップＳ３０１に戻り、ユーザによる印刷設定を受け付け、印刷設定情報の送信処理から繰り返す。またステップＳ３１１で、印刷設定を変更しない場合は、そのまま、この印刷処理を終了する。
【００４２】
本実施の形態１に係るプリンタ１０２による上述した処理の例を図６〜図８を参照して詳しく説明する。
【００４３】
図６は、本実施の形態１に係る送信機器１０１がプリンタ１０２に送信するＸＨＴＭＬ印刷データの一例を示す図である。
【００４４】
この図６に示すＸＨＴＭＬ印刷データの内、プリンタ１０２は、６０１で示すプロパティをサポートしていないものとする。このＸＨＴＭＬ印刷データを受け取ったプリンタ１０２のＸＨＴＭＬ解析部１０６は、図３のステップＳ２０５で、そのプロパティを使用した「clipit」クラスが正常に印刷できないと判断する。ここでは、ＢＯＤＹデータの６０２で示す部分が、正常に印刷できない部分であると判断する。
【００４５】
図７は、本実施の形態１に係るプリンタ１０２が送信機器１０１に送信する印刷不可能な部分を列挙したステータス応答情報の一例を示す図である。
【００４６】
７０１は、図６の６０１に対応するプロパティを解析できないことが記述している。また７０２は、図６の６０２で示すＢＯＤＹデータ部分が正常に印刷できないことを記述している。
【００４７】
また図８は、本実施の形態１に係るプリンタ１０２の条件判定部１０８が参照する条件テーブル１０７の一例を示す図である。
【００４８】
ここで印刷設定として、予め図３のステップＳ２０１で、「通常印刷、普通用紙、印刷部数＝１」の印刷が設定されていると仮定する。ここで、プリンタ１０２は、受信したＸＨＴＭＬ印刷データから印刷不可能な部分を検出するとステップＳ２０９で、図８に示す印刷条件テーブル１０７を参照する。ここでは図６に示す印刷データの印刷不可能部分６０２を通常エラーとして扱い、その列を参照する。その結果、８０１で示すように、「エラー数＝１で印刷。エラー数≧２で印刷確認」となる。図６に示すデータでは印刷不可能部分６０２が１箇所だけであるため、エラー数＝１となる。よって、この場合は、図８の８０１で示す「エラー数＝１で印刷」に該当することになる。従って、図３のステップＳ２１０で印刷可能と判断される。こうして、この場合には、エラー情報を応答せずに印刷不可能な部分を無視して印刷を行うことになる。
【００４９】
また他の例として、印刷設定として「高品位印刷、普通用紙、印刷部数＝１」の印刷が設定されていたと仮定する。その場合の参照欄は図８の８０２となり、「エラー有りで印刷確認」となる。従ってステップＳ２１１では、「印刷確認」が必要であると判断してステップＳ２１２に進み、図７に示す印刷確認用ステータス応答情報を作成し、ステップＳ２１３で、それを送信機器１０１に送信する。ここでは、図６の「サポートしていないプロパティ」６０１に含まれる各プロパティが存在するＸＨＴＭＬデータ中の行数及び、プロパティのトークンをエラー詳細として「正常に解析できない部分」７０１にまとめる。その結果、印刷できない部分を「正常に印刷できない部分」７０２にまとめている。このデータを受信した送信機器１０１は、図５のステップＳ３０６で、図９の表示例のようにユーザに対して印刷確認のメッセージを表示することができる。
【００５０】
図９は、本実施の形態１に係る送信機器１０１である携帯電話の表示部４０５に表示される印刷確認メッセージの一例を説明する図である。
【００５１】
図９の例では、「以下の部分が正しく印刷されない可能性があります」とのメッセージと共に、正常に印刷できないテキスト部分「This is just some te..」を表示する。更に、「印刷確認」のためのメッセージ、即ち、印刷を行うかどうかを問合せるボックス「詳細確認」「はい」「いいえ」を表示する。そしてこれらボックスのいずれかがユーザにより選択されると、それに応じて印刷を実行するかどうかが決定される。
【００５２】
また印刷設定として、「高品位印刷、高品位用紙、部数＝１」と設定されていた場合には、ステップＳ２０９での参照の結果は、図８の８０３で示すように、「エラー有りで印刷停止」となる。よって、この場合はステップＳ２１１で「印刷停止」であると判断する。そしてステップＳ２１６に進み、印刷停止用のステータス応答情報を作成して送信機器１０１に送信する。このデータを受信した送信機１０１は、ステップＳ３０５からステップＳ３１０に進み、図１０の表示例のように、ユーザに対して印刷設定変更用のメッセージを表示することができる。
【００５３】
図１０は、本実施の形態１に係る送信機器１０１である携帯電話の表示部４０５に表示される印刷停止確認メッセージの一例を説明する図である。
【００５４】
図１０の例では、「以下の部分が正しく印刷されない可能性があるため印刷を中止しました」とのメッセージと共に、正常に印刷できないテキスト部分「This is just some te..」を表示する。更に、印刷設定を変更して印刷を行うかどうかを問合せるボックス「詳細確認」「はい」「いいえ」を表示する。そしてユーザの選択に応じて、印刷設定の変更と印刷を実行するかどうかが決定される。
【００５５】
尚、図８の条件テーブル１０７の例では、１つの印刷不可能部分を１つのエラーとして扱い、エラーの数を判断の基準としていた。これに対して別の条件テーブルの例として図１１に示すように、印刷不可能となった領域の割合を基準として判断することも可能である。
【００５６】
図１１は、前述した実施の形態１に係る条件テーブル１０７の他の実施例を説明する図である。
【００５７】
図８と比較すると明らかなように、図１１では、「通常印刷」で「普通用紙」への印刷時、印刷不可能な領域の割合が２％以下であれば、そのまま通常通り印刷を実行し、２％に等しいか、或はそれ以上の場合には「印刷確認」を行うように設定されている。
【００５８】
尚、ここで領域の算出方法としては、印刷不可能となっている領域のピクセル面積を推定し、全印刷ページのピクセル面積から、その印刷不可能となっている領域の割合を算出する。或は、印刷不可能な領域に含まれる文字数を計数し、全文字数からその印刷不可能となっている領域の割合を算出する方法等が考えられる。
【００５９】
次に本発明の実施の形態１の変形例を図８及び図１２を参照して詳細に説明する。尚、この変形例においても、プリンタ１０２及び送信機器１０１の構成は前述の実施の形態１の場合と同様であるものとする。
【００６０】
図１２は、本発明の実施の形態１の変形例に係るＸＨＴＭＬ印刷データの一例を示す図である。
【００６１】
ここでは、画像を参照する「取得できない画像」１２０１で示したリンクをプリンタ１０２が辿れないものとする。このリンクは、示されたＵＲＬ等から静的に辿れないと解釈する場合と、リンク参照時のリンク状況等から辿れないと判断する場合のいずれかのケースで考えることができる。
【００６２】
ここで印刷設定として、「通常印刷、普通用紙、部数＝１」の印刷条件が設定されていたと仮定する。ここで図８の条件テーブルの例を参照すると、通常エラーの場合は「エラー数＝１で印刷。エラー数≧２で印刷確認」となる。しかし図１２の印刷データの場合は、印刷不可能な部分は全て画像だけである。よって、図８の「通常印刷、普通用紙、部数＝１」の印刷条件に対応する画像エラーの列を参照すると、８０４で「印刷」となっている。その結果、ステップＳ２１０では、印刷可能であると判断する。
【００６３】
また別の例として、印刷設定として「高品位印刷、普通用紙、部数＝１」が設定されていたと仮定する。このとき図８の条件テーブル１０７を参照すると、画像エラーの場合も８０２と同様に、「エラー有りで印刷確認」となっている。このため、ステップＳ２１１で、「印刷確認」を行うと判断する。
【００６４】
尚、上述した実施の形態１では、送信機器１０１においてユーザによる印刷確認を行っているが、本発明はこれに限定されず、プリンタ１０２に設けた表示装置及び入力装置によってユーザによる印刷確認を行っても良い。また送信機器１０１でエラー情報を表示するだけでなく、プリンタ１０２に設けた表示装置にエラー情報を表示しても良い。
【００６５】
以上説明したように本実施の形態１によれば、印刷データに含まれるＸＨＴＭＬデータを印刷できない事態がプリンタで発生した場合、その時点で設定されている印刷条件に応じて、印刷するか或は印刷確認を行うか、或は印刷を停止するかを決定できる。
【００６６】
またプリントを指示したユーザは、正常に印刷されない部分がある場合に、その部分を予め確認した上で印刷を指示するため、印刷された箇所のどの部分が正常に印刷されていないかを容易に判別できる。
【００６７】
［実施の形態２］
次に本発明の実施の形態２について説明する。尚、この実施の形態２に係るプリンタ１１０２のハードウェア構成は前述の実施の形態１の構成（図２）と同じであるため、その説明を省略する。
【００６８】
図１３は、本発明の実施の形態２に係るプリンタ１１０２の機能構成の概略を説明する機能ブロック図である。
【００６９】
このプリンタ１１０２は、ＨＴＭＬ，ＸＨＴＭＬ，XHTML-Print或は他の構造化言語で記述された印刷データを送出する送信機器１１０１からのデータを受信して動作する。プリンタ１１０２は、送信機器１１０１からのデータの受信を行うためのデータ受信部１１０４を備えている。またデータ受信部１１０４はインターネット１１０３にも接続され、インターネット１１０３の印刷データを受信することもできる。尚、この送信機器１１０１は、この実施の形態２ではテレビジョン受像機としている。
【００７０】
このデータ受信部１１０４により受信したデータが印刷のための各種設定情報（印刷品位、印刷部数或は用紙設定等）であれば、そのデータは印刷設定解析部１１０５に送られる。また印刷データであれば印刷データ解析部１１０６に送られる。ここで、印刷データがインターネット１１０３上のデータを受信し印刷することを要求していれば、印刷設定解析部１１０６は、データ受信部１１０４に対してインターネット１１０３から印刷データを受信するように指示する。
【００７１】
最終的に受信した印刷データがＸＨＴＭＬで記述された印刷データであれば、そのデータは印刷データ解析部１１０６で再度解析が行われる。この解析では、受信したＸＨＴＭＬ印刷データに含まれる構文エラー、サポートしていないタグやプロパティ、参照データへのリンク切れ、或は実装上の制限等により印刷不可能な部分を検出して列挙する。ここで検出されたエラー内容及び、印刷設定解析部１１０５により解析された印刷設定は、条件判定部１１０８に送られる。条件判定部１１０８は、予め定められた条件テーブル１１０７と、印刷設定解析部１１０５より受け取った印刷設定、及び印刷データ解析部１１０６より受け取った印刷不能情報と比較・参照して印刷の可否を決定する。この判定の結果印刷可能と判定した場合に、ＸＨＴＭＬ印刷データはＸＨＴＭＬレンダリング部１１０９に送られ、印刷部１１１０により印刷機構１１１３を用いてＸＨＴＭＬ印刷データを印刷する。
【００７２】
パネル制御部１１１２は、パネル機構１１１１に備えられたＬＥＤ等の表示装置の制御や、ユーザからのボタン入力等を受け付け、印刷停止理由の印刷時等にユーザの指示確認のために用いられる。
【００７３】
尚、上記説明では、本実施の形態の説明のために構造化言語をＸＨＴＭＬに限定しているが、ＨＴＭＬ，XHTML-Print或は他の構造化言語であっても良い。
【００７４】
図１４は、本実施の形態２に係るプリンタ１１０２における処理を説明するフローチャートである。尚、この処理を実行するプログラムはＲＯＭ２０２に記憶されており、ＣＰＵ２０１の制御の下に実行される。
【００７５】
まずステップＳ１２０１で、送信機器１１０１から印刷品位、印刷部数或は用紙設定等の印刷設定情報を受信する。次にステップＳ１２０２で、その印刷設定情報をＲＡＭ２０３に保存する。尚、ここでは印刷設定情報は、送信機器１１０１から受信しているが、プリンタ１１０２のパネル機構１１１１等により予め設定しておくことも可能である。
【００７６】
次にステップＳ１２０３で、送信機器１１０１から印刷データ（ＸＨＴＭＬデータ）を受信すると、そのデータがインターネット１１０３のデータを要求しているかどうかをＸＨＴＭＬ解析部１１０６が解析する。そして必要であれば、データ受信部１１０４がインターネット１１０３から印刷データを受信する。こうしてＸＨＴＭＬ印刷データの受信が完了するとステップＳ１２０４に進み、その印刷データを解析する。ここでは構文エラー、サポートしていないタグやプロパティ、参照データへのリンク切れ、或は実装上の制限等により印刷不可能な部分があるかを調べ、あれば印刷不可能な部分を列挙する。この解析の結果、印刷できない部分が存在しなければステップＳ１２０５からステップＳ１２０６に進み、通常の印刷処理としてＸＨＴＭＬデータのレンダリング処理を行う。そしてステップＳ１２０７で、そのレンダリング結果に基づいて印刷を行う。
【００７７】
一方、ステップＳ１２０５で、印刷データに何らかの印刷不可能な部分が存在すると判断するとステップＳ１２０８に進み、ステップＳ１２０２で保存されている印刷設定情報を参照インデックスとして印刷条件テーブル１１０７を参照する。ここではテーブル１１０７との参照結果と、検出された印刷不可能な部分の情報とを比較し、印刷可能な条件であるかどうかを判定する。ここで印刷可能と判断するとステップＳ１２０６に進み、印刷不可能な部分を無視してＸＨＴＭＬデータのレンダリング処理を行い、そのレンダリング結果を印刷する（Ｓ１２０７）。尚、ここでは印刷不可能な部分を無視してレンダリングを行っているが、それ以外にも、枠線等で印刷不可能な部分が存在する旨を印刷するという処理を行うことも可能である。
【００７８】
一方ステップＳ１２０９で、条件テーブル１１０７の参照結果により印刷可能でないと判断した場合はステップＳ１２１０に進み、「データ印刷停止／理由印刷可能」の条件となっているかをみる。そうであればステップＳ１２１１に進み、パネル機構１１１１に備えられたＬＥＤを点滅表示させる。こうして、印刷が停止した理由を、プリンタ１１０２で印刷できることをユーザに知らせる。次にステップＳ１２１２に進み、ユーザが予め定められたボタンを押すのを待つ。ここで、このボタンが長く押された場合は、印刷停止理由の印刷が指示されたと判断してステップＳ１２１３からステップＳ１２１４に進み、印刷を停止した理由を印刷する。一方ステップＳ１２１１３で、そのボタンが短く押された場合には、印刷が停止された理由を印刷せずに、受信したＸＨＴＭＬ印刷データを破棄して処理を終了する。
【００７９】
またステップＳ１２１０で、条件テーブル１１０７の参照結果が「印刷停止／理由印刷不可」の条件となっている場合は、印刷しない理由を印刷することなく、ＸＨＴＭＬ印刷データを破棄して処理を終了する。
【００８０】
次に本実施の形態２に係るプリンタ１１０２の処理の具体例を図６のＸＨＴＭＬデータ及び図１５の条件テーブル１１０７を参照して詳細に説明する。
【００８１】
前述の図６は、送信機器１１０１がプリンタ１１０２に送信するＸＨＴＭＬ印刷データの一例を示す図である。
【００８２】
図１５は、本実施の形態２に係る条件テーブル１１０７の一例を示す図である。
【００８３】
図６に示すＸＨＴＭＬ印刷データの例において、プリンタ１１０２が「サポートしていないプロパティ」６０１に示すプロパティをサポートしていないものとする。このＸＨＴＭＬ印刷データを受け取ったプリンタ１１０２では、印刷データ解析部１１０６が、図１４のステップＳ１２０４，Ｓ１２０５において、そのプロパティを使用した「clipit」クラスが正常に印刷不可能であると判断する。またＢＯＤＹデータ中の「正常に印刷できない部分」６０２が正常に印刷できない部分であると判断する。
【００８４】
ここで、印刷設定として予めステップＳ１２０１により、「ドラフト印刷、普通用紙」の印刷条件が設定されていたと仮定する。プリンタ１１０２は、ここではＸＨＴＭＬ印刷データから印刷不可能な部分を検出したため、ステップＳ１２０８で、図１５に示す印刷条件テーブル１１０７を参照する。そして、図６に示すデータの印刷不可能部分６０２を通常エラーとして扱い、その列を参照すると、「印刷可能」１５０１が該当する。よって、ステップＳ１２０９で、印刷可能と判断する。従って、この印刷設定の場合には、印刷不可能な部分を無視してＸＨＴＭＬデータを印刷することになる。
【００８５】
また別の例として、印刷設定として「通常印刷、普通用紙」の印刷が設定されていたと仮定する。その場合、ステップＳ１２０８でのテーブル１１０７の参照の結果は、１５０２で示す「データ印刷停止／理由印刷可能」に該当する。従って、ステップＳ１２１０では、印刷停止理由を印刷できると判断する。よってプリンタ１０２は、ステップＳ１２１１でＬＥＤを点滅させ、次にステップＳ１２１３で、予め定めたボタンの長押しが確認できると、図１６に示すように印刷停止の理由を印刷する。
【００８６】
図１６は、本実施の形態２に係るプリンタにおける印刷停止理由の印刷例を説明する図である。
【００８７】
この例では、１６０１に、「データサポートエラーのため印刷できませんでした」という印刷停止理由が印刷されている。そして１６０２に、そのエラーの詳細が印刷されている。
【００８８】
また更に他の例として、印刷設定として「通常印刷、高品位用紙」が設定されていた場合は、図１５のテーブル１１０７参照の結果、欄１５０３に示す「データ印刷停止／理由印刷不可」となる。このため、ステップＳ１２１０では、印刷停止理由の印刷が不可能であると判断する。従って、この場合は印刷停止の理由を印刷せずに、ＸＨＴＭＬ印刷データを破棄して処理を終了する。
【００８９】
更に別の例として、プリンタ１１０２が印刷をサポートしている構造化言語が「ＸＨＴＭＬ Basic 1.0」及び「XHTML-Print 1.0」のみである場合、「HTML 4.0」で記述された印刷データを受信したケースを考える。
【００９０】
この場合は、プリンタ１１０２が送信機器１１０１から印刷データを受信し、そのデータがインターネット上のデータを要求している場合、データ受信部１１０４がインターネット１１０３から印刷データを受信する。印刷データ解析部１１０６は、その受信したデータの記述言語を確認する。受信した印刷データの記述言語が構造化言語であれば、印刷データの先頭に記載のあるDOCTYPE宣言（ＸＭＬ宣言）によって確認可能である。この確認の結果、受信した印刷データの記述言語が「HTML 4.0」であった場合、その解析結果により構文エラーとして判定される。そして印刷条件テーブル１１０７を参照した結果、「データ印刷停止／理由印刷可能」であれば、図１７の印刷例に示すように、印刷停止理由を印刷する。
【００９１】
図１７は、本実施の形態２に係るプリンタにおける印刷停止理由の印刷例を説明する図である。
【００９２】
この例では、受信した印刷データが、サポートされていない言語で記述されている。このため「構文エラーのため印刷できませんでした」というメッセージ１７０１が印刷される。更に１７０２には、そのエラーの詳細を示す内容が印刷されている。
【００９３】
このように本実施の形態２によれば、プリンタが受信した印刷データに印刷不可能な個所を検出したとしても、印刷の可否は、印刷者がプリンタ上の操作パネル、印刷アプリケーション内での設定、或は別に設定した印刷設定の内容に応じて決定される。
【００９４】
従って、例えば、ドラフト印刷設定なのに印刷できない部分があるためにまったく印刷されないケースや、逆に最高品位印刷設定の場合に、印刷できない部分があっても印刷してしまうというケースを容易に防ぐ事が可能となる。
【００９５】
また、印刷できない部分が多数あった場合でも、印刷前にユーザによる確認を行ってから印刷を行う等の処理を行うことにより、明らかに無駄となる印刷を防止できる。
【００９６】
以上説明したように本実施の形態によれば、プリンタが印刷データ内に印刷不可能な個所を検出したとしても、印刷の可否は印刷者がプリンタの操作パネル、印刷アプリケーション内での設定、或は別に設定した印刷設定の内容に応じて決定できる。従って、例えば、ドラフト印刷設定なのに印刷できない部分があるためにまったく印刷されないケースや、逆に最高品位印刷設定の場合に、印刷できない部分があっても印刷してしまうというケースを容易に防ぐ事が可能となる。
【００９７】
また、印刷できない部分が多数あった場合には、印刷前に印刷者の確認を行ってから印刷を行う等の処理を行う事により、明らかに無駄となる印刷を防ぐことも可能となる。
（他の実施形態）
以上、本発明の実施形態について詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また一つの機器からなる装置に適用しても良い。
【００９８】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを読み出して実行することによっても達成され得る。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
【００９９】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明のクレームでは、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１００】
プログラムを供給するための記録媒体としては、様々なものが使用できる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【０１０１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページからハードディスク等の記録媒体にダウンロードすることによっても供給できる。その場合、ダウンロードされるのは、本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【０１０２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布する形態としても良い。その場合、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムが実行可能な形式でコンピュータにインストールされるようにする。
【０１０３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される形態以外の形態でも実現可能である。例えば、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１０４】
更に、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれるようにしてもよい。この場合、その後で、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施の形態１に係る印刷装置（プリンタ）の機能構成を説明する機能ブロック図である。
【図２】本実施の形態に係るプリンタのハードウェア構成の概略を示すブロック図である。
【図３】本実施の形態１に係るプリンタが、送信機器から印刷データを受信する際の動作を説明するフローチャートである。
【図４】本発明の実施の形態１に係る送信機器である携帯電話の制御に係る主要部の構成を説明するブロック図である。
【図５】本実施の形態１に係る送信機器がプリンタに対して印刷を指示する場合の動作を説明するフローチャートである。
【図６】本実施の形態に係る送信機器がプリンタに送信するＸＨＴＭＬ印刷データの一例を示す図である。
【図７】本実施の形態１に係るプリンタが送信機器に送信する印刷不可能な部分を列挙したステータス応答情報の一例を示す図である。
【図８】本実施の形態１に係るプリンタの条件判定部が参照する条件テーブルの一例を示す図である。
【図９】本実施の形態１に係る送信機器である携帯電話の表示部に表示される印刷確認メッセージの一例を説明する図である。
【図１０】本実施の形態１に係る送信機器である携帯電話の表示部に表示される印刷中止確認メッセージの一例を説明する図である。
【図１１】本実施の形態１に係る条件テーブルの他の例を説明する図である。
【図１２】本実施の形態１とは別の実施例に係るＸＨＴＭＬ印刷データの一例を示す図である。
【図１３】本発明の実施の形態２に係るプリンタの機能構成の概略を説明する機能ブロック図である。
【図１４】本実施の形態２に係るプリンタにおける処理を説明するフローチャートである。
【図１５】本実施の形態２に係る条件テーブルの一例を示す図である。
【図１６】本実施の形態２に係るプリンタにおける印刷停止理由の印刷例を説明する図である。
【図１７】本実施の形態２に係るプリンタにおける印刷停止理由の印刷例を説明する図である。
【図１】
2007199779.tif 000003
【図２】
2007199779.tif 000004
【図３】
2007199779.tif 000005
【図４】
2007199779.tif 000006
【図５】
2007199779.tif 000007
【図６】
2007199779.tif 000008
【図７】
2007199779.tif 000009
【図８】
2007199779.tif 000010
【図９】
2007199779.tif 000011
【図１０】
2007199779.tif 000012
【図１１】
2007199779.tif 000013
【図１２】
2007199779.tif 000014
【図１３】
2007199779.tif 000015
【図１４】
2007199779.tif 000016
【図１５】
2007199779.tif 000017
【図１６】
2007199779.tif 000018
【図１７】
2007199779.tif 000019