[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2009070405A - Information processing method, device, and computer program - Google Patents

Information processing method, device, and computer program Download PDF

Info

Publication number
JP2009070405A
JP2009070405A JP2008301704A JP2008301704A JP2009070405A JP 2009070405 A JP2009070405 A JP 2009070405A JP 2008301704 A JP2008301704 A JP 2008301704A JP 2008301704 A JP2008301704 A JP 2008301704A JP 2009070405 A JP2009070405 A JP 2009070405A
Authority
JP
Japan
Prior art keywords
value
partial areas
container
size
layout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008301704A
Other languages
Japanese (ja)
Other versions
JP4743909B2 (en
Inventor
Kazufumi Kobashi
和文 小橋
Kenta Hara
健太 原
Jun Makino
順 牧野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2008301704A priority Critical patent/JP4743909B2/en
Publication of JP2009070405A publication Critical patent/JP2009070405A/en
Application granted granted Critical
Publication of JP4743909B2 publication Critical patent/JP4743909B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To attain layout adjustment so that the area size of each part is optimized according to an amount of data inserted, each time in layout editing processing, by arranging partial areas. <P>SOLUTION: A plurality of partial areas into which content data are run are arranged in a predetermined area, the minimum value and the maximum value are set as reference distance and a change range between two partial areas as constraint between the two partial areas of the plurality of arranged partial areas; and the size of the two partial areas is determined, based on the content data input in the two partial areas. Here, when a first value which is the sum of the length of the two partial areas with the determined size in the horizontal direction, and the length of the reference distance is not settled in a second value which is the length of the predetermined area in the horizontal direction; the distance between the partial areas is reduced to the set minimum value so that the first value is under the second value; and when the first value is not settled in the second value, even when the distance between the partial areas is reduced, the two partial areas will be reduced equally. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、テキストやイメージで構成されたドキュメントの生成、編集、そして印刷のための技術に関するものであり、更に詳しくは、バリアブルデータドキュメントの生成、編集、そして印刷に好適なものである。   The present invention relates to a technique for generating, editing, and printing a document composed of text and images, and more particularly, suitable for generating, editing, and printing a variable data document.

近年、商品の多品種化で商品ライフが短くなっていること、インターネット利用の普及による消費者のカスタマイズサービス指向などの要因からCRM(Customer Relationship Management)、One-to-Oneマーケティングの必要性が注目されている。これらの手法は、顧客満足度を高め、顧客の開拓や囲い込みを目指すという目的に対して非常に効果的なものである。   In recent years, the need for CRM (Customer Relationship Management) and One-to-One marketing has attracted attention due to factors such as the shortening of product life due to the increase in product variety and the orientation of consumer customization services due to the widespread use of the Internet. Has been. These methods are very effective for the purpose of increasing customer satisfaction and aiming to develop and lock in customers.

One-to-Oneマーケティングはデータベース・マーケティングの一種で、顧客の年齢、性別、趣味、嗜好、購買履歴等の個人属性情報をデータベース化し、その内容を分析、顧客のニーズに合った提案を行うものであり、その代表的な具体的手法としてバリアブルプリントが挙げられる。特に、最近ではDTP(デスクトップパブリッシング)技術の進展とデジタル印刷装置の普及に伴って、文書を顧客毎にカスタマイズして出力するバリアブルプリントシステムが開発されている。このようなバリアブルプリントシステムでは、顧客毎に異なる量のコンテンツが最適にレイアウトされたカスタマイズ文書を作成することが求められる。   One-to-One marketing is a type of database marketing that creates a database of personal attribute information such as customer age, gender, hobbies, preferences, purchase history, etc., analyzes the content, and makes proposals that meet customer needs As a representative concrete method, variable printing can be cited. In particular, recently, with the advancement of DTP (desktop publishing) technology and the spread of digital printing apparatuses, variable print systems that customize and output documents for each customer have been developed. In such a variable print system, it is required to create a customized document in which different amounts of content are optimally laid out for each customer.

一般に、バリアブルプリントシステムにおいてそのようなカスタマイズ文書を作成する際には、ドキュメント上にコンテナをレイアウトする。コンテナとはコンテンツ(描画内容)を描画するための部分領域であり、フィールド領域と呼ばれることもある。すなわち、ドキュメント上にこのようなコンテナをレイアウトし、データベースとレイアウトを関連付ける(データベースの各コンテンツと各コンテナとを関連付ける)といった作業により、カスタマイズ文書(ドキュメント)を作成する。本明細書ではこのようなドキュメントをバリアブルデータドキュメントという。   Generally, when creating such a customized document in the variable print system, a container is laid out on the document. A container is a partial area for drawing content (drawing contents), and is sometimes called a field area. That is, a customized document (document) is created by laying out such a container on a document and associating the database with the layout (associating each content of the database with each container). In this specification, such a document is referred to as a variable data document.

このようなバリアブルプリントシステムにおいて、レイアウトされた各コンテナには顧客によって異なるコンテンツを流し込むことが可能である。従って、コンテンツに流し込まれるデータのサイズは可変であり、これに対してコンテナのサイズが固定であると次のような課題が生じる。例えば、コンテナのサイズよりも大きなサイズのテキストデータが流し込まれた場合には全てのテキストをそのコンテナ内に表示出来なくなってしまう。あるいは、コンテナのサイズよりも大きなサイズのイメージデータが流し込まれた場合には、そのイメージの一部が欠落してしまう。このような問題をオーバーフローと呼ぶ。   In such a variable print system, different contents can be poured into each laid-out container depending on the customer. Therefore, the size of data to be flowed into the content is variable. On the other hand, if the size of the container is fixed, the following problem occurs. For example, when text data having a size larger than the size of the container is inserted, all text cannot be displayed in the container. Alternatively, when image data having a size larger than the size of the container is inserted, a part of the image is lost. Such a problem is called overflow.

なお、コンテンツがイメージデータの場合には、当該イメージを縮小してコンテナ内に描画することも考えられるが、イメージが極端に小さくなってしまうといった弊害が生じる可能性がある。また、固定サイズのコンテナ内に入りきらないテキストデータが挿入された場合に、テキストのフォントサイズを縮小し、当該コンテナ内に全てのテキストを表示可能にする技術も提案されている。しかしながら、このようにフォントサイズを調節する場合、フォントサイズが小さくなりすぎて、ドキュメント全体のバランスが崩れたり、読みにくくなるという課題が生じる。   If the content is image data, it may be possible to reduce the image and draw it in the container. However, there is a possibility that the image may become extremely small. In addition, a technique has been proposed in which, when text data that does not fit in a fixed-size container is inserted, the font size of the text is reduced and all text can be displayed in the container. However, when the font size is adjusted in this way, the font size becomes too small, resulting in a problem that the balance of the entire document is lost or difficult to read.

このような課題を解決するための自動レイアウトの技術として、あるコンテナのサイズが大きくなった場合に、隣接したコンテナとの間隔を保つべく当該隣接するコンテナのサイズを小さくする技術が特許文献1の「レイアウトデザイン装置」に開示されている。
特開平7−129658号公報 (0049、図8)
Patent Document 1 discloses a technique for reducing the size of an adjacent container in order to maintain a distance from the adjacent container when the size of a certain container is increased as an automatic layout technique for solving such a problem. It is disclosed in “Layout Design Device”.
JP 7-129658 A (0049, FIG. 8)

しかしながら、上述した特許文献1では、隣接するコンテナの間隔は固定されている。なお、本明細書では隣接するコンテナ同士の関連付けをリンクと称し、該隣接するコンテナ同士の間隔(距離)をリンクの長さと称する。特許文献1のように、コンテナとコンテナの間にリンクを張りそのリンクの長さが固定されている場合において、双方のコンテナを最適サイズになるように拡大しようとした場合、コンテナ間に張られた固定長のリンクの長さにより、コンテナが理想のサイズにならない可能性がある。リンクは、各コンテナの夫々を流し込まれるデータ量に応じた最適なサイズにするべく拡大するとコンテナ同士が重複してしまうという弊害を除去しようとするものである。しかしながら、このリンクの長さは固定であるため、例えばリンクが設定されているコンテナAとコンテナBにおいて、最適サイズとなるべくそれぞれを拡大しようとした場合であっても、リンクの長さ分は必ずコンテナA,B間に存在することになる。よって、コンテナA,Bを納めるページの領域の大きさとの関連から、これらコンテナA,Bの拡大はある程度阻止されることになる。   However, in Patent Document 1 described above, the interval between adjacent containers is fixed. In this specification, the association between adjacent containers is referred to as a link, and the interval (distance) between the adjacent containers is referred to as a link length. When a link is stretched between containers and the length of the link is fixed as in Patent Document 1, when trying to enlarge both containers to the optimum size, the link is stretched between the containers. Depending on the length of the fixed link, the container may not be the ideal size. The link is intended to eliminate the adverse effect of overlapping each container when it is expanded to an optimum size according to the amount of data to be poured into each container. However, since the length of this link is fixed, for example, even when trying to enlarge each of the containers A and B where the links are set to the optimum size, the link length is always It exists between containers A and B. Therefore, the expansion of the containers A and B is prevented to some extent from the relation with the size of the area of the page in which the containers A and B are stored.

また、逆に、それぞれのコンテナに入るデータ量が少ない場合、固定サイズのリンクによりコンテナA、コンテナBの距離は一定に決まっているため、コンテナA,Bの縮小が制約を受け、コンテナのサイズが必要以上に大きくなってしまう場合もある。すなわち、コンテナのサイズを最適化できず、例えばイメージなどで比率を保つ場合、不用意に拡大されてしまう場合がある。 また、例えば、コンテナのサイズよりも小さなサイズのテキスト(文字数が想定より少ない)が流し込まれた場合には、コンテナの領域に対して少ない領域に文字が配置されてしまい、コンテナに空きが生じてしまい、レイアウトの見た目が悪くなってしまうという問題もある。   Conversely, when the amount of data entering each container is small, the distance between containers A and B is fixed by a fixed-size link. May become larger than necessary. That is, the size of the container cannot be optimized, and for example, when the ratio is maintained with an image or the like, the container may be enlarged carelessly. Also, for example, when text with a size smaller than the size of the container (the number of characters is less than expected) is poured, characters are placed in a smaller area than the container area, resulting in an empty container. In other words, there is a problem that the layout looks worse.

以上のように、ユーザは、それぞれのコンテナが最適サイズになることを優先し、コンテナ間のリンクの長さはある程度狭まったり、拡がったりする自動レイアウトを期待することがある。しかしながら、リンク長が固定された上記従来技術ではこのような自動レイアウトは実現できない。   As described above, the user may prioritize the optimal size of each container, and may expect an automatic layout in which the link length between containers is narrowed or expanded to some extent. However, such an automatic layout cannot be realized with the above-described prior art in which the link length is fixed.

本発明は上記の課題に鑑みてなされたものであり、割り当てられたデータに基づくイメージを表示するための部分領域(コンテナ)間の距離(リンク長さ)を柔軟に変更可能とすることにより、その時々に挿入されるデータ量に応じて各部分領域のサイズが適切になるような自動レイアウト調整を実現することを目的とする。   The present invention has been made in view of the above problems, and by making it possible to flexibly change the distance (link length) between partial areas (containers) for displaying an image based on assigned data, An object is to realize automatic layout adjustment so that the size of each partial area is appropriate according to the amount of data inserted at that time.

上記の目的を達成するための本発明の一態様による情報処理装置は以下の構成を備える。すなわち、
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置手段と、
前記配置手段によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定手段と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定手段と、
前記決定手段において決定されたサイズの当該2つの部分領域の水平方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の水平方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定手段で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御手段とを備える。
In order to achieve the above object, an information processing apparatus according to an aspect of the present invention includes the following arrangement. That is,
Arrangement means for arranging a plurality of partial areas into which content data is poured in a predetermined area;
Setting means for setting a minimum value and a maximum value as a reference distance and a change range between the two partial areas as a constraint condition between two partial areas of the plurality of partial areas arranged by the arrangement unit;
Determining means for determining the size of the two partial areas based on the content data input to the two partial areas;
The first value that is the sum of the length in the horizontal direction of the two partial areas of the size determined by the determining means and the length of the reference distance is the second value that is the length in the horizontal direction of the predetermined area The distance between the partial areas is reduced to the minimum value set by the setting means so that the first value falls within the second value, and the distance between the partial areas is reduced. Layout control means for uniformly reducing the two partial areas when the first value does not fit in the second value.

また、上記の目的を達成するための本発明の他の態様による情報処理装置は以下の構成を備える。すなわち、
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置手段と、
前記配置手段によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定手段と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定手段と、
前記決定手段において決定されたサイズの当該2つの部分領域の垂直方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の垂直方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定手段で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御手段とを備える。
An information processing apparatus according to another aspect of the present invention for achieving the above object has the following configuration. That is,
Arrangement means for arranging a plurality of partial areas into which content data is poured in a predetermined area;
Setting means for setting a minimum value and a maximum value as a reference distance and a change range between the two partial areas as a constraint condition between two partial areas of the plurality of partial areas arranged by the arrangement unit;
Determining means for determining the size of the two partial areas based on the content data input to the two partial areas;
The first value that is the sum of the length in the vertical direction of the two partial areas of the size determined by the determining means and the length of the reference distance is the second value that is the length in the vertical direction of the predetermined area The distance between the partial areas is reduced to the minimum value set by the setting means so that the first value falls within the second value, and the distance between the partial areas is reduced. Layout control means for uniformly reducing the two partial areas when the first value does not fit in the second value.

本発明によれば、割り当てられたデータに基づくイメージを表示するための部分領域(コンテナ)間の距離(リンクの長さ)を柔軟に変更可能となるので、その時々に挿入されるデータ量に応じて各部分領域のサイズが適切になるような自動レイアウト調整を実現することができる。   According to the present invention, the distance (link length) between the partial areas (containers) for displaying the image based on the assigned data can be flexibly changed. Accordingly, automatic layout adjustment can be realized so that the size of each partial area becomes appropriate.

以下、添付の図面を参照して本発明の好適な実施形態を説明する。   Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

《第1実施形態》
<システム構成>
まず、図1および図2を参照して、本実施形態のバリアブルプリントシステムの構成を説明する。図1はバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の構成例を示すブロック図である。また、図2は図1に示されたホストコンピュータ101の構成を更に詳細に示すブロック図である。本実施形態で説明されるバリアブルプリント処理は、レイアウト調整装置であるホストコンピュータ101(汎用コンピュータモジュールで構成される)によって実行される。システム100上で実施可能となるレイアウト編集アプリケーションプログラム121(本発明のレイアウト調整プログラム)はホストコンピュータ101において、そのソフトウェアの全体、あるいは一部分が実行される。特にレイアウト編集のための処理やバリアブルデータドキュメントの印刷のための処理はホストコンピュータ101で実行されるソフトウェアにより実現される。
<< First Embodiment >>
<System configuration>
First, the configuration of the variable print system of the present embodiment will be described with reference to FIGS. 1 and 2. FIG. 1 is a block diagram illustrating a configuration example of a variable print system 100 for printing a variable data document. FIG. 2 is a block diagram showing the configuration of the host computer 101 shown in FIG. 1 in more detail. The variable print processing described in the present embodiment is executed by the host computer 101 (configured by a general-purpose computer module) that is a layout adjustment apparatus. The layout editing application program 121 (layout adjustment program of the present invention) that can be executed on the system 100 is executed entirely or partially by the host computer 101. In particular, the layout editing process and the variable data document printing process are realized by software executed by the host computer 101.

レイアウト編集アプリケーションプログラム121はコンピュータの可読媒体に格納され、そのコンピュータの可読媒体からホストコンピュータ101のメモリ136にロードされ、実行される。そのようなソフトウェアやコンピュータプログラムを格納したコンピュータの可読媒体はコンピュータプログラム製品である。コンピュータにおいてそのコンピュータプログラム製品を使用することにより、ドキュメントのレイアウト編集やバリアブルプリントに好適な装置が提供されることになる。   The layout editing application program 121 is stored in a computer-readable medium, loaded from the computer-readable medium into the memory 136 of the host computer 101, and executed. A computer readable medium storing such software or computer program is a computer program product. By using the computer program product in a computer, an apparatus suitable for document layout editing and variable printing is provided.

図2に示されるように、ホストコンピュータ101には、入出力インターフェース143を介してキーボード132や、マウス133のようなポインティングデバイス等が入力装置として接続される。また、出力装置としてのディスプレイ装置144がビデオインターフェース137を介して接続される。更に、ローカルプリンタ145等を入出力インターフェース138を介して接続することも可能である。また、入出力インタフェース138はコンピュータモジュール101をネットワーク107へ接続する機能も有する。これにより、ネットワークを介してシステム100内の他のコンピュータ装置にホストコンピュータ101を接続することができる。ネットワーク107の典型的な例としては、ローカルエリアネットワーク(LAN)、あるいはワイドエリアネットワーク(WAN)が挙げられる。   As shown in FIG. 2, a keyboard 132 and a pointing device such as a mouse 133 are connected to the host computer 101 via an input / output interface 143 as input devices. Further, a display device 144 as an output device is connected via a video interface 137. Furthermore, a local printer 145 or the like can be connected via the input / output interface 138. The input / output interface 138 also has a function of connecting the computer module 101 to the network 107. As a result, the host computer 101 can be connected to other computer devices in the system 100 via the network. Typical examples of the network 107 include a local area network (LAN) or a wide area network (WAN).

また、図2に示すように、ホストコンピュータ101は少なくとも1つのプロセッサユニット135、例えば半導体のランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)から構成されるメモリユニット136を含んでいる。格納デバイス139は、プログラム等を格納するコンピュータ可読媒体との間でデータのやり取りが可能なハードディスクドライブ140やフロッピー(登録商標)ディスクドライブ141を含む。なお、図2には示されていないが、磁気テープドライブ等も格納デバイス139として使用可能である。CD−ROMドライブ142は不揮発性のデータソースとして提供される(もちろん、CD−ROMによってコンピュータプログラムを提供してもよい)。   As shown in FIG. 2, the host computer 101 includes at least one processor unit 135, for example, a memory unit 136 composed of a semiconductor random access memory (RAM) or a read only memory (ROM). The storage device 139 includes a hard disk drive 140 and a floppy (registered trademark) disk drive 141 that can exchange data with a computer-readable medium that stores programs and the like. Although not shown in FIG. 2, a magnetic tape drive or the like can be used as the storage device 139. The CD-ROM drive 142 is provided as a non-volatile data source (of course, a computer program may be provided by a CD-ROM).

ホストコンピュータ101は、GNU/LINUXやマイクロソフトウインドウズ(登録商標)のようなオペレーティングシステムや、典型的にはオペレーティングシステムに従う形で、あるいは関連のある技術で知られているもので形成されたコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス134を介して通信を行うコンピュータモジュール101のコンポーネント135から143を利用する。すなわち、上述した135〜143で示される各構成は、バス134を介して通信可能に接続されており、ホストコンピュータ101にインストールされたオペレーティングシステムにより利用される。   The host computer 101 is an operating system such as GNU / LINUX or Microsoft Windows (registered trademark), or a computer system typically formed in accordance with the operating system or known in related technology. The components 135 to 143 of the computer module 101 that communicate via the interconnection bus 134 are used in a conventional manner of operation mode. That is, the above-described components indicated by 135 to 143 are communicably connected via the bus 134 and are used by an operating system installed in the host computer 101.

なお、図2に示したホストコンピュータ101の例としては、IBM互換PCやSUN のSparcstation、あるいはそれらを含んだコンピュータシステムが考えられる。   As an example of the host computer 101 shown in FIG. 2, an IBM compatible PC, a SUN Sparcstation, or a computer system including them can be considered.

<レイアウト編集アプリケーションの概要>
本実施形態では、レイアウトアプリケーションプログラム121はハードディスクドライブ140に常駐し、プロセッサ135により実行や読み込みがコントロールされるものとする。レイアウト編集アプリケーション121のプログラムの媒介記憶装置とネットワーク107からフェッチされるデータはハードディスクドライブ140に呼応して半導体メモリ136を使用する。
<Outline of layout editing application>
In the present embodiment, it is assumed that the layout application program 121 is resident in the hard disk drive 140 and execution and reading are controlled by the processor 135. Data fetched from the media storage device of the program of the layout editing application 121 and the network 107 uses the semiconductor memory 136 in response to the hard disk drive 140.

一つの例では、レイアウト編集アプリケーション121のエンコードされたプログラムは、CD−ROMやフロッピー(登録商標)ディスク上に格納され、対応するドライブ142や141を通じて読み込まれ、ハードディスクドライブ140にインストールされる。あるいは、別の例として、レイアウト編集アプリケーションプログラム121はネットワーク107からホストコンピュータ101内に読み込まれて、ハードディスクドライB140にインストールされてもよい。さらにソフトウェアは、磁気テープまたはROMまたは集積回路、光磁気ディスク、または、ホストコンピュータ101とその他のデバイス間における赤外線等の無線通信、PCMCIAカードのようなコンピュータ可読カード、そしてEメール通信やWEBサイト上の記録情報を持つインターネットやイントラネットを含む他の適当なコンピュータからホストコンピュータ101内にロードされてもよい。これらは、コンピュータ可読媒体の例であり、他のコンピュータ可読媒体が使用されてもよいことは明らかである。   In one example, the encoded program of the layout editing application 121 is stored on a CD-ROM or floppy (registered trademark) disk, read through the corresponding drive 142 or 141, and installed in the hard disk drive 140. Alternatively, the layout editing application program 121 may be read from the network 107 into the host computer 101 and installed in the hard disk drive B 140 as another example. In addition, the software can be on a magnetic tape or ROM or integrated circuit, a magneto-optical disk, or a wireless communication such as infrared between the host computer 101 and other devices, a computer readable card such as a PCMCIA card, and an email communication or WEB site. It may be loaded into the host computer 101 from another appropriate computer including the Internet or an intranet having the recorded information. These are examples of computer readable media and it will be appreciated that other computer readable media may be used.

図1において、本発明のレイアウト編集アプリケーション121はコンピュータにバリアブルプリント(バリアブルデータプリント(VDP)ともいう)を行わせるものであり、2つのソフトウェアコンポーネント、すなわちレイアウトエンジン105とユーザインターフェース103、を含んでいる。レイアウトエンジン105は、部分領域であるコンテナ(矩形の範囲)に与えられたサイズや位置の制限にしたがって、データベース119に格納されているバリアブルデータから1レコードずつ読み込み、読み込んだデータとコンテナの制限とから、読み込んだデータが流し込まれるコンテナの大きさや位置等を計算するソフトウェアコンポーネントである。また、本実施例では、レイアウトエンジン105は、更に、コンテナに割り当てられたデータを描画し、バリアブルデータドキュメントのイメージを生成する処理も行う。ただし、本発明はこれに限るものではなく、レイアウトエンジン105は各部分領域(コンテナ)のサイズと位置を決定するアプリケーションとして動作し、図示省略したプリンタドライバに描画情報を出力することで、プリンタドライバがバリアブルデータドキュメントのイメージ描画処理を行い、印刷データを生成してもよい。ユーザインタフェース103は、ユーザによるコンテナのレイアウトや属性設定を可能とし、ユーザにドキュメントテンプレートを作成させる。また、ユーザインターフェース103はドキュメントテンプレート内の各コンテナとデータソースとを関連付けるメカニズムを提供する。ユーザインタフェース103とレイアウトエンジン105はコミュニケーションチャネル123を介して通信する。   In FIG. 1, a layout editing application 121 according to the present invention causes a computer to perform variable printing (also referred to as variable data printing (VDP)), and includes two software components, that is, a layout engine 105 and a user interface 103. Yes. The layout engine 105 reads one record at a time from the variable data stored in the database 119 according to the size and position restrictions given to the container (rectangular range) that is the partial area, Is a software component that calculates the size, position, etc. of the container into which the read data is poured. In this embodiment, the layout engine 105 further performs processing for drawing data assigned to a container and generating an image of a variable data document. However, the present invention is not limited to this, and the layout engine 105 operates as an application for determining the size and position of each partial area (container), and outputs the drawing information to a printer driver (not shown), so that the printer driver May perform image drawing processing of a variable data document to generate print data. The user interface 103 enables the user to set the layout and attributes of the container, and allows the user to create a document template. The user interface 103 also provides a mechanism for associating each container in the document template with a data source. The user interface 103 and the layout engine 105 communicate via a communication channel 123.

図3は本実施形態によるバリアブルデータプリントの概略を説明する図である。レイアウト編集アプリケーション121のユーザインターフェースモジュール103(以下、ユーザインタフェース103と記載する)により、ユーザからの操作指示に従いページ上に複数のコンテナ181〜183を配置し、各コンテナに位置やサイズに関する制約条件を付与することによりドキュメントテンプレート180が生成される。また、ユーザインターフェース103はドキュメントテンプレート180とデータソース190との関連付け、更に各コンテナとデータソース190内の各データフィールドとの関連付けを行う。各コンテナとデータソース190内の各データフィールドとの関連付けを示す関連付け情報は、ドキュメントテンプレート内に記述され、該ドキュメントテンプレートは、HDD140に格納される。また、データソース190は、レコード単位で項目データが記載されているファイルであり、HDD140に格納されている。レイアウトエンジン105は、ユーザからの印刷指示もしくはプレビュー指示に応じて、ドキュメントテンプレートの各コンテナ181〜182に、関連付け情報で関連付けられたデータをデータソース190から読み込み、レコード単位で流し込み(例えば、データレコード1のデータフィールドA〜Cをコンテナ181〜183へ流し込む)、流し込まれたデータに応じて各コンテナのサイズ等を調整(レイアウト調整)する。プレビュー指示の場合は、レイアウト調整されたドキュメントイメージを生成し、ビデオディスプレイ144の画面上にプレビューとして表示するべく出力される。また印刷指示の場合は、レイアウトエンジン105もしくはプリンタドライバを用いて生成したドキュメントイメージを印刷データとしてプリントサーバ109へ出力する。データレコード1,2,3…を順次処理することにより、バリアブルデータプリントが実現されることになる。   FIG. 3 is a diagram for explaining the outline of variable data printing according to the present embodiment. A user interface module 103 (hereinafter referred to as user interface 103) of the layout editing application 121 arranges a plurality of containers 181 to 183 on a page in accordance with an operation instruction from a user, and places constraints on positions and sizes in each container. By assigning, a document template 180 is generated. The user interface 103 associates the document template 180 with the data source 190 and further associates each container with each data field in the data source 190. Association information indicating the association between each container and each data field in the data source 190 is described in a document template, and the document template is stored in the HDD 140. The data source 190 is a file in which item data is described in units of records, and is stored in the HDD 140. In response to a print instruction or a preview instruction from the user, the layout engine 105 reads data associated with the association information from the data source 190 into each of the containers 181 to 182 of the document template, and flows it in record units (for example, data records 1 data fields A to C are flowed into the containers 181 to 183), and the size and the like of each container are adjusted (layout adjustment) according to the flowed data. In the case of a preview instruction, a document image whose layout has been adjusted is generated and output to be displayed as a preview on the screen of the video display 144. In the case of a print instruction, a document image generated using the layout engine 105 or the printer driver is output as print data to the print server 109. By sequentially processing the data records 1, 2, 3,..., Variable data printing is realized.

ドキュメント生成のためのデータソース(190)は、例えば、データベースアプリケーションを動かしている他のコンピュータによって構成されたデータベースサーバ117上の一般的なデータベース119であってもよい。この場合、ホストコンピュータ101はネットワーク107を介してデータベースサーバ117と通信し、データソースを取得できる。また、レイアウト編集アプリケーション121によって生成された、バリアブルデータプリントのためのドキュメントテンプレート(180)は、ホストコンピュータ101或いは他のコンピュータで構成されるファイルサーバ115に保存される。図3で上述したように、レイアウト編集アプリケーション121のレイアウトエンジン105は、データとマージされたドキュメントテンプレートによって構成されたバリアブルデータドキュメントを生成する。これらのドキュメントは、ホストコンピュータ101のローカルファイルシステムに保存されるか、ファイルサーバ115に保存されるか、あるいはプリンタ113に送信されて印刷される。プリントサーバ109はネットワークと直接にはつながっていないプリンタにネットワーク機能を提供するためのコンピュータである。プリントサーバ109とプリンタ113は一般的な通信チャネル111を介して接続される。   The data source (190) for document generation may be, for example, a general database 119 on a database server 117 configured by another computer running a database application. In this case, the host computer 101 can communicate with the database server 117 via the network 107 and acquire a data source. The document template (180) for variable data printing generated by the layout editing application 121 is stored in the file server 115 constituted by the host computer 101 or another computer. As described above with reference to FIG. 3, the layout engine 105 of the layout editing application 121 generates a variable data document configured by a document template merged with data. These documents are stored in the local file system of the host computer 101, stored in the file server 115, or transmitted to the printer 113 and printed. The print server 109 is a computer for providing a network function to a printer that is not directly connected to the network. The print server 109 and the printer 113 are connected via a general communication channel 111.

<他のシステム構成例>
図4は、図1と類似のブロック図であるが、エンジンサーバ227が追加されている。エンジンサーバ227に格納されているレイアウトエンジン225は、レイアウトエンジン105の分離バージョンである。エンジンサーバ227には一般的なコンピュータが用いられる。レイアウトエンジン225は、印刷やその他の目的に応じてバリアブルデータドキュメントを生成するために、ファイルサーバ115に保存されたドキュメントテンプレートとデータベース119に保存されたデータとを結合する。そのようなオペレーションはユーザインタフェース103を介して要求される。
<Other system configuration examples>
FIG. 4 is a block diagram similar to FIG. 1, but with an engine server 227 added. The layout engine 225 stored in the engine server 227 is a separated version of the layout engine 105. A general computer is used for the engine server 227. The layout engine 225 combines the document template stored in the file server 115 and the data stored in the database 119 in order to generate a variable data document according to printing or other purposes. Such an operation is requested via the user interface 103.

<レイアウト編集アプリケーションの説明>
以下、レイアウト編集アプリケーション121について説明する。
<Description of layout editing application>
Hereinafter, the layout editing application 121 will be described.

[メインウインドウ]
ユーザインターフェース103は、操作時に図5に示されるようなアプリケーションウインドウ301によって形成されたユーザインターフェース画面をビデオディスプレイ144に表示させる。このウインドウ301は、メニューバー302、ツールバー303、ワークエリア306とオプションのパレット311を有する。メニューバー302とツールバー303は非表示にすることや、スクリーン上の色々な場所に移動することが可能である。また、ワークエリア306はマウス133の操作によってその場所を移動させることが可能である。また、パレット311はオプションであり、カーソル/ポインタデバイス313はマウス133が指し示す位置を表す。
[Main window]
The user interface 103 causes the video display 144 to display a user interface screen formed by the application window 301 as shown in FIG. This window 301 has a menu bar 302, a tool bar 303, a work area 306, and an optional palette 311. The menu bar 302 and the tool bar 303 can be hidden or moved to various places on the screen. The work area 306 can be moved by operating the mouse 133. A palette 311 is an option, and a cursor / pointer device 313 represents a position pointed to by the mouse 133.

メニューバー302は、周知の技術として知られているように、メニューオプションの階層の下に拡張される多くのメニューアイテム304を持つ。   The menu bar 302 has a number of menu items 304 that extend below the menu options hierarchy, as is known in the art.

ツールバー303は、アプリケーションの特別なモードによって非表示状態にする、または表示状態にすることが可能な多くのツールボタンとウィジット305を持つ。   The toolbar 303 has a number of tool buttons and widgets 305 that can be hidden or displayed depending on a special mode of the application.

ルーラー308はオプションであり、ワークエリア内のポインタ、ページ、ライン、マージンガイド、コンテナまたはオブジェクトの位置を示すために使われる。   Ruler 308 is optional and is used to indicate the position of a pointer, page, line, margin guide, container or object within the work area.

パレット311はバリアブルデータライブラリのような追加機能にアクセスするために使われる。パレット311は移動、リサイズ、クローズをするためのウインドウコントロール312を持つ。パレット311はオプションで、ワークエリアの前面に表示される、あるいはオブジェクトの背面に隠される。パレット311はアプリケーションウインドウ301の範囲内のみに表示されることを制限される、あるいはアプリケーションウインドウ301の外側にその一部或いは全体を表示することを許される。   The palette 311 is used to access additional functions such as a variable data library. The palette 311 has a window control 312 for moving, resizing, and closing. The palette 311 is optional and is displayed in front of the work area or hidden behind the object. The palette 311 is restricted from being displayed only within the range of the application window 301, or is allowed to display part or all of the palette 311 outside the application window 301.

ツールバー303には図6に示されるような、ユーザ選択可能な『ボタン』が配置されている。
(1)選択ツールボタン403:コンテナの辺を選択、移動、サイズ変更、リサイズそしてロック/ロック解除のために使われる。コンテナの選択は、コンテナの周りに選択ボックスをドラッグすることによりなされる。また、CTRLキーを押しながら、複数のコンテナについて選択操作をすることによって、複数のコンテナを選択可能である。
(2)テキストコンテナツールボタン404:スタティックあるいはバリアブルテキストを持つコンテナを作成するために使われる。
(3)イメージコンテナツールボタン404:スタティックあるいはバリアブルイメージを持つコンテナを作成するために使われる。
(4)リンクツールボタン406:コンテナ間に関連付けを行うリンクを作成するために使われ、リンクの距離をコントロールするためにも使われる。
The tool bar 303 has “buttons” selectable by the user as shown in FIG.
(1) Selection tool button 403: Used for selecting, moving, resizing, resizing, and locking / unlocking a container edge. Container selection is done by dragging a selection box around the container. A plurality of containers can be selected by performing a selection operation on the plurality of containers while pressing the CTRL key.
(2) Text container tool button 404: used to create a container having static or variable text.
(3) Image container tool button 404: used to create a container having a static or variable image.
(4) Link tool button 406: used to create a link for associating containers, and also used to control the distance of the link.

レイアウト編集アプリケーション121の図5に示したアプリケーションウインドウ301は、ページ内に各コンテナやリンクをレイアウトすることで、基本レイアウトを決定することができる。基本レイアウトとは、バリアブルデータプリントで基本となるレイアウトのことである。基本レイアウト内の各コンテナが固定コンテナである場合は、すべてのレコードの印刷結果のレイアウトは同じになる。また、基本レイアウト内の各コンテナが後述する可変コンテナである場合は、レコード単位に読み込まれるデータの量やサイズにより各コンテナのサイズや位置が、後述する制約の範囲内で変動することになる。よって、レイアウト編集アプリケーション121で作成されるドキュメントテンプレートは、あくまで基本レイアウトを決定するものであり、可変コンテナが含まれる場合は、最終的な印刷物のレイアウトは読み込まれるデータによりレイアウト調整されることになる。   The application window 301 shown in FIG. 5 of the layout editing application 121 can determine a basic layout by laying out containers and links in a page. The basic layout is a basic layout for variable data printing. If each container in the basic layout is a fixed container, the layout of the print results of all records is the same. In addition, when each container in the basic layout is a variable container described later, the size and position of each container varies within the constraints described later depending on the amount and size of data read in units of records. Therefore, the document template created by the layout editing application 121 determines the basic layout to the last, and when a variable container is included, the layout of the final printed matter is adjusted by the read data. .

[ドキュメントテンプレート]
図5において、ワークエリア306はドキュメントテンプレート(180:基本レイアウト)のデザインを表示・編集するために使われる。これはユーザがドキュメントテンプレートをデザインする過程において、印刷されるドキュメントの概観をユーザに提示することを可能とする。これにより、ユーザは、データソース(190)とマージされたドキュメントが、バリアブルデータの量・サイズに基づいてどのように変化するかを容易に理解できる。
[Document Template]
In FIG. 5, a work area 306 is used to display / edit the design of a document template (180: basic layout). This allows the user to be presented with an overview of the document to be printed in the process of designing the document template. Thus, the user can easily understand how the document merged with the data source (190) changes based on the amount and size of the variable data.

また、データソースがドキュメントテンプレートに関連付けられていた場合は、現在のドキュメントのプレビューができるように、対応するバリアブルテキストやイメージがレイアウトされた各コンテナに表示される。   When the data source is associated with the document template, the corresponding variable text or image is displayed in each laid out container so that the current document can be previewed.

ドキュメントテンプレートにおけるドキュメント構造とバリアブルデータコンテナの描写をする視覚的な手がかり(コンテナの枠線、アンカー、スライダー、リンク等)は、ドキュメントテンプレート作成時には常に表示され、バリアブルデータを流し込むプレビュー時には、視覚的な手がかりは、カーソルをコンテナ上に移動させたときや、コンテナを選択したときに表示される。   Visual clues (such as container borders, anchors, sliders, links, etc.) that describe the document structure and variable data container in the document template are always displayed when creating the document template, and visual clues when previewing the variable data. The clue is displayed when the cursor is moved over the container or when a container is selected.

ワークエリア306はスクロールバー307とオプションのルーラー308とドキュメントテンプレート309を含む。ドキュメントテンプレート309はページが複数あることを示すことができる。また、ドキュメントテンプレート309は、図3のドキュメントテンプレート180を表示しているものである。   The work area 306 includes a scroll bar 307, an optional ruler 308, and a document template 309. The document template 309 can indicate that there are a plurality of pages. The document template 309 displays the document template 180 shown in FIG.

与えられたドキュメントテンプレートのページサイズは、周知の技術を用いて、ユーザによって指定される。例えばメニューの「ファイル」から「ページ設定」を選択することでページサイズを設定するダイアログを表示し、そこでユーザが指定したページサイズが反映されることになる。それぞれのドキュメントでの実際のページ数は、関連付けられたデータソース内のバリアブルデータによって変化する可能性が有る。これは、ドキュメントテンプレート内に可変表のようにバリアブルデータの量により大きさが変更されるフィールドが設定されている場合、1ページ内にバリアブルデータをフィットできないバリアブルデータが読み込まれると、追加のページが自動的に作成されるからである。   The page size of a given document template is specified by the user using well-known techniques. For example, by selecting “Page Setup” from “File” in the menu, a dialog for setting the page size is displayed, and the page size specified by the user is reflected there. The actual number of pages in each document can vary depending on the variable data in the associated data source. This is because when a variable size is set in the document template, such as a variable table, when the variable data that cannot fit the variable data is read in one page, an additional page is added. Is created automatically.

それぞれのページ内に示される境界線310は、ページ上の印刷可能なオブジェクトの最大幅を示す、任意のページマージンである。   The border 310 shown in each page is an arbitrary page margin that indicates the maximum width of a printable object on the page.

図6は1ページのドキュメントテンプレート309上に表示され得るオブジェクトの例を示す図である。このようなオブジェクトとしては、コンテナ407、408と、任意に適用するアンカーアイコン409、固定されている辺411、414、固定されていない辺410、リンク412そしてスライダー413を持つ。アンカーアイコン409は、コンテナの矩形の角、辺、またはコンテナの中央に設定することが可能である。アンカーアイコン409が設定されると、設定された個所の位置が固定となる。つまり、図6の例では、アンカーアイコン409は、コンテナ407の左上の角に設定されているため、コンテナ407はバリアブルデータが流し込まれ、バリアブルデータの画像サイズもしくはテキスト量が多い場合に、右方向及び下方向に拡大可能であることを示している。アンカーアイコン409が辺に設定されている場合は、その辺が固定となり、その他の3辺の各方向に拡大可能である。また、アンカーアイコン409がコンテナの中央に設定されている場合は、コンテナの中央位置が固定となり、コンテナ矩形の中央位置が変わらないように、4方向に拡大可能である。リンク412は詳細は後述するが、コンテナ407とコンテナ408が関連付けられていることを示しており、このリンクに設定されている長さ(範囲指定可能)を保ちつつ、コンテナ408が右方向に移動可能であることを示している。スライダー413は、設定されている辺と水平方向に移動可能であることを示している。   FIG. 6 is a diagram showing an example of objects that can be displayed on the document template 309 of one page. Such objects include containers 407 and 408, an anchor icon 409 to be arbitrarily applied, fixed sides 411 and 414, non-fixed sides 410, links 412, and a slider 413. The anchor icon 409 can be set at a corner of the container rectangle, a side, or the center of the container. When the anchor icon 409 is set, the position of the set location is fixed. That is, in the example of FIG. 6, since the anchor icon 409 is set at the upper left corner of the container 407, when the variable data is poured into the container 407 and the image size or text amount of the variable data is large, the right direction And it shows that it can be expanded downward. When the anchor icon 409 is set to a side, the side is fixed and can be enlarged in each of the other three sides. When the anchor icon 409 is set at the center of the container, the center position of the container is fixed and can be expanded in four directions so that the center position of the container rectangle does not change. Although the link 412 will be described in detail later, it indicates that the container 407 and the container 408 are associated with each other, and the container 408 moves in the right direction while maintaining the length (range can be specified) set in this link. It shows that it is possible. The slider 413 indicates that it can move in the horizontal direction with respect to the set side.

[コンテナ]
ここで、コンテナについて説明する。コンテナは、ドキュメントテンプレート内にバリアブルデータファイルから固定あるいは可変のテキスト/イメージが流し込まれ、描画されるスペース(これを部分領域と呼ぶ)であり、図6に示されるように他のコンテナやオブジェクトと共にレイアウトされる。ユーザインターフェース画面を介して、ユーザからの操作指示により、コンテナはマウス133の操作により移動、サイズ調整、再作成される。
[container]
Here, the container will be described. A container is a space (called a partial area) in which a fixed or variable text / image is poured from a variable data file into a document template, and is drawn together with other containers and objects as shown in FIG. Laid out. The container is moved, adjusted in size, and recreated by operating the mouse 133 in accordance with an operation instruction from the user via the user interface screen.

より正確にはコンテナは、設定の集まり、視覚的表現、そしてインタラクションと編集動作をもっている。下記は本実施形態によるコンテナの定義である。   More precisely, a container has a collection of settings, a visual representation, and interaction and editing operations. The following is a definition of a container according to this embodiment.

(1)コンテナは固定あるいは可変のコンテンツを持つ。可変コンテンツは、データソースから取得したデータがドキュメント毎、つまりレコード毎に異なる可能性があるという意味でダイナミック(動的)であるということができる。ただし、本実施形態の可変コンテンツは、アニメーション化されたもの、あるいは他の方法で時間的に変化するコンテンツは印刷には適していないため、ここでは意図していない。同様に、固定コンテンツはコンテナを使って生成される全てのドキュメントで、同じように表示される。しかしながら、可変コンテンツとリンクが設定されている場合、可変コンテンツの影響を受けて、固定コンテンツはそれぞれのドキュメントで位置が異なる可能性がある。   (1) A container has fixed or variable contents. The variable content can be said to be dynamic in the sense that the data acquired from the data source may be different for each document, that is, for each record. However, the variable content of the present embodiment is not intended here because the animated content or the content that changes with time by another method is not suitable for printing. Similarly, fixed content is displayed in the same way for all documents generated using the container. However, when the variable content and the link are set, the position of the fixed content may be different in each document due to the influence of the variable content.

(2)コンテナは、コンテンツに適用される背景色、ボーダー、フォント・スタイルのようなテキスト設定と同様の装飾機能を持っている。このような設定をコンテナ属性と呼ぶ。コンテナ属性は、各コンテナごとに設定可能であるが、あるコンテナと同じコンテナ属性であるという設定を行うことも可能である。   (2) The container has a decoration function similar to the text setting such as the background color, border, font style applied to the content. Such a setting is called a container attribute. The container attribute can be set for each container, but it is also possible to set the same container attribute as a certain container.

(3)コンテナはドキュメントを生成する際にデータソースからのデータとマージされる。装飾機能は、どんな固定コンテンツでもそうであるように、印刷された出力物において可視である。可変コンテンツはデータソースからの特定のデータの表示を提供する。コンテナのこの表現は例えば印刷されるか、ビデオディスプレイ144のスクリーン上に表示されるか、その両方が可能である。   (3) The container is merged with data from the data source when generating the document. The decoration function is visible in the printed output, as is any fixed content. Variable content provides an indication of specific data from a data source. This representation of the container can be printed or displayed on the screen of the video display 144, or both.

(4)コンテナは、図6に示されるように視覚的な手がかりとしてのユーザインターフェースを有している。例えばコンテナの編集そして表示設定のためのインタラクティブなグラフィカルユーザインターフェース(GUI)を持つ。GUIの各要素はビデオディスプレイ144のスクリーン上に表示されるが、ドキュメントとしては印刷されない。レイアウト編集アプリケーション121のユーザインターフェース103は、背景色やフォントのようなコンテナの装飾機能のいくつかを表示し、さらにコンテナの設定の編集や表示を可能にするための機能を有している。   (4) The container has a user interface as a visual clue as shown in FIG. For example, it has an interactive graphical user interface (GUI) for container editing and display settings. Each element of the GUI is displayed on the screen of the video display 144, but is not printed as a document. The user interface 103 of the layout editing application 121 displays some of the container decoration functions such as the background color and font, and further has a function for enabling the editing and display of the container settings.

[コンテナの制約]
コンテナはそれぞれのドキュメントで表示されるコンテンツをどのように結びつけるかの制御に関する制約がある。これらの制約(固定/可変コンテンツをコンテナと結びつけることを含む)は、ユーザが一つのドキュメントテンプレートから多数のドキュメントの世代をコントロールする主要な方法である。制約の一つの例は『このコンテナのコンテンツの高さは最大4インチです』である。また、別の制約の例は『コンテナのコンテンツの左エッジは、それぞれのドキュメントにおいて同じ水平位置で表示しなければならない』である。ここに記述される内容は、GUIを使ってこのような制約を表示、編集するためのいろいろな方法である。
[Container constraints]
Containers have restrictions on controlling how the content displayed in each document is linked. These constraints (including linking fixed / variable content with containers) are the primary way for users to control multiple document generations from a single document template. One example of a constraint is “the content height of this container is a maximum of 4 inches”. Another example of the constraint is “the left edge of the contents of the container must be displayed at the same horizontal position in each document”. The contents described here are various methods for displaying and editing such constraints using a GUI.

イメージがページ上に定義された場所を持っているように、固定コンテンツの配置を指定するコンテンツプレイスホルダーは、デジタル印刷技術でよく知られている。コンテナは位置とサイズを持ち、それらは公知の技術で知られている手法で編集され、表示される。よって、以下の説明では、バリアブルデータ印刷に特化した方法における表示・編集に焦点を合わせる。   Content placeholders that specify the placement of fixed content so that the image has a defined location on the page are well known in digital printing technology. Containers have a position and a size, which are edited and displayed in a manner known in the art. Therefore, the following description focuses on display / editing in a method specialized for variable data printing.

コンテナを用いることにより、ユーザは、ドキュメントにおけるコンテンツのサイズ(描画サイズ)や位置を指定することが可能となる。いく種類ものドキュメントが一つのドキュメントテンプレートから生成されるので、コンテナに多数の可能性と制約を設定することになるが、これらの設定(指定)や表示のために所定のユーザインターフェースが利用される。   By using the container, the user can specify the size (drawing size) and position of the content in the document. Since many types of documents are generated from a single document template, many possibilities and restrictions are set in the container, and a predetermined user interface is used for setting (designating) and displaying these. .

1つのコンテナの辺は、関連付けられたコンテンツがドキュメント内で表示される仮想の境界線を定義する。したがって、コンテナの左辺を論じることは、関連付けられたコンテンツが、各ドキュメントにおいて、表示可能であるエリア内の最も左の辺を論じることと同じである。同様に、コンテナの高さを論じることは、生成されたドキュメントで関連付けられたコンテンツの高さの制約を論じることとして理解される。本明細書では、ユーザインターフェース103を参照してコンテナの辺あるいは大きさを論じるところで、この区別は明らかにされるであろう。   An edge of one container defines a virtual border where the associated content is displayed in the document. Thus, discussing the left side of the container is the same as discussing the leftmost side in the area where the associated content is displayable in each document. Similarly, discussing container height is understood as discussing content height constraints associated with the generated document. In the present specification, this distinction will be clarified when the sides or sizes of the container are discussed with reference to the user interface 103.

以下の記載において、コンテンツの表示を制限するために使われるある値を定義している用語『固定』は、全てのドキュメントで同じである。   In the following description, the term “fixed” that defines a value used to limit the display of content is the same for all documents.

(1)コンテナの幅が固定である場合、関連付けられたコンテンツに割り当てられる幅は、全てのドキュメントで同じになる。   (1) When the width of the container is fixed, the width assigned to the associated content is the same for all documents.

(2)コンテナの高さが固定である場合、関連付けられたコンテンツに割り当てられる高さは、全てのドキュメントで同じになる。   (2) If the height of the container is fixed, the height assigned to the associated content is the same for all documents.

(3)距離(リンクの長さ)が固定である場合、指定された距離は全てのドキュメントにおける制約となる。   (3) When the distance (link length) is fixed, the specified distance becomes a constraint in all documents.

(4)コンテナの左右辺が固定の場合、ページに関する辺の水平位置は全てのドキュメントで同じであることを意味している。ただし、コンテナの高さあるいは垂直方向の位置は、変化する可能性がある。例えば、コンテナの左辺が固定である場合、関連付けられたコンテンツの表示位置は、全てのドキュメントでその左辺の位置は同じ水平位置となるが、あるドキュメントではページの上の方に表示され、他のドキュメントではページの下の方に表示される可能性がある。   (4) When the left and right sides of the container are fixed, it means that the horizontal position of the side regarding the page is the same in all documents. However, the height or vertical position of the container may change. For example, if the left side of a container is fixed, the display position of the associated content is the same horizontal position in all documents, but in some documents it is displayed at the top of the page, In the document, it may appear at the bottom of the page.

(5)コンテナの上下辺が固定の場合、ページにおける辺の垂直位置は全てのドキュメントで同じとなることを意味している。ただし、コンテナの幅あるいは水平位置はドキュメントによって変わる可能性がある。   (5) When the upper and lower sides of the container are fixed, it means that the vertical position of the side in the page is the same in all documents. However, the width or horizontal position of the container may vary from document to document.

(6)コンテナの垂直軸はコンテナの右辺と左辺に平行で、それらの中間に位置される仮想の垂直線である。もしコンテナの垂直軸が固定なら、当該コンテナの左右辺の水平位置の平均(すなわち左右の中央位置)は、すべてのドキュメントで同じとなる。この制約において、コンテナの幅は変化する可能性がある。しかしながら、左右辺が垂直軸にもっとも遠いものからもっともものまで、垂直軸は全てのドキュメントで同じ水平位置となる。なお、コンテナの高さと垂直位置はこの制約によって影響されない。   (6) The vertical axis of the container is a virtual vertical line that is parallel to the right side and the left side of the container and located between them. If the vertical axis of the container is fixed, the average horizontal position of the left and right sides of the container (ie, the left and right center position) is the same for all documents. Under this constraint, the width of the container can change. However, the vertical axis is the same horizontal position in all documents, with the left and right sides from the furthest to the most vertical axis. Note that the height and vertical position of the container are not affected by this restriction.

(7)同様に、もし水平軸が固定なら、コンテナの上辺と下辺の平均が同一の垂直方向位置に配置される。ただし、コンテナの幅と水平位置はこの制約によって影響されることはない。   (7) Similarly, if the horizontal axis is fixed, the average of the upper and lower sides of the container is placed at the same vertical position. However, the width and horizontal position of the container are not affected by this restriction.

(8)水平軸と垂直軸の両方が固定である場合、コンテナの中心位置が固定されていることを意味する。ただし、コンテナの幅・高さはこの制約によって影響されない。   (8) When both the horizontal axis and the vertical axis are fixed, it means that the center position of the container is fixed. However, the width and height of the container are not affected by this restriction.

(9)コンテナの角位置、コンテナの辺の中間位置、あるいはコンテナの中心位置が固定である場合、それぞれの位置はすべてのドキュメントで同じ場所となる。例えば、もしコンテナの左上角が固定なら、配置されたコンテナの左上位置が全てのドキュメントで同じになることを意味している。   (9) When the corner position of the container, the intermediate position of the container side, or the center position of the container is fixed, the respective positions are the same in all documents. For example, if the upper left corner of the container is fixed, it means that the upper left position of the arranged container is the same for all documents.

(10)垂直辺あるいは垂直軸は、ページの左辺もしくは右辺、あるいは左ページマージンもしくは右ページマージン、あるいは他の水平位置に関連付けされて固定することができる。同様に、水平辺あるいは水平軸はページの上辺もしくは下辺、あるいは上下ページマージン、あるいは他の垂直位置に関連付けされて固定することができる。   (10) The vertical side or the vertical axis can be fixed in association with the left or right side of the page, the left page margin or the right page margin, or another horizontal position. Similarly, the horizontal side or horizontal axis can be fixed in association with the top or bottom side of the page, the top and bottom page margins, or other vertical positions.

『固定』の反対は、コンテナの辺、軸、角、中間位置、あるいはドキュメント制約がドキュメント間(レコード間)で変化するかもしれないことを意味する『可変』である。例えば、ページ内では、バリアブルデータのサイズや量により、動的にレイアウトが変更されることを期待するが、特定のコンテナについては、大きさや位置を固定にしたり、また、ページの角のコンテナの四隅は固定にしたいということを所望する場合がある。そのため、本レイアウト編集アプリケーション121では、各コンテナ(部分領域)について、辺、軸、角、中間位置等を固定にするか、可変にするかを適宜設定できるようにした。これにより、ユーザはドキュメントテンプレート180の基本レイアウトを決定する場合に、ユーザが所望とするように基本レイアウトを作成することができる。   The opposite of “Fixed” is “Variable” which means that the sides, axes, corners, intermediate positions of the container, or document constraints may change between documents (between records). For example, in a page, it is expected that the layout will be changed dynamically depending on the size and amount of variable data, but for specific containers, the size and position may be fixed, or the corner of the page It may be desired that the four corners be fixed. For this reason, the layout editing application 121 can appropriately set whether to fix or change the sides, axes, corners, intermediate positions, and the like for each container (partial region). Thereby, when determining the basic layout of the document template 180, the user can create the basic layout as desired by the user.

[コンテナ表示・編集]
−−新規コンテナの作成方法−−
コンテナは、テキストコンテナとイメージコンテナの2種類で記述される。テキストコンテナはテキストおよび埋め込みのイメージを持つ。イメージコンテナは、イメージだけを持つ。
[Container display / edit]
-How to create a new container-
Containers are described in two types: text containers and image containers. A text container has text and an embedded image. An image container has only images.

図6で示されるように、新規のテキストコンテナあるいはイメージコンテナは、テキストコンテナツール404あるいはイメージコンテナツール405をマウス133でクリックし、ドキュメントテンプレート309上に四角形をドラッグすることによって、当該ドキュメントテンプレート309上に作成される。   As shown in FIG. 6, a new text container or image container is displayed on the document template 309 by clicking the text container tool 404 or the image container tool 405 with the mouse 133 and dragging a rectangle onto the document template 309. To be created.

あるいは、コンテナは、適切なツール404、405をアクティブにした後に、ドキュメントテンプレート309上で単にクリックすることによって作成されるようにしてもよい。この場合、マウス133のクリック操作に応じてデフォルトサイズのコンテナがテンプレート上に挿入されるとともに、当該新規コンテナの寸法等を設定するためのダイアログボックスあるいは他のプロンプトが提供される。なお、コンテナのサイズは自動的に前もって定義されるようにしてもよいし、あるいは、計算されたスキーマによって作成・配置される、等、種々の方法が考えられる。ここで生成されたコンテナをマウス等の入力手段により選択し、右クリックでプロパティを指示する等の操作を行うことにより、コンテナのプロパティダイアログが表示され、コンテナの制約を設定することができる。コンテナのプロパティダイアログUI(部分領域設定手段に相当する)では、上述した各種の制約を設定することができる。また、コンテナのプロパティダイアログでは、コンテナのサイズ(幅、高さ)や位置を決定することができ、可変サイズにする場合は、コンテナの基本パターン(基本サイズと基準位置)を設定し、更に、最大コンテナサイズ(幅、高さ)と最小コンテナサイズ(幅、高さ)を設定することが可能となっている。   Alternatively, the container may be created by simply clicking on the document template 309 after activating the appropriate tool 404, 405. In this case, a default size container is inserted on the template in response to a click operation of the mouse 133, and a dialog box or other prompt for setting the dimensions of the new container is provided. It should be noted that the size of the container may be automatically defined in advance, or various methods are conceivable, such as creation and arrangement based on a calculated schema. A container property dialog is displayed by selecting the generated container with an input means such as a mouse and performing an operation such as instructing a property by right-clicking, and the constraints of the container can be set. In the container property dialog UI (corresponding to the partial area setting means), the above-described various restrictions can be set. In the container property dialog, you can determine the size (width, height) and position of the container. To change the size, set the basic pattern (basic size and reference position) of the container. The maximum container size (width and height) and the minimum container size (width and height) can be set.

[コンテナの表示方法]
図7の(A)から(D)はコンテナの辺に関する表示ルールを例示している。
[Container display method]
(A) to (D) of FIG. 7 exemplify display rules related to the sides of the container.

アプリケーション121は、コンテナの辺の状態を表現するために、実線(アイテム503)あるいは点線(504)を用いて辺を表すとともに、アンカー(辺の近くに描画された506、507、509によって示されるような線、形状、アイコン)、ハンドル(移動、修正するために領域の辺上あるいは近傍に描画されたコントロール点、502)、スライダー(辺の両側に描画された短い並行線、図6の413)、拡縮アイコン(505)、色を用いる。   The application 121 represents a side using a solid line (item 503) or a dotted line (504) to represent the state of the side of the container, and is indicated by an anchor (506, 507, 509 drawn near the side). Lines, shapes, icons), handles (control points drawn on or near the side of the area to move and modify, 502), sliders (short parallel lines drawn on both sides of the side, 413 in FIG. 6) ), Enlargement / reduction icon (505), and color.

