(57)【要約】【課題】最適な処理解像度と最適な拡大処理を選択することのできるダイレクト印刷装置を提供する。【解決手段】デジタルカメラおよびメモリカードから画像情報を受信、デコードして印刷することの可能なダイレクト印刷装置において、登録変更可能な処理解像度決定テーブルと拡大関数管理テーブルを備える手段を持ち、処理解像度テーブルと拡大関数管理テーブルの情報を参照および判断する。【選択図】        なし【特許請求の範囲】
【請求項１】
デジタルカメラおよびメモリカードから画像情報を受信、デコードして印刷することの可能な印刷装置において、登録変更可能な処理解像度決定テーブルと拡大関数管理テーブルを備え、処理解像度決定テーブルにより決定される処理解像度と拡大関数管理テーブルの情報を判断して最適な拡大処理を選択することのできる手段を有することを特徴とするダイレクト印刷装置。
【請求項２】
請求項１の処理解像度決定テーブルは、機種情報、メディア情報、印字品位情報、アプリ種別情報、アプリモード情報、処理解像度情報、出力解像度情報で構成され、機種からアプリモードまでの情報から、ダイレクトプリンタで処理する処理解像度を決定する手段を持つことを特徴とするダイレクト印刷装置。
【請求項３】
請求項１の拡大関数管理テーブルは、システム駆動ＣＰＵパワー情報、ＣＰＵパワー閾値情報、拡大率閾値情報、拡大関数補間処理フラグおよび関数アドレス情報、ＩＮＤＥＸ拡大スムージング処理フラグおよび関数アドレス情報から構成され、請求項２で決定される処理解像度と駆動ＣＰＵパワーからＩＮＤＥＸ拡大関数アドレスまでの情報から、最適な拡大処理を選択することを特徴とするダイレクト印刷装置。
【請求項４】
請求項３の最適な拡大処理を選択手段は、システム駆動ＣＰＵパワーがＣＰＵパワー閾値情報以上である場合は、拡大関数管理テーブルに登録されてある、補間処理機能を有する拡大処理関数を選択し、且つ、処理解像度が出力解像度未満の場合、スムージング機能を無効としてＩＮＤＥＸ拡大処理を実行することを特徴とするダイレクト印刷装置。
【請求項５】
請求項３の最適な拡大処理を選択手段は、システム駆動ＣＰＵパワーがＣＰＵパワー閾値情報未満で、処理解像度が出力解像度未満の場合で、処理拡大率が拡大率閾値以上の時、拡大関数管理テーブルに登録されてある、補間処理機能を有さない拡大処理関数を選択し、且つ、スムージング機能を無効としてＩＮＤＥＸ拡大処理を実行することを特徴とするダイレクト印刷装置。
【請求項６】
請求項３の最適な拡大処理を選択手段は、システム駆動ＣＰＵパワーがＣＰＵパワー閾値情報未満で、処理解像度が出力解像度未満の場合で、処理拡大率が拡大率閾値未満の時、拡大関数管理テーブルに登録されてある、補間処理機能を有する拡大処理関数を選択し、且つ、スムージング機能を無効としてＩＮＤＥＸ拡大処理を実行することを特徴とするダイレクト印刷装置。但し、ＩＮＤＥＸ拡大処理がスムージング機能を有しない場合は、補間処理機能を有する拡大処理関数を選択して拡大処理を実行することを特徴とするダイレクト印刷装置。
【請求項７】
請求項３の最適な拡大処理を選択手段は、システム駆動ＣＰＵパワーがＣＰＵパワー閾値情報未満で、処理解像度が出力解像度と等しい場合、拡大関数管理テーブルに登録されてある、補間処理機能を有さない拡大処理関数を選択して拡大処理を実行することを特徴とするダイレクト印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
複数の拡大処理関数を所有し、解像度および拡大率に応じて、拡大処理の選択を切り替えることの可能な、ダイレクト印刷装置に関する。
【０００２】
【従来の技術】
従来から、複数の拡大処理を持ち、処理解像度と拡大率に基づいて、拡大処理を切り替える画像処理装置は開発されていた。
【０００３】
【特許文献】
特開平５−９４５２１号公報
【０００４】
【発明が解決しようとする課題】
従来技術では、処理解像度はシステム固定で、変更する手段を有していなかった。あるいは、機種、メディア、印字品位、アプリ種別、アプリモードから総合判断し、処理解像度を決定する手段を持つ画像処理装置は開発されていなかった。また、ＣＰＵ駆動パワーや駆動状態に応じて、拡大処理を切り替える画像処理装置は開発されていなかった。さらに、誤差拡散後に出力解像度まで拡張するＩＮＤＥＸ拡大機能にスムージング機能を有するか否かで、選択する拡大処理を切り替える画像処理装置は開発されていなかった。
【０００５】
よって本発明の目的は、上記の従来装置の欠点を取り除くこと、すなわち、機種、メディア、印字品位、アプリ種別、アプリモードから総合判断し、処理解像度を決定することのできる手段を備えるダイレクト印刷装置を提供すること。且つ、決定する処理解像度を変更することのできる手段を備える、ダイレクト印刷装置を提供すること。また、ＣＰＵ駆動パワーや駆動状態に応じて、拡大処理を切り替えることのできる手段を備えるダイレクト印刷装置を提供すること。さらに、誤差拡散後に出力解像度まで拡張するＩＮＤＥＸ拡大機能にスムージング機能を有するか否かで、選択する拡大処理を切り替えることのできる手段を備えるダイレクト印刷装置を提供すること。且つ、決定する拡大処理を変更することのできる手段を備えるダイレクト印刷装置を提供することである。
【０００６】
【課題を解決するための手段】
ダイレクトプリンタ内に、書き換え可能な処理解像度決定テーブルと拡大関数管理テーブルを備える手段を具備したものである。
【０００７】
そして、書き換え可能な処理解像度決定テーブルは、機種情報、メディア情報、印字品位情報、アプリ種別情報、アプリモード情報、処理解像度情報、出力解像度情報から構成され、その構成要素より、最終的な処理解像度を決定する手段を具備したものである。
【０００８】
書き換え可能な拡大関数管理テーブルは、システム駆動ＣＰＵパワー情報、ＣＰＵパワー閾値情報、拡大率閾値情報、拡大関数補間処理フラグおよび関数アドレス情報、ＩＮＤＥＸ拡大スムージング処理フラグおよび関数アドレス情報から構成され、前記処理解像度と本構成要素から、最終的に選択実行する拡大処理関数を決定する手段を具備したものである。
【０００９】
（作用）
本発明によれば、ダイレクトプリンタ内に、書き換え可能な処理解像度決定テーブルを備える手段を備えることにより、機種情報、メディア情報、印字品位情報、アプリ種別情報、アプリモード情報に対応して、システムに適切となる処理解像度に自由に変更することが可能となる。
【００１０】
また、ダイレクトプリンタ内に、書き換え可能な拡大関数管理テーブルを備える手段を備えることにより、ＣＰＵ駆動パワーや駆動状態に応じて、拡大処理を切り替えることが可能となる。さらに、誤差拡散後に出力解像度まで拡張するＩＮＤＥＸ拡大機能にスムージング機能を有するか否かを判定する手段を備えることにより、システムに適切な拡大処理を選択して実行することが可能となる。
【００１１】
【発明の実施の形態】
以下図面を参照して本発明を詳細に説明する。
【００１２】
図１は、デジカメダイレクト接続形態を示す構成図である。
【００１３】
ダイレクトプリンタ１、デジタルカメラ２、ダイレクトケーブル３で構成され、ダイレクトプリンタ１内にはカードスロット４、操作パネル部５、Ｖｉｅｗ用液晶表示部６が含まれている。
【００１４】
図２は、ダイレクトプリンタを構成する主要機器のブロック図である。
【００１５】
ＣＰＵ２１によってＲｅａｄＯｎｌｙであるＲＯＭ２２や、書き換え可能なＦｌｕｓｈ  ＲＯＭ２３に格納される制御プログラムまたは制御手順が実行されるとき、ＲＡＭ２４がＣＰＵ２１の演算、論理判断における各種データを一時的に記憶するワークメモリとして用いられる。
【００１６】
本発明の処理解像度決定プログラムや拡大関数切り替え実行プログラムは、ＲＯＭあるいはＦｌｕｓｈ  ＲＯＭに格納されており、処理解像度決定テーブルや拡大関数切関数管理テーブルは不揮発で書き換え可能なＦｌｕｓｈ  ＲＯＭに格納されている。
【００１７】
ダイレクト印刷処理に送信される印刷データなどは、操作パネルＩ／Ｆ２７を経由して得られた情報、あるいは、カメラダイレクトＩ／Ｆ２９を経由して受信した情報をベースに作成され、ＲＡＭ内のテーブル保存領域に保存される。
【００１８】
ＣＦ  Ｉ／Ｆ２５は、コンパクトフラッシュ（登録商標）カードのインターフェースであり、ＣＦコントローラ２６により駆動制御され、コンパクトフラッシュ（登録商標）カードに格納されたデジタルカメラ撮影ＪＰＥＧ画像の情報を、ＲＡＭ上に読み出し、ＲＯＭ内に格納されたＪＰＥＧデコーダプログラムにより解析され、画像処理を実行して、最終的に印刷制御データを、ＲＡＭ上に格納されるよう処理される。
【００１９】
操作パネルＩ／Ｆ２７は、操作者の指示を伝えるための入力インターフェースであり、操作した内容は、操作パネル２８に表示され、印刷実行ボタン押下にて、ダイレクト印刷処理が起動される。
【００２０】
カメラダイレクトＩ／Ｆ２９は、デジタルカメラとダイレクトプリンタ間の通信を行うためのインターフェースであり、カメラダイレクト通信コントローラ３０で駆動制御され、デジタルカメラからの操作およびデータを受信すると共に、ダイレクトプリンタからの応答ステータスを返信する目的で使用される。ダイレクト印刷の指示は、前記操作パネル部からに加えて、デジタルカメラからの印刷実行ボタン押下によっても、行なえるようなシステム構成となっている。
【００２１】
表示装置３２は、表示コントローラ３１で駆動制御され、ＣＦより読み出された画像やエラーメッセージなどを表示するための出力装置であり、小型カラー液晶などが使用されている。
【００２２】
印字装置３４は装着された用紙に対して、装置内のヘッド、インクを使用して記録出力する装置部である。
【００２３】
操作パネルあるいはデジタルカメラからの印刷処理は、各インターフェースから受信した情報により、ＣＰＵ２１がＲＯＭ２２内あるいはＦｌｕｓｈ  ＲＯＭ２３内の印刷制御プログラムを実行し、印字コントローラ３３を駆動制御することにより、印字装置内のインクヘッドを動作させ、用紙に対してインクヘッド内のインクを噴射することを繰り返すことにより行われる。
【００２４】
内部バス３５は、ＣＰＵ２１から印字装置３４までの機器間で通信するための、共通通信路であり、ダイレクトプリンタ内の全ての機器間の通信は。この内部バスを経由して行われる。
【００２５】
図３は、本発明の拡大処理切り替え処理方式をの説明するための処理ダイアグラムである。
【００２６】
本発明では、印刷に先立ち、先ず、ダイレクト印刷処理に対して、印刷ジョブパラメータを引数として、処理解像度要求を要求する。図３−１、図３−２共に、印刷ジョブパラメータとして「プリンタＡ」「専用紙」「高品位」「フォトアプリ」「コマ印刷」を引数として与え、これに対する戻り値として、処理解像度「６００ｄｐｉ」が返される場合の例と、印刷ジョブパラメータとして「プリンタＡ」「専用紙」「標準品位」「フォトアプリ」「ＩＮＤＥＸ印刷」を引数として与え、これに対する戻り値として、処理解像度「３００ｄｐｉ」が返される場合の例が記載されてある。これらの処理解像度は、ダイレクト印刷処理の中で図４の処理解像度決定テーブルを参照して決定される。また、処理解像度決定テーブルの各情報は、処理解像度決定テーブル更新処理プログラムを起動することによって、変更可能な構成となっている。
【００２７】
次に、返却された処理解像度を単位として、「印刷対象ＪＰＥＧ  Ｉｍａｇｅ  Ｆｉｌｅ名」「出力用紙サイズ／出力矩形サイズ」「印刷部数」「画像効果処理のＯＮ／ＯＦＦ」などを引数として、ダイレクト印刷処理を起動し、ダイレクト印刷処理の中で、一連の印刷データの加工生成が成され、プリンタエンジンへとデータを送出することで、対象となる画像データの印刷処理が行われる構成となっている。
【００２８】
図３−１、図３−２で示すように、ダイレクト印刷処理の中は、「デコーダ」「画像効果処理」「四面体補間処理」「拡大処理」「誤差拡散処理」「ＩＮＤＥＸ拡大処理」の処理ブロックで構成されている。
【００２９】
本拡大処理切り替え処理方式は、図５で示す拡大関数管理テーブルを参照して、決定されることを特徴としている。また、拡大関数管理テーブルの各情報は、拡大関数管理テーブル更新処理プログラムを起動することによって、変更可能な構成を持つことを特徴としている。
【００３０】
本切り替え方式は、第１にＣＰＵのパワーおよび駆動率と拡大関数管理テーブル内ＣＰＵパワーの閾値情報を比較して、閾値以上の場合は、補間処理機能を持つ拡大処理を選択して実行するもので、これについては、図３−１で示す通りである。
【００３１】
第２にＣＰＵのパワーおよび駆動率と拡大関数管理テーブル内ＣＰＵパワーの閾値情報を比較して、閾値未満の場合は、図３−２で示すように、処理が切り分けられる。
【００３２】
先ず、処理解像度が、出力解像度と等しい場合（この例では６００ｄｐｉのルート）では、補間処理機能を持たない拡大処理を選択して実行する構成となっている。これは、解像度が高いことから補間処理を持たない拡大処理選択で十分な印字品位が得られること、および、処理能力の低い環境下で高速に拡大処理を実行することを両立させる目的から、本処理手順で実行されるように実装してある。次に、処理解像度が、出力解像度と等しくない場合、即ち低い（この例では３００ｄｐｉのルート）は、ソース画像サイズと出力矩形サイズから決まる拡大率と拡大関数管理テーブル内拡大率の閾値情報を比較して、図３−２で示すように、処理が切り分けられる。拡大率閾値以上の場合（拡大率が非常に大きい場合）は、６００ｄｐｉとの整合性の面から、補間処理を持たない拡大処理を選択して実行する構成となっている。拡大率閾値未満の場合は、さらに拡大関数管理テーブル内のＩＮＤＥＸ拡大スムージング機能の有無情報を参照し、スムージング機能がない場合は、低解像度のデータをできるだけジャギーなく高品位で拡大させる目的から、補間処理機能を持つ拡大処理を選択して実行する構成となっている。誤差拡散後に出力解像度にＩＮＤＥＸ拡大するモジュールがスムージング機能を持つ場合は、ＩＮＤＥＸ拡大処理のスムージング機能でジャギー軽減を行い、また、処理速度を優先させて、補間処理機能を持たない拡大処理を選択して実行する構成となっている。
【００３３】
以上が、本発明の拡大処理切り替え方式の代表図である、図３についての詳細説明である。
【００３４】
図４は、本発明における、処理解像度決定テーブルの１構成例を示す図である。
【００３５】
プリンタの機種ごと、メディア種別ごと、印字品位ごと、アプリ種別ごと、アプリモードごとに、処理解像度を格納できる構成で、この中に該プリンタの出力情報も含まれている。プリンタ出力解像度以外の情報は、特定プログラムを使用して、ユーザーが初期設定および変更できる構成となっている。構成要素の中には、例えば、「ユーザーＩＤ」「緊急度情報」などを追加できる構成のものである。図４の例では、「プリンタＡ」「専用紙」「高品位」「フォトアプリ」「コマ印刷」の場合は、処理化移動度６００ｄｐｉがマッピングされ、「プリンタＡ」「専用紙」「標準品位」「フォトアプリ」「コマ印刷」の場合は、処理化移動度３００ｄｐｉがマッピングされていることを示している。
【００３６】
図５は、本発明における、拡大関数管理テーブルの１構成例を示す図である。
【００３７】
システム駆動ＣＰＵパワー、ＣＰＵパワーの閾値、拡大率の閾値、拡大関数１の補間処理フラグ、拡大関数１の登録アドレス、拡大関数２の補間処理フラグ、拡大関数２の登録アドレス、ＩＮＤＥＸ拡大関数スムージング機能の有無、ＩＮＤＥＸ拡大関数の登録アドレスを格納できる構成となっている。システム駆動のＣＰＵパワー以外の情報は、特定プログラムを使用して、ユーザーが初期設定および変更できる構成となっている。システム駆動のＣＰＵパワー情報については、ダイレクト印刷に先立ち、システムの印刷開始時点でのＣＰＵパワーを送信通知することで変更する構成となっている。図４の例では、「システム駆動ＣＰＵパワーＸＭＨｚ」「ＣＰＵＰワーの閾値ＹＭＨｚ」「拡大率の閾値Ｎ倍」「拡大関数１の補間処理フラグ無し」「拡大関数１の登録アドレス０ｘ２００００番地」「拡大関数２の補間処理フラグ有り」「拡大関数２の登録アドレス０ｘ２０５００番地」「ＩＮＤＥＸ拡大スムージング機能有り」「ＩＮＤＥＸ拡大関数の登録アドレス０ｘ２１０００番地」の場合の例を示している。
【００３８】
図６から図１０は、本発明の拡大処理切り替え方式を説明する為のフローチャート図である。
【００３９】
図６は、処理解像度決定テーブル更新情報送信処理に関して説明するためのフローチャート図であり、デジタルカメラあるいは操作パネル上での処理解像度決定テーブルに関する初期設定操作に対応したもので、処理解像度決定テーブル更新操作が行われた場合に起動が行われる。設定情報は一旦ワークメモリ上で変更され、実行ボタン押下で、それらの情報を確定し、ダイレクト印刷処理に送信され、ダイレクト印刷処理の保持する処理解像度決定テーブル更新情報テーブルの内容が変更されるよう実装されている。
【００４０】
以下、フローに従って順に説明を行う。本プログラムに起動がかかると、まずＳ０１で、キー入力待ち状態となる。ここでキー操作が行われた場合は、Ｓ０２で実行ボタン以外の項目変更キーか、あるいはカーソル移動キーか否かの判定を行う。ここで、実行ボタン以外が押下されたと判定した場合は、Ｓ０３で当該項目変更処理、あるいは当該カーソル移動キー処理を実行し、内部ワークメモリにその状態を記憶した上で、Ｓ０１のキー入力待ち状態へと遷移を移す。Ｓ０２で実行ボタンが押下されたと判断した場合は、Ｓ０４で、上記操作で変更された情報を送信フォーマットに従い編集した後、処理解像度決定テーブル更新ヘッダ、例えば「ＲＥＳＯＬＵＴＩＯＮ＿ＴＢＬ＿ＭＯＤＩＦＹ」を付加して、送信するための最終情報を生成する。そして最後にＳ０５で、生成情報をダイレクト印刷処理に送信することで、ダイレクト印刷処理の保持する処理解像度決定テーブル情報を更新して、呼び元にリターンする流れで処理が構成されている。
【００４１】
図７は、拡大関数管理テーブル更新情報送信処理に関して説明するためのフローチャート図であり、デジタルカメラあるいは操作パネル上での拡大関数管理テーブルに関する初期設定操作に対応したもので、拡大関数管理テーブル更新操作が行われた場合に起動が行われる。設定情報は一旦ワークメモリ上で変更され、実行ボタン押下で、それらの情報を確定し、ダイレクト印刷処理に送信され、ダイレクト印刷処理の保持する拡大関数管理テーブルの内容が変更されるよう実装されている。
【００４２】
以下、フローに従って順に説明を行う。本プログラムに起動がかかると、まずＳ１１で、キー入力待ち状態となる。ここでキー操作が行われた場合は、Ｓ１２で実行ボタン以外の項目変更キーか、あるいはカーソル移動キーか否かの判定を行う。ここで、実行ボタン以外が押下されたと判定した場合は、Ｓ１３で当該項目変更処理、あるいは当該カーソル移動キー処理を実行し、内部ワークメモリにその状態を記憶した上で、Ｓ１１のキー入力待ち状態へと遷移を移す。Ｓ１２で実行ボタンが押下されたと判断した場合は、Ｓ１４で、上記操作で変更された情報を送信フォーマットに従い編集した後、処理解像度決定テーブル更新ヘッダ、例えば「ＳＣＡＬＥ＿ＴＢＬ＿ＭＯＤＩＦＹ」を付加して、送信するための最終情報を生成する。そして最後にＳ１５で、生成情報をダイレクト印刷処理に送信することで、ダイレクト印刷処理の保持する拡大関数管理テーブル情報を更新して、呼び元にリターンする流れで処理が構成されている。
【００４３】
図８は、印刷開始処理に関して説明するためのフローチャート図であり、デジタルカメラあるいは操作パネル上での印刷開始指示操作に対応したもので、印刷開始指示が行われた場合に起動が行われる。設定情報は一旦ワークメモリ上で変更され、実行ボタン押下で、それらの情報を確定し、ダイレクト印刷処理に送信され、ダイレクト印刷処理側で受信ファイルをデコード、画像効果処理、四面体補間処理、拡大処理、誤差拡散処理、ＩＮＤＥＸ拡大処理を行い、最終的な印刷データを生成し、エンジンに送信することで、指示されたデータのプリントアウトが行われるよう実装されている。
【００４４】
以下、フローに従って順に説明を行う。本プログラムに起動がかかると、まずＳ２１で、キー入力待ち状態となる。ここでキー操作が行われた場合は、Ｓ２２で実行ボタン以外の項目変更キーか、あるいはカーソル移動キーか否かの判定を行う。ここで、実行ボタン以外が押下されたと判定した場合は、当該項目変更処理、あるいは当該カーソル移動キー処理を実行し、内部ワークメモリにその状態を記憶した上で、Ｓ２１のキー入力待ち状態へと遷移を移す。Ｓ２２で実行ボタンが押下されたと判断した場合は、Ｓ２４で、システムよりＣＰＵパワー情報および現時点でのＣＰＵ駆動率を取得し、実質上のＣＰＵパワー情報を算出し、内部ワークに記憶する処理を行う。次にＳ２５で、上記操作で指定された設定項目（プリンタ機種情報、メディア情報、印字品位情報など）を入力情報として、例えば処理解像度要求ヘッダとして「ＲＥＳＯＬＵＴＩＯＮ＿ＲＥＣＥＩＶＥ」を付加し、ダイレクト印刷処理に送信することで、対応する処理解像度をダイレクト印刷処理から取得し、内部ワークに記憶する処理を行う。さらに、Ｓ２６で上記設定操作で指定された設定項目（印刷対象画像ファイル名、出力矩形サイズ、画像効果処理のＯＮ／ＯＦＦ情報など）を、Ｓ２５で得た処理解像度を単位として、送信フォーマットに編集した後、ダイレクトデータ印刷ヘッダ、例えば「ＤＩＴＥＣＴ＿ＰＲＩＮＴ＿ＥＸＣＥ」を付加して、送信するための最終情報を生成する。最後に、そして最後にＳ２７で、生成情報をダイレクト印刷処理に送信することで、指定されたデータのダイレクト印刷処理が実行され、プリント結果が出力されつ処理の流れで構成されている。
【００４５】
以上が、データ送信側およびデータ初期設定を行う側の処理フローについての説明である。
【００４６】
以降は、データ受信側の処理フローについての説明を行う。
【００４７】
図９は、ダイレクト印刷処理に関して説明するためのフローチャート図であり、デジタルカメラあるいは操作パネル上での印刷開始実行指示が行われた場合に処理が実行されるプログラムである。機能的には以下の４つの処理「処理解像度決定テーブル更新処理」「拡大関数管理テーブル更新処理」「処理解像度要求返信処理」「ダイレクトデータ印刷処理」から構成されている。
【００４８】
以下、フローに従って順に説明を行う。本プログラムは、前記データ送信側のプログラムとは別プロセス、あるいは別スレッドで構成されており、システム立ち上げ時に、起動され、Ｓ３１で示すようにデータ送信側からデータが送られてくるまで、データ受信待ち状態となり、データ受信のイベント発生などで、Ｓ３２以下の処理が実行されるよう実装されている。Ｓ３１でデータ受信有りと判定した場合は、Ｓ３２で先ず、受信ヘッダ部の解析処理を行う。ここでは、ヘッダが前述した「ＲＥＳＯＬＵＴＩＯＮ＿ＴＢＬ＿ＭＯＤＩＦＹ」「ＳＣＡＬＥ＿ＴＢＬ＿ＭＯＤＩＦＹ」「ＲＥＳＯＬＵＴＩＯＮ＿ＲＥＣＥＩＶＥ」「ＤＩＴＥＣＴ＿ＰＲＩＮＴ＿ＥＸＥＣ」のどれに該当するかについての比較判定処理が行われる。Ｓ３３では、その解析結果に基づいて、分岐処理が行われる。
【００４９】
Ｓ３３で、「ＲＥＳＯＬＵＴＩＯＮ＿ＴＢＬ＿ＭＯＤＩＦＹ」と判定された場合は、Ｓ３４で、ダイレクト印刷の処理解像度決定テーブルの内容を更新する処理が行われ、次のデータ受信待ち状態とするために、Ｓ３１に制御を戻す処理が行われる。Ｓ３３で、「ＳＣＡＬＥ＿ＴＢＬ＿ＭＯＤＩＦＹ」と判定された場合は、Ｓ３５のダイレクト印刷の拡大関数管理テーブル更新処理が実行され、次のデータ受信待ち状態とするために、Ｓ３１に制御を戻す処理が行われる。Ｓ３３で、「ＲＥＳＯＬＵＴＩＯＮ＿ＲＥＣＥＩＶＥ」と判定された場合は、Ｓ３６で受信した入力情報をキーとして、ダイレクト印刷の保持する処理解像度決定テーブルを検索し、その結果である処理解像度を返信する処理が行われ、次のデータ受信待ち状態とするために、Ｓ３１に制御を戻す処理が行われる。最後に、「ＤＩＴＥＣＴ＿ＰＲＩＮＴ＿ＥＸＥＣ」と判定された場合は、Ｓ３７からＳ４１までの処理が実行され、データ印刷処理が完了した後に、他の処理と同様に次のデータ受信待ち状態とするために、Ｓ３１に制御を戻す処理が行われる。順に説明を行うと、まずＳ３７で受信したヘッダ内のファイル名から当該ファイルのＲＥＡＤ処理を行い、続いてＳ３８で、読み出したデータのデコード処理を行う。続いて、例えばＹＣＣフォーマットにデコードされたソースデータに対してＳ３９でデジカメノイズリダクション処理などを施した後、Ｓ４０でプリンタ色処理空間への色変換および色補正処理が行われる。そして最後にＳ４１で拡大処理、誤差拡散処理、ＩＮＤＥＸ拡大処理、エンジンへの出力処理が行われ、プリントアウト処理が完結するようにプログラムが実装されている。このＳ４１の拡大切り替え処理関数の中で、適切な拡大処理関数の切り替え処理が行われる。これについては、図１０のフローチャートにまとめてあるので、図１０を用いて説明を行う。
【００５０】
既に説明したように、図１０は、拡大切り替え処理に関して説明するためのフローチャート図であり、前記ダイレクト印刷プログラムから、「ＤＩＴＥＣＴ＿ＰＲＩＮＴ＿ＥＸＥＣ」ヘッダを認識した時に、ダイレクト印刷の最終ブロック処理として起動がかけられる。ステップごとに順を追って以下に説明する。
【００５１】
先ず、Ｓ５１で、受信したヘッダの中から抽出した「実質上のＣＰＵパワー情報」と、拡大関数管理テーブル内のＣＰＵパワーの閾値を比較する処理が行われる。ＣＰＵパワーが閾値以上の場合は、Ｓ５２からＳ５８の処理が行われる。ＣＰＵパワーが閾値以上の場合は、処理能力が高いことから、Ｓ５２でシステムに登録されている拡大関数の内、補間機能を所有する拡大処理を実行し、出力枠に対してソース画像を拡大する処理が行われる。続いて、Ｓ５３で、拡大後の多値のデータからプリンタへの出力形式変換する誤差拡散処理（量子化処理）を実行する。最後に、入力解像度と出力解像度が異なる場合は、最終的にＩＮＤＥＸ拡大処理を行い、出力解像度にデータを拡張する処理を行う必要があるが、この判定を，、続けて、Ｓ５４で行う。入力解像度と出力解像度が等しい場合は、Ｓ５８のエンジンへの出力処理を行い、呼び元にリターンする。Ｓ５４で、入力解像度が出力解像度より低い場合は、ＩＮＤＥＸ拡大処理を実行する必要があるが、その際に、Ｓ５５で、拡大関数管理テーブルを参照して、ＩＮＤＥＸ拡大関数がスムージング機能を持っているかどうかの判定を行い、その場合は、高解像度で補間機能を施した拡大関数を実行していることから、Ｓ５６で、ＩＮＤＥＸ拡大関数への引数であるスムージングフラグを強制的にＯＦＦする処理を行う。その後、Ｓ５７のＩＮＤＥＸ拡大処理が行われ、最後にＳ５８でエンジンへの出力処理を行い、呼び元にリターンする。
【００５２】
以上が、ＣＰＵパワーが閾値以上の場合に実装される処理の説明である。
【００５３】
続いて、Ｓ５１で、ＣＰＵパワーが閾値未満の場合に実装される処理の説明を行う。
【００５４】
最初に、Ｓ６１で、入力解像度と出力解像度の比較処理が行われ、その結果、入力解像度と出力解像度が等しい場合は、ＣＰＵパワーが閾値未満で能力が低い事と高解像度データであることから、Ｓ７６で補間機能を持たない拡大処理を選択して実行し、続けてＳ７７で誤差拡散処理を行った後、Ｓ６８のエンジンへの出力処理を実行して呼び元にリターンする処理がなされる。Ｓ６１で、入力解像度が出力解像度より小さい場合は、Ｓ６２で、さらに、ソース画像サイズと引数で渡された出力矩形サイズから算出した拡大率と、拡大関数管理テーブル内の拡大率の閾値情報を比較する処理が行われる。ここでの比較処理で、拡大率が閾値以上と判定された場合は、先程、説明したように入力解像度が出力解像度と等しい場合に補間機能なしの拡大処理を選択して実行することから、処理解像度の低い場合の方が高い場合よりきれいに出力されないようにする目的から、Ｓ６３で、補間機能を持たない拡大処理を選択して実行することが行われる。続いて、Ｓ６４で、誤差拡散処理を行い、Ｓ６５で拡大関数管理テーブルを参照して、ＩＮＤＥＸ拡大関数がスムージング機能を有するかどうかの判定を行う。もし、スムージング機能を有していても、拡大率が閾値以上で、スムージングの効果は極めて少ないことから、Ｓ６６で強制的にスムージングフラグをＯＦＦする処理を行った後に、Ｓ６７でＩＮＤＥＸ拡大処理を行い、最後にＳ６８のエンジンへの出力処理を実行を行い、呼び元にリターンする処理がなされる。
【００５５】
最後に、入力解像度が出力解像度より低く、且つ、拡大率が閾値未満の場合の処理について説明を行う。
【００５６】
Ｓ６２で拡大率が閾値未満と判定された場合は、Ｓ６９で示すように、拡大関数管理テーブルのＩＮＤＥＸ拡大関数のスムージング機能有無の状態を判定する処理が行われる。スムージング機能がある場合は、ＩＮＤＥＸ拡大のスムージング機能で補間処理が行えることから、Ｓ７０で示すように補間機能を持たない拡大関数を選択して実行を行い、続けてＳ７１で誤差拡散処理、Ｓ７２でスムージングフラグを強制的にＯＮした上で、Ｓ６７のＩＮＤＥＸ拡大処理を行い、最後にＳ６８でエンジンへの出力処理行って呼び元にリターンする処理がなされる。Ｓ６９でスムージング機能がないと判定された場合は、Ｓ７３で示すように補間機能を持つ拡大処理を選択して実行し、続けて、Ｓ７５で誤差拡散処理を行い、Ｓ７６でスムージングフラグを強制的にＯＦＦした後、Ｓ６７でＩＮＤＥＸ拡大処理を行い、最後にＳ６８でエンジンへの出力処理行って呼び元にリターンする処理がなされる。
【００５７】
以上で、図６から図１０までのフローチャートの説明ならびに、本発明の詳細説明を終了する。
【００５８】
【発明の効果】
本発明を実施することにより、以下に述べる格別の効果が得られる。
【００５９】
（１）本発明によれば、ダイレクトプリンタ内に、書き換え可能な処理解像度決定テーブルを備える手段を備えることにより、機種情報、メディア情報、印字品位情報、アプリ種別情報、アプリモード情報、などに対応して、自由に処理解像度を変更することが可能となる。あるいは、ユーザーの使用環境に応じて処理解像度を自由に変更することが可能となる効果が得られる。
【００６０】
（２）本発明によれば、ダイレクトプリンタ内に、書き換え可能な拡大関数管理テーブルを備える手段を備えることにより、ＣＰＵ駆動パワーや駆動状態に応じて、拡大処理を切り替えることが可能となる効果が得られる。さらに、誤差拡散後に出力解像度まで拡張するＩＮＤＥＸ拡大機能にスムージング機能を有するか否かを判定する手段を備えることにより、適切な拡大処理を選択して実行することが可能となる効果が得られる。また、ユーザーの使用環境に応じて使用する拡大処理を自由に変更することが可能となる効果が得られる。
【図面の簡単な説明】
【図１】デジカメダイレクト接続形態の一例を示す構成図。
【図２】ダイレクトプリンタの内部構成を示すブロック図。
【図３】本発明方式の拡大処理切り替え方式示す説明図。
【図４】本発明方式の処理解像度決定テーブルの構成説明図。
【図５】本発明方式の拡大関数管理テーブルの構成説明図。
【図６】本発明の主たる処理を説明する為の制御方式を示すフローチャート図。
【図７】本発明の主たる処理を説明する為の制御方式を示すフローチャート図。
【図８】本発明の主たる処理を説明する為の制御方式を示すフローチャート図。
【図９】本発明の主たる処理を説明する為の制御方式を示すフローチャート図。
【図１０】本発明の主たる処理を説明する為の制御方式を示すフローチャート図。
【符号の説明】
１  ダイレクトプリンタ
２  デジタルカメラ
３  ダイレクトケーブル
４  カードスロット
５  操作パネル部
６  Ｖｉｅｗ用液晶表示部
【図１】
2005051339.tif 000002
【図２】
2005051339.tif 000003
【図３】
2005051339.tif 000004
【図４】
2005051339.tif 000005
【図５】
2005051339.tif 000006
【図６】
2005051339.tif 000007
【図７】
2005051339.tif 000008
【図８】
2005051339.tif 000009
【図９】
2005051339.tif 000010
【図１０】
2005051339.tif 000011