JP2008102869A - Layout processing method and device - Google Patents

Layout processing method and device Download PDF

Info

Publication number
JP2008102869A
JP2008102869A JP2006286880A JP2006286880A JP2008102869A JP 2008102869 A JP2008102869 A JP 2008102869A JP 2006286880 A JP2006286880 A JP 2006286880A JP 2006286880 A JP2006286880 A JP 2006286880A JP 2008102869 A JP2008102869 A JP 2008102869A
Authority
JP
Japan
Prior art keywords
layout
content
container
data
size
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.)
Withdrawn
Application number
JP2006286880A
Other languages
Japanese (ja)
Inventor
Toshihiko Hosotsubo
利彦 細坪
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 JP2006286880A priority Critical patent/JP2008102869A/en
Publication of JP2008102869A publication Critical patent/JP2008102869A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To easily adjust layout after dynamically determined according to content data in variable print. <P>SOLUTION: For the layout dynamically determined by feeding the content data into each data area of a template in which a plurality of data areas is laid out, instructions of changing size or positions of the data areas are accepted. Then, a data area to be changed and all the data areas linked to the data area are extracted from the determined layout and defined as one content layout, the content layout and content data corresponding thereto are stored in association with each other. In subsequent determination of dynamic layout, when the content data fed into all the data areas included in the content layout is the same as the content data corresponding to the content layout, the content layout is used. <P>COPYRIGHT: (C)2008,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やOne-to-Oneマーケティングの必要性が注目されている。ここで、CRMとは、Customer Relationship Managementである。これらの手法は、顧客満足度を高め、顧客の開拓や囲い込みを目指すという目的に対して非常に効果的なものである。   In recent years, the necessity of CRM 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. Here, CRM is Customer Relationship Management. These methods are very effective for the purpose of increasing customer satisfaction and aiming to develop and lock in customers.

One-to-Oneマーケティングはデータベース・マーケティングの一種で、顧客の年齢、性別、趣味、嗜好、購買履歴等の個人属性情報をデータベース化し、その内容を分析、顧客のニーズに合った提案を行うものである。このような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 It is. A variable print is a typical example of such one-to-one marketing. 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)

しかしながら、自動レイアウトを用いたバリアブルプリントシステムでは、ドキュメントテンプレートのデザインが不十分であったり、デザイン時には想定していないようなコンテンツであったりすると、意図しないレイアウト結果になってしまう。ところが、どんなコンテンツに対しても満足できるレイアウトになるようなドキュメントテンプレートを作成することは困難である。従ってレイアウト結果に対して微調整を行えるバリアブルプリントシステムが望まれることになる。   However, in the variable print system using the automatic layout, if the document template design is insufficient or the content is not assumed at the time of design, an unintended layout result is obtained. However, it is difficult to create a document template that provides a satisfactory layout for any content. Therefore, a variable print system that can finely adjust the layout result is desired.

現状では、コンテンツのレイアウト結果をプレビューで確認して満足できないレイアウトであるならば、
(A)ドキュメントテンプレートを修正するか、もしくは、
(B)コンテンツを変更してデータベースに再登録し、再度ドキュメントテンプレートとコンテンツをマージしてレイアウトする、といった処理が行われる。例えば、プレビューしたページのあるコンテンツの画像の画像サイズを少し大きく表示したいといったような、ちょっとした変更要求が生じた状況でも、上記(A),(B)のいずれかの操作が必要になってくる。
At present, if the layout is unsatisfactory after checking the layout result of the content in the preview,
(A) modify the document template, or
(B) Processing is performed in which the content is changed and re-registered in the database, and the document template and the content are merged again and laid out. For example, even in a situation where a slight change request has occurred, such as when it is desired to display the image size of the content of a previewed page a little larger, one of the operations (A) and (B) is required. .

しかしながら、(A)の方法を用いた場合、ドキュメントテンプレートを修正する作業は、自動レイアウトシステムの場合、目的のコンテンツに対するレイアウト結果だけでなく、他のコンテンツのレイアウト結果にも影響を与えてしまう。このため、ドキュメントテンプレート修正の結果、他のコンテンツのレイアウト結果に不満を抱いてしまうという悪循環を生み出す可能性がある。また、(B)の方法も容易性、柔軟性に欠ける。これは、通常、データベースに登録されたコンテンツの変更にはデータベース管理者の権限が必要であり、一般のドキュメントテンプレート編集者には許されていないことが多いためである。更に、データベースに登録されるコンテンツのデータ変更は、該コンテンツのオリジナルデータを喪失させるという問題も孕んでおり、他の用途でそのデータを利用しているユーザが望まない変更が加えられてしまうという問題も孕んでいた。   However, when the method (A) is used, the work of correcting the document template affects not only the layout result for the target content but also the layout result of other content in the automatic layout system. For this reason, there is a possibility of creating a vicious circle in which the result of modifying the document template is dissatisfied with the layout result of other content. Also, the method (B) lacks ease and flexibility. This is because usually the authority of the database administrator is required to change the contents registered in the database, and this is often not permitted by general document template editors. Furthermore, the data change of the content registered in the database has a problem of losing the original data of the content, and a change that is not desired by a user who uses the data for other purposes is added. There was a problem.

本発明は、上記の課題に鑑みてなされたものであり、バリアブルプリントにおいて、コンテンツデータに応じて動的にレイアウトが決定された後にそのレイアウトの調整を容易に実施できるようにすることを目的とする。   The present invention has been made in view of the above problems, and an object of the present invention is to enable easy adjustment of a layout after variable layout is dynamically determined according to content data in variable printing. To do.

上記の目的を達成するための、本発明の一態様によるレイアウト処理方法は、
複数のデータ領域がレイアウトされたテンプレートに基づいて、該複数のデータ領域の各々にコンテンツデータを流し込んで動的にレイアウトを決定する決定工程と、
前記決定工程で決定されたレイアウト中のデータ領域のサイズ又は位置の変更指示を受け付ける指示工程と、
前記指示工程で変更が指示されたデータ領域と、当該データ領域にリンクする全てのデータ領域を前記決定されたレイアウトより抽出して1つのコンテンツレイアウトとし、該コンテンツレイアウトとこれに対応するコンテンツデータを関連付けて記憶手段に記憶する記憶工程とを備え、
前記決定工程では、前記記憶手段に記憶された前記コンテンツレイアウトに含まれる全てのデータ領域に流し込まれるコンテンツデータが、該コンテンツレイアウトに対応するコンテンツデータと同一の場合、該コンテンツレイアウトを用いてレイアウトを決定する。
In order to achieve the above object, a layout processing method according to an aspect of the present invention includes:
A determination step of dynamically determining a layout by flowing content data into each of the plurality of data areas based on a template in which a plurality of data areas are laid out;
An instruction step for receiving an instruction to change the size or position of the data area in the layout determined in the determination step;
The data area instructed to change in the instruction step and all data areas linked to the data area are extracted from the determined layout to form one content layout, and the content layout and the corresponding content data are A storage step of storing in association with the storage means,
In the determining step, when the content data that is poured into all data areas included in the content layout stored in the storage unit is the same as the content data corresponding to the content layout, the layout is used by using the content layout. decide.

本発明によれば、バリアブルプリントにおいて、コンテンツデータに応じて動的にレイアウトが決定された後にそのレイアウトの調整を容易に実施できる。   According to the present invention, in variable printing, after a layout is dynamically determined according to content data, the layout can be easily adjusted.

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

<システム構成>
まず、図1Aおよび図1Bを参照して、本実施形態のバリアブルプリントシステムの構成を説明する。図1Aはバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の構成例を示すブロック図である。また、図1Bは図1Aに示されたホストコンピュータ101の構成を更に詳細に示すブロック図である。本実施形態で説明されるバリアブルプリント処理は、レイアウト調整装置であるホストコンピュータ101(汎用コンピュータモジュールで構成される)によって実行される。システム100上で実施可能となるレイアウト編集アプリケーションプログラム121(本発明のレイアウト調整プログラム)はホストコンピュータ101において、そのソフトウェアの全体、あるいは一部分が実行される。特にレイアウト編集のための処理やバリアブルデータドキュメントの印刷のための処理はホストコンピュータ101で実行されるソフトウェアにより実現される。
<System configuration>
First, the configuration of the variable print system of the present embodiment will be described with reference to FIGS. 1A and 1B. FIG. 1A is a block diagram illustrating a configuration example of a variable print system 100 for printing a variable data document. FIG. 1B is a block diagram showing the configuration of the host computer 101 shown in FIG. 1A 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.

図1Bに示されるように、ホストコンピュータ101には、入出力インターフェース143を介してキーボード132や、マウス133のようなポインティングデバイス等が入力装置として接続される。また、出力装置としてのディスプレイ装置144がビデオインターフェース137を介して接続される。更に、ローカルプリンタ145等を入出力インターフェース138を介して接続することも可能である。また、入出力インタフェース138はコンピュータモジュール101をネットワーク107へ接続する機能も有する。これにより、ネットワークを介してシステム100内の他のコンピュータ装置にホストコンピュータ101を接続することができる。ネットワーク107の典型的な例としては、ローカルエリアネットワーク(LAN)、あるいはワイドエリアネットワーク(WAN)が挙げられる。   As shown in FIG. 1B, a keyboard 132, a pointing device such as a mouse 133, and the like are connected as input devices to the host computer 101 via an input / output interface 143. 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).

また、図1Bに示すように、ホストコンピュータ101は少なくとも1つのプロセッサユニット135、例えば半導体のランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)から構成されるメモリユニット136を含んでいる。格納デバイス139は、プログラム等を格納するコンピュータ可読媒体との間でデータのやり取りが可能なハードディスクドライブ140やフロッピー(登録商標)ディスクドライブ141を含む。なお、図1Bには示されていないが、磁気テープドライブ等も格納デバイス139として使用可能である。CD−ROMドライブ142は不揮発性のデータソースとして提供される(もちろん、CD−ROMによってコンピュータプログラムを提供してもよい)。   As shown in FIG. 1B, 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. 1B, a magnetic tape drive or the like can also 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を介して通信を行うコンポーネント135〜143を利用する。あるいは、当該技術分野で知られているコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス134を介して通信を行うコンポーネント135〜143が利用される。すなわち、上述した135〜143で示される各構成は、バス134を介して通信可能に接続されており、ホストコンピュータ101にインストールされたオペレーティングシステムにより利用される。   The host computer 101 uses components 135 to 143 that perform communication via the interconnection bus 134 in accordance with an operating system such as GNU / LINUX or Microsoft Windows (registered trademark). Alternatively, components 135-143 that communicate via interconnect bus 134 are utilized by methods known in the art according to conventional operating modes of computer systems. 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.

なお、図1Bに示したホストコンピュータ101の例としては、IBM互換PCやSUN のSparcstation、あるいはそれらを含んだコンピュータシステムが考えられる。   As an example of the host computer 101 shown in FIG. 1B, 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 this embodiment, it is assumed that the layout editing application program 121 is resident in the hard disk drive 140 and the 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内に読み込まれて、ハードディスクドライブ(HDD)140にインストールされてもよい。さらにソフトウェアは、磁気テープ、ROM、集積回路、光磁気ディスク又はPCMCIAカードのようなコンピュータ可読カードからホストコンピュータ101内にロードされ得る。或いは、ソフトウエアは、他のデバイスとのの赤外線等の無線通信によりホストコンピュータ101へロードされてもよい。更に、ソフトウエアは、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. Then, it is 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 (HDD) 140 as another example. Further, the software can be loaded into the host computer 101 from a computer readable card such as magnetic tape, ROM, integrated circuit, magneto-optical disk or PCMCIA card. Alternatively, the software may be loaded into the host computer 101 by wireless communication such as infrared rays with other devices. Furthermore, the software may be loaded into the host computer 101 from another suitable computer via the Internet or an intranet having information recorded on an e-mail communication or WEB site. These are examples of computer readable media and it will be appreciated that other computer readable media may be used.

図1Aにおいて、本発明のレイアウト編集アプリケーション121はコンピュータにバリアブルプリント(バリアブルデータプリント(VDP)ともいう)を行わせるものである。レイアウト編集アプリケーション121は、2つのソフトウェアコンポーネント、すなわちレイアウトエンジン105とユーザインターフェース103を含んでいる。レイアウトエンジン105は、ソフトウェアコンポーネントであり、
・部分領域であるコンテナ(矩形の範囲)に与えられたサイズや位置の制限にしたがって、データベース119に格納されているバリアブルデータから1レコードずつ読み込み、
・読み込んだデータとコンテナの制限とから、読み込んだデータが流し込まれるコンテナの大きさや位置等を計算する。
In FIG. 1A, a layout editing application 121 of the present invention causes a computer to perform variable printing (also referred to as variable data printing (VDP)). The layout editing application 121 includes two software components, that is, a layout engine 105 and a user interface 103. The layout engine 105 is a software component,
-Read 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 a partial area,
・ Calculate the size and position of the container into which the read data is flowed from the read data and the container limit.

また、本実施形態では、レイアウトエンジン105は、更に、コンテナに割り当てられたデータを描画し、バリアブルデータドキュメントのイメージを生成する処理も行う。ただし、本発明はこれに限るものではなく、例えば次のように構成されてもよい。即ち、レイアウトエンジン105は各部分領域(コンテナ)のサイズと位置を決定するアプリケーションとして動作する。そして、図示省略したプリンタドライバに描画情報を出力することで、プリンタドライバがバリアブルデータドキュメントのイメージ描画処理を行い、印刷データを生成する。ユーザインタフェース103は、ユーザによるコンテナのレイアウトや属性設定を可能とし、ユーザにドキュメントテンプレートを作成させる。また、ユーザインターフェース103はドキュメントテンプレート内の各コンテナとデータソースとを関連付けるメカニズムを提供する。ユーザインタフェース103とレイアウトエンジン105はコミュニケーションチャネル123を介して通信する。   In this embodiment, the layout engine 105 further performs processing for drawing data assigned to the container and generating an image of the variable data document. However, the present invention is not limited to this, and may be configured as follows, for example. That is, the layout engine 105 operates as an application that determines the size and position of each partial area (container). Then, by outputting drawing information to a printer driver (not shown), the printer driver performs image drawing processing of the variable data document and generates 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.

