(57)【特許請求の範囲】
【請求項１】
画像情報と、該画像情報に付加された付加情報を印刷手段により１つの印刷媒体上に印刷させる情報処理装置であって、
複数の前記付加情報のうちから、前記印刷媒体上に印刷させる付加情報をユーザーにより選択可能とするための選択手段と、
前記印刷媒体上の前記付加情報が印刷されるべき領域内に前記選択手段により選択された複数の付加情報が印刷されるように、前記複数の付加情報の配置を自動的に調整する調整手段と、を備え、
前記調整手段は、前記付加情報を１列で配置できない場合は、前記領域内に印刷される付加情報の列数を増やして配置することを特徴とする情報処理装置。
【請求項２】
前記調整手段は、列数を増やして列の幅が小さくなることにより１つの付加情報を１行内に配置できない場合は、複数行を使用して前記１つの付加情報を配置することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記調整手段は、前記選択手段で選択された付加情報の数に基づいて、前記付加情報を配置する際の列数を決定することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記調整手段は、前記付加情報が印刷されるべき領域内に前記選択手段により選択された付加情報が印刷されるように、前記付加情報の配置および前記付加情報の文字のサイズを自動的に調整することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記選択手段は、画面上に前記複数の付加情報のリストを表示させ、該付加情報のリストから、ユーザーに付加情報を選択させることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記調整手段により調整された文字のサイズが所定サイズより小さくなる場合に、警告メッセージを表示する表示手段をさらに具備することを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記所定サイズをユーザーにより設定可能とするサイズ設定手段をさらに具備することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記文字のサイズを所定サイズ以上の大きさに保った状態で、前記印刷媒体上の前記付加情報が印刷されるべき領域内に印刷可能な付加情報の数を表示する表示手段をさらに具備することを特徴とする請求項４に記載の情報処理装置。
【請求項９】
前記調整手段により調整された文字のサイズが所定サイズより小さくなる場合に、前記選択手段により選択された付加情報の数を減少させる付加情報数調整手段をさらに具備することを特徴とする請求項４に記載の情報処理装置。
【請求項１０】
前記付加情報数調整手段は、前記付加情報の優先度に基づいて、前記選択手段により選択された付加情報の数を減少させることを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記印刷手段の解像度に基づいて、前記所定サイズを変更する所定サイズ変更手段をさらに具備することを特徴とする請求項６に記載の情報処理装置。
【請求項１２】
前記調整手段により文字のサイズが調整された前記付加情報の印刷プレビュー画面を表示する表示手段をさらに具備することを特徴とする請求項４に記載の情報処理装置。
【請求項１３】
画像情報と、該画像情報に付加された付加情報を印刷手段により１つの印刷媒体上に印刷させる情報処理方法であって、
複数の前記付加情報のうちから、前記印刷媒体上に印刷させる付加情報をユーザーにより選択可能とするための選択工程と、
前記印刷媒体上の前記付加情報が印刷されるべき領域内に、前記選択工程において選択された付加情報が印刷されるように、前記付加情報の配置を自動的に調整する配置調整工程と、を具備し、
前記調整工程では、前記付加情報を１列で配置できない場合は、前記領域内に印刷される付加情報の列数を増やして配置することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像と共にその画像の付加情報を印刷する技術に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラ及びプリンタの普及に伴い、デジタルカメラ及びプリンタを自宅に持っているユーザーは、手軽に高画質な写真を何枚でも印刷出来る環境を整えることが出来るようになった。また、ＰＣ（パーソナルコンピュータ）の普及に伴い、ユーザーはＰＣに、印刷を行うことが出来るソフトウェアをインストールして、自由に様々な形式の印刷を行なわせることも出来るようになってきた。
【０００３】
具体的に例を挙げると、ユーザーが自由にレイアウトして印刷するレイアウト印刷機能や、画像と共にカメラで撮影した撮影情報を一緒に印刷するインデックス印刷機能などである。
【非特許文献１】キヤノンユーザー必携！まるごとわかる ZoomBrowser EX 5.0  P.137-P.165  技術評論社出版、一条真人著
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のソフトウェアでも、インデックス印刷と呼ばれる、カメラで撮影した情報とその撮影情報を同時に印刷する機能を有している。このインデックス印刷は、画像と撮影情報を並べて印刷することで、どのような撮影パラメータで撮影したのかを簡単に確認することが出来るメリットがある。また画像と撮影情報を並べて印刷することから、撮影パラメータを変えながら連写した場合など、どのようなパラメータで撮影した画像が最も良く撮れているかを検討するのに非常に有用な手段となっている。
【０００５】
図１は、従来の印刷用ソフトウェアのＵＩ（ユーザーインターフェース）を簡略化して示した図である。
【０００６】
図１において、１０１は印刷ソフトウェアで印刷可能な印刷モードを選択するプルダウンメニューで、ユーザーはここで、レイアウト印刷、インデックス印刷などの印刷方法を切り替えることが出来る。１０２は、プリンタや印刷用紙などを切り替えることが出来るエリアである。１０３は、インデックス印刷におけるレイアウトを決定するためのエリアである。行数及び列数を指定することで、１枚の用紙における画像数が決まる。撮影情報を設定すると、画像とその画像に付加されている撮影情報の表示が行われる。これらのエリア１０１, １０２, １０３の設定の変更は、印刷プレビューエリア１０５に影響を与える。これらの設定を変えると、リアルタイムにプレビューエリア１０５にその設定が反映される。１０４は、多くのソフトウェアで実装されている「閉じる」「最大化」「最小化」のボタンである。ボタン１０６で「印刷」を選択すると印刷が始まり、「キャンセル」を選択するとこのソフトウェアが終了する。
【０００７】
従来の印刷方法では、決まった情報を決まった形式で印刷していた。つまりプログラム側で予め指定されている撮影情報を、決まったフォント及びフォントサイズで印刷していた。ユーザーによって必要な情報は異なるので、図１に示したシステムにおいては、例えばエリア１０３内に示すように、印刷する撮影情報の数を「大／中／小」の３段階から選ぶことで、この問題を解決しようとしていた。
【０００８】
従来では、例えば、小を選んだときは「ファイル名／画像サイズ／入力機器名／撮影日時」が表示される。また、中を選んだときは小を選んだときに表示される項目に加え「露出時間／Ｆナンバー／露出補正値／３５ｍｍ換算レンズ焦点距離／ストロボ」が表示される。また、更に大を選んだときは中を選んだときに表示される項目に加え「デジタルデータの作成日時／Exifバージョン／色空間情報／機器種類」が表示される。
【０００９】
しかし、この方法では撮影情報の表示個数を選択可能であるが、内容についてはプログラム側で固定されており、ユーザーは内容を指定出来ない。デジタルカメラで撮影した撮影情報や、情報処理装置等で新たに付加した情報など印刷可能な情報は様々あり、またその中からユーザーが所望する情報も千差万別である。よって印刷情報機器が提供する印刷情報すべてがユーザーにとって必要十分な情報であるとは言えない。また結果的に、不必要な情報まで同時に印刷してしまうケースが存在していた。
【００１０】
また従来のシステムでは、情報を印刷する場合、前述のように所定のフォントサイズに固定されているため、１情報が非常に長い場合はすべての文字を印刷しきれずに、途中で切れてしまう場合もあった。
【００１１】
従って、本発明は上述した課題に鑑みてなされたものであり、その目的は、インデックス印刷を行なう場合に、ユーザーが所望する情報を適切に印刷できるようにすることである。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するために、本発明に係わる情報処理装置は、画像情報と、該画像情報に付加された付加情報を印刷手段により１つの印刷媒体上に印刷させる情報処理装置であって、複数の付加情報のうちから、印刷媒体上に印刷させる付加情報をユーザーにより選択可能とするための選択手段と、印刷媒体上の付加情報が印刷されるべき領域内に選択手段により選択された複数の付加情報が印刷されるように、複数の付加情報の配置を自動的に調整する調整手段と、を備え、調整手段は、付加情報を１列で配置できない場合は、領域内に印刷される付加情報の列数を増やして配置することを特徴とする。
【００１３】
また、本発明に係わる情報処理方法は、画像情報と、該画像情報に付加された付加情報を印刷手段により１つの印刷媒体上に印刷させる情報処理方法であって、複数の付加情報のうちから、印刷媒体上に印刷させる付加情報をユーザーにより選択可能とするための選択工程と、印刷媒体上の付加情報が印刷されるべき領域内に、選択工程において選択された付加情報が印刷されるように、付加情報の配置を自動的に調整する配置調整工程と、を具備し、調整工程では、付加情報を１列で配置できない場合は、領域内に印刷される付加情報の列数を増やして配置することを特徴とする。
【発明の効果】
【００２６】
本発明によれば、画像とともに付加情報を印刷する場合に、ユーザーが所望する情報を適切に印刷することが可能となる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の好適な実施形態について、図面を参照して詳細に説明する。
【００２８】
（第１の実施形態）
図２は、本発明の情報処理方法が実施されうるプラットフォームであるパーソナルコンピュータシステムの構成例を示した図である。
【００２９】
図２において、２０１はコンピュータシステム本体、２０２はデータを表示するディスプレイ、２０３は代表的なポインティングデバイスであるマウス、２０４はキーボードである。２０５は写真を撮影するデジタルカメラであるが、本発明ではデジタルカメラに限らず画像入力機器であればどのような機器を用いてもよい。２０６は、印刷を行うプリンタである。
【００３０】
図３はソフトウェアとハードウェアを含む画像データ管理システムの構成を示す図である。
【００３１】
図３において、３０１はハードウェアであり、３０２はハードウェア３０１上で動作するオペレーティングシステム（ＯＳ）であり、３０３はＯＳ３０２の上で動作するアプリケーションソフトウェアである。なお、ハードウェア３０１とＯＳ３０２を構成するブロックのうち、本実施形態を説明する上で必要としないブロックに関しては図示していない。そのような図示していないブロックの例として、ハードウェアではＣＰＵ、メモリ、ＯＳではメモリ管理システム等がある。
【００３２】
さらに、図３において３０４はコンピュータシステム本体２０１内にあるファイルやデータを物理的に格納するハードディスク等の記憶装置である。３２１はＯＳ３０２を構成するファイル管理システムでありアプリケーションソフトウェア３０３がハードウェア３０１を意識せずにファイルの入出力を行えるようにする機能がある。３１１はファイル管理システム３２１が記憶装置３０４の読み書きを行うためのディスクＩＯインターフェースである。３２２はＯＳ３０２を構成する描画管理システムであり、アプリケーションソフトウェア３０３がハードウェア３０１を意識せずに描画を行えるようにする機能がある。３１２は描画管理システム３２２がディスプレイ２０２に描画を行うためのビデオインターフェースである。３２３はＯＳ３０２を構成する入出力デバイス管理システムであり、アプリケーションソフトウェア３０３がハードウェア３０１を意識せずにユーザーの入力やアプリケーションからの出力を受け取ることが出来るようにする機能がある。３１３は入出力デバイス管理システム３２３がキーボードやマウスなどの入力、デジタルカメラへの入出力、プリンタへの出力などの入出力を一括して管理することが出来るようにするＵＳＢインターフェースである。
【００３３】
図４は、本実施形態における印刷用ソフトウェアのＵＩ（ユーザーインターフェース）を簡略化して示した図である。
【００３４】
４０１は、従来例と同様に印刷ソフトウェアで印刷可能な印刷モードを選択するプルダウンメニューで、ユーザーはここで、レイアウト印刷、インデックス印刷などの印刷方法を切り替えることが出来る。４０２は、プリンタや印刷用紙などを切り替えることが出来るエリアである。４０３は、インデックス印刷におけるレイアウトを決定するためのエリアである。エリア４０３で行数及び列数を指定することで、１枚の用紙における画像数が決まる。「撮影情報」という表示の横のチェックボックス４０３ａをＯＮ／ＯＦＦすることで、撮影情報の表示及び非表示を切り替えることが出来る。表示する撮影情報の内容の設定は「設定」ボタンをクリックすることで行う。
【００３５】
これらのエリア４０１, ４０２, ４０３の設定の変更は、印刷プレビューエリア４０５の表示内容に影響を与える。設定を変更すると、その内容がリアルタイムにプレビューエリア４０５に反映される。４０４は、多くのソフトウェアで実装されている「閉じる」「最大化」「最小化」のボタンである。ボタン４０６で「印刷」を選択すると印刷が始まり、「キャンセル」を選択するとこのソフトウェアが終了する。
【００３６】
図５は、エリア４０３の「設定」ボタンをクリックしたときに表示される設定ダイアログの例を示す図である。
【００３７】
エリア４０３の「設定」ボタンをクリックすると、撮影情報設定ダイアログ５０１が表示される。ユーザーは印刷したいと思う所望の撮影情報を撮影情報リスト５０２から選択する。選択後、「ＯＫ」ボタン５０３をクリックすると、その結果が印刷プレビューエリア４０５に反映される。撮影情報リスト５０２に表示される項目には、カメラで撮影した時に付加される情報はもちろんのこと、本情報処理装置内で付加した情報や、その他の画像管理装置等で付加した情報も含まれる。例えば、その他の画像管理装置等で付加した、画像に対する「お気に入り度」や「キーワード」といった項目である。
【００３８】
これらの情報を表示させる場合、図６に６０１や６０２で示すようにプログラム側が用意した情報印刷可能領域から情報がはみ出してしまう場合がある。これまでは、印刷可能領域からはみ出した場合、はみ出した文字を表示しないことで対処を行ってきた。しかし本実施形態では、図６に６０３や６０４で示すように自動的に文字を小さくリサイズすることで、文字が途中で切れないように処理を行う。
【００３９】
これらの処理をフローチャートとして示したものが図７である。
【００４０】
「ＯＫ」ボタン５０３がクリックされるとステップＳ７０１で処理が開始される。
【００４１】
ステップＳ７０２で撮影情報リスト５０２でユーザーが選択した情報の印刷可能領域内への配置を行う。ステップＳ７０３でそれらの情報が印刷可能領域内に収まっているかどうかを計算する。ステップＳ７０４で収まっていると判断した場合、ステップＳ７０６に進んで終了する。ステップＳ７０４で収まっていない場合、ステップＳ７０５でフォントのサイズを１ポイント小さくする。その後ステップＳ７０３で再び印刷可能領域内に収まっているかどうかの計算を行うことになる。よって、印刷可能領域内に印刷しようとする情報が収まるようになるまでテキストのポイントを小さくすることになる。その結果、文字を切れることなく表示することが可能になる。
【００４２】
このようにフォントを自動的に小さくしていくと、最終的に印刷した結果の文字がユーザーが認識出来ない程に小さくなってしまう場合が想定出来る。この解決策として、本実施形態では、印刷時の文字の大きさを印刷前に計算して、所定のフォントサイズ以下になった場合、図８に８０１で示すように警告を表示し、ユーザーに印刷を行うかどうかの判断を仰ぐようにする。警告を表示する判断基準となる上記の所定のフォントサイズは、プログラムが予め設定しておいても良いし、ユーザーによって視力等により視認性が異なるので、図９に９０１で示すように環境設定内でユーザーが自分で設定出来るようにしても良い。
【００４３】
警告表示から印刷までのフローチャートを図１０に示す。
【００４４】
ボタン４０６の「印刷」ボタンをクリックすると、ステップＳ１００１で処理が開始される。ただし、ステップＳ１００１を行うタイミングは、「印刷」ボタンをクリックした時に限らず、印刷プレビュー４０５を描画したタイミングでも良い。本フローチャートでは、「印刷」ボタンをクリックした時に、図８の警告ダイアログを表示する処理について説明する。
【００４５】
ステップＳ１００１で処理を開始し、実際に印刷した時のテキスト（文字）のサイズをステップＳ１００２で計算する。次にステップＳ１００３で図９で指定したフォントサイズの取得、又は予めプログラム内で指定していたフォントサイズの取得を行う。ステップＳ１００４でこれらのサイズの比較を行う。もし、実際に印刷するテキストサイズが警告を表示するフォントサイズよりも大きかったら、そのままステップＳ１００５で印刷を開始する。印刷結果の方のテキストサイズが警告を表示するフォントサイズよりも小さい場合は、ステップＳ１００６で警告ダイアログ８０１を表示する。ここで「はい」を選択すると（ステップＳ１００７：Ｎｏ）、そのままの設定で印刷を実行し、「いいえ」を選択すると（ステップＳ１００７：Ｙｅｓ）、図４のＵＩに戻る。これにより、実際に印刷してしまう前に、ユーザーは文字が小さすぎることを認識することができ、設定を変更することで小さすぎる文字を印刷してしまうことを回避出来る。
【００４６】
警告を表示する閾値となるフォントサイズは、出力機器（プリンタ）にも依存する。例えば、解像度が高い出力機器で印刷した時は見えた文字でも、同じ設定で解像度が低い出力機器で印刷した時は見にくくなっているというケースは考えられる。このとき、情報処理装置が出力機器から解像度を取得して、その解像度により、警告を表示する閾値となるフォントサイズ（以下、警告サイズとも呼ぶ）を変更するようにしてもよい。
【００４７】
警告サイズを変更する際のフローチャートは図１１のようになる。
【００４８】
情報処理装置内で警告サイズが必要になった時、ステップＳ１１０１が開始される。
【００４９】
ステップＳ１１０２で出力予定の出力機器（プリンタ）から、その機器が持つ解像度を取得する。次にステップＳ１１０３で、図９で指定した警告サイズ（警告表示フォントサイズ）の取得、又は予めプログラム内で指定していた警告サイズの取得を行う。ステップＳ１１０４で出力機器の解像度が警告サイズを変更するべきサイズかどうかの判断を行う。もし警告するフォントサイズ（警告サイズ）の変更が必要な解像度を持つ出力機器だった場合、ステップＳ１１０５でフォントサイズ（警告サイズ）を自動的に変更し、ステップＳ１１０６で処理を終了する。ステップＳ１１０４で十分な解像度を持つ出力機器だった場合、ステップＳ１１０６にそのまま進み処理を終了する。またこの場合、プレビューエリア４０５の解像度も出力機器に合わせたものにしても良い。
【００５０】
（第２の実施形態）
上記の第１の実施形態では、印刷される文字が小さくなりすぎてしまう場合に警告を表示するようにしたが、この第２の実施形態では、警告を表示せずに、そのまま印刷をおこなう。用紙のサイズ、インデックス印刷の行数、列数、警告を表示するフォントサイズが定まっていれば、表示可能な情報数を予め計算することが出来る。
【００５１】
図１２は、情報表示設定ダイアログ１２０１で表示可能な撮影情報数を表示した例を示す図である。エリア１２０３におけるＮ（整数）は最大表示可能情報数である。印刷しようとする撮影情報数がＮを超える場合、表示情報を決めるエリア１２０２で選択しているＮ個以外はDisableにしても良いし、決定出来ないように「ＯＫ」ボタンをDisableにしても良い。
【００５２】
最大表示可能情報数を決めるフローチャートを図１３に示す。
【００５３】
情報表示設定ダイアログ１２０１を表示するタイミングでステップＳ１３０１の処理を開始する。
【００５４】
ステップＳ１３０２で、警告表示を行うフォントサイズ、用紙サイズ、行列数など、最大表示可能情報数を予測するのに必要な情報を取得する。ステップＳ１３０３でそれらの情報を用いて最大表示可能情報数を計算する。ステップＳ１３０４でエリア１２０３に表示を行い、ユーザーに最大表示可能情報数を知らせる。
【００５５】
もし設定後、ユーザーが最大表示可能情報数を予測するのに必要だった設定を変更してしまった場合、強制的に情報表示設定ダイアログ１２０１を表示する。または、「印刷」ボタンをDisableにした後「設定」ボタン４０３を点滅させ警告する。
【００５６】
以上の動作により、予め最大表示可能情報数をユーザーに知らせ、ユーザーに表示可能な情報数以下の数の撮影情報を選択させることにより、警告ダイアログを表示することなく、印刷を行うことが可能になる。
【００５７】
（第３の実施形態）
この第３の実施形態では、第２の実施形態で説明した方法に加えて情報表示項目に優先度を付ける。
【００５８】
図１４は表示設定ダイアログ１４０１に優先度を入れたものである。ユーザーはエリア１４０２で表示情報の選択を行うと同時に、エリア１４０３で、それらの情報に優先度を付加する。それらを設定した後に「ＯＫ」ボタン１４０４で設定の完了を行う。もし表示設定ダイアログ１４０１で決定した表示情報数がステップＳ１３０３で計算した情報数より多かった場合、優先度の高い順にＮまでの情報をプレビューエリア４０５に表示するようにする。もし設定後、最大表示可能情報数を予測するのに必要な項目が変わったら、Ｎについて再計算を行い、優先度の高い順にＮまでの情報をプレビューエリア４０５に表示する。この方法でも、警告ダイアログを表示すること無く、印刷を行うことが可能になる。
【００５９】
以上説明したように、上記の第１乃至第３の実施形態によれば、ユーザーは所望の撮影情報のインデックス印刷を行うことが出来るようになる。またそれらの撮影情報は途切れることもない。
【００６０】
更に、撮影情報が自動的にリサイズした結果小さくなりすぎてしまったことを実際に印刷することなく判断出来るといったメリットを享受出来る。その結果無駄な印刷を行うリスクを軽減出来る。
【００６１】
（第４の実施形態）
第４の実施形態では、図１５に示すような場合を考える。１５０１で示すように、撮影情報が縦方向にすべて入らない場合が考えられる。この場合、テキスト挿入用の余白１５０２が十分に存在していれば、１５０３で示すように列数を増やすことで全ての情報を表示することが可能となる。
【００６２】
１５０３で示すように、１行で表示不可であれば、列を増やすことで、Ｎ列表示を試みる。ただし列を増やした場合、文字列を表示出来る横幅も減る。１５０５で示すように情報が長い場合には、列数を増やすと１５０６で示すようにすべて表示しきれない場合も出てきてしまう。その場合は、１５０７で示すように複数行で表示することで、文字が切れることを防止できる。
【００６３】
複数列に表示可能であるケースも存在する一方で、印刷可能領域は有限なので複数行に分けても印刷しきれない場合がある。
【００６４】
これを判断するためのアルゴリズムの１例を説明する。
【００６５】
各画像の撮影情報を印刷するためのテキスト領域の高さをＰ_Ｈ、幅をＰ_Ｗとする。
【００６６】
撮影情報一つの高さをＳ_Ｈとし、幅をＳ_ＷNとする。Ｎは撮影情報の個数であり、撮影情報は文字列の長さに依存するため、それぞれの幅は異なるので、それぞれの撮影情報の幅はＳ_Ｗ0〜Ｓ_ＷNとして区別する。
【００６７】
テキスト領域に入る撮影情報の行数はＰ_Ｈ／Ｓ_Ｈで求めることが出来る。複数の列Ｃがあれば、その全行数は（Ｐ_Ｈ／Ｓ_Ｈ ）＊Ｃで求められる。また１５０６で示すように、複数列にした時に撮影情報が１行では収まらないケースを考える。これらの情報は全て表示しきれないと意味を成さない場合があるので、収まらない場合は、１５０７で示すように複数行に分けて表示する。
【００６８】
これらの処理をフローチャートにしたものが図１６である。
【００６９】
ステップＳ２３０１で、表示列数Ｃ、変数ｉ、撮影情報表示に必要な行数Ｌをそれぞれの値で初期化する。ここでは、列数Ｃを１、ｉを１、行数Ｌを０とする。ステップＳ２３０２で撮影情報一つに対して表示に必要な行数を求め、それをＬに追加する。ステップＳ２３０３、２３０４で変数ｉを１増やしＮよりも大きいかどうか比較する。これによって、撮影情報の個数であるＮ回分、ステップＳ２３０２を実行する。
【００７０】
上記の処理を行うことで、撮影情報全てを表示するのに必要な行数Ｌが求まる。ステップＳ２３０５で、行数Ｌとテキスト領域に印刷可能な行数との比較を行う。Ｌの方が小さければ、全ての撮影情報を印刷可能なので、ステップＳ２３０６で列数Ｃを確定し印刷を行う。
【００７１】
ステップＳ２３０５で、テキスト領域に印刷可能な行数よりもＬの方が大きければ、全ての撮影情報をテキスト領域に印刷出来ないと判断出来るので、ステップＳ２３０７で列数Ｃを１増やして、再度上記の処理を行う。但し、その前にステップＳ２３０８で１列の幅の確認を行う。列数Ｃを増やすことによって、１行に表示出来る撮影情報の表示領域の幅も狭まる。この表示領域の幅が撮影情報を表示するのに十分でないと判断した時は、ステップＳ２３０９で列数Ｃを増やしても印刷不可であり、最適な列数Ｃは存在しないとして終了する。このとき同時にユーザーに警告を表示する。
【００７２】
このように最適な列数Ｃを計算し、ユーザーにそれを選択させる、若しくはプログラムが自動的に判別することによって、ユーザーが求める全撮影情報を印刷できる可能性が高くなる。
【００７３】
もし、何れの列数Ｃでもテキスト領域に全ての撮影情報を印刷できないと判断された場合は、他の実施形態で説明している方法の適用を検討する。
【００７４】
（第５の実施形態）
これまでの実施形態では、文字の大きさやレイアウトを変えることで、撮影情報が表示しきれない問題に対応した。それに対し、本実施形態では、撮影情報に重きを置くユーザーを対象として、文字の大きさを変えずに画像を小さくしてユーザーが所望する全ての撮影情報を表示させる。
【００７５】
図１７は、情報処理装置の撮影情報設定ダイアログ１７０１を表示した状態を示す図である。図１８は、第５の実施形態における、文字の大きさを変えずに画像を小さくする動作を示すフローチャートである。
【００７６】
エリア１７０２で印刷する撮影情報を選択し、フォント指定部１７０３で印刷する撮影情報のフォントサイズを指定する。指定したフォントサイズで良ければＯＫボタン１７０４をクリックすることで、設定内容を確定する。
【００７７】
説明を簡単にするために、撮影情報を１列で表示する場合を考える。フォント指定部１７０３で指定したフォントサイズで、エリア１７０２で指定した撮影情報を、図１９に示すように印刷可能領域に１８０１で示すように１列で並べることを試みる。
【００７８】
ここで、図１８のステップＳ２４０１で撮影情報のはみ出し領域を計算する。ステップＳ２４０２ではみ出し領域を計算し、すべて収めることが出来れば、画像の変更は行わず終了する。もし収まりきらない場合は、ステップＳ２４０３ではみ出した領域分、画像を小さくする。ただし、画像が小さくなりすぎると画像を表示する意味を成さないので、画像の最小のサイズを決める。本実施形態では、プログラム側で短辺が１６０ピクセル以下になった場合を最小画像サイズとして扱うこととする。もちろん操作者が最小画像サイズを設定出来るようにしても良い。その最小画像サイズかどうかをステップＳ２４０４で判断する。最小でない場合は、ステップＳ２４０５で画像をそのまま小さく印刷する。もし最小画像サイズより小さくなってしまった場合は、ステップＳ２４０６でテキスト領域の再検討を行う。例えば第１乃至第３の実施形態のように文字を小さくすることも含めて再検討をする。若しくは表示画像が一定サイズ以下になった場合は、画像を非表示とし、撮影情報のみを印刷する。
【００７９】
以上のように、本実施形態によれば、ユーザーは文字の最低限の視認性を保ちつつ、インデックス印刷を行うことが可能となる。
【００８０】
（第６の実施形態）
本実施形態では、図２０のように、ユーザーに画像サイズ指定部１６０１で画像の大きさを指定させ、またフォントサイズ指定部１６０２で文字の大きさも指定させる。そして、インデックス印刷の配置は、用紙の余白が最小になるように自動的に決定する。文字サイズも画像の大きさも固定とする場合に最適な処理となる。
【００８１】
例えば、図２１に示すように、画像サイズ指定部１６０１で設定されたサイズの画像１９０１、及びフォントサイズ指定部１６０２で設定されたフォントサイズの撮影情報１９０２があるとする。それぞれのサイズが決まっているので画像領域と、フォントサイズとから必要印刷領域を求めることが出来る。それを求めたら用紙に対して最も効率の良い、つまり余白が最小になる並べ方を設定する。
【００８２】
例えば用紙１９０３上に、画像１９０１及び撮影情報１９０２を効率良く並べる様々な配置をプログラムで検討し、この場合、１列目に画像を並べて、２列目に撮影情報を１列で並べることが最も効率が良いと判断し、レイアウトを行う。
【００８３】
また並べ替える際は、余白を最小限にすることを目的とするので、画像とテキスト印刷領域の並び方が用紙１９０３の場合のように同じである必要は無い。例えば、用紙１９０４にレイアウトする際に、画像と撮影情報を縦に並べた物と、画像と撮影情報を横に並べた物が混在しても良い。
【００８４】
このように、画像と撮影情報のサイズをあらかじめ決めておくことで、印刷領域を先に求め、用紙の余白が最小になるように様々な組み合わせを検討し最適なレイアウトで配置をする。
【００８５】
以上のように、本実施形態によれば、画像サイズ、文字サイズ共に、ユーザーが望むインデックス印刷を提供することが可能となる。
【００８６】
（第７の実施形態）
本実施形態では、図２０の画像サイズ指定部１６０１で画像サイズを設定し、フォントサイズ指定部１６０２でフォントサイズを設定し、更にレイアウトも固定とする印刷方法において、すべての情報が入りきらない場合は、用紙を自動的に大きくする。
【００８７】
図２２は、用紙の大きさと、画像及び撮影情報の関係を示す図である。また、図２３は、用紙の大きさを自動的に変更する動作を示すフローチャートである。
【００８８】
例えば、画像と撮影情報を縦に並べて、用紙に１列で並べる場合を考える。まず、図２２に示すように、用紙としてＬ版の用紙２００１が指定されているとすると、ステップＳ２５０１で、指定されたレイアウトでが面上に描画を行う。指定されたレイアウトでが面上に描画した時に、はみ出しが生じるかどうかのチェックをステップＳ２５０２で行う。はみ出し領域が無ければ処理を終了する。はみ出しが生じたと判断した場合は、ステップＳ２５０３でプリンタから情報を取得し、そのプリンタが印刷可能な用紙サイズの一覧を取得する。取得した用紙サイズの中で現在の設定よりも大きな用紙がある場合、設定を自動的に変更し、ステップＳ２５０３でが面上に再描画を行い、ステップＳ２５０２でチェックを行う。もしその用紙が適当であるならば処理を終了する。この繰り返しを行う事で、適切な用紙を探索する。
【００８９】
ステップＳ２５０４で最適な用紙が取得出来なかった場合は、ステップＳ２５０６でレイアウトの再検討を促して終了する。
【００９０】
このように用紙を自動的に大きくして印刷を行うことで、画像も小さくせず、文字も小さくせず、レイアウトも変えずに、ユーザーが希望する全ての撮影情報を印刷することが可能となる。
【００９１】
（第８の実施形態）
本実施形態では、撮影情報の個数を変えることで、自動的にレイアウトを変える。
【００９２】
図２４は、レイアウトの設定画面を示す図であり、図２５は、画面上の画像と撮影情報の配置を示す図である。また、図２６は、本実施形態の動作を示すフローチャートである。
【００９３】
例えば、ユーザーは、図２４の設定画面で予め図２５の２２０１のようにレイアウトを決定していたとする。行数指定部２１０１で行数の設定、列数指定部２１０２で列数の設定、撮影情報指定部２１０３で撮影情報の設定、画像サイズ指定部２１０４で画像サイズを設定することでユーザーは詳細にレイアウトを決定することが出来る。撮影情報については、撮影情報指定部２１０３を操作してダイアログ２１０５を開き、エリア２１０６で撮影情報の個数を決定し、フォントサイズ指定部２１０７で撮影情報のフォントサイズを決定する。これらの設定で、行数、列数を２、撮影情報の個数を１１、画像サイズを１６０ピクセルとした状態を示したものが図２５の２２０１である。
【００９４】
これらの設定を終わらせた後に、撮影情報の個数を見直したとする。本実施形態では、撮影情報の個数を１１個から５個に減らし、その他の設定はそのままにしたとする。そうすると、２２０２に示すように用紙に余白が空いてしまう。
【００９５】
本実施形態では、設定変更後、この余白領域を計算し自動的に最適な配置にレイアウトし直す。本実施形態の場合、余白の合計を計算すると、画像及び撮影情報を１行分追加出来るので、２２０１で示すレイアウトを自動的に変更し、２行から３行に増やす。この例は、余白が生じて画像を増やす例であるが、逆に撮影情報を増やした時は画像を減らすことを検討する。
【００９６】
上記処理をフローチャートにすると、図２６のようになる。
【００９７】
まず、ステップＳ２６０１で、再指定されたレイアウトでが面上に描画を行う。その結果、余白が出来たか、用紙に収まらずにはみ出したかの計算をステップＳ２６０２で行う。余白が出来た場合はステップＳ２６０３で余白領域を計算する。用紙に収まらない場合は、ステップＳ２６０６ではみ出し領域を計算する。ステップＳ２６０４で余白若しくははみ出し領域が用紙のどこに出来たかを求める。もし、余白若しくははみ出し領域が下方向に出来ている場合は、ステップＳ２６０５で縦方向にレイアウトの再見直しを行う。また、余白若しくははみ出し領域が横方向に出来ている場合は、ステップＳ２６０７で横方向にレイアウトの再見直しを行う。
【００９８】
これらの処理によって、撮影情報の増減によってレイアウトの再配置が必要になったとしても、プログラム側で自動的に対処でき、ユーザーの負荷を低減することが可能となる。
【００９９】
（第９の実施形態）
上記の第１乃至第８の実施形態では、画像と共に撮影情報を必ず印刷する場合について説明した。この第９の実施形態では、印刷するものを画像のみとするか、画像と共に撮影情報をも印刷するかをユーザーが選択可能とする。
【０１００】
具体的には、図５に示す設定画面において、撮影情報リストに、「撮影情報なし」の項目を設け、ユーザーがこれを選択可能とする。これにより、ユーザーは、図５に示す設定画面において、撮影情報を印刷させないことも可能であり、且つ印刷させる撮影情報の数を選択することも可能となる。
【０１０１】
この場合、パーソナルコンピュータシステムは、用紙に印刷させる画像の数を以下のように制御する。
【０１０２】
まず、ユーザーが撮影情報を印刷させないことを選択した場合、撮影情報を印刷させない分だけ画像を多く印刷できるので、縦長用紙の場合では、例えば、縦方向に４行、横方向に２列の合計８枚の画像を１枚の用紙に印刷する。
【０１０３】
また、ユーザーが撮影情報を１個〜４個印刷させることを選択した場合は、撮影情報の分だけ画像の印刷領域が減るので、例えば、縦方向に３行、横方向に２列の合計６枚の画像を１枚の用紙に印刷する。
【０１０４】
また、ユーザーが撮影情報を５個〜１０個印刷させることを選択した場合は、画像の印刷領域がさらに減るので、例えば、縦方向に２行、横方向に２列の合計４枚の画像を１枚の用紙に印刷する。
【０１０５】
このようにすることで、撮影情報の増減（０も含む）によってレイアウトの再配置が必要になったとしても、プログラム側で自動的に対処でき、ユーザーの負荷を低減することが可能となる。
【０１０６】
なお、上記の撮影情報の個数と、１枚の用紙に印刷する画像の枚数の組み合わせは、単なる一例であり、他の組み合わせでもよいことは言うまでもない。
【０１０７】
（他の実施形態）
また、各実施形態の目的は、次のような方法によっても達成される。すなわち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、本発明には次のような場合も含まれる。すなわち、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【０１０８】
さらに、次のような場合も本発明に含まれる。すなわち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【０１０９】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した手順に対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１１０】
【図１】従来の印刷ソフトウェアの例を示す図である。
【図２】本発明の実施形態におけるコンピュータシステムの構成例を示す図である。
【図３】本発明の実施形態におけるソフトウェアとハードウェアを含む情報管理装置の全体構成例を示す図である。
【図４】本発明の実施形態におけるソフトウェアのＵＩ例を示す図である。
【図５】本発明の第１の実施形態における印刷する撮影情報を設定するＵＩ例を示す図である。
【図６】表示情報が印刷領域をはみ出した場合の概念図である。
【図７】表示情報が印刷領域をはみ出した場合に情報処理装置が行う処理のフローチャートである。
【図８】印刷結果の文字が小さくなってしまうと判断した場合に表示するダイアログ例を示す図である。
【図９】警告を表示する場合の文字のポイントを設定するダイアログ例を示す図である。
【図１０】警告表示から印刷までのフローチャートである。
【図１１】出力機器の解像度により、警告を表示する閾値となるフォントサイズを変更するフローチャートである。
【図１２】表示可能な撮影情報数を設定ダイアログ内に表示した例を示す図である。
【図１３】最大表示情報数を計算するフローチャートである。
【図１４】撮影情報に優先度を付けるダイアログ例を示す図である。
【図１５】第４の実施形態における、画像と撮影情報の配置を示す図である。
【図１６】第４の実施形態の動作を示す図である。
【図１７】第５の実施形態における情報処理装置の撮影情報設定ダイアログを表示した状態を示す図である。
【図１８】第５の実施形態における、文字の大きさを変えずに画像を小さくする動作を示すフローチャートである。
【図１９】第５の実施形態における、画像と撮影情報を一列に表示した状態を示す図である。
【図２０】第６の実施形態における設定画面を示す図である。
【図２１】第６の実施形態における、画像と撮影情報の配置を示す図である。
【図２２】第７の実施形態における、用紙の大きさと、画像及び撮影情報の関係を示す図である。
【図２３】第７の実施形態における、用紙の大きさを自動的に変更する動作を示すフローチャートである。
【図２４】第８の実施形態における、レイアウトの設定画面を示す図である。
【図２５】第８の実施形態における、画面上の画像と撮影情報の配置を示す図である。
【図２６】第８の実施形態の動作を示すフローチャートである。
【符号の説明】
【０１１１】
２０１  コンピュータシステム本体
２０２  ディスプレイ
２０３  マウス
２０４  キーボード
２０５  デジタルカメラ
２０６  プリンタ
【図１】
0004795149.tif 000002
【図２】
0004795149.tif 000003
【図３】
0004795149.tif 000004
【図４】
0004795149.tif 000005
【図５】
0004795149.tif 000006
【図６】
0004795149.tif 000007
【図７】
0004795149.tif 000008
【図８】
0004795149.tif 000009
【図９】
0004795149.tif 000010
【図１０】
0004795149.tif 000011
【図１１】
0004795149.tif 000012
【図１２】
0004795149.tif 000013
【図１３】
0004795149.tif 000014
【図１４】
0004795149.tif 000015
【図１５】
0004795149.tif 000016
【図１６】
0004795149.tif 000017
【図１７】
0004795149.tif 000018
【図１８】
0004795149.tif 000019
【図１９】
0004795149.tif 000020
【図２０】
0004795149.tif 000021
【図２１】
0004795149.tif 000022
【図２２】
0004795149.tif 000023
【図２３】
0004795149.tif 000024
【図２４】
0004795149.tif 000025
【図２５】
0004795149.tif 000026
【図２６】
0004795149.tif 000027