図7(A)〜(D)に示されるコンテナ表示方法のルールは以下の通りである。
(1)それぞれの辺を固定するために、実線で描画する。
(2)幅が固定の場合は、左と右の辺を実線で描画する。
(3)高さが固定の場合は、上と下の辺を実線で描画する。
(4)軸は描画しない。
(5)(1)〜(3)によって描画されていないそれぞれの辺の近くには拡縮アイコンが描画され、それらの辺を点線で描画する。
(6)垂直辺と水平辺、あるいは垂直軸と水平軸のそれぞれのペアで、もし両者が固定なら、それらの交差点にアンカーが描画される。
(7)それぞれの固定辺で、もし辺のどこにもアンカーが描画されていなければ、エッジの中央にスライダーが描画される。
(8)垂直及び水平辺、あるいは垂直及び水平軸のそれぞれのペアで、アンカーやスライダーが描画されていない場合、それらの交差点にハンドルが描画される。
The rules for the container display method shown in FIGS. 7A to 7D are as follows.
(1) Draw with solid lines to fix each side.
(2) When the width is fixed, the left and right sides are drawn with solid lines.
(3) When the height is fixed, the upper and lower sides are drawn with solid lines.
(4) The axes are not drawn.
(5) An enlargement / reduction icon is drawn near each side not drawn by (1) to (3), and those sides are drawn by dotted lines.
(6) For each pair of vertical side and horizontal side, or vertical axis and horizontal axis, if both are fixed, an anchor is drawn at the intersection.
(7) For each fixed side, if no anchor is drawn anywhere on the side, a slider is drawn at the center of the edge.
(8) If anchors and sliders are not drawn on each pair of vertical and horizontal sides or vertical and horizontal axes, a handle is drawn at the intersection of them.