図1Cは本実施形態によるバリアブルデータプリントの概略を説明する図である。レイアウト編集アプリケーション121のユーザインターフェースモジュール103(以下、ユーザインタフェース103と記載する)により、ユーザからの操作指示に従いドキュメントテンプレート180が生成される。ドキュメントテンプレート180の生成においては、ユーザインタフェース103を用いたユーザ操作により、ページ上に複数のコンテナ181〜183が配置され、各コンテナに位置やサイズに関する制約条件が付与される。また、ユーザインターフェース103はドキュメントテンプレート180とデータソース190との関連付け、更に各コンテナとデータソース190内の各データフィールドとの関連付けを行う。各コンテナとデータソース190内の各データフィールドとの関連付けを示す関連付け情報は、ドキュメントテンプレート内に記述され、該ドキュメントテンプレートは、HDD140に格納される。また、データソース190は、レコード単位で項目データが記載されているファイルであり、HDD140に格納されている。レイアウトエンジン105は、ユーザからの印刷指示もしくはプレビュー指示に応じて、
・ドキュメントテンプレートの各コンテナ181〜182に、関連付け情報で関連付けられたデータをデータソース190から読み込み、
・レコード単位で流し込み(例えば、データレコード1のデータフィールドA〜Cをコンテナ181〜183へ流し込む)、
・流し込まれたデータに応じて各コンテナのサイズ等を調整(レイアウト調整)する。
FIG. 1C is a view for explaining the outline of variable data printing according to the present embodiment. A document template 180 is generated by a user interface module 103 (hereinafter referred to as the user interface 103) of the layout editing application 121 in accordance with an operation instruction from the user. In the generation of the document template 180, a plurality of containers 181 to 183 are arranged on a page by a user operation using the user interface 103, and a constraint condition regarding the position and size is given to each container. 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 preview instruction from the user, the layout engine 105
The data associated with the association information is read from the data source 190 into each of the containers 181 to 182 of the document template,
-Pour in record units (for example, pour data fields A to C of data record 1 into containers 181 to 183),
-Adjust the size of each container (layout adjustment) according to the flowed data.

プレビュー指示の場合は、レイアウト調整されたドキュメントイメージを生成し、ビデオディスプレイ144の画面上にプレビューとして表示するべく出力される。また印刷指示の場合は、レイアウトエンジン105もしくはプリンタドライバを用いて生成したドキュメントイメージを印刷データとしてプリントサーバ109へ出力する。データレコード1,2,3…を順次処理することにより、バリアブルデータプリントが実現されることになる。   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に保存される。図1Cで上述したように、レイアウト編集アプリケーション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. 1C, the layout engine 105 of the layout editing application 121 generates a variable data document constituted 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.

<他のシステム構成例>
図2は、図1Aと類似のブロック図であるが、エンジンサーバ227が追加されている。エンジンサーバ227に格納されているレイアウトエンジン225は、レイアウトエンジン105の分離バージョンである。エンジンサーバ227には一般的なコンピュータが用いられる。レイアウトエンジン225は、印刷やその他の目的に応じてバリアブルデータドキュメントを生成するために、ファイルサーバ115に保存されたドキュメントテンプレートとデータベース119に保存されたデータとを結合する。そのようなオペレーションはユーザインタフェース103を介して要求される。
<Other system configuration examples>
FIG. 2 is a block diagram similar to FIG. 1A, 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は、操作時に図3に示されるようなアプリケーションウインドウ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 mouse cursor / pointer 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には図4に示されるような、ユーザ選択可能な『ボタン』が配置されている。
(1)選択ツールボタン403:コンテナの辺を選択、移動、サイズ変更、リサイズそしてロック/ロック解除のために使われる。コンテナの選択は、コンテナの周りに選択ボックスをドラッグすることによりなされる。また、CTRLキーを押しながら、複数のコンテナについて選択操作をすることによって、複数のコンテナを選択可能である。
(2)テキストコンテナツールボタン404:スタティックあるいはバリアブルテキストを持つコンテナを作成するために使われる。
(3)イメージコンテナツールボタン405:スタティックあるいはバリアブルイメージを持つコンテナを作成するために使われる。
(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 405: 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の図3に示したアプリケーションウインドウ301は、ページ内に各コンテナやリンクをレイアウトすることで、基本レイアウトを決定することができる。基本レイアウトとは、バリアブルデータプリントで基本となるレイアウトのことである。基本レイアウト内の各コンテナが固定コンテナである場合は、すべてのレコードの印刷結果のレイアウトは同じになる。また、基本レイアウト内の各コンテナが後述する可変コンテナである場合は、レコード単位に読み込まれるデータの量やサイズにより各コンテナのサイズや位置が、後述する制約の範囲内で変動することになる。よって、レイアウト編集アプリケーション121で作成されるドキュメントテンプレートはあくまで基本レイアウトを決定するものであり、可変コンテナが含まれる場合、最終的な印刷物のレイアウトは読み込まれるデータによりレイアウト調整されることになる。   The application window 301 shown in FIG. 3 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.

[ドキュメントテンプレート]
図3において、ワークエリア306はドキュメントテンプレート(180:基本レイアウト)のデザインを表示・編集するために使われる。また、ドキュメントテンプレートを単にテンプレートということもある。これはユーザがドキュメントテンプレートをデザインする過程において、印刷されるドキュメントの概観をユーザに提示することを可能とする。これにより、ユーザは、データソース(190)とマージされたドキュメントが、バリアブルデータの量・サイズに基づいてどのように変化するかを容易に理解できる。
[Document Template]
In FIG. 3, a work area 306 is used to display / edit the design of a document template (180: basic layout). A document template is sometimes simply referred to as a template. 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 cues (container borders, anchors, sliders, links, etc.) describing the document structure and variable data container in the document template are always displayed when the document template is created. Further, at the time of previewing the variable data, such visual cues are displayed when the cursor is moved over the container or when the container is selected.

ワークエリア306はスクロールバー307とオプションのルーラー308とドキュメントテンプレート309を含む。ドキュメントテンプレート309はページが複数あることを示すことができる。また、ドキュメントテンプレート309は、図1Cのドキュメントテンプレート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. 1C.

与えられたドキュメントテンプレートのページサイズは、周知の技術を用いて、ユーザによって指定される。例えばメニューの「ファイル」から「ページ設定」を選択することでページサイズを設定するダイアログを表示し、そこでユーザが指定したページサイズが反映されることになる。それぞれのドキュメントでの実際のページ数は、関連付けられたデータソース内のバリアブルデータによって変化する可能性が有る。これは、ドキュメントテンプレート内にバリアブルデータの量により大きさが変更されるフィールドが設定されている場合、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 field whose size is changed according to the amount of variable data is set in the document template, an additional page is automatically created when variable data that cannot fit variable data is read in one page. This is because that. A variable table is an example of a field whose size is changed according to the amount of such variable data.

それぞれのページ内に示される境界線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.

図4は1ページのドキュメントテンプレート309上に表示され得るオブジェクトの例を示す図である。このようなオブジェクトとしては、コンテナ407、408と、任意に適用するアンカーアイコン409、固定されている辺411、414、固定されていない辺410、リンク412そしてスライダー413を持つ。アンカーアイコン409は、コンテナの矩形の角、辺、またはコンテナの中央に設定することが可能である。アンカーアイコン409が設定されると、設定された個所の位置が固定となる。つまり、図4の例では、アンカーアイコン409は、コンテナ407の左上の角に設定されている。このため、コンテナ407はバリアブルデータが流し込まれ、バリアブルデータの画像サイズもしくはテキスト量が多い場合に、右方向及び下方向に拡大可能であることを示している。アンカーアイコン409が辺に設定されている場合は、その辺が固定となり、その他の3辺の各方向に拡大可能である。また、アンカーアイコン409がコンテナの中央に設定されている場合は、コンテナの中央位置が固定となり、コンテナ矩形の中央位置が変わらないように、4方向に拡大可能である。リンク412は詳細は後述するが、コンテナ407とコンテナ408が関連付けられていることを示しており、このリンクに設定されている長さ(範囲指定可能)を保ちつつ、コンテナ408が右方向に移動可能であることを示している。スライダー413は、設定されている辺と水平方向に移動可能であることを示している。   FIG. 4 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. 4, the anchor icon 409 is set at the upper left corner of the container 407. Therefore, the container 407 indicates that the variable data can be expanded in the right direction and the downward direction when the variable data has a large image size or text amount. 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.

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

より正確にはコンテナは、設定の集まり、視覚的表現、そしてインタラクションと編集動作をもっている。下記は本実施形態によるコンテナの定義である。   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)コンテナは、図4に示されるように視覚的な手がかりとしてのユーザインターフェースを有している。例えばコンテナの編集そして表示設定のためのインタラクティブなグラフィカルユーザインターフェース(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, when the left side of the container is fixed, the display position of the associated content is the same horizontal position for all documents. However, some documents may be displayed at the top of the page and others may be displayed 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 on the page is the same for 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 being the furthest to the most on the 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.

図4で示されるように、新規のテキストコンテナあるいはイメージコンテナは、マウス133の操作により当該ドキュメントテンプレート309上に作成される。即ち、テキストコンテナツール404あるいはイメージコンテナツール405をマウス133でクリックし、ドキュメントテンプレート309上に四角形をドラッグすることによって、新規のテキストコンテナあるいはイメージコンテナが作成される。   As shown in FIG. 4, a new text container or image container is created on the document template 309 by operating the mouse 133. That is, by clicking the text container tool 404 or the image container tool 405 with the mouse 133 and dragging a rectangle on the document template 309, a new text container or image container is 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. In addition, various methods may be considered such that the size of the container may be automatically defined in advance, or may be created and arranged by 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 properties dialog, you can determine the size (width, height) and position of the container. When making a container variable, set the basic pattern (reference size and reference position) of the container, and set the maximum container size (width and height) and the minimum container size (width and height). It is possible. Note that the size of the container set using the above-described means becomes the reference size at the time of layout setting, and variable data (content data) is poured into the container set here. In addition, the reference size may be changed according to the size of the content data to be inserted or the size change of the related container. Details will be described later.

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

アプリケーション121は、コンテナの辺の状態を表現するために、
・実線(アイテム503)あるいは点線(504)を用いて辺を表すとともに、
・アンカー(辺の近くに描画された506、507、509によって示されるような線、形状、アイコン)、
・ハンドル(移動、修正するために領域の辺上あるいは近傍に描画されたコントロール点、502)、
・スライダー(辺の両側に描画された短い並行線、図4の413)、
・拡縮アイコン(505)、
・色を用いる。
In order to express the state of the side of the container, the application 121
-Represent the sides using solid lines (item 503) or dotted lines (504),
Anchors (lines, shapes, icons as shown by 506, 507, 509 drawn near the edges),
Handles (control points drawn on or near the side of the area to move or modify, 502),
A slider (short parallel lines drawn on both sides of the side, 413 in FIG. 4),
-Scale icon (505),
・ Use color.

図5(A)〜(D)に示されるコンテナ表示方法のルールは以下の通りである。
(1)それぞれの辺を固定するために、実線で描画する。
(2)幅が固定の場合は、左と右の辺を実線で描画する。
(3)高さが固定の場合は、上と下の辺を実線で描画する。
(4)軸は描画しない。
(5)(1)〜(3)によって描画されていないそれぞれの辺の近くには拡縮アイコンが描画され、それらの辺を点線で描画する。
(6)垂直辺と水平辺、あるいは垂直軸と水平軸のそれぞれのペアで、もし両者が固定なら、それらの交差点にアンカーが描画される。
(7)それぞれの固定辺で、もし辺のどこにもアンカーが描画されていなければ、エッジの中央にスライダーが描画される。
(8)垂直及び水平辺、あるいは垂直及び水平軸のそれぞれのペアで、アンカーやスライダーが描画されていない場合、それらの交差点にハンドルが描画される。
The rules for the container display method shown in FIGS. 5A to 5D 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)図4の410の辺のように、点線はコンテナのコンテンツに依存してドキュメント内の辺の位置が変化することを意味する。
(2)実線は、固定されている(辺414)、あるいはコンテナの幅・高さが固定されている(コンテナ408では4辺が実線であり、両方が固定されている)ために制限された辺であることを意味する。
(3)アンカーは辺および軸が交差した場所が固定されていることを意味する。それゆえ、アンカー点は、すべてのドキュメントの水平、垂直位置で現れることになる。アンカーは当然固定される。図4のアイコン409は、辺414の交差する位置が固定されていることを意味しているアンカーアイコンの例である。
(4)スライダーは関係付けられた辺の長さが固定されているが、並行移動する可能性があることを意味する。例えば、図4でスライダー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. 4, 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. 4 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. 4, 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 text amount of data that is flowed into the container 407 associated with the container 408 (linked) is small, the size of the container 407 is small. Therefore, the container 408 is laid out and displayed by sliding (translating) in the left direction. 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.

図5の(A)で、コンテナ501は、幅・高さの両方が固定されていない(可変である)。固定された辺503は実線で表現され、可変の辺504は点線で表現されている。拡縮アイコン505は、隣接する辺504が可変であることを示す。他の形態のインジケータを代わりにあるいは追加的に用いてもよい。   In FIG. 5A, 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.

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

図5の(C)において、コンテナ501は、コンテナの幅及び高さの両方が可変であり、任意のアンカーアイコン507で示されるような中心点の周りを平等に広がるという状態を示している。すなわち、コンテナ501はアンカーアイコン507を中心に拡大あるいは縮小が可能である。ここでの拡大/縮小は、アンカーアイコン507の位置が常にコンテナ501の中心点となるようにレイアウト調整される。   In FIG. 5C, 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.

図5の(D)において、コンテナ501は、上辺508が固定されているが、幅・高さの両方が可変である。上辺508の中心に位置付けられて示されるアンカーアイコン509は、固定されている。そしてコンテナ501の左辺・右辺(502)は、アンカーアイコン509を通って垂直な中心軸(垂直軸)の周りを、拡大・縮小する。   In FIG. 5D, 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.

[リンク]
リンクは、コンテナとコンテナの関連を示している。関連とはコンテナ間の距離を示しており、リンクによって関連付けられたコンテナ同士は、互いのレイアウト変更の影響を受けてレイアウトを計算する。なお、ここでいう互いのレイアウト変更の影響とは流し込まれたコンテンツデータによって、コンテナの基準サイズが変更したことにより生じるコンテナ間の押し合い(後述する「押す力」または「引く力」)のことを指す。図4の412で示されているものがリンクであり、図4ではコンテナ407と408とを関連づけている。リンクの設定方法および、リンクで関連付けられたコンテナのレイアウト計算方法については、後述する。
[Link]
The link indicates the relationship between containers. “Relation” indicates a distance between containers, and containers associated by a link are affected by each other's layout change and calculate a layout. Here, the influence of mutual layout change refers to the pushing between containers ("pushing force" or "pulling force" described later) caused by changing the reference size of the container according to the content data that has been poured. Point to. What is indicated by 412 in FIG. 4 is a link. In FIG. 4, containers 407 and 408 are associated with each other. A link setting method and a layout calculation method for containers associated with the link will be described later.

[リンクの設定方法]
次に、コンテナ同士を関連付けるためのリンクの設定について説明する。図6はリンクの設定方法を示したフローチャートである。また図7の(A)〜(C)はリンク設定時のユーザインターフェース(UI)の遷移例を示している。図6,図7を用いてコンテナにリンクを設定する方法について説明する。
[Link setting method]
Next, setting of a link for associating containers will be described. FIG. 6 is a flowchart showing a link setting method. 7A to 7C 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つ)がドキュメントテンプレート上に作成されている必要がある。図7の(A)〜(C)では、ステップS601で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. 7A to 7C show transition examples of user interfaces when two containers are created and links are set in step S601.

次に、ステップS602において、レイアウト編集アプリケーション121は、前述したリンクツールが選択状態(図4のボタン406をクリックすることにより選択状態となる)になったかを判断する。リンクツールが選択上体でなければ、必要に応じて他の各種処理を実行し(ステップS609)、ステップS602に戻る。   Next, in step S602, the layout editing application 121 determines whether the above-described link tool has been selected (by clicking the button 406 in FIG. 4). 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.

図7の(A)において、コンテナ701と702はすべて固定されている辺で構成されているものとする。また、703と704は、図4の409と同じであり、アンカーを意味する。705はマウスポインタを意味している。さて、リンクツールが選択状態となっている間に、ユーザはリンクを設定する2つのコンテナのうちの一方(コンテナ701とする)をクリックして選択する。この操作に応じて、レイアウト編集アプリケーション121のユーザインターフェース103は第1のコンテナが指定されたことを認識し(ステップS603)、選択されたコンテナを特定する情報を保持する。また、以降のマウスカーソルの移動に応じた軌跡を画面に表示するようにする(ステップS604)。例えば、図7の(B)における線分706は、(A)の状態におけるクリック位置と現在のマウスカーソルの位置とを結んだ線を示しており、このUIによりどの位置にリンクが設定されるのかをユーザに明示することができる。   In FIG. 7A, it is assumed that the containers 701 and 702 are all composed of fixed sides. 703 and 704 are the same as 409 in FIG. 4 and mean anchors. Reference numeral 705 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 a link (referred to as container 701). 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 706 in FIG. 7B indicates a line connecting the click position in the state of FIG. 7A and the current mouse cursor position, and a link is set at which position by this UI. Can be shown to the user.

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

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

なお、図7の(C)のようなコンテナの辺の状態の変化は、リンクを設定したことによりコンテナの辺を可変にする必要が生じたことにより自動的に実行されたものである。そしおて、リンクを設定したにもかかわらず全ての辺が固定であるという矛盾の発生を防ぐことを目的としている。また、709は図5の505と同じで、リンクを設定したことにより、コンテナが変化できる方向をユーザに視覚的に示したマークである。また、図7の(C)の例では、左のコンテナの右辺と右のコンテナの左辺が可変な状態へ変化したが、これは一例であり、たとえば、右コンテナが図4の413で示したスライダーを持つ設定に変化してもかまわない。   Note that the change in the state of the container side as shown in FIG. 7C is automatically executed when it is necessary to make the side of the container variable by setting the link. The purpose is to prevent the occurrence of a contradiction that all sides are fixed despite the link being set. 709 is the same as 505 in FIG. 5 and is a mark that visually indicates to the user the direction in which the container can be changed by setting a link. In the example of FIG. 7C, 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.

<レイアウトエンジンによるレイアウト計算処理>
[レイアウト計算方法(全体フロー)]
本実施形態のレイアウト編集アプリケーションは、レイアウトモードとプレビューモードに分けられる。レイアウトモードでは、ユーザインターフェース103を用いてコンテナを作成し、そのコンテナ間に関連付け(リンク設定)を行ってレイアウトを作成する。プレビューモードでは、レイアウトエンジン105により、作成したレイアウトにデータソースの各レコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューする。このプレビューモードにおいて、実際のレコードが挿入され、前述した優先順位に従ってレイアウトを計算する。ただし、プレビューモードは、表示上でのレイアウト計算である。実際に印刷する場合においても、レイアウトエンジン105が各コンテナにデータを挿入してレイアウトを計算するが、その際の計算方法はプレビューモードと同じである。
<Layout calculation processing by layout engine>
[Layout calculation method (overall flow)]
The layout editing application of this embodiment is divided into a layout mode and a preview mode. In the layout mode, containers are created using the user interface 103, and a layout is created by associating (linking) the containers. In the preview mode, the layout engine 105 inserts each record of the data source into the created layout, and previews the 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.

図8はレイアウト計算のフローを示している。まず、プレビューモードが選択される(ステップS801)。プレビューモードになったら、レイアウト編集アプリケーション121は、ユーザにプレビューするレコードをデータソースより選択させ、選択されたレコードの各フィールドデータを各コンテナに挿入するよう決定する(ステップS802)。各コンテナへのフィールドデータの挿入が決定されると、レイアウト編集アプリケーション121は、そのレコードをレイアウトするための計算を行い、必要に応じてレイアウト調整を行う(ステップS803)。ステップS803におけるレイアウト計算の詳細については後述する。そして、レイアウト編集アプリケーション121は、ステップS803で計算されたレイアウトを表示する(ステップS804)。レイアウト編集アプリケーション121は、他のレコードについてもプレビューを行うかどうかをユーザの指示により判断する(ステップS805)。ステップS805で、他のレコードについてプレビューを行う必要がないと判断した場合は、プレビューモードを終了する(ステップS807)。他のレコードについてプレビューを行うのであれば、レイアウト編集アプリケーション121は、他のレコードを選択して再度レイアウト計算を行い、プレビューを行う(ステップS806)。   FIG. 8 shows a flow of layout calculation. First, the preview mode is selected (step S801). 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 S802). 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 S803). Details of the layout calculation in step S803 will be described later. The layout editing application 121 displays the layout calculated in step S803 (step S804). The layout editing application 121 determines whether or not to preview other records based on a user instruction (step S805). If it is determined in step S805 that it is not necessary to preview another record, the preview mode is terminated (step S807). 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 S806).

なお、プレビューモードでなく印刷時においては、印刷するレコード全てについて順にレイアウトの計算を行う。したがって、ステップS804は存在せず、ステップS805は印刷するレコードを全て処理したかの判断を行う。ステップS803でレイアウト計算された結果を、描画出力して出力し、プリンタドライバを用いて印刷データとして生成し、プリンタに印刷データが出力される。この場合、全てのレコード(印刷すべく指定された全レコード)について印刷データの出力が終了した時点で本処理を終了することになる。   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 S804 does not exist, and step S805 determines whether all records to be printed have been processed. The result of the layout calculation in step S803 is output by drawing 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).

[レイアウト計算方法(詳細)]
次に、上記ステップS803によるレイアウト計算の詳細について説明する。図9は本実施形態によるレイアウトの優先順位を設定しない場合のレイアウト計算の方法を示したフローチャートである。また、図10はそのときのUI表示例を示した図である。本図はレイアウト計算の処理方法についてのみ説明するためのフローチャートであるため、バリアブルデータプリントの1レコードの印刷/プレビュー時のレイアウト計算方法に相当する。複数レコードの場合は、下記の処理が繰り返されることになる。なお、これらの処理はホストコンピュータ101内のプロセッサ135が制御することによって実現される。
[Layout Calculation Method (Details)]
Next, details of the layout calculation in step S803 will be described. FIG. 9 is a flowchart showing a layout calculation method when the layout priority is not set according to the present embodiment. FIG. 10 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. These processes are realized by the control of the processor 135 in the host computer 101.

まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を求める(ステップS901)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。例えば図11を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。したがって、コンテナA、Bが集合1、コンテナC、Dが集合2となる。すなわち、リンクによって接続されたコンテナ群を一つの集合として特定する。前述したように、1101はアンカー、1102は固定された辺、1103はコントローラー、1104は可変の辺の変化方向を示している矢印、1105は可変の辺、1106はリンク、そして1107はスライダーを示している。   First, the layout editing application 121 obtains a set of containers for calculating a layout (step S901). In the layout calculation, the associated containers are calculated as one set. For example, referring to FIG. 11, 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, 1101 is an anchor, 1102 is a fixed side, 1103 is a controller, 1104 is an arrow indicating a change direction of a variable side, 1105 is a variable side, 1106 is a link, and 1107 is a slider. ing.

次に、レイアウト編集アプリケーション121は、ステップS901で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(ステップS902)。そして、選択したコンテナの集合について、レイアウトの計算を行う。まず、選択したコンテナの集合に含まれる可変要素である2つのコンテナ(A,B)について、流し込まれるコンテンツデータの画像サイズもしくはテキスト量から各コンテナがなにも制約を受けない場合の大きさを計算する。   Next, the layout editing application 121 selects one to calculate a layout from the set of containers obtained in step S901 (step S902). Then, the layout of the selected set of containers is calculated. First, regarding the two containers (A, B) which are variable elements included in the set of selected containers, the size when each container is not restricted by the image size or text amount of the content data to be flown is set. calculate.

具体的には、レイアウト編集アプリケーション121は、コンテナAが画像データ用コンテナであるか、テキスト用コンテナであるかを判断する。この判断は、前述したように、コンテナに対して設定されている属性により判断できる。次に、レイアウト編集アプリケーション121は、コンテナAに流し込まれるデータを読み込む。コンテナAが画像データ用コンテナである場合は、その画像データのサイズ(幅、高さのピクセル数、および解像度)がコンテナAの制約を受けない場合の大きさになる。また、コンテナAがテキスト用コンテナである場合は、そのテキストデータの文字数と、コンテナAのコンテナ属性で指定されている文字属性に基づいて、コンテナAに流し込まれるべきデータ量が計算できる。この文字属性とは、例えば、フォントタイプ、フォントサイズ、文字ピッチ、行ピッチなどである。レイアウト編集アプリケーション121はデータベースにあるコンテンツデータおよび関連付けられているコンテナの属性を認識することができる。さらに、上述した計算によってコンテンツデータのサイズを算出することで、コンテナの基準サイズと異なるか否かを判断することができる。また、コンテンツデータのサイズとコンテナの基準サイズが異なる場合は、その大小関係も判断することができる。   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 data to be poured into the container A. When the container A is an image data container, the size of the image data (the width, the number of pixels of the height, and the resolution) is the size when the container A is not restricted. When the container A is a text container, the amount of data to be poured into the container A can be calculated based on the number of characters of the text data and the character attribute specified by the container attribute of the container A. The character attributes include, for example, font type, font size, character pitch, line pitch, and the like. The layout editing application 121 can recognize the content data in the database and the attribute of the associated container. Furthermore, by calculating the size of the content data by the above-described calculation, it can be determined whether or not the content data is different from the reference size of the container. Further, when the size of the content data is different from the reference size of the container, the size relationship can also be determined.

ここで、テキスト用コンテナの場合は、コンテナAの縦横比が制約を考えないと決定できないため、制約を当てはめる。図11の例では、コンテナAは、左上および左下の角にアンカーが設定されているため、高さ(縦方向)が固定となる。よって、レイアウト編集アプリケーション121は、コンテナAの基本パターンとして設定されている幅(横方向)のコンテナAに、計算したデータ量(テキスト量)の文字を流し込めるか否かを判断する。すべて流し込めると判断された場合は、コンテナAは、基本パターンで設定されている基準サイズ(幅、高さ)に変更はない。また、すべて流し込めないと判断された場合は、コンテナAは、アンカー設定により高さが固定であるため、横方向に伸びることになる。ここで、レイアウト編集アプリケーション121は、コンテナAの幅がどれだけになると、計算したデータ量の文字を流し込めるかを計算し、コンテナAのサイズを算出する。   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. 11, the container A has anchors set at the upper left and lower left corners, so 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 container A has no change in the reference size (width, height) set 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は、レイアウトされるコンテナのサイズが、実際のコンテンツのサイズとできる限り差が少なくなるように、レイアウトの最適化を行う(ステップS903)。レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。レイアウト編集アプリケーション121は、ステップS902で算出したコンテナの集合のサイズ、つまりコンテナAとコンテナBとリンク1106(ここでは固定リンク)の合計サイズを求める。そして、この合計サイズと、基本レイアウトにおける当該コンテナの集合のサイズ(図11の例ではコンテナ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 (step S903). 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 S902, that is, the total size of the container A, the container B, and the link 1106 (here, a fixed link). Then, the difference between the total size and the size of the set of containers in the basic layout (corresponding to the distance between the anchor icons of containers A and B in the example of FIG. 11) is obtained. 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は、レイアウトの最適化を行い、ルールに違反していた場合は、再度ルールを違反しないように計算をする(ステップS904)。ここで記述したルールとは、レイアウト作成時にユーザによって設定される制限であり、コンテナのサイズの可変範囲や位置の制限、可変リンクの場合はリンクの長さの変化の制限などである。ルールを違反しないようにレイアウトが計算されたら、その集合のレイアウトは完成される。そして、ステップS902〜S904の処理をページ上のすべての集合について施し、レイアウト編集アプリケーション121は、ページ全体のレイアウトを計算する(ステップS905)。   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 (step S904). 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 S902 to S904 are performed on all the sets on the page, and the layout editing application 121 calculates the layout of the entire page (step S905).

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

図10の(A)は、あるレコードが挿入されレイアウトが決定されている状態を表している。1001と1002はアンカー、1003と1004は固定された辺、1005は可変の辺、1006は可変の辺の変化方向を示している矢印、1008はリンクをそれぞれ示している。この状態において、レコードを変更し、異なったサイズのコンテンツを挿入する。図10の(B)は(A)の状態に新しいコンテンツのサイズを重ねて示している。1009はそれぞれのコンテナに挿入されるコンテンツサイズを表している。そして、レイアウト計算が行われる。図10の(C)はレイアウト計算された結果を示している。計算後の各コンテナのサイズは、実際挿入されるコンテンツのサイズと同等に差異があるように計算され、且つ前述したルールを違反しないように計算される。図10の(C)で示されるように、(B)で示した挿入されるコンテンツサイズ(1009)と計算後のコンテンツサイズ(1010)は、双方において同等な差異がある。   FIG. 10A shows a state in which a certain record is inserted and a layout is determined. 1001 and 1002 are anchors, 1003 and 1004 are fixed sides, 1005 is a variable side, 1006 is an arrow indicating the change direction of the variable side, and 1008 is a link. In this state, the record is changed and contents of different sizes are inserted. FIG. 10B shows the size of the new content superimposed on the state of FIG. Reference numeral 1009 denotes a content size inserted in each container. Then, layout calculation is performed. FIG. 10C 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 (C) of FIG. 10, the inserted content size (1009) shown in (B) and the calculated content size (1010) have the same difference in both.

[長さが可変のリンクの設定]
図12では可変リンクの設定のためのユーザインターフェースを表している。図4と同様にアプリケーションウインドウ301とツールバー303がある。図12の状態では、ドキュメントテンプレート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. 12 shows a user interface for setting a variable link. Similar to FIG. 4, there are an application window 301 and a toolbar 303. In the state of FIG. 12, 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.

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

図13は、本実施形態のユーザインターフェース103による可変リンクの設定手順を説明するフローチャートである。例えば図11のコンテナAとコンテナBの間に図6、図7で説明した手順でリンクを張ると、まず固定サイズのリンクが張られる。そして、このリンクを選択して図13に示す処理を実行することにより、当該リンクを固定サイズのリンク1106(図11)の状態から可変サイズのリンク1209(図12)へと遷移させることができる。なお、これらの処理はホストコンピュータ101内のプロセッサ135が制御することによって実現される。   FIG. 13 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. 11 according to the procedure described in FIGS. 6 and 7, a fixed-size link is first established. Then, by selecting this link and executing the processing shown in FIG. 13, the link can be changed from the state of the fixed-size link 1106 (FIG. 11) to the variable-size link 1209 (FIG. 12). . These processes are realized by the control of the processor 135 in the host computer 101.

まず、マウスにより所望のリンク(たとえばリンク1106)を選択状態とする。この状態で、リンクプロパティを表示させるための所定の操作が行われると、レイアウト編集アプリケーション121のユーザインターフェース103は、リンクプロパティの表示指示の入力として認識する(ステップS1301)。リンクプロパティの表示指示を認識すると、選択状態のリンク(以下、対象リンクという)に対応したプロパティダイアログウインドウ1401(図14)が表示される。次に、ユーザインタフェース103は、リンクプロパティを表示する(ステップS1302)。なお、リンクの選択操作としては、コンテナの基本パターンの設定時と同様に、マウスの右クリックあるいはキーボードの特定のキーの操作等、いかなるものであってもよい。   First, a desired link (for example, link 1106) is selected with the mouse. In this state, when a predetermined operation for displaying a link property is performed, the user interface 103 of the layout editing application 121 recognizes it as an input of a link property display instruction (step S1301). When the link property display instruction is recognized, a property dialog window 1401 (FIG. 14) corresponding to the selected link (hereinafter referred to as the target link) is displayed. Next, the user interface 103 displays the link property (step S1302). 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.

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

このダイアログウインドウ1401においてリンクを固定サイズから可変サイズに変更するために、Link Type1405においてリンクサイズを可変に設定するためのFlexible Length1407を選択する。これによりLink Distance1408内に配置されているMax. Distance1412、Min. Distance1410、Distance1411が有効になり、数値の設定が可能となる。ユーザは、リンクの可変サイズを設定するために、そのリンクの長さの最大値をMax. Distance1412に、最小値をMin. Distance1410に、現在の値をDistance1411に設定することになる。   In order to change the link from a fixed size to a variable size in this dialog window 1401, a Flexible Length 1407 for setting the link size to be variable is selected in Link Type 1405. As a result, Max. Distance 1412, Min. Distance 1410, and Distance 1411 arranged in Link Distance 1408 are validated, 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 1412, the minimum value to Min. Distance 1410, and the current value to Distance 1411.

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

すなわち、まず、ステップS1304において、レイアウト編集アプリケーション121は、対象リンクが固定サイズか可変サイズかを判定する。固定サイズが指定されていればステップS1308へ進み、対象リンクを「固定サイズ」に設定し、ステップS1307で対象リンクの表示状態を「固定リンク」を表す「実線」とする。   That is, first, in step S1304, 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 S1308, 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 S1307.

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

なお、Distance1411に設定される現在の値には、現在のレイアウトとして配置されているコンテナの間の距離がデフォルト値として自動的に入力されるようにしてもよい。   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 1411.

図15は固定サイズのリンクを使用した場合のレイアウト結果を示している。レイアウト計算方法は前述したとおりに従って行われる。例えば図12においてコンテナ1203とコンテナ1204にそれぞれ違ったサイズのイメージデータが挿入された場合を考える。この場合、それぞれのコンテナはデータの大きさを最適とみなし、コンテナ1203は挿入されたイメージサイズになる枠1504(最適コンテナサイズ)に近づこうと右方向へサイズを変更しようとする。同様にコンテナ1204は挿入されたイメージサイズになる枠1505(最適コンテナサイズ)に近づこうと左方向へサイズを変更しようとする。しかしコンテナ1203とコンテナ1204はアンカー1201とアンカー1202によってそれぞれ左辺1212と右辺1213の移動ができず、上記のようにサイズを変更しようとすると両者の間隔を狭めるしかない。しかしながら、コンテナ間には固定サイズのリンク1503が設定されており、レイアウト計算時にその長さ維持されるため、コンテナ1203とコンテナ1204のサイズが変更されることになる。   FIG. 15 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 tries to change the size in the right direction so as to approach the frame 1504 (optimum container size) that becomes the inserted image size. Similarly, the container 1204 tries to change the size in the left direction so as to approach the frame 1505 (optimum container size) that becomes the inserted image 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 narrowed. However, a fixed-size link 1503 is set between containers, and the length is maintained at the time of layout calculation. Therefore, the sizes of the containers 1203 and 1204 are changed.

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

一方、図16は図15と同様の状態でリンクを可変サイズにした場合を示している。この場合、上記の例でコンテナ1203とコンテナ1204の間には図示の通り可変サイズのリンクが設定されている。したがって、コンテナ1203とコンテナ1204のサイズが変更される際には、リンクサイズが縮まることでコンテナ1203とコンテナ1204のサイズを図15の例より大きくすることができる。この結果、挿入されるデータサイズに合わせた最適なサイズを達成できる、あるいはより挿入データサイズ(最適サイズ)に近いコンテナの枠を設定することが出来る。図16はこの結果を示しており、可変リンク1209はレイアウト計算の結果、可変リンク1603に示されるようなサイズ状態となる。なお、この場合コンテナ1203とコンテナ1204はそれぞれ最適なサイズ(データサイズに合った大きさ)になっている。   On the other hand, FIG. 16 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. 15 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. 16 shows this result. As a result of the layout calculation, the variable link 1209 is in a size state as indicated by the variable link 1603. In this case, each of the container 1203 and the container 1204 has an optimum size (a size suitable for the data size).

以上が本発明において前提となる自動レイアウトの方法である。以上説明したバリアブルプリントシステムにおいて、コンテンツデータに応じて動的にレイアウトが決定された後にそのレイアウトの微調整を容易に実施可能とする構成について、以下説明する。   The above is the automatic layout method which is the premise in the present invention. In the variable print system described above, a configuration that allows easy fine adjustment of the layout after the layout is dynamically determined according to the content data will be described below.

[レイアウト済みコンテンツの調整]
図17は、レイアウト編集アプリケーションプログラム121のレイアウト済みコンテンツ調整処理を説明するフローチャートである。以下、図17に示されるレイアウト済みコンテンツ調整処理を図18〜図21を参照して説明する。尚、コンテンツデータをドキュメントテンプレートに流し込み、[レイアウト計算方法(詳細)]で上述した動的レイアウトを行った結果の各コンテンツをレイアウト済みコンテンツという。また、ユーザ操作によって位置やサイズが変更されたレイアウト済みコンテンツを調整済みコンテンツという。
[Adjustment of layout contents]
FIG. 17 is a flowchart for explaining the layout-completed content adjustment processing of the layout editing application program 121. The layout-adjusted content adjustment process shown in FIG. 17 will be described below with reference to FIGS. It should be noted that each content obtained as a result of the dynamic layout described above in the [layout calculation method (details)] after pouring content data into a document template is referred to as a laid-out content. A layout-completed content whose position and size have been changed by a user operation is referred to as an adjusted content.

図18は、レイアウト編集アプリケーションプログラム121により提供されるドキュメントテンプレート編集画面である。尚、ドキュメントテンプレートは、図3、図4により上述したユーザインターフェースを用いて作成される。図18の例では、ドキュメントテンプレート1809において、可変コンテナであるイメージコンテナ1821とテキストコンテナ1822が存在し、固定リンク1823により関連付けられている。また、ドキュメントテンプレート1809において、テキストコンテナ1824,1825はそれぞれ可変コンテナ及び固定コンテナであり、固定リンク1826により関連付けられている。イメージコンテナ1821とテキストコンテナ1822,1824は可変オブジェクトである。また、固定リンク1823,1826や、固定コンテナであるテキストコンテナ1825は静的オブジェクトである。   FIG. 18 is a document template editing screen provided by the layout editing application program 121. The document template is created using the user interface described above with reference to FIGS. In the example of FIG. 18, an image container 1821 and a text container 1822 that are variable containers exist in the document template 1809 and are associated by a fixed link 1823. In the document template 1809, the text containers 1824 and 1825 are a variable container and a fixed container, respectively, and are associated by a fixed link 1826. The image container 1821 and the text containers 1822 and 1824 are variable objects. The fixed links 1823 and 1826 and the text container 1825 which is a fixed container are static objects.

図18で示したドキュメントテンプレート1809にバリアブルデータのコンテンツが流し込まれると[レイアウト計算方法(詳細)]で上述した動的レイアウトが行われる。図19は、そのような動的レイアウトが行われた結果の、レイアウト編集アプリケーションプログラム121によるプレビュー画面の例を示す図である。図19のプレビュー表示領域1909におけるコンテンツ1921及び1922は、対応するコンテンツデータが図18のイメージコンテナ1821及びテキストコンテナ1822に流し込まれ、動的レイアウトされた結果(レイアウト済みコンテンツ)である。同様に、コンテンツ1924及び1925は、対応するコンテンツデータが図18のテキストコンテナ1824及び1825に流し込まれ、動的レイアウトされた結果(レイアウト済みコンテンツ)である。313は、前述したマウスカーソル/ポインタ(以下、ポインタという)、1931は、コンテンツのハンドルである。   When the content of variable data is poured into the document template 1809 shown in FIG. 18, the above-described dynamic layout is performed by [layout calculation method (details)]. FIG. 19 is a diagram showing an example of a preview screen by the layout editing application program 121 as a result of such dynamic layout. The contents 1921 and 1922 in the preview display area 1909 in FIG. 19 are the results (layout contents) in which the corresponding content data is poured into the image container 1821 and the text container 1822 in FIG. Similarly, the contents 1924 and 1925 are the results (layout contents) in which the corresponding contents data is poured into the text containers 1824 and 1825 in FIG. 18 and dynamically laid out. Reference numeral 313 denotes a mouse cursor / pointer (hereinafter referred to as a pointer), and 1931 denotes a content handle.

図19のプレビュー画面において、ユーザがポインタ313を用いて所望のレイアウト済みコンテンツに対してサイズ変更や位置変更等の調整操作を行うと、図20のようなプレビュー画面となる。図20の例ではレイアウト済みコンテンツ1921に対してサイズ変更が行われた場合が示されている。コンテンツ2021は、レイアウト済みコンテンツ1921のサイズ変更後の調整済みコンテンツであり、2031は、調整済みコンテンツ2021のハンドルである。   In the preview screen of FIG. 19, when the user performs an adjustment operation such as a size change or a position change on a desired laid-out content using the pointer 313, a preview screen as shown in FIG. In the example of FIG. 20, a case where the size of the layout-completed content 1921 is changed is shown. The content 2021 is the adjusted content after the size of the layout-completed content 1921 is changed, and 2031 is a handle of the adjusted content 2021.

プレビュー画面上で図20に示したような調整操作が行われたことに応じて、レイアウト編集アプリケーション121は、図21に示すような調整済み静的レイアウトデータ編集ビュー(以下、調整済みレイアウトビュー)を生成し、表示する。図21の調整済みレイアウトビューは、図19に示したプレビュー画面での調整操作の結果に対応している。図21において、コンテンツ2121は、サイズ変更操作が行われた図20のプレビュー画面における調整済みコンテンツ2021の写像である。また、コンテンツ2122は、同じく図20のプレビュー画面からコピーされたレイアウト済みコンテンツ2022の写像である。以下、調整済みレイアウトビュー上のコンテンツ2121,2122を調整済みコンテンツという。尚、コンテンツ2121とコンテンツ2122を関連付けるリンク2123はホールドリンクであり、動的レイアウト時に両コンテンツの相対的な位置関係を維持する。尚、ホールドリンク2123の詳細は後述する。   In response to the adjustment operation as shown in FIG. 20 being performed on the preview screen, the layout editing application 121 displays the adjusted static layout data editing view as shown in FIG. 21 (hereinafter, the adjusted layout view). Is generated and displayed. The adjusted layout view in FIG. 21 corresponds to the result of the adjustment operation on the preview screen shown in FIG. In FIG. 21, a content 2121 is a mapping of the adjusted content 2021 on the preview screen of FIG. Similarly, the content 2122 is a mapping of the layout-completed content 2022 copied from the preview screen of FIG. Hereinafter, the contents 2121 and 2122 on the adjusted layout view are referred to as adjusted contents. The link 2123 that associates the content 2121 and the content 2122 is a hold link, and maintains the relative positional relationship between the two contents during dynamic layout. Details of the hold link 2123 will be described later.

次に、以上のような、レイアウト編集アプリケーション121の調整済みレイアウトビューの生成処理について図17のフローチャートを参照して説明する。図19のプレビュー画面において、ユーザがポインタ313を操作してレイアウト済みコンテンツ1921を選択すると、レイアウト編集アプリケーションプログラム121は、処理をステップS1701からステップS1702に進める。ステップS1702において、レイアウト編集アプリケーションプログラム121は、選択されたコンテンツを判別し、コンテンツの移動・サイズ変更のために、ハンドル1931を選択されているコンテンツ1921の4頂点と4辺の中点の計8点に表示する。   Next, the adjusted layout view generation process of the layout editing application 121 as described above will be described with reference to the flowchart of FIG. When the user operates the pointer 313 to select the laid out content 1921 on the preview screen in FIG. 19, the layout editing application program 121 advances the process from step S1701 to step S1702. In step S1702, the layout editing application program 121 discriminates the selected content, and the handle 1931 is selected in order to move and resize the content. Display at point.

次に、ユーザは選択されているコンテンツに対して、ユーザインターフェイス103を用いて調整の指示をする。レイアウト編集アプリケーション121は調整の指示を検出すると、処理をステップS1703からステップS1704へ進める。尚、レイアウト済みコンテンツの調整には、移動やサイズ調整といった変更があるが、本例では、サイズ調整の指示が検出されたものとして説明する。即ち、ステップS1703で検出された指示が、図20に示すような、レイアウト済みコンテンツ1921から、変更されたコンテンツ2021へのサイズ変更の指示であった場合を説明する。   Next, the user instructs adjustment of the selected content using the user interface 103. When the layout editing application 121 detects an adjustment instruction, the process advances from step S1703 to step S1704. The adjustment of the laid-out content includes changes such as movement and size adjustment. In this example, it is assumed that a size adjustment instruction has been detected. That is, a case will be described in which the instruction detected in step S1703 is a size change instruction from the laid-out content 1921 to the changed content 2021, as shown in FIG.

ステップS1704において、レイアウト編集アプリケーションプログラム121は、図21に示すような調整済みレイアウトビューを新たに生成する。尚、当該データレコードに対応する調整済みレイアウトビューがすでに生成されている場合は、対応する調整済みレイアウトビューを取得する。次に、ステップS1705において、レイアウト編集アプリケーションプログラム121は、ユーザによるサイズ調整が行われたコンテンツ2021のドキュメントテンプレート1809上での対応コンテナを検索する。本例では、対応するイメージコンテナ1821が検出される。更に、ステップS1706において、レイアウト編集アプリケーションプログラム121は、ドキュメントテンプレート1809上で検出した上記対応コンテナの全てのリンクを辿る。そして、該対応コンテナと直接的または間接的にリンクされる全てのコンテナを検出する。尚、間接的にリンクされるコンテナとは、直接的にリンクされたコンテナに更にリンクされている別のコンテナである。図18のイメージコンテナ1821に関しては、直接的または間接的にリンクされるコンテナは、固定リンク1823によってリンクされるテキストコンテナ1822である。   In step S1704, the layout editing application program 121 newly generates an adjusted layout view as shown in FIG. If an adjusted layout view corresponding to the data record has already been generated, the corresponding adjusted layout view is acquired. In step S 1705, the layout editing application program 121 searches for a corresponding container on the document template 1809 of the content 2021 whose size has been adjusted by the user. In this example, a corresponding image container 1821 is detected. In step S1706, the layout editing application program 121 traces all the links of the corresponding container detected on the document template 1809. Then, all containers linked directly or indirectly with the corresponding container are detected. The indirectly linked container is another container that is further linked to the directly linked container. With respect to the image container 1821 of FIG. 18, the container linked directly or indirectly is the text container 1822 linked by a fixed link 1823.

ステップS1707で、レイアウト編集アプリケーションプログラム121は、ドキュメントテンプレート1809上で検出した対応コンテナ及びこれに直接的又は間接的にリンクされる全てのコンテナを一つの論理的な動的コンテナグループとして編成する。ステップS1708において、レイアウト編集アプリケーションプログラム121は、該動的コンテナグループに対応する調整済みコンテンツ及びレイアウト済みコンテンツを、上記サイズ変更操作が行われたプレビューから検索する。本例では、調整済みコンテンツ2021とレイアウト済みコンテンツ2022が検索される。そして、ステップS1709において、当該動的コンテナグループに対応する調整済みコンテンツ及びレイアウト済みコンテンツのグループを1つコンテンツレイアウトとして調整済みレイアウトビューにコピーする。この結果、調整済みレイアウトビューには、図21に示した調整済みコンテンツ2121、2122が表示される。   In step S1707, the layout editing application program 121 organizes the corresponding containers detected on the document template 1809 and all the containers linked directly or indirectly thereto as one logical dynamic container group. In step S1708, the layout editing application program 121 searches for the adjusted content and the laid-out content corresponding to the dynamic container group from the preview in which the size changing operation has been performed. In this example, the adjusted content 2021 and the layout content 2022 are searched. In step S1709, one group of adjusted content and layout content corresponding to the dynamic container group is copied to the adjusted layout view as one content layout. As a result, adjusted contents 2121 and 2122 shown in FIG. 21 are displayed in the adjusted layout view.

尚、このコピーの際、ステップS1710において、レイアウト編集アプリケーションプログラム121は、調整済みレイアウトビュー内に同じ動的コンテナグループに対応する同一コンテンツのデータセットがないかを検索する。もしあれば、ステップS1711において、そのデータセットのコンテンツ表示を削除する。この処理により、最新の調整済みコンテンツを含む動的コンテナグループにより調整済みレイアウトビューが更新されることになる。   At the time of copying, in step S1710, the layout editing application program 121 searches the adjusted layout view for a data set of the same content corresponding to the same dynamic container group. If there is, in step S1711, the content display of the data set is deleted. With this process, the adjusted layout view is updated with the dynamic container group including the latest adjusted content.

更に、ステップS1712において、レイアウト編集アプリケーションプログラム121は、動的コンテナグループのドキュメントテンプレート1809上でのリンク関係を、後述するようなホールドリンクに全て置換する。そして、調整済みレイアウトビューにその関係をマップする。例えば、図21では、図18のドキュメントテンプレート1809上でイメージコンテナ1821とテキストコンテナ1822をリンクする固定リンク1823がホールドリンクに置換される。そして、図21の調整済みレイアウトビュー上で、レイアウト済みコンテンツ2121と2122をホールドするリンクとしてホールドリンク2123がマップされる。   Further, in step S1712, the layout editing application program 121 replaces all link relationships on the document template 1809 of the dynamic container group with hold links as will be described later. The relationship is then mapped to the adjusted layout view. For example, in FIG. 21, the fixed link 1823 that links the image container 1821 and the text container 1822 on the document template 1809 of FIG. 18 is replaced with a hold link. Then, on the adjusted layout view of FIG. 21, a hold link 2123 is mapped as a link for holding the layout-completed contents 2121 and 2122.

以上のようにして、ステップS1712により調整済みレイアウトビューが完成する。尚、このとき、コンテンツレイアウト(動的コンテナグループ)の構成(グループを構成する各調整済みコンテナの位置、サイズ)や各調整済みコンテナに流し込まれるコンテンツデータが対応付けて登録される。この登録データにより、以降の動的レイアウト処理等において、上記動的コンテナグループに対して上記コンテンツデータが流し込まれる際には、登録された調整済み静的レイアウトが用いられることになる。   As described above, the adjusted layout view is completed in step S1712. At this time, the configuration of the content layout (dynamic container group) (the position and size of each adjusted container constituting the group) and the content data flowing into each adjusted container are registered in association with each other. With this registered data, the registered adjusted static layout is used when the content data is poured into the dynamic container group in the subsequent dynamic layout processing or the like.

以上のレイアウト済みコンテンツ調整処理により、ユーザは、動的レイアウト処理によってレイアウト済みとなった所望のコンテンツに対して所望の調整を加えることができる。   With the above-described layout-adjusted content adjustment process, the user can make a desired adjustment to the desired content that has been laid out by the dynamic layout process.

尚、調整済みレイアウトビューは複数レコード分作成することができ、1つの調整済みレイアウトビューには、1レコードのデータに対する調整結果が保持される。また、本例では、1ページのデータに関する調整済みレイアウトビューを示したが、複数ページの調整済みレイアウトビューを保持できる。すなわち、調整済みレイアウトビューは、他の2つのビュー(テンプレート編集ビュー表示、プレビュー表示)と同じく、複数のページが保持可能となっている。同じデータレコードのプレビューで、異なるページのレイアウト済みコンテンツに調整が行われた場合は、調整されたコンテンツが存在するページに対応する調整済み静的レイアウトがページ毎に別々の調整済みレイアウトビューとして生成される。   The adjusted layout view can be created for a plurality of records, and one adjusted layout view holds the adjustment result for the data of one record. In this example, the adjusted layout view for one page of data is shown, but a plurality of pages of adjusted layout views can be held. In other words, the adjusted layout view can hold a plurality of pages, like the other two views (template editing view display and preview display). In the same data record preview, when adjustments are made to the laid-out content on different pages, an adjusted static layout corresponding to the page where the adjusted content exists is generated as a separate adjusted layout view for each page. Is done.

また、レイアウト編集アプリケーションプログラム121による調整済みレイアウトビュー用のデータのファイル保存は、その基本となるドキュメントテンプレートのデータと共に1つのファイルに行われるものとする。もちろん、そのドキュメントテンプレートのデータと対応づけられた別ファイルに調整済みレイアウトビュー用のデータのファイルの保存が行われてもよい。いずれにしろ、レイアウト編集アプリケーションプログラム121によるドキュメントテンプレートのデータ読み込み時に、調整済みレイアウトビュー用のデータもレイアウト編集アプリケーションプログラム121によって同時に読み込まれる。   Further, it is assumed that the file saving of the adjusted layout view data by the layout editing application program 121 is performed in one file together with the basic document template data. Of course, the adjusted layout view data file may be stored in a separate file associated with the document template data. In any case, at the time of reading the document template data by the layout editing application program 121, the adjusted layout view data is also simultaneously read by the layout editing application program 121.

以上のように、上記処理では、複数のデータ領域としてのコンテナがレイアウトされたドキュメントテンプレートに基づいて、複数のデータ領域の各々にコンテンツデータを流し込んで決定したレイアウトのビューが表示される。そして、図19に示すように、決定されたレイアウト中のレイアウト済みコンテンツ(データ領域)のサイズ又は位置の変更を指示することができる(S1702〜S1703)。変更が指示されたレイアウト済みコンテンツのコンテナとこれにリンクする全てのコンテナを図19のビューより抽出して1つのコンテンツレイアウトとする(S1704〜1708)。そして、該コンテンツレイアウトとこれに対応するコンテンツデータを関連付けて、調整済みレイアウトビューに記憶する(S1709〜S1712)。   As described above, in the above process, a layout view determined by pouring content data into each of a plurality of data areas is displayed based on a document template in which containers as a plurality of data areas are laid out. Then, as shown in FIG. 19, it is possible to instruct a change in the size or position of the laid-out content (data area) in the determined layout (S1702 to S1703). The container of the laid out content instructed to be changed and all the containers linked thereto are extracted from the view of FIG. 19 to form one content layout (S1704 to 1708). Then, the content layout and the corresponding content data are associated and stored in the adjusted layout view (S1709 to S1712).

以後のレイアウト計算処理では、調整済みレイアウトビューに記憶されたコンテンツレイアウトに含まれる全てのデータ領域に流し込まれるコンテンツデータが、該コンテンツレイアウトに対応するコンテンツデータと同一か判断する。そして、同一であれば、該コンテンツレイアウトを用いてレイアウトを決定する。こうして、レイアウト済みコンテンツの調整結果が対応するコンテンツデータのレイアウトを決定する際に利用されることになり、ユーザによるコンテンツデータ毎のレイアウト済みコンテンツの調整が容易となる。以下、このようなレイアウト処理について説明する。   In the subsequent layout calculation processing, it is determined whether the content data that is poured into all data areas included in the content layout stored in the adjusted layout view is the same as the content data corresponding to the content layout. If they are the same, the layout is determined using the content layout. In this way, the adjustment result of the laid-out content is used when determining the layout of the corresponding content data, and the user can easily adjust the laid-out content for each content data. Hereinafter, such a layout process will be described.

[調整済みコンテンツを持つドキュメントテンプレートのレイアウト]
図22は、レイアウト編集アプリケーションプログラム121による、調整済みコンテンツを持つドキュメントテンプレートのレイアウト処理を説明するフローチャートである。以下、図22を参照してレイアウト処理を説明する。
[Layout of document template with adjusted content]
FIG. 22 is a flowchart for explaining the layout processing of a document template having adjusted content by the layout editing application program 121. Hereinafter, the layout process will be described with reference to FIG.

レイアウト編集アプリケーションプログラム121は、ユーザによるポインタ313を用いたメニューバー302内のメニューアイテム304の選択操作等の指示を受け付ける。レイアウト編集アプリケーションプログラム121は、この指示に従って保存されている調整済みコンテンツを持つドキュメントテンプレートを新たに開いたり、または接続するデータベースの切り替えなどを行う。この際、図17で説明したレイアウト済みコンテンツ調整処理によって調整された調整済みコンテンツを持つドキュメントテンプレートが選択された場合には、以下の図22に示す処理でレイアウトを行い、プレビューを生成する。   The layout editing application program 121 accepts an instruction such as a selection operation of the menu item 304 in the menu bar 302 using the pointer 313 by the user. The layout editing application program 121 newly opens a document template having adjusted content stored in accordance with this instruction, or switches the connected database. At this time, when the document template having the adjusted content adjusted by the layout-adjusted content adjustment process described with reference to FIG. 17 is selected, the layout is performed by the process shown in FIG. 22 to generate a preview.

ステップS2201において、レイアウト編集アプリケーションプログラム121は、ドキュメントテンプレートのプレビューを生成する指示を受けると、ステップS2202に進む。プレビュー(すなわちレイアウト)を行う際、ステップS2202において、そのドキュメントテンプレートが調整済みコンテンツを持つドキュメントテンプレートであるか否かを判定する。調整済みコンテンツを持つドキュメントテンプレートである場合は、ステップS2203に処理が進む。調整済みコンテンツを持たない場合は、ステップS2213へ進み、当該ドキュメント全体について図8により上述したレイアウト処理(以下、通常のプレビュー生成処理という)を行う。   In step S2201, upon receiving an instruction to generate a document template preview, the layout editing application program 121 proceeds to step S2202. When previewing (ie, layout), it is determined in step S2202 whether or not the document template is a document template having adjusted content. If the document template has adjusted content, the process proceeds to step S2203. If there is no adjusted content, the process advances to step S2213 to perform the layout processing (hereinafter referred to as normal preview generation processing) described above with reference to FIG.

ステップS2203において、レイアウト計算の対象となっているデータレコードに関して、調整済みコンテンツに対応付けられた当該ドキュメントテンプレート上のコンテナに対して流し込まれるコンテンツデータをチェックする。ステップS2204では、当該データレコードにおいて、調整済みコンテンツに対応するコンテナに流し込まれるコンテンツデータが調整済みレイアウトビューに登録されているコンテンツデータと同一か否かを判定する。同一でなければ、ステップS2210へ進み、当該コンテナ及びこれに関連するコンテナに関して通常の自動レイアウト処理を行う。そして、ステップS2210において、これをプレビュー表示する。   In step S2203, content data to be flowed into the container on the document template associated with the adjusted content is checked with respect to the data record that is the target of layout calculation. In step S2204, it is determined whether or not the content data poured into the container corresponding to the adjusted content is the same as the content data registered in the adjusted layout view in the data record. If they are not the same, the process advances to step S2210 to perform normal automatic layout processing for the container and related containers. In step S2210, this is displayed as a preview.

一方、ステップS2204において同一であると判定された場合は、処理はステップS2204からステップS2205に進む。ステップS2205では、該調整済みコンテンツに対応するコンテナに直接的または間接的にリンクされる全てのコンテナをドキュメントテンプレート上で検出する。そして、ステップS2206において、上記対応するコンテナ及びこれに直接的または間接的にリンクされるコンテナのグループを一つの論理的な動的コンテナグループとして編成する。ステップS2207において、レイアウト編集アプリケーションプログラム121は、編成した動的コンテナグループに対応する調整済みコンテンツを、調整済みレイアウトビューから検索する。   On the other hand, if it is determined in step S2204 that they are the same, the process proceeds from step S2204 to step S2205. In step S2205, all containers linked directly or indirectly to the container corresponding to the adjusted content are detected on the document template. In step S2206, the corresponding container and the group of containers directly or indirectly linked to the container are organized as one logical dynamic container group. In step S2207, the layout editing application program 121 searches the adjusted layout view for adjusted content corresponding to the organized dynamic container group.

ステップS2208では、動的コンテナグループに関して、調整済みレイアウトビューの対応するコンテンツデータのセットと、当該データレコードの対応するコンテンツデータのセットを比較する。両者が同一である場合には、ステップS2209に進み、調整済みレイアウトビュー用に保存される該動的コンテナグループのレイアウト済みコンテンツデータを、レイアウト結果として用いる。そして、ステップS2211で、そのレイアウト結果をプレビュー表示する。一方、同一でない場合には、ステップS2210において、[レイアウト計算方法(詳細)]において上述した自動レイアウト(以下、通常の自動レイアウトという)を該動的コンテナグループに対して行う。そして、ステップS2211で、生成したレイアウトをプレビュー表示する。   In step S2208, for the dynamic container group, the corresponding content data set in the adjusted layout view is compared with the corresponding content data set in the data record. If both are the same, the process proceeds to step S2209, and the layout-completed content data of the dynamic container group saved for the adjusted layout view is used as the layout result. In step S2211, the layout result is displayed as a preview. On the other hand, if they are not the same, in step S2210, the above-described automatic layout (hereinafter referred to as normal automatic layout) in [layout calculation method (detail)] is performed on the dynamic container group. In step S2211, the generated layout is displayed as a preview.

以上の処理を、レイアウト編集アプリケーションプログラム121は、プレビューを生成し終えるまで、繰り返し行う(ステップS2212)。尚、図22のフローチャートでは図示を省略したが、調整済みコンテンツに関してレイアウト処理を終えた後、未処理のコンテナが残った場合は、それらについてステップS2210の自動レイアウト処理を実行してプレビュー表示する。例えば、図18のドキュメントテンプレートの場合、調整済みコンテンツに関してレイアウト処理を終えた後、コンテナ1824,1825が未処理のコンテナとして残る。従って、これらのコンテナに関しては、ステップS2210の自動レイアウト処理が適用され、プレビュー表示されるものとする。   The layout editing application program 121 repeats the above processing until it finishes generating the preview (step S2212). Although not shown in the flowchart of FIG. 22, if unprocessed containers remain after the layout processing for the adjusted content is completed, the automatic layout processing in step S <b> 2210 is performed on these to display a preview. For example, in the case of the document template of FIG. 18, after finishing the layout process for the adjusted content, the containers 1824 and 1825 remain as unprocessed containers. Accordingly, regarding these containers, the automatic layout processing in step S2210 is applied and preview display is performed.

[調整済みコンテンツを持つドキュメントテンプレートの編集]
次に、調整済みコンテンツを有するドキュメントテンプレートに対してコンテナの追加等の編集操作が行われた場合の処理を説明する。図23は、レイアウト編集アプリケーションプログラム121の調整済みコンテンツを持つドキュメントテンプレートが編集された場合の、プレビューおよび調整済みレイアウトビューの更新フローである。以下、図23の動作フローについて図18〜21、図24〜26を参照して、以下に説明する。
Edit document template with adjusted content
Next, processing when an editing operation such as addition of a container is performed on a document template having adjusted content will be described. FIG. 23 is an update flow of the preview and the adjusted layout view when the document template having the adjusted content of the layout editing application program 121 is edited. The operation flow of FIG. 23 will be described below with reference to FIGS. 18 to 21 and FIGS.

図24は、図18に示したドキュメントテンプレート編集画面において、ユーザ編集操作により、新たに動的コンテナが動的コンテナグループに追加された状態を示している。即ち、ユーザ編集操作により新たに追加されたテキストコンテナ2427が、ユーザにより新たに追加された固定リンク2428により、イメージコンテナ2421、テキストコンテナ2422で構成される動的コンテナグループの一要素として追加されている。   FIG. 24 shows a state in which a dynamic container is newly added to the dynamic container group by a user editing operation on the document template editing screen shown in FIG. That is, the text container 2427 newly added by the user editing operation is added as an element of the dynamic container group including the image container 2421 and the text container 2422 by the fixed link 2428 newly added by the user. Yes.

図18のドキュメントテンプレート編集画面において、ユーザは、ポインタ313を用いてテキストコンテナツールボタン404及びリンクツールボタン406を操作して、図24のようにテキストコンテナ2427及びリンク2428を配置することができる。このようなレイアウト編集操作により、動的なテキストコンテナ2427が、動的コンテナグループ(2421〜2422)に新たな動的要素として追加される。レイアウト編集アプリケーションは、動的コンテナグループに新たな動的要素が追加されたことを検知すると、ステップS2301からステップS2302に処理を進める。レイアウト編集アプリケーションプログラム121は、ドキュメントテンプレートの新たなプレビューを生成するため、変更部分に対して自動レイアウトを行う。   In the document template editing screen of FIG. 18, the user can place the text container 2427 and the link 2428 as shown in FIG. 24 by operating the text container tool button 404 and the link tool button 406 using the pointer 313. By such a layout editing operation, the dynamic text container 2427 is added as a new dynamic element to the dynamic container group (2421 to 2422). When the layout editing application detects that a new dynamic element has been added to the dynamic container group, the layout editing application proceeds from step S2301 to step S2302. The layout editing application program 121 performs automatic layout on the changed portion in order to generate a new preview of the document template.

ステップS2302において、レイアウト編集アプリケーションプログラム121は、そのドキュメントテンプレートが調整済みコンテンツ(例えば、図20のようにサイズ調整されたコンテンツ)を持つドキュメントテンプレートであるか否かを判定する。調整済みコンテンツを持つ場合、処理はステップS2302からステップS2303へ進む。ステップS2303では、当該調整された動的コンテナグループが、調整済みレイアウトビューに登録されている動的コンテナグループであるかどうかを判定する。調整済みレイアウトビューに登録されている動的コンテナグループの場合は、ステップS2303からステップS2304へ進む。   In step S2302, the layout editing application program 121 determines whether or not the document template is a document template having adjusted content (for example, content adjusted in size as shown in FIG. 20). If there is adjusted content, the process advances from step S2302 to step S2303. In step S2303, it is determined whether or not the adjusted dynamic container group is a dynamic container group registered in the adjusted layout view. In the case of a dynamic container group registered in the adjusted layout view, the process advances from step S2303 to step S2304.

ステップS2304では、[調整済みコンテンツを持つドキュメントテンプレートのレイアウト]において上述したステップS2208と同様の判定を行う。即ち、動的コンテナグループに流し込まれるデータレコードのコンテンツデータのセットが、調整済みレイアウトビューに保存されている該動的コンテナグループに対応するコンテンツデータのセットと同一であるか否かを判定する。同一である場合はステップS2304からステップS2305へ進む。ステップS2305では、調整済みレイアウトビューに保存されている該動的コンテナグループの調整済みコンテンツのデータ(各コンテナのサイズ、位置等)をレイアウトデータとして用いる。そして、ステップS2306において、調整済みコンテンツに対応するコンテナを、新たな動的要素として追加された動的コンテナ2427と固定リンク2428によりリンクされたサイズ固定のコンテナと見なす。即ち、新たな動的コンテナ2427に固定リンク2428でリンクされる動的コンテナ2421を、図20の調整済みコンテナ2021(図21の2121)に示したサイズの固定コンテナとみなす。ステップS2307では、コンテンツデータが流し込まれる動的コンテナ2427と共に、前述の図9、図15で示すような動的レイアウトを行う。   In step S2304, the same determination as in step S2208 described above is performed in [Layout of document template having adjusted content]. That is, it is determined whether or not the content data set of the data record to be flowed into the dynamic container group is the same as the content data set corresponding to the dynamic container group stored in the adjusted layout view. If they are the same, the process advances from step S2304 to step S2305. In step S2305, the adjusted content data (size, position, etc. of each container) of the dynamic container group stored in the adjusted layout view is used as layout data. In step S2306, the container corresponding to the adjusted content is regarded as a fixed-size container linked by a dynamic container 2427 added as a new dynamic element and a fixed link 2428. That is, the dynamic container 2421 linked to the new dynamic container 2427 by the fixed link 2428 is regarded as a fixed container having the size shown in the adjusted container 2021 in FIG. 20 (2121 in FIG. 21). In step S2307, the dynamic layout shown in FIGS. 9 and 15 is performed together with the dynamic container 2427 into which the content data is poured.

図25に該レイアウト結果のプレビュー画面を示す。コンテンツ2521、2527は、それぞれ図24のコンテナ2421、テキストコンテナ2427が動的レイアウトされた結果である。尚、ホールドリンクで関連付けられた調整済みコンテナ2521及び調整済みコンテナ2522は、相対位置関係及びサイズが維持されていることがわかる。このような相対的な位置関係の維持はホールドリンクの機能であり、この点については後述する。   FIG. 25 shows a preview screen of the layout result. The contents 2521 and 2527 are the results of the dynamic layout of the container 2421 and the text container 2427 in FIG. It can be seen that the adjusted container 2521 and the adjusted container 2522 associated by the hold link maintain the relative positional relationship and size. The maintenance of such a relative positional relationship is a function of the hold link, which will be described later.

ステップS2308において、レイアウト編集アプリケーションプログラム121は、該レイアウト結果を、調整済みレイアウトビューに保存されるテンプレート編集前の動的コンテナグループのレイアウト済みデータと入れ替え、保存する。この処理は、[レイアウト済みコンテンツの調整]で上述したステップS1709〜S1712の処理と同様である。即ち、調整済み静的レイアウトビューにおいて図21に示した旧コンテンツは削除され、図26に示す如く、新たな動的コンテナが加えられた新たな動的コンテナグループの静的レイアウトビューが登録される。また、動的コンテナグループの構成(グループを構成する各調整済みコンテナの位置、サイズ)や各調整済みコンテナに流し込まれるコンテンツデータ(新たな動的コンテナへのコンテンツデータが加わる)も更新される。   In step S2308, the layout editing application program 121 replaces and saves the layout result with the layout completed data of the dynamic container group before template editing stored in the adjusted layout view. This processing is the same as the processing in steps S1709 to S1712 described above in [Adjustment of Layout Contents]. That is, in the adjusted static layout view, the old content shown in FIG. 21 is deleted, and as shown in FIG. 26, a static layout view of a new dynamic container group to which a new dynamic container is added is registered. . In addition, the configuration of the dynamic container group (the position and size of each adjusted container constituting the group) and the content data (added content data to a new dynamic container) that is poured into each adjusted container are also updated.

図26は該レイアウト結果の調整済みレイアウトビュー画面を示す図である。図26において、調整済みコンテンツ2621、2622、2627は、それぞれ、図25のプレビュー画面からコピーされたレイアウト済みコンテンツ2521、2522、2527の写像である。また、2623、2628は、それぞれ、図24のドキュメントテンプレート編集画面におけるリンク2423、2428から変換されたホールドリンクである。   FIG. 26 is a diagram showing an adjusted layout view screen of the layout result. In FIG. 26, adjusted contents 2621, 2622, and 2627 are maps of the layout-completed contents 2521, 2522, and 2527 copied from the preview screen of FIG. 2623 and 2628 are hold links converted from the links 2423 and 2428 on the document template editing screen of FIG.

以上説明した処理では、コンテンツレイアウト(調整済みコンテンツを含む動的コンテナグループ)に属するコンテナ(データ領域)の少なくとも一つに関連付けられる新たなコンテナが追加されたか否かが判定される。新たなコンテナが追加され、コンテンツレイアウトを用いてレイアウトを決定する場合は、該コンテンツレイアウトに含まれるコンテナをサイズが固定されたコンテナとして、追加された新たなコンテナとの間で動的にレイアウトが計算される。こうして、新たなコンテンツが追加された場合にも、調整済みコンテンツを含む動的コンテナグループのレイアウト(コンテンツレイアウト)が維持されることになる。   In the processing described above, it is determined whether or not a new container associated with at least one of the containers (data areas) belonging to the content layout (dynamic container group including adjusted content) has been added. When a new container is added and the layout is determined using the content layout, the container included in the content layout is assumed to be a fixed-size container, and the layout is dynamically changed with the added new container. Calculated. Thus, even when new content is added, the layout (content layout) of the dynamic container group including the adjusted content is maintained.

[ホールドリンク時のレイアウト動作(動的コンテナ追加時)]
次に、図24に示されるコンテナ2622のレイアウト結果(図25のレイアウト済みコンテンツ2522)の詳細に関して以下に説明する。図26に示すように、コンテナ2422は、調整済みレイアウトビューで調整済みコンテナ2621とホールドリンク2623によりリンクされている。
[Layout operation during hold link (when adding dynamic container)]
Next, the details of the layout result (layout content 2522 in FIG. 25) of the container 2622 shown in FIG. 24 will be described. As shown in FIG. 26, the container 2422 is linked by the adjusted container 2621 and the hold link 2623 in the adjusted layout view.

次に、調整済みレイアウトビューに調整済みデータが保存される動的コンテナグループに、新たな動的コンテナが追加された際に行われる自動レイアウト実行時(プレビュー生成時)のホールドリンクに対する処理を説明する。図27は、そのようなホールドリンクに対する処理に関する、レイアウト編集アプリケーションプログラムのレイアウトフローを示している。   Next, the processing for the hold link at the time of automatic layout execution (during preview generation) performed when a new dynamic container is added to the dynamic container group in which adjusted data is stored in the adjusted layout view will be described. To do. FIG. 27 shows a layout flow of the layout editing application program regarding processing for such a hold link.

ステップS2701において、レイアウト編集アプリケーションプログラム121は、調整済みレイアウトビューに調整済みコンテンツが保存される動的コンテナグループに、新たな動的コンテナが追加された際の自動レイアウトか否かを判定する。YESの場合、処理はステップS2701からステップS2702に進む。ステップS2702では、新たに追加された動的コンテナが調整済みコンテンツを含む動的コンテナグループに追加されたものであるか否かを判定する。即ち、ドキュメントテンプレート上で追加された動的コンテナが、前述した調整済みレイアウトビューに保存される調整済みコンテンツに対応するドキュメントテンプレート上のコンテナとリンク関係を持つかどうかが判定される。YESの場合、ステップS2703へ進む。   In step S2701, the layout editing application program 121 determines whether or not the layout is an automatic layout when a new dynamic container is added to the dynamic container group in which the adjusted content is stored in the adjusted layout view. If YES, the process proceeds from step S2701 to step S2702. In step S2702, it is determined whether the newly added dynamic container has been added to the dynamic container group including the adjusted content. That is, it is determined whether the dynamic container added on the document template has a link relationship with the container on the document template corresponding to the adjusted content stored in the adjusted layout view described above. If YES, the process proceeds to step S2703.

ステップS2703では、該コンテナに対応する調整済みレイアウトビュー上の調整済みコンテンツが、他のレイアウト済みコンテンツデータとホールドリンクされているかどうかが判定される。YESの場合、ステップS2704へ進む。ステップS2704では、該コンテナが自動レイアウト計算により、X方向に分量T及び/又はY方向に分量Uで移動されることになったかどうかを判定する。移動する場合、ステップS2704からステップS2705へ処理が進む。   In step S2703, it is determined whether the adjusted content on the adjusted layout view corresponding to the container is hold-linked to other layout-completed content data. If YES, the process proceeds to step S2704. In step S2704, it is determined whether the container has been moved by the amount T in the X direction and / or the amount U in the Y direction by automatic layout calculation. When moving, the process proceeds from step S2704 to step S2705.

ステップS2705において、レイアウト編集アプリケーションプログラム121は、調整済みレイアウトビュー上でホールドリンクされる他の調整済みコンテンツのレイアウトを、上記移動に応じて移動する。即ち、ホールドリンクされる他の調整済みコンテンツのレイアウトを、X方向に分量T及び/又はY方向に分量Uだけ移動する。また、その移動された調整済みコンテンツが、更に別のホールドリンクされた調整済みコンテンツを持つ場合、その調整済みコンテンツも同じくX方向に分量T及び/又はY方向に分量Uだけ移動してレイアウトされる。これは、ステップS2705、S2706の処理である。こうして、起点となるホールドリンク関係から到達可能な全てのコンテンツが、X方向に分量T及び/又はY方向に分量Uだけ移動を完了するまで、ステップS2705〜S2706が繰り返される。レイアウト編集アプリケーションプログラム121は、起点となるホールドリンク関係から到達可能な全てのコンテンツがX方向に分量T及び/又はY方向に分量Uだけ移動を完了した際、ホールドリンクに関連するレイアウト処理を終了する。   In step S2705, the layout editing application program 121 moves the layout of other adjusted content that is hold-linked on the adjusted layout view in accordance with the above movement. That is, the layout of the other adjusted content to be hold-linked is moved by the amount T in the X direction and / or the amount U in the Y direction. Also, if the moved adjusted content has another hold-linked adjusted content, the adjusted content is also laid out by moving the amount T in the X direction and / or the amount U in the Y direction. The This is the process of steps S2705 and S2706. Thus, steps S2705 to S2706 are repeated until all the contents that can be reached from the hold link relationship as the starting point have been moved by the amount T in the X direction and / or the amount U in the Y direction. The layout editing application program 121 finishes the layout processing related to the hold link when all the contents that can be reached from the hold link relationship as the starting point have moved by the amount T in the X direction and / or the amount U in the Y direction. To do.

このホールドリンクに関連するレイアウト処理の結果、図21の2121にホールドリンクされているレイアウト済みコンテンツ2122が、図20及び図25に示されるように(Y方向に)移動されてレイアウトされる。即ち、図20のプレビュー表示で2022に示される元のレイアウト位置から、図25のプレビュー表示で2522に示されるレイアウト位置にレイアウト済みコンテンツ2122が移動されてレイアウトされる。こうして、動的グループ内の調整済みコンテンツの大きさや、それらの相対的位置関係が維持されることになる。   As a result of the layout processing related to the hold link, the laid-out content 2122 that is hold-linked to 2121 in FIG. 21 is moved and laid out (in the Y direction) as shown in FIGS. That is, the laid out content 2122 is moved from the original layout position shown in 2022 in the preview display of FIG. 20 to the layout position shown in 2522 in the preview display of FIG. In this way, the size of the adjusted content in the dynamic group and the relative positional relationship between them are maintained.

[調整済みコンテンツ編集時の動作]
次に、調整済みレイアウトビューでの調整済みコンテンツ編集時の動作を説明する。
[Operation when editing adjusted content]
Next, an operation at the time of editing adjusted content in the adjusted layout view will be described.

調整済みレイアウトビューでは、ユーザによる、保持される各レイアウト済みコンテンツに対する移動・サイズ変更などの調整編集操作が可能になっている。この調整編集操作は、図17、図19、図20で示したプレビュー画面でのレイアウト済みコンテンツの調整編集操作と同様である。   In the adjusted layout view, the user can perform an adjustment editing operation such as movement and size change for each held layout content. This adjustment / edit operation is the same as the adjustment / edit operation of the laid-out content on the preview screen shown in FIGS.

図28は、調整済みコンテンツの編集時の、レイアウト編集アプリケーションプログラム121の動作フローである。その動作フローを図26、図29〜30とともに、以下に説明する。   FIG. 28 is an operation flow of the layout editing application program 121 when editing adjusted content. The operation flow will be described below with reference to FIGS. 26 and 29 to 30.

図29は、図26の調整済みレイアウトビュー画面で、ユーザによるマウスカーソル313を用いたサイズ変更操作が行われた際のレイアウト編集アプリケーションプログラム121の調整済み静的レイアウトデータ編集画面である。2927は、図26の調整済みコンテンツ2627に対応する調整済みコンテンツであり、2928は、図26の2628に対応するホールドリンクである。   FIG. 29 is an adjusted static layout data editing screen of the layout editing application program 121 when the user performs a size changing operation using the mouse cursor 313 on the adjusted layout view screen of FIG. 2927 is the adjusted content corresponding to the adjusted content 2627 in FIG. 26, and 2928 is a hold link corresponding to 2628 in FIG.

図26の調整済みレイアウトビューにおいて、保持されるレイアウト済みコンテンツ2627が、ユーザにより、図29の2927のように、変更(サイズ変更)された場合を考える。調整済みコンテンツの位置や大きさ等がユーザにより変更されると、処理はステップS2801からステップS2802へ進む。ステップS2802において、レイアウト編集アプリケーションプログラム121は、変更された調整済みコンテンツが、ホールドリンクを有するか否かを判定する。ホールドリンクを有する場合、ステップS2802からステップS2803へ進む。   In the adjusted layout view of FIG. 26, consider a case where the layout-completed content 2627 to be held is changed (size changed) as shown by 2927 in FIG. When the position or size of the adjusted content is changed by the user, the process proceeds from step S2801 to step S2802. In step S2802, the layout editing application program 121 determines whether the changed adjusted content has a hold link. If there is a hold link, the process advances from step S2802 to step S2803.

ステップS2803において、そのホールドリンクの長さを、ユーザによって行われた調整済みコンテンツの移動・サイズ変更に合わせて変更する。例えば、図29の場合、図26の調整済みコンテンツ2627のサイズが2927のようにY方向に縮小されている。このような場合、レイアウト編集アプリケーションプログラム121は、図26で調整済みコンテンツ2627にホールドリンクされる調整済みコンテンツ2621の位置を変更しないよう、図26のホールドリンク2628を図29の2928のように、Y方向に伸張する。   In step S2803, the length of the hold link is changed in accordance with the movement / size change of the adjusted content performed by the user. For example, in the case of FIG. 29, the size of the adjusted content 2627 of FIG. 26 is reduced in the Y direction as 2927. In such a case, the layout editing application program 121 sets the hold link 2628 in FIG. 26 to 2928 in FIG. 29 so as not to change the position of the adjusted content 2621 to be linked to the adjusted content 2627 in FIG. Stretch in the Y direction.

更に、ステップS2804において、レイアウト編集アプリケーションプログラム121は、調整済みコンテンツに施された変更内容をプレビュー画面に同じく反映させるため、プレビュー表示を更新する。図30は、図29に示したレイアウト済みコンテンツに施された変更が反映されたプレビュー画面であり、ユーザにより編集された図29の調整済みコンテンツ2927は、図30の3027のようにプレビューされる。   Further, in step S2804, the layout editing application program 121 updates the preview display in order to reflect the changed content applied to the adjusted content on the preview screen. FIG. 30 is a preview screen in which changes made to the laid-out content shown in FIG. 29 are reflected. The adjusted content 2927 of FIG. 29 edited by the user is previewed as 3027 of FIG. .

また、動的レイアウト前にレイアウトの調整結果が適用されるため、動的レイアウトの特徴を生かしたレイアウト調整システムが提供可能になる。すなわち、ユーザによるレイアウト調整後に、ユーザによってドキュメントテンプレートが変更された場合であっても、そのドキュメントテンプレート変更に対応したレイアウト調整がレイアウト調整システムによって行われる。   In addition, since the layout adjustment result is applied before the dynamic layout, it is possible to provide a layout adjustment system that makes use of the characteristics of the dynamic layout. That is, even when the document template is changed by the user after the layout adjustment by the user, the layout adjustment corresponding to the document template change is performed by the layout adjustment system.

以上のように、本実施形態によれば、コンテンツレイアウトのビュー(調整済みレイアウトビュー)におけるユーザの指示に応じて、コンテンツレイアウトに含まれるデータ領域の位置又はサイズを変更することができる。この場合、コンテンツレイアウトのビューで位置又はサイズが変更されたコンテンツのみの位置又はサイズが変更され、それ以外のコンテナについてはそれぞれの位置及びサイズが維持されることになる。調整済みコンテンツのレイアウトについては編集操作の影響を受けにくくすることができる。   As described above, according to the present embodiment, the position or size of the data area included in the content layout can be changed in accordance with a user instruction in the content layout view (adjusted layout view). In this case, the position or size of only the content whose position or size has been changed in the view of the content layout is changed, and the positions and sizes of the other containers are maintained. The adjusted content layout can be made less susceptible to editing operations.

尚、上記において動的グループを構成するリンク(リンク1823等)は固定リンクとしたが、可変リンクでもよい。   In the above, the links (link 1823 etc.) constituting the dynamic group are fixed links, but may be variable links.

尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で示したフローチャートに対応したプログラムである。   In the present invention, the functions of the above-described embodiments are achieved by supplying a software program directly or remotely to a system or apparatus, and the computer of the system or apparatus reads and executes the supplied program code. Including the case. In this case, the supplied program is a program corresponding to the flowchart shown in the embodiment.

従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含む。   Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. That is, the present invention includes a computer program itself for realizing the functional processing of the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。   In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, or the like.

プログラムを供給するための記録媒体としては以下が挙げられる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などである。   Examples of the recording medium for supplying the program include the following. For example, floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD- R).

