JP4510653B2 - レイアウト決定方法及び装置並びにプログラム - Google Patents

レイアウト決定方法及び装置並びにプログラム Download PDF

Info

Publication number
JP4510653B2
JP4510653B2 JP2005023934A JP2005023934A JP4510653B2 JP 4510653 B2 JP4510653 B2 JP 4510653B2 JP 2005023934 A JP2005023934 A JP 2005023934A JP 2005023934 A JP2005023934 A JP 2005023934A JP 4510653 B2 JP4510653 B2 JP 4510653B2
Authority
JP
Japan
Prior art keywords
layout
container
size
field
determining
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.)
Expired - Fee Related
Application number
JP2005023934A
Other languages
English (en)
Other versions
JP2006209663A5 (ja
JP2006209663A (ja
Inventor
宏康 宮沢
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 JP2005023934A priority Critical patent/JP4510653B2/ja
Priority to US11/342,406 priority patent/US8332743B2/en
Publication of JP2006209663A publication Critical patent/JP2006209663A/ja
Publication of JP2006209663A5 publication Critical patent/JP2006209663A5/ja
Application granted granted Critical
Publication of JP4510653B2 publication Critical patent/JP4510653B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/114Pagination

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Processing Or Creating Images (AREA)
  • Document Processing Apparatus (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、テキストやイメージで構成されるバリアブルデータドキュメントのレイアウトを決定するレイアウト決定方法及び装置並びにプログラムに関する。
近年、商品の多品種化で商品のライフサイクルが短くなっていること、インターネット利用の普及による消費者のカスタマイズサービス指向などの要因からCRM(Customer Relationship Management)、One−to−Oneマーケティングの必要性が注目されている。これらの手法は、顧客満足度を高め、顧客の開拓や囲い込みを目指すという目的に対して非常に効果的なものである。
One−to−Oneマーケティングはデータベース・マーケティングの一種で、顧客の年齢、性別、趣味、嗜好、購買履歴等の個人属性情報をデータベース化し、その内容を分析、顧客のニーズに合った提案を行うものであり、その代表的な具体的手法としてバリアブルプリントが挙げられる。特に、最近ではDTP(デスクトップパブリッシング)技術の進展とデジタル印刷装置の普及に伴って、文書を顧客毎にカスタマイズして出力するバリアブルプリントシステムが開発されている。このようなバリアブルプリントシステムでは、顧客毎に異なる量のコンテンツを最適にレイアウトされたカスタマイズ文書を作成することが求められる。例えば、特許文献1に示すような、フォーム作成アプリケーションにより、バリアブルプリント用のカスタマイズ文書のテンプレートを作成することが可能である。
一般に、バリアブルプリントシステムにおいてそのようなカスタマイズ文書を作成する際には、ドキュメント上にコンテナをレイアウトする。コンテナとはコンテンツ(描画内容)を描画するための部分領域であり、フィールド領域と呼ばれることもある。すなわち、ドキュメント上にこのようなコンテナをレイアウトし、データベースとレイアウトを関連付ける(データベースの各コンテンツと各コンテナとを関連付ける)といった作業により、カスタマイズ文書(ドキュメント)を作成する。本明細書ではこのようなドキュメントをバリアブルデータドキュメント(単にテンプレートと呼ぶこともある)という。
このようなバリアブルプリントシステムにおいて、レイアウトされた各コンテナには顧客によって異なるコンテンツを流し込むことが可能である。ここで、コンテンツに流し込まれるデータのサイズは可変であり、これに対してコンテナのサイズが固定であると次のような課題が生じる。例えば、コンテナのサイズよりも大きなサイズのテキストデータが流し込まれた場合にはすべてのテキストをそのコンテナ内に表示できなくなってしまう。或いは、コンテナのサイズよりも大きなサイズのイメージデータが流し込まれた場合には、そのイメージの一部が欠落してしまう。このような問題をオーバーフローと呼ぶ。
例えば、コンテンツがイメージデータの場合には、当該イメージを縮小してコンテナ内に描画することも考えられるが、イメージが極端に小さくなってしまうといった弊害が生じる可能性がある。また、固定サイズのコンテナに入りきらないテキストデータが挿入された場合に、テキストのフォントサイズを縮小し、当該コンテナ内にすべてのテキストを表示可能にすることも考えられる。しかし、フォントサイズを調節する場合はフォントサイズが小さくなりすぎて、ドキュメント全体のバランスが崩れたり、読みにくくなるという課題が生じる。
一方で、文書編集アプリケーションにおいて、テキスト及びイメージの配置領域を可変に設定して上述したような課題を解決する技術が考えられている。この技術は、テキストおよびイメージの配置領域を可変に設定することが可能である。この文書編集アプリケーションにおいて、配置領域のサイズを可変とし、キーボードから入力されるデータ量に応じて配置領域のサイズを大きくするよう変更できるものがある。また、テキストの場合において固定サイズ内に入りきらないデータが挿入された場合、テキストのフォントサイズを縮小し、コンテナ内に全てのテキストを表示する技術も存在する。
しかし、可変のコンテナのサイズが大きくなった場合に、当該コンテナが同一ドキュメント上の他のコンテナに重なってしまうという問題が発生する。また、フォントサイズを調節してコンテナ内にすべてのテキストを表示する場合において表示するテキストの量が多いと、フォントサイズが小さくなりすぎる問題が発生する。
このような課題を解決するための技術として、あるコンテナのサイズが大きくなった場合に、隣接したコンテナとの間隔を保つべく当該隣接するコンテナのサイズを小さくするレイアウトデザイン装置に関する技術が知られている(例えば、特許文献2参照。)。
また、セキュリティ上の理由等によって、一部のコンテナの内部を非表示にしたいような場合には、マスキング処理を行って当該コンテナを表示するといった技術が必要となる。このような技術として、複数の書類で構成される文書のマスキング処理を行う文書管理システムが知られている(例えば、特許文献3参照。)。
特開2000−222493号公報 特開平7−129658号公報(0049、図8) 特開2001−101169号公報(0053、図15)
しかしながら、上述した特許文献1では、コンテナのサイズが固定であり、オーバーフローや空き領域が発生してしまうという問題がある。また、特許文献2では、文書編集アプリケーションであり、現在編集中の配置領域を単純に拡大するというものであり、レイアウトが崩れてしまう可能性が高く、データベースから各レコード毎にデータフィールド中のデータを取り出して流し込む(マージする)バリアブルプリントには対応することができない。また、特許文献3では、最終出力対象として予め登録された指定文書に対してしかマスキング処理を施すことができず、バリアブルプリントのように、出力対象(レコード)毎にレイアウトが変更される出力物に対してはマスキング処理を行うことができなかった。すなわち、動的にレイアウトが変化するバリアブル印刷環境においては、レイアウトに合わせたマスキング処理を行うことが不可能であり、ユーザは不便を強いられていた。
本発明は、このような事情を考慮してなされたものであり、バリアブルデータ印刷において、コンテナ内に貼り付けられるコンテンツサイズに応じてレイアウト決定されたテンプレートに応じたマスキングを行って好適に当該コンテナを不可視にすることができるレイアウト決定方法及び装置並びにプログラムを提供することを目的とする。
上記課題を解決するために、本発明は、複数種類のデータフィールドからなるレコードから前記データフィールドのコンテンツデータを入力するためのフィールド領域を有するテンプレートと、前記データフィールドのコンテンツデータとに基づいて、前記フィールド領域に前記コンテンツデータが入力されたドキュメントを作成するレイアウト決定装置において実行されるレイアウト決定方法であって、
前記レイアウト決定装置のリンク設定手段が、前記テンプレート内の複数の前記フィールド領域間を関連付けるためのリンクを設定するリンク設定工程と
前記レイアウト決定装置のレイアウト決定手段が、前記フィールド領域に入力されるコンテンツデータのサイズに基づいて前記フィールド領域のサイズを最適化処理し、前フィールド領域の大きさを決定するレイアウト決定工程と、
前記レイアウト決定装置の判定手段が、前記レイアウト決定工程により大きさが決定された前記フィールド領域にマスキング設定がされているか否かを判定する判定工程と、
前記レイアウト決定装置の作成手段が、前記判定工程により前記フィールド領域にマスキング設定がされていると判定された場合に、前記レイアウト決定工程により大きさが決定された前記フィールド領域を覆うためのマスク領域を作成する作成工程と、
前記レイアウト決定装置のマスク手段が、前記判定工程によりマスキング設定がされていると判定された前記フィールド領域を前記作成工程により作成されたマスク領域を用いて覆うマスク工程とを有し、
前記レイアウト決定工程は、前記リンクにより関連付けられた複数のフィールド領域それぞれにおいて、各フィールド領域に入力されるコンテンツデータのサイズに相当する各フィールド領域のサイズと最適化処理後の各フィールド領域のサイズとの差異がそれぞれ均等になるように各フィールド領域の大きさと位置とを決定することを特徴とする。
本発明によれば、バリアブルデータ印刷において、コンテナ内に貼り付けられるコンテンツサイズに応じてレイアウト決定されたテンプレートに応じたマスキングを行って好適に当該コンテナを不可視にすることができる。
以下、図面を参照して、本発明の一実施形態に係るバリアブルプリントシステムについて詳細に説明する。
まず、本発明の一実施形態に係るバリアブルプリントシステムの実施例を説明する前に、本発明を適用可能なバリアブルプリントシステムのシステム構成及びアプリケーション構成について説明する。
<システム構成>
図1Aは、本発明の一実施形態に係るバリアブルデータドキュメントを印刷するバリアブルプリントシステム100のアプリケーション構成を示すブロック図である。また、図1Bは、図1に示すアプリケーション構成を有するバリアブルプリントシステムを実現するためのハードウェア構成図である。以下において説明する一連のプロセスは、主として、図1Bにおける汎用コンピュータモジュール101で実行される。図1Aで記述されるプロセスは、例えば、バリアブルプリントシステム100上で実施可能となるレイアウト編集アプリケーション121のように、ソフトウェアの全体、或いは一部分で実行される。
特に、レイアウト調整・編集や必然的に起こる印刷のステップは、コンピュータ101(本発明に係るレイアウト決定装置に相当する。)によって実行されるソフトウェアの指示によって実施される。ソフトウェアは、例えば、以下に記述されるような記憶装置を含むコンピュータ読み取り可能な記憶媒体内に格納される。そして、当該ソフトウェアは、コンピュータ読み取り可能な記憶媒体からコンピュータ101にロードされて実行される。そのようなソフトウェアや媒体に記録されたコンピュータプログラムを持つコンピュータ読み取り可能な記憶媒体は、コンピュータプログラム製品である。そのコンピュータでのコンピュータプログラム製品の使用は、望ましくもドキュメントのレイアウト編集やバリアブルデータ印刷に有利になる。
コンピュータ101には、キーボード132やマウス133のようなポインティングデバイス等の入力装置が接続され、ディスプレイ装置144や状況に応じてローカルなプリンタ145を含む出力装置を連結する。また、入力/出力(I/O)インタフェース138は、コンピュータ101をネットワーク107と接続し、当該バリアブルプリントシステム101を他のコンピュータ装置等と接続させることができる。ネットワーク107の典型例としては、ローカルエリアネットワーク(LAN)や、ワイドエリアネットワーク(WAN)が挙げられる。
コンピュータ101は、典型的に少なくとも1つのプロセッサユニット135、半導体のランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)から構成されるメモリユニット136、ビデオインタフェース137、INPUT/OUTPUT(I/O)インタフェース、キーボード132やマウス133のためのI/Oインタフェース143を備えている。
また、コンピュータ101は、ハードディスクドライブ(HDD)140やフロッピー(登録商標)ディスクドライブ(FDD)141を含む記憶装置139を具備している。尚、図1Bには示されていないが、磁気テープドライブもまた使用される可能性がある。さらに、図1Bにおいて、CD−ROMドライブ142は、不揮発性のデータソースとして提供される。
さらに、コンピュータ101は、GNU/LINUXやマイクロソフトウインドウズのようなオペレーションシステムや、典型的にはオペレーションシステムに従う形で、或いは関連のある技術で知られているもので形成されたコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス134を介して通信を行うコンピュータモジュール101の各コンポーネント135〜143を利用する。
例えば、図1A及び図1Bに示したコンピュータの例では、IBM互換PCやSUN社のSparc Station、或いはそれらを含んだコンピュータシステムが考えられる。
図1Aに示すレイアウト編集アプリケーションプログラム121は、典型的なハードディスクドライブ140に常駐し、プロセッサ135によって実行、読み込み、コントロールが行われる。レイアウト編集アプリケーションプログラム121の媒介記憶装置とネットワーク107からフェッチされるデータは、ハードディスクドライブ140に呼応して、半導体メモリ136を使用する。いくつかのインスタンスでは、レイアウト編集アプリケーションプログラム121がCD−ROMやフロッピー(登録商標)ディスク上でエンコードされ、対応するHDD142やFDD141を通じて読み込まれ、ユーザに提供される。
或いは、もう一つの方法として、レイアウト編集アプリケーションプログラム121は、ネットワーク107からユーザによって読み込まれるものであってもよい。さらに、ソフトウェアは、磁気テープ又はROM又は集積回路、光磁気ディスク又は無線又はコンピュータモジュール101とその他のデバイス間の赤外線通信、PCMCIAカードのようなコンピュータ読み取り可能なカード、そして電子メール通信やWEBサイト上の記録情報を持つインターネットやイントラネットを含む、他の適当な大きさのコンピュータ読み取り可能な記憶媒体からコンピュータ101内にロードされる可能性もある。尚、上述した各種媒体は、コンピュータ読み取り可能なメディアの模範であって、これ以外の他の記憶媒体を使用してもよい。
また、図1Aに示すように、レイアウト編集アプリケーション121は、バリアブルデータ印刷(VDP)を行うよう指示し、3つのソフトウェアコンポーネントを含んでいる。
まず、1つ目のコンポーネントは、レイアウトエンジン105であり、これは長方形の範囲内で与えられた制限やサイズによって矩形と線の位置を計算するためのソフトウェアコンポーネントである。次に、2つ目のコンポーネントは、ユーザインタフェース103であり、ユーザにドキュメントテンプレートを作成させ、ドキュメントテンプレート内でデータソースと関連付けるメカニズムを提供する。そして、3つ目のコンポーネントはUIモデルアナライザ104であり、ユーザインタフェース103が提供するコンテナや、アンカー、スライダー、リンク等のユーザインタフェース要素をレイアウトエンジン105が認識できる内部形式に変換する。すなわち、UIモデルアナライザ104により、レイアウトエンジン105に変更を加えることなく、ユーザインタフェース103を他の表示/入力形式のユーザインタフェースに容易に取替え可能になる。
ユーザインタフェース103、UIモデルアナライザ104、及びレイアウトエンジン105は、コミュニケーションチャネル123、124を介して通信する。ドキュメント生成のためのデータソースは、一般的にデータベースアプリケーションを動かしている他のコンピュータによって構成されたデータベースサーバ117上にある典型的なデータベース119である。
コンピュータ101は、ネットワーク107によってデータベースサーバ117と通信する。バリアブルデータ印刷を行うためのレイアウト編集アプリケーションプログラム121、コンピュータ101又は一般の他のコンピュータで構成されるファイルサーバ115に保存されるドキュメントテンプレートを生成する。
また、バリアブルデータ印刷を行うためのレイアウト編集アプリケーション121はデータとマージされたドキュメントテンプレートによって構成されたドキュメントを生成する。これらのドキュメントは、コンピュータ101のローカルファイルシステムに保存されるか、ファイルサーバ115に保存されるか、或いはプリンタ113に直接出力して印刷される。
プリントサーバ109は、直接ネットワーク107に接続していないプリンタに対してネットワーク機能を提供するコンピュータである。プリントサーバ109とプリンタ113は、典型的な通信チャネル111を介して接続される。
図2は、図1Aに示すバリアブルプリントシステムにエンジンサーバ227の新たに追加したバリアブルプリントシステムの構成を示すブロック図である。図2に示すエンジンサーバ227は、典型的なコンピュータである。ファイルサーバ115に保存されたドキュメントテンプレートは、印刷や他の目的がある場合に、レイアウトエンジン225によってドキュメントを生成するためにデータベース119に保存されたデータと結合することができる。そのようなオペレーションは、例えば、ユーザインタフェース103を介して要求されるか、特定のレコードのみ印刷するように要求される。
<アプリケーション構成図>
次に、本発明を適用可能なバリアブルプリントシステムのアプリケーション構成について説明する。
[メインウインドウ]
図3は、本発明の一実施形態に係るコンピュータ101のビデオディスプレイ144上に表示されるメニューバー、ツールバー、ワークエリア、フローティングパレットを含むレイアウト編集アプリケーション121のメインウインドウを示す図である。図3に示すように、ユーザインタフェース103は、操作時に、ビデオディスプレイ144に表示されるアプリケーションウインドウ301によって形成されたユーザインタフェースを含んでいる。
ウインドウ301は、非表示にすることや、スクリーン上の色々な場所に移動することが可能なメニューバー302とツールバー303、そしてマウス133の位置・動作によって場所を移動可能なワークエリア306とオプションのパレット311とカーソル/ポインタデバイス313から特徴付けされる。
メニューバー302は、周知の技術として知られているように、メニューオプションの階層の下に拡張される多くのメニューアイテム304を持つ。ツールバー303は、アプリケーションの特別なモードによって非表示にする、又は表示することが可能な多くのツールボタンとウィジット305を持つ。
また、アプリケーションウインドウ301において、オプションのルーラー308は、ワークエリア306内のポインタ、ページ、ライン、マージンガイド、コンテナ又はオブジェクトの位置を示すために使われる。
パレット311は、バリアブルデータライブラリのような追加機能にアクセスするために使われる。そのために、パレット311は、移動、リサイズ、クローズをするためのウインドウコントロール312を持つ。パレット311は、オプションで、ワークエリア306の前面に表示される、或いはオブジェクトの背面に隠される。パレット311は、アプリケーションウインドウ301の範囲内のみに表示されることを制限される、或いはアプリケーションウインドウ301の外側に部分的・全体を表示することを許される。
図4は、アプリケーションウインドウ301上に表示される、コンテナ間のリンク、及びアンカーやスライダーを有する典型的なコンテナの一面を示す図である。図4において、ツールバーエリア303は、少なくとも、次のユーザ選択可能な『ボタン』を備える。
(1)選択ツールボタン403
コンテナの辺を選択、移動、サイズ変更、リサイズそしてロック・ロック解除するために使われる。コンテナは、(複数)コンテナの周りに選択ボックスをドラッグする、或いは複数コンテナを選択する間にCTRLキーを押し続けることによって、複数選択を可能にする。
(2)テキストコンテナツールボタン404
スタティック或いはバリアブルテキストを持つコンテナを作成するために使われる。
(3)イメージコンテナツールボタン405
スタティック或いはバリアブルイメージを持つコンテナを作成するために使われる。
(4)リンクツールボタン406
コンテナ間の距離をコントロールするリンクを作成するために使われる。
これらのボタンは、周知の技術であるように、操作状況に合わせて変化するアイコンのツールチップとして実装される。
[ドキュメントテンプレート]
ワークエリア306は、ドキュメントテンプレートのデザインを表示・編集するために使われる。これは、ユーザに下準備で印刷されたドキュメントの概観をデザインする過程において、印刷されるドキュメントの概観をユーザに提示することを可能とする。ここで作成されるドキュメントテンプレートは、ユーザが希望するレイアウトであるが、本システムでは、コンテンツデータの量・サイズにより動的にレイアウトを決定するため、計算後のレイアウトは各レコードにおいて異なるものとなる。よって、ユーザは、このドキュメントテンプレートと動的レイアウトの計算後のプレビューとを見比べることにより、データソース(190)とマージされたドキュメントがバリアブルデータの量・サイズに基づいてどのように変化するかを理解することを可能にする。例えば、外部データソースがテンプレートにリンクされているような場合、現在のドキュメントのプレビューができるように、バリアブルテキストとイメージがそれらのコンテナに表示される。
ドキュメントの構造とバリアブルデータコンテナの描写をする視覚的な手がかりは、カーソルをコンテナ上に移動させたときや、コンテナを選択したときに常に表示される。
図3に示すように、ワークエリア306は、スクロールバー307とオプションのルーラー308とドキュメントテンプレート309に特徴付けられる。ドキュメントテンプレート309は、ページが複数あることを示すことができる。尚、与えられたドキュメントテンプレート309のページサイズは、周知の技術としてユーザによって指定される。それぞれのドキュメントでの実際のページ数は、バリアブルデータによって変化することもあり得る。また、1ページ内にフィットできなかった時、追加のページが自動的に作成される。それぞれのページ内の境界線は、ページ上の印刷可能なオブジェクトの最大幅を示す、任意のページマージン310で示される。
例えば、図4に示すように、1ページのドキュメントテンプレート309上に表示することが可能なオブジェクトとして、2個のコンテナ407、408と、任意に適用するアンカーアイコン409と、破線表示されている固定されていない辺410、実線表示された固定された辺411、414、2つのコンテナ間をリンクするリンク412と、スライダー413を持つ。
[コンテナ]
コンテナは、ドキュメントテンプレート内の固定或いは可変テキスト・イメージを持つスペースであり、他のコンテナやオブジェクトとレイアウトされる。コンテナは、マウス133動作によって、ポインタ313をユーザインタフェースで示されるように移動して、サイズ調整が行われ、再作成される。
より正確には、コンテナは、位置、最大/最小/デザイン時サイズ、マージされるコンテンツの最大/最小フォントサイズ、各辺が固定/可変であることなどを示すコンテナ属性を有している。コンテナ属性の定義の全部分について、以下に示す。
(1)コンテナは、固定或いは可変のコンテンツを持つ。可変コンテンツは、データソースから流し込まれたものであり、異なるドキュメントではサイズが異なるかもしれない、という意味でダイナミックである。可変コンテンツは、印刷されないような時間によって変更されたり、アニメーションするコンテンツを含むことは意図していない。一方、固定コンテンツは、コンテナを使って生成される全てのドキュメントに対して同じように表示される。しかしながら、固定コンテンツは、可変コンテナの動作によって、それぞれのドキュメントで表示される位置が異なる場合がある。また、コンテナにマージされるコンテンツは各レコードで異なるため、表示内容は当然異なる。
(2)コンテナは、コンテンツに適用される背景色、ボーダー、フォント・スタイル等のテキスト設定のような装飾機能を持っている。
(3)コンテナは、ドキュメントを生成したときにデータソースからのデータとマージされる。装飾機能は、どのような固定コンテンツでもそうであるように、典型的に印刷された出力物で可視である。可変コンテンツは、データソースから特定のデータの表示をもたらす。コンテナのこの表現は、例えば印刷されるか、スクリーン144上で表示されるか、その両方が可能である。
(4)コンテナは、ユーザインタフェース、例えばコンテナの編集や表示設定を行うためのインタラクティブなGUIを持つ。インタフェースの要素は、一般的にはスクリーン144上に表示されるが、ドキュメントとしては印刷されない。ユーザインタフェース103は、背景色やフォントのようなコンテナの装飾機能のいくつかを表示する。そして、ユーザインタフェース103は、コンテナの設定の編集や表示を許すための機能を追加する。ユーザインタフェース機能の特別な目的の例としては、ボーダー、或いは、コンテナのサイズや位置を対話的に変更、表示するための角アイコン、或いはコンテナがデータソースからデータをマージされたとき、コンテナの動作を示すための上塗りした数、線、アイコン、テキストがある。現在の公表の一つの概観は、新しい直接編集技術とコンテナのGUIコンポーネントに伴う表示方法の集まりである。
[コンテナ制約]
公知技術として、コンテナは、それぞれのドキュメントで表示されるコンテンツを、どのように結びつけるかを制御する制約がある。これらの制約(すなわち、固定・可変コンテンツをコンテナと結びつける)は、ユーザが一つのドキュメントテンプレートから、多数のドキュメントの生成を制御する主要な方法である。制約の例としては、「このコンテナのコンテンツの高さは、最大値4インチです。」というものがある。また、もう一つの制約としては、「コンテナのコンテンツの左端は、それぞれのドキュメントで同じ水平位置で表示しなければならない。」というものがある。以下では、GUIを使用して上述したような制約に基づいて、表示や編集等を行うための方法が示される。
イメージがページ上に定義された場所を保持しているように、固定コンテンツの配置を指定するコンテンツプレイスホルダーは、デジタル印刷技術でよく知られている。以下では、コンテナは位置とサイズを保持し、それらは公知の技術で知られている手法で編集され、表示してもよい。尚、本実施形態での説明は、バリアブルデータ印刷に特化したレイアウト調整方法を行う際の表示や編集に焦点を合わせる。
コンテナは、ユーザにドキュメントのコンテンツのサイズ・位置を指定することを可能にする。いくつかのドキュメントは、一つのドキュメントテンプレートから生成されるので、コンテナは多数の可能性と制約を指定・表示するためにユーザインタフェースを使わなければならない。
1つのコンテナの辺は、関連付けられたコンテンツがドキュメント内で表示される仮想の境界線を定義する。このように、本実施形態でコンテナの左辺について論じることは、関連付けられたコンテンツがどのようなドキュメント内でも表示可能である最も左の辺を論じることと同じである。同様に、コンテナの高さを論じることは、生成されたドキュメントで関連付けられたコンテンツの高さの制約を論じることとして理解される。本実施形態では、ユーザインタフェース103を参照してコンテナの辺或いは大きさを論じるところで、この区別を明らかにする。
以下の検討では、コンテンツの表示を制限するために使われるいくつかの値を定義している用語である「固定」は、全てのドキュメントで同じである。
例えば、コンテナの幅が固定の場合は、関連付けられたコンテンツに割り当てられる幅は、全てのドキュメントで同じになる。また、コンテナの高さが固定の場合は、関連付けられたコンテンツに割り当てられる高さは、全てのドキュメントで同じになる。さらに、距離の制約が固定の場合は、指定された距離は全てのドキュメントのための制約である。さらにまた、コンテナの左右辺が固定の場合は、辺の水平位置がページに関して全てのドキュメントで同じであることを意味する。但し、その場合、コンテナの高さや垂直方向の位置が変化するかもしれない。例えば、もしコンテナの左辺が固定の場合、関連付けられたコンテンツは、一つのドキュメントでページの上に近く表示され、他のドキュメントでページの下に近く表示される。しかし、これらの全てのケースで、コンテナの左辺は同じ水平位置にある。
また、コンテナの上下辺が固定の場合は、辺の垂直位置がページに関して全てのドキュメントで同じであることを意味している。但し、この場合、コンテナの幅や水平位置は変化するかもしれない。
ここで、コンテナの垂直軸とは、コンテナの右辺と左辺に平行であって、それらの中間に位置する仮想上の垂直線である。例えば、コンテナの垂直軸が固定の場合、コンテナの左辺と右辺の水平位置の平均は、すべてのドキュメントで同じである。但し、この制約において、コンテナの幅は変化するかもしれない。また、左右両方の辺が異なったドキュメントで、垂直軸に最も遠い、或いは最も近いかもしれない。しかし、軸は全てのドキュメントで同じ水平位置にある。尚、コンテナの高さと水平位置は、この制約によって影響されない。
同様に、水平軸が固定の場合は、コンテナの上辺及び下辺が垂直に位置されることを制約する。しかし、コンテナの高さは、この制約によって影響されない。
また、水平軸と垂直軸の両方が固定の場合は、コンテナの中心位置が固定されていることを意味する、しかし、コンテナの幅や高さは、この制約によって影響されない。
さらに、コンテナの角、コンテナの辺の中間位置、或いはコンテナの中心位置が固定の場合は、当該コンテナはすべてのドキュメントで同じ場所で、そしてコンテナに関連付けられた同じ場所で表示される。例えば、もしコンテナの左上角が固定なら、配置されたコンテナの左上位置が全てのドキュメントで同じになることを意味している。
コンテナの垂直辺、或いは垂直軸は、ページの左辺、右辺、左ページマージン、右ページマージン、或いは他の水平位置に関連付けされて固定される。同様に、コンテナの水平辺、或いは水平軸は、ページの上辺、下辺、マージン、或いは他の垂直位置に関連付けされて固定になる。用語「固定」の改良は、ページサイズが全てのドキュメントで同じ場合に、これらの可能性はドキュメント生成で相違はないため、ドキュメント間でページサイズが変わるときにのみ重要となる。
尚、「固定」の反対は、辺、軸、角、中間位置、或いはドキュメント制約がドキュメント間で変化するかもしれないことを意味している「可変」である。しかし、ドキュメントの特定な設定でそうする必要が無いかもしれない。例えば、変更による辺の実際の好ましい位置のような他の外部制約がある。しかし、もし外部制約が適用されない場合であれば、辺は固定されてないものとしてラベル付けされているので、辺の位置は変更できる。
[コンテナ表示・編集]
●新規コンテナの作成方法
コンテナは、テキストコンテナとイメージコンテナの2種類で記述される。テキストコンテナは、テキストデータと埋め込み用のイメージデータを持つことができる。一方、イメージコンテナは、イメージデータだけを持つことができる。
図4で参照されるように、新規テキストコンテナとイメージコンテナは、テキストコンテナツール404、或いはイメージコンテナツール405をマウス133でクリックし、テンプレート309に四角形をドラッグすることによって、ドキュメントテンプレート309上に作成される。
代わりにコンテナは、適切なツールであるテキストコンテナツール404とイメージコンテナツール405をアクティブにした後に、ドキュメントテンプレート309上でクリックすることによって単純に作成される。そして、デフォルトサイズのコンテナが挿入されるか、新規コンテナの寸法を入れるためのダイアログボックス、或いは他のプロンプトが提供される。いくつかのコンテナは、自動的に前もって定義されたか、計算されたスキーマによって、作成・配置される。また他の案が考えられるかも知れない。
●コンテナの表示方法
上述したワークエリア306における辺は、グラフィカルな表現を用いて描画できるようにすることが好ましい。この場合、いくつかの辺の状態は、いくつかの状況で表現を分け合うため、上述したグラフィック表示より少なくなるかもしれない。
図5は、本発明の一実施形態における典型的なコンテナルールを説明するための図である。すなわち、図5(A)〜(D)では、コンテナの模範的な辺ルールを例示している。
アプリケーション121は、辺の状態を表現するために、例えば、塗りつぶし線(実線)503、或いは点線(破線)504で辺を描き、アンカー(辺の近くに描画された506、507、509によって示されるような線、形状、アイコン)、ハンドル(移動、修正するために辺、形の近くに描画されたコントロール点)502、スライダー(辺の両サイドに描画された短い並行線)413、拡縮アイコン505、そして色を特徴として持っている。
図5(A)〜(D)で例示されるコンテナ表示方法のルールは、次の通りである。
1.それぞれの辺を固定するために、塗りつぶし線(実線)で描画する。
2.コンテナの幅が固定の場合は、左辺と右辺を塗りつぶし線で描画する。
3.コンテナの高さが固定の場合は、上辺と下辺を塗りつぶし線で描画する。
4.軸は描画しない。
5.まだ描画されていない全ての辺は、それぞれの辺の近くに拡縮アイコンが描画され、点線(破線)で描画する。
6.垂直辺或いは軸のそれぞれのペアで両者が固定の場合、その交差点にアンカーが描画される。
7.それぞれの固定辺において、辺のどこにもアンカーが描画されていない場合は、エッジの中央にスライダーを描画する。
8.垂直辺或いは軸のそれぞれのペアにおいて、アンカーやスライダーが描画されていなければ、交差点にハンドルが描画される。
上記ルール1、2、3で保証した線は、もしそれらが固定或いは制限されている場合は実線で描画される。また、ルール5で保証した可変の辺は、破線で描画される。ルール6、7、8で保証した固定された点はアンカーを表示し、いくつかの固定された辺はスライダーを表示し、他はハンドルを表示する。
尚、上記ルールにおいて、各辺は、ただ一度描画されるようにすることが必要である。その結果、ルールが描画されるべき辺に影響するような場合は、その後のルールは再度描画されるべき辺に対して影響することはなくなる。例えば、コンテナがとても小さく、アイコンがお互い重なったり、或いは他の表示機能を不明瞭にする場合は、アイコンは異なって描画されたり、或いは省略されて描画されるようにしてもよい。
可変の辺が描画される場所は、コンテナのコンテンツに依存する。すなわち、後述するように、ドキュメントテンプレートにコンテンツがマージされて、ユーザインタフェースで可視になることを意味する「動的な校正処理」が使われる。代わりの実行手段としては、すべてのドキュメントで平均化されるコンテナのコンテンツエリア、或いは可変の辺がユーザインタフェースで、どこにレイアウトされるべきか決定するほかの手段で使われることができる。
これらのコンテンツ表現は、コンテナの辺の状態を表示するグラフィカルな手段を提供する。その表現の解釈は以下のとおりである。
図4において、コンテナ407の右辺410に示すように、破線は、コンテナのコンテンツに依存して変化するドキュメント内の辺を意味する。また、塗りつぶし線(実線)は、制限された辺を意味する。例えば、辺414では、実線は固定された辺を示している。従って、コンテナ408は、全辺が固定されているため、コンテナの幅・高さが固定されていることを示す。
また、コンテナとともに表示されるアンカーは、辺或いは軸が交差した場所が固定されていることを意味する。従って、アンカー点は、すべてのドキュメントの水平、垂直位置で現れることとなる。当然、アンカーは固定される。図4におけるアイコン409は、交差する辺414が固定されていることを意味するアンカーアイコンの一例である。
さらに、コンテナとともに表示されるスライダーは、関係付けられた辺が固定されていることを意味する。尚、コンテナにおいて、当該スライダーは、辺に沿って、辺の中央、或いはその他の様々な位置に設定することができる。例えば、図4において、スライダー413は、コンテナ408のコンテンツがドキュメント内で特定のダイアグラムで表される位置の左側或いは右側に表示されてもよい。
尚、上述したこれらのアイコンや辺のいくつか或いは全ては、どのツール、どのコンテナを選択・ハイライト或いはアクティブにするかによって、描画されたりされなかったりする。一般的に、コンテナの辺・アイコンは、ドキュメントテンプレートのデザインの手助けであるため、印刷物には描画されない。
また、幅・高さの最小値・最大値の設定は、副次的なダイアログウインドウに表示される。
図5Aにおいて、コンテナ501は、幅・高さ両方が固定されていない。すなわち、コンテナ501では、固定された辺503は、塗りつぶし線(実線)で表現されているが、可変の辺504は、点線(破線)で表現される。さらに、拡縮アイコン505は、隣接する辺504が可変であることを示す、追加或いは代わりのインジケーターである。
また、図5Bにおいて、コンテナ501は、幅・高さ両方が可変である。すなわち、アンカーアイコン506は、交差している両方の辺503が固定されていることを、追加で或いは代わりに示しているが、辺504にはアンカーアイコンが設定されていない。
さらに、図5Cにおいて、コンテナ501は、コンテナの拡大或いは縮小が任意のアンカーアイコン507で示されるような中心点の周りを平等に広がるという状態にあって、幅・高さ両方が可変である。
さらにまた、図5Dにおいて、コンテナ501は、上辺508が固定されていることを除いて、幅・高さ両方が可変である。従って、上辺508の中心に位置付けられて示されるアンカーアイコン509は、固定されていることを示す。従って、コンテナ508では、上辺508の中央を貫通して仮想的に描画される中心軸(垂直軸)の周りを、左右の辺が拡大・縮小させることが可能である。
[リンク]
リンクは、コンテナとコンテナの関連を示すものである。ここで、関連とは、コンテナ間の距離を示しており、リンクによって関連付けられたコンテナ同士は、互いのレイアウト変更の影響を受けてレイアウトを計算する。例えば、図4における符号412で示されているものがリンクである。図4では、リンク412は、コンテナ407とコンテナ408とを関連づけている。尚、リンクの設定方法及びリンクで関連付けられたコンテナのレイアウト計算方法については、後述する。
[リンクの設定方法]
図6は、本発明の一実施形態に係るリンク設定方法を説明するためのフローチャートである。また、図7は、2つのコンテナを作成してリンクを設定する際のUI操作例を説明するための図である。以下では、図6及び図7を用いて、コンテナにリンクを設定する処理手順について説明する。
まず、リンクを設定するためには、リンクを設定するためのコンテナ(最低2つ)を作成する(ステップS601)。図7(A)は、ステップS601で作成された2つのコンテナの一例を示している。そこで、辺701と辺702は、前述した図4に示す辺407と辺408と同じ固定されている辺である。また、アンカー703とアンカー704は、図4におけるアンカー409と同じアンカーアイコンを示す。さらに、705はマウスポインタを示す。
次に、前述したリンクツール406を選択した状態にする(ステップS602)。そして、リンクを設定する片方のコンテナ(例えば、図7(A)におけるコンテナ701)をマウスでクリックして選択する(ステップS603)。次に、図7(B)で示すように、もう片方のコンテナ(例えば、図7(A)におけるコンテナ702)までマウスポインタ705を移動して選択する(ステップS604)。図7(B)における706は、図7(A)に示す状態でクリックしてマウスポインタ705で指定された位置と、移動した当該マウスポインタ705を結んだ直線を示しており、どの位置にリンクが設定されるのかをユーザに示すためのUIである。
ステップS604に示される処理が終わった後、設定した場所にリンクUI707が表示される(ステップS605)。そして、コンテナは、図7(C)に示す状態になる。また、リンクが設定されたことにより、コンテナのUIも自動的に変更される(ステップS606)。図7(C)において、辺708は、点線(破線)で示されている辺であり、前述した通り可変の辺を示している。図7(A)では固定辺であったコンテナの辺が図7(C)に示すように可変状態に変化したのは、リンク707を設定したことにより、コンテナの辺を可変にする必要があるためである。当該処理は、リンクを設定したにもかかわらず、全ての辺が固定という矛盾を引き起こすことを防ぐために、自動的に行われる処理である。
また、図7(C)において、拡縮アイコン709は図5に示す拡縮アイコン505と同じであり、リンクを設定したことにより、コンテナが変化できる方向をユーザに視覚的に示すためのアイコンである。図7(C)に示す例では、左のコンテナ701の右辺と右のコンテナ702の左辺とが可変に変化したが、これは一例であって、右のコンテナ702が、図4におけるスライダー413で示したようなスライダーを持つ設定に変化してもかまわない。
[レイアウト計算方法(全体フロー)]
図8は、本発明の一実施形態に係るレイアウト編集アプリケーション121におけるレイアウト計算処理の制御を説明するためのフローチャートである。この制御フローは、ドキュメントテンプレートに対して、データベース119から各レコードのコンテンツを流し込み(マージ)、各コンテナ属性と、各コンテンツの量・サイズに応じて、動的にレイアウト計算を行う手法を説明する図である。尚、このフローチャートは、レイアウト編集アプリケーション121のレイアウトエンジン105が、プロセッサ135及びメモリ136を用いて動作する制御となる。
まず、レイアウト編集アプリケーション121は、プレビューモードが選択されると本処理を開始する(ステップS801)。前述した図6の制御は、自動レイアウトシステムで、少なくとも2つのコンテナを作成して、それらのコンテナ間に関連付けを行うことでドキュメントテンプレートのレイアウトを作成するレイアウトモードにおける動作である。図8の制御は、図6で作成したレイアウトにレコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューするプレビューモードが実行されることにより開始される。そこで、ステップS801では、まずプレビューモードを選択し、次いで、実際のレコードを挿入してレイアウトを計算する。但し、プレビューモードは、表示上でのレイアウト計算であって、実際に印刷する場合においても、レコードを挿入してレイアウトを計算する。その際の計算方法も同じである。
そして、プレビューモードになった後、レイアウト編集アプリケーション121は、プレビューするレコードを選択して挿入する(ステップS802)。プレビューするレコードは、ユーザから特定のレコードが指定された場合はその指定されたレコードとなり、指定がない場合は、1レコード目から順次計算が行なわれる。ステップS802でレコードの挿入を行った後、レイアウト編集アプリケーション121は、そのレコードをレイアウトするための計算を行う(ステップS803)。尚、レイアウト計算の詳細については図9を用いて後述する。そして、レイアウト編集アプリケーション121は、ステップS803の処理で計算されたレイアウトを表示する(ステップS804)。さらに、他のレコードについてもプレビューを行うかどうかを判断する(ステップS805)。
その結果、他のレコードについてプレビューを行う必要がないと判断された場合(No)は、プレビューモードを終了する(ステップS807)。一方、他のレコードについてプレビューを行うと判断された場合(Yes)は、レイアウト編集アプリケーション121は、他のレコードを選択してレコードを移動し、再度レイアウト計算を行い、プレビューを行う(ステップS806)。尚、プレビューモードでなく印刷モードにおいては、印刷するレコード全てについて順に上述した手順と同様にレイアウトの計算を行う。従って、この場合は、図8に示すフローチャートにおけるステップS805及びステップS807は存在しない。全てのレコードについて印刷が終了した時点で終了する。
[レイアウト計算方法(詳細フロー)]
図9は、図8に示すレイアウト計算処理(ステップS803)の詳細を説明するためのフローチャートである。
まず、レイアウトを計算する対象となるコンテナの集合を求める(ステップS901)。以下で行われるレイアウト計算は、関連付けられたコンテナを一つの集合として計算される。
図11は、本発明の一実施形態に係るレイアウト計算時におけるコンテナの集合について説明するための図である。例えば、図11に示すように、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている場合を想定する。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDとがリンクによって関連付けされている。従って、コンテナA及びコンテナBが集合1、コンテナC及びコンテナDが集合2となる。尚、前述した通りであるが、1101はアンカー、1102は固定された辺、1103はコントローラー、1104は可変の辺の変化方向を示している矢印、1105は可変の辺、1106はリンク、そして1107はスライダーを示している。
次に、レイアウト編集アプリケーション121は、ステップS901で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(ステップS902)。そして、選択したコンテナの集合について、レイアウト編集アプリケーション121は、レイアウトの計算を行う。ここで、本実施形態では、レイアウトされるコンテナのサイズ(理想サイズ)が実際のコンテンツのサイズ(計算後のサイズ)との差が、できる限り少なくなるように、レイアウト計算としてレイアウトの最適化を行うものとする(ステップS903)。レイアウトの最適化は、動的にサイズを変化することが可能なように、関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。本実施例では、最小二乗法を用いることにする。例えば、コンテナにコンテンツを流し込んだ際に、位置やサイズに制約がない状態での計算値である理想サイズと、計算後のサイズ(Xとする)との差分をとり、各差分を二乗したものの和が最も少なくなる解を計算することにより、計算後のサイズXが求まる。
ステップS903でレイアウトの最適化を行った後、レイアウト編集アプリケーション121は、ルールに違反しているか否かを判定する(ステップS904)。その結果、ルールに違反していると判定された場合(No)は、ルールを違反しないように再度ステップS903に戻ってレイアウトの最適化の計算を行う。ここで、判定の対象となるルールとしては、レイアウト作成時にユーザによって設定される制限であって、各コンテナの最大/最小サイズと位置、リンクの長さ、用紙幅等が挙げられる。一方、ステップS904においてルールを違反しないようにレイアウトが計算されたと判定された場合(Yes)は、その集合のレイアウトは完成され、前述したステップS902〜ステップS904をページ上のすべての集合について施してページ全体のレイアウトを計算する(ステップS905)。
図10は、レイアウト計算処理を行う際のUI表示例を示す図である。図10(A)は、あるレコードが挿入されてレイアウトが決定されている状態を表している。図10(A)において、1001と1002はアンカー、1003と1004は固定された辺、1005は可変の辺、1006は可変の辺の変化方向を示している矢印、1008はリンクをそれぞれ示している。この状態において、レコードを変更し、異なったサイズのコンテンツを挿入する。
図10(B)は、図10(A)の状態に新しいコンテンツのサイズを重ねて示している。図10(B)において、1009はそれぞれのコンテナに挿入されるコンテンツのサイズを表している。そして、前述したようなレイアウト計算が行われる。図10(C)は、レイアウト計算された結果を示している。レイアウト計算後の各コンテナのサイズは、実際に挿入されるコンテンツのサイズと同等に差異があるように計算され、かつ、前述したルールを違反しないように計算される。図10(C)で示されるように、図10(B)に示される挿入されるコンテンツサイズ1009と計算後のコンテンツサイズ1010は、双方において同等な差異がある。
[可変リンクの設定]
図12は、本発明の一実施形態に係る可変リンクによるコンテナ配置の一例を示す図である。図12に示すコンテナにおいては、図4に示すコンテナの場合と同様に、アプリケーションウインドウ301とツールバー303があり、ドキュメントテンプレート309上にコンテナ1203とコンテナ1204が存在する。
コンテナ1203は、アンカーアイコン1201に固定された辺1205、1212、及び可変の辺1207から成り立つ。一方、コンテナ1204は、アンカーアイコン1202に固定された辺1206、1213、及び可変の辺1208から成り立つ。コンテナ1203とコンテナ1204の間には可変サイズのリンク1209があり、それぞれのコンテナを結んでいる。ここで、コンテナ1203とコンテナ1204の間にはリンクが設定されているので、コンテナ1203の右辺1207とコンテナ1204の左辺1208は破線で表現されている。このため、コンテナ1203にインジケーター1210が表示され、コンテナ1204にインジケーター1211が表示される。これらは、辺1207と辺1208が可変であることを示している。
また、図14は、図12に示すリンク1209の情報が設定されているダイアログウインドウ1401を示す図である。図14に示すダイアログは、典型的に、タイトルバー1402、ツールボタン1403、ダイアログウインドウの開閉を行うボタン1404、各種の情報をセットするエリア1409で構成されている。このダイアログウインドウ1401では、リンクタイプが可変又は固定のものを選択するチェックボックス1407、1406の選択や、可変の場合には、リンクの長さの最大値1410、最小値1412、現在値1411が設定できる。
図13は、本発明の一実施形態において固定サイズのリンク状態から可変サイズのリンク状態に操作遷移する処理を説明するためのフローチャートである。また、図15は、本発明の一実施形態における固定リンクによるレイアウト結果を示す図である。以下では、前述したリンク設定方法を用いて、図15に示すコンテナ1501とコンテナ1502間に張られている固定サイズのリンク1503の状態から可変サイズのリンク1209を示している図12の状態までの操作遷移について説明する。
マウスにより図15においてリンク1503をクリックし、当該固定リンクを選択する(ステップS1301)。次いで、マウスの右クリック或いはキーボードの特定のキーにより、選択したリンク1503のプロパティダイアログウインドウ1401を表示する(ステップS1302)。この状態では。リンクサイズは可変ではなく固定であるため、図14におけるFixed Length1406がLink Type1405において選択されている。
次いで、リンク1503を固定サイズから可変サイズに変更するために、Link Type1405においてリンクサイズを可変に設定するFlexible Length1407を選択する(ステップS1303)。これにより、Link Distance1408内に配置されているMax.Distance1412、Min.Distance1410、Distance1411が有効化され、数値の設定が可能となる。
そこで、リンクの可変サイズを設定するために、そのリンクの長さの最大値をMax.Distance1412、最小値をMin.Distance1410、現在の値をDistance1411に設定する(ステップS1304)。一般的なダイアログウインドウ開閉ボタン1404によって設定を適用すると、図12におけるリンク1209のような可変の状態にリンクのUI表示が変更する(ステップS1305)。そして、このダイアログウインドウ1401の設定情報が、メモリに格納される。
例えば、図12に示すコンテナ1203とコンテナ1204に対して、それぞれ違ったサイズのデータが挿入された場合、それぞれのコンテナは、データの大きさに基づいて最適のサイズに変化する。例えば、コンテナ1203は、挿入されたイメージサイズになる枠1504(最適コンテナサイズ)に近づこうと右方向へ大きく拡大する。同様に、コンテナ1204は、挿入されたイメージサイズになる枠1505(最適コンテナサイズ)に近づこうと左方向へやや大きくサイズを変更しようとする。
ここで、コンテナ1203とコンテナ1204の間には固定サイズのリンクが設定されていると仮定した場合、コンテナ1203とコンテナ1204は、それぞれアンカー1201とアンカー1202によって左辺1212と右辺1213が移動できないため、変更しようとするサイズがリンクサイズを上回ってしまうことになってしまう。この場合、リンクサイズは固定されているので、レイアウト計算時に優先的に計算され、コンテナ1203とコンテナ1204のサイズが変更されることになる。
その結果、コンテナ1203とコンテナ1204は、挿入されたデータに合わせた最適なサイズを確保することができず、最終的に図15に示すコンテナ1501とコンテナ1502のように、最適なサイズ(枠1504、枠1505で表現されるコンテナサイズ)よりも小さくなってしまう。すなわち、リンク1503のサイズは固定であるため、コンテナ1501とコンテナ1502は最適サイズを達成していない。
図16は、本発明の一実施形態における可変リンクによるレイアウト結果を示す図である。すなわち、図16では、図15に示すリンク1503を可変サイズにした場合を示している。上述した例において、コンテナ1203とコンテナ1204の間には図12に示す通り可変サイズのリンク1209が設定されているとする。この場合、コンテナ1203とコンテナ1204のサイズが変更される際に、リンク1209のリンクサイズが縮まることで、コンテナ1203とコンテナ1204のサイズが上述したように大きくなる(最適化する)ことができ、挿入されるデータサイズに合わせた最適なサイズを達成、或いはより挿入データサイズ(最適サイズ)に近づけてコンテナの枠を計算することができる。
図16のコンテナ1601とコンテナ1602が最適化後のコンテナである。また、図12に示す可変リンク1209は、レイアウト計算の結果縮小し、可変リンク1603で示される状態となる。また、コンテナ1601とコンテナ1602は、それぞれ最適なサイズ(データサイズに合った大きさ)になっている。
以上が本発明の一実施形態に係るレイアウト装置におけるレイアウト計算処理の一例である。すなわち、上記構成を有することによって、印刷媒体上に形成されるページのレイアウトを決定するレイアウト調整を行うことができる。具体的には、上述したように、データが流し込まれる複数の部分領域(フィールド領域とも呼ぶ。)がページ内にレイアウトされた基本レイアウトを持ち、当該複数の部分領域間にはリンクが設定されて、互いに連動しつつそれぞれの部分領域のサイズを可変とするテンプレートデータを管理し、当該部分領域に流し込まれるデータの大きさに基づいて、それぞれの部分領域に流し込まれるデータを描画するために適した部分領域のサイズをそれぞれ算出し、算出された各部分領域のサイズと基本レイアウトで複数の部分領域に設定されているリンクの関係とに基づいて、ページ内の複数の部分領域のサイズと位置を表すレイアウトを調整する。
そして、本実施形態では、後述するように、上述したようなレイアウト調整を行った後に、さらにドキュメントが流し込まれたコンテナに対するマスキングの設定機能を有している。
[コンテナに対するマスキングの設定]
上述したようなコンテナに対するマスキングの設定には、以下の特徴がある。すなわち、
●ドキュメントテンプレート内の各コンテナは、マスキングの設定をインタラクティブなGUIによって行うことが可能である。
●コンテナに対するマスキング設定は、マスキングする、又はマスキングしないという選択によって行うことが可能である。
●レイアウト装置が、公知の技術を用いた一般的なユーザ認証機能を持っている場合、コンテナに対するマスキング設定は、マスキングされないユーザを選択することによって行うことが可能である。
以下、図面を参照して、コンテナに対するマスキングの設定方法を説明する。
図19Aは、コンテナに対するマスキング情報がセットされているダイアログウインドウ1901(マスク属性設定画面)の一例を示す図である。図19に示すように、このダイアログは、タイトルバー1902、ツールボタン1903、ダイアログウインドウの開閉を行うボタン1904、マスキングの情報をセットするエリア1905を備えている。そして、ダイアログウインドウ1901を用いて、マスキングする(Enabled1907)或いはマスキングしない(Disabled1906)の設定ができる。
図17は、本発明の一実施形態に係るコンテナに対するマスキング設定を行う操作遷移を説明するためのフローチャートである。すなわち、図17に示すフローチャートでは、前述のコンテナに対するマスキング設定方法を踏まえて、例えば図12に示すコンテナ1204に対してマスキングする設定を行い、図18で表されるようなマスキング設定済み表示までの操作遷移を表している。
図18は、本発明の一実施形態に係るマスキング設定が行われたコンテナの表示UI例を示す図である。具体的には、図18は、図5(A)に示されるコンテナ501について、その矩形内領域をグレーアウトさせた例であり、図5(B)〜図5(D)までの他の3通りのコンテナも同様に各矩形内領域をグレーアウトさせて、マスキング設定済みであることをユーザに通知する。
ユーザはマウス133等を用いて図12に示すコンテナ1204をクリックして選択することで、レイアウト編集アプリケーション121は、選択されたコンテナを認識する(ステップS1701)。これにより、レイアウト装置は、マウス133の右クリック或いはキーボード132の特定のキーにより選択されたコンテナ1204のマスクプロパティダイアログウインドウ1901(マスク属性設定画面)を表示部144に表示する(ステップS1702)。ここで、この状態では「マスキングする」になっていないため、図19Aにおいて、MaskConfiguration1905では、Disabled1906が選択されている。
そして、「マスキングしない」設定から「マスキングする」設定に変更するために、レイアウト編集アプリケーション121は、MaskConfiguration1905において、図19Aに示すように「マスキングする」に設定させるEnabled1907の選択を受け付ける(ステップS1703)。一般的なダイアログウインドウ開閉ボタン1904によってその設定を適用すると、図18におけるコンテナ1801のような状態にコンテナ1204のUI表示が変更される(ステップS1704)。尚、このダイアログウインドウ1901の設定情報はメモリに格納される。
また、図19Bは、公知技術を用いた一般的なユーザ認証機能を備えたレイアウト装置が表示するダイアログウインドウ1910(マスク閲覧権限設定画面)の一例を示す図である。このダイアログは、タイトルバー1902、ツールボタン1903、ダイアログウインドウの開閉を行うボタン1904、マスキングの情報をセットするエリア1911で構成されている。図19Bに示す例では、コンテナに対するマスキング設定を、System Administrator1912、Manager1913、Reader1914、All1915で表されるチェックボックスで選択することが可能であり、これによってマスキングできないユーザも特定される。
ここで、前述したように本実施形態では、「マスキングしない」が選択されてになっているため、Authority to peruse1911では、図19Bに示すように、All1915が選択されている。「マスキングしない」設定から「ユーザがManager以下をマスキングする」設定に変更するために、レイアウト編集アプリケーション121は、Authority to peruse1911において「マスキングしない」ユーザを設定するManager1913の選択を受け付ける(ステップS1703)。一般的なダイアログウインドウ開閉ボタン1904によって設定を適用すると、コンテナ1204は、図18のコンテナ1801のような状態にコンテナのUI表示が変更される(ステップS1704)。尚、このダイアログウインドウ1910の設定情報は、メモリに格納される。
[コンテナに対するマスキング有効時のレイアウト方法(全体フロー)]
図20は、本発明の一実施形態に係るコンテナに対するマスキング設定有効時のレイアウト編集アプリケーション121におけるレイアウト方法の制御処理を説明するためのフローチャートである。この制御フローは、ドキュメントテンプレートに対して、データベース119から各レコードのコンテンツを流し込み(マージ)、各コンテナ属性と、各コンテンツの量・サイズに応じて、動的にレイアウト計算を行う手法を説明する図である。尚、このフローチャートは、レイアウト編集アプリケーション121のレイアウトエンジン105が、プロセッサ135及びメモリ136を用いて動作する制御となる。
まず、レイアウト編集アプリケーション121は、プレビューモードの選択を受け付ける(ステップS2001)。前述した自動レイアウトシステムでは、コンテナを作成して、そのコンテナ間に関連付けを行い、レイアウトを作成するレイアウトモードと、作成したレイアウトにレコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューするプレビューモードに分けられる。このプレビューモードにおいて、実際のレコードが挿入され、レイアウトを計算する。但し、プレビューモードは、表示上でのレイアウト計算である。実際に印刷する場合においても、レコードを挿入してレイアウトを計算する。その際の計算方法も同じである。
プレビューモードになった後、レイアウト編集アプリケーション121は、プレビューするレコードを選択して挿入する(ステップS2002)。プレビューするレコードは、ユーザから特定のレコードが指定された場合はその指定されたレコードとなり、指定がない場合は、1レコード目から順次計算が行なわれる。そして、レコードの挿入を行った後、レイアウト編集アプリケーション121は、そのレコードをレイアウト及びマスキングするために計算する(ステップS2003)。尚、マスキング付きのレイアウト計算の詳細については図21で後述する。さらに、レイアウト編集アプリケーション121は、ステップS2003で計算されたレイアウトをプレビュー表示する(ステップS2004)。次いで、他のレコードについてもプレビューを行うかどうかを判断する(ステップS2005)。
その結果、他のレコードについてプレビューを行う必要がないと判断した場合(No)は、プレビューモードを終了する(ステップS2007)。一方、他のレコードについてプレビューを行うと判断した場合(Yes)は、レイアウト編集アプリケーション121は、他のレコードを選択して(ステップS2006)、さらにステップS2003に戻って再度レイアウト及びマスキングするための計算を行い、プレビューを行う(ステップS2004)。
一方、プレビューモードでなく印刷時においては、印刷するレコード全てについて順にレイアウト及びマスキングの計算を行う。従って、ステップS2005、S2007の処理は存在しない。また、全てのレコードについて印刷が終了した時点で終了する。
[コンテナに対するマスキング有効時のレイアウト方法(詳細フロー)]
図21は、図20のフローチャートにおけるコンテナに対するマスキング設定が有効時のレイアウト計算処理(ステップS2003)の詳細を説明するためのフローチャートである。
まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を求める(ステップS2101)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。例えば、図11を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。従って、コンテナAとコンテナBが集合1、コンテナCとコンテナDが集合2となる。尚、前述した通りであるが、1101はアンカー、1102は固定された辺、1103はコントローラー、1104は可変の辺の変化方向を示している矢印、1105は可変の辺、1106はリンク、そして1107はスライダーを示している。
次に、レイアウト編集アプリケーション121は、ステップS2101で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(ステップS2102)。そして、レイアウト編集アプリケーション121は、選択したコンテナの集合について、レイアウトの計算を行う(ステップS2103)。本実施形態では、レイアウトされるコンテナのサイズ(理想サイズ)と実際のコンテンツのサイズ(計算後のサイズ)との差ができる限り少なくなるように、レイアウトの最適化を行うものとする。レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。尚、本実施形態では、最小二乗法を用いることにする。例えば、コンテナにコンテンツを流し込んだ際に、位置やサイズに制約がない状態での計算値である理想サイズと、計算後のサイズ(Xとする)との差分をとり、各差分を二乗したものの和が最も少なくなる解を計算することにより、計算後のサイズXが求まる。
ステップS2103でレイアウトの最適化を行った後、レイアウト編集アプリケーション121は、ルールに違反していないか否かを判定する(ステップS2104)。その結果、ルール違反をしていると判断した場合(No)は、再度ルールを違反しないように、ステップS2103に戻って、レイアウトの最適化計算をする。尚、ここでいうルールとは、レイアウト作成時にユーザによって設定される制限であり、各コンテナの最大/最小サイズと位置、リンクの長さ、用紙幅等である。
一方、ステップS2104でルールを違反していないと判断した場合(Yes)は、その集合のレイアウトが完成するので、さらに上記ステップS2102〜S2104での処理をページ上のすべての集合について施して、ページ全体のレイアウトを計算する(ステップS2105)。
そして、レイアウト編集アプリケーション121は、全てのコンテナに対して、「マスキングする」か「マスキングしない」かの設定を繰り返し読み出す(ステップ2106)。レイアウト編集アプリケーション121は、コンテナに対するマスキング設定を取得し、「マスキングする」設定となっているか否かを判定する(ステップ2107)。その結果、ステップS2107で「マスキングする」設定となっていた場合(Yes)は、レイアウト編集アプリケーション121は、レイアウト済みのコンテナと同じ大きさ、位置の矩形領域を作成して塗り潰すことでマスキングを行う(ステップS2108)。一方、ステップS2107で「マスキングする」と判定されなかった場合(Yes)は次のコンテナに対して処理を行う。
図23は、本発明の一実施形態における一般的なユーザ認証機能を備えるレイアウト装置によるコンテナに対するマスキング有効時のレイアウト計算の詳細を説明するためのフローチャートである。まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を求める(ステップS2301)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。
例えば、図11を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。従って、コンテナAとコンテナBが集合1、コンテナCとコンテナDが集合2となる。前述した通りであるが、1101はアンカー、1102は固定された辺、1103はコントローラー、1104は可変の辺の変化方向を示している矢印、1105は可変の辺、1106はリンク、そして1107はスライダーを示している。
次に、レイアウト編集アプリケーション121は、ステップS2301で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(ステップS2302)。そして、レイアウト編集アプリケーション121は、選択したコンテナの集合について、レイアウトの計算を行う(ステップS2303)。ここでは、レイアウトされるコンテナのサイズ(理想サイズ)が実際のコンテンツのサイズ(計算後のサイズ)とできる限り差が少なくなるように、レイアウトの最適化を行うものとする。レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。尚、本実施形態では、最小二乗法を用いることにする。例えば、コンテナにコンテンツを流し込んだ際に、位置やサイズに制約がない状態での計算値である理想サイズと、計算後のサイズ(Xとする)との差分をとり、各差分を二乗したものの和が最も少なくなる解を計算することにより、計算後のサイズXが求まる。
レイアウトの最適化を行った後、レイアウト編集アプリケーション121は、ルールに違反していないか否かを判断する(ステップS2304)。その結果、ルール違反していると判断された場合(No)は、ステップS2303に戻って再度ルールを違反しないように最適化計算をする。ここで対象となるルールとは、レイアウト作成時にユーザによって設定される制限であり、各コンテナの最大/最小サイズと位置、リンクの長さ、用紙幅等である。
ステップS2304でルールを違反しないようにレイアウトが計算されたと判断された場合(Yes)は、その集合のレイアウトは完成される。そこで、ステップS2302〜S2304の各処理をページ上のすべての集合について施して、ページ全体のレイアウトを計算する(ステップ2305)。そして、レイアウト編集アプリケーション121は、本レイアウト処理を実行しているユーザを取得する(ステップS2306)。
そして、レイアウト編集アプリケーション121は、全てのコンテナに対して、「マスキングしない」ユーザの設定を繰り返して読み出す(ステップS2307)。そして、レイアウト編集アプリケーション121は、コンテナに対するマスキング設定から取得される「マスキングしない」設定のユーザと、本レイアウト処理を行っているユーザとを比較し、マスキングするか否かを判定する(ステップS2308)。ステップS2308で「マスキングする」と判定された場合(Yes)は、レイアウト編集アプリケーション121は、レイアウト済みのコンテナと同じ大きさ、位置の矩形領域を作成して、塗り潰すことによってマスキングを行う(ステップS2309)。一方、ステップS2308で「マスキングする」と判定されなかった場合(Yes)は次のコンテナに対して処理を行う。
[コンテナに対するマスキング有効時のレイアウト結果の表示]
図22は、本発明の一実施形態に係るレイアウト装置におけるコンテナに対するマスキング設定の有効時におけるリンクを可変サイズにした場合のレイアウト結果を示す図である。ここで、前述した通り、コンテナ1204に対して「マスキングする」設定がなされており、コンテナ1203とコンテナ1204の間には可変サイズのリンク1209が設定されているとする。この場合、コンテナ1203とコンテナ1204のサイズが変更される際に、リンクサイズが縮まることでコンテナ1203とコンテナ1204のサイズが上記例より大きくすることができ、挿入されるデータサイズに合わせた最適なサイズを達成、或いはより挿入データサイズ(最適サイズ)に近づけてコンテナの枠を計算することができる。
その結果が、図22に示すコンテナ2201とコンテナ2202で示される。図22に示すように、レイアウト計算の結果、可変リンク1209は可変リンク2203で示されるサイズの状態となり、この場合コンテナ2201とコンテナ2202はそれぞれ最適なサイズ(データサイズに合った大きさ)になっている。また、「マスキングする」設定がされているコンテナ2202は、サイズ変更されたコンテナ2202の大きさの矩形で塗りつぶされており、マスキングされている。上述したように、指定された領域に指定されたバリアブルデータを当てはめた文書データを表示・印刷可能なバリアブル印刷装置において、レイアウトに合わせたコンテナのマスキング処理を好適に行うことができる。
すなわち、上記構成を有することによって、レイアウト調整されたそれぞれの部分領域にマスキング設定がされているか否かを判定し、部分領域にマスキング設定がされている場合に当該部分領域と同一形状のマスク領域を作成し、マスキング設定がされている部分領域を作成されたマスク領域を用いて覆い隠すことを可能とする。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
本発明の一実施形態に係るバリアブルデータドキュメントを印刷するバリアブルプリントシステム100のアプリケーション構成を示すブロック図である。 図1に示すアプリケーション構成を有するバリアブルプリントシステムを実現するためのハードウェア構成図である。 図1Aに示すバリアブルプリントシステムにエンジンサーバ227の新たに追加したバリアブルプリントシステムの構成を示すブロック図である。 本発明の一実施形態に係るコンピュータ101のビデオディスプレイ144上に表示されるメニューバー、ツールバー、ワークエリア、フローティングパレットを含むレイアウト編集アプリケーション121のメインウインドウを示す図である。 アプリケーションウインドウ301上に表示される、コンテナ間のリンク、及びアンカーやスライダーを有する典型的なコンテナの一面を示す図である。 本発明の一実施形態における典型的なコンテナルールを説明するための図である。 本発明の一実施形態に係るリンク設定方法を説明するためのフローチャートである。 2つのコンテナを作成してリンクを設定する際のUI操作例を説明するための図である。 本発明の一実施形態に係るレイアウト編集アプリケーション121におけるレイアウト計算処理の制御を説明するためのフローチャートである。 図8に示すレイアウト計算処理(ステップS803)の詳細を説明するためのフローチャートである。 レイアウト計算処理を行う際のUI表示例を示す図である。 本発明の一実施形態に係るレイアウト計算時におけるコンテナの集合について説明するための図である。 本発明の一実施形態に係る可変リンクによるコンテナ配置の一例を示す図である。 本発明の一実施形態において固定サイズのリンク状態から可変サイズのリンク状態に操作遷移する処理を説明するためのフローチャートである。 図12に示すリンク1209の情報が設定されているダイアログウインドウ1401を示す図である。 本発明の一実施形態における固定リンクによるレイアウト結果を示す図である。 本発明の一実施形態における可変リンクによるレイアウト結果を示す図である。 本発明の一実施形態に係るコンテナに対するマスキング設定を行う操作遷移を説明するためのフローチャートである。 本発明の一実施形態に係るマスキング設定が行われたコンテナの表示UI例を示す図である。 コンテナに対するマスキング情報がセットされているダイアログウインドウ1901(マスク属性設定画面)の一例を示す図である。 公知技術を用いた一般的なユーザ認証機能を備えたレイアウト装置が表示するダイアログウインドウ1910(マスク閲覧権限設定画面)の一例を示す図である。 本発明の一実施形態に係るコンテナに対するマスキング設定有効時のレイアウト編集アプリケーション121におけるレイアウト方法の制御処理を説明するためのフローチャートである。 図20のフローチャートにおけるコンテナに対するマスキング設定が有効時のレイアウト計算処理(ステップS2003)の詳細を説明するためのフローチャートである。 本発明の一実施形態に係るレイアウト装置におけるコンテナに対するマスキング設定の有効時におけるリンクを可変サイズにした場合のレイアウト結果を示す図である。 本発明の一実施形態における一般的なユーザ認証機能を備えるレイアウト装置によるコンテナに対するマスキング有効時のレイアウト計算の詳細を説明するためのフローチャートである。
符号の説明
100 バリアブルプリントシステム
101 コンピュータ
103 ユーザインタフェース
104 UIモデルアナライザ
105 レイアウトエンジン
107 ネットワーク
109 プリントサーバ
111 通信チャネル
113 プリンタ
115 ファイルサーバ
117 データベースサーバ
119 データベース
121 レイアウト編集アプリケーション
123、124 コミュニケーションチャネル
301 ウインドウ
303 ツールバー
309 ドキュメントテンプレート
403 選択ツールボタン
404 テキストコンテナツールボタン
405 イメージコンテナツールボタン
406 リンクツールボタン
2201、2202 コンテナ
2203 可変リンク

Claims (15)

  1. 複数種類のデータフィールドからなるレコードから前記データフィールドのコンテンツデータを入力するためのフィールド領域を有するテンプレートと、前記データフィールドのコンテンツデータとに基づいて、前記フィールド領域に前記コンテンツデータが入力されたドキュメントを作成するレイアウト決定装置において実行されるレイアウト決定方法であって、
    前記レイアウト決定装置のリンク設定手段が、前記テンプレート内の複数の前記フィールド領域間を関連付けるためのリンクを設定するリンク設定工程と
    前記レイアウト決定装置のレイアウト決定手段が、前記フィールド領域に入力されるコンテンツデータのサイズに基づいて前記フィールド領域のサイズを最適化処理し、前フィールド領域の大きさを決定するレイアウト決定工程と、
    前記レイアウト決定装置の判定手段が、前記レイアウト決定工程により大きさが決定された前記フィールド領域にマスキング設定がされているか否かを判定する判定工程と、
    前記レイアウト決定装置の作成手段が、前記判定工程により前記フィールド領域にマスキング設定がされていると判定された場合に、前記レイアウト決定工程により大きさが決定された前記フィールド領域を覆うためのマスク領域を作成する作成工程と、
    前記レイアウト決定装置のマスク手段が、前記判定工程によりマスキング設定がされていると判定された前記フィールド領域を前記作成工程により作成されたマスク領域を用いて覆うマスク工程とを有し、
    前記レイアウト決定工程は、前記リンクにより関連付けられた複数のフィールド領域それぞれにおいて、各フィールド領域に入力されるコンテンツデータのサイズに相当する各フィールド領域のサイズと最適化処理後の各フィールド領域のサイズとの差異がそれぞれ均等になるように各フィールド領域の大きさと位置とを決定することを特徴とするレイアウト決定方法。
  2. 前記レイアウト決定装置の表示手段が、前記マスク工程によって所定のフィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを表示装置に表示する表示工程をさらに有することを特徴とする請求項に記載のレイアウト決定方法。
  3. 前記レイアウト決定装置の認証手段が、前記レイアウト決定されたドキュメントの操作を行う操作者の認証を行う認証工程をさらに有し、
    前記判定工程は、前記認証工程によって認証された操作者に応じて設定されている前記フィールド領域に対するマスキング設定を判定することを特徴とする請求項1又は2に記載のレイアウト決定方法。
  4. 前記レイアウト決定装置の印刷処理手段が、前記マスク工程によって前記フィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを印刷媒体上に印刷すべく印刷処理を実行する印刷処理工程をさらに有することを特徴とする請求項1乃至のいずれか1項に記載のレイアウト決定方法。
  5. 前記レイアウト決定装置のテンプレート生成手段が、データが流し込まれるフィールド領域をページ内にレイアウトしてテンプレートを生成するテンプレート生成工程をさらに有することを特徴とする請求項1乃至のいずれか1項に記載のレイアウト決定方法。
  6. 複数種類のデータフィールドからなるレコードから前記データフィールドのコンテンツデータを入力するためのフィールド領域を有するテンプレートと、前記データフィールドのコンテンツデータとに基づいて、前記フィールド領域に前記コンテンツデータが入力されたドキュメントを作成するレイアウト決定装置であって、
    前記テンプレート内の複数の前記フィールド領域間を関連付けるためのリンクを設定するリンク設定手段と
    前記フィールド領域に入力されるコンテンツデータのサイズに基づいて前記フィールド領域のサイズを最適化処理し、前フィールド領域の大きさを決定するレイアウト決定手段と、
    前記レイアウト決定手段により大きさが決定された前記フィールド領域にマスキング設定がされているか否かを判定する判定手段と、
    前記判定手段により前記フィールド領域にマスキング設定がされていると判定された場合に、前記レイアウト決定手段により大きさが決定された前記フィールド領域を覆うためのマスク領域を作成する作成手段と、
    前記判定手段によりマスキング設定がされていると判定された前記フィールド領域を前記作成手段により作成されたマスク領域を用いて覆うマスク手段とを有し、
    前記レイアウト決定手段は、前記リンクにより関連付けられた複数のフィールド領域それぞれにおいて、各フィールド領域に入力されるコンテンツデータのサイズに相当する各フィールド領域のサイズと最適化処理後の各フィールド領域のサイズとの差異がそれぞれ均等になるように各フィールド領域の大きさと位置とを決定することを特徴とするレイアウト決定装置。
  7. 前記マスク手段によって所定のフィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを表示装置に表示する表示手段をさらに有することを特徴とする請求項に記載のレイアウト決定装置。
  8. 前記レイアウト決定されたドキュメントの操作を行う操作者の認証を行う認証手段をさらに有し、
    前記判定手段は、前記認証手段によって認証された操作者に応じて設定されている前記フィールド領域に対するマスキング設定を判定することを特徴とする請求項6又は7に記載のレイアウト決定装置。
  9. 前記マスク手段によって前記フィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを印刷媒体上に印刷すべく印刷処理を実行する印刷処理手段をさらに有することを特徴とする請求項6乃至8のいずれか1項に記載のレイアウト決定装置。
  10. データが流し込まれるフィールド領域をページ内にレイアウトしてテンプレートを生成するテンプレート生成手段をさらに有することを特徴とする請求項6乃至9のいずれか1項に記載のレイアウト決定装置。
  11. コンピュータを、
    複数種類のデータフィールドからなるレコードから前記データフィールドのコンテンツデータを入力するためのフィールド領域を有するテンプレート内の複数の前記フィールド領域間を関連付けるためのリンクを設定するリンク設定手段、
    前記フィールド領域に入力されるコンテンツデータのサイズに基づいて前記フィールド領域のサイズを最適化処理し、前フィールド領域の大きさを決定するレイアウト決定手段、
    前記レイアウト決定手段により大きさが決定された前記フィールド領域にマスキング設定がされているか否かを判定する判定手段、
    前記判定手段により前記フィールド領域にマスキング設定がされていると判定された場合に、前記レイアウト決定手段により大きさが決定された前記フィールド領域を覆うためのマスク領域を作成する作成手段、
    前記判定手段によりマスキング設定がされていると判定された前記フィールド領域を前記作成手段により作成されたマスク領域を用いて覆うマスク手段を有するレイアウト決定装置として機能させるためのレイアウト決定プログラムであって、
    前記レイアウト決定手段は、前記リンクにより関連付けられた複数のフィールド領域それぞれにおいて、各フィールド領域に入力されるコンテンツデータのサイズに相当する各フィールド領域のサイズと最適化処理後の各フィールド領域のサイズとの差異がそれぞれ均等になるように各フィールド領域の大きさと位置とを決定することを特徴とするレイアウト決定プログラム。
  12. 前記コンピュータをさらに、
    前記マスク手段によって所定のフィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを表示装置に表示する表示手段を有するレイアウト決定装置として機能させるための請求項11に記載のレイアウト決定プログラム。
  13. 前記コンピュータをさらに、
    前記レイアウト決定されたドキュメントの操作を行う操作者の認証を行う認証手段を有するレイアウト決定装置として機能させるためのレイアウト決定プログラムであって、
    前記判定手段は、前記認証手段によって認証された操作者に応じて設定されている前記フィールド領域に対するマスキング設定を判定する請求項11又は12に記載のレイアウト決定プログラム。
  14. 前記コンピュータをさらに、
    前記マスク手段によって前記フィールド領域が前記マスク領域を用いて覆われた前記ドキュメントを印刷媒体上に印刷すべく印刷処理を実行する印刷処理手段を有するレイアウト決定装置として機能させるための請求項11乃至13のいずれか1項に記載のレイアウト決定プログラム。
  15. 前記コンピュータをさらに、
    データが流し込まれるフィールド領域をページ内にレイアウトしてテンプレートを生成するテンプレート生成手段を有するレイアウト決定装置として機能させるための請求項11乃至14のいずれか1項に記載のレイアウト決定プログラム。
JP2005023934A 2005-01-31 2005-01-31 レイアウト決定方法及び装置並びにプログラム Expired - Fee Related JP4510653B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005023934A JP4510653B2 (ja) 2005-01-31 2005-01-31 レイアウト決定方法及び装置並びにプログラム
US11/342,406 US8332743B2 (en) 2005-01-31 2006-01-30 Layout decision method, apparatus, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005023934A JP4510653B2 (ja) 2005-01-31 2005-01-31 レイアウト決定方法及び装置並びにプログラム

Publications (3)

Publication Number Publication Date
JP2006209663A JP2006209663A (ja) 2006-08-10
JP2006209663A5 JP2006209663A5 (ja) 2008-03-13
JP4510653B2 true JP4510653B2 (ja) 2010-07-28

Family

ID=36758110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005023934A Expired - Fee Related JP4510653B2 (ja) 2005-01-31 2005-01-31 レイアウト決定方法及び装置並びにプログラム

Country Status (2)

Country Link
US (1) US8332743B2 (ja)
JP (1) JP4510653B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EA015549B1 (ru) 2003-06-05 2011-08-30 Интертраст Текнолоджис Корпорейшн Переносимая система и способ для приложений одноранговой компоновки услуг
JP4047308B2 (ja) * 2004-08-06 2008-02-13 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム
US9626667B2 (en) 2005-10-18 2017-04-18 Intertrust Technologies Corporation Digital rights management engine systems and methods
US8139083B2 (en) * 2006-08-09 2012-03-20 Sony Ericsson Mobile Communications Ab Custom image frames
JP5100290B2 (ja) * 2006-11-29 2012-12-19 キヤノン株式会社 情報処理システム、情報処理装置および情報処理方法
JP4711237B2 (ja) * 2006-12-11 2011-06-29 富士ゼロックス株式会社 画像形成システムおよび画像形成プログラム
JP4912139B2 (ja) * 2006-12-22 2012-04-11 キヤノン株式会社 情報処理装置
AR067297A1 (es) * 2007-03-28 2009-10-07 Avery Dennison Corp Interfaz de usuario de tipo cinta para un programa de aplicacion
JP2008310525A (ja) * 2007-06-13 2008-12-25 Canon Inc 情報処理装置、情報処理方法、及び、情報処理プログラム
US20090019386A1 (en) * 2007-07-13 2009-01-15 Internet Simplicity, A California Corporation Extraction and reapplication of design information to existing websites
JP4877274B2 (ja) * 2008-05-13 2012-02-15 富士ゼロックス株式会社 情報処理装置及びプログラム
JP2010097564A (ja) * 2008-10-20 2010-04-30 Canon Inc 情報処理装置及びレイアウト処理方法
JP5489657B2 (ja) 2009-11-05 2014-05-14 キヤノン株式会社 情報処理装置、制御方法、及びプログラム
US8739030B2 (en) * 2010-03-10 2014-05-27 Salesforce.Com, Inc. Providing a quote template in a multi-tenant database system environment
WO2012142178A2 (en) 2011-04-11 2012-10-18 Intertrust Technologies Corporation Information security systems and methods
US20140258849A1 (en) * 2013-03-06 2014-09-11 Google Inc. Automatic Alignment of a Multi-Dimensional Layout
US20150268838A1 (en) * 2014-03-20 2015-09-24 Institute For Information Industry Methods, systems, electronic devices, and non-transitory computer readable storage medium media for behavior based user interface layout display (build)
CN105590241B (zh) * 2015-05-20 2021-02-12 中国银联股份有限公司 自适应地电子票据实现方法及系统
US10339206B2 (en) * 2016-05-17 2019-07-02 Wing Aviation Llc Systems and methods for automatic determination of layout constraints
US10740539B2 (en) * 2017-04-17 2020-08-11 Hewlett-Packard Development Company, L.P. Page structure adjustments
US11983550B2 (en) * 2021-11-17 2024-05-14 Zoho Corporation Private Limited View customization in CRM application

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000222493A (ja) * 1999-01-29 2000-08-11 Canon Inc オブジェクト編集装置及び方法及びコンピュータ読取り可能なプログラムが格納された記憶媒体
JP2001101169A (ja) * 1999-09-30 2001-04-13 Ricoh Co Ltd 文書管理システム、文書管理方法及びコンピュータ読み取り可能な記録媒体
JP2002158861A (ja) * 2000-11-22 2002-05-31 Dainippon Screen Mfg Co Ltd 画像レイアウト装置および記録媒体
JP2003046745A (ja) * 2001-07-30 2003-02-14 Matsushita Electric Ind Co Ltd 画像処理装置および画像処理方法
JP2003532949A (ja) * 1999-12-10 2003-11-05 エイ2アイ・インコーポレイテッド 時分割電子カタログシステムおよび方法
JP2004288028A (ja) * 2003-03-24 2004-10-14 Seiko Epson Corp レイアウトシステム、レイアウト支援システム、レイアウトプログラム及びレイアウト支援プログラム、並びにレイアウト方法及びレイアウト支援方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58197957A (ja) * 1982-05-14 1983-11-17 Fuji Xerox Co Ltd 画情報処理装置
JP2835133B2 (ja) * 1990-03-30 1998-12-14 株式会社東芝 画像形成装置
JPH07129658A (ja) * 1993-11-02 1995-05-19 Toppan Printing Co Ltd レイアウトデザイン装置
JP3303551B2 (ja) * 1994-08-22 2002-07-22 ソニー株式会社 半導体装置の露光方法におけるアライメント法
JPH0877331A (ja) * 1994-09-06 1996-03-22 Toppan Printing Co Ltd 自動ページアップ装置
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
US6596032B2 (en) * 1996-10-15 2003-07-22 Fujitsu Limited Document processing apparatus storing and modifying data using effect data
JPH11250271A (ja) * 1998-03-04 1999-09-17 Dainippon Screen Mfg Co Ltd レイアウト編集方法およびレイアウト編集装置、並びに、その処理を実行するためのプログラムを記録した記録媒体
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US6633670B1 (en) * 2000-03-31 2003-10-14 Sharp Laboratories Of America, Inc. Mask generation for multi-layer image decomposition
US6411314B1 (en) * 2000-05-17 2002-06-25 Heidelberger Druckmaschinen Ag System and method for representing and controlling a production printing workflow
US7028255B1 (en) * 2000-08-14 2006-04-11 Adobe Systems Incorporated Self-sizing object placement
US6892201B2 (en) * 2001-09-05 2005-05-10 International Business Machines Corporation Apparatus and method for providing access rights information in a portion of a file
US7475242B2 (en) * 2001-12-18 2009-01-06 Hewlett-Packard Development Company, L.P. Controlling the distribution of information
US7689899B2 (en) * 2002-03-06 2010-03-30 Ge Corporate Financial Services, Inc. Methods and systems for generating documents
JP2005309829A (ja) * 2003-06-13 2005-11-04 Canon Inc 文書管理装置および文書管理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体および文書管理プログラム
US7339598B2 (en) * 2003-07-11 2008-03-04 Vistaprint Technologies Limited System and method for automated product design
GB2404270A (en) * 2003-07-24 2005-01-26 Hewlett Packard Development Co Document composition
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
US8661338B2 (en) * 2004-01-14 2014-02-25 Xerox Corporation System and method for dynamic document layout
JP4332477B2 (ja) * 2004-08-06 2009-09-16 キヤノン株式会社 レイアウト調整方法及び装置並びにプログラム
JP4700940B2 (ja) * 2004-08-27 2011-06-15 キヤノン株式会社 情報処理装置及びその制御方法、プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000222493A (ja) * 1999-01-29 2000-08-11 Canon Inc オブジェクト編集装置及び方法及びコンピュータ読取り可能なプログラムが格納された記憶媒体
JP2001101169A (ja) * 1999-09-30 2001-04-13 Ricoh Co Ltd 文書管理システム、文書管理方法及びコンピュータ読み取り可能な記録媒体
JP2003532949A (ja) * 1999-12-10 2003-11-05 エイ2アイ・インコーポレイテッド 時分割電子カタログシステムおよび方法
JP2002158861A (ja) * 2000-11-22 2002-05-31 Dainippon Screen Mfg Co Ltd 画像レイアウト装置および記録媒体
JP2003046745A (ja) * 2001-07-30 2003-02-14 Matsushita Electric Ind Co Ltd 画像処理装置および画像処理方法
JP2004288028A (ja) * 2003-03-24 2004-10-14 Seiko Epson Corp レイアウトシステム、レイアウト支援システム、レイアウトプログラム及びレイアウト支援プログラム、並びにレイアウト方法及びレイアウト支援方法

Also Published As

Publication number Publication date
US8332743B2 (en) 2012-12-11
US20060174194A1 (en) 2006-08-03
JP2006209663A (ja) 2006-08-10

Similar Documents

Publication Publication Date Title
JP4510653B2 (ja) レイアウト決定方法及び装置並びにプログラム
US7373593B2 (en) Apparatus and method for automatically setting constraints within a document layout
JP4144883B2 (ja) 情報処理装置及びその制御方法、プログラム
KR100821449B1 (ko) 레이아웃 조정 방법 및 장치
US7757167B2 (en) Document layout processing using templates
US7555710B2 (en) Method, apparatus and program for determining layout of a page using links between partial areas in the page
US7712026B2 (en) Document processing apparatus, method and program for layout of data contents assigned to regions on a template
US7831909B2 (en) Information processing apparatus, control method therefor, and program with display based on change amount of field areas
KR100716084B1 (ko) 레이아웃 조정 방법 및 장치
JP4700940B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4912139B2 (ja) 情報処理装置
JP2006277727A (ja) レイアウト処理方法、情報処理装置及びコンピュータプログラム
US7853872B2 (en) Laying out field regions in a page for insertion of data
JP4194501B2 (ja) 文書処理方法、文書処理装置及び文書処理プログラム
JP4250577B2 (ja) 情報処理装置、情報処理方法、ならびにプログラム
JP2007122486A (ja) Web文書処理方法、プログラム、記憶媒体
JP2007094756A (ja) 情報処理装置、レイアウト処理方法、記憶媒体およびプログラム
JP2007122487A (ja) 自動レイアウトシステム
JP4743909B2 (ja) 情報処理方法および装置およびコンピュータプログラム
JP4241551B2 (ja) 情報処理装置、情報処理方法、ならびにプログラム
JP2007048198A (ja) 自動レイアウトシステム
JP2009134578A (ja) 文書処理装置、文書処理プログラム、記憶媒体
JP2008287504A (ja) 文書処理装置および方法
JP2010176366A (ja) バリアブルプリントシステム
JP2008102869A (ja) レイアウト処理方法及び装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080130

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100406

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100427

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100430

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

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees