以下に、図面を参照しながら、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。また、本発明の目的は後述する実施例の機能を実現するソフトウエアのプログラムコードを記録した記録媒体をシステム、装置に供給し、そのシステムあるいは装置のCPUが記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が後述する実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、後述する実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理を行う場合も含まれる。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれた場合を考える。この場合にはそのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う。この処理によって後述する実施形態の機能が実現される場合も含まれることは言うまでもない。
<実施例1>
以下、本発明の一実施例を具体的に説明する。
図1は実施形態に係るオブジェクト編集システムの詳細な構成を示す図である。オブジェクトとは、電子アルバム等に配置されるデータ、例えば画像データや文字列データをいう。なお、本実施例中でいう画像データとは、印刷に用いるための高解像度画像データのみならず、ディスプレイ等への表示に用いるためのサムネイル等の低解像度画像データも含まれる。
図1において、101は、イメージ情報である光学像を、電気信号に変換し、所定の画像処理をした後、デジタル情報として、メモリに記録したり、LCD(Liquid Crystal Display)上に再生する画像入力装置である。この画像入力装置は、静止画を撮影し、静止画像データとして記録できるデジタルスチルカメラでも、動画を撮影し、動画像データとして記録できるデジタルビデオカメラでも、原稿を読み取るスキャナでもよい。102は、ユーザ用パーソナルコンピュータ(以下、「ユーザPC」とする)であり、画像入力装置101と、記録された画像データを転送するためのデータ転送用インターフェースにより接続されている。データ転送用インターフェースは、USB(UniverSal Serial BuS)、IEEE1394に代表される有線インターフェースの場合や、IrDA、Bluetoothに代表される無線系インターフェースの場合もある。画像入力装置101で撮影されデジタル情報として格納されている画像データは、データ転送用インターフェースを介して、後述するユーザPC102のHDD(ハードディスクドライブ)に記憶される。この画像入力装置101からユーザPC102への画像データ転送に関しては、ユーザPC102にインストールされているOS又は専用のソフトウエアからの命令で、画像入力装置101内の情報記憶装置に格納されている画像データを一括転送する場合がある。また、画像入力装置101から送られる転送コマンドで、ユーザPC102のOS又は専用ソフトウエアが、ユーザPC102の情報記録部に、データ記録領域を確保し、画像データを転送する場合がある。
ユーザPC102上では、インターネット103での情報転送が可能な標準プロトコルを有するブラウザが動作可能である。このブラウザによって、httpプロトコル等の標準プロトコルを用いて後述するフォトサイト104やプリントサイト107等のWebサイトにアクセスする。そしてHTML(Hyper Text Markup Language)、XML(eXtensible Markup Language)等の記述言語で作成されたWeb情報に従い、Webサイトの内容を画面に表示させることができる。104はフォトサイトであり、ユーザPC102により閲覧可能なWeb情報を提供している。フォトサイト104はテンプレート格納部105を有し、ユーザPC102上で動作するアルバム編集プログラムで使用する電子アルバム用のテンプレートを提供している。ユーザはユーザPC102を操作してフォトサイト104にアクセスし、電子アルバム用のテンプレートをユーザPC102にダウンロードし、HDDに保存することができる。また、フォトサイト104は画像データ格納部109を有する。ユーザは画像データ格納部109内の画像データをユーザPC102にダウンロードし、HDDに保存させるサービスを受けることができる。
106はプリンタであって、ユーザPC102に有線ケーブルや無線通信を介して接続されている。ユーザPC102からの指示に応じて、編集された電子アルバムの印刷処理を実行する。
107はプリントサイトである。ユーザは編集が完了した電子アルバムの印刷・製本を、インターネット103を介してプリントサイト107に依頼することが可能である。図1では、プリントサイトを1つ図示したが、これ以上の場合もあり、その数に制限はない。
108は印刷機であり、プリントサイト107からの指示に応じて、編集されたアルバムの印刷処理を実行する。
図2は本発明の好適な実施の形態に係るユーザPC102に相当する情報処理装置の概略構成を示す図である。201は表示装置であり本実施例では一例としてCRT(Cathode Ray Tube)を用いて説明する。その表示画面には、例えば編集中の文書、図形、画像その他の編集情報、アイコン、メッセージ、メニューその他のユーザインタフェース情報が表示される。202はVRAM(Video Random Access Memory)であり、CRT201の表示画面に表示するための画像データが描画される。このVRAM202に生成された画像データは、所定の規定に従ってCRT201に転送され、これによりCRT201に画像データが表示される。203はビットムーブユニット(BMU)であり、メモリ間(例えば、VRAM202と他のメモリ)のデータ転送や、メモリと各I/Oデバイス(例えば、ネットワークインタフェース211)との間のデータ転送を制御する。204はキーボードであり、ユーザが文字列データ等の入力指示を行うための各種キーを有する。205はポインティングデバイス(以下「PD」と呼ぶ)であり、例えば、ユーザがCRT201の表示画面上に表示されたオブジェクトの選択・編集を指示するために使用される。206はCPU(Central Processing Unit)である。CPU206はROM(Read Only Memory)207、ハードディスク又はフロッピー(登録商標)ディスクに格納された制御プログラムに基づいてCPUデバイスに接続された各デバイスを制御する。207はROMであり、各種の制御プログラム等のデータを保持する。208はRAM(Random Access Memory)であり、CPU206のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。209はハードディスク(HDD)である。ハードディスク209は、情報処理装置内で実行される各制御プログラムやコンテンツを格納することができる。例えば、ユーザPC102のハードディスクには、OS(Operating System)、Webブラウザ、電子アルバムデータ、画像データ、テンプレート、アルバム編集プログラムなどが格納されている。210はフロッピー(登録商標)ディスクドライブ(FDD)であり、フロッピー(登録商標)ディスクに対するアクセスを制御する。211はネットワークインタフェースであり、他の情報処理装置やプリンタ等とインターネット103を介して通信を行うことができる。212はバスであり、アドレスバス、データバス及びコントロールバスを含む。CPU206に対する制御プログラムの提供は、ROM207、ハードディスク209から行うこともできるし、インターネット103を介して他の情報処理装置等から行うこともできる。
図3は本実施例に係る電子アルバム編集プログラム(以下、「プログラム」と呼ぶ)の機能構成を示すブロック図である。
301は電子アルバムデータを管理したり、プログラムの全体を制御するためのデータ制御モジュールである。
302はGUI制御モジュールである。GUI制御モジュール302は、データ制御モジュール301により制御されたデータに基づき、プログラムのグラフィカルユーザインタフェース(GUI)を制御し、ユーザに対する操作手段や編集内容を表示する。
303は電子アルバムデータの編集に使用されるレイアウトファイル307、レイアウトテーブル308などのデザイン情報を管理するためのデザイン制御モジュールである。
データ制御モジュール301により管理されている電子アルバムデータの中には、表紙用画像データ304、ページ内画像データ305、画像振分け領域306がある。
表紙用画像データ304は、電子アルバムの表紙に割り振られる画像データである。
ページ内画像データ305は、電子アルバム内の各ページに割り振られる画像データである。
画像振分け領域306はデータ制御部301により管理されるRAM208の一部を用いた領域であって、濃縮時に画像データの再配置に用いられる。
なお、本実施例でいう濃縮とは、電子アルバム内の画像の数を変化させず、電子アルバムのページ数を減らす処理をいう。
レイアウトファイル307は、電子アルバムのレイアウトを定めるファイルである。デザイン制御モジュール303により管理され、後述するレイアウトデータを含む。
レイアウトテーブル308は、デザイン制御モジュール303により管理され、ページを濃縮する際、電子アルバム内の各見開きページに割り付けられる画像の枚数・配置を決定するのに用いられるテーブルである。
尚、本実施形態では、電子アルバムは表紙ページと本文ページで構成され、それぞれ区別して扱われる場合について説明するが、表紙ページと本文ページとを区別せずに同様の扱いにするようにしても、本発明を実現できる。
以下、表紙ページと最終ページ以外で「ページ」という語句を用いるときは、特に断らない限り「見開きページ」を指すものとする。
図4はページ内画像データ305のデータ構成の一例を示す図である。401は画像データファイルである。画像データファイル401は、ファイルデータであってもよいし、ファイルデータの格納位置を示すパスであってもよい。
402は文字データであり、画像データに付属する文字データを保持する。
図5は本実施形態に係るレイアウトファイル307の構成の一例を示す図である。図5に示すレイアウトファイル307は、複数のレイアウトデータ512で構成される。レイアウトデータとは、電子アルバムの1ページ分のレイアウト領域における、画像データや画像データに付属する文字列の配置位置を決定するための情報を記録したデータである。
例えば図5では、電子アルバムの1ページ目に1枚用のレイアウトデータ513、2ページ目に2枚用のレイアウトデータ514・・・という構成になっている。
複数のレイアウトデータ513は、レイアウトタイプという概念でグループ化されている。レイアウトタイプとは、レイアウトデータのデザインの特徴を示すものであり、レイアウトタイプが同じレイアウトデータは、互いに類似したデザインである。レイアウトタイプの例として、「縦型」「横型」「運動会」「結婚式」などがある。
図6は本実施形態に係るレイアウトテーブル308の構成の一例を示す図である。前述したように、レイアウトテーブルは、ページを濃縮する際に、電子アルバム内の各ページに割り付けられる画像データの枚数・配置を決定するのに用いられるテーブルである。レイアウトテーブルには各種のレイアウトデータがデータ制御モジュール301は、濃縮後のページで使用するレイアウトタイプと、ページに配置される画像データ枚数を検索条件として、レイアウトテーブル308を検索し、使用するレイアウトデータを決定する。
図6に示すレイアウトテーブル308は、レイアウトタイプA501、レイアウトタイプB502、レイアウトタイプC503のレイアウトデータに対応している。また、レイアウトタイプA,Bは、ページ内に画像データが1枚〜5枚含まれる場合に対応するレイアウトデータに対応している。例えば、電子アルバム上にレイアウトタイプA501を使用して画像データを3枚配置するページを作成する場合を考える。この場合には、データ制御モジュール301により、レイアウトタイプA501の3枚用レイアウトデータ512が読み出され使用される。
図6では、レイアウトタイプはレイアウトタイプA501、レイアウトタイプB502、レイアウトタイプC503に分類されている。各レイアウトタイプは、ページに含まれる画像データの数に対応したレイアウトデータを有している。511は編集の対象となるレイアウト領域を示している。504〜510は、電子アルバムに取り込んだ際に画像データを配置する画像配置枠である。また、各画像配置枠内に図示されている1、2,3・・・の数字は、レイアウトデータ内での画像の位置を一意に決定するための画像配置枠番号である。
本実施例におけるレイアウトタイプは、枠のサイズが一番大きな画像配置枠が同じ位置に固定されているレイアウトデータを、特徴が同じとして分類している。例えば、レイアウトタイプA501では、画像配置枠504〜508が、ページ内の占有率が大きく、配置位置も同じであるため、同じレイアウトタイプとして分類されている。
この特徴を表している画像配置枠には必ず画像配置枠番号1を割り当てる。その他の画像配置枠については、レイアウトデータの画像配置枠数だけ一意になる番号を順に割り当てる。なお画像配置枠番号は、あらかじめ割り当てておく。
図7は本実施形態に係る画像振分け領域306の構成の一例を示す図である。画像振分け領域306は表紙ページ用領域、2、3ページ用領域・・・最終ページ用領域と仮置き領域に分かれており、濃縮によって画像データを再配置する際に使用する。
なお、ページ用領域の「ページ」は、見開きではなく通常の1ページを意味する。すなわち、「2、3ページ用領域」とは見開き1ページ分の領域を指す。
以下、図7を参照して画像振分け領域306を説明する。
画像振分け領域306は、表紙ページ用領域701、2ページ用領域702・・・最終ページ用領域703、仮置き領域704に分かれている。705〜708は画像データファイル、またはファイルデータの格納位置を示すパスを保持する。709〜712は画像データに付属する文字データを保持する。713〜716は画像データの移動順序を決定する画像データ番号を保持する。濃縮するページ、すなわち削除する予定のページに配置されている画像データと文字データは、画像振分け領域306のページ用領域701〜703または仮置き領域704へ移動される。また、濃縮処理ではページ数の減少に伴い、濃縮後も使用されるレイアウトデータと使用されないレイアウトデータが存在する場合がある。使用されるレイアウトデータのページに配置されている画像データは、対応するページ用領域701〜703へ移動される。使用されないレイアウトデータに配置されている画像データは仮置き領域704へ移動される。
画像データ番号は、画像データおよび文字データを移動した際、各領域内で一意になる画像データ番号を1から順に割り当てる。
尚、濃縮によって再配置が必要となる画像データは、濃縮後の指定ページ数内に収まるように割り振られる。レイアウトデータに定められた画像データ枚数の制限、例えば図5のレイアウトタイプA501では最大5枚、といった制限により、割り振りが不可能な場合は、ユーザへ警告が通知される。
図8は本実施形態に係る電子アルバムのページを濃縮する処理の流れを説明するフローチャート図である。
この処理は、ユーザPC102のCPU206が、ROM207あるいはHDD209からプログラムを読み出し、プログラムの手順を実行することで実現される。
ステップS801では、まずユーザがPD205を用いて電子アルバムの全ページの中から濃縮するページを選択する。この場合、ユーザは表紙用ページを選択することも可能である。ユーザがページを選択後、実行ボタン905をクリックすると、CPU206は選択されたページを濃縮の対象として設定し、RAM208に記憶する。
図9において、901は電子アルバムの中から濃縮するページを選択する画面でありCRT201に表示される。選択されたページは明示されるよう、CPU206により太枠表示する処理が施される。
図9では一例として、ページ902、903、904が選択されたことを表している。ここで、ページ902は見開き4&5ページ、ページ903は見開き8&9ページ、ページ904は見開き10&11ページを表している。
ステップS802では、ユーザはPD205を用いて濃縮後のページ数を指定する。CPU206は、ユーザからページ数指定の操作を受けると、濃縮後のページ数を指定されたページ数に設定し、RAM208に記憶する。
なお、ステップS801の処理が行われないまま実行ボタン905がユーザによってクリックされた場合には、CPU206はまずアルバムの全ページを濃縮の対象として設定する。その後、ステップS802の処理を行う。
図10において、1001は濃縮後のページ数を指定する画面である。図10では一例として1002の濃縮後のページ数入力欄に「2」ページが入力されたことを表している。1003にはステップS801で選択されたページ数が表示される。すなわち図10に示す画面では、ページ902、903、904の見開き3ページ分が、見開き2ページ分に濃縮されることを意味している。
ステップS803において、CPU206は、ステップS801で選択された各ページに配置されている画像データ数から、画像データ数の総画像データ数を算出し、RAM208に記憶する。
図9では、各ページの画像データ数はページ902が3枚、ページ903が3枚、ページ904が3枚である。従って、総画像データ数は合計して9枚である。
ステップS804において、CPU206は、ステップS802で指定された濃縮後のページ数からレイアウトタイプを決定する。レイアウトタイプを決定する方法として、ステップS801で選択されたページの中で、ページ番号が小さいページのレイアウトタイプから順にページ数分決定する方法がある。
図9、図10を例にすると、図9でページ902、903、904が選択され、図10で濃縮後のページ数が2ページと指定された。ステップS801で選択したページの中で、番号が小さいページは902である。従って、902から順に2ページ分がレイアウトタイプとして決定される。すなわち、ページ902、903のレイアウトタイプが使用するレイアウトタイプとして決定される。
もちろんレイアウトタイプの決定方法は本実施例の方法には限定されない。例えば、ページ番号が大きいページから順にページ数分決定してもよい。また、ステップS801で選択したページの中で最も多く使用されていたレイアウトタイプを、濃縮後のすべてのページに使用するようにしてもよい。
ステップS805において、CPU206は、ROM207又はハードディスク209からレイアウトテーブル308を読み出す。
ステップS806において、CPU206はステップS804で決定した各ページのレイアウトタイプについて、ステップS805で読み出したレイアウトテーブル308を検索する。そして各ページに対応したレイアウトタイプのレイアウトデータに配置可能な最大の画像データ数(以下、「最大配置枚数」とよぶ)を取得する。またページ毎に取得した最大配置枚数の合計値を算出し、RAM208に記憶する。
ステップS807において、CPU206はステップS803で算出した総画像データ数とステップS806で算出した最大配置枚数の合計値をRAM208から読み出し、比較する。この比較により、濃縮するページに配置されている画像データ数がレイアウトデータに配置可能な範囲内か否か判定する。配置可能な範囲内と判断した場合には、処理をステップS808に進める。配置可能な範囲内でないと判断した場合には、処理をステップS813に進める。
ステップS813において、CPU206はCRT201に警告ダイアログを表示し、処理を終了する。図16は警告ダイアログの一例を示す図である。この処理により、ユーザはレイアウト領域にすべての画像を配置できないことを知ることができる。
ステップS808において、CPU206はステップS801で選択されたページのうち最小のページ番号の画像配置枠番号1に配置されている画像データから順に、画像振分け領域306のページ用領域701〜703または仮置き領域704へ移動する。すなわち、CPU206はROM207又はハードディスク209から画像データを読み出し、RAM208内の画像振分け領域306に記憶する。CPU206は移動された順にその領域で一意となる画像データ番号を1から順に割り当てる。尚、画像データに付属する文字データがある場合は、画像データとともに文字データも移動する。
図9を例にすれば、CPU206はページ902の画像データを図7の2、3ページ用領域702に、ページ903の画像データを図7の4、5ページ用領域(図示せず)に移動する。そして濃縮後は削除されるページであるページ904の画像データは仮置き領域704に移動する。
図11は、レイアウトデータの一例である。1101、1102、1103は図9で選択したページに対応したレイアウトデータである。ページ902のレイアウトデータが1101、ページ903のレイアウトデータが1102、ページ904のレイアウトデータが1103である。各レイアウトデータ内の枠1104は画像配置枠を表し、枠内の数字は画像配置枠番号を表す。CPU206による画像データの画像振分け領域306への移動は、ページ902の画像配置枠1の画像データから行われる。CPU206はページ902の全画像データを移動し終えたら、続いてページ903、904のそれぞれ画像配置枠1の画像データから順に行う。尚、画像データに文字データが付属していた場合は、画像データとともに文字データは移動される。
ステップS809において、CPU206は、ステップS808で仮置き領域704に移動した画像データを、濃縮後に使用するページの画像振分け領域306のページ用領域701〜703に移動する。移動の順番は仮置き領域704内の画像データ番号順である。
この移動の際に、CPU206は、各ページに移動させる画像の数がステップS806で取得した各レイアウトタイプの対応する画像データ数の範囲内で均等になるよう移動する。
図9の場合であれば、ページ904の画像データの総数3を2ページに均等に配置する。すなわち、濃縮後の1ページ目に2枚、2ページ目に1枚(または1ページ目に1枚、2ページ目に2枚)の画像データを配置する。
移動後、CPU206は移動した画像データに画像データ番号713〜715を割り当てる。尚、画像データに付属する文字データがある場合は、画像データとともに文字データも移動する。
なお、画像の配置方法はこの方法に限定されない。例えば、次のような方法も考えられる。
CPU206はステップS808ですべての画像データを仮置き領域704に移動し、画像データ番号716を付与する。この際、ページ902の画像配置枠1の画像データから行われる。CPU206はページ902の全画像データを移動し終えたら、続いてページ903、904のそれぞれ画像配置枠1の画像データから順に行う。
そしてCPU206は各ページで画像枚数が均等になるよう画像の配置枚数を決定し、画像データ番号716の順にページ用領域702〜703に画像データを移動する。
この方法であれば、濃縮前の画像データの順番が保たれたまま濃縮処理が行われる。この方法は、後述する希釈処理にも用いることが可能である。
ステップS810において、CPU206は各ページに用いるレイアウトデータを決定する。
決定はステップS804で決定したレイアウトタイプとステップS808、S809で画像振分け領域306のページ用領域701〜703に振り分けられた画像データ枚数に基づいて行う。CPU206はレイアウトタイプと画像データ枚数を検索条件とし、レイアウトテーブル308を検索する。そして検索条件に合致したものをレイアウトデータとして決定する。
ステップS811において、CPU206はステップS801で選択されたページに設定されているレイアウトデータを削除し、ROM207又はハードディスク209よりステップS810で決定したレイアウトデータを読み出す。
ステップS812において、CPU206はステップS811で読み出したレイアウトデータに、ステップS809で振り分けた画像データを配置し、濃縮処理を完了する。尚、画像データに付属する文字データがある場合、画像データとともに文字データを配置する。
図12は、図9で選択した見開き3ページを2ページに濃縮し、画像データを再配置した例である。濃縮処理によって、図9のページ902の画像データA、B、Cは、ページ1201に配置されている。ページ903の画像データD、E、Fは、ページ1202に配置されている。そしてページ904に配置されていた画像データG、H、Iは、ページ1201とページ1202に振り分けられている。尚、図9のページ904に対応するページは画像データが配置されていない空白ページとしてもよいし、自動的にアルバムから削除されるようにしてもよい。空白ページとする場合には、該ページに新たな画像を追加することが可能になる。
なお、濃縮されたページは、ステップS801で選択されたページのうち、最も小さなページ番号を有するページがあった箇所に配置される。
本発明は、濃縮後のレイアウトデータに、濃縮前のレイアウトデータと同じレイアウトパターンのものを用いる。従って、ユーザはレイアウトを再度考慮することなく、濃縮前と同じ特徴を有したレイアウトを得ることができる。
<実施例2>
上記実施例1では、編集中の電子アルバムのページを削減する場合の濃縮処理を説明したが、本発明は他の電子アルバムからの複数ページの取り込み(インポート)にも適用可能である。例えば、他の電子アルバムの複数ページを編集中の電子アルバムに取り込みたい場合、編集中の電子アルバムのページ制限により、ページを濃縮してから取り込まなくてはいけないときがある。以下、インポート処理の実施形態について説明する。
尚、本実施形態に係るシステム構成など、実施例1と同様の部分は説明を省略し、実施例2の特徴ある部分を中心に説明する。
図13は、本実施例における他の電子アルバムから編集中の電子アルバムにページをインポートする処理の流れを説明するフローチャート図である。この処理はユーザPC102のCPU206が、ROM207あるいはハードディスク209からプログラムを読み出して起動し実行することで実現される。
前提として、本実施例における電子アルバムには、予め設定できるページ数の範囲が設定されているものとする。
まず、ステップS1301において、ユーザはPD205を用いてインポートするページを含む電子アルバムを選択する。CPU206は、ユーザからの選択操作を受けると、選択されたアルバムをインポート処理の対象として設定する。
図14は、インポートする電子アルバムを選択する画面である。CPU206はROM207あるいはハードディスク209に記憶されている電子アルバムを読み出し、CRT201に一覧表示する。選択されたページは明示されるようマスク表示処理が施される。図14はアルバムBが選択された状態を示す。
ステップS1302において、ユーザはPD205を用いて、ステップS1301で選択した電子アルバムの全ページの中からインポートするページを選択する。尚、ユーザは表紙用ページを選択することも可能である。CPU206は、ユーザからの選択操作を受けると、選択されたページをインポート処理の対象として設定する。
ステップS1303では、ユーザはPD205を用いて濃縮後のページ数を指定する。CPU206は、ユーザからの指定の操作を受けると、濃縮後のページ数を指定されたページ数に設定する。
ステップS1304において、CPU206は、ステップS1303で設定したインポート後のページ数が、電子アルバムにおいて利用可能なページ数の範囲内か判断する。CPU206は、範囲内であると判断した場合には処理をステップS1305に進める。範囲内でないと判断した場合には処理をステップS1315に進める。
ステップS1305においてCPU206は、ステップS1301で選択された各ページに配置されている画像データ数を検知し、画像データ数の総画像データ数を算出する。
以下のフローは、実施例1と同様である。本実施例では、ステップS1310において、他のアルバムから画像データを移動させる処理を行う。
なお、濃縮されたページは、ステップS1302で選択されたページで編集中のアルバムに属するもののうち、最も小さなページ番号を有するページがあった箇所に配置される。
<実施例3>
上記実施例1及び2では、アルバムの濃縮、すなわちページ数を減らす処理について説明した。しかし、本発明はアルバムの濃縮のみならず、アルバムの希釈にも適用できる。ここでいうアルバムの希釈とは、アルバム内の画像データの数を変えずにページ数を増やすことをいう。以下、本実施例においてアルバムを濃縮・希釈する処理について説明する。
以下、実施例1、2と同様の部分は説明を省略し、実施例3の特徴ある部分を中心に説明する。
図15は、本実施例の流れを説明するフローチャート図である。この処理はユーザPC102のCPU206が、ROM207あるいはハードディスク209からプログラムを読み出して起動し実行することで実現される。
ステップS1501でユーザやCPU206が行う動作は実施例1のステップS801と同様である。ステップS1502では、実施例1のステップS802と同様の処理を行う。ここでユーザは、図10中の入力欄1002に、選択されたページ数1003よりも大きな数値を入力することが可能である。
ステップS1503において、CPU206は、ステップS1501で設定したページのページ数と、ステップS1502で設定したページ数を比較する。
ステップS1504において、CPU206は、ステップS1503での比較の結果、ステップS1502で設定したページのページ数の方が大きいと判断した場合には、処理をステップS1506に進める。ステップS1502で設定したページのページ数の方が小さいと判断した場合には、処理をステップS1505に進める。
ステップS1505では濃縮処理を行う。濃縮処理は図8のステップS803〜ステップS813と同様の処理であるため、ここでは説明を省略する。
ステップS1506以下は希釈処理を行う。
ステップS1506において、CPU206は、ステップS1501で選択された各ページに配置されている画像データ数から、画像データ数の総画像データ数を算出し、RAM208に記憶する。
ステップS1507において、CPU206は希釈後のからレイアウトタイプを決定する。以下、レイアウトタイプの決定方法について述べる。CPU206はまず、ステップS1502で選択されたページのレイアウトタイプを、そのまま希釈後のレイアウトタイプとして決定する。さらに、希釈の場合はページ数が増加するため、増加分のページのレイアウトタイプを決定しなければならない。決定の方法として、ステップS1502で選択されたページの中で、ページ番号が小さいページのレイアウトタイプから順に増やすページ数分決定する方法がある。
具体的な例を用いて考える。例えば、図9でページ902、903、904が選択され、ステップS1502ではページ数が4と指定されたとする。
この場合、まずページ902、903、904のレイアウトタイプが希釈後のレイアウトタイプとして決定される。これで3ページ分のレイアウトタイプが決定する。さらに、新たに増える1ページのレイアウトタイプは、最も番号が小さいページであるページ902のレイアウトタイプに決定される。
もちろん、決定の方法はこの実施例に限定されるものではない。例えば、最も番号が大きいページのレイアウトタイプを用いてもよいし、ステップS1501で指定されたページの中で最も多く使用されていたレイアウトタイプを用いてもよい。ステップS1508は実施例1のステップS805と同様であるため説明を省略する。
ステップS1509において、CPU206は画像振分け領域306に希釈後に増加するページのためのページ用領域を追加する。例えば、3ページの電子アルバムを4ページに希釈する場合には、画像振分け領域306に7〜8ページ用領域、すなわち見開き4ページ目のページ用領域が追加される。
ステップS1510において、CPU206はページ用領域701〜703に画像データを振分ける。
ステップS1511において、CPU206はページ用領域701〜703にある画像データの一部をステップS1509で追加したページ用領域に移動する。移動の順番は仮置き領域704内の画像データ番号順である。
この移動の際、CPU206は、全ページで画像の数が均等になるように移動させる画像の数を決定する。
さらに、各ページから移動させる画像の数がステップS1509で取得した各レイアウトタイプの対応する画像データ数の範囲内で均等になるよう移動する。
図9の場合であれば、ページ902〜904の画像データの総数9を4ページに均等に配置する。従って、各ページの画像データ数の組み合わせは2枚、2枚、2枚、3枚となる。どのページを3枚にするかは種々の決定方法があるが、本実施例ではページ番号が大きいほど多くの画像データが配置されるものとする。
従って、ページ902〜904に配置されていた画像が1枚ずつ移動され、新規に追加されたページには3枚の画像が配置される。
ステップS1512からステップS1514は実施例と同様であるから、ここでは説明を省略する。
なお、希釈・濃縮されたページは、ステップS801で選択されたページのうち、最も小さなページ番号を有するページがあった箇所に配置される。
本実施例によれば、ユーザは画像の数を変更することなく、また、改めてレイアウトし直すことなく、電子アルバムのページ数を増やすことが可能になる。