その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。   As another program supply method, a client computer browser is used to connect to a homepage on the Internet, and the computer program of the present invention is downloaded from the homepage to a recording medium such as a hard disk. In this case, the downloaded program may be a compressed file including an automatic installation function. It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.

また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。   Further, the program of the present invention may be encrypted, stored in a storage medium such as a CD-ROM, and distributed to users. In this case, a user who has cleared a predetermined condition is allowed to download key information for decryption from a homepage via the Internet, execute an encrypted program using the key information, and install the program on the computer. You can also.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。   In addition to the functions of the above-described embodiment being realized by the computer executing the read program, the embodiment of the embodiment is implemented in cooperation with an OS or the like running on the computer based on an instruction of the program. A function may be realized. In this case, the OS or the like performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.

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

実施形態によるバリアブルプリントシステムの構成を示す図である。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 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 for demonstrating the layout calculation process by embodiment. 実施形態のレイアウト計算時における、コンテナの集合について説明した図である。It is a figure explaining the set of containers at the time of layout calculation of an embodiment. 可変リンクによってコンテナを配置したときのユーザインターフェースにおける表示例を示す図である。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 flowchart explaining the process for setting a variable link by the user interface of embodiment. 実施形態によるリンクの設定ダイアログウインドウを示す図である。It is a figure which shows the setting dialog window of a link 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 flowchart which shows the layout completed content adjustment process of the layout edit application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのドキュメントテンプレート編集画面の例を示す図である。It is a figure which shows the example of the document template edit screen of the layout edit application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのプレビュー画面の例を示す図である。It is a figure which shows the example of the preview screen of the layout editing application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのユーザによるサイズ変更操作が行われた際のプレビュー画面の表示例を示す図である。It is a figure which shows the example of a display of a preview screen when size change operation by the user of the layout editing application program by embodiment is performed. 実施形態によるレイアウト編集アプリケーションプログラムの調整済みレイアウトビュー画面の例を示す図である。It is a figure which shows the example of the adjusted layout view screen of the layout edit application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムの調整コンテンツを持つドキュメントテンプレートのレイアウト処理を示すフローチャートである。It is a flowchart which shows the layout process of the document template with the adjustment content of the layout editing application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムの調整コンテンツを持つドキュメントテンプレート編集時の、プレビューおよび調整済みレイアウトビューの更新処理を示すフローチャートである。It is a flowchart which shows the update process of a preview and an adjusted layout view at the time of document template editing with the adjustment content of the layout editing application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのユーザ編集操作により新たに動的コンテナが動的コンテナグループに追加された際のドキュメントテンプレート編集画面の例を示す図である。It is a figure which shows the example of a document template edit screen when a dynamic container is newly added to the dynamic container group by user edit operation of the layout edit application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのユーザ編集操作により新たに動的コンテナが動的コンテナグループに追加された際のプレビュー画面の例を示す図である。It is a figure which shows the example of a preview screen when a dynamic container is newly added to the dynamic container group by user editing operation of the layout editing application program by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのユーザ編集操作により新たに動的コンテナが動的コンテナグループに追加された際の静的レイアウトデータ編集ビュー画面の例を示す図である。It is a figure which shows the example of a static layout data edit view screen when a dynamic container is newly added to the dynamic container group by the user edit operation of the layout edit application program by embodiment. 実施形態によるホールドリンクに対するレイアウト編集アプリケーションプログラムのレイアウト処理を示すフローチャートである。It is a flowchart which shows the layout process of the layout edit application program with respect to the hold link by embodiment. 実施形態による調整済み静的レイアウトデータ編集時のレイアウト編集アプリケーションプログラムの動作を示すフローを示すフローチャートである。It is a flowchart which shows the flow which shows operation | movement of the layout edit application program at the time of adjusted static layout data edit by embodiment. 実施形態によるレイアウト編集アプリケーションプログラムのユーザによる変更操作が行われた際の調整済み静的レイアウトデータ編集画面の例を示す図である。It is a figure which shows the example of the adjusted static layout data edit screen when the change operation by the user of the layout edit application program by embodiment is performed. 実施形態によるレイアウト編集アプリケーションプログラムの、調整済みレイアウトビュー画面でのユーザによる変更操作が反映されたプレビュー画面の例を示す図である。It is a figure which shows the example of the preview screen in which the change operation by the user in the adjusted layout view screen of the layout edit application program by embodiment was reflected.