ルール(1)、(2)、(3)で定義された線は、前述したように固定あるいは制限されているため実線で描画される。ルール(5)のように、可変の辺は、点線で描画される。ルール(6)、(7)、(8)で定義された固定された点は、アンカーを表示し、いくつかの固定された辺はスライダーを表示し、他はハンドルを表示する。   The lines defined by the rules (1), (2), and (3) are drawn as solid lines because they are fixed or restricted as described above. As in rule (5), the variable side is drawn with a dotted line. Fixed points defined in rules (6), (7), and (8) display anchors, some fixed edges display sliders, and others display handles.

上記のルールは、ユーザにより後で設定された制約が優先される。つまり、後で別の制約が設定された場合、上記のルールが描画されるべき辺に影響すれば、実線や点線の描画内容が変更されることになる。   The above rules are given priority over constraints set later by the user. That is, when another constraint is set later, if the above rule affects the side to be drawn, the drawn content of the solid line or the dotted line is changed.

可変の辺が描画される場所は、コンテナのコンテンツに依存する。後に説明するように、ドキュメントテンプレートにコンテンツがマージされて、ユーザインターフェースで可視になることを意味する、『動的な校正処理』が使われる。代わりの実行は、すべてのドキュメントで平均化されるコンテナのコンテンツエリアで、あるいは、可変の辺がユーザインターフェースで、どこにレイアウトされるべきか決定するほかの手段で使われることができる。   The location where the variable side is drawn depends on the content of the container. As will be explained later, “dynamic proofing” is used, which means that content is merged into a document template and made visible in the user interface. Alternative implementations can be used in the content area of a container that is averaged over all documents, or in other means of determining where variable edges should be laid out in the user interface.

