(57)【要約】【課題】  １つのテンプレートを異なる版形に適用させることが可能な自動レイアウトシステムを実現する情報処理技術を提供する。【解決手段】  テンプレート上に配置されたコンテナ間にリンクを作成し、データが該コンテナに入力されることに従って、該リンクに応じたレイアウト処理を実行する情報処理装置における情報処理方法であって、前記テンプレートに設定された用紙サイズに基づいて、該テンプレート内においてコンテナを配置することが可能な領域を決定する工程（ステップＳ１２０３）と、前記領域の境界線と、前記コンテナとを関連付けるリンクを作成する工程（ステップＳ１２０４）と、前記テンプレートに設定された用紙サイズが変更された場合に、前記コンテナの位置およびサイズを、前記作成工程において作成されたリンクに応じて、変更する工程（Ｓ１２０７）とを備える。【選択図】  図１２
2010113479.tif 000002
【特許請求の範囲】
【請求項１】
テンプレート上に配置された部分領域どうしを関連付けるリンクを作成し、データが該部分領域に入力されることに従って、作成されたリンクに応じたレイアウト処理を実行する情報処理装置であって、
前記テンプレートに設定された用紙サイズに基づいて、該テンプレート内において前記部分領域を配置することが可能な領域を、該テンプレートを構成するページ毎に決定する決定手段と、
前記領域の外縁を規定する境界線と、前記部分領域とを関連付けるリンクを作成する作成手段と、
前記テンプレートに設定された用紙サイズが変更され、前記領域が変更された場合に、前記部分領域の位置およびサイズを、前記作成手段により作成されたリンクに応じて、変更する再配置手段と  を備えることを特徴とする情報処理装置。
【請求項２】
前記データが前記部分領域に入力されることに従って、前記部分領域どうしを関連付けるリンクと、前記境界線と前記部分領域とを関連付けるリンクとに応じたレイアウト処理を実行することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記作成手段は、
前記テンプレート上に部分領域が新たに配置されるごとに、該新たに配置された部分領域の各辺と、該各辺に対向する位置にある前記境界線とを関連付けるリンクを、自動的に作成することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記作成手段は、
前記自動的に作成されたリンクによって関連付けられた辺が、新たに、他の部分領域の辺と関連付けられた場合には、該自動的に作成されたリンクを自動的に削除することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記再配置手段により、前記部分領域を再配置することで、該部分領域どうしが重なり合う場合には、該部分領域の大きさを縮小することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
テンプレート上に配置された部分領域どうしを関連付けるリンクを作成し、データが該部分領域に入力されることに従って、作成されたリンクに応じたレイアウト処理を実行する情報処理装置における情報処理方法であって、
前記テンプレートに設定された用紙サイズに基づいて、該テンプレート内において前記部分領域を配置することが可能な領域を、該テンプレートを構成するページ毎に決定する決定工程と、
前記領域の外縁を規定する境界線と、前記部分領域とを関連付けるリンクを作成する作成工程と、
前記テンプレートに設定された用紙サイズが変更され、前記領域が変更された場合に、前記部分領域の位置およびサイズを、前記作成工程において作成されたリンクに応じて、変更する再配置工程と
を備えることを特徴とする情報処理方法。
【請求項７】
請求項６に記載の情報処理方法をコンピュータによって実行させるためのプログラムを格納したコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドキュメント上のデータのレイアウトを制御するための情報処理技術に関するものである。
【背景技術】
【０００２】
商品の多品種化による商品のライフサイクルの短縮化に加え、一般家庭へのインターネットの普及に伴い、近年、消費者のカスタマイズサービス指向は、ますます強くなる傾向にある。このため、ＣＲＭ（Ｃｕｓｔｏｍｅｒ  Ｒｅｌａｔｉｏｎｓｈｉｐ  Ｍａｎａｇｅｍｅｎｔ）や、Ｏｎｅ−ｔｏ−Ｏｎｅマーケティングといった、カスタマイズサービスのための手法が注目されるようになってきている。これらの手法が取り入れられることにより、顧客満足度を向上させ、顧客の開拓や囲い込みが可能となるからである。
【０００３】
Ｏｎｅ−ｔｏ−Ｏｎｅマーケティングとはデータベース・マーケティングの一種で、顧客の年齢、性別、趣味、嗜好、購買履歴等の個人属性情報をデータベース化し、その内容を分析することで、顧客のニーズに合った提案を行うものである。
【０００４】
一方、このようなカスタマイズサービス指向の高まりに加え、近年のデスクトップパブリッシング技術の進展並びにデジタル印刷装置の普及に伴って、ドキュメントを顧客毎にカスタマイズして出力するバリアブルプリントシステムの開発が進められている。更に、バリアブルプリントシステムの開発に付随して、顧客毎に異なる量のデータを最適にレイアウトするための、自動レイアウトシステムの開発も進められている。
【０００５】
ここで、従来の自動レイアウトシステムは、ドキュメント上に固定サイズのコンテナをレイアウトし、データベースとコンテナとを関連付けることにより、ドキュメント上におけるデータの自動レイアウトを実現するものであった。しかし、コンテナのサイズを固定とすると、コンテナに挿入されたデータ量がコンテナサイズに比べて大きい場合に、データのオーバーラップや欠落等が発生してしまう。また、反対にコンテナに挿入されたデータ量がコンテナサイズに比べて小さい場合に、隙間が空いてしまう。
【０００６】
このため、現在の自動レイアウトシステムは、定義されたテンプレート上において、コンテナのサイズを可変に設定できるよう構成されている。この結果、挿入されるデータ量に応じてコンテナのサイズを自動的に変更することが可能となっている。
【０００７】
更に、挿入されるデータがテキストの場合にあっては、固定のコンテナサイズ内に収まらない量のデータが挿入された際に、テキストのフォントサイズを自動的に縮小し、コンテナ内に全てのテキストが表示されるように制御することも可能となっている。
【０００８】
しかしながら、上述のようにコンテナサイズを自動的に大きくする構成とした場合、同じドキュメント上の他のコンテナと重なってしまうことが考えられる。またフォントサイズを自動的に小さくする構成とした場合には、挿入されるテキストの量が所定量以上になると、フォントサイズが小さくなりすぎてしまうという不具合が生じえる。
【０００９】
そこで、自動レイアウトシステムでは、更に、所定のコンテナのサイズが変更された場合に、当該コンテナに隣接した他のコンテナのサイズも自動的に変更されるように制御する構成が提案されている（例えば、特許文献１）。
【００１０】
また、「フローエリア」と称される機構を導入し、基本形状が定められたサブテンプレートを該フローエリア内部にフローさせることで、複数の類似したデータをページ内の特定領域内に任意の間隔で配置する構成等も提案されている（特許文献２参照）。
【００１１】
更に、１ページ上に複数のフローエリアを配置したり（特許文献３、４）、複数のフローエリア間をリンクして相互にサイズ調整する構成等も提案されている（特許文献５）。
【特許文献１】特開２０００−４８２１６号公報
【特許文献２】特願２００４−０２４５８７号公報
【特許文献３】特開２００６−２２１５８２号公報
【特許文献４】特開２００５−２１６１８２号公報
【特許文献５】特開２００６−７４２２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
ここで、上述した自動レイアウトシステムは、いずれも作成されるテンプレートが、出力される用紙のサイズ、特に版形（Ａ４版、Ｂ５版、ＵＳＬｅｔｔｅｒサイズなど）に依存した構成となっている。このため、例えば、出力される用紙サイズの版形を変更した場合には、テンプレートを編集しなおさなければならない。つまり、上述した自動レイアウトシステムの場合、版形ごとにテンプレートを作成しておく必要があった。
【００１３】
しかしながら、すべての版形に対応してテンプレートを作成しておくことは、ユーザの作業負荷の増大につながるうえ、作成したテンプレートの管理も困難なものとなる。
【００１４】
本発明は上記課題に鑑みてなされたものであり、１つのテンプレートを異なる版形にも適用させることが可能な自動レイアウトシステムを実現する情報処理技術を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記の目的を達成するために本発明に係る情報処理装置は以下のような構成を備える。即ち、
テンプレート上に配置された部分領域どうしを関連付けるリンクを作成し、データが該部分領域に入力されることに従って、作成されたリンクに応じたレイアウト処理を実行する情報処理装置であって、
前記テンプレートに設定された用紙サイズに基づいて、該テンプレート内において前記部分領域を配置することが可能な領域を、該テンプレートを構成するページ毎に決定する決定手段と、
前記領域の外縁を規定する境界線と、前記部分領域とを関連付けるリンクを作成する作成手段と、
前記テンプレートに設定された用紙サイズが変更され、前記領域が変更された場合に、前記部分領域の位置およびサイズを、前記作成手段により作成されたリンクに応じて、変更する再配置手段とを備える。
【発明の効果】
【００１６】
本発明によれば、１つのテンプレートを異なる版形にも適用させることが可能な自動レイアウトシステムを提供することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら、本発明の好適な実施の形態について説明する。
【００１８】
［第１の実施形態］
１．自動レイアウトシステムの構成例
図１Ａ及び図１Ｂを参照して、本発明の一実施形態にかかるホストコンピュータ（情報処理装置）を備える自動レイアウトシステムの構成例を説明する。
【００１９】
図１Ａは自動レイアウトシステム１００の構成例を示すブロック図である。また、図１Ｂは図１Ａに示されたホストコンピュータ（情報処理装置）１０１の構成を更に詳細に示したブロック図である。
【００２０】
１．１  全体構成
自動レイアウトシステム１００は、ホストコンピュータ１０１（汎用コンピュータモジュールで構成される情報処理装置）を備える。自動レイアウトシステム１００では、ホストコンピュータ１０１がレイアウト編集アプリケーションプログラム１２１を実行することにより、後述する「レイアウト編集処理」及び「自動レイアウト処理」等を実現する。
【００２１】
レイアウト編集アプリケーションプログラム１２１は、２つのソフトウェアコンポーネントを備える。
【００２２】
第１のコンポーネントはレイアウトエンジン１０５であり、各コンテナにデータを挿入し、所定の制御条件のもとで挿入されたデータのテンプレート内におけるレイアウトを計算する（「自動レイアウト処理」を実行する）。このレイアウト計算（自動レイアウト処理）により、ドキュメントが生成される。
【００２３】
第２のコンポーネントはユーザインタフェース１０３であり、「レイアウト編集処理」を実行することにより、テンプレートを生成する。また、生成したテンプレートにおいて、各コンテナと該コンテナに挿入されるデータとの関連付けを行う。
【００２４】
ユーザインタフェース１０３とレイアウトエンジン１０５とはコミュニケーションチャネル１２３を介して通信する。
【００２５】
ドキュメントの生成に用いられるデータは、データベースアプリケーションを動かしている他のコンピュータによって構成されたデータベースサーバ１１７上のデータベース１１９に格納されている。ホストコンピュータ１０１はネットワーク１０７を介してデータベースサーバ１１７と通信を行うことで、データベース１１９に格納されたデータを読み込む。
【００２６】
また、レイアウト編集アプリケーションプログラム１２１が、レイアウト編集処理を実行することにより生成されるテンプレートは、ファイルサーバ１１５に保存される。
【００２７】
更に、レイアウト編集アプリケーションプログラム１２１が、自動レイアウト処理を実行することにより生成されるドキュメントはホストコンピュータ１０１のローカルファイルシステムまたは、ファイルサーバ１１５に保存される。あるいはプリンタ１１３を介して直接印刷される。
【００２８】
プリントサーバ１０９は、ネットワーク１０７に直接接続されていないプリンタ１１３に対して、ネットワーク機能を提供するコンピュータである。プリントサーバ１０９とプリンタ１１３は一般的な通信チャネル１１１を介して接続されている。
【００２９】
１．２  ホストコンピュータの構成
次に、ホストコンピュータ１０１の詳細構成について説明する。図１Ｂに示すように、ホストコンピュータ１０１には、キーボード１３２やマウス１３３等のポインティングデバイスを含む入力装置が接続されているとともに、ディスプレイ装置１４４やローカルプリンタ１４５等を含む出力装置が接続されている。
【００３０】
入力／出力インタフェース１３８は、ホストコンピュータ１０１をネットワーク１０７を介して他のコンピュータ装置に接続する。ネットワーク１０７には、ローカルエリアネットワーク（ＬＡＮ）やワイドエリアネットワーク（ＷＡＮ）等が含まれる。
【００３１】
ホストコンピュータ１０１は、少なくとも１つのプロセッサ１３５、メモリ１３６、ビデオインタフェース１３７、ＩＮＰＵＴ／ＯＵＴＰＵＴ（Ｉ／Ｏ）インタフェース１４３を備える。
【００３２】
メモリ１３６は、例えば半導体のランダムアクセスメモリ（ＲＡＭ）やリードオンリーメモリ（ＲＯＭ）から構成される。また、Ｉ／Ｏインタフェース１４３は、キーボード１３２やマウス１３３などを接続するためのインタフェースである。
【００３３】
格納デバイス１３９にはハードディスクドライブ１４０やフロッピー（登録商標）ディスクドライブ１４１が含まれる。なお、図１Ｂにおいては不図示であるが、格納デバイスとして磁気テープドライブなどが使用されてもよい。
【００３４】
ＣＤ−ＲＯＭドライブ１４２は不揮発性のデータソースとして提供される。ホストコンピュータ１０１では、ＬＩＮＵＸやマイクロソフトウィンドウズ（登録商標）のようなＯＳを用いることにより、相互接続バス１３４を介して、コンポーネント１３５〜１４３を動作させる。
【００３５】
レイアウト編集アプリケーションプログラム１２１は、ハードディスクドライブ１４０に常駐されており、プロセッサ１３５が読み込むことにより実行される。実行中、レイアウト編集アプリケーションプログラム１２１は、ネットワーク１０７からフェッチされるデータとともにメモリ１３６に一時格納される。
【００３６】
なお、レイアウト編集アプリケーションプログラム１２１は、ハードディスクドライブ１４０に常駐している必要はない。例えば、ＣＤ−ＲＯＭやフロッピー（登録商標）ディスク上でエンコードされた状態で格納しておき、ＣＤ−ＲＯＭドライブ１４２やフロッピー（登録商標）ディスクドライブ１４１を通じて読み込むように構成してもよい。あるいはネットワーク１０７を介して読み込むように構成してもよい。
【００３７】
さらにレイアウト編集アプリケーションプログラム１２１を、様々なコンピュータ可読媒体から読み込むように構成してもよい。コンピュータ可読媒体としては、例えば、磁気テープ、ＲＯＭ、集積回路、光磁気ディスク、ＰＣＭＣＩＡカードなどが挙げられる。あるいは、無線や赤外線通信、Ｅメール通信により、あるいはインターネットやイントラネットなどを介して読み込むように構成してもよい。
【００３８】
２．他の自動レイアウトシステムの構成例
図２は、自動レイアウトシステムの他の構成例を示す図である。図１Ａと類似の構成となっているが、エンジンサーバ２２７が追加されている点が異なっている。エンジンサーバ２２７に格納されているレイアウトエンジン２２５は、レイアウトエンジン１０５の分離バージョンである。エンジンサーバ２２７としては一般的なコンピュータが用いられる。レイアウトエンジン２２５は、ドキュメントを生成するために、ファイルサーバ１１５に保存されたテンプレートとデータベース１１９に保存されたデータとを結合する。そのようなオペレーションはユーザインタフェース１０３を介して要求される。
【００３９】
３．レイアウト編集アプリケーションプログラムの概要
次に、レイアウト編集アプリケーションプログラム１２１が実行されることにより実現される各種機能の概要について説明する。
【００４０】
３．１  ユーザインタフェース
はじめに、レイアウト編集アプリケーションプログラム１２１に含まれるユーザインタフェース１０３により実現される機能について説明する。
【００４１】
（１）ウィンドウの説明
図３は、ユーザインタフェース１０３が実行されることにより、ディスプレイ装置１４４に表示されるウィンドウの一例を示す図である。
【００４２】
ウィンドウ３０１には、メニューバー３０２とツールバー３０３が表示される。更に、マウス１３３に対する操作に基づいて動作するワークエリア３０６（詳細は後述）と、オプションのパレット３１１と、マウス１３３の動作に対応して移動するポインタ３１３とが表示される。
【００４３】
メニューバー３０２は、複数のメニューオプションを備えるメニューアイテムを備える。メニューアイテムには、Ｆｉｌｅモードを選択するためのアイテム３０２−１、Ｅｄｉｔモードを選択するためのアイテム３０２−２、Ｖｉｅｗモードを選択するためのアイテム３０２−３が含まれる。
【００４４】
アイテム３０２−１は、ファイルサーバ１１５に格納されたテンプレートの呼び出しや生成されたテンプレートの保存等、テンプレートの管理を指示するためのアイテムである。
【００４５】
アイテム３０２−２は、ワークエリア３０６上においてテンプレートを生成したり、生成したテンプレートを編集したりするためのレイアウト編集処理を実行するためのアイテムである。
【００４６】
アイテム３０２−３は、生成したテンプレートにデータを挿入し、ドキュメントを生成する自動レイアウト処理を実行させるためのアイテムである。
【００４７】
ツールバー３０３は、モードによって非表示にしたり、表示させたりすることが可能な下記のツールボタン（３０３−１〜３０３−４）を備える。
【００４８】
１）選択ツールボタン（３０３−１）：コンテナの辺の選択、移動、サイズ変更、リサイズ、ロック／ロック解除を指示する際に用いる。
【００４９】
２）テキストコンテナツールボタン（３０３−２）：固定のテキストデータあるいは可変のテキストデータが挿入されるコンテナを作成する際に用いる。
【００５０】
２）イメージコンテナツールボタン（３０３−３）：固定のイメージデータあるいは可変のイメージデータが挿入されるコンテナを作成する際に用いる。
【００５１】
４）リンクツールボタン（３０３−４）：コンテナ間の距離をコントロールするリンクを設定する際に用いる。
【００５２】
ルーラ３０８はワークエリア３０６内のポインタ、ページ、ライン、マージンガイド、コンテナの位置を示すための指標である。スクロールバー３０７は、ワークエリア３０６に表示されたコンテナが、複数ページから構成されているテンプレート３０９内のどの位置にあるのかを示すための指標である。
【００５３】
パレット３１１はデータを読み込んで表示するライブラリのような追加機能にアクセスする際に用いられるサブウィンドウである。パレット３１１は、移動、リサイズ、クローズをするために用いられるウィンドウコントロール３１２を備える。
【００５４】
（２）ワークエリアの説明
次に、ウィンドウ３０１に表示されるワークエリア３０６について説明する。ワークエリア３０６は、テンプレート３０９内に配置された各コンテナを表示・編集したり、コンテナにデータを挿入することで生成されたドキュメントを表示したりする領域である。ユーザは、Ｅｄｉｔモードにおいて、レイアウト編集処理を実行することでワークエリア３０６上に表示されたテンプレートを編集することができる。
【００５５】
また、Ｖｉｅｗモードにおいて、自動レイアウト編集処理を実行させることで、生成したテンプレートが、データの量・サイズに基づいてどのように変化するかを確認することができる。
【００５６】
なお、ワークエリア３０６上に表示されるテンプレート３０９の用紙サイズは、ユーザにより設定される。また、ドキュメントにおける実際のページ数は、挿入されるデータの量によって変化するが、仮に、挿入されるデータの量が１ページ内に収まらなかった場合には、追加のページが自動的に作成される。その際の各ページ間の境界線は、ページ毎においてコンテナを配置することが可能な領域の外縁を示すページマージン３１０として示される。
【００５７】
ワークエリア３０６上において、ユーザはイメージコンテナツールボタン３０３−３やテキストコンテナツールボタン３０３−２を用いて、テキストデータやイメージデータがレイアウトされるべき位置にコンテナを配置する。
【００５８】
また、選択ツールボタン３０３−１を用いて、配置されたコンテナを選択し、移動やサイズ変更等の指示を行う。更に、リンクツールボタン３０３−４を用いて、コンテナ間にリンクを設定する（詳細は後述）。
【００５９】
図３の例では、用紙サイズとしてＡ４版が設定された１ページから構成されるテンプレート３０９上に、２つのコンテナ３２１、３２２が配置され、リンク３２６が設定された様子が示されている。
【００６０】
（３）コンテナの説明
次に、テンプレート内に配置されるコンテナについて詳細を説明する。コンテナとは、テンプレート内に、データベースから固定あるいは可変のテキスト／イメージデータが挿入され、描画されるスペース（部分領域ともいう）をいう。
【００６１】
コンテナは、マウス１３３の操作により移動、サイズ調整、再作成される。下記は本実施形態におけるコンテナの定義である。
【００６２】
１）コンテナには固定あるいは可変のテキスト／イメージデータが挿入される。可変のテキスト／イメージデータは、同一のコンテナに挿入されるデータがドキュメント毎、つまりレコード毎に異なる可能性があるという意味においてダイナミック（動的）である。ただし、本実施形態の可変のテキスト／イメージデータは、アニメーション化されたもの、あるいは他の方法で時間的に変化するデータは意図していない。
【００６３】
一方、固定のテキスト／イメージデータは、異なるテンプレート内に配置されたいずれかのコンテナに挿入された場合でも、同じように表示される。しかしながら、可変のテキスト／イメージデータとの間でリンクが設定されている場合には、可変のテキスト／イメージデータの影響を受けて、テンプレートによって異なる位置にレイアウトされる可能性がある。
【００６４】
２）コンテナは、テキストコンテナとイメージコンテナの２種類で記述される。テキストコンテナには固定あるいは可変のテキストデータが挿入される。イメージコンテナには、埋め込みのイメージデータあるいは可変のイメージデータが挿入される。
【００６５】
３）コンテナには自動レイアウト処理時にそれぞれのデータをどのようにレイアウトするかという制御に関する制約（制御条件）が設定可能である。設定される制御条件としては、例えば、“コンテナのテキスト／イメージデータの高さは、最大４インチ”、“コンテナのテキスト／イメージデータの左エッジは、全てのドキュメントにおいて同じ水平位置に表示”といったような内容である。これらの制約（固定／可変のテキスト／イメージデータをコンテナと結びつけることを含む）を設定することにより、ユーザは１つのテンプレートから多種類のドキュメントを生成することができる。
【００６６】
４）コンテナには、テキスト／イメージデータに適用される背景色、ボーダー、フォント・スタイルのようなテキスト設定と同様の装飾機能が備えられている。このような設定をコンテナ属性と呼ぶ。コンテナ属性は、各コンテナごとに設定可能である。
【００６７】
５）コンテナには、Ｖｉｅｗモードにおいて自動レイアウト処理が実行されることでデータベース１１９からのデータが挿入される。
【００６８】
図４は、上記制御条件に基づくコンテナの辺の状態（１６通りの辺の状態）を示している。なお、一般的に、コンテナの辺の状態（点線ｏｒ実線）はテンプレートのデザインの手助けとして表示される要素であるため、実際のドキュメント上には描画されない。コンテナの制約として設定される幅・高さの最小値・最大値の設定値は、パレット３１１に表示される。
【００６９】
なお、図４において、実線の辺は固定の辺であることを示しており、点線の辺は可変の辺であることを示している。
【００７０】
（４）リンクの設定方法
次に、図５を用いてリンクの設定方法について説明する。リンクを設定するためには、まず、リンクを設定するためのコンテナ（最低２つ）を作成する。図５の例は、２つのコンテナを作成してリンクを設定する場合を示している。
【００７１】
次に、上述したリンクツールボタン３０３−４を選択した状態にする。図５は、コンテナを作成し、リンクツールボタン３０３−４が選択されていた状態から、リンクを設定する動作を示している。以下、図５の（Ａ）〜（Ｃ）を順に説明していく。
【００７２】
図５（Ａ）の５０１と５０２は、固定の辺を示している。３１３はマウスポインタを示している。
【００７３】
ユーザは、まず、リンクを設定する片方のコンテナをクリックして選択する。次に図５（Ｂ）に示すように、もう片方のコンテナまでマウスポインタを移動して、クリックする。図５（Ｂ）の５０３は図５（Ａ）でクリックをした位置と移動したマウスポインタを結んだ線を示しており、どの位置にリンクが設定されるのかをユーザに示している。図５（Ｂ）で２度目のクリックが終わった後、設定した場所に５０４で示したリンクが表示され、コンテナは図５（Ｃ）の状態になる。
【００７４】
５０５は、点線で示されている辺であり、前述した通り可変の辺を示している。このようなデザインでは、左のコンテナ５０１は右方向にサイズが可変となる。また右のコンテナ５０２は左方向にサイズが可変となる。その間がリンクで接続されているため、左右のコンテナはその間の距離が固定されたまま、相互にサイズを可変に調整するように動作する。
【００７５】
３．２  レイアウトエンジン
次にレイアウト編集アプリケーションプログラム１２１に含まれるレイアウトエンジン１０５により実現される機能について説明する。
【００７６】
（１）自動レイアウト処理の流れ
図６は自動レイアウト処理の流れを示すフローチャートである。ユーザによるＶｉｅｗモードの選択を受け付け、Ｖｉｅｗモードに移行すると、図６に示す自動レイアウト処理が開始される。
【００７７】
ステップＳ６０１では、レコードの挿入指示を受け付ける。ステップＳ６０２では、ユーザにより選択されたレコード（１つのテンプレートに挿入されるデータ群）を挿入する。レコードの挿入が完了すると、ステップＳ６０３では、挿入されたレコードをレイアウトするための計算を行う。なお、レイアウト計算処理の詳細は、後述する。
【００７８】
ステップＳ６０４では、ステップＳ６０３で計算されたレイアウトを表示する。ステップＳ６０５では、ユーザが他のレコードの挿入を指示したか否かを判断する。ステップＳ６０５において、他のレコードの挿入を指示したと判断した場合には、ステップＳ６０６に進み、他のレコードを挿入した後、ステップＳ６０３に戻る。
【００７９】
一方、他のレコードの挿入の指示がなかったと判断した場合には、ステップＳ６０７に進み、Ｖｉｅｗモードを終了する。
【００８０】
続いて、レイアウト計算処理（ステップＳ６０３）の詳細について説明する。図７は、レイアウト計算処理（ステップＳ６０３）の詳細を示すフローチャートである。
【００８１】
ステップＳ７０１では、レイアウトを計算するにあたり、互いに関連するコンテナの集合を識別する。レイアウト計算処理は、リンクによって関連付けられたコンテナを１つの集合として計算を行う。
【００８２】
ステップＳ７０２では、ステップＳ７０１で識別されたコンテナの集合から、レイアウトを計算するために１つのコンテナの集合を選択する。
【００８３】
ステップＳ７０３では、選択した１つのコンテナの集合について、レイアウトの計算を行う。具体的には、レイアウトされるコンテナのサイズが、実際のデータのサイズとできる限り差が少なくなるように、レイアウトの最適化を行う。レイアウトの最適化は、動的にサイズを変化させるように関連付けられたコンテナにおいて、それぞれに挿入されるデータのサイズとレイアウトされた結果のサイズとの差が、できる限り同じになるように行われる。
【００８４】
ステップＳ７０４では、ステップＳ７０３において最適化されたレイアウトが、制御条件に違反していないか否かを判断する。ステップＳ７０４において違反していると判断された場合には、ステップＳ７０３に戻り、再度、制御条件に違反しないようにレイアウトの計算を行う。
【００８５】
上述したように、制御条件とは、レイアウト編集処理時にユーザによって設定された制約のことであり、コンテナのサイズと位置、辺の状態、リンクの長さに関する定義が含まれる。ステップＳ７０４において、制御条件に違反しないようにレイアウトの計算が行われたと判断された場合には、その集合のレイアウトは完成したと判断され、ステップＳ７０５に進む。
【００８６】
ステップＳ７０５では、全てのコンテナの集合についてレイアウトの計算を実行したか否かを判断する。ステップＳ７０５において、レイアウトの計算を実行していないコンテナの集合があると判断された場合には、ステップＳ７０２に戻る。
【００８７】
一方、ステップＳ７０５において、全てのコンテナの集合についてレイアウトの計算を実行したと判断した場合には、処理を終了する。
【００８８】
図８はレイアウト計算処理を実行した際のワークエリア３０６上のコンテナの動作例を示した図である。
【００８９】
図８（Ａ）は、所定のレコードが挿入され、レイアウトが計算された状態を示している。８０１と８０２は固定された辺を、８０３は可変の辺を、８０４と８０５は可変の辺の変化方向を示す矢印を、８０６はリンクをそれぞれ示している。
【００９０】
この状態において、レコードを変更し異なるサイズのデータを挿入したとする。図８（Ｂ）は異なるサイズのデータを挿入した様子を示している。８０９はそれぞれのコンテナに挿入されるデータのサイズを表している。
【００９１】
挿入された異なるサイズのデータについてレイアウト計算が行われると、図８（Ｃ）のようになる。レイアウト計算後の各コンテナのサイズは、実際挿入されるデータのサイズと同等に差異があるように計算され、且つ前述した制御条件に違反しないように計算される。このため、図８（Ｃ）では、図８（Ｂ）で示したデータのサイズ（８０７）と計算後のデータのサイズ（８０８）は、双方において同等な差異がある。
【００９２】
（２）マルチレコードの場合の自動レイアウト処理
次に、レイアウトエンジン１０５により実現される機能として、マルチレコードの場合の自動レイアウト処理の概要について説明する。
【００９３】
図９は、マルチレコードの自動レイアウト処理の概要を示した図である。９０１はドキュメントを、３０９はテンプレートを、１１９はデータベースをそれぞれ示している。
【００９４】
データベース１１９には、Ｎｏ．１〜Ｎｏ．７のレコードが格納されている。１レコード１ドキュメントの自動レイアウトシステムの場合であれば、７ドキュメントが作成される。
【００９５】
一方、多レコード１ドキュメントのマルチレコードをサポートする自動レイアウトシステム１００の場合、次のようにして自動レイアウト処理が行われる。
【００９６】
まず、マルチレコードを指定するカラムがユーザインタフェース１０３を介してユーザによって任意に指定される。この例ではフィールド名：Ｎａｍｅが指定されたものとする。そして、レイアウトエンジン１０５では、当該指定されたフィールド名と同じレコードは、１ドキュメント内の同じテンプレートにレイアウトされるレコードであると認識する。
【００９７】
図９の例では、Ｎｏ．１〜Ｎｏ．４のレコードはＮａｍｅ＝“Ｔｏｍ”であるため、同じテンプレートに挿入されることとなる。また、Ｎｏ．５〜Ｎｏ．７のレコードは、Ｎａｍｅ＝“Ｎａｎｃｙ”であるためＮａｍｅ＝“Ｔｏｍ”のテンプレートとは異なるテンプレートに挿入されることとなる。
【００９８】
４．本実施形態におけるテンプレートについての説明
次に本実施形態におけるレイアウト編集アプリケーションプログラム１２１がレイアウト編集処理を実行することにより生成可能なテンプレートについて説明する。
【００９９】
上述したように、ワークエリア３０６上において生成されるテンプレートには、通常、ページマージン３１０が示されており、当該ページ毎にコンテナを配置することが可能な最大領域が示されている。
【０１００】
本実施形態におけるレイアウト編集アプリケーションプログラム１２１では、当該ページマージン３１０により示される境界線を固定の辺とするコンテナを配置したテンプレートを生成することが可能となっている。
【０１０１】
なお、ページマージン３１０により示される境界線を固定の辺とするコンテナを、以下では、「ページコンテナ」と称することとする。
【０１０２】
また、本実施形態におけるレイアウト編集アプリケーションプログラム１２１では、ページコンテナと、通常のコンテナとの間にリンクを設定することが可能となっている。
【０１０３】
そして、通常のコンテナとページコンテナとの間において設定されたリンクを、以下では、「ページリンク」と称することとする。なお、ページリンクは、通常のコンテナ間のリンクと同様の手順で設定することができるものとする。
【０１０４】
図１０Ａはページコンテナ及びページリンクを含むテンプレートの一例を示す図であり、図１０Ｂは図１０Ａの右上部分を拡大した図である。図１０Ａ、図１０Ｂを用いてページコンテナ及びページリンクを含むテンプレートについて説明する。
【０１０５】
１０００はユーザにより用紙サイズが設定されたテンプレートであり、ここでは、Ａ４版の用紙サイズが設定されているものとする。
【０１０６】
１００１はページコンテナである。ページコンテナ１００１は、用紙サイズから余白を差し引いた領域（通常のコンテナが配置されうる領域）を規定した固定のコンテナの一種であり、通常のコンテナとは区別される。なお、ページコンテナ１００１は、用紙サイズと余白とから、その位置及びサイズが決定される。このため、ユーザは、テンプレート作成時にページコンテナを意識的に配置する必要はない（用紙サイズと余白を設定するだけでよい）。
【０１０７】
１００２、１００７、１００８、１００９はイメージデータを挿入するイメージコンテナであり、１００５、１００６はテキストデータを挿入するテキストコンテナである。
【０１０８】
１００３、１００４はページリンクであり、ページコンテナとコンテナとをリンクする。ページリンクには、ページコンテナとコンテナとの距離を固定に保つ固定ページリンク１００３と、距離が変動する可変ページリンク１００４の２種類がある。
【０１０９】
１０１０はコンテナ同士をリンクする可変のリンクであり、１０１１はコンテナ同士をリンクする固定のリンクである。
【０１１０】
なお、テンプレート１０００に含まれるページコンテナとページリンクは、自動レイアウト処理時においては、通常のリンク及びコンテナと同様の動作をする。具体的には、図１０Ｂに示すように、固定ページリンク１００３とページコンテナ１００１とにより、コンテナ１００２はデータが挿入された際にページコンテナ１００１の右エッジから１５ｍｍの距離に固定される。また、固定ページリンク１０２０とページコンテナ１００１とにより、コンテナ１００２は、データが挿入された際にページコンテナ１００１の上エッジから１０ｍｍの距離に固定される。
【０１１１】
５．テンプレートの用紙サイズ変更時の処理の説明
次に生成されたテンプレート１０００に設定された用紙サイズがレイアウト編集処理中に変更された場合の処理について説明する。
【０１１２】
図１１Ａ、図１１Ｂは、Ｅｄｉｔモードにおいてレイアウト編集処理が実行されている最中に、図１０Ａに示すテンプレート１０００に設定された用紙サイズが変更され、当該変更に伴ってコンテナが再配置された後のテンプレートの一例を示す図である。
【０１１３】
このうち、図１１Ａは、テンプレート１０００に設定された用紙サイズが、Ａ４版からＵＳ  Ｌｅｔｔｅｒ版に変更され、コンテナが再配置された後のテンプレートを示している。また、図１１Ｂは、テンプレート１０００に設定された用紙サイズがＡ４版Ｐｏｒｔｒａｉｔから、Ａ４版Ｌａｎｄｓｃａｐｅに変更され、コンテナが再配置された後のテンプレートを示している。
【０１１４】
図１２は、Ｅｄｉｔモードにおいてレイアウト編集処理が実行されている最中に、テンプレートに設定された用紙サイズが変更され、該テンプレート内のコンテナを再配置する場合の処理の流れを示すフローチャートである。図１１Ａ、図１１Ｂを参照しながら、図１２のフローチャートについて説明する。
【０１１５】
ステップＳ１２０１では、レイアウト編集アプリケーション１２１が、Ｅｄｉｔモードにおいて、用紙サイズおよび余白サイズの設定の変更を受け付ける。ここでは用紙サイズがＵＳ  Ｌｅｔｔｅｒ版、あるいはＡ４版Ｌａｎｄｓｃａｐｅに変更されるものとする。
【０１１６】
ステップＳ１２０２では、レイアウト編集アプリケーション１２１が、変更された用紙サイズ及び余白サイズに基づいてページコンテナ１００１のサイズを決定する。ページコンテナ１００１のサイズが決定されると、以下、ページコンテナ１００１の枠内で、ページリンク、リンク、コンテナに設定された制約条件に従って、各コンテナを再配置する。
【０１１７】
なお、ページリンクの動作は通常のリンクと同様であるが、ページコンテナ側のエッジ（境界線）は必ず固定エッジとして扱われ、コンテナ側の辺は必ず可変の辺として扱われる。ページリンクが固定の場合、コンテナ側の辺はリンクに指定された距離に従って位置が決定される。また、ページリンクが可変の場合、コンテナ側の辺はコンテナの幅を変更しないように配置される。
【０１１８】
具体的には、ステップＳ１２０３において、レイアウト編集アプリケーション１２１が、各コンテナの位置調整として、固定のページリンクに基づく位置調整を行う。続いて、ステップＳ１２０４において、レイアウト編集アプリケーション１２１が、固定のリンクに基づく位置調整を行う。
【０１１９】
図１１Ａ及び図１１Ｂにおいて、コンテナ１００２は、固定ページリンク１００３および固定ページリンク１０２０が固定のページリンクであるため、１００３、１０２０の距離を固定しながらページコンテナ１００１の右上に再配置される。
【０１２０】
コンテナ１００５、コンテナ１００６は、左右のページリンクが固定であるため、左右のページリンクの長さを維持するためにページコンテナ１００１内において両側に拡大されて再配置される。なお、図１１の例では、コンテナが拡大される例について説明したが、当然縮小される場合もある。
【０１２１】
コンテナ１００７、コンテナ１００８、コンテナ１００９は、固定リンク１０１１および１１０１で接続されているため、コンテナの再配置において１つのコンテナのように動作する。
【０１２２】
つまり、コンテナ１００９が、固定のページリンク１１０２によりページコンテナ１００１の右エッジから所定の距離に固定され、コンテナ１００７とコンテナ１００８は、コンテナ１００９に追従する。
【０１２３】
次に、ステップＳ１２０５では、可変のページリンク及び可変リンクに基づく位置調整を行う。可変ページリンク１００４は、他の可変リンクとの関連が無い。このため、コンテナ１００２の横幅は変更されない。縦に配置された可変リンクは、コンテナ１００５、１００６の上下の辺、および、他の縦に配置された可変リンクと関連して位置調整が行われる。ページコンテナ１００１の上下幅内にコンテナが収まるように、可変のリンクやコンテナの可変の辺が位置調整される。位置調整は、各コンテナの割合や、最大値および最小値などの設定に基づいて行われる。
【０１２４】
６．用紙サイズが変更されたテンプレートについて自動レイアウト処理を実行した場合の実施例
次に、レイアウト編集処理中に用紙サイズまたは余白サイズが変更されたテンプレートについて、自動レイアウト処理を実行した場合の実施例について説明する。
【０１２５】
図１３は、レイアウトの編集中に用紙サイズまたは余白サイズが変更されたテンプレートについて、自動レイアウト処理が実行されることで生成されたドキュメントの一例を示す図である。１３００はテンプレート１０００に、１３１０はテンプレート１１００に、１３２０はテンプレート１１１０にそれぞれデータを挿入し、レイアウト計算を行った後のドキュメントを示している。
【０１２６】
図１３の例では、ロゴ、印影、テキストのサイズには変更がない。一方、テキストデータは版形が変更されたことによりコンテナの形が変更されているため、各版形ごとにテキストの折り返し位置が異なっている。
【０１２７】
以上の説明から明らかなように、本実施形態にかかるレイアウト編集アプリケーションプログラムでは、ページコンテナ及びページリンクを備えるテンプレートを生成できる構成とした。これにより、所定の用紙サイズが設定されたテンプレートについて、後から用紙サイズや余白サイズの変更を行った場合であっても、変更後の用紙サイズ及び余白サイズに対応して自動的にコンテナのサイズおよび位置を変更して、再配置することが可能となった。
【０１２８】
この結果、用紙サイズが固定の従来のテンプレートのように、用紙サイズごとにテンプレートを作成する必要がなくなり、レイアウト編集アプリケーションプログラム利用時のユーザの作業負荷を低減させることが可能となった。
【０１２９】
［第２の実施形態］
上記第１の実施形態では、Ｅｄｉｔモードにおいて所定の用紙サイズのもとでテンプレートを生成した後に、用紙サイズの設定を変更する場合の処理について説明した。しかしながら、本発明はこれに限定されず、生成したテンプレートに対して、Ｖｉｅｗモードにおいてデータを挿入した後に、用紙サイズの設定を変更することも可能である。
【０１３０】
図１４は、Ｖｉｅｗモードにおいて自動レイアウト処理が実行され、データが挿入された後に、テンプレートに設定された用紙サイズを変更した場合の処理の流れを示すフローチャートである。
【０１３１】
なお、ステップＳ１２０１〜Ｓ１２０５までの処理は、図１２のステップＳ１２０１〜Ｓ１２０５までの処理と同じであるため、説明は省略する。
【０１３２】
ステップＳ１２０１〜Ｓ１２０５において、コンテナを再配置する処理が完了すると、自動的にステップＳ１４０６に進む。ステップＳ１４０６では、再配置されたコンテナに既に挿入されているデータについてレイアウト計算処理を行う。なお、ステップＳ１４０６におけるレイアウト計算処理は、図７を用いて既に説明済みであるため、ここでは説明は省略する。
【０１３３】
ステップＳ１４０６におけるレイアウト計算が完了すると、ステップＳ１４０７では、データがテンプレート内に収まるか否かの判定を行う。挿入されているデータは動的なデータであるため、所定のコンテナに収まらない場合もある。
【０１３４】
ステップＳ１４０７において問題なく収まると判定された場合には、処理を終了する。一方、データが収まらないと判定された場合には、ステップＳ１４０８に進み、データを縮小するか、もしくは、エラーと判定する。
【０１３５】
データを縮小する手法としては、当該データがテキストデータであればフォントサイズを小さくする手法が考えられる。また、イメージデータであれば縦横比を維持して縮小する手法や、コンテナのサイズに合わせて縮小する手法が考えられる。
【０１３６】
また、エラーと判定した場合には、エラーメッセージダイアログを表示したり、ログを記録したりする。
【０１３７】
なお、図１４のフローチャートでは、用紙サイズ及び余白サイズの変更に伴うコンテナの再配置と、レイアウト計算処理とを分けて行うこととしているが、同時に行うように構成してもよい。
【０１３８】
以上の説明から明らかなように、本実施形態によれば、用紙サイズや余白サイズの設定を自動レイアウト処理後においても変更することが可能となる。
【０１３９】
［第３の実施形態］
上記第１及び第２の実施形態では、用紙サイズや余白サイズの設定を変更するにあたり、変更後の用紙サイズ等に合致するように、コンテナを再配置する構成とした。しかしながら、本発明はこれに限定されず、変更後の版形で、原版形に近いサイズのテンプレートを用いてコンテナを再配置したうえで、拡大または縮小処理するように構成してもよい。
【０１４０】
例えば、ＵＳ  ＬｅｔｔｅｒからＡ３版やＡ５版へ変更する場合、一旦、Ａ４版の用紙サイズのテンプレート上でコンテナを再配置した後にＡ３版やＡ５版へ拡大・縮小するようにしてもよい。
【０１４１】
なお、このとき、原版形に近いサイズの選択は、図１５の例のような用紙の版形とサイズに関するグループ設定に基づいて行うものとする。
【０１４２】
図１５において、１５０１はＡ版を表し、Ａ０からＡ６までにグループ分けされている。１５０２はその他の列を表し、版形として系列を持たない用紙サイズがグループ化されている。
【０１４３】
なお、その他列１５０２では、複数の用紙サイズをグループに設定することが可能である。また、１５０３のようにユーザが定義した用紙サイズもグループに設定することができる。１５０４はグループ行で、ユーザはグループの追加や削除を行うことも可能である。
【０１４４】
図１６は拡大・縮小処理に関連する設定を入力するための設定ダイアログの一例を示す図である。当該設定ダイアログは、用紙サイズの設定変更を指示した場合に表示されるものとする。１６１０はテンプレート上におけるコンテナの再配置に関連する設定のグループを示しており、１６２０は挿入されるデータの調整に関連する設定のグループを示している。
【０１４５】
コンテナを再配置した後に行われる拡大・縮小処理は、基本的に、用紙サイズの拡大率・縮小率に応じて、縦横比を保ったまま、コンテナの拡大・縮小を行う。ただし、固定のコンテナまたはリンクについては、拡大・縮小しないように設定することも可能である。
【０１４６】
１６１１は固定のページリンクの長さを維持するかどうかの設定を行うチェックボックスである。１６１２は固定のリンクの長さを維持するかどうかの設定を行うチェックボックスである。１６１３は固定のコンテナのサイズを維持するかどうかの設定を行うチェックボックスである。チェックされた項目は、拡大・縮小の対象外となる。
【０１４７】
なお、設定グループ１６１０に示す項目のうち、いずれかの項目がチェックされていた場合には、拡大・縮小が行われないコンテナと拡大・縮小が行われるコンテナとが混在し、テンプレート上のコンテナのレイアウトが崩れることとなる。この場合は、拡大・縮小後にステップＳ１２０４に示す処理と同様の処理が行われるものとする。このようにして、テンプレート内のコンテナが再々配置される。
【０１４８】
設定グループ１６２０に示す項目のうち、１６２１は、イメージデータの拡大・縮小を行うかどうかを設定するチェックボックスである。チェックボックス１６２１をチェックした場合には、更に、コンテナ内で縦横比を維持しながら拡大・縮小を行う（１６２２）のか、コンテナのサイズに合うように拡大・縮小を行う（１６２３）のかをラジオボタンで選択することが可能となる。１６２４は、テキストデータのフォントサイズを大きくするか小さくするかを設定するチェックボックスである。
【０１４９】
１６０１はＯＫボタンであり、ＯＫボタン１６０１を押すことにより、ダイアログの設定が確定される。１６０２はキャンセルボタンであり、キャンセルボタン１６０２を押すことにより、ダイアログの設定がキャンセルされる。
【０１５０】
なお、図１６の設定では、テンプレート全体に対して設定を行う例を示したが、個々のコンテナやリンクごとに設定できるように構成してもよい。
【０１５１】
以上の説明から明らかなように、本実施形態では、用紙サイズや余白サイズが変更された場合に、一旦、変更する版形であって原版形に近いサイズのテンプレート上において、コンテナを再配置したうえで、拡大・縮小する構成とした。この結果、より適切なレイアウトを実現することが可能となる。
【０１５２】
［第４の実施形態］
上記第１の実施形態では、ページリンクは、Ｅｄｉｔモードにおいて、ユーザが手動で設定／削除することとしていたが、本発明はこれに限定されず、レイアウト編集処理中に自動的に設定／削除されるように構成してもよい。
【０１５３】
１．自動リンク処理
図１７、図１８、図１９を用いて、Ｅｄｉｔモードにおけるレイアウト編集処理において、ページコンテナとコンテナとの間のページリンクを自動的に設定する処理（自動リンク処理）について説明する。図１７は、レイアウト編集処理において、自動リンク処理が行われたテンプレートを示す図である。図１８は、自動リンク処理に関する設定ダイアログの一例を示す図である。図１９は、自動リンク処理の流れを示すフローチャートである。
【０１５４】
図１７において、ページコンテナ１７０１は、用紙サイズと余白サイズとに基づいて決定されている。この状態において、ユーザがコンテナ１７０２を配置すると、コンテナ１７０２の４辺とページコンテナ１７０１との間にページリンクが自動的に設定される。
【０１５５】
ステップＳ１９０１では、自動リンク処理に関する設定項目を参照し、当該設定項目を取得する。自動リンク処理に関する設定項目の一例は図１８に示す通りである。
【０１５６】
図１８において、１８１０は自動リンク処理を行うかどうかを設定するチェックボックスである。チェックがあれば自動リンク処理が行われるが、チェックが無い場合は自動リンク処理を行われず、ページリンクは手動で設定することとなる。
【０１５７】
ステップＳ１９０２では、自動リンクを行うかどうかを判定し、自動リンク処理を行うと判定した場合には、ステップＳ１９０３に進む。一方、自動リンク処理を行わないと判定された場合には、自動リンク処理を終了する。
【０１５８】
なお、自動的に設定されるページリンクが固定であるか可変であるかは、ラジオボタン１８１１または１８１２が選択されることによって決定される。
【０１５９】
１８１１は、可変ページリンクを指定するラジオボタンであり、ラジオボタン１８１１が指定されると、配置したコンテナの４辺に対して可変のページリンクが自動的に設定される。１８１２は、固定ページリンクを指定するラジオボタンである。ラジオボタン１８１２が指定されると、１８１４のチェックボックスでチェックされた辺について、固定ページリンクが自動的に設定される。
【０１６０】
１８１３のチェックボックスでチェックされなかった辺については、可変のページリンクが自動的に設定される。ＯＫボタン１８０１を押すと、ダイアログの設定が確定される。キャンセルボタン１８０２を押すと、ダイアログの設定がキャンセルされる。
【０１６１】
図１７は、図１８の設定ダイアログに基づいて、自動リンク処理が行われた場合のテンプレートを示している。具体的には、自動リンク処理を行うかどうかを設定するチェックボックス１８１０がチェックされ、固定リンクのラジオボタン１８１２が指定され、チェックボックス１８１３で左辺と右辺がチェックされた状態で自動リンク処理が行われた場合を示している。
【０１６２】
コンテナ１７０２が配置されたときに、上辺には対向するエッジとの間に可変のページリンク１７０３が自動的に設定される。また、下辺には対向するエッジとの間に可変のページリンク１７０４が自動的に設定される。更に、左辺には対向するエッジとの間に固定のページリンク１７０５が、右辺には対向するエッジとの間に固定のページリンク１７０６がそれぞれ自動的に設定される（ステップＳ１９０３〜Ｓ１９０５）。
【０１６３】
コンテナ１７０７が配置された場合も同様の動作となる。上辺には対向するエッジとの間に可変のページリンク１７０８が、右辺には対向するエッジとの間に固定のページリンク１７０９がそれぞれ自動的に設定される。
【０１６４】
なお、ウィンドウ３０１上においては、ページリンクの表示について、ＯＮ／ＯＦＦが設定できるように構成されているものとする。
【０１６５】
２．ページリンクの自動削除処理
次に、図２０を用いて、ページリンクの自動削除処理について説明する。Ｅｄｉｔモードにおけるレイアウト編集処理において、コンテナ間でリンクが設定された場合、コンテナとページコンテナとのページリンクは自動的に削除される。
【０１６６】
図２０において、ユーザがコンテナ１７０２の下辺とコンテナ１７０７の上辺との間に可変リンク２００１を設定した場合、ページリンク１７０４とページリンク１７０８は自動的に削除される。なお、一度設定した可変リンク２００１をユーザが削除した場合には、図１８の設定に基づいて、再度、ページリンク１７０４とページリンク１７０８とが自動的に設定されるように構成されているものとする。
【０１６７】
以上の説明から明らかなように、本実施形態では、ページリンクを自動的に設定／削除する構成とした。この結果、Ｅｄｉｔモードにおけるレイアウト編集処理においてユーザの作業負荷を軽減させることが可能となる。
【０１６８】
［他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１６９】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録したコンピュータ読取可能な記憶媒体を、システムあるいは装置に供給するよう構成することによっても達成されることはいうまでもない。この場合、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１７０】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１７１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１７２】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
【図面の簡単な説明】
【０１７３】
【図１Ａ】自動レイアウトシステム１００の構成例を示すブロック図である。
【図１Ｂ】図１Ａに示されたホストコンピュータ（情報処理装置）１０１の構成を更に詳細に示すブロック図である。
【図２】自動レイアウトシステムの他の構成例を示す図である。
【図３】ユーザインタフェース１０３が実行されることにより、ディスプレイ装置１４４に表示されるウィンドウの一例を示す図である。
【図４】コンテナの辺の状態を示す図である。
【図５】リンクの設定方法を説明するための図である。
【図６】自動レイアウト処理の流れを示すフローチャートである。
【図７】レイアウト計算処理（ステップＳ６０３）の詳細を示すフローチャートである。
【図８】レイアウト計算処理を実行した際のワークエリア３０６上のコンテナの動作例を示した図である。
【図９】マルチレコードの自動レイアウト処理の概要を示した図である。
【図１０Ａ】ページコンテナ及びページリンクを含むテンプレートの一例を示す図である。
【図１０Ｂ】図１０Ａの右上部分を拡大した図である。
【図１１Ａ】図１０Ａに示すテンプレートに設定された用紙サイズが変更され、当該変更に伴ってコンテナが再配置された後のテンプレートの一例を示す図である。
【図１１Ｂ】図１０Ａに示すテンプレートに設定された用紙サイズが変更され、当該変更に伴ってコンテナが再配置された後のテンプレートの一例を示す図である。
【図１２】テンプレート内のコンテナを再配置する場合の処理の流れを示すフローチャートである。
【図１３】レイアウト編集処理中に用紙サイズまたは余白サイズが変更されたテンプレートについて、自動レイアウト処理が実行されることで生成されたドキュメントの一例を示す図である。
【図１４】Ｖｉｅｗモードにおいて自動レイアウト処理が実行され、データが挿入された後に、テンプレートに設定された用紙サイズを変更した場合の処理の流れを示すフローチャートである。
【図１５】用紙の版形とサイズに関するグループ設定を示す図である。
【図１６】拡大・縮小処理に関連する設定を入力するための設定ダイアログの一例を示す図である。
【図１７】レイアウト編集処理において、自動リンク処理が行われたテンプレートを示す図である。
【図１８】自動リンク処理に関する設定ダイアログの一例を示す図である。
【図１９】自動リンク処理の流れを示すフローチャートである。
【図２０】ページリンクの自動削除処理について説明するための図である。
【図１Ａ】
2010113479.tif 000003
【図１Ｂ】
2010113479.tif 000004
【図２】
2010113479.tif 000005
【図３】
2010113479.tif 000006
【図４】
2010113479.tif 000007
【図５】
2010113479.tif 000008
【図６】
2010113479.tif 000009
【図７】
2010113479.tif 000010
【図８】
2010113479.tif 000011
【図９】
2010113479.tif 000012
【図１０Ａ】
2010113479.tif 000013
【図１０Ｂ】
2010113479.tif 000014
【図１１Ａ】
2010113479.tif 000015
【図１１Ｂ】
2010113479.tif 000016
【図１２】
2010113479.tif 000017
【図１３】
2010113479.tif 000018
【図１４】
2010113479.tif 000019
【図１５】
2010113479.tif 000020
【図１６】
2010113479.tif 000021
【図１７】
2010113479.tif 000022
【図１８】
2010113479.tif 000023
【図１９】
2010113479.tif 000024
【図２０】
2010113479.tif 000025