Claims (9)

複数のデータ領域がレイアウトされたテンプレートに基づいて、該複数のデータ領域の各々にコンテンツデータを流し込んで動的にレイアウトを決定する決定工程と、
前記決定工程で決定されたレイアウト中のデータ領域のサイズ又は位置の変更指示を受け付ける指示工程と、
前記指示工程で変更が指示されたデータ領域と、当該データ領域にリンクする全てのデータ領域を前記決定されたレイアウトより抽出して1つのコンテンツレイアウトとし、該コンテンツレイアウトとこれに対応するコンテンツデータを関連付けて記憶手段に記憶する記憶工程とを備え、
前記決定工程では、前記記憶手段に記憶された前記コンテンツレイアウトに含まれる全てのデータ領域に流し込まれるコンテンツデータが、該コンテンツレイアウトに対応するコンテンツデータと同一の場合、該コンテンツレイアウトを用いてレイアウトを決定することを特徴とするレイアウト処理方法。
A determination step of dynamically determining a layout by flowing content data into each of the plurality of data areas based on a template in which a plurality of data areas are laid out;
An instruction step for receiving an instruction to change the size or position of the data area in the layout determined in the determination step;
The data area instructed to change in the instruction step and all data areas linked to the data area are extracted from the determined layout to form one content layout, and the content layout and the corresponding content data are A storage step of storing in association with the storage means,
In the determining step, when the content data that is poured into all data areas included in the content layout stored in the storage unit is the same as the content data corresponding to the content layout, the layout is used by using the content layout. A layout processing method characterized by determining.
前記コンテンツレイアウトのビューを生成して表示する表示工程を更に備えることを特徴とする請求項1に記載のレイアウト処理方法。   The layout processing method according to claim 1, further comprising a display step of generating and displaying a view of the content layout. 前記決定工程は、
前記コンテンツレイアウトに属するデータ領域の少なくとも一つに関連付けられる新たなデータ領域が追加されたか否かを判定する判定工程を有し、
前記新たなデータ領域が追加されたと判定され、かつ、前記コンテンツレイアウトを用いてレイアウトを決定する場合、該コンテンツレイアウトに含まれるデータ領域をサイズが固定されたデータ領域として前記新たなデータ領域との間で動的にレイアウトを決定することを特徴とする請求項1に記載のレイアウト処理方法。
The determination step includes
A determination step of determining whether a new data area associated with at least one of the data areas belonging to the content layout has been added;
When it is determined that the new data area has been added and the layout is determined using the content layout, the data area included in the content layout is defined as a data area having a fixed size. The layout processing method according to claim 1, wherein the layout is dynamically determined between the two.
前記コンテンツレイアウト内では、全てのデータ領域の相対位置とサイズが維持されることを特徴とする請求項3に記載のレイアウト処理方法。   4. The layout processing method according to claim 3, wherein the relative positions and sizes of all the data areas are maintained in the content layout. 前記決定工程による、前記コンテンツレイアウトに含まれる全データ領域と前記新たなデータ領域との動的なレイアウトの結果により、前記記憶手段に記憶されたコンテンツレイアウトを更新する更新工程を更に備えることを特徴とする請求項3又は4に記載のレイアウト処理方法。   The method further comprises an updating step of updating the content layout stored in the storage unit according to a result of a dynamic layout of all data areas included in the content layout and the new data area by the determining step. The layout processing method according to claim 3 or 4. 前記コンテンツレイアウトのビューにおけるユーザの指示に応じて、該コンテンツレイアウトに含まれるデータ領域の位置又はサイズを変更する変更工程と、
前記変更工程で位置又はサイズが変更されたデータ領域のみの位置又はサイズを変更し、前記変更されたデータ以外のデータ領域についてはそれぞれの位置及びサイズを維持させるコンテンツレイアウト編集工程とを更に備えることを特徴とする請求項1に記載のレイアウト処理方法。
A change step of changing a position or size of a data area included in the content layout in accordance with a user instruction in the view of the content layout;
A content layout editing step of changing the position or size of only the data area whose position or size has been changed in the changing process, and maintaining the position and size of each data area other than the changed data. The layout processing method according to claim 1.
複数のデータ領域がレイアウトされたテンプレートに基づいて、該複数のデータ領域の各々にコンテンツデータを流し込んで動的にレイアウトを決定する決定手段と、
前記決定手段で決定されたレイアウト中のデータ領域のサイズ又は位置の変更指示を受け付ける指示手段と、
前記指示手段で変更が指示されたデータ領域と、当該データ領域にリンクする全てのデータ領域を前記決定されたレイアウトより抽出して1つのコンテンツレイアウトとし、該コンテンツレイアウトとこれに対応するコンテンツデータを関連付けて記憶する記憶手段とを備え、
前記決定手段では、前記記憶手段に記憶された前記コンテンツレイアウトに含まれる全てのデータ領域に流し込まれるコンテンツデータが、該コンテンツレイアウトに対応するコンテンツデータと同一の場合、該コンテンツレイアウトを用いてレイアウトを決定することを特徴とするレイアウト処理装置。
Determining means for dynamically determining a layout by flowing content data into each of the plurality of data areas based on a template in which a plurality of data areas are laid out;
Instruction means for accepting an instruction to change the size or position of the data area in the layout determined by the determination means;
The data area instructed to change by the instruction means and all data areas linked to the data area are extracted from the determined layout to form one content layout, and the content layout and the corresponding content data are Storage means for storing in association,
In the determining means, when the content data poured into all data areas included in the content layout stored in the storage means is the same as the content data corresponding to the content layout, the layout is used by using the content layout. A layout processing apparatus characterized by determining.
請求項1乃至6のいずれか1項に記載のレイアウト処理方法をコンピュータに実行させるためのコンピュータプログラム。   A computer program for causing a computer to execute the layout processing method according to claim 1. 請求項1乃至6のいずれか1項に記載のレイアウト処理方法をコンピュータに実行させるためのコンピュータプログラムを格納したことを特徴とする記憶媒体。   A storage medium storing a computer program for causing a computer to execute the layout processing method according to any one of claims 1 to 6.
JP2006286880A 2006-10-20 2006-10-20 Layout processing method and device Withdrawn JP2008102869A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006286880A JP2008102869A (en) 2006-10-20 2006-10-20 Layout processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006286880A JP2008102869A (en) 2006-10-20 2006-10-20 Layout processing method and device