これらのコンテンツ表現は、コンテナの各辺の状態を表示するグラフィカルな手段を提供する。その表現の解釈は下記のとおりである。
(1)図6の410の辺のように、点線はコンテナのコンテンツに依存してドキュメント内の辺の位置が変化することを意味する。
(2)実線は、固定されている(辺414)、あるいはコンテナの幅・高さが固定されている(コンテナ408では4辺が実線であり、両方が固定されている)ために制限された辺であることを意味する。
(3)アンカーは辺および軸が交差した場所が固定されていることを意味する。それゆえ、アンカー点は、すべてのドキュメントの水平、垂直位置で現れることになる。アンカーは当然固定される。図6のアイコン409は、辺414の交差する位置が固定されていることを意味しているアンカーアイコンの例である。
(4)スライダーは関係付けられた辺の長さが固定されているが、並行移動する可能性があることを意味する。例えば、図6でスライダー413はコンテナ408のコンテンツが、ドキュメント内で特定のダイアグラムで表される位置の、左あるいは右に表示されるかもしれない。例えば、コンテナ408と関連付けられている(リンク設定されている)コンテナ407に流し込まれるデータの画像サイズもしくはテキスト量が少ない場合は、コンテナ407のサイズが小さくなるため、コンテナ408は、左方向にスライド(並行移動)してレイアウトされて表示されることになる。また、コンテナ407のサイズが大きくなる場合は、逆にコンテナ408は右方向にスライドしてレイアウトされることになる。
These content representations provide a graphical means for displaying the state of each side of the container. The interpretation of the expression is as follows.
(1) Like the side 410 in FIG. 6, the dotted line means that the position of the side in the document changes depending on the contents of the container.
(2) The solid line is limited because it is fixed (side 414) or the width and height of the container are fixed (in container 408, four sides are solid lines and both are fixed) Means an edge.
(3) The anchor means that the place where the side and the axis intersect is fixed. Therefore, the anchor point appears at the horizontal and vertical positions of all documents. The anchor is naturally fixed. The icon 409 in FIG. 6 is an example of an anchor icon that means that the position where the sides 414 intersect is fixed.
(4) The slider has a fixed side length, which means that it may move in parallel. For example, in FIG. 6, slider 413 may display the contents of container 408 to the left or right of the position represented by a particular diagram in the document. For example, when the image size or the amount of text of data to be flowed into the container 407 associated with the container 408 (linked) is small, the size of the container 407 is small, so the container 408 slides leftward. (Parallel movement) will be laid out and displayed. On the other hand, when the size of the container 407 increases, the container 408 is laid out by sliding in the right direction.

これらのアイコン・辺のいくつかあるいは全ては、どのツール、どのコンテナを選択・ハイライトあるいはアクティブにするかによって、描画されたりされなかったりする。一般的に、コンテナの辺・アイコンはドキュメントテンプレートのデザインの手助けであるため、印刷物には描画されない。   Some or all of these icons / edges may or may not be drawn depending on which tool, which container is selected, highlighted or activated. In general, the sides and icons of a container are not drawn on a printed matter because they help to design a document template.

なお、前述したように、コンテナの幅・高さの基本値・最小値・最大値の基本パターンの設定は、副次的なダイアログウインドウに表示される。   As described above, the basic pattern setting of the basic value, minimum value, and maximum value of the width / height of the container is displayed in a secondary dialog window.

図7の(A)で、コンテナ501は、幅・高さの両方が固定されていない(可変である)。固定された辺503は実線で表現され、可変の辺504は点線で表現されている。拡縮アイコン505は、隣接する辺504が可変であることを示す。他の形態のインジケータを代わりにあるいは追加的に用いてもよい。   In FIG. 7A, the width and height of the container 501 are not fixed (variable). The fixed side 503 is represented by a solid line, and the variable side 504 is represented by a dotted line. The enlargement / reduction icon 505 indicates that the adjacent side 504 is variable. Other forms of indicators may be used instead or additionally.

図7の(B)において、コンテナ501は幅・高さ両方が可変である。アンカーアイコン506が、交差している両方の辺503の角の位置が固定されていることを明示的に表すべく追加されている。   In FIG. 7B, the width and height of the container 501 are variable. An anchor icon 506 has been added to explicitly indicate that the corner positions of both intersecting sides 503 are fixed.

図7の(C)において、コンテナ501は、コンテナの幅及び高さの両方が可変であり、任意のアンカーアイコン507で示されるような中心点の周りを平等に広がるという状態を示している。すなわち、コンテナ501はアンカーアイコン507を中心に拡大あるいは縮小が可能である。ここでの拡大/縮小は、アンカーアイコン507の位置が常にコンテナ501の中心点となるようにレイアウト調整される。   In FIG. 7C, the container 501 shows a state in which both the width and height of the container are variable, and the container 501 spreads evenly around the center point as indicated by an arbitrary anchor icon 507. That is, the container 501 can be enlarged or reduced around the anchor icon 507. In this enlargement / reduction, the layout is adjusted so that the position of the anchor icon 507 always becomes the center point of the container 501.

図7の(D)において、コンテナ501は、上辺508が固定されているが、幅・高さの両方が可変である。上辺508の中心に位置付けられて示されるアンカーアイコン509は、固定されている。そしてコンテナ501の左辺・右辺(502)は、アンカーアイコン509を通って垂直な中心軸(垂直軸)の周りを、拡大・縮小する。   In FIG. 7D, the container 501 has a fixed upper side 508, but both width and height are variable. An anchor icon 509 positioned and shown at the center of the upper side 508 is fixed. The left and right sides (502) of the container 501 are enlarged / reduced around the vertical central axis (vertical axis) through the anchor icon 509.

