(57)【要約】【課題】簡易な方法で所望のデータを得ることができる要素ファイルの検索方法を提供する。【解決手段】パッケージファイル３０に含まれるレイアウト定義ファイル３３の検索方法であって、パッケージファイル３０が有するレイアウト定義ファイル３３に関する所定情報を有するレイアウトＩＦＤを検索対象として所定の検索条件で検索を行い、その検索結果に基づきレイアウト定義ファイル３３を抽出するものである。また、この検索では、複数のパッケージファイル３０を検索し、検索条件に対応するレイアウト定義ファイル３３を検索結果として群で抽出することができる。【選択図】      図３
2006092493.tif 000002
【特許請求の範囲】
【請求項１】
パッケージファイルに含まれる要素ファイルの検索方法であって、
前記パッケージファイルが有する前記要素ファイルに関する所定情報を検索対象として所定の検索条件で検索を行い、その検索結果に基づき要素ファイルを抽出することを特徴とする要素ファイルの検索方法。
【請求項２】
前記検索は、所定処理を行う際に、処理対象の特定のために行うものであり、該検索により抽出された要素ファイルに対して所定処理が行われることを特徴とする請求項１に記載の要素ファイルの検索方法。
【請求項３】
前記検索は、前記所定処理の処理条件を検索条件とすることを特徴とする請求項２に記載の要素ファイルの検索方法。
【請求項４】
前記検索は、複数のパッケージファイルを検索し、前記検索条件に対応する要素ファイルを検索結果として群で抽出することを特徴とする請求項１〜３に記載の要素ファイルの検索方法。
【請求項５】
前記検索は、前記検索条件と一致する要素ファイルを検索する第１検索段階と、前記検索条件を含む範囲の要素ファイルを検索する第２検索段階と、を有することを特徴とする請求項１〜４に記載の要素ファイルの検索方法。
【請求項６】
前記検索を、パッケージファイルと、パッケージ化されていない要素ファイルとが混在する対象に対して行うことを特徴とする請求項１〜５に記載の要素ファイルの検索方法。
【請求項７】
パッケージファイルに含まれる要素ファイルを検索する処理を制御部が実行するための要素ファイル検索プログラムであって、
前記制御部が、前記パッケージファイルが有する前記要素ファイルに関する所定情報を検索対象として所定の検索条件で検索を行い、その検索結果に基づき要素ファイルを抽出する処理を実行するための要素ファイル検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを検索する場合に用いる要素ファイルの検索方法及び要素ファイル検索プログラムに関するものである。
【背景技術】
【０００２】
近年、デジタルカメラ等で撮影された画像データに、撮影日時や撮影場所などのコメントを関連付けて、画像データを管理する方法が提案されている（例えば、特許文献１参照）。そして、所望の画像データを検索する場合には、画像に関連付けられたコメントを検索することで、その検索条件に対応した画像データを検出することができる。
【特許文献１】特開２０００−１０１８９４号公報（明細書の段落[００２２]、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、上記の検索方法であると、画像データに関連付けられたコメントを検索する場合は容易に検索を行うことができるが、画像データ等の圧縮されたデータの内容を検索したい場合には、圧縮されたデータを解凍する必要があった。そうすると、検索のための作業は繁雑であり時間がかかっていた。このため、簡易な方法でデータの内容を検索対象として検索できることが望まれていた。
【０００４】
本発明は、こうした実情に鑑みなされたものであって、その目的は、簡易な方法で所望のデータを得ることができる要素ファイルの検索方法及び要素ファイル検索プログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記問題点を解決するために、本発明は、パッケージファイルに含まれる要素ファイルの検索方法であって、前記パッケージファイルが有する前記要素ファイルに関する所定情報を検索対象として所定の検索条件で検索を行い、その検索結果に基づき要素ファイルを抽出することを要旨とする。
【０００６】
この構成によれば、ユーザは所望の条件に即したデータを容易に抽出することが可能となる。
ここで、この要素ファイルの検索方法において、前記検索は、所定処理を行う際に、処理対象の特定のために行うものであり、該検索により抽出された要素ファイルに対して所定処理が行われることとしてもよい。
【０００７】
この構成とすれば、所定処理に対応する条件を有する要素ファイルを容易に抽出することができる。
また、前記検索は、前記所定処理の処理条件を検索条件とすることとしてもよい。
【０００８】
この構成によれば、所定処理を行うための処理条件に対応する要素ファイルを抽出することができる。
また、前記検索は、複数のパッケージファイルを検索し、前記検索条件に対応する要素ファイルを検索結果として群で抽出することとしてもよい。
【０００９】
この構成によれば、複数のパッケージファイルの中から、所定の検索条件に対応する要素ファイルが検索されて、群で抽出される。このため、検索条件に対応する複数の要素ファイルの中から、更に所望の要素ファイルを選択することが可能となる。
【００１０】
また、前記検索は、前記検索条件と一致する要素ファイルを検索する第１検索段階と、前記検索条件を含む範囲の要素ファイルを検索する第２検索段階と、を有することとしてもよい。
【００１１】
この構成によれば、まずは第１検索段階において検索条件と一致する情報を有する要素ファイルが検索されると共に、第２検索段階において検索条件を実現可能な情報を有する要素ファイルが検索されるため、検索結果に幅を持たせることができる。
【００１２】
また、前記検索を、パッケージファイルと、パッケージ化されていない要素ファイルとが混在する対象に対して行うこととしてもよい。
この構成によれば、パッケージファイルとパッケージ化されていない要素ファイルとが混在する場合でも、検索を行うことができる。
【００１３】
また、本発明は、パッケージファイルに含まれる要素ファイルを検索する処理を制御部が実行するための要素ファイル検索プログラムであって、前記制御部が、前記パッケージファイルが有する前記要素ファイルに関する所定情報を検索対象として所定の検索条件で検索を行い、その検索結果に基づき要素ファイルを抽出する処理を実行するためのものである。
【００１４】
このプログラムによれば、ユーザは所望の条件に即したデータを容易に検索し、抽出することが可能となる。
【発明を実施するための最良の形態】
【００１５】
（第１実施形態）
以下、本発明をプリンタにおいて具体化した第１の実施の形態を図１〜図８に従って説明する。
【００１６】
まず、プリンタの概略構成について図１を参照しながら説明する。
図１に示すように、プリンタ１は、プリンタ本体２と、プリンタ本体２と、プリンタ本体２の背面側に設けられた給紙装置３とを備えている。給紙装置３にセットされた用紙は１枚ずつプリンタ本体２に給紙されるようになっている。
【００１７】
プリンタ本体２は、そのケース４の内部に印刷機構５を備え、図示しない紙送り装置によって用紙が紙送りされて印刷が行われる。詳しくは、印刷機構５は、レール６に案内されてプラテン７の軸方向と平行に往復移動可能なキャリッジ８を備えている。キャリッジ８はキャリッジモータ９とタイミングベルト１０を介して連結され、キャリッジモータ９の駆動によって駆動される。キャリッジ８の下部には、用紙と対向する下面側に印刷ヘッド１１が配設されており、この印刷ヘッド１１からインクが吐出されて用紙１２に印刷が行われる。印刷された用紙１２はプリンタ１の正面下部に開口する排出口４ａから排紙される。
【００１８】
プリンタ１のケース４には操作パネル部１３が配設されており、この操作パネル部１３には表示部１４や各種の操作部１５が配設されている。この表示部１４には、プリンタ１のメニュー機能、印刷条件、動作内容、動作状況、エラー内容などが表示される。また、操作部１５は、メニュー画面に表示されるメニューを選択する際に使用されるカーソルボタン１５ａ及び選択したメニューを決定するための決定ボタン１５ｂを備えている。
【００１９】
プリンタ本体２の前面には、メモリカード１６を挿し込むためのカードスロット１７が配設されている。なお、本実施の形態におけるプリンタ１は、パソコン等のホストコンピュータに接続しなくても一台で印刷処理が可能なスタンドアロン型のプリンタである。詳しくは、プリンタ１は、カードスロット１７に挿し込まれたメモリカード１６から画像を取り込み、該メモリカード１６から取り込んだ画像のうち操作部１５の操作によって選択された画像を用紙１２に印刷することができる。
【００２０】
次に、プリンタ１の内部構成について図２を参照しながら説明する。
図２に示すように、プリンタ１はメイン制御を司るＣＰＵ２０を備え、このＣＰＵ２０にはバスＢを介して、操作パネル部１３、ＲＯＭ２１、ＲＡＭ２２、印刷制御部２３、カードスロット１７などが接続されている。また、印刷制御部２３は上記印刷機構５に接続されている。
【００２１】
ＲＯＭ２１には、プリンタ１を制御するための制御プログラム、印刷制御部２３を駆動するためのプリンタ用制御パラメータ等が記憶されている。また、このＲＯＭ２１には、要素ファイルを検索するための要素ファイル検索プログラムも記憶されている。なお、要素ファイルの検索方法については後述する。
【００２２】
ＣＰＵ２０は、ＲＡＭ２２をメモリ領域として、印刷処理時にプリンタ用パラメータをもとに印刷制御部２３を制御したり、メモリカード１６の画像データ読み取り時のデータ読み取りを制御したりする。
【００２３】
また、ＣＰＵ２０は、ＲＡＭ２２をメモリ領域として、要素ファイル検索プログラムをもとに要素ファイルの検索処理を実行する。本実施形態では、要素ファイルは画像領域を含むページレイアウトを定義するレイアウト定義ファイルであり、ＣＰＵ２０は、パッケージファイルに含まれるレイアウト定義ファイルを検索する。なお、パッケージファイルの構成については後述する。
【００２４】
上記の構成において、プリンタ１は、複数のパッケージファイルの中から所定の検索条件に対応するレイアウト定義ファイルを抽出する。そして、抽出されたレイアウト定義ファイルを解析し、そのレイアウト定義ファイルに記述された画像領域に、対応する画像データを適用して印刷画像を生成し、印刷処理を実行する。なお、本実施の形態においては、プリンタ１が、メモリカード１６に保存されている複数のパッケージファイルの中から、用紙サイズなどの所定の検索条件に対応するレイアウト定義ファイルを抽出する場合について説明する。
【００２５】
ここで、パッケージファイルについて説明する。
図３に、メモリカード１６に保存されたパッケージファイル３０（ファイルの拡張子は「ｆｄ２」）の一例を示す。
【００２６】
パッケージファイル３０は、レイアウトを定義するスクリプト情報を有するレイアウト定義ファイル（ファイルの拡張子は「ｈｔｍｌ」）や画像データを含む画像ファイルなどを一つのファイルに取りまとめた上に、そのファイルの属性を示す付加情報を埋め込んだものである。本プリンタ１は、パッケージファイル３０を解釈すれば、該パッケージファイル３０に記述されている関連性に基づいて、ページレイアウトと特定の画像データとを取得し、そのページレイアウト中の画像領域にその特定の画像データを適用したページデザインを生成し、印刷処理することができる。
【００２７】
図３に示すように、パッケージファイル３０は、ヘッダ３１、レイアウト定義ファイルディレクトリ（以下、「レイアウトＩＦＤ（ Image File Directory ）」という）３２、複数のレイアウト定義ファイル３３、画像ファイルディレクトリ（以下、「画像ＩＦＤ」という）３４、画像ファイル３５等を備えて構成されている。
【００２８】
ヘッダ３１は、パッケージファイル３０の先頭に記述される情報であり、パッケージファイル３０の基本情報を保持する。レイアウトＩＦＤ３２は、パッケージファイル３０内のレイアウト定義ファイル３３の数や、レイアウト定義ファイル３３へのポインタなど、レイアウト定義ファイル３３に関する情報を保持する。なお、レイアウトＩＦＤ３２は、レイアウト定義ファイル３３の情報を有するファイル情報部に相当する。レイアウト定義ファイル３３は、画像の印刷レイアウトを定義したファイルであり、具体的には、テキスト形式で記述されるスクリプトにより、用紙上のどこにどの画像・線・文字を配置するかを定義するものである。
【００２９】
レイアウト定義ファイル３３には、印刷に必要な印刷条件、例えば、用紙サイズ、アスペクト比、フチのサイズ、ファイル名、フリーサイズなどが記述されている。詳しくは、レイアウト定義ファイル３３は、印刷領域上の左上を原点（０，０）とする座標系における画像枠や文字枠を、左上及び右下座標で指定することができる。この座標は、例えば３６０ｄｐｉのピクセル単位で表現され、フチ無し印刷時は原点が用紙領域外になる。また、レイアウト定義ファイル３３は、画素の透過情報を用いたフレーム画像を扱うことができる。更には、レイアウト定義ファイル３３は、画像枠の属性情報により画像の回転、フィッティングなどの指定をすることができる。
【００３０】
画像ＩＦＤ３４は、パッケージファイル３０内の画像ファイルの数や、画像ファイル３５へのポインタなど、画像ファイル３５に関する情報を保持する。画像ファイル３５は、レイアウト定義ファイル３３により設定されている画像領域に適用される画像データを含んでおり、レイアウト定義ファイル３３と関連付けられている。
【００３１】
上記の構成において、ＣＰＵ２０は、カードスロット１７にメモリカード１６が挿し込まれ、ユーザによりメモリカード１６を読み取るように設定されると、表示部１４に図４に示す選択画面を表示させる。この選択画面においては、用紙サイズ（「Ａ４」、「Ａ５」、「ハガキ」、「Ｌ版」など）、用紙タイプ（「普通紙」、「光沢紙」など）、レイアウト（「１面」など）が選択可能とされている。具体的には、ＣＰＵ２０は、ユーザにより操作部１５のカーソルボタン１５ａが操作されて所定の項目が表示部１４に表示された状態で決定ボタン１５ｂが押下されると、表示部１４に表示中の項目を検索条件として設定する。例えば、図中示す例であると、用紙サイズは「Ａ４」が、用紙タイプは「普通紙」が、レイアウトは「１面」が検索条件として設定されている。本実施形態では、レイアウト定義ファイル３３に含まれるレイアウト情報が検索条件として設定される。
【００３２】
そして、ＣＰＵ２０は、例えば、パッケージファイル３０が有するレイアウトＩＦＤ３２を検索対象として、選択された検索条件で検索を行い、その検索結果に基づきレイアウト定義ファイル３３を抽出する。つまり、レイアウトＩＦＤ３２を検索して、検索条件と一致するレイアウト情報（スクリプト情報）を有するレイアウト定義ファイル３３を抽出する。この場合、レイアウトＩＦＤ３２は要素ファイルに関する所定情報に相当し、用紙サイズ「Ａ４」、用紙タイプ「普通紙」、レイアウト「１面」は、所定の検索条件に相当する。
【００３３】
なお、ＣＰＵ２０は、メモリカード１６に保存された複数のパッケージファイルを検索するものであり、それらのパッケージファイルの中から、検索条件に対応するレイアウト情報を有するレイアウト定義ファイルが群として抽出される。つまり、用紙サイズ「Ａ４」として検索を行った場合に、Ａ４サイズでページレイアウトされたレイアウト定義ファイルがすべて抽出される。そして、複数のレイアウト定義ファイルが抽出された場合、ユーザはそれらのレイアウト定義ファイルに基づいたページレイアウトを表示部１４に表示させながら、所望の画像を選択することが可能である。
【００３４】
次に、ＣＰＵ２０が有する検索機能について詳述する。
ＣＰＵ２０は、検索条件が設定されると、パッケージファイルを解析して検索条件に対応するレイアウト定義ファイルを抽出してＲＡＭ２２に保存する機能を有すると共に、検索条件に対応するレイアウト定義ファイルを有するパッケージファイルでなければ、パッケージファイルの検索途中でエラー信号を出力し、プリンタ１で認識させない機能を有する。ＣＰＵ２０がエラー信号を出力する例としては、パッケージファイルを構成するヘッダを検索したときに、パッケージファイルに対してプリンタ１のバージョン（機種の規格）が適合していない場合や、検索条件とされた用紙サイズのレイアウト定義ファイルがない場合などがある。
【００３５】
また、ＣＰＵ２０の詳細な検索機能としては、パッケージファイルを開く機能、パッケージファイルを閉じる機能、パッケージファイル内ファイルを開く機能、パッケージファイル内のファイルを読み込む機能、パッケージファイル内のファイルを閉じる機能、パッケージファイル内のレイアウト定義ファイルを検索する機能を有する。ＣＰＵ２０は、ユーザにより操作パネル部１３が操作されると、これらの中から指定された機能を実行することで、複数のパッケージファイルの中から検索条件に対応するレイアウト定義ファイルを抽出することができる。
【００３６】
まず、パッケージファイルを開く機能について説明する。
ＣＰＵ２０は、この機能においては、指定されたパッケージファイルを解析するが、パッケージファイルを構成するヘッダのみを解析する場合と、ヘッダ及びレイアウトＩＦＤを解析する場合と、ヘッダ及びレイアウトＩＦＤに加えてレイアウト定義ファイルの内容を解析する場合とがある。つまり、検索対象を段階的に設定することができるようになっている。
【００３７】
詳述すると、図５に示すように、パッケージファイルを開くとき、ＣＰＵ２０は、ステップ１００において、開く条件が「すべて解析してファイルにアクセスできるようにする」という条件で、既に開かれているパッケージファイルがあるか否か判断する。このとき、この条件で既に開かれているパッケージファイルがあれば（ステップ１００、ＹＥＳ）、ＣＰＵ２０はステップ１１０に進み、エラー信号を出力してこのパッケージファイルを認識させないようにする。
【００３８】
ＣＰＵ２０は、ステップ１００において「すべて解析してファイルにアクセスできるようにする」という条件で開かれているパッケージファイルがないと判断すれば（ステップ１００、ＮＯ）、ステップ１２０に進み、このパッケージファイルのヘッダを解析してメモリ（ＲＡＭ２２）に保存する。そして、ステップ１３０に進み、パッケージファイルを開く条件が「ヘッダだけを解析する」ではないかを判断する。ここで、パッケージファイルを開く条件が「ヘッダだけを解析する」であると判断すれば（ステップ１３０、ＮＯ）、ＣＰＵ２０はパッケージファイルを開く処理を終了する。つまり、ＣＰＵ２０は、パッケージファイルを構成するヘッダのみを解析し、レイアウトＩＦＤやレイアウト定義ファイルは解析しない。ＣＰＵ２０がパッケージファイルにおいてヘッダのみを解析する場合は処理負荷が小さいため、処理の高速化を図ることができる。
【００３９】
また、ＣＰＵ２０は、ステップ１３０においてパッケージファイルを開く条件が「ヘッダだけを解析する」ではないと判断すると（ステップ１３０、ＹＥＳ）、ステップ１４０に進み、レイアウトＩＦＤを解析してメモリ（ＲＡＭ２２）に保存する。そして、ステップ１５０に進み、開く条件が「すべて解析して、ファイルにアクセスできるようにする」であるか否かを判断する。ここで、開く条件がこの条件ではないと判断すれば（ステップ１５０、ＮＯ）、ＣＰＵ２０はパッケージファイルを開く処理を終了する。つまり、ＣＰＵ２０は、パッケージファイル内のヘッダ及びレイアウトＩＦＤのみを解析する。この場合、レイアウトＩＦＤの情報を参照することができるようになり、レイアウト定義ファイルに含まれる用紙サイズ、アスペクト比、印字方法等の条件を検索条件とすることができるようになる。
【００４０】
また、ＣＰＵ２０は、ステップ１５０において、パッケージファイルを開く条件が「すべて解析して、ファイルにアクセスできるようにする」であると判断すれば（ステップ１５０、ＹＥＳ）、ステップ１６０に進み、パッケージファイル内のレイアウト定義ファイルへアクセス可能にする。このとき、パッケージファイル内のレイアウト定義ファイルを開いたり読み込んだり閉じたりすることが可能となる。その後、ＣＰＵ２０は、本処理を終了する。
【００４１】
ＣＰＵ２０は、パッケージファイルを閉じる機能においては、使用しなくなったパッケージファイルを閉じて、そのパッケージファイルにアクセスしてもエラー出力されるように、パッケージファイルを無効とする。
【００４２】
詳述すると、図６に示すように、ＣＰＵ２０は、ステップ２００において、「すべてを解析し、ファイルへアクセスできるようにする」で開いたパッケージファイルであるか否かを判断する。ここで、ＣＰＵ２０は、パッケージファイルがその条件で開いたファイルであると判断すれば（ステップ２００、ＹＥＳ）、ステップ２１０に進み、他のパッケージファイルを「すべてを解析し、ファイルへアクセスできるようにする」で開けるようにする。そして、ステップ２２０に進み、メモリ（ＲＡＭ２２）に保存しているデータを無効にする。また、ＣＰＵ２０は、ステップ２００において「すべてを解析し、ファイルへアクセスできるようにする」で開いたファイルではないと判断した場合も（ステップ２００、ＮＯ）、ステップ２２０に進む。そして、ＣＰＵ２０は、本処理を終了する。
【００４３】
ＣＰＵ２０は、パッケージファイル内のレイアウト定義ファイルを開く機能においては、指定されたファイル名のパッケージファイルを開き、そのパッケージファイルを構成するレイアウト定義ファイルにアクセスするためのＩＤを返す。
【００４４】
詳述すると、図７に示すように、ＣＰＵ２０は、ステップ３００において、開く条件が指定されたファイル名のレイアウト定義ファイルを検索する。そして、ステップ３１０に進み、指定されたファイル名のレイアウト定義ファイルはあったか否かを判断する。このとき、指定されたファイル名のレイアウト定義ファイルがないと判断すれば（ステップ３１０、ＮＯ）、ステップ３２０に進み、エラー出力して本処理を終了する。
【００４５】
また、ＣＰＵ２０は、ステップ３１０において、指定されたファイル名のレイアウト定義ファイルがあったと判断すれば、（ステップ３１０、ＹＥＳ）、ステップ３３０に進み、このパッケージファイルへアクセスできるＩＤを用意する。そして、このＩＤを出力して、本処理を終了する。
【００４６】
ＣＰＵ２０は、パッケージファイル内のファイルを閉じる機能においてはパッケージファイル内のファイルにアクセスすることができないようにする。つまり、パッケージファイル内のファイルを開くときに得たＩＤ（図７におけるステップ３３０）を無効にする。
【００４７】
ＣＰＵ２０は、パッケージファイル内のレイアウト定義ファイルを読み込む機能においては、パッケージファイル内のレイアウト定義ファイルのデータを取得することができる。
【００４８】
詳述すると、図８に示すように、ＣＰＵ２０は、ステップ４００において、パッケージファイル内のレイアウト定義ファイルの先頭位置へファイルポインタを移動する。そして、ステップ４１０において、読み込もうとしているデータサイズが所定のファイルサイズ以上ではないか判断する。このとき、データサイズが所定のファイルサイズ以上ではないと判断すれば（ステップ４１０、ＹＥＳ）、ステップ４２０に進み、パッケージファイル内のレイアウト定義ファイルのデータを読み込んだ後、本処理を終了する。
【００４９】
また、ＣＰＵ２０は、ステップ４１０において、レイアウト定義ファイルのデータサイズが所定のファイルサイズ以上であると判断すれば（ステップ４１０、ＮＯ）、ステップ４３０に進み、読み込もうとしているサイズをそのレイアウト定義ファイルと同じにして、前記ステップ４２０に進み、本処理を終了する。
【００５０】
ＣＰＵ２０は、パッケージファイル内のレイアウト定義ファイルを検索する機能においては、指定された検索条件のレイアウト定義ファイルをパッケージファイル内で検索する。指定できる条件は、レイアウト定義ファイルに含まれる「用紙サイズ」や「用紙タイプ」の情報などがある。つまり、ＣＰＵ２０は、所定の用紙サイズや用紙タイプが検索条件として指定されると、その検索条件と一致するレイアウト情報を有するレイアウト定義ファイルを抽出する。また、ＣＰＵ２０は、レイアウト定義ファイルがフリーサイズの場合は、「用紙サイズ」などの検索条件が一致しなくても、アスペクト比（縦横比）が収まれば、検索条件に一致したと判断することができる。
【００５１】
また、ＣＰＵ２０は、第１検索段階として検索条件と一致するレイアウト定義ファイルを検索し、第１検索段階においてレイアウト定義ファイルが抽出されなかった場合に、第２検索段階としてその検索条件を実現可能なレイアウト定義ファイルを検索することができる。
【００５２】
例えば、検索条件として用紙サイズ「Ａ４」が設定された場合、ＣＰＵ２０は、パッケージファイルを構成するレイアウト定義ファイルの中から、用紙サイズ「Ａ４」というレイアウト情報を有するレイアウト定義情報を検索する。このとき、用紙サイズ「Ａ４」のレイアウト定義ファイルを有するレイアウト定義ファイルが抽出されなければ、ＣＰＵ２０は、次の第２検索段階において、用紙サイズＡ４の領域内で実現可能なレイアウト情報を有するレイアウト定義ファイルを検索する。具体的には、例えば、Ａ４サイズの用紙上にレイアウト可能なサイズである用紙サイズ「Ａ５」というレイアウト情報を有するレイアウト定義ファイルを検索する。
【００５３】
また、ＣＰＵ２０は、指定された用紙サイズがカット紙の場合、用紙サイズ指定がレイアウト定義ファイルの用紙サイズ指定と一致するものを検索するが、用紙タイプ指定によって、検索するレイアウト定義ファイルの優先順位を変更する。
【００５４】
例えば、用紙タイプとして「専用紙」が指定された場合、ＣＰＵ２０は、フチなしが設定されているレイアウト定義ファイルを優先して検索する。そして、フチなし設定されたレイアウト定義ファイルが抽出されない場合には、フチあり設定されたレイアウト定義ファイルの中から、検索条件に対応するレイアウト定義ファイルを検索する。また、例えば、ＣＰＵ２０は、用紙タイプとして「普通紙」が指定された場合、フチあり設定されたレイアウト定義ファイルを優先的に検索する。
【００５５】
（第２実施形態）
以下、本発明を具体化した第２の実施の形態を上記第１の実施の形態との相違点を中心に図９及び図１０に従って説明する。なお、第１の実施の形態と同様な構成部分については同一符号を付してその詳細な説明を省略する。
【００５６】
上記第１の実施の形態では、プリンタ１のＣＰＵ２０は、ユーザが検索条件として用紙サイズを指定した時点で、その指定された用紙サイズに対応するレイアウト定義ファイルを検索していた。本実施の形態では、ＣＰＵ２０は、メモリカード１６がカードスロット１７に挿入された時点で、レイアウト定義ファイルの検索を行うという点で、上記第１の実施の形態と異なっている。即ち、ＣＰＵ２０は、メモリカード１６がカードスロット１７に挿入されると、メモリカード１６に記憶されているファイルの中から、ファイルの拡張子を用いてパッケージファイル（ファイルの拡張子は「ｆｄ２」）を識別し、メモリカード１６に記憶されるすべてのパッケージファイルに対し検索を行う。そして、検索結果として図９に示すようなリストをパッケージファイルごとに生成し、ＲＡＭ２２に記憶する。
【００５７】
そして、ユーザが操作パネル部１３上の操作部１５を操作して用紙サイズを選択すると、ＣＰＵ２０は、選択された用紙サイズに対応するレイアウト定義ファイルを抽出するためにＲＡＭ２２に記憶された図９のリストのレイアウト定義ファイル４１，４２を適宜参照して解析し、その解析結果を例えば図１０に示すようにＲＡＭ２２に格納する。
【００５８】
以下に、選択された用紙サイズに対応するレイアウト定義ファイルを含むパッケージファイルを選択して印刷する場合を具体的に説明する。
ユーザが用紙サイズを選択すると、ＣＰＵ２０は、第１検索段階として、選択された用紙サイズと一致するレイアウト定義ファイルを検索する。この検索は、パッケージファイルごとに行われる。この第１検索段階で選択された用紙サイズに一致するレイアウト定義ファイルが見つかると、ＣＰＵ２０は、例えば図１０に示すようなリストを生成してＲＡＭ２２に格納する。この第１検索段階において図１０に示すリストが生成される場合は、パッケージファイル「 abc.fd2 」と「 def.fd2 」が含むレイアウト定義ファイルはユーザが指定したＡ４という用紙サイズと一致しており、「 ghi.fgd2 」が含むレイアウト定義ファイルはＡ４に一致していないことを示している。ここで、パッケージファイルの検索結果としてメモリカード１６に記憶されているパッケージファイルが３つなので、図１０のリストのパッケージファイル数も３つになっている。
【００５９】
第１検索段階においてレイアウト定義ファイルが抽出されなかった場合、ＣＰＵ２０は、第２検索段階として、その検索条件（Ａ４という用紙サイズ）を実現可能なレイアウト定義ファイルを検索する。
【００６０】
具体的には、ＣＰＵ２０は、まず、レイアウト定義ファイルの属性のうち、フリーサイズに対応しているかどうかを示す欄４５を参照する。フリーサイズに対応可能である場合には、次に、アスペクト比欄４４を参照し、選択された用紙サイズがアスペクト比欄４４の範囲に含まれるかどうかを解析する。そして、アスペクト比欄４４の範囲に含まれる場合は、図１０に該当するパッケージファイル欄に、選択された用紙サイズに適応可能であることを示す情報を書き込む。この第２検索段階において図１０に示すリストが生成される場合は、パッケージファイル「 abc.fd2 」と「 def.fd2 」が含むレイアウト定義ファイルはユーザが指定したＡ４という用紙サイズに対応しており、「 ghi.fgd2 」が含むレイアウト定義ファイルはＡ４に対応していないことを示している。
【００６１】
上述したように、用紙サイズ欄４３に示される用紙サイズが選択された用紙サイズと一致すること、もしくは、選択された用紙サイズのアスペクト比がアスペクト比欄４４の範囲に含まれることが、ユーザが指定した検索条件との対応関係が成立することの条件である。
【００６２】
表示部１４は、図１０のリストが生成されると、そのリストに従いユーザが選択可能なレイアウト情報を示すレイアウト定義ファイルを含むパッケージファイルを表示し、ユーザへの選択を促す。ユーザが所望のパッケージファイルを選択し、その他、印刷に必要なパラメータ、印刷対象画像の選択が終了すると、選択された用紙サイズの印刷媒体に対し、パッケージファイルに含まれるレイアウト定義ファイルが示すレイアウトになるように印刷対象画像をレイアウトし、さらに、選択されたパラメータを用いて印刷が実行される。
【００６３】
なお、本実施の形態では、複数のレイアウト定義ファイルを含むパッケージファイルに検索を行う際には、選択された用紙サイズに対応するレイアウト定義ファイルが１つでも見つかったら、その時点で検索を終了する。これは、対応用紙サイズが異なる同一レイアウトを示すレイアウト定義ファイルをパッケージファイルが複数含むためである。
【００６４】
上記各実施形態によれば、以下のような効果を得ることができる。
（１）上記各実施形態では、レイアウトを作成したユーザの意図を正確に反映させるために、レイアウト定義ファイルの属性である紙サイズが１つだけ指定されている。そうすることで、レイアウト作成時の用紙サイズによる印刷が実現できる。
【００６５】
（２）上記各実施形態では、ユーザにより指定された用紙サイズと異なった用紙サイズであっても、アスペクト比（縦横比）が所定範囲内であれば、その用紙サイズに適応可能とする。つまり、フリーサイズ指定されたレイアウト定義ファイルは、アスペクト比がある範囲内に収まっているのであれば、指定された用紙サイズと異なる用紙サイズで使用されることを許容している。このため、ユーザにより指定された用紙サイズに対して、検索結果に幅を持たせることができる。
【００６６】
なお、上記各実施の形態は以下のような変形例を採用することもできる。
（変形例１）上記各実施の形態では、パッケージファイル３０はレイアウト定義ファイル３３と画像ファイル３５とを含む構成である場合について説明したが、パッケージファイルは画像ファイルを含まない構成としてもよい。その場合、例えば、レイアウト定義ファイルには、ページレイアウト上の画像領域として流し込み画像枠が設定されており、プリンタ１は、パッケージファイルを指定された上で画像データを選択すれば、パッケージファイルにより設定された流し込み画像枠内に画像が適用された印刷画像を生成して印刷する。また、パッケージファイルは要素ファイルとしての画像ファイルもレイアウト定義ファイルも含まない構成としてもよく、例えば汎用拡張子のドキュメントファイルなど所定形式のファイルが含まれていてもよい。また、パッケージファイルとして所定圧縮形式の複数の圧縮ファイルのみを含んでいても、圧縮ファイルと非圧縮ファイルを含んでいても、複数の非圧縮ファイルのみを含んでいてもよい。
【００６７】
（変形例２）上記各実施の形態では、レイアウトＩＦＤなどを検索対象として、レイアウト定義ファイルが有する用紙サイズ等の情報を検索条件として検索を行う場合について説明したが、これを、以下のような態様としてもよい。即ち、プリンタ１は、所定処理を行う際に、処理対象の特定のためにパッケージファイルに含まれる要素ファイルとしてのレイアウト定義ファイルの検索を要素ファイルのヘッダやファイル名などで行い、該検索により抽出されたレイアウト定義ファイルに対して所定処理を行うようにしてもよい。
【００６８】
また、上記各実施の形態では、所定処理として印刷処理を例に説明したが、所定処理としては、他に例えばファイルの圧縮が挙げられる。非圧縮状態でパッケージ化されている所定の要素ファイルに対し、個別に圧縮を行って別ファイルを生成するような場合である。具体的には、パッケージファイルに含まれる処理対象である要素ファイルの検索を行い、該検索により抽出された要素ファイルに対して所定処理として圧縮を行い別ファイルを生成する。
【００６９】
（変形例４）上記第２の実施の形態では、複数のレイアウト定義ファイルを含むパッケージファイルに検索を行う際には、選択された用紙サイズに対応するレイアウト定義ファイルが１つでも見つかったら、その時点でそのパッケージファイルに対する検索を終了していた。しかし、パッケージファイルが、異なるレイアウトを示す複数のレイアウト定義ファイルを含む場合などでは、１つのパッケージファイルが含むすべてのレイアウト定義ファイルのそれぞれが、選択された用紙サイズに対応するかどうかを検索してもよい。つまり、１つのパッケージファイルから、指定された用紙サイズに対応するレイアウト定義ファイルを複数抽出するようにしてもよい。その際、図１０のパッケージファイル名を記載する欄を、レイアウト定義ファイル名を記載する欄に変更してリストを生成し、そのリストに基づきユーザにレイアウト定義ファイルを選択させるようにしてもよい。
【００７０】
（変形例５）上記各第２の実施の形態では、メモリカード１６がカードスロット１７に挿入されたときにパッケージファイルを検索しているが、検索のタイミングはその他の所定のタイミングでもよい。例えば、表示部１４に、メモリカード１６の読取開始を意味する選択画面を表示させ、ユーザにより開始指示されたときに、メモリカード１６に記憶されたパッケージファイルを検索するようにしてもよい。
【００７１】
（変形例６）上記第２の実施の形態において、レイアウト定義ファイルの属性として、アスペクト比の代わりに、適応可能な最大用紙サイズ及び／又は適応可能な最小サイズを用いてもよい。その場合も、指定された用紙サイズに対して実現可能なレイアウト定義ファイルを抽出することができる。
【００７２】
（変形例７）上記各実施の形態では、プリンタ１をスタンドアロン機として使用したが、パソコン等のホストコンピュータと接続し、ホストコンピュータから受信するデータに対してレイアウト定義ファイルの検索を行い、抽出されたパッケージファイルに印刷処理を実行してもよい。
【００７３】
（変形例８）上記各実施の形態では、要素ファイル（レイアウト定義ファイル）の検索処理をプリンタ１において実行する場合について説明したが、この要素ファイルの検索処理をプリンタ以外の装置で実行するようにしてもよい。例えば、パソコンやデジカメ等の電子機器において、前記検索処理を実行してもよい。
【００７４】
（変形例９）上記各実施の形態では、メモリカード１６のデータを取り込んで印刷する場合について説明したが、これに限らず、その他の外部記憶媒体、例えばＭＯやＣＤ−Ｒ、あるいはＤＶＤ等に保存されているデータを取り込んで印刷することも勿論可能である。
【００７５】
（変形例１０）上記各実施の形態において、印刷するメディアは用紙に限らず、ＣＤ−ＲやＤＶＤ等その他のメディアであってもよい。
（変形例１１）本発明を実現する態様は、上記各実施の形態に限定されるものではなく、例えば、両実施の形態間のコンビネーションとしてもよい。
【００７６】
次に、上記各実施の形態及び変形例から把握できる技術的思想について記載する。
（１）前記検索は、前記検索条件によって検索する要素ファイルの優先順位を変更することを特徴とする請求項１〜６に記載の要素ファイルの検索方法。
【００７７】
（２）前記検索は、前記パッケージファイルのヘッダを検索対象とすることを特徴とする請求項１〜７及び上記技術的思想（１）の何れかに記載の要素ファイルの検索方法。
（３）前記パッケージファイルは、該パッケージファイルに含まれる要素ファイルに関する情報を有するファイル情報部を含み、前記検索は、該ファイル情報部を検索対象とすることを特徴とする請求項１〜７及び上記技術的思想（１），（２）の何れかに記載の要素ファイルの検索方法。
【００７８】
（４）前記検索は、前記パッケージファイルのヘッダを検索対象とする段階と、前記ファイル情報部を検索対象とする段階と、前記要素ファイルの内容を検索対象とする段階とを有することを特徴とする上記技術的思想（３）に記載の要素ファイルの検索方法。
【００７９】
（５）前記要素ファイルは、画像領域を含むページレイアウトを定義するレイアウト定義ファイルであることを特徴とする請求項１〜７及び上記技術的思想（１）〜（４）のうち何れか１項に記載の要素ファイルの検索方法。
【図面の簡単な説明】
【００８０】
【図１】本実施形態におけるプリンタの一部破断斜視図。
【図２】プリンタの電気的構成を示すブロック図。
【図３】パッケージファイルのデータ構造を説明する説明図。
【図４】選択画面の説明図。
【図５】パッケージファイルを開く処理を説明するフローチャート。
【図６】パッケージファイルを閉じる処理を説明するフローチャート。
【図７】パッケージファイル内のファイルを開く処理を説明するフローチャート。
【図８】パッケージファイル内のファイルを読み込む処理を説明するフローチャート。
【図９】パッケージファイルの検索結果の一例を説明する説明図。
【図１０】パッケージファイルの解析結果の一例を説明する説明図。
【符号の説明】
【００８１】
１…プリンタ、２０…ＣＰＵ、３０…パッケージファイル、３１…ヘッダ、３２…要素ファイルに関する所定情報及びファイル情報部としてのレイアウトＩＦＤ、３３…要素ファイルとしてのレイアウト定義ファイル、３５…画像ファイル。
【図１】
2006092493.tif 000003
【図２】
2006092493.tif 000004
【図３】
2006092493.tif 000005
【図４】
2006092493.tif 000006
【図５】
2006092493.tif 000007
【図６】
2006092493.tif 000008
【図７】
2006092493.tif 000009
【図８】
2006092493.tif 000010
【図９】
2006092493.tif 000011
【図１０】
2006092493.tif 000012