Publications (1)

Publication Number Publication Date
JP2008102869A true JP2008102869A (en) 2008-05-01

Family

ID=39437134

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006286880A Withdrawn JP2008102869A (en) 2006-10-20 2006-10-20 Layout processing method and device

Country Status (1)

Country Link
JP (1) JP2008102869A (en)

Similar Documents

Publication Publication Date Title
JP4241410B2 (en) Layout adjustment method and apparatus, and layout adjustment program
JP4144883B2 (en) Information processing apparatus, control method therefor, and program
JP4208858B2 (en) Layout processing method, layout processing apparatus, and layout processing program
JP4700940B2 (en) Information processing apparatus, control method therefor, and program
JP4250540B2 (en) Layout adjustment method and apparatus, and layout adjustment 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
JP4912139B2 (en) Information processing device
JP4522280B2 (en) Information processing apparatus, control method therefor, and program
US7831909B2 (en) Information processing apparatus, control method therefor, and program with display based on change amount of field areas
JP4298642B2 (en) Layout processing method, layout processing apparatus, and layout processing program
JP4510653B2 (en) Layout determining method, apparatus and program
JP2006277727A (en) Layout processing method, information processing apparatus, and computer program
US20080155469A1 (en) Apparatus and method for processing information, and program and storage medium
JP4262164B2 (en) Information processing apparatus, control method therefor, and program
JP2007048003A (en) Information processing device, its controlling method, and program
KR100881479B1 (en) Information processing method and apparatus thereof
JP2006221582A (en) Information processor, method of controlling the same, and program
JP4111519B2 (en) Layout processing method, information processing apparatus, and computer program
JP2005216181A (en) Document processing method, document processor, and document processing program
JP2007249431A (en) Information processor, its control method, and program
JP2008102869A (en) Layout processing method and device
JP2007122486A (en) Web document processing method, program, and storage medium
JP2006074225A (en) Method, device and program for adjusting layout

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100105