[リンクの設定方法]
次に、コンテナ同士を関連付けるためのリンクの設定について説明する。図8はリンクの設定方法を示したフローチャートである。また図9の(A)〜(C)はリンク設定時のユーザインターフェース(UI)の遷移例を示している。図8,図9を用いてコンテナにリンクを設定する方法について説明する。
[Link setting method]
Next, setting of a link for associating containers will be described. FIG. 8 is a flowchart showing a link setting method. 9A to 9C show transition examples of the user interface (UI) at the time of link setting. A method for setting a link in a container will be described with reference to FIGS.

まず、ステップS601において、レイアウト編集アプリケーション121は、ユーザインターフェース画面のワークエリア306上に編集すべく選択されたドキュメントテンプレートを表示する。リンクを設定するためには、リンクを設定するためのコンテナ(最低2つ)がドキュメントテンプレート上に作成されている必要がある。図9の(A)〜(C)では、ステップS1601で2つのコンテナを作成してリンクを設定する場合のユーザインターフェースの遷移例を示している。   First, in step S601, the layout editing application 121 displays the document template selected for editing on the work area 306 of the user interface screen. In order to set a link, containers (at least two) for setting a link need to be created on the document template. 9A to 9C show transition examples of user interfaces when two containers are created and links are set in step S1601.

次に、ステップS602において、レイアウト編集アプリケーション121は、前述したリンクツールが選択状態(図6のボタン406をクリックすることにより選択状態となる)になったかを判断する。リンクツールが選択上体でなければ、必要に応じて他の各種処理を実行し(ステップS609)、ステップS602に戻る。   Next, in step S602, the layout editing application 121 determines whether or not the above-described link tool has been selected (by clicking the button 406 in FIG. 6). If the link tool is not the selected upper body, other various processes are executed as necessary (step S609), and the process returns to step S602.

図9の(A)において、コンテナ601と602はすべて固定されている辺で構成されているものとする。また、603と604は、図6の409と同じであり、アンカーを意味する。605はマウスポインタを意味している。さて、リンクツールが選択状態となっている間に、ユーザはリンクを設定する2つのコンテナのうちの一方(コンテナ601とする)をクリックして選択する。この操作に応じて、レイアウト編集アプリケーション121のユーザインターフェース103は第1のコンテナが指定されたことを認識し(ステップS603)、選択されたコンテナを特定する情報を保持する。また、以降のマウスカーソルの移動に応じた軌跡を画面に表示するようにする(ステップS604)。例えば、図9の(B)における線分606は、(A)の状態におけるクリック位置と現在のマウスカーソルの位置とを結んだ線を示しており、このUIによりどの位置にリンクが設定されるのかをユーザに明示することができる。   In FIG. 9A, it is assumed that the containers 601 and 602 are all composed of fixed sides. 603 and 604 are the same as 409 in FIG. 6 and mean anchors. Reference numeral 605 denotes a mouse pointer. Now, while the link tool is in the selected state, the user clicks and selects one of the two containers for setting the link (referred to as container 601). In response to this operation, the user interface 103 of the layout editing application 121 recognizes that the first container has been designated (step S603), and retains information for specifying the selected container. Further, the locus corresponding to the subsequent movement of the mouse cursor is displayed on the screen (step S604). For example, a line segment 606 in FIG. 9B shows a line connecting the click position in the state of FIG. 9A and the current mouse cursor position, and a link is set at which position by this UI. Can be shown to the user.

次に、ユーザは、図9の(B)で示されるように、もう一方のコンテナ(コンテナ602)までマウスポインタを移動してクリックする。この操作に応じて、ユーザインターフェース103は第2のコンテナが指定されたことを認識し(ステップS605)、レイアウト編集アプリケーション121は、ステップS604で保持した第1のコンテナと、ステップS605で指定が認識された第2のコンテナとの間にリンクを設定する(ステップS606)。   Next, as shown in FIG. 9B, the user moves the mouse pointer to the other container (container 602) and clicks. In response to this operation, the user interface 103 recognizes that the second container has been designated (step S605), and the layout editing application 121 recognizes the designation of the first container held in step S604 and the designation in step S605. A link is set with the second container that has been made (step S606).

こうして、ユーザにより選択された2つのコンテナ601,602の間にリンクが設定されると、リンクUI607が表示される(ステップS607)。更に、このリンク設定を受けて、コンテナの表示状態は図9の(C)の状態になる(ステップS608)。すなわち、リンクが設定されたことにより、コンテナのUIが自動的に変更される。ここでは、リンクによって関連付けられた辺が可変となり、点線で示される。図9の(C)において、608は点線で示されている辺であり、前述した通り可変の辺を示すものである。   Thus, when a link is set between the two containers 601 and 602 selected by the user, the link UI 607 is displayed (step S607). Further, in response to this link setting, the display state of the container becomes the state shown in FIG. 9C (step S608). In other words, the container UI is automatically changed by setting the link. Here, the sides associated by the links are variable and are indicated by dotted lines. In FIG. 9C, reference numeral 608 denotes a side indicated by a dotted line, which indicates a variable side as described above.

なお、図9の(C)のようなコンテナの辺の状態の変化は、リンクを設定したことによりコンテナの辺を可変にする必要が生じたことにより自動的に実行されたものであり、リンクを設定したにもかかわらず全ての辺が固定であるという矛盾の発生を防ぐことを目的としている。また、609は図7の505と同じで、リンクを設定したことにより、コンテナが変化できる方向をユーザに視覚的に示したマークである。また、図9の(C)の例では、左のコンテナの右辺と右のコンテナの左辺が可変な状態へ変化したが、これは一例であり、たとえば、右コンテナが図6の413で示したスライダーを持つ設定に変化してもかまわない。   It should be noted that the change in the state of the container side as shown in FIG. 9C is automatically executed because it is necessary to make the container side variable by setting the link. The purpose is to prevent the occurrence of contradiction that all sides are fixed despite the setting. Reference numeral 609 is the same as 505 in FIG. 7, and is a mark that visually indicates to the user the direction in which the container can be changed by setting a link. Further, in the example of FIG. 9C, the right side of the left container and the left side of the right container have changed to a variable state, but this is an example. For example, the right container is indicated by 413 in FIG. You can change the setting to have a slider.

[長さが可変のリンクの設定]
図10では可変リンクの設定のためのユーザインターフェースを表している。図6と同様にアプリケーションウインドウ301とツールバー303がある。図10の状態では、ドキュメントテンプレート309上にコンテナ1203とコンテナ1204が存在する。それぞれのコンテナはアンカーアイコン1201、アンカーアイコン1202と固定された辺1205、辺1206を含んで構成されている。コンテナ1203と1204の間には可変サイズのリンク1209があり、コンテナ1203とコンテナ1204を結んでいる。コンテナ1203とコンテナ1204の間にはリンクが設定されているのでそれぞれの右辺1207と左辺1208は点線で表現されている。このため各コンテナにインジケーター1210、インジケーター1211が表示され、それぞれ辺1207と辺1208が可変であることを示している。
[Link settings with variable length]
FIG. 10 shows a user interface for setting a variable link. Similar to FIG. 6, there are an application window 301 and a toolbar 303. In the state of FIG. 10, a container 1203 and a container 1204 exist on the document template 309. Each container includes an anchor icon 1201, an anchor icon 1202, a fixed side 1205, and a side 1206. A variable-size link 1209 is provided between the containers 1203 and 1204 and connects the containers 1203 and 1204. Since a link is set between the container 1203 and the container 1204, the right side 1207 and the left side 1208 are represented by dotted lines. For this reason, an indicator 1210 and an indicator 1211 are displayed in each container, indicating that the sides 1207 and 1208 are variable, respectively.

また、図11は、本願の特徴的構成であるリンク設定手段におけるユーザインタフェース画面であり、リンク1209の情報をセットするためのダイアログウインドウ701の例である。このダイアログは、タイトルバー702、ツールボタン703、ダイアログウインドウの開閉を行うボタン704、各種の情報をセットするエリア709で構成されている。このダイアログウインドウではリンクタイプが可変長(707)のリンクであるか、あるいは固定長(706)のリンクであるかの択一的な選択を行える。リンクタイプが可変の場合にはリンクの長さの最小値(Min.Distance710)、最大値(Max.Distance712)、ならびに基準値(Distance711)が設定できる。図11のダイアログ701は、たとえば、図8,図9で説明したリンクの設定操作によって2つのコンテナ間にリンクを設定した後に、この設定されたリンクをクリック等の操作によって選択したときに表示される。あるいは、リンクを設定した直後に、当該リンクに関するダイアログウインドウ701が自動的に表示されるようにしてもよい。ここで各コンテナ間の距離の基準値711は、データを流し込んだ際に各コンテナのサイズが変更されない場合に用いられるリンクの長さである。   FIG. 11 is an example of a dialog window 701 for setting information of the link 1209, which is a user interface screen in the link setting means which is a characteristic configuration of the present application. This dialog is composed of a title bar 702, a tool button 703, a button 704 for opening / closing the dialog window, and an area 709 for setting various information. In this dialog window, an alternative selection can be made as to whether the link type is a variable length (707) link or a fixed length (706) link. When the link type is variable, a minimum value (Min.Distance 710), a maximum value (Max.Distance 712), and a reference value (Distance 711) of the link length can be set. The dialog 701 in FIG. 11 is displayed, for example, when a link is set between two containers by the link setting operation described with reference to FIGS. 8 and 9, and then this link is selected by an operation such as clicking. The Alternatively, immediately after setting a link, a dialog window 701 regarding the link may be automatically displayed. Here, the reference value 711 of the distance between containers is the length of the link used when the size of each container is not changed when data is flowed.

図12は、本実施形態のユーザインターフェース103による可変リンクの設定手順を説明するフローチャートである。例えば図15のコンテナAとコンテナBの間に図8、図9で説明した手順でリンクを張ると、まず固定サイズのリンクが張られる。そして、このリンクを選択して図12に示す処理を実行することにより、当該リンクを固定サイズのリンク1506(図15)の状態から可変サイズのリンク1209(図10)へと遷移させることができる。   FIG. 12 is a flowchart for explaining a variable link setting procedure by the user interface 103 of this embodiment. For example, when a link is established between the container A and the container B in FIG. 15 by the procedure described with reference to FIGS. 8 and 9, a fixed-size link is first established. Then, by selecting this link and executing the processing shown in FIG. 12, the link can be changed from the state of the fixed-size link 1506 (FIG. 15) to the variable-size link 1209 (FIG. 10). .

まず、マウスにより所望のリンク(たとえばリンク1506)を選択状態とし、リンクプロパティを表示させるための所定の操作が行われると、レイアウト編集アプリケーション121のユーザインターフェース103は、リンクプロパティの表示指示の入力として認識する(ステップS801)。リンクプロパティの表示指示を認識すると、選択状態のリンク(以下、対象リンクという)に対応したプロパティダイアログウインドウ701(図11)が表示される。次に、ユーザインタフェース103は、リンクプロパティを表示する(ステップS802)。なお、リンクの選択操作としては、コンテナの基本パターンの設定時と同様に、マウスの右クリックあるいはキーボードの特定のキーの操作等、いかなるものであってもよい。   First, when a predetermined operation for displaying a link property is performed by selecting a desired link (for example, link 1506) with the mouse, the user interface 103 of the layout editing application 121 receives an input of a link property display instruction. Recognize (step S801). When the link property display instruction is recognized, a property dialog window 701 (FIG. 11) corresponding to the selected link (hereinafter referred to as the target link) is displayed. Next, the user interface 103 displays the link property (step S802). The link selection operation may be any operation such as a right mouse click or a specific key operation on the keyboard, as in the case of setting the basic pattern of the container.

ステップS802で表示されるダイアログウインドウ701には選択されたリンクの現在の状態が示される。本例では、リンク1506が選択されたので、この段階ではリンクサイズは固定であり、Link Type705においては、固定長を示すFixed Length706が選択されている。   A dialog window 701 displayed in step S802 shows the current state of the selected link. In this example, since the link 1506 is selected, the link size is fixed at this stage. In the Link Type 705, the Fixed Length 706 indicating the fixed length is selected.

このダイアログウインドウ701においてリンクを固定サイズから可変サイズに変更するために、Link Type705においてリンクサイズを可変に設定するためのFlexible Length707を選択する。これによりLink Distance708内に配置されているMax. Distance712、Min. Distance710、Distance711が有効になり、数値の設定が可能となる。ユーザは、リンクの可変サイズを設定するために、そのリンクの長さの最大値をMax. Distance712に、最小値をMin. Distance710に、現在の値をDistance711に設定することになる。   In this dialog window 701, in order to change the link from a fixed size to a variable size, a flexible length 707 for setting the link size to be variable in the Link Type 705 is selected. As a result, Max. Distance 712, Min. Distance 710, and Distance 711 arranged in Link Distance 708 become valid, and numerical values can be set. In order to set the variable size of the link, the user sets the maximum value of the link length to Max. Distance 712, the minimum value to Min. Distance 710, and the current value to Distance 711.

設定を終えると、ユーザは一般的なダイアログウインドウ開閉ボタン704によって当該設定の適用を指示する。ユーザインターフェース103はこの指示を検出すると、ステップS803からステップS804以降へ処理を進め、当該対象リンクに上記設定状態を反映させる。   When the setting is completed, the user instructs application of the setting by a general dialog window open / close button 704. When the user interface 103 detects this instruction, the process proceeds from step S803 to step S804 and the subsequent steps, and the setting state is reflected on the target link.

すなわち、まず、ステップS804において、レイアウト編集アプリケーション121は、対象リンクが固定サイズか可変サイズかを判定する。固定サイズが指定されていればステップS808へ進み、対象リンクを「固定サイズ」に設定し、ステップS807で対象リンクの表示状態を「固定リンク」を表す「実線」とする。   That is, first, in step S804, the layout editing application 121 determines whether the target link is a fixed size or a variable size. If the fixed size is designated, the process proceeds to step S808, the target link is set to “fixed size”, and the display state of the target link is set to “solid line” representing “fixed link” in step S807.

一方、ステップS804において、可変サイズが指定されていれば、ステップS805へ進み、レイアウト編集アプリケーション121は、対象リンクを「可変サイズ」に設定する。そして、ステップS806にて、上記ダイアログウインドウ701によって設定された対象リンクの現在値(基準値)、最大値、最小値を登録する。その後、ステップS807で対象リンクの表示状態を「可変リンク」を表す「点線」とする。この結果、図10のリンク1209に示すような状態にリンクのUI表示が変化する(ステップS1306)。以上のダイアログウインドウ701の設定情報はメモリに格納される。   On the other hand, if a variable size is specified in step S804, the process proceeds to step S805, and the layout editing application 121 sets the target link to “variable size”. In step S806, the current value (reference value), maximum value, and minimum value of the target link set in the dialog window 701 are registered. Thereafter, in step S807, the display state of the target link is set to “dotted line” representing “variable link”. As a result, the UI display of the link changes to a state as indicated by the link 1209 in FIG. 10 (step S1306). The setting information of the above dialog window 701 is stored in the memory.

なお、Distance711に設定される現在の値には、現在のレイアウトとして配置されているコンテナの間の距離がデフォルト値として自動的に入力されるようにしてもよい。   Note that the distance between containers arranged as the current layout may be automatically input as the default value for the current value set in Distance 711.

以上、ユーザインターフェース103によるドキュメントテンプレートのレイアウト編集について説明した。以下、データソースを各コンテナに流し込んだ場合における、データサイズ(描画サイズ)に応じたコンテナレイアウトの調整処理について説明する。   The document template layout editing by the user interface 103 has been described above. The container layout adjustment process according to the data size (drawing size) when the data source is poured into each container will be described below.

<レイアウトエンジンによるレイアウト計算処理>
[レイアウト計算方法(全体フロー)]
本実施形態のレイアウト編集アプリケーションは、ユーザインターフェース103を用いてコンテナを作成し、そのコンテナ間に関連付け(リンク設定)を行ってレイアウトを作成するレイアウトモードと、レイアウトエンジン105により、作成したレイアウトにデータソースの各レコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューするプレビューモードに分けられる。このプレビューモードにおいて、実際のレコードが挿入され、前述した優先順位に従ってレイアウトを計算する。ただし、プレビューモードは、表示上でのレイアウト計算である。実際に印刷する場合においても、レイアウトエンジン105が各コンテナにデータを挿入してレイアウトを計算するが、その際の計算方法はプレビューモードと同じである。
<Layout calculation processing by layout engine>
[Layout calculation method (overall flow)]
The layout editing application according to the present embodiment creates containers using the user interface 103, creates layouts by creating associations (link settings) between the containers, and creates data in the created layout using the layout engine 105. Each record of the source is inserted, and it is divided into a preview mode for previewing a layout result after the record is actually inserted. In this preview mode, an actual record is inserted, and the layout is calculated according to the above-mentioned priority order. However, the preview mode is a layout calculation on the display. Even in the actual printing, the layout engine 105 calculates the layout by inserting data into each container, and the calculation method at that time is the same as the preview mode.

図13はレイアウト計算のフローを示している。まず、プレビューモードが選択される(ステップS1001)。プレビューモードになったら、レイアウト編集アプリケーション121は、ユーザにプレビューするレコードをデータソースより選択させ、選択されたレコードの各フィールドデータを各コンテナに挿入するよう決定する(ステップS1002)。各コンテナへのフィールドデータの挿入が決定されると、レイアウト編集アプリケーション121は、そのレコードをレイアウトするための計算を行い、必要に応じてレイアウト調整を行う(ステップS1003)。ステップS1003におけるレイアウト計算の詳細については後述する。そして、レイアウト編集アプリケーション121は、ステップS1003で計算されたレイアウトを表示する(ステップS1004)。レイアウト編集アプリケーション121は、他のレコードについてもプレビューを行うかどうかをユーザの指示により判断する(S1005)。ステップS1005で、他のレコードについてプレビューを行う必要がないと判断した場合は、プレビューモードを終了する(S1007)。他のレコードについてプレビューを行うのであれば、レイアウト編集アプリケーション121は、他のレコードを選択して再度レイアウト計算を行い、プレビューを行う(ステップS1006)。   FIG. 13 shows a flow of layout calculation. First, the preview mode is selected (step S1001). In the preview mode, the layout editing application 121 causes the user to select a record to be previewed from the data source, and determines to insert each field data of the selected record into each container (step S1002). When the insertion of field data into each container is determined, the layout editing application 121 performs calculation for laying out the record, and performs layout adjustment as necessary (step S1003). Details of the layout calculation in step S1003 will be described later. The layout editing application 121 displays the layout calculated in step S1003 (step S1004). The layout editing application 121 determines whether or not to preview other records based on a user instruction (S1005). If it is determined in step S1005 that the other records do not need to be previewed, the preview mode ends (S1007). If a preview is to be performed for another record, the layout editing application 121 selects another record, performs layout calculation again, and performs a preview (step S1006).

なお、プレビューモードでなく印刷時においては、印刷するレコード全てについて順にレイアウトの計算を行う。したがって、ステップS1004は存在せず、ステップS1005は印刷するレコードを全て処理したかの判断を行う。ステップS1003でレイアウト計算された結果を、描画出力して出力し、プリンタドライバを用いて印刷データとして生成し、プリンタに印刷データが出力される。この場合、全てのレコード(印刷すべく指定された全レコード)について印刷データの出力が終了した時点で本処理を終了することになる。   Note that when printing is performed instead of the preview mode, the layout is calculated in order for all records to be printed. Accordingly, step S1004 does not exist, and step S1005 determines whether all records to be printed have been processed. The result of layout calculation in step S1003 is drawn and output, and is generated as print data using a printer driver, and the print data is output to the printer. In this case, the process is terminated when the output of the print data is completed for all the records (all records designated to be printed).

[レイアウト計算方法(詳細)]
次に、上記ステップS1003によるレイアウト計算の詳細について説明する。図14は本実施形態によるレイアウトの優先順位を設定しない場合のレイアウト計算の方法を示したフローチャートである。また、図18はそのときのUI表示例を示した図である。本図はレイアウト計算の処理方法についてのみ説明するためのフローチャートであるため、バリアブルデータプリントの1レコードの印刷/プレビュー時のレイアウト計算方法に相当する。複数レコードの場合は、下記の処理が繰り返されることになる。
[Layout Calculation Method (Details)]
Next, details of layout calculation in step S1003 will be described. FIG. 14 is a flowchart showing a layout calculation method when the layout priority is not set according to this embodiment. FIG. 18 is a diagram showing a UI display example at that time. Since this figure is a flowchart for explaining only the layout calculation processing method, it corresponds to the layout calculation method for printing / previewing one record of variable data printing. In the case of multiple records, the following processing is repeated.

まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を求める(ステップS1101)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。例えば図15を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。したがって、コンテナA、Bが集合1、コンテナC、Dが集合2となる。すなわち、リンクによって接続されたコンテナ群を一つの集合として特定する。前述したように、1501はアンカー、1502は固定された辺、1503はコントローラー、1504は可変の辺の変化方向を示している矢印、1505は可変の辺、1506はリンク、そして1507はスライダーを示している。   First, the layout editing application 121 obtains a set of containers for calculating a layout (step S1101). In the layout calculation, the associated containers are calculated as one set. For example, referring to FIG. 15, four containers are laid out on the page, and an association is set for each container. In this case, container A and container B, and container C and container D are associated by a link. Therefore, containers A and B are set 1, and containers C and D are set 2. That is, the container group connected by the link is specified as one set. As described above, 1501 is an anchor, 1502 is a fixed edge, 1503 is a controller, 1504 is an arrow indicating a change direction of a variable edge, 1505 is a variable edge, 1506 is a link, and 1507 is a slider. ing.

次に、レイアウト編集アプリケーション121は、ステップS1101で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(S1102)。そして、選択したコンテナの集合について、レイアウトの計算を行う。まず、選択したコンテナの集合に含まれる可変要素である2つのコンテナ(A,B)について、流し込まれるデータの画像サイズもしくはテキスト量から各コンテナがなにも制約を受けない場合の大きさを計算する。具体的には、レイアウト編集アプリケーション121は、コンテナAが画像データ用コンテナであるか、テキスト用コンテナであるかを判断する。この判断は、前述したように、コンテナに対して設定されている属性により判断できる。次に、レイアウト編集アプリケーション121は、コンテナAに流し込まれるデータを読み込み、コンテナAが画像データ用コンテナである場合は、その画像データのサイズ(幅、高さのピクセル数、および解像度)がコンテナAの制約を受けない場合の大きさになる。また、コンテナAがテキスト用コンテナである場合は、そのテキストデータも文字数と、コンテナAのコンテナ属性で指定されているフォントタイプ、フォントサイズ、文字ピッチ、行ピッチなどの文字属性に基づいて、コンテナAに流し込まれるべきデータ量が計算できる。ここで、テキスト用コンテナの場合は、コンテナAの縦横比が制約を考えないと決定できないため、制約を当てはめる。図15の例では、コンテナAは、左上および左下の角にアンカーが設定されているため、高さ(縦方向)が固定となる。よって、レイアウト編集アプリケーション121は、コンテナAの基本パターンとして設定されている幅(横方向)のコンテナAに、計算したデータ量(テキスト量)の文字を流し込めるか否かを判断する。すべて流し込めると判断された場合は、コンテナAは、基本パターンで設定されているサイズ(幅、高さ)に変更はない。また、すべて流し込めないと判断された場合は、コンテナAは、アンカー設定により高さが固定であるため、横方向に伸びることになる。ここで、レイアウト編集アプリケーション121は、コンテナAの幅がどれだけになると、計算したデータ量の文字を流し込めるかを計算し、コンテナAのサイズを算出する。   Next, the layout editing application 121 selects one for calculating a layout from the set of containers obtained in step S1101 (S1102). Then, the layout of the selected set of containers is calculated. First, for the two containers (A, B), which are variable elements included in the selected set of containers, the size when each container is not subject to any restrictions is calculated from the image size or text amount of the data to be sent. To do. Specifically, the layout editing application 121 determines whether the container A is an image data container or a text container. This determination can be made based on the attributes set for the container as described above. Next, the layout editing application 121 reads the data to be poured into the container A. When the container A is an image data container, the size (number of pixels of width, height, and resolution) of the image data is the container A. This is the size when not subject to the restrictions. When the container A is a text container, the text data is also stored on the basis of the number of characters and character attributes such as the font type, font size, character pitch, and line pitch specified in the container A container attribute. The amount of data to be fed into A can be calculated. Here, in the case of a text container, since the aspect ratio of the container A cannot be determined without considering the constraint, the constraint is applied. In the example of FIG. 15, since anchors are set at the upper left and lower left corners of the container A, the height (vertical direction) is fixed. Therefore, the layout editing application 121 determines whether or not characters of the calculated data amount (text amount) can be poured into the container A having the width (horizontal direction) set as the basic pattern of the container A. If it is determined that all can be poured, the size (width, height) of the container A is not changed in the basic pattern. If it is determined that all the containers cannot be poured, the container A has a fixed height due to the anchor setting, and thus extends in the horizontal direction. Here, the layout editing application 121 calculates the size of the container A by calculating how much the width of the container A can be filled with characters of the calculated data amount.

次に、レイアウト編集アプリケーション121は、レイアウトされるコンテナのサイズが、実際のコンテンツのサイズとできる限り差が少なくなるように、レイアウトの最適化を行う(S1103)。レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。レイアウト編集アプリケーション121は、ステップS1102で算出したコンテナの集合のサイズ、つまりコンテナAとコンテナBとリンク1506(ここでは固定リンク)の合計サイズを求め、この合計サイズと、基本レイアウトにおける当該コンテナの集合のサイズ(図15の例ではコンテナAとコンテナBのそれぞれのアンカーアイコンの距離に相当する)との差を求める。コンテナAやコンテナBの幅が大きくなると前ステップで計算されている場合は、差分値が発生する。レイアウト編集アプリケーション121は、この差分値をコンテナの集合の各要素に均等に分配することでレイアウト調整を行う。   Next, the layout editing application 121 optimizes the layout so that the size of the container to be laid out is as small as possible with the actual content size (S1103). Layout optimization is such that the difference between the size of the inserted content and the size of the layout is the same as much as possible in the associated containers so that the size can be changed dynamically. Done. The layout editing application 121 obtains the size of the set of containers calculated in step S1102, that is, the total size of containers A, B, and links 1506 (here, fixed links), and the total size and the set of the containers in the basic layout. (Corresponding to the distance between the anchor icons of container A and container B in the example of FIG. 15). If the width of container A or container B is increased, a difference value is generated if it is calculated in the previous step. The layout editing application 121 adjusts the layout by equally distributing the difference value to each element of the set of containers.

レイアウト編集アプリケーション121は、レイアウトの最適化を行い、ルールに違反していた場合は、再度ルールを違反しないように計算をする(S1104)。ここで記述したルールとは、レイアウト作成時にユーザによって設定される制限であり、コンテナのサイズの可変範囲や位置の制限、可変リンクの場合はリンクの長さの変化の制限などである。ルールを違反しないようにレイアウトが計算されたら、その集合のレイアウトは完成される。そして、ステップS1102〜S1104の処理をページ上のすべての集合について施し、レイアウト編集アプリケーション121は、ページ全体のレイアウトを計算する(S1105)。   The layout editing application 121 optimizes the layout. If the rule is violated, the layout editing application 121 performs calculation so as not to violate the rule again (S1104). The rules described here are restrictions set by the user at the time of layout creation, such as a variable range or position of the container size, and a change in the link length in the case of a variable link. Once the layout is calculated so that it does not violate the rules, the set layout is completed. Then, the processes in steps S1102 to S1104 are performed on all the sets on the page, and the layout editing application 121 calculates the layout of the entire page (S1105).

次に、本実施形態の可変リンクを用いたレイアウト計算方法について更に詳しく説明する。   Next, the layout calculation method using the variable link of this embodiment will be described in more detail.

今、2つのコンテナがリンクによって接続され、図16(A)に示すように配置およびサイズが設定されたとする。すなわち、コンテナ1701の左辺および上下辺は固定され、コンテナ1702の右辺および上下辺が固定されている。したがって、コンテナ1701と1702からなる集合の全体の横方向サイズDは固定である。リンク1703は可変に設定されており、基準値(ダイアログウインドウ701の現在値として設定された値)がCs、可変範囲(ダイアログウインドウ701の最小値から最大値)がCmin〜Cmaxに設定されている。なお、各コンテナ1701、1702の可変範囲は、所定のユーザインターフェースによりそれぞれAmin〜Amax、Bmin〜Bmaxに設定されているものとする。この状態でコンテンツが各コンテナに流し込まれたときのレイアウト計算について上記の図14及び図17のフローチャートを参照しながら説明する。   Now, assume that two containers are connected by a link, and the arrangement and size are set as shown in FIG. That is, the left side and upper and lower sides of the container 1701 are fixed, and the right side and upper and lower sides of the container 1702 are fixed. Accordingly, the overall lateral size D of the set of containers 1701 and 1702 is fixed. The link 1703 is set to be variable, the reference value (the value set as the current value of the dialog window 701) is set to Cs, and the variable range (the minimum value to the maximum value in the dialog window 701) is set to Cmin to Cmax. . Note that the variable ranges of the containers 1701 and 1702 are set to Amin to Amax and Bmin to Bmax, respectively, by a predetermined user interface. The layout calculation when content is poured into each container in this state will be described with reference to the flowcharts of FIGS.

まず、ステップS1101、S1102でコンテナ1701,1702を含む集合を計算対象の集合として選択する。そして、ステップS1103及びS1104により、レイアウト設定された制約の範囲でレイアウトの最適化を行う。以下、ステップS1103及びS1104による、選択された集合におけるレイアウトの最適化について説明する。   First, in steps S1101 and S1102, a set including containers 1701 and 1702 is selected as a set to be calculated. Then, in steps S1103 and S1104, the layout is optimized within the constraint range set for the layout. Hereinafter, the layout optimization in the selected set in steps S1103 and S1104 will be described.

まず、レイアウト編集アプリケーション121は、図14と同様の計算手法により、各コンテナにデータを挿入した際のコンテナの理想的な大きさを計算する(ステップS1801)。図16(A)の例では、コンテナ1701,1702の各々の高さは固定であるので、流し込まれるコンテンツに基づいてコンテナに必要とされる幅(これを理想幅と称する)が算出される。例えば、コンテンツがイメージデータの場合は、その画像サイズをコンテナの高さに一致させた場合に、画像の縦横比から理想値を決定できる。コンテンツがテキストの場合は、各行(文頭から改行までを行という)を1列に並べ、コンテナの高さと一致するまでコンテナの横幅を狭めていくことで、理想値を決定できる。コンテナの横方向及び高方向が可変に設定されている場合は、コンテンツがイメージデータの場合は当該画像サイズを用いて理想値を決定する。コンテナの横方向及び高方向が可変で、コンテンツがイメージデータの場合は、各行を1列に並べたときの最大横幅を理想値とする。そして、コンテナ1701と1702の理想幅とリンク1703の基準値とによる集合の合計幅と、当該集合に対して設定されている設定幅Dとを比較する(ステップS1802)。   First, the layout editing application 121 calculates an ideal size of a container when data is inserted into each container by the same calculation method as in FIG. 14 (step S1801). In the example of FIG. 16A, since the height of each of the containers 1701 and 1702 is fixed, a width required for the container (referred to as an ideal width) is calculated based on the content to be poured. For example, when the content is image data, the ideal value can be determined from the aspect ratio of the image when the image size is matched with the height of the container. When the content is text, the ideal value can be determined by arranging each row (from the beginning of the sentence to the line feed) in one column and narrowing the width of the container until it matches the height of the container. When the horizontal direction and the high direction of the container are variably set, when the content is image data, the ideal value is determined using the image size. When the horizontal direction and the high direction of the container are variable and the content is image data, the maximum horizontal width when the rows are arranged in one column is an ideal value. Then, the total width of the set based on the ideal widths of the containers 1701 and 1702 and the reference value of the link 1703 is compared with the set width D set for the set (step S1802).

今、コンテナ1701とコンテナ1702について算出された理想幅をそれぞれAc,Bcとすると、リンク1702の基準値(図11のダイアログでDistance711に設定された値)はCsであるので、レイアウト編集アプリケーション121は、Ac+Bc+CsがDと等しいか否かを判定する(ステップS1803)。等しければ、レイアウト編集アプリケーション121は、それぞれの幅Ac,Bcとリンクの長さCsによりレイアウトを決定することになる(ステップS1804)。   Now, assuming that the ideal widths calculated for the container 1701 and the container 1702 are Ac and Bc, respectively, the reference value of the link 1702 (the value set in Distance 711 in the dialog of FIG. 11) is Cs. It is determined whether Ac + Bc + Cs is equal to D (step S1803). If they are equal, the layout editing application 121 determines a layout based on the widths Ac and Bc and the link length Cs (step S1804).

一方、Ac+Bc+Cs≠Dの場合は、レイアウト編集アプリケーション121は、その差分を各コンテナおよび可変リンクに均等に分配する(ステップS1805)。より具体的には、設定幅Dとの差分値δを、
δ=(Ac+Bc+Cs)−D
により求め、差分値δを2つのコンテナ1701、1702と1つのリンク1703に分配する。すなわち、
A’=Ac−(δ/3)
B’=Bc−(δ/3)
C’=Cs−(δ/3)
を計算することによりレイアウトを最適化する。この最適化によれば、設定幅Dとなるように、コンテナボックスの幅やリンクの長さが伸縮することになる。なお、ここでは差分を各要素(各コンテナおよび可変リンク)に均等に分配したが、これは横方向のみ、つまり1次元で考慮できる場合に有効である。図16(C)で後述するように、アンカー設定から2次元で差分の分配を考慮する場合は、ユーザが決定した基本レイアウトをなるべく維持するようにレイアウト調整を行うために、均等分配は行わない。
On the other hand, if Ac + Bc + Cs ≠ D, the layout editing application 121 equally distributes the difference to each container and variable link (step S1805). More specifically, the difference value δ from the set width D is
δ = (Ac + Bc + Cs) −D
The difference value δ is distributed to the two containers 1701 and 1702 and one link 1703. That is,
A ′ = Ac− (δ / 3)
B ′ = Bc− (δ / 3)
C ′ = Cs− (δ / 3)
Optimize the layout by calculating According to this optimization, the width of the container box and the length of the link are expanded and contracted so that the set width D is obtained. Although the difference is equally distributed to each element (each container and variable link) here, this is effective only in the horizontal direction, that is, when it can be considered in one dimension. As will be described later with reference to FIG. 16C, when considering the distribution of the difference in two dimensions from the anchor setting, the equal distribution is not performed in order to adjust the layout so as to maintain the basic layout determined by the user as much as possible. .

図14のステップS1104および図17のステップS1806では、レイアウト編集アプリケーション121がルール違反が発生したかを検出する。たとえば、上記算出されたA’〜C’が、レイアウト設定時に設定された各コンテナの変化範囲(Amax、Amin、Bmax、Bmin)、リンクの長さの変化範囲(Cmax、Cmin)を超えていないかをチェックする。設定範囲を超えるものがあれば、ステップS1103へ戻り、ルールに適合するようレイアウト計算をやりなおす。この計算の一手法としては、算出された大きさが設定範囲を超えてしまった要素の大きさを設定範囲内に固定し、残りの要素に差分値を分配するようにする(ステップS1807、S1805)。たとえば、(Ac+Bc+Cs)が設定幅Dより大きく、上記式により差分値を分配した結果、得られたリンクの長さC’が設定された最小値Cminよりも小さくなってしまった場合は以下のように処理される。   In step S1104 in FIG. 14 and step S1806 in FIG. 17, the layout editing application 121 detects whether a rule violation has occurred. For example, the calculated A ′ to C ′ do not exceed the change range (Amax, Amin, Bmax, Bmin) of each container and the change range of link length (Cmax, Cmin) set at the time of layout setting. To check. If there is something exceeding the set range, the process returns to step S1103, and the layout calculation is performed again so as to conform to the rule. As one method of this calculation, the size of the element whose calculated size exceeds the set range is fixed within the set range, and the difference value is distributed to the remaining elements (steps S1807 and S1805). ). For example, if (Ac + Bc + Cs) is larger than the set width D and the difference value is distributed by the above equation, the obtained link length C ′ becomes smaller than the set minimum value Cmin as follows. To be processed.

まず、リンクの長さを最小値Cminに決定し、差分値δ’を、
δ’=(Ac+Bc+Cmin)−D
により算出する。そして、このδ’をコンテナ1701と1702の幅に分配する。すなわち、
A’=Ac−(δ’/2)
B’=Bc−(δ’/2)
C’=Cmin
により、各コンテナとリンクのサイズを決定する。
First, the link length is determined to be the minimum value Cmin, and the difference value δ ′ is determined as
δ ′ = (Ac + Bc + Cmin) −D
Calculated by This δ ′ is distributed to the widths of the containers 1701 and 1702. That is,
A ′ = Ac− (δ ′ / 2)
B ′ = Bc− (δ ′ / 2)
C '= Cmin
To determine the size of each container and link.

なお、上記では横方向のレイアウト計算を説明したが、縦方向に並ぶコンテナと可変のリンクからなる集合を対象とした縦方向のレイアウト計算にも同様に適用できることは明らかである。また、同一方向(横方向あるいは縦方向のいずれか)に3つ以上のコンテナが並び、それらをリンクにより連結している場合にも容易に拡張できる。すなわち、図16の(B)に示されるように、コンテナ1701,1702,1704と可変リンク1703,1705から構成された集合において、各コンテナ理想幅がAc、Bc、Ecであり、リンクの基準値がCs、Fsである場合、集合の設定幅Dと“Ac+Bc+Ec+Cs+Fs”を比較し、一致しなければそれらの差分を各コンテナとリンクに均等に分配してレイアウトを調整すればよい。   Although the horizontal layout calculation has been described above, it is obvious that the present invention can be similarly applied to the vertical layout calculation for a set of containers arranged in the vertical direction and variable links. Also, it can be easily expanded when three or more containers are arranged in the same direction (either in the horizontal direction or the vertical direction) and are connected by a link. That is, as shown in FIG. 16B, in the set composed of containers 1701, 1702, 1704 and variable links 1703, 1705, the container ideal width is Ac, Bc, Ec, and the link reference value Is set to Cs and Fs, the set width D of the set is compared with “Ac + Bc + Ec + Cs + Fs”, and if they do not match, the difference may be evenly distributed to each container and link to adjust the layout.

また、計算対象レイアウト計算が対象とする方向に大きさが固定されたコンテナあるいはリンクが含まれている場合にも容易に拡張できる。この場合、それら固定のコンテナやリンクには算出された差分値の分配を行わないようにすればよい。   Further, it can be easily expanded when a container or link whose size is fixed in the direction targeted by the calculation target layout calculation is included. In this case, it is only necessary not to distribute the calculated difference value to these fixed containers and links.

また、上記ではコンテナと可変リンクに均等に差分を分配したが、可変リンクと各コンテナとに優先度を設け、優先度の高い領域に優先的に差分を分配するようにしてもよい。例えば、図11に示したリンクのプロパティ設定UIにおいて、「コンテナより優先的に可変する」というチェックボックスを設け、このチェックボックスにチェックされている場合は、可変リンクが優先的に差分が分配されるようになる。この場合、まず可変リンクの長さをその可変範囲内で調整することにより集合の幅を設定幅に一致させるようにする。可変リンクを最大値もしくは最小値としても設定とならない場合は、コンテナにその差分を分配してレイアウトを調整する。すなわち、本実施形態の1つの特徴は、レイアウト調整において少なくとも可変リンクの長さの調整を行うことが重要であり、これにより見栄えのよいレイアウトを実現しようとするものである。 In the above description, the difference is equally distributed between the container and the variable link. However, a priority may be provided to the variable link and each container, and the difference may be preferentially distributed to a high priority area. For example, in the link property setting UI shown in FIG. 11, a check box “variable with priority over the container” is provided, and when this check box is checked, the difference is distributed with priority over the variable link. Become so. In this case, first, the length of the variable link is adjusted within the variable range so that the width of the set matches the set width. If the variable link does not become even setting width as the maximum or minimum value, and distributes the difference value to the container to adjust the layout. That is, one feature of the present embodiment is that it is important to adjust at least the length of the variable link in the layout adjustment, thereby achieving a layout with a good appearance.

更に、コンテナのレイアウトは、横方向と縦方向の2次元的なレイアウトを扱う場合も多い。たとえば図16の(C)に示されるようなレイアウトの場合はレイアウト調整の対象となる集合にコンテナ1701,1702,1704と、リンク1703,1705が含まれる。本実施形態では、まず横方向に調整を行い、後に縦方向に調整を行う。すなわち、コンテナ1701と1702の間で、上述した手順で設定値Dに収まるようレイアウト調整を行い、その後、コンテナ1703と1704の間で設定Gに収まるようレイアウト調整を行えばよい。しかし、横方向に調整を行い、後に縦方向に調整を行うという調整方法では、ユーザが所望とする基本レイアウトからずれたレイアウト結果になることが想定される。そのため、各コンテナについて、基本パターン(縦横比)からなるべくずれないように、基本パターンの幅とレイアウト調整後の幅の差の2乗と、基本パターンの高さとレイアウト調整後の高さの差の2乗との和を求め、これをすべてのコンテナについて算出する。そして、レイアウト編集アプリケーション121は、各コンテナの2乗の和の合計値が最小となるように、それぞれのコンテナの幅と高さを算出してレイアウト調整を行っても良い。この手法を最小2乗法と呼ぶ。この最小2乗法を用いると、ユーザが当初設定した基本レイアウトから大きく外れることがなく、全体としてバランスのとれた最終レイアウトを決定することができる。   Furthermore, the container layout often handles a two-dimensional layout in the horizontal and vertical directions. For example, in the case of the layout as shown in FIG. 16C, containers 1701, 1702, and 1704 and links 1703 and 1705 are included in the set subject to layout adjustment. In the present embodiment, first, adjustment is performed in the horizontal direction, and then adjustment is performed in the vertical direction. That is, the layout adjustment may be performed between the containers 1701 and 1702 so as to be within the setting value D in the above-described procedure, and then the layout adjustment may be performed between the containers 1703 and 1704 so as to be within the setting G. However, with the adjustment method in which adjustment is performed in the horizontal direction and then in the vertical direction, a layout result deviating from the basic layout desired by the user is assumed. Therefore, for each container, the difference between the square of the width of the basic pattern and the width after layout adjustment, and the difference between the height of the basic pattern and the height after layout adjustment, so as not to deviate from the basic pattern (aspect ratio) as much as possible. The sum with the square is calculated and calculated for all containers. The layout editing application 121 may perform layout adjustment by calculating the width and height of each container so that the total sum of the squares of the containers is minimized. This method is called the least square method. When this least square method is used, the final layout which is balanced as a whole can be determined without greatly deviating from the basic layout initially set by the user.

図18の(A)〜(C)は優先順位の設定なしでのレイアウト時のUI例である。   18A to 18C are UI examples at the time of layout without setting priority.

図18の(A)は、あるレコードが挿入されレイアウトが決定されている状態を表している。1301と1302はアンカー、1303と1304は固定された辺、1305は可変の辺、1306は可変の辺の変化方向を示している矢印、1308はリンクをそれぞれ示している。この状態において、レコードを変更し、異なったサイズのコンテンツを挿入する。図18の(B)は(A)の状態に新しいコンテンツのサイズを重ねて示している。1309はそれぞれのコンテナに挿入されるコンテンツのサイズを表している。そして、レイアウト計算が行われる。図18の(C)はレイアウト計算された結果を示している。計算後の各コンテナのサイズは、実際挿入されるコンテンツのサイズと同等に差異があるように計算され、且つ前述したルールを違反しないように計算される。図18の(C)で示されるように、(B)で示した挿入されるコンテンツサイズ(1309)と計算後のコンテンツサイズ(1310)は、双方において同等な差異がある。   FIG. 18A shows a state in which a certain record is inserted and a layout is determined. 1301 and 1302 are anchors, 1303 and 1304 are fixed sides, 1305 is a variable side, 1306 is an arrow indicating the change direction of the variable side, and 1308 is a link. In this state, the record is changed and contents of different sizes are inserted. FIG. 18B shows the new content size superimposed on the state of FIG. Reference numeral 1309 denotes the size of the content inserted in each container. Then, layout calculation is performed. FIG. 18C shows the result of layout calculation. The size of each container after the calculation is calculated so that there is a difference equivalent to the size of the content that is actually inserted, and is calculated so as not to violate the rules described above. As shown in FIG. 18C, the inserted content size (1309) shown in (B) and the calculated content size (1310) are equivalently different in both cases.

次に、図19、図20を用いて、コンテナに挿入されるデータがイメージである場合の可変リンクの効果を説明する。   Next, the effect of the variable link when the data inserted into the container is an image will be described with reference to FIGS.

図19は固定サイズのリンクを使用した場合のレイアウト結果を示している。レイアウト計算方法は前述したとおりに従って行われる。例えば図10においてコンテナ1203とコンテナ1204にそれぞれ違ったサイズのイメージデータが挿入された場合を考える。この場合、それぞれのコンテナはデータの大きさを最適とみなし、コンテナ1203は挿入されたイメージサイズになる枠804(最適コンテナサイズ)に近づこうと右方向へ、同様にコンテナ1204は挿入されたイメージサイズになる枠805(最適コンテナサイズ)に近づこうと左方向へサイズを変更しようとする。しかしコンテナ1203とコンテナ1204はアンカー1201とアンカー1202によってそれぞれ左辺1212と右辺1213の移動ができず、上記のようにサイズを変更しようとすると両者の間隔を狭めるしかない。しかしながら、コンテナ間には固定サイズのリンク803が設定されており、レイアウト計算時にその長さ維持されるため、コンテナ1203とコンテナ1204のサイズが変更されることになる。   FIG. 19 shows a layout result when a fixed-size link is used. The layout calculation method is performed as described above. For example, consider a case where image data of different sizes are inserted into the container 1203 and the container 1204 in FIG. In this case, each container regards the data size as optimum, and the container 1203 moves rightward to approach the frame 804 (optimum container size) that becomes the inserted image size. Similarly, the container 1204 has the inserted image size. An attempt is made to change the size to the left in order to approach the frame 805 (optimum container size). However, the container 1203 and the container 1204 cannot move the left side 1212 and the right side 1213 by the anchor 1201 and the anchor 1202, respectively. If the size is changed as described above, the interval between the two sides must be reduced. However, a fixed-size link 803 is set between containers, and the length is maintained during layout calculation. Therefore, the sizes of the containers 1203 and 1204 are changed.

その結果、コンテナ1203とコンテナ1204はデータの縦横比に合わせた最適なサイズを確保することが出来ず、最終的に図19に示すように、最適なサイズ(枠804、枠805)よりも小さくなってしまう。すなわちリンク803のサイズが固定であるためコンテナ801とコンテナ802は最適サイズを達成できない(図19において、各コンテナ内の一点差線で示した範囲がデータの持つ縦横比である)。   As a result, the container 1203 and the container 1204 cannot secure the optimum size according to the aspect ratio of the data, and finally smaller than the optimum size (frame 804, frame 805) as shown in FIG. turn into. That is, since the size of the link 803 is fixed, the containers 801 and 802 cannot achieve the optimum size (in FIG. 19, the range indicated by the one-point difference line in each container is the aspect ratio of the data).

一方、図20は図19と同様の状態でリンクを可変サイズにした場合を示している。この場合、上記の例でコンテナ1203とコンテナ1204の間には図示の通り可変サイズのリンクが設定されている。したがって、コンテナ1203とコンテナ1204のサイズが変更される際には、リンクサイズが縮まることでコンテナ1203とコンテナ1204のサイズを図19の例より大きくすることができる。この結果、挿入されるデータサイズに合わせた最適なサイズを達成できる、あるいはより挿入データサイズ(最適サイズ)に近いコンテナの枠を設定することが出来る。図20はこの結果を示しており、可変リンク1209はレイアウト計算の結果、可変リンク903に示されるようなサイズ状態となる。なお、この場合コンテナ1203とコンテナ1204はそれぞれ最適なサイズ(データサイズに合った大きさ)になっている。   On the other hand, FIG. 20 shows a case where the link is made variable in the same state as FIG. In this case, in the above example, a variable-size link is set between the container 1203 and the container 1204 as illustrated. Therefore, when the sizes of the container 1203 and the container 1204 are changed, the size of the container 1203 and the container 1204 can be made larger than the example of FIG. 19 by reducing the link size. As a result, it is possible to achieve an optimum size according to the data size to be inserted, or to set a container frame closer to the insertion data size (optimum size). FIG. 20 shows this result, and the variable link 1209 is sized as shown by the variable link 903 as a result of layout calculation. In this case, each of the container 1203 and the container 1204 has an optimum size (a size suitable for the data size).

<第2実施形態>
上記第1実施形態では、ユーザインターフェース103により可変サイズのリンクをコンテナ間に張るにおいて、まず固定リンクを設定し、その後所望のリンクを選択して図11のごときダイアログを表示させることで可変リンクへ設定した。第2実施形態では、可変リンクの設定のためのユーザインターフェースの変形例を示す。
Second Embodiment
In the first embodiment, when a variable-size link is stretched between containers using the user interface 103, a fixed link is first set, and then a desired link is selected and a dialog as shown in FIG. Set. In the second embodiment, a modification of the user interface for setting a variable link is shown.

図21は第2実施形態によるユーザインターフェース例を示す図であり、図10のユーザインターフェースに新たなリンクツール407を加えている。リンクツール406は固定リンクを張るためのツールであり、可変サイズのリンクに変更するには図12に示されるような手順(第1実施形態)が必要となる。   FIG. 21 is a diagram showing an example of a user interface according to the second embodiment, and a new link tool 407 is added to the user interface of FIG. The link tool 406 is a tool for setting a fixed link, and a procedure (first embodiment) as shown in FIG. 12 is required to change to a link having a variable size.

一方、リンクツール407はコンテナ間にリンクを張る時点ですでに可変である点に違いがある。これにより最初から可変リンクを張りたい場合にプロパティダイアログウインドウを開いて設定を固定リンクから可変リンクに変更する手間が省けるといった効果がある。リンクの設定方法は前述の方法に従って行うが、コンテナ間に張られた可変サイズのリンクにはあらかじめ設定された値(最大値、最小値、リンク時のサイズ)があることが前提となる。同一の可変領域を持ったリンクを多数のコンテナ間に張りたい場合などは、前述の効果に加え、一度可変サイズを指定しておけば迅速にコンテナ間にリンクを張れるような効果を期待できる。このリンクツール407を使用した際のコンテナ間に設定されるサイズ(リンク時のリンクサイズ)は、その時現在のコンテナ間の距離がそのまま保たれるのが好ましい。この設定は一般的に図11の説明において前述したようなプロパティダイアログウインドウにおいてあらかじめ設定をしておき、リンクツール407を選択した時にはそこで設定された値をデフォルト値として用いてコンテナ間にリンクを張ることとなる。当然ながらリンクツール407を使用して張られたリンクのUI表示は、コンテナ間にリンクを張る時点で前述のように固定の表示と区別したものになり、例としては図20のリンク表示903のように可変を示す点線の表示等でUIに表示される。その後のレイアウト計算については前述のレイアウト計算ルールに従ってレイアウトされる。   On the other hand, the link tool 407 is different in that it is already variable at the time of establishing a link between containers. This has the effect of saving the trouble of opening a property dialog window and changing the setting from a fixed link to a variable link when it is desired to create a variable link from the beginning. The link setting method is performed according to the above-described method. However, it is assumed that a variable-size link placed between containers has a preset value (maximum value, minimum value, size at the time of linking). In addition to the above-mentioned effect, for example, when a link having the same variable area is to be extended between a number of containers, an effect that a link can be quickly established between containers can be expected by specifying a variable size once. As for the size (link size at the time of linking) set between the containers when using the link tool 407, it is preferable that the current distance between the containers is maintained as it is. This setting is generally set in advance in the property dialog window as described above in the description of FIG. 11, and when the link tool 407 is selected, the value set there is used as a default value to link between containers. It will be. Naturally, the UI display of the link created using the link tool 407 is distinguished from the fixed display as described above at the time of establishing the link between the containers. For example, the UI display of the link display 903 in FIG. In this way, it is displayed on the UI by displaying a dotted line indicating variable. Subsequent layout calculations are laid out according to the layout calculation rules described above.

以上のように、上記各実施形態によれば、コンテナの最適サイズを優先することができ、コンテナがより理想に近づいたサイズでレイアウト可能となり、ユーザの望んだレイアウト結果を提供することが出来る。このため、例えば、最適でないコンテナサイズになってしまうことを回避することが容易になり、リンクのサイズが可変となることで、コンテナ間の距離をその時々に挿入されるデータ量に応じて各コンテナサイズが最適になるように柔軟に変更し、異なるデータ量のデータが入ってきたとしてもよりデータに合わせた最適サイズのコンテナサイズを計算することができ、その結果、最適なレイアウトをユーザに提供することが出来る。   As described above, according to each of the above embodiments, the optimum size of the container can be prioritized, and the container can be laid out with a size closer to the ideal, and the layout result desired by the user can be provided. For this reason, for example, it becomes easy to avoid a non-optimal container size, and the link size is variable, so that the distance between containers can be changed according to the amount of data inserted at each time. The container size can be changed flexibly so that the optimum container size can be calculated even if different amounts of data come in, so that the optimal layout can be calculated for the user. Can be provided.

<他の実施形態>
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
<Other embodiments>
An object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the above-described embodiments to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium. Needless to say, this can also be achieved by reading and executing the program code stored in the.

この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.

プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク
,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,磁気テープ,不揮発性のメモリカード,ROMなどを用いることができる。
As a storage medium for supplying the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.

また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.

実施形態によるバリアブルプリントシステムの構成を示す図である。1 is a diagram illustrating a configuration of a variable print system according to an embodiment. 図1におけるホストコンピュータの構成の概略を示す図である。It is a figure which shows the outline of a structure of the host computer in FIG. バリアブルデータプリントの概要を説明する図である。It is a figure explaining the outline | summary of variable data printing. 実施形態によるバリアブルプリントシステムの他の構成を示す図である。It is a figure which shows the other structure of the variable print system by embodiment. メニューバー、ツールバー、ワークエリア、フローティングパレットを含む、実施形態によるユーザインターフェースの例を示す図である。FIG. 3 is a diagram illustrating an example of a user interface according to an embodiment including a menu bar, a toolbar, a work area, and a floating palette. ユーザインターフェースにおけるコンテナの表示例を示す図である。It is a figure which shows the example of a display of the container in a user interface. 実施形態によるコンテナルールを説明する図である。It is a figure explaining the container rule by embodiment. 実施形態によるリンクの作成処理を説明するフローチャートである。It is a flowchart explaining the creation process of the link by embodiment. リンク作成時のユーザインターフェースの遷移例を示す図である。It is a figure which shows the example of a transition of the user interface at the time of link creation. 可変リンクによってコンテナを配置したときのユーザインターフェースにおける表示例を示す図である。It is a figure which shows the example of a display in a user interface when a container is arrange | positioned by a variable link. 実施形態によるリンクの設定ダイアログウインドウを示す図である。It is a figure which shows the setting dialog window of a link by embodiment. 実施形態のユーザインターフェースにより可変リンクを設定するための処理を説明するフローチャートである。It is a flowchart explaining the process for setting a variable link by the user interface of embodiment. 実施形態のレイアウトエンジンによるレイアウト計算処理を示すフローチャートである。It is a flowchart which shows the layout calculation process by the layout engine of embodiment. 実施形態のレイアウトエンジンによるレイアウト計算処理を示すフローチャートである。It is a flowchart which shows the layout calculation process by the layout engine of embodiment. 実施形態のレイアウト計算時における、コンテナの集合について説明した図である。It is a figure explaining the set of containers at the time of layout calculation of an embodiment. 実施形態によるレイアウト計算を説明するための図である。It is a figure for demonstrating the layout calculation by embodiment. 実施形態によるレイアウト計算処理の詳細を説明するフローチャートである。It is a flowchart explaining the detail of the layout calculation process by embodiment. 実施形態によるレイアウト計算処理を説明するための図である。It is a figure for demonstrating the layout calculation process by embodiment. 固定リンクによるレイアウト結果例を示す図である。It is a figure which shows the example of a layout result by a fixed link. 可変リンクによるレイアウト結果例を示す図である。It is a figure which shows the example of a layout result by a variable link. 実施形態の可変リンクツールによるコンテナ配置を示す図である。である。It is a figure which shows the container arrangement | positioning by the variable link tool of embodiment. It is.

Claims (6)

コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置手段と、
前記配置手段によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定手段と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定手段と、
前記決定手段において決定されたサイズの当該2つの部分領域の水平方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の水平方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定手段で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御手段とを備えることを特徴とする情報処理装置。
Arrangement means for arranging a plurality of partial areas into which content data is poured in a predetermined area;
Setting means for setting a minimum value and a maximum value as a reference distance and a change range between the two partial areas as a constraint condition between two partial areas of the plurality of partial areas arranged by the arrangement unit;
Determining means for determining the size of the two partial areas based on the content data input to the two partial areas;
The first value that is the sum of the length in the horizontal direction of the two partial areas of the size determined by the determining means and the length of the reference distance is the second value that is the length in the horizontal direction of the predetermined area The distance between the partial areas is reduced to the minimum value set by the setting means so that the first value falls within the second value, and the distance between the partial areas is reduced. An information processing apparatus comprising: a layout control unit that uniformly reduces the two partial areas when the first value does not fit in the second value.
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置手段と、
前記配置手段によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定手段と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定手段と、
前記決定手段において決定されたサイズの当該2つの部分領域の垂直方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の垂直方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定手段で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御手段とを備えることを特徴とする情報処理装置。
Arrangement means for arranging a plurality of partial areas into which content data is poured in a predetermined area;
Setting means for setting a minimum value and a maximum value as a reference distance and a change range between the two partial areas as a constraint condition between two partial areas of the plurality of partial areas arranged by the arrangement unit;
Determining means for determining the size of the two partial areas based on the content data input to the two partial areas;
The first value that is the sum of the length in the vertical direction of the two partial areas of the size determined by the determining means and the length of the reference distance is the second value that is the length in the vertical direction of the predetermined area The distance between the partial areas is reduced to the minimum value set by the setting means so that the first value falls within the second value, and the distance between the partial areas is reduced. An information processing apparatus comprising: a layout control unit that uniformly reduces the two partial areas when the first value does not fit in the second value.
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置工程と、
前記配置工程によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定工程と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定工程と、
前記決定工程において決定されたサイズの当該2つの部分領域の水平方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の水平方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定工程で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御工程とを有することを特徴とする情報処理方法。
An arrangement step of arranging a plurality of partial areas into which content data is poured in a predetermined area;
A setting step of setting a minimum value and a maximum value as a reference distance and a change range between the two partial regions as a constraint between the two partial regions of the plurality of partial regions arranged by the arranging step;
A determination step of determining a size of the two partial areas based on content data input to the two partial areas;
The first value that is the sum of the length in the horizontal direction of the two partial areas of the size determined in the determination step and the length of the reference distance is the second value that is the length in the horizontal direction of the predetermined area The distance between the partial areas is reduced to the minimum value set in the setting step so that the first value falls within the second value, and the distance between the partial areas is reduced. A layout control step of uniformly reducing the two partial areas when the first value does not fit in the second value.
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置工程と、
前記配置工程によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定工程と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定工程と、
前記決定工程において決定されたサイズの当該2つの部分領域の垂直方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の垂直方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定工程で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御工程とを有することを特徴とする情報処理方法。
An arrangement step of arranging a plurality of partial areas into which content data is poured in a predetermined area;
A setting step of setting a minimum value and a maximum value as a reference distance and a change range between the two partial regions as a constraint between the two partial regions of the plurality of partial regions arranged by the arranging step;
A determination step of determining a size of the two partial areas based on content data input to the two partial areas;
A first value that is the sum of the length in the vertical direction of the two partial areas of the size determined in the determination step and the length of the reference distance is a second value that is the length in the vertical direction of the predetermined area The distance between the partial areas is reduced to the minimum value set in the setting step so that the first value falls within the second value, and the distance between the partial areas is reduced. A layout control step of uniformly reducing the two partial areas when the first value does not fit in the second value.
コンピュータに、
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置工程と、
前記配置工程によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定工程と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定工程と、
前記決定工程において決定されたサイズの当該2つの部分領域の水平方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の水平方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定工程で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御工程とを有する処理を実行させるコンピュータプログラム。
On the computer,
An arrangement step of arranging a plurality of partial areas into which content data is poured in a predetermined area;
A setting step of setting a minimum value and a maximum value as a reference distance and a change range between the two partial regions as a constraint between the two partial regions of the plurality of partial regions arranged by the arranging step;
A determination step of determining a size of the two partial areas based on content data input to the two partial areas;
The first value that is the sum of the length in the horizontal direction of the two partial areas of the size determined in the determination step and the length of the reference distance is the second value that is the length in the horizontal direction of the predetermined area The distance between the partial areas is reduced to the minimum value set in the setting step so that the first value falls within the second value, and the distance between the partial areas is reduced. A computer program that executes a process including a layout control step of uniformly reducing the two partial areas when the first value does not fit in the second value.
コンピュータに、
コンテンツデータが流し込まれる複数の部分領域を所定領域に配置する配置工程と、
前記配置工程によって配置された複数の部分領域の2つの部分領域間の制約条件として、当該2つの部分領域間の基準距離および変更範囲として最小値と最大値とを設定する設定工程と、
前記2つの部分領域に入力されるコンテンツデータに基づいて、当該2つの部分領域のサイズを決定する決定工程と、
前記決定工程において決定されたサイズの当該2つの部分領域の垂直方向の長さと前記基準距離の長さとの和である第1の値が前記所定領域の垂直方向の長さである第2の値に収まらない場合、前記第1の値が前記第2の値に収まるように前記設定工程で設定された最小値まで部分領域間の距離を縮小し、当該部分領域間の距離を縮小しても前記第1の値が前記第2の値に収まらない場合、当該2つの部分領域を均等に縮小するレイアウト制御工程とを有する処理を実行させるコンピュータプログラム。
On the computer,
An arrangement step of arranging a plurality of partial areas into which content data is poured in a predetermined area;
A setting step of setting a minimum value and a maximum value as a reference distance and a change range between the two partial regions as a constraint between the two partial regions of the plurality of partial regions arranged by the arranging step;
A determination step of determining a size of the two partial areas based on content data input to the two partial areas;
A first value that is the sum of the length in the vertical direction of the two partial areas of the size determined in the determination step and the length of the reference distance is a second value that is the length in the vertical direction of the predetermined area The distance between the partial areas is reduced to the minimum value set in the setting step so that the first value falls within the second value, and the distance between the partial areas is reduced. A computer program that executes a process including a layout control step of uniformly reducing the two partial areas when the first value does not fit in the second value.
JP2008301704A 2008-11-26 2008-11-26 Information processing method and apparatus, and computer program Expired - Fee Related JP4743909B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008301704A JP4743909B2 (en) 2008-11-26 2008-11-26 Information processing method and apparatus, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008301704A JP4743909B2 (en) 2008-11-26 2008-11-26 Information processing method and apparatus, and computer program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2004024487A Division JP4250540B2 (en) 2004-01-30 2004-01-30 Layout adjustment method and apparatus, and layout adjustment program

Publications (2)

Publication Number Publication Date
JP2009070405A true JP2009070405A (en) 2009-04-02
JP4743909B2 JP4743909B2 (en) 2011-08-10

Family

ID=40606517

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008301704A Expired - Fee Related JP4743909B2 (en) 2008-11-26 2008-11-26 Information processing method and apparatus, and computer program

Country Status (1)

Country Link
JP (1) JP4743909B2 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370068A (en) * 1989-08-08 1991-03-26 Sanyo Electric Co Ltd Document processor
JPH06243225A (en) * 1993-02-17 1994-09-02 Minolta Camera Co Ltd Image editing method
JPH06251117A (en) * 1993-02-26 1994-09-09 Matsushita Electric Ind Co Ltd Layout designing device
JPH07129658A (en) * 1993-11-02 1995-05-19 Toppan Printing Co Ltd Layout design device
JPH0844883A (en) * 1994-08-03 1996-02-16 Matsushita Electric Ind Co Ltd Automatic layout device
JPH09146948A (en) * 1995-11-22 1997-06-06 Sharp Corp Document preparation support device
JPH11250271A (en) * 1998-03-04 1999-09-17 Dainippon Screen Mfg Co Ltd Layout editing method, device therefor and record medium recorded with program for executing the processing
JP2002297572A (en) * 2001-03-30 2002-10-11 Seiko Epson Corp System and program for creation of digital contents

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370068A (en) * 1989-08-08 1991-03-26 Sanyo Electric Co Ltd Document processor
JPH06243225A (en) * 1993-02-17 1994-09-02 Minolta Camera Co Ltd Image editing method
JPH06251117A (en) * 1993-02-26 1994-09-09 Matsushita Electric Ind Co Ltd Layout designing device
JPH07129658A (en) * 1993-11-02 1995-05-19 Toppan Printing Co Ltd Layout design device
JPH0844883A (en) * 1994-08-03 1996-02-16 Matsushita Electric Ind Co Ltd Automatic layout device
JPH09146948A (en) * 1995-11-22 1997-06-06 Sharp Corp Document preparation support device
JPH11250271A (en) * 1998-03-04 1999-09-17 Dainippon Screen Mfg Co Ltd Layout editing method, device therefor and record medium recorded with program for executing the processing
JP2002297572A (en) * 2001-03-30 2002-10-11 Seiko Epson Corp System and program for creation of digital contents

Also Published As

Publication number Publication date
JP4743909B2 (en) 2011-08-10

Similar Documents

Publication Publication Date Title
JP4250540B2 (en) Layout adjustment method and apparatus, and layout adjustment program
JP4241410B2 (en) Layout adjustment method and apparatus, and layout adjustment program
JP4144883B2 (en) Information processing apparatus, control method therefor, and program
JP4047308B2 (en) Layout processing method, information processing apparatus, and computer program
JP4332480B2 (en) Layout adjusting method, apparatus and program
JP4332477B2 (en) Layout adjusting method, apparatus and program
JP4110105B2 (en) Document processing apparatus, document processing method, and document processing program
JP2006277727A (en) Layout processing method, information processing apparatus, and computer program
JP4912139B2 (en) Information processing device
JP4262164B2 (en) Information processing apparatus, control method therefor, and program
JP2005216182A (en) Document processor, document processing method, and computer program
JP2005216180A (en) Apparatus, method and program for document processing
US7853872B2 (en) Laying out field regions in a page for insertion of data
JP4111519B2 (en) Layout processing method, information processing apparatus, and computer program
JP4194501B2 (en) Document processing method, document processing apparatus, and document processing program
JP2006072518A (en) Information processor, information processing method, and program
JP4743909B2 (en) Information processing method and apparatus, and computer program
JP2007122487A (en) Automatic layout system
JP2007094756A (en) Information processor, layout processing method, storage medium and program
JP2008102869A (en) Layout processing method and device
JP2006072519A (en) Information processor, information processing method, and program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110317

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110428

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110509

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees