JP4560416B2 - 情報処理装置及びその制御方法、プログラム - Google Patents

情報処理装置及びその制御方法、プログラム Download PDF

Info

Publication number
JP4560416B2
JP4560416B2 JP2005020020A JP2005020020A JP4560416B2 JP 4560416 B2 JP4560416 B2 JP 4560416B2 JP 2005020020 A JP2005020020 A JP 2005020020A JP 2005020020 A JP2005020020 A JP 2005020020A JP 4560416 B2 JP4560416 B2 JP 4560416B2
Authority
JP
Japan
Prior art keywords
layout
container
record
document
change amount
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
JP2005020020A
Other languages
English (en)
Other versions
JP2006211248A5 (ja
JP2006211248A (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 JP2005020020A priority Critical patent/JP4560416B2/ja
Priority to US11/336,981 priority patent/US7831909B2/en
Priority to CNB2006100024181A priority patent/CN100361068C/zh
Publication of JP2006211248A publication Critical patent/JP2006211248A/ja
Publication of JP2006211248A5 publication Critical patent/JP2006211248A5/ja
Application granted granted Critical
Publication of JP4560416B2 publication Critical patent/JP4560416B2/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

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に示すような、フォーム作成アプリケーションにより、バリアブルプリント用のカスタマイズ文書のテンプレートを作成することが可能である。
一般にバリアブルプリントシステムにおいて、そのようなカスタマイズ文書を作成する際には、文書上にコンテナをレイアウトする。ここで、コンテナとは、コンテンツ(描画内容(例えば、イメージ、テキスト等))を描画するための描画領域であり、フィールド領域と呼ばれることもある。
ここで、従来のバリアブルプリントシステムでは、コンテンツであるテキストやイメージに関連付けられるコンテナのサイズが固定であるため、データベース内のコンテンツがコンテナに挿入された(流し込まれた)ときに、そのデータ量がコンテナサイズより多いと、そのデータがテキストであれば、テキストのオーバーラップが発生し、また、そのデータがイメージであれば、イメージのクリッピングが発生する。また、データ量がコンテナサイズより小さいと、コンテナとその内部のコンテンツとの間に隙間が空いてしまう等の適切な表示がなされない可能性がある。
特開2000−222493号公報
そこで、このような課題を解決するために、自動レイアウトシステムが提案されている。自動レイアウトシステムは、文書上にレイアウトされているコンテナのコンテナサイズを可変に設定することが可能にする。この自動レイアウトシステムを実現しているソフトウェアは、例えば、挿入されるデータ量に応じてコンテナのサイズを変更することができる。
例えば、文書上にこのようなコンテナをレイアウトし、データベースとレイアウトを関連付ける(データベース内の各種コンテンツとコンテナとを関連付ける)作業を行うことにより、所望のカスタマイズ文書を作成することができる。そして、このカスタマイズ文書上のコンテナ内のコンテンツを適宜切り換える(関連付けを変更する)ことで、その内容を可変(バリアブル)にすることができる。そのため、このような文書を、バリアブルデータ文書(ドキュメント)と呼んでおり、このバリアブルデータドキュメントを用いるプリントシステムが、バリアルプリントシステムである。
また、固定のコンテナサイズのコンテナに挿入されるテキストが、そのコンテナサイズ内に挿入しきれない場合は、そのテキストのフォントサイズを可変(この場合、縮小する)にして、コンテナ内に全てのテキストが収まるように表示する技術も存在する。
しかしながら、コンテナサイズが可変な環境においては、挿入されるコンテンツによってコンテナが大きくなった場合は、同一文書内の他のコンテナに重なってしまう問題が発生する。また、フォントサイズが可変な環境においては、挿入されるテキストのデータ量が非常に大きい場合は、縮小されるフォントサイズが小さくなりすぎてしまう問題が発生する。
このように、コンテンツの量やサイズに応じて、各コンテナの位置やサイズが自動的に計算されるシステムは、コンテンツのオーバーフローや空き領域を減らす上で効果をもたらすが、作成者が意図していないレイアウトが決定されてしまう場合もあり、完全に自動的にレイアウトを決定することは難しいという問題がある。
そこで、テキストやイメージ等のコンテンツに応じて、動的にレイアウトが変更するドキュメントの最終レイアウトを印刷する前に確認する必要がある。また、各レコードにおいて、複数ページから構成される文書であり、動的にレイアウト変更されるページと固定レイアウトのページとが混在している場合、動的にレイアウト変更のあったページを中心に最終確認を行うことが予想される。
しかしながら、バリアブルプリントは、一般的に多くのレコード(例えば、1万レコード)の印刷を行うことが多く、このように、ドキュメントを構成するバリアブルデータのレコード数が膨大であった場合、手動で動的にレイアウト変更があったページや、元のテンプレートからのレイアウトの変更量の大きいレコードを見つけ出すのは非常に困難であった。
本発明は上記の課題を解決するためになされたものであり、ドキュメント中のレイアウト変更箇所を、容易にかつ目的に応じて効果的に提示することができる情報処理装置及びその制御方法、プログラムを提供することを目的とする。
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、 レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置であって、
複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定手段と、
前記レイアウト決定手段によるレイアウト決定前後のフィールド領域の変化量を算出する算出手段と、
前記算出手段で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御手段と
前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定手段とを備え
前記指定手段により前記第1の指標が指定された場合、前記表示制御手段は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記指定手段により前記第2の指標が指定された場合、前記表示制御手段は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記第1の変化量は、前記レイアウト決定手段によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
前記第2の変化量は、前記レイアウト決定手段によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
また、好ましくは、前記表示方法では、更に、前記ドキュメントを構成するレコードの内、任意数のレコードを表示対象に指定可能である。
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置の制御方法であって、
複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定工程と、
前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の変化量を算出する算出工程と、
前記算出工程で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御工程と
前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定工程とを備え
前記指定工程により前記第1の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記指定工程により前記第2の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記第1の変化量は、前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
前記第2の変化量は、前記レイアウト決定工程によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
上記の目的を達成するための本発明によるプログラムは以下の構成を備える。即ち、
レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置の制御をコンピュータに実行させるためのプログラムであって、
複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定工程と、
前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の変化量を算出する算出工程と、
前記算出工程で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御工程と
前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定工程とをコンピュータに実行させ
前記指定工程により前記第1の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記指定工程により前記第2の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
前記第1の変化量は、前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
前記第2の変化量は、前記レイアウト決定工程によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
本発明によれば、ドキュメント中のレイアウト変更箇所を、容易にかつ目的に応じて効果的に提示することができる情報処理装置及びその制御方法、プログラムを提供できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。
<システム構成>
まず、本実施形態の情報処理システム及び、その構成要素であるホストコンピュータのハードウェア構成について、図1A及び図1Bを用いて説明する。
図1Aは本発明の実施形態の情報処理システムの構成例を示す図である。また、図1Bは本発明の実施形態の情報処理システムの一構成要素であるホストコンピュータのハードウェア構成を示す図である。
尚、図1A中のホストコンピュータ以外の各種コンピュータ(例えば、データベースサーバ117、ファイルサーバ115及びプリントサーバ109)も、例えば、図1Bのハードウェア構成と同等のハードウェア構成を有している。
図1Aにおいて、情報処理システム100は、ネットワーク107を介して、本発明の情報処理装置であるホストコンピュータ101、データベースサーバ117、ファイルサーバ115及びプリントサーバ109が相互に接続されている。
データベースサーバ117は、データベース119を備えている。また、プリントサーバ109は、プリンタ113を接続しており、ネットワーク107を介して受信する印刷データを適宜プリンタ113に出力して、その印刷データを印刷させることが可能である。
図1Aの情報処理システム100は、特に、バリアブルデータドキュメントを印刷するバリアブルプリントシステムの構成例を示している。実施形態で説明されるバリアブルプリント処理は、レイアウト編集装置として機能するホストコンピュータ101(汎用コンピュータモジュールによって構成される)で実現される。
バリアブルプリントシステム100上で実施可能となるレイアウト編集アプリケーション121は、ホストコンピュータ101において、その全体あるいは一部分が実行される。特に、レイアウト編集に関する処理や、バリアブルデータドキュメントの印刷に関する処理は、ホストコンピュータ101によって実行されるソフトウェアにより実現される。
レイアウト編集アプリケーション121等のソフトウェアやコンピュータプログラムはコンピュータ可読媒体に格納され、そのコンピュータ可読媒体からホストコンピュータ101のメモリ136にロードされ、実行される。そのようなソフトウェアやコンピュータプログラムを格納したコンピュータ可読媒体は、コンピュータプログラム製品である。そして、例えば、ホストコンピュータ101において、そのコンピュータプログラム製品を使用することにより、バリアブルデータドキュメントのレイアウト編集やバリアブルプリントに好適な装置が提供されることになる。
図1Bに示されるように、ホストコンピュータ101には、I/O(入出力)インタフェース143を介してキーボード132や、ポインティングデバイスであるマウス133が入力装置として接続される。また、出力装置としてのディスプレイ装置144がビデオインタフェース137を介して接続される。更に、プリンタ145をI/Oインタフェース138を介して接続することも可能である。
また、I/Oインタフェース138は、ホストコンピュータコンピュータ101を、ネットワーク107へ接続する機能も有する。これにより、ネットワーク107を介して、バリアブルプリントシステム100内の他のコンピュータ装置(外部機器)にホストコンピュータ101を接続することができる。ネットワーク107の典型的な例としては、ローカルエリアネットワーク(LAN)、あるいはワイドエリアネットワーク(WAN)が挙げられる。
また、図1Bに示すように、ホストコンピュータ101は、少なくとも1つのプロセッサ135、例えば、半導体メモリである、ランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)から構成されるメモリ136を含んでいる。記憶装置139は、プログラム等の各種データを格納するコンピュータ可読媒体との間でデータのやり取りが可能なハードディスクドライブ(HDD)140やフロッピー(登録商標)ディスクドライブ(FDD)141を含む。
尚、図1Bには示されていないが、磁気テープドライブやメモリカード等の各種記憶装置も記憶装置139として使用することが可能である。CD−ROMドライブ142は、不揮発性のデータソースとして提供される(もちろん、CD−ROMによってコンピュータプログラムを提供してもよい)。
ホストコンピュータ101は、GNU/LINUXやマイクロソフトウィンドウズ(登録商標)のようなオペレーティングシステムや、典型的にはオペレーティングシステムに従う形で、あるいは関連のある技術で知られているもので形成されたコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス134を介して、ホストコンピュータ101の各種構成要素135〜143と通信する。即ち、上述の各種構成要素135〜143は、相互接続バス134を介して通信可能に接続されており、ホストコンピュータ101にインストールされたオペレーティングシステムにより利用される。
尚、図1Bに示すホストコンピュータ101の例としては、IBM互換PC(パーソナルコンピュータ)やSUNのSparcstation、あるいはそれらを含んだコンピュータシステムが考えられる。
<レイアウト編集アプリケーションの概要>
実施形態では、レイアウト編集アプリケーション121は、ハードディスクドライブ140に常駐し、プロセッサ135による実行や読込が制御される。レイアウト編集アプリケーション121の媒介記憶装置とネットワーク107からフェッチされるデータは、ハードディスクドライブ140に呼応してメモリ136を使用する。
一つの例では、レイアウト編集アプリケーション121のエンコードされたプログラムが、CD−ROMやフロッピー(登録商標)ディスク上に格納され、対応するCD−ROMドライブ142やフロッピー(登録商標)ディスクドライブ141を通じて読み込まれ、ハードディスクドライブ140にインストールされる。
あるいは、別の例として、レイアウト編集アプリケーション121は、ネットワーク107からホストコンピュータ101内に読み込まれて、ハードディスクドライブ140にインストールされてもよい。
更に、レイアウト編集アプリケーション121を含む各種ソフトウェアは、磁気テープまたはROMまたは集積回路、光磁気ディスク、または、ホストコンピュータ101とその他のデバイス間における赤外線等の無線通信、PCMCIAカードのようなコンピュータ可読カード、そしてEメール通信やWEBサイト上の記録情報を持つインターネットやイントラネットを含む他の適当なコンピュータからホストコンピュータ101内にロードされてもよい。これらは、コンピュータ可読媒体の例であり、他のコンピュータ可読媒体が使用されてもよいことは明らかである。
図1Aにおいて、レイアウト編集アプリケーション121は、ホストコンピュータ101にバリアブルプリント(バリアブルデータプリント(VDP)ともいう)を実現させるものであり、3つのソフトウェアコンポーネント、即ち、ユーザインタフェース103、UIモデルアナライザ104、レイアウトエンジン105を含んでいる。
レイアウトエンジン105は、描画領域(部分領域)であるコンテナ(矩形の範囲)に与えられたサイズや位置の制限にしたがって、データベース119にレコード単位で格納されているバリアブルデータから1レコードずつ読み込む。そして、その読み込んだバリアブルデータとコンテナの制限とから、読み込んだバリアブルデータが流し込まれるコンテナのサイズや位置等のレイアウトを計算するソフトウェアコンポーネントである。
また、レイアウトエンジン105は、更に、コンテナに割り当てられたコンテンツであるコンテンツデータ(バリアブルデータ)を描画し、バリアブルデータドキュメントのイメージを生成する処理も行う。但し、本発明は、これに限るものではなく、レイアウトエンジン105は、各部分領域(コンテナ)のサイズと位置を決定するアプリケーションとして動作し、プリンタドライバ(不図示)に描画情報を出力することで、プリンタドライバがバリアブルデータドキュメントのイメージ描画処理を行い、印刷データを生成してもよい。
ユーザインタフェース103は、ユーザによるコンテナのレイアウトや属性設定を可能とし、ユーザにドキュメントテンプレートを作成させる。また、ユーザインタフェース103は、ドキュメントテンプレート内の各コンテナとデータソース(データべース119上のバリアブルデータ(コンテンツ))とを関連付けるメカニズムを提供する。
UIモデルアナライザ104は、ユーザインタフェース103が提供するコンテナや、アンカー、スライダー、リンク等のユーザインタフェース要素をレイアウトエンジン105が認識できる内部形式に変換する。即ち、UIモデルアナライザ104により、レイアウトエンジン105に変更を加えることなく、ユーザインタフェース103を他の表示/入力形式のユーザインタフェースに容易に置換可能になる。
ユーザインタフェース103とUIモデルアナライザ104は、通信チャネル123を介して通信し、UIモデルアナライザ104とレイアウトエンジン105は、通信チャネル124を介して通信する。
バリアブルデータドキュメント生成のためのデータソースは、一般的には、データベースアプリケーションを実行している、他のコンピュータで構成されるデータベースサーバ117上にある典型的なデータベース119が挙げられる。
ホストコンピュータ101は、ネットワーク107を介して、データベースサーバ117と通信する。レイアウト編集アプリケーション121は、ホストコンピュータ101、あるいは、一般的には、他のコンピュータで構成されるファイルサーバ115に保存されるドキュメントテンプレートを生成する。
また、レイアウト編集アプリケーション121は、コンテナに流し込まれるコンテンツであるバリアブルデータ(コンテンツデータ)とマージされたドキュメントテンプレートによって構成されたバリアブルデータドキュメントを生成する。これらのバリアブルデータドキュメントは、ホストコンピュータ101のローカルファイルシステム、ファイルサーバ115に保存される、あるいはプリンタサーバ109を介してプリンタ113に直接印刷される。
ここで、プリントサーバ109は、直接ネットワーク107に接続されていないプリンタ113に、ネットワーク機能を提供するコンピュータである。プリントサーバ109とプリンタ113は、典型的な通信チャネル111(例えば、USB、IEEE1394、無線LAN等)を介して接続される。
次に、バリアブルプリントシステム100の別構成例について、図1Cを用いて説明する。
図1Cは本発明の実施形態の情報処理システムの別構成を示す図である。
図1Cは、ネットワーク107上にエンジンサーバ227を追加して、このエンジンサーバ227にレイアウトエンジン225を構成した例を示している。つまり、ホストコンピュータ101内のレイアウトエンジン105を、エンジンサーバ227内で実現した構成である。この構成の場合、ホストコンピュータ101の処理負荷を軽減することができる。
尚、このエンジンサーバ227は、他のサーバと同様、典型的なコンピュータである。また、ファイルサーバ115に保存されたドキュメントテンプレートは、印刷や他の目的がある際、レイアウトエンジン225によってドキュメントを生成するためにデータベース119に保存されたデータと結合することができる。そのようなオペレーションは、ユーザインタフェース103を介して要求されるか、特定のレコードのみ印刷するように要求される。
次に、バリアブルデータプリントの概略について、図2を用いて説明する。
図2は本発明の実施形態のバリアブルデータプリントの概略を説明するための図である。
レイアウト編集アプリケーション121のユーザインタフェース103により、ユーザからの操作指示に従いページ上に複数のコンテナ181〜183を配置し、各コンテナに位置やサイズに関する制約条件を付与することによりドキュメントテンプレート180が生成される。
また、ユーザインタフェース103は、ドキュメントテンプレート180とデータソース190(例えば、データベース119)との関連付け、更に各コンテナとデータソース190内の各データフィールドとの関連付けを行う。各コンテナとデータソース190内の各データフィールドとの関連付けを示す関連付け情報は、ドキュメントテンプレート180内に記述され、該ドキュメントテンプレート180は、HDD140に格納される。また、データソース190は、レコード単位で項目データが記載されているファイルであり、HDD140に格納されている。
レイアウトエンジン105は、ユーザからの印刷指示もしくはプレビュー指示に応じて、ドキュメントテンプレート180の各コンテナ181〜182に、関連付け情報で関連付けられたデータをデータソース190から読み込み、レコード単位で流し込み(例えば、データレコード1のデータフィールドA〜Cをコンテナ181〜183へ流し込む)、流し込まれたコンテンツデータに応じて各コンテナのサイズ等を調整(レイアウト調整)する。
プレビュー指示の場合は、レイアウト調整されたドキュメントイメージを生成し、ディスプレイ装置144の画面上にプレビューとして表示するべく出力される。また、印刷指示の場合は、レイアウトエンジン105もしくはプリンタドライバを用いて生成したドキュメントイメージを印刷データとしてプリントサーバ109へ出力する。データレコード1,2,3…を順次処理することにより、バリアブルデータプリントが実現されることになる。
<レイアウト編集アプリケーションの説明>
以下、レイアウト編集アプリケーション121について説明する。
まず、ユーザインタフェース103によって実現されるユーザインタフェースの一例について、図3を用いて説明する。
[メインウィンドウ]
図3は本発明の実施形態のレイアウト編集アプリケーションのユーザインタフェース(表示画面)の一例を示す図である。
図3に示すように、ユーザインタフェース103は、操作時にアプリケーションウィンドウ301によって形成されたユーザインタフェースをディスプレイ装置144に表示させる。このウィンドウ301は、メニューバー302、ツールバー303、ワークエリア306とオプションのパレット311を有する。
メニューバー302とツールバー303は非表示にしたり、画面上の色々な場所に移動することが可能である。また、ワークエリア306は、マウス133の操作によってその場所を移動させることが可能である。また、パレット311はオプションであり、目的に応じて表示/非表示を制御することができる。更に、カーソル/ポインタ313は、マウス133の指示位置を表示する。
メニューバー302は、周知の技術として知られているように、メニューオプションの階層の下に拡張される多くのメニューアイテム304を有する。
ツールバー303は、アプリケーションの特別なモードによって非表示状態にする、または表示状態にすることが可能な多くのツールボタンとウィジット(部品)305を有する。
ルーラー308はオプションであり、ワークエリア306内のポインタ、ページ、ライン、マージンガイド、コンテナまたはオブジェクトの位置を示すために使用される。
パレット311は、バリアブルデータライブラリのような追加機能にアクセスするために使われる。パレット311は、移動、リサイズ、クローズをするためのウィンドウコントロール312を有する。また、パレット311は、ワークエリア306の前面に表示したり、あるいはオブジェクトの背面に隠すことができる。更に、パレット311は、アプリケーションウィンドウ301の範囲内のみにその表示を制限したり、アプリケーションウィンドウ301の外側にその一部或いは全体を表示することが可能である。
ツールバー303には、図4に示されるような、ユーザが選択可能な複数種類の『ボタン』403〜406が配置されている。
(1)選択ツールボタン403:コンテナの辺を選択、移動、サイズ変更、リサイズそしてロック/ロック解除のために使われる。コンテナの選択は、コンテナの周囲に選択ボックスをドラッグすることによりなされる。また、キーボード132上のCTRLキーを押しながら、複数のコンテナについて選択操作をすることによって、複数のコンテナを選択可能である。
(2)テキストコンテナツールボタン404:スタティックあるいはバリアブルテキストを有するコンテナを作成するために使用される。
(3)イメージコンテナツールボタン404:スタティックあるいはバリアブルイメージを有するコンテナを作成するために使用される。
(4)リンクツールボタン406:コンテナ間に関連付けを行うリンクを作成するために使われ、リンクの距離をコントロールするためにも使用される。
尚、これらのボタンは、周知の技術で知られているように、操作状況に合わせて変化するアイコンのツールチップとして実装される。
また、アプリケーションウィンドウ301は、ページ内に各コンテナやリンクをレイアウトすることで、基本レイアウトを決定することができる。基本レイアウトとは、バリアブルデータプリントで基本となるレイアウトのことである。基本レイアウト内の各コンテナが固定コンテナである場合は、すべてのレコードの印刷結果のレイアウトは同じになる。
また、基本レイアウト内の各コンテナが可変コンテナである場合は、レコード単位に読み込まれるデータの量やサイズにより各コンテナのサイズや位置が、制約の範囲内で変動することになる。よって、レイアウト編集アプリケーション121で作成されるドキュメントテンプレートは、あくまで基本レイアウトを決定するものであり、可変コンテナが含まれる場合は、最終的な印刷物のレイアウトは、流し込まれるコンテンツデータによりレイアウト調整されることになる。
[ドキュメントテンプレート]
図3において、ワークエリア306は、ドキュメントテンプレート(180:基本レイアウト)のデザインを表示・編集するために使われる。これは、ユーザがドキュメントテンプレートをデザインする過程において、印刷されるドキュメントの概観をユーザに提示することを可能とする。
ここで作成されるドキュメントテンプレートは、ユーザが希望するレイアウトであるが、本システムでは、コンテンツデータの量・サイズにより動的にレイアウトを決定するため、計算後のレイアウトは各レコードにおいて異なるものとなる。
よって、ユーザは、このドキュメントテンプレートと動的レイアウトの計算後のプレビューとを見比べることにより、データソース(190)とマージされたドキュメントが、コンテンツデータの量・サイズに基づいてどのように変化するかを容易に理解することができる。
但し、非常に多くのレコードの印刷を行う場合には、各レコードとドキュメントテンプレートを見比べる必要があるため、各レコードのレイアウトが動的レイアウト計算によりどれだけ変化したのかを容易に理解することはできず、後述する本発明特有のプレビュー表示を行う必要がある。
また、データソースがドキュメントテンプレートに関連付けられていた場合は、現在のドキュメントのプレビューができるように、対応するバリアブルテキストやイメージがレイアウトされた各コンテナに表示される。
ドキュメントテンプレートにおけるドキュメント構造とコンテナを描写する視覚的な手がかり(コンテナの枠線、アンカー、スライダー、リンク等)は、ドキュメントテンプレート作成時には常に表示される。また、バリアブルデータを流し込むプレビュー時には、視覚的な手がかりは、カーソルをコンテナ上に移動させたときや、コンテナを選択したときに表示される。
ワークエリア306は、スクロールバー307と、オプションのルーラー308と、ドキュメントテンプレート309を含む。ドキュメントテンプレート309は、ページが複数あることを示すことができる。また、ドキュメントテンプレート309は、図2のドキュメントテンプレート180に相当するものである
与えられたドキュメントテンプレートのページサイズは、周知の技術を用いて、ユーザによって指定される。例えば、メニューの「ファイル」から「ページ設定」を選択することでページサイズを設定するダイアログを表示し、そこでユーザが指定したページサイズが反映されることになる。
それぞれのドキュメントでの実際のページ数は、関連付けられたデータソース内のコンテンツデータ(バリアブルデータ)によって変化する可能性がある。これは、ドキュメントテンプレート内に可変表のようにバリアブルデータの量により大きさが変更されるフィールドが設定されている場合、1ページ内にバリアブルデータをフィットできないコンテンツデータが読み込まれると、追加のページが自動的に作成されるからである。
それぞれのページ内に示される境界線310は、ページ上の印刷可能なオブジェクトの最大幅を示す、任意のページマージンである。
また、図4では、1ページのドキュメントテンプレート309上に表示され得るオブジェクトの例を示している。
このようなオブジェクトとしては、コンテナ407、408と、任意に適用するアンカーアイコン409、固定されている辺411、414、固定されていない辺410、リンク412、そしてスライダー413がある。
アンカーアイコン409は、コンテナの矩形の角、辺、またはコンテナの中央に設定することが可能である。アンカーアイコン409が設定されると、設定された個所の位置が固定となる。つまり、図4の例では、アンカーアイコン409は、コンテナ407の左上の角に設定されているため、コンテナ407はバリアブルデータが流し込まれ、バリアブルデータの画像サイズもしくはテキスト量が多い場合には、右方向及び下方向に拡大可能であることを示している。
一方、アンカーアイコン409が辺に設定されている場合は、その辺が固定となり、その他の3辺の各方向に拡大可能である。また、アンカーアイコン409がコンテナの中央に設定されている場合は、コンテナの中央位置が固定となり、コンテナ矩形の中央位置が変わらないように、4方向に拡大可能である。
リンク412は、コンテナ407とコンテナ408が関連付けられていることを示しており、このリンク412に設定されている長さ(範囲指定可能)を保ちつつ、コンテナ408が右方向に移動可能であることを示している。スライダー413は、設定されている辺と水平方向に移動可能であることを示している。
[コンテナ]
次に、データベース中の各レコードに含まれる複数種類のデータフィールドのデータを差し込むためのフィールド領域であるコンテナについて説明する。
コンテナは、ドキュメントテンプレート内にバリアブルデータファイルから、固定あるいは可変のテキスト/イメージ(複数種類のデータフィールドのデータ)が流し込まれ、描画される描画領域(これを部分領域と呼ぶ)であり、図4に示されるように他のコンテナやオブジェクトと共にレイアウトされる。ユーザインタフェースを介して、ユーザからの操作指示により、コンテナは、マウス133の操作により移動、サイズ調整、再作成される。
より正確には、コンテナは、位置、最大/最小/デザイン時サイズ、マージされるコンテンツの最大/最小フォントサイズ、各辺が固定/可変であることなどを示すコンテナ属性を有している。以下、本実施形態におけるコンテナ属性の定義を示す。
(1)コンテナは、固定あるいは可変のコンテンツを持つ。可変コンテンツであるコンテンツデータ(バリアブルデータ)は、データソースから取得したデータがドキュメント毎、つまり、レコード毎に異なる可能性があるという意味でダイナミック(動的)であるということができる。但し、実施形態の可変コンテンツは、アニメーション化されたもの、あるいは他の方法で時間的に変化するコンテンツは印刷には適していないため、ここでは、意図していない。
同様に、固定コンテンツは、コンテナを使って生成される全てのドキュメントで、同じコンテナサイズで表示される。しかしながら、可変コンテンツとリンクが設定されている場合、可変コンテンツの影響を受けて、固定コンテンツはそれぞれのドキュメントで位置が異なる可能性がある。また、コンテナにマージされるコンテンツは各レコードで異なるため、表示内容は当然異なる。
(2)コンテナは、コンテンツに適用される背景色、ボーダー、フォント・スタイルのようなテキスト設定と同様の装飾機能を持っている。このような設定を、コンテナ属性と呼ぶ。コンテナ属性は、各コンテナごとに設定可能であるが、あるコンテナと同じコンテナ属性であるという設定を行うことも可能である。
(3)コンテナは、ドキュメントを生成する際にデータソースからのデータとマージされる。装飾機能は、どんな固定コンテンツでもそうであるように、印刷された出力物において可視である。可変コンテンツは、データソースからの特定のデータの表示を提供する。コンテナのこの表現は、例えば、印刷されるか、ディスプレイ装置144のスクリーン上に表示されるか、その両方が可能である。
(4)コンテナは、図4に示されるように視覚的な手がかりとしてのユーザインタフェースを有している。例えば、コンテナの編集そして表示設定のためのインタラクティブなグラフィカルユーザインタフェース(GUI)を有する。GUIコンポーネントは、ディスプレイ装置144のスクリーン上に表示されるが、ドキュメントとしては印刷されない。レイアウト編集アプリケーション121のユーザインタフェース103は、背景色やフォントのようなコンテナの装飾機能のいくつかを表示し、さらにコンテナの設定の編集や表示を可能にするための機能を有している。
ユーザインタフェースの機能の特別な目的の例としては、ボーダー、あるいは、コンテナのサイズや位置を対話的に変更、表示するための角アイコン、あるいはコンテナがデータソースからデータをマージされたとき、コンテナの動作を示すための上塗りした数、線、アイコン、テキストがある。
[コンテナの制約]
コンテナはそれぞれのドキュメントで表示されるコンテンツをどのように結びつけるかの制御に関する制約がある。これらの制約(固定/可変コンテンツをコンテナと結びつけることを含む)は、ユーザが一つのドキュメントテンプレートから多数のドキュメントの生成をコントロールする主要な方法である。
制約の一つの例には、『このコンテナのコンテンツの高さは最大4インチです』がある。また、別の制約の例には、『コンテナのコンテンツの左エッジは、それぞれのドキュメントにおいて同じ水平位置で表示しなければならない』がある。ここに記述される内容は、GUIを使ってこのような制約を表示、編集するためのいろいろな方法である。
イメージがページ上に定義された場所を持っているように、固定コンテンツの配置を指定するコンテンツプレイスホルダーは、デジタル印刷技術でよく知られている。コンテナは、位置とサイズを持ち、それらは公知の技術で知られている手法で編集され、表示される。よって、以下の説明では、バリアブルデータプリントに特化した方法における表示・編集に焦点を合わせる。
コンテナを用いることにより、ユーザは、ドキュメントにおけるコンテンツのサイズ(描画サイズ)や位置を指定することが可能となる。いく種類ものドキュメントが一つのドキュメントテンプレートから生成されるので、コンテナに多数の可能性と制約を設定することになるが、これらの設定(指定)や表示のために所定のユーザインタフェースが利用される。
1つのコンテナの辺は、関連付けられたコンテンツがドキュメント内で表示される仮想の境界線を定義する。従って、コンテナの左辺を論じることは、関連付けられたコンテンツが、各ドキュメントにおいて、表示可能であるエリア内の最も左の辺を論じることと同じである。同様に、コンテナの高さを論じることは、生成されたドキュメントで関連付けられたコンテンツの高さの制約を論じることとして理解される。本明細書では、ユーザインタフェース103を参照して、コンテナの辺あるいは大きさを論じるところで、この区別は明らかにされるであろう。
以下の記載において、コンテンツの表示を制限するために使われるある値を定義している用語『固定』は、全てのドキュメントで同じである。
(1)コンテナの幅が固定である場合、関連付けられたコンテンツに割り当てられる幅は、全てのドキュメントで同じになる。
(2)コンテナの高さが固定である場合、関連付けられたコンテンツに割り当てられる高さは、全てのドキュメントで同じになる。
(3)距離(リンクの長さ)が固定である場合、指定された距離は全てのドキュメントにおける制約となる。
(4)コンテナの左右辺が固定の場合、ページに関する辺の水平位置は全てのドキュメントで同じであることを意味している。但し、コンテナの高さあるいは垂直方向の位置は、変化する可能性がある。例えば、コンテナの左辺が固定である場合、関連付けられたコンテンツの表示位置は、全てのドキュメントでその左辺の位置は同じ水平位置となるが、あるドキュメントではページの上の方に表示され、他のドキュメントではページの下の方に表示される可能性がある。
(5)コンテナの上下辺が固定の場合、ページにおける辺の垂直位置は全てのドキュメントで同じとなることを意味している。但し、コンテナの幅あるいは水平位置はドキュメントによって変わる可能性がある。
(6)コンテナの垂直軸は、コンテナの右辺と左辺に平行で、それらの中間に位置される仮想の垂直線である。もしコンテナの垂直軸が固定なら、当該コンテナの左右辺の水平位置の平均(即ち、左右の中央位置)は、すべてのドキュメントで同じとなる。この制約において、コンテナの幅は変化する可能性がある。しかしながら、左右辺が垂直軸にもっとも遠いものからもっともものまで、垂直軸は全てのドキュメントで同じ水平位置となる。尚、コンテナの高さと垂直位置はこの制約によって影響されない。
(7)同様に、もし水平軸が固定なら、コンテナの上辺と下辺の平均が同一の垂直方向位置に配置される。但し、コンテナの幅と水平位置はこの制約によって影響されることはない。
(8)水平軸と垂直軸の両方が固定である場合、コンテナの中心位置が固定されていることを意味する。但し、コンテナの幅・高さは、この制約によって影響されない。
(9)コンテナの角位置、コンテナの辺の中間位置、あるいはコンテナの中心位置が固定である場合、それぞれの位置はすべてのドキュメントで同じ場所となる。例えば、もしコンテナの左上角が固定なら、配置されたコンテナの左上位置が全てのドキュメントで同じになることを意味している。
(10)垂直辺あるいは垂直軸は、ページの左辺もしくは右辺、あるいは左ページマージンもしくは右ページマージン、あるいは他の水平位置に関連付けされて固定することができる。同様に、水平辺あるいは水平軸はページの上辺もしくは下辺、あるいは上下ページマージン、あるいは他の垂直位置に関連付けされて固定することができる。
『固定』の反対は、コンテナの辺、軸、角、中間位置、あるいはドキュメント制約がドキュメント間(レコード間)で変化するかもしれないことを意味する『可変』である。例えば、ページ内では、バリアブルデータのサイズや量により、動的にレイアウトが変更されることを期待するが、特定のコンテナについては、大きさや位置を固定にしたり、また、ページの角のコンテナの四隅は固定にしたいということを所望する場合がある。
そのため、レイアウト編集アプリケーション121では、各コンテナ(部分領域)について、辺、軸、角、中間位置等を固定にするか、可変にするかを適宜設定できるようにしている。これにより、ユーザはドキュメントテンプレート180の基本レイアウトを決定する場合に、ユーザが所望とするように基本レイアウトを作成することができる。
[コンテナ表示・編集]
−−新規コンテナの作成方法−−
コンテナは、テキストコンテナとイメージコンテナの2種類で記述される。テキストコンテナはテキストおよび埋め込みのイメージを有する。イメージコンテナは、イメージだけを有する。
図4で示されるように、新規のテキストコンテナあるいはイメージコンテナは、テキストコンテナツール404あるいはイメージコンテナツール405をマウス133でクリックし、ドキュメントテンプレート309上に四角形をドラッグすることによって、当該ドキュメントテンプレート309上に作成される。
あるいは、コンテナは、所望のテキストコンテナツール404あるいはイメージコンテナツール405をアクティブにした後に、ドキュメントテンプレート309上で単にクリックすることによって作成されるようにしてもよい。この場合、マウス133のクリック操作に応じてデフォルトサイズのコンテナがテンプレート上に挿入されるとともに、当該新規コンテナの寸法等を設定するためのダイアログボックスあるいは他のプロンプトが提供される。
尚、コンテナサイズは、自動的に前もって定義されるようにしてもよいし、あるいは、計算されたスキーマによって作成・配置される等、種々の方法が考えられる。ここで、生成されたコンテナをマウス等の入力装置により選択し、右クリックでプロパティを指示する等の操作を行うことにより、コンテナのプロパティダイアログが表示され、コンテナの制約を設定することができる。
[コンテナの表示方法]
図5の(A)から(D)は、コンテナの辺に関する表示ルールを例示している。
レイアウト編集アプリケーション121は、コンテナの辺の状態を表現するために、実線2503(アイテム)あるいは点線2504を用いて辺を表すとともに、アンカー2506、2507、2509(コンテナの辺の近くに描画される線、形状、アイコン)、ハンドル2502(移動、修正するために領域の辺上あるいは近傍に描画されるコントロール点)、スライダー413(辺の両側に描画される短い並行線、図4参照)、拡縮アイコン2505、色を用いる。
図5の(A)〜(D)に示されるコンテナ表示方法のルールは、以下の通りである。
(1)それぞれの辺を固定するために、実線で描画する。
(2)幅が固定の場合は、左と右の辺を実線で描画する。
(3)高さが固定の場合は、上と下の辺を実線で描画する。
(4)軸は描画しない。
(5)(1)〜(3)によって描画されていないそれぞれの辺の近くには、拡縮アイコンが描画され、それらの辺を点線で描画する。
(6)垂直辺と水平辺、あるいは垂直軸と水平軸のそれぞれのペアで、もし両者が固定なら、それらの交差点にアンカーが描画される。
(7)それぞれの固定辺で、もし辺のどこにもアンカーが描画されていなければ、エッジの中央にスライダーが描画される。
(8)垂直及び水平辺、あるいは垂直及び水平軸のそれぞれのペアで、アンカーやスライダーが描画されていない場合、それらの交差点にハンドルが描画される。
ルール(1)、(2)、(3)で定義された線は、前述したように固定あるいは制限されているため実線で描画される。ルール(5)のように、可変の辺は、点線で描画される。ルール(6)、(7)、(8)で定義された固定された点は、アンカーを表示し、いくつかの固定された辺は、スライダーを表示し、他はハンドルを表示する。
上記のルールは、ユーザにより後で設定された制約が優先される。つまり、後で別の制約が設定された場合、上記のルールが描画されるべき辺に影響すれば、実線や点線の描画内容が変更されることになる。例えば、もしコンテナがとても小さくアイコンがお互い重なるか、あるいは他の表示機能を不明瞭にするならば、アイコンは異なって、あるいは省略されて描画される可能性がある。
可変の辺が描画される場所は、コンテナのコンテンツに依存する。後に説明するように、ドキュメントテンプレートにコンテンツがマージされて、ユーザインタフェースで可視になることを意味する、『動的な校正処理』が使われる。代わりの実行は、すべてのドキュメントで平均化されるコンテナのコンテンツエリアで、あるいは、可変の辺がユーザインタフェースで、どこにレイアウトされるべきか決定するほかの手段で使われることができる。
これらのコンテンツ表現は、コンテナの各辺の状態を表示するグラフィック機能を提供する。その表現の解釈は、下記の通りである。
(1)図4の辺410のように、点線は、コンテナのコンテンツに依存してドキュメント内の辺の位置が変化することを意味する。
(2)実線の辺414は固定されている、あるいはコンテナの幅・高さが固定されている(コンテナ408では、4辺が実線であり、両方が固定されている)ために制限された辺であることを意味する。
(3)アンカーは、辺および軸が交差した場所が固定されていることを意味する。それゆえ、アンカー点は、すべてのドキュメントの水平、垂直位置で現れることになる。アンカーは当然固定される。図4のアイコン409は、辺414の交差する位置が固定されていることを意味しているアンカーアイコンの例である。
(4)スライダーは、関係付けられた辺の長さが固定されているが、並行移動する可能性があることを意味する。例えば、図4で、スライダー413は、コンテナ408のコンテンツが、ドキュメント内で特定のダイアグラムで表される位置の、左あるいは右に表示されるかもしれない。
例えば、コンテナ408と関連付けられている(リンク設定されている)コンテナ407に流し込まれるデータの画像サイズもしくはテキスト量が少ない場合は、コンテナ407のサイズが小さくなるため、コンテナ408は、左方向にスライド(並行移動)してレイアウトされて表示されることになる。また、コンテナ407のサイズが大きくなる場合は、逆にコンテナ408は右方向にスライドしてレイアウトされることになる。
これらのアイコン・辺のいくつかあるいは全ては、どのツール、どのコンテナを、選択・ハイライトあるいはアクティブにするかによって、描画されたりされなかったりする。一般的に、コンテナの辺・アイコンはドキュメントテンプレートのデザインの手助けであるため、印刷物には描画されない。
尚、前述したように、コンテナの幅・高さの基本値・最小値・最大値の基本パターンの設定は、副次的なダイアログウインドウに表示される。
図5の(A)で、コンテナ2501は、幅・高さの両方が固定されていない(可変である)。固定された辺2503は実線で表現され、可変の辺504は点線で表現されている。拡縮アイコン2505は、隣接する辺2504が可変であることを示す。他の形態のインジケータを代わりにあるいは追加的に用いてもよい。
図5の(B)において、コンテナ2501は、幅・高さ両方が可変である。アンカーアイコン506が、交差している両方の辺2503の角の位置が固定されていることを明示的に表すべく追加されている。
図5の(C)において、コンテナ2501は、コンテナの幅及び高さの両方が可変であり、任意のアンカーアイコン2507で示されるような中心点の周りを平等に広がるという状態を示している。即ち、コンテナ2501は、アンカーアイコン2507を中心に拡大あるいは縮小が可能である。ここでの拡大/縮小は、アンカーアイコン2507の位置が常にコンテナ2501の中心点となるようにレイアウト調整される。
図5の(D)において、コンテナ2501は、上辺2508が固定されているが、幅・高さの両方が可変である。上辺2508の中心に位置付けられて示されるアンカーアイコン2509は、固定されている。そして、コンテナ2501の左辺・右辺(2502)は、アンカーアイコン2509を通って垂直な中心軸(垂直軸)の周りを、拡大・縮小する。
[リンク]
リンクは、コンテナとコンテナの関連を示している。関連とは、コンテナ間の距離を示しており、リンクによって関連付けられたコンテナ同士は、互いのレイアウト変更の影響を受けてレイアウト計算を実行する。例えば、上述のように、図4のリンク412は、コンテナ407とコンテナ408とを関連づけている。リンクの設定方法および、リンクで関連付けられたコンテナのレイアウト計算方法については、後述する。
[リンクの設定方法]
次に、コンテナ同士を関連付けるためのリンクの設定について説明する。
図6は本発明の実施形態1のリンクの設定処理を示すフローチャートである。また、図7は本発明の実施形態1のリンク設定時のユーザインタフェースの遷移例を示す図である。以下、図6及び図7を用いてコンテナにリンクを設定する方法について説明する。

まず、ステップS601において、レイアウト編集アプリケーション121は、ユーザインタフェースのワークエリア306上に編集対象の選択されたドキュメントテンプレートを表示する。リンクを設定するためには、リンクを設定するためのコンテナ(最低2つ)がドキュメントテンプレート上に作成されている必要がある。図7の(A)〜(C)では、ステップS601で、2つのコンテナを作成してリンクを設定する場合のユーザインタフェースの遷移例を示している。
次に、ステップS602において、レイアウト編集アプリケーション121は、リンクツールを選択状態にする(図4のボタン406をクリックすることにより選択状態となる)。
図7の(A)において、コンテナ701と702はすべて固定されている辺で構成されているものとする。また、703と704は、図4の409と同じであり、アンカーを意味する。705は、マウスポインタを意味している。
さて、リンクツールが選択状態となっている間に、ユーザはリンクを設定する2つのコンテナのうちの一方(コンテナ701とする)をクリックして選択する。この操作に応じて、レイアウト編集アプリケーション121のユーザインタフェース103は、第1のコンテナが選択されたことを認識し(ステップS603)、選択されたコンテナを特定する情報を保持する。
また、以降のマウスカーソルの移動に応じた軌跡を画面に表示するようにする。例えば、図7の(B)における線分706は、(A)の状態におけるクリック位置と現在のマウスポインタ705の位置とを結んだ線を示しており、このUIによりどの位置にリンクが設定されるのかをユーザに明示することができる。
次に、ユーザは、図7の(B)で示されるように、もう一方のコンテナ(コンテナ702)までマウスポインタ705を移動してクリックする。この操作に応じて、ユーザインタフェース103は第2のコンテナが選択されたことを認識し(ステップS604)、選択されたコンテナを特定する情報を保持する。
レイアウト編集アプリケーション121は、ステップS603で選択された第1のコンテナと、ステップS604で選択された第2のコンテナとの間にリンクを設定する。
こうして、ユーザにより選択された2つのコンテナ701、702の間にリンクが設定されると、リンク707を表示する(ステップS605)。更に、このリンク設定を受けて、コンテナの表示状態は、図7の(C)の状態になる(ステップS606)。
即ち、リンクが設定されたことにより、コンテナのUIが自動的に変更される。ここでは、リンクによって関連付けられた辺が可変となり、点線で示されている状態を示している。つまり、図7の(C)において、708は点線で示されている辺であり、前述した通り可変の辺を示すものである。
尚、図7の(C)のようなコンテナの辺の状態の変化は、リンクを設定したことによりコンテナの辺を可変にする必要が生じたことにより自動的に実行されたものであり、リンクを設定したにもかかわらず全ての辺が固定であるという矛盾の発生を防ぐことを目的としている。また、709は図5の2505と同じで、リンクを設定したことにより、コンテナが変化できる方向をユーザに視覚的に示したマークである。また、図7の(C)の例では、左のコンテナの右辺と右のコンテナの左辺が可変な状態へ変化したが、これは一例であり、例えば、右コンテナが図4のスライダー413を持つ設定に変化してもかまわない。
<レイアウトエンジンによるレイアウト計算処理>
[レイアウト計算方法(全体フロー)]
実施形態1のレイアウト編集アプリケーション121は、ユーザインタフェース103を用いてコンテナを作成し、そのコンテナ間に関連付け(リンク設定)を行ってレイアウトを作成するレイアウトモードと、レイアウトエンジン105により、作成したレイアウトにデータソースの各レコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューするプレビューモードに分けられる。
このプレビューモードにおいて、実際のレコードが挿入され、レイアウトを計算する。但し、プレビューモードは、表示上でのレイアウト計算である。実際に印刷する場合においても、レイアウトエンジン105が各コンテナにデータを挿入してレイアウトを計算するが、その際の計算方法はプレビューモードと同じである。
図8は本発明の実施形態1のレイアウト計算処理を示すフローチャートである。
まず、プレビューモードが選択される(ステップS2801)。プレビューモードになったら、レイアウト編集アプリケーション121は、ユーザにプレビューするレコードをデータソースより選択させ、選択されたレコードの各フィールドデータを各コンテナに挿入する(ステップS2802)。
各コンテナへフィールドデータを挿入すると、レイアウト編集アプリケーション121は、そのレコードをレイアウトするためのレイアウト計算を行い、必要に応じてレイアウト調整を行う(ステップS2803)。尚、ステップS2803におけるレイアウト計算の詳細については後述する。
そして、レイアウト編集アプリケーション121は、ステップS2803で計算されたレイアウトを表示(プレビュー)する(ステップS2804)。レイアウト編集アプリケーション121は、他のレコードについてもプレビューを行うかどうかをユーザの指示により判定する(ステップS2805)。ステップS2805で、他のレコードについてプレビューを行う必要がない場合(ステップS2805でNO)、プレビューモードを終了する(ステップS2807)。
一方、他のレコードについてプレビューを行う場合(ステップS2805でYES)、レイアウト編集アプリケーション121は、他のレコードを選択して再度レイアウト計算を行い、プレビューを行う(ステップS2806)。
尚、プレビューモードでなく印刷時においては、印刷するレコード全てについて順にレイアウトの計算を行う。従って、ステップS2804は存在せず、ステップS2805は印刷するレコードを全て処理したかの判断を行う。ステップS2803で、レイアウト計算された結果を、描画出力して出力し、プリンタドライバを用いて印刷データとして生成し、プリンタに印刷データが出力される。この場合、全てのレコード(印刷対象の指定された全レコード)について印刷データの出力が終了した時点で、本処理を終了することになる。
[レイアウト計算方法(詳細)]
次に、上記ステップS2803のレイアウト計算の詳細について、図9を用いて説明する。
図9は本発明の実施形態1のレイアウト計算処理の詳細を示すフローチャートである。
尚、図9は、レイアウト計算処理(動的レイアウト計算処理)についてのみ説明するためのフローチャートであるため、バリアブルデータプリントの1レコードの印刷/プレビュー時のレイアウト計算処理に相当する。複数レコードの場合は、下記の処理が繰り返されることになる。
また、この動的レイアウト計算処理は、ドキュメントテンプレートに対して、データベース119から各レコードのコンテンツを流し込み(マージ)、各コンテナ属性と、各コンテンツの量・サイズに応じて、動的にレイアウト計算を行う。更に、図9の処理は、レイアウト編集アプリケーション121のレイアウトエンジン105が、プロセッサ135及びメモリ136を用いて動作する制御となる。
まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を設定する(ステップS2901)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。
例えば、図10を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。
従って、コンテナA、Bが集合1、コンテナC、Dが集合2となる。即ち、リンクによって接続されたコンテナ群を一つの集合として特定する。前述したように、21101はアンカー、21102は固定された辺、21103はコントローラ、21104は可変の辺の変化方向を示している矢印、21105は可変の辺、21106はリンク、そして、21107はスライダーを示している。
次に、レイアウト編集アプリケーション121は、ステップS2901で設定したコンテナの集合から、レイアウトを計算するために一つを選択する(ステップS2902)。そして、選択したコンテナの集合について、レイアウトの計算を行う。
まず、選択したコンテナの集合に含まれる可変要素である2つのコンテナA、Bについて、流し込まれるデータの画像サイズもしくはテキスト量から各コンテナがなにも制約を受けない場合の大きさを計算する。
具体的には、レイアウト編集アプリケーション121は、コンテナAが画像データ用コンテナであるか、テキスト用コンテナであるかを判定する。この判定は、前述したように、コンテナに対して設定されている属性により判定できる。
次に、レイアウト編集アプリケーション121は、コンテナAに流し込まれるデータを読み込み、コンテナAが画像データ用コンテナである場合は、その画像データのサイズ(幅、高さのピクセル数、および解像度)がコンテナAの制約を受けない場合の大きさになる。
また、コンテナAがテキスト用コンテナである場合は、そのテキストデータも文字数と、コンテナAのコンテナ属性で指定されているフォントタイプ、フォントサイズ、文字ピッチ、行ピッチなどの文字属性に基づいて、コンテナAに流し込まれるべきデータ量が計算できる。
ここで、テキスト用コンテナの場合は、コンテナAの縦横比が制約を考えないと決定できないため、制約を当てはめる。図10の例では、コンテナAは、左上および左下の角にアンカーが設定されているため、高さ(縦方向)が固定となる。よって、レイアウト編集アプリケーション121は、コンテナAの基本パターンとして設定されている幅(横方向)のコンテナAに、計算したデータ量(テキスト量)の文字を流し込めるか否かを判定する。
すべての文字を流し込めると判定された場合は、コンテナAは、基本パターンで設定されているサイズ(幅、高さ)に変更はない。また、すべての文字を流し込めないと判定された場合は、コンテナAは、アンカー設定により高さが固定であるため、横方向に伸びることになる。ここで、レイアウト編集アプリケーション121は、コンテナAの幅がどれだけになると、計算したデータ量の文字を流し込めるかを計算し、コンテナAのサイズを算出する。
次に、レイアウト編集アプリケーション121は、レイアウトされるコンテナのサイズが、実際のコンテンツのサイズとできる限り差が少なくなるように、レイアウトの最適化を行う(ステップS2903)。
レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。
レイアウト編集アプリケーション121は、ステップS2902で算出したコンテナの集合のサイズ、つまり、コンテナAとコンテナBとリンク21106(ここでは固定リンク)の合計サイズを計算し、この合計サイズと、基本レイアウトにおける当該コンテナの集合のサイズ(図10の例ではコンテナAとコンテナBのそれぞれのアンカーアイコンの距離に相当する)との差を計算する。コンテナAやコンテナBの幅が大きくなると、前ステップで計算されている場合は、差分値が発生する。レイアウト編集アプリケーション121は、この差分値をコンテナの集合の各要素に均等に分配することでレイアウト調整を行う。
次に、レイアウト編集アプリケーション121は、レイアウトの最適化を行い、そのレイアウトがルールに違反しているか否かを判定する(ステップS2904)。ルールに違反していない場合(ステップS2904でYES)、ステップS2905に進む。一方、ルールに違反している場合(ステップS2904でNO)、ステップS2903に戻り、再度ルールを違反しないように計算をする。
ここでルールとは、レイアウト作成時にユーザによって設定される制限であり、コンテナのサイズの可変範囲や位置の制限、可変リンクの場合はリンクの長さの変化の制限などである。ルールを違反しないようにレイアウトが計算されたら、その集合のレイアウトは完成される。
尚、ルールに違反していないか否かは、レイアウト計算後のコンテナの位置やサイズ等を、テンプレートデータのコンテナ情報及びリンク情報を参照して、固定された辺や角点や軸や中心点の位置、固定された辺のサイズなどと比較し、固定すべきものが移動していないか、あるいは、移動の制限を越えていないかなどが判定される。
ルールに違反しないようにレイアウト計算がされたら、即ち、着目コンテナ集合内の各コンテナサイズ及び位置が決定されたなら、その集合のレイアウトは完成される。
但し、最適化は、コンテンツがテンプレートで初期的に定義されたコンテナに収まらない場合に行えばよいので、上記最適化の手順は、関連づけられたコンテナのサイズを変更することなく対応するコンテンツが納まるのであれば、行わなくとも良い。その場合には、レイアウト処理は各コンテナに対応するコンテンツの充填であり、コンテナサイズの変更は伴わない。
そして、ステップS2902〜ステップS2904の処理をページ上のすべての集合について施し、レイアウト編集アプリケーション121は、ページ全体のレイアウトの計算が終了したか否かを判定する(ステップS2905)。計算が終了していない場合(ステップS2905でNO)、ステップS2902に戻る。一方、計算が終了している場合(ステップS2905でYES)、処理を終了する。
次に、上述のレイアウト計算時のUI例について、図11を用いて説明する。
図11は本発明の実施形態1のレイアウト計算処理におけるユーザインタフェースの一例を示す図である。
図11の(A)は、あるレコードが挿入されレイアウトが決定されている状態を表している。21001と21002はアンカー、21003と21004は固定された辺、21005は可変の辺、21006は可変の辺の変化方向を示している矢印、21008はリンクをそれぞれ示している。この状態において、レコードを変更し、異なったサイズのコンテンツを挿入する。
図11の(B)は、図11の(A)の状態に新しいコンテンツのサイズを重ねて示している。21009はそれぞれのコンテナに挿入されるコンテンツのサイズを表している。そして、レイアウト計算が行われる。
図11の(C)は、レイアウト計算された結果を示している。計算後の各コンテナのサイズは、実際に挿入されるコンテンツのサイズと同等に差異があるように計算され、且つ前述したルールを違反しないように計算される。図11の(C)で示されるように、図11の(B)で示した挿入されるコンテンツサイズ21009と計算後のコンテンツサイズ(010は、双方において同等な差異がある。
次に、本実施形態のバリアブルプリントシステムの概要について、図12を用いて説明する。尚、レイアウト編集アプリケーション121は、ドキュメントテンプレートとコンテンツをマージした文書に対して、印刷体裁を設定することが可能である。
図12は本発明の実施形態のバリアブルプリントシステムの概要を説明するための図である。
501は、レイアウト編集アプリケーション121のアプリケーションウィンドウ、502は複数種類のプレビューモード(原稿プレビューモード、印刷プレビューモード、簡易プレビューモード、バリアブルプレビューモード)から任意のプレビューモードを切り替える(選択する)ためのドロップダウンメニューである。503は通常のドキュメントのプレビュー状態、504はバリアブルデータドキュメントのプレビュー状態、505はバリアブルデータの各レコード、506はマウスポインタを示している。
図12において、ドキュメントテンプレートは3ページから構成されており、1ページ目と3ページ目は、バリアブル領域(コンテナ)を含んでおらず、2ページ目はバリアブル領域(コンテナ)を含んでいる例であり、バリアブルプレビューが選択されている状態の表示画面を表している。
原稿プレビューとは、複数ページからなるドキュメントテンプレートの状態を表示するためのプレビューである。即ち、原稿プレビューでは、各ページに、固定コンテンツ(予めドキュメントテンプレートに配置されているもの)が表示される。しかし、各レコードのコンテンツのマージは行っていないため、コンテナ領域は空白となる。
印刷プレビューとは、レイアウト編集アプリケーション121で設定した印刷体裁を反映して、物理ページの状態を表示するためのプレビューである。例えば、両面印刷が設定されている場合は、表面と裏面の表示位置を高さをずらして表示する。また、Nup(1枚の用紙に複数の論理ページが配置される)設定がなされている場合は、原稿ページ(論理ページ)をNページ分1枚の用紙に配置した状態で表示する。尚、この印刷プレビューも各レコードのコンテンツのマージは行っていないため、コンテナ領域は空白となる。
簡易プレビューとは、表示内容を簡略化したものであり、実際に印刷される内容の文字、図形、画像は省略され、ページ構成だけを認識可能にするためのプレビューである。
バリアブルプレビューとは、複数ページからなるドキュメントテンプレートに対して、データベース119から取り出したコンテンツをマージした際の各論理ページの状態を表示するためのプレビューである。よって、バリアブルプリントされるページ(図12の例では、2ページ目)は、複数レコード分プレビュー表示されることになる。
本発明では、複数のプレビューモードを選択でき、バリアブルプレビューモードを選択することによって、変化量に応じてバリアブルデータのレコードをソート(並び替え)することができる。特に、本実施形態では、バリアブルデータドキュメント504を構成するレコードの表示順を、レイアウトの変化量に応じて切り替えることができる。
次に、本実施形態のバリアブルプリントシステムが実行する処理について、図13を用いて説明する。
図13は本発明の実施形態のバリアブルプリントシステムが実行する処理を示すフローチャートである。
尚、この処理は、レイアウト編集アプリケーション121によって実現される。
処理がスタートすると、ステップS1で、ユーザインタフェース(後述する切替指定ウィンドウ(図17))を用いて、プレビューモード及び変化量の基準を指定することで、レイアウト編集アプリケーション121は、バリアブルデータの表示順の条件(以下、表示条件)を受け付ける。
次に、ステップS2で、レイアウト編集アプリケーション121は、指定されたプレビューモードが変化量順であるか否かを判定する。
変化量順でない場合(ステップS2でNO)、レコード順にプレビュー表示を行なうため、各レコードのコンテンツデータをデータベース119より取り込み、ドキュメントテンプレートにマージし、図9で説明した動的レイアウト計算処理を行なったレイアウト状態を縮小処理(サムネイル化)し、図12に示すように、バリアブルプレビュー表示を行い、処理を終了する。
一方、変化量順である場合(ステップS2でYES)、ステップS3に進む。
ステップS3で、レイアウト編集アプリケーション121は、指定された変化量の基準(基準単位)に基づいて、動的レイアウトの変化量を算出する。この変化量の算出処理については、図14乃至図16で後述する。続いて、ステップS4で、レイアウト編集アプリケーション121は、変化量の算出後、算出した変化量に応じて全てのバリアブルデータのソートを行う。
次に、ステップS5で、レイアウト編集アプリケーション121は、変化量順にソートする場合の出力件数指定があるか否かを判定する。出力件数の指定は、後述する図17の切替指定ウィンドウのチェックボックス1004にてユーザが設定可能である。表示条件に出力件数指定がある場合(ステップS5でYES)、ステップS7に進み、指定された出力件数分のバリアブルデータのレコードを表示部に出力することでバリアブルプレビュー表示を行う。
一方、表示条件に出力件数指定がない場合(ステップS5でNO)、ステップS6に進み、レイアウト編集アプリケーション121は、動的レイアウト済のすべてのバリアブルデータのレコードを表示部に表示する。
ステップS6またはステップS7のプレビュー後、レイアウト編集アプリケーション121は、ユーザに対して、プレビューされているバリアブルページの編集を許可する。ユーザは、このタイミングで、変化量の大きいレコードについて、レイアウトの極点なずれを微調整でき、全レコードについて、ユーザが所望しないほどの変化量のない状態で各レコードのレイアウトを決定することができる。
次に、ステップS8において、レイアウト編集アプリケーション121は、ユーザによりレイアウトの編集処理が行われたか否かを判定する。編集がない場合(ステップS8でNO)、処理を終了する。一方、編集がある場合(ステップS8でYES)、ステップS9に進み、レイアウトの最終確認及び編集が終了したとみなし、該当バリアブルデータレコードの動的レイアウトの変化量を0に設定して、編集後のドキュメント内容を保存し、ステップS4に戻り、再ソートを行う。
本発明では、ステップS3において、複数の指標をもとに動的レイアウトの変化量を算出する。
指標の一例として、動的レイアウト変更前後のコンテナの縦横比の変化量(崩れ度と定義する)、動的レイアウト変更前後の任意の始点からのコンテナの移動量(移動度と定義する)、動的レイアウト変更前後のコンテナの面積の変化量(拡縮度と定義する)を定義する。本発明では、これらの指標をユーザが選択することによって、様々な指標でバリアブルデータのソートを切り替えることが可能である。
次に、ステップS3の動的レイアウトの変化量の算出の一例として、崩れ度算出の処理の詳細を図14を用いて説明する。
図14は本発明の実施形態の崩れ度算出の処理の詳細を示すフローチャートである。この制御も、レイアウト編集アプリケーション121の一部のモジュールにより実現される。
本発明におけるレイアウトの崩れ度算出の処理がスタートすると、ステップS701で、レイアウト編集アプリケーション121は、ドキュメントテンプレート内のすべてのオリジナル(ユーザがデザインした状態)のコンテナの縦横比(縦サイズ/横サイズ)を取得する。
尚、図14では、ドキュメントテンプレート内の各コンテナをj(1≦j≦m)で表し、また、縦横比をOjで表している。
次に、ステップS702で、レイアウト編集アプリケーション121は、表示条件の設定に基づいて、ユーザによるソート単位指定の有無を判定する。図17のチェックボックス1004のチェックに基づいて、ソート単位指定がある場合(ステップS702でYES)、ステップS703に進み、レイアウト編集アプリケーション121は、ソート単位に該当するすべてのコンテナを処理用コンテナに設定する。
一方、ソート単位指定がない場合(ステップS702でNO)、ステップS704に進み、レイアウト編集アプリケーション121は、すべてのコンテナを処理用コンテナに設定する。
処理用コンテナの設定終了後、すべてのバリアブルデータのレコード及びコンテナに対して、以下のステップS705〜ステップS713のループ処理が実行される。
尚、図14では、すべてのバリアブルデータのレコードをi(1≦i≦n)で表している。
まず、ステップS705で、処理対象のレコードを選択する。次に、ステップS706で、処理対象のコンテナを選択する。ステップS707で、レイアウト編集アプリケーション121は、選択したコンテナが処理用コンテナであるか否かを判定する。
処理用コンテナである場合(ステップS707でYES)、ステップS708に進み、レイアウト編集アプリケーション121は、図9の動的レイアウト計算処理を用いて、動的レイアウト後の各コンテナの縦横比Mj(縦サイズ/横サイズ)を算出する。一方、処理用コンテナでない場合(ステップS707でNO)、ステップS709に進み、オリジナルのコンテナの縦横比OjをMjに設定する。
ステップS710で、動的レイアウト後の縦横比Mjを算出後、レイアウト編集アプリケーション121は、各コンテナ単位の崩れ度C_Cjを算出する。
本発明における崩れ度は、オリジナルの縦横比Ojと動的レイアウト後の縦横比Mjの大きい方の値を小さい方の値で割った値となる。即ち、Mj≦Ojの場合はC_Cj=Oj/Mj、Oj<Mjの場合はC_Cj=Mj/Ojとなる。
そして、ステップS711で、すべてのコンテナに対する処理が終了したか否かを判定する。終了していない場合(ステップS711でNO)、ステップS706に戻り、処理対象の次のコンテナを選択する。一方、終了している場合(ステップS711でYES)、ステップS712に進み、バリアブルデータのソート単位の崩れ度Ciを算出する。ここで、ソート単位の崩れ度は、該当するコンテナの崩れ度の合計値となる。
次に、ステップS713で、すべてのバリアブルデータのレコードに対する処理が終了したか否かを判定する。終了していない場合(ステップS713でNO)、ステップS705に戻り、処理対象の次のレコードを選択する。一方、終了した場合(ステップS713でYES)、処理を終了する。
次に、ステップS3の動的レイアウトの変化量の算出の一例として、移動度算出の処理の詳細を図15を用いて説明する。
図15は本発明の実施形態の移動度算出の処理の詳細を示すフローチャートである。この制御も、レイアウト編集アプリケーション121の一部のモジュールにより実現される。
本発明におけるレイアウトの移動度算出の処理がスタートすると、ステップS801で、ドキュメントテンプレート上の始点及び各コンテナの基点を決定する。次に、ステップS802で、レイアウト編集アプリケーション121は、始点とすべてのオリジナルのコンテナの基点との距離を取得する。
尚、図15では、ドキュメントテンプレート内の各コンテナをj(1≦j≦m)で表し、また距離をOdjで表している。
次に、ステップS803で、レイアウト編集アプリケーション121は、表示条件の設定に基づいて、図17のチェックボックス1004のチェックに基づいて、ユーザによるソート単位指定の有無を判定する。
ソート単位指定がある場合(ステップS803でYES)、ステップS804に進み、レイアウト編集アプリケーション121は、ソート単位に該当するすべてのコンテナを処理用コンテナに設定する。一方、ソート単位指定がない場合(ステップS803でNO)、ステップS805に進み、レイアウト編集アプリケーション121は、すべてのコンテナを処理用コンテナに設定する。
処理用コンテナの設定終了後、すべてのバリアブルデータのレコード及びコンテナに対して、以下のステップS806〜ステップS814のループ処理が実行される。
尚、図15では、すべてのバリアブルデータのレコードをi(1≦i≦n)で表している。
まず、ステップS806で、処理対象のレコードを選択する。次に、ステップS807で、処理対象のコンテナを選択する。ステップS808で、レイアウト編集アプリケーション121は、選択したコンテナが処理用コンテナであるか否かを判定する。
処理用コンテナである場合(ステップS808でYES)、ステップS809に進み、レイアウト編集アプリケーション121は、図9の動的レイアウト計算処理を用いて、動的レイアウト後の各コンテナの基点と始点間の距離Mdjを算出する。一方、処理用コンテナでない場合(ステップS808でNO)、ステップS810に進み、オリジナルのコンテナと始点間の距離OdjをMdjに設定する。
ステップS811で、動的レイアウト後のコンテナと始点間の距離Mdjを算出後、レイアウト編集アプリケーション121は、各コンテナ単位の移動度C_Tjを算出する。
本発明における移動度は、オリジナルのコンテナと始点間の距離Odjと動的レイアウト後のコンテナと始点間の距離Mdjの差分の絶対値で表される。
そして、ステップS812で、すべてのコンテナに対する処理が終了したか否かを判定する。終了していない場合(ステップS812でNO)、ステップS807に戻り、処理対象の次のコンテナを選択する。一方、終了している場合(ステップS812でYES)、ステップS813に進み、バリアブルデータのソート単位の移動度Tiを算出する。ここで、ソート単位の移動度は、該当するコンテナの移動度の合計値となる。
次に、ステップS814で、すべてのバリアブルデータのレコードに対する処理が終了したか否かを判定する。終了していない場合(ステップS814でNO)、ステップS806に戻り、処理対象の次のレコードを選択する。一方、終了した場合(ステップS814でYES)、処理を終了する。
次に、ステップS3の動的レイアウトの変化量の算出の一例として、拡縮度算出の処理の詳細を図16を用いて説明する。この制御も、レイアウト編集アプリケーション121の一部のモジュールにより実現される。
図16は本発明の実施形態の拡縮度算出の処理の詳細を示すフローチャートである。
本発明におけるレイアウトの拡縮度算出の処理がスタートすると、ステップS901で、ドキュメントテンプレート内のすべてのオリジナルのコンテナの面積を取得する。
尚、図16では、ドキュメントテンプレート内の各コンテナをj(1≦j≦m)で表し、また、面積をMajで表している。
次に、ステップS902で、レイアウト編集アプリケーション121は、表示条件の設定に基づいて、図17のチェックボックス1004のチェックに基づいて、ユーザによるソート単位指定の有無を判定する。
ソート単位指定がある場合(ステップS902でYES)、ステップS903に進み、レイアウト編集アプリケーション121は、ソート単位に該当するすべてのコンテナを処理用コンテナに設定する。一方、ソート単位指定がない場合(ステップS902でNO)、ステップS904に進み、レイアウト編集アプリケーション121は、すべてのコンテナを処理用コンテナに設定する。コンテナに設定する。
処理用コンテナの設定終了後、すべてのバリアブルデータのレコード及びコンテナに対して、以下のステップS905〜ステップS913のループ処理が実行される。
尚、図16では、すべてのバリアブルデータのレコードをi(1≦i≦n)で表している。
まず、ステップS905で、処理対象のレコードを選択する。次に、ステップS906で、処理対象のコンテナを選択する。ステップS907で、レイアウト編集アプリケーション121は、選択したコンテナが処理用コンテナであるか否かを判定する。
処理用コンテナである場合(ステップS907でYES)、ステップS908に進み、レイアウト編集アプリケーション121は、図9の動的レイアウト計算処理を用いて、動的レイアウト後の各コンテナの面積Mjを算出する。一方、処理用コンテナでない場合(ステップS907でNO)、ステップS910に進み、オリジナルのコンテナの面積OajをMajに設定する。
ステップS910で、レイアウト編集アプリケーション121は、動的レイアウト後の面積Majを算出後、各コンテナ単位の拡縮度C_Ajを計算する。
本発明における拡縮度は、オリジナルの面積Oajと動的レイアウト後の面積Majの大きい方の値を小さい方の値で割った値となる。即ち、Maj≦Oajの場合はC_Aj=Oaj/Maj、Oaj<Majの場合はC_AjはMaj/Oajとなる。
そして、ステップS911で、すべてのコンテナに対する処理が終了したか否かを判定する。終了していない場合(ステップS911でNO)、ステップS906に戻り、処理対象の次のコンテナを選択する。一方、終了している場合(ステップS911でYES)、ステップS912に進み、レイアウト編集アプリケーション121は、バリアブルデータのソート単位の拡縮度Aiを算出する。ここで、ソート単位の拡縮度は、該当するコンテナの拡縮度の合計値となる。
次に、ステップS913で、すべてのバリアブルデータのレコードに対する処理が終了したか否かを判定する。終了していない場合(ステップS913でNO)、ステップS905に戻り、処理対象の次のレコードを選択する。一方、終了した場合(ステップS913でYES)、処理を終了する。
次に、バリアブルデータの表示方法の切替を指定する切替指定ウィンドウについて、図17を用いて説明する。
図17は本発明の実施形態のバリアブルデータの表示方法の切替を指定する切替指定ウィンドウを示す図である。
バリアブルデータのプレビュー時(図13のステップS1の処理時)には、切替指定ウィンドウ1000では、デフォルトでは、レコード順に表示するチェックボックス1001(レコード順指定項目)にチェックされており、切替指定ウィンドウ1000で変化量算出の指標を選択することによって、バリアブルデータの表示順を切り替えることができる。
変化量順にソートしたい場合は、変化量順のチェックボックス1002(変化量順指定項目)にチェックを入れ、同時に、チェックボックス群1003から変化量算出の指標を選択する。さらに、変化量順でソートする場合には、チェックボックス1004(ソート単位項目)で、変化量の大きい順の上位何件を表示するか指定することも可能である。
本発明では、バリアブルデータをユーザの指定した基準における変化量に応じてソート可能であると同時に、変化量算出の領域、即ち、ソート単位を指定することができる。変化量算出の領域の一例として、最小単位であるコンテナ単位、バリアブルデータのデータが複数ページに及ぶ場合の任意のページ単位、レコード単位を定義する。ユーザは変化量算出の領域を、マウス133等の入力装置を用い、指定することができる。
次に、変化量算出の領域の選択例について、図18A〜図18Cを用いて説明する。
図18A〜図18Cは本発明の変化量算出の領域の選択例を示す図である。
図18A〜図18Cでは、バリアブルデータの1レコード1101を示している。1102は各コンテナを示し、1103はマウスポインタを示す。1104はマウスポインタ1103によって変化量算出の領域を選択した様子を示している。
ここで、図18Aは、バリアブルデータ中の任意のコンテナを選択した場合を示している。また、図18Bは、バリアプルデータ内の任意のページを選択した場合を示している。更に、図18Cは、バリアブルデータ全体(レコード全体)を選択した場合を示している。
尚、図18Bに示されるように、1レコードが複数ページに渡るバリアブルデータ内の任意のページが指定された場合、バリアブルデータのあるレコードにおいては指定ページが存在しない場合が予想される。本発明では、このような場合、該当バリアブルデータの変化量を0とみなし、ソートを行う。
次に、図14のステップS9の処理時、つまり、レイアウト編集後の再ソートを指定するか否かを確認する確認ウィンドウについて、図19を用いて説明する。
図19は本発明の実施形態のレイアウト編集後の再ソートを指定するか否かを確認する確認ウィンドウを示す図である。
バリアブルデータのレコードを変化量順にソートした後レイアウトの編集があった場合、図19の確認ウィンドウ1200が表示され、レイアウト編集後に再レイアウトを行うか否かを指定することができる。
ユーザは、再レイアウトを行う場合は、「する」チェックボックス1201にチェックを入れる。一方、再レイアウトを行わない場合は、「しない」チェックボックス1202にチェックを入れる。
次に、デフォルトのバリアブルデータのプレビューについて、図20を用いて説明する。
図20は本発明の実施形態のデフォルトのバリアブルデータのプレビューの様子を示す図である。
1301はアプリケーションウィンドウ、1302は通常のドキュメントのプレビュー状態、1303はバリアブルデータドキュメントのプレビュー状態を示している。1304〜1307はバリアブルデータのレコードA、B、C、Dを示しており、1304〜1306の各レコードはそれぞれ2ページで構成され、1307のレコードは1ページで構成されていることを示している。
さらに、図20では、1304、1305、1306、1307の順にバリアブルデータの参照元データ(レコードのデータ)が格納されている。特に、本発明のデフォルトのプレビューでは、参照元データの所定順序(例えば、データベースに格納されている格納順)にバリアブルデータのレコードが表示されることを示している。また、1308はマウスポインタを示している。
次に、指定された変化量に基づくバリアブルデータのプレビューについて、図21A〜図21Cを用いて説明する。
図21A〜図21Cは本発明の実施形態の任意の変化量を基準に基づく、バリアブルデータのプレビューの様子を示す図である。
図21A〜図21Cは、図20に示すバリアブルデータのプレビューに対し、それぞれソート単位が図21A:コンテナ単位、図21B:ページ単位、図21C:レコード単位でのプレビューを示している。
図21A〜図21Cにおいて、1401はアプリケーションウィンドウ、1402は通常のドキュメントのプレビュー状態、1404はバリアブルデータドキュメントのプレビュー状態、1405〜1408は図20におけるバリアブルデータの各レコード、1409はマウスポインタを示している。
図21Aでは、1403aのソート単位がコンテナ単位であることを示している。また、1405〜1408は図20におけるバリアブルデータのレコードD、C、B、Aを示している。図21Aの例では、図20の1403のコンテナをソート単位に変化量を算出した場合、レコードD、C、B、Aの順に変化量の値が大きいことを示している。
図21Bでは、ソート単位がページであることを示しており、1403bのソート単位がページ単位であることを示している。また、1405〜1408は図20におけるバリアブルデータのレコードC、B、A、Dを示している。図21Bの例では、図20の1403のページをソート単位に変化量を算出した場合、レコードC、B、A、Dの順に変化量の値が大きいことを示している。
本発明では、ソート単位がページの場合で指定されたページが存在しない(図20の例ではレコードDが該当する)場合は、変化量はないとみなし、ソートを行う。
図21Cでは、1403cのソート単位がレコード単位であることを示している。また、1405〜1408は図20におけるバリアブルデータのレコードB、C、D、Aを示している。図21Cの例では、図20の1403のレコードをソート単位に変化量を算出した場合、レコードB、C、D、Aの順に変化量の値が大きいことを示している。
以上説明したように、本実施形態によれば、指定された変化量に基づいて、動的にレイアウト変更のあったバリアブルデータドキュメントをプレビュー内の最前に表示するので、ユーザは、レイアウト変更のあったページを容易に見つけ出すことができ、最終レイアウト確認時のユーザの作業効率を向上させることができる。
尚、上記実施形態では、変化量として、崩れ度、移動度及び拡縮度の3種類を例に挙げて説明したが、これに限定されず、他の指標(例えば、コンテナ内のデータ(テキストやイメージ)編集量)を変化量とすることも可能である。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
本発明の実施形態の情報処理システムの構成例を示す図である。 本発明の実施形態の情報処理システムの一構成要素であるホストコンピュータのハードウェア構成を示す図である。 本発明の実施形態の情報処理システムの別構成を示す図である。 本発明の実施形態のバリアブルデータプリントの概略を説明するための図である。 本発明の実施形態のユーザインタフェースの一例を示す図である。 本発明の実施形態のユーザインタフェースにおけるコンテナの表示例を示す図である。 本発明の実施形態のコンテナの表示ルールを説明するための図である。 本発明の実施形態のリンクの設定処理を示すフローチャートである。 本発明の実施形態のリンク設定時のユーザインターフェースの遷移例を示す図である。 本発明の実施形態のレイアウト計算処理を示すフローチャートである。 本発明の実施形態のレイアウト計算処理の詳細を示すフローチャートである。 本発明の実施形態のレイアウト計算処理時におけるコンテナの集合を説明するための図である。 本発明の実施形態のレイアウト計算処理におけるユーザインタフェースの一例を示す図である。 本発明の実施形態のバリアブルプリントシステムの概要を説明するための図である。 本発明の実施形態のバリアブルプリントシステムが実行する処理を示すフローチャートである。 本発明の実施形態の崩れ度算出の処理の詳細を示すフローチャートである。 本発明の実施形態の移動度算出の処理の詳細を示すフローチャートである。 本発明の実施形態の拡縮度算出の処理の詳細を示すフローチャートである。 本発明の実施形態のバリアブルデータの表示方法の切替を指定する切替指定ウィンドウを示す図である。 本発明の実施形態の変化量算出の単位(コンテナ単位)の選択例を示す図である。 本発明の実施形態の変化量算出の単位(ページ単位)の選択例を示す図である。 本発明の実施形態の変化量算出の単位(レコード単位)の選択例を示す図である。 本発明の実施形態のレイアウト編集後の再ソートを指定するか否かを確認する確認ウィンドウを示す図である。 本発明の実施形態のデフォルトのバリアブルデータのプレビューの様子を示す図である。 本発明の実施形態の変化量によるバリアブルデータのプレビュー(コンテナ単位)の様子を示す図である。 本発明の実施形態の変化量によるバリアブルデータのプレビュー(ページ単位)の様子を示す図である。 本発明の実施形態の変化量によるバリアブルデータのプレビュー(レコード単位)の様子を示す図である。
符号の説明
101 ホストコンピュータ
103 ユーザインタフェース
104 UIモデルアナライザ
105 レイアウトエンジン
107 ネットワーク
109 プリントサーバ
111 通信チャネル
113 プリンタ
115 ファイルサーバ
117 データベースサーバ
119 データベース
121 レイアウト編集アプリケーション
123、124 通信チャネル
225 レイアウトエンジン

Claims (6)

  1. レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置であって、
    複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定手段と、
    前記レイアウト決定手段によるレイアウト決定前後のフィールド領域の変化量を算出する算出手段と、
    前記算出手段で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御手段と
    前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定手段とを備え
    前記指定手段により前記第1の指標が指定された場合、前記表示制御手段は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記指定手段により前記第2の指標が指定された場合、前記表示制御手段は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記第1の変化量は、前記レイアウト決定手段によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
    前記第2の変化量は、前記レイアウト決定手段によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
    ことを特徴する情報処理装置。
  2. 前記指定手段は、前記表示方法において、更に、前記ドキュメントを構成するレコードの内、任意数のレコードを表示対象に指定可能である
    ことを特徴とする請求項に記載の情報処理装置。
  3. レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置の制御方法であって、
    複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定工程と、
    前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の変化量を算出する算出工程と、
    前記算出工程で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御工程と
    前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定工程とを備え
    前記指定工程により前記第1の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記指定工程により前記第2の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記第1の変化量は、前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
    前記第2の変化量は、前記レイアウト決定工程によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
    を備えることを特徴とする情報処理装置の制御方法。
  4. 前記指定工程は、前記表示方法において、更に、前記ドキュメントを構成するレコードの内、任意数のレコードを表示対象に指定可能である
    ことを特徴とする請求項に記載の情報処理装置の制御方法。
  5. レコードに含まれるコンテンツデータを差し込むためのフィールド領域を有するテンプレートと前記コンテンツデータとに基づいてレイアウト処理を実行することにより、前記テンプレートのフィールド領域にコンテンツデータが差し込まれたドキュメントを生成する情報処理装置の制御をコンピュータに実行させるためのプログラムであって、
    複数のレコードのそれぞれについて、各レコードの前記コンテンツデータの量またはサイズに基づいて、前記テンプレート内のフィールド領域の大きさを算出し、前記テンプレート内の前記算出されたフィールド領域のレイアウトを決定するレイアウト決定工程と、
    前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の変化量を算出する算出工程と、
    前記算出工程で算出された変化量に従う順序にて、前記各レコードのコンテンツデータが配置されたドキュメントを表示部に表示する表示制御工程と
    前記表示部で表示されたドキュメントを構成するレコードの順序を、前記変化量に従う順序で並び替えて表示するための表示方法の切替を指定するための第1の指標または第2の指標を指定する指定工程とをコンピュータに実行させ
    前記指定工程により前記第1の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第1の指標における第1の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記指定工程により前記第2の指標が指定された場合、前記表示制御工程は、前記各レコードの前記第2の指標における第2の変化量に従う順序にて、該各レコードのコンテンツデータが配置されたドキュメントを並び替えて表示し、
    前記第1の変化量は、前記レイアウト決定工程によるレイアウト決定前後のフィールド領域の縦横比の変化量であり、
    前記第2の変化量は、前記レイアウト決定工程によるレイアウト決定前後の任意の始点からのフィールド領域の移動量である
    ことを特徴とするプログラム。
  6. 前記指定工程は、前記表示方法において、更に、前記ドキュメントを構成するレコードの内、任意数のレコードを表示対象に指定可能である
    ことを特徴とする請求項に記載のプログラム。
JP2005020020A 2005-01-27 2005-01-27 情報処理装置及びその制御方法、プログラム Expired - Fee Related JP4560416B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005020020A JP4560416B2 (ja) 2005-01-27 2005-01-27 情報処理装置及びその制御方法、プログラム
US11/336,981 US7831909B2 (en) 2005-01-27 2006-01-23 Information processing apparatus, control method therefor, and program with display based on change amount of field areas
CNB2006100024181A CN100361068C (zh) 2005-01-27 2006-01-27 信息处理装置及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005020020A JP4560416B2 (ja) 2005-01-27 2005-01-27 情報処理装置及びその制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2006211248A JP2006211248A (ja) 2006-08-10
JP2006211248A5 JP2006211248A5 (ja) 2008-03-13
JP4560416B2 true JP4560416B2 (ja) 2010-10-13

Family

ID=36698499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005020020A Expired - Fee Related JP4560416B2 (ja) 2005-01-27 2005-01-27 情報処理装置及びその制御方法、プログラム

Country Status (3)

Country Link
US (1) US7831909B2 (ja)
JP (1) JP4560416B2 (ja)
CN (1) CN100361068C (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8117558B2 (en) * 2006-11-27 2012-02-14 Designin Corporation Converting web content into two-dimensional CAD drawings and three-dimensional CAD models
US8253731B2 (en) 2006-11-27 2012-08-28 Designin Corporation Systems, methods, and computer program products for home and landscape design
US8122370B2 (en) * 2006-11-27 2012-02-21 Designin Corporation Visual bookmarks for home and landscape design
US20080126430A1 (en) * 2006-11-28 2008-05-29 Garrett Andrew J Intermediary document for critical change control
JP4262275B2 (ja) 2006-12-13 2009-05-13 キヤノン株式会社 情報処理装置及びその制御方法
JP4912139B2 (ja) * 2006-12-22 2012-04-11 キヤノン株式会社 情報処理装置
JP5245363B2 (ja) * 2007-11-09 2013-07-24 富士ゼロックス株式会社 可変データ処理プログラム、可変データ処理装置及び可変データ処理システム
JP5188881B2 (ja) * 2008-05-27 2013-04-24 富士フイルム株式会社 データ変換装置、データ変換プログラム、およびデータ変換方法
US20100103439A1 (en) * 2008-10-27 2010-04-29 Xerox Corporation System and method for visual configuation of dynamic document hole placement
US8296653B2 (en) * 2009-04-06 2012-10-23 Xerox Corporation Variable imaging asset upload and verification
JP2011186835A (ja) * 2010-03-09 2011-09-22 Fuji Xerox Co Ltd 画像処理装置及び画像処理プログラム
US8996984B2 (en) * 2010-04-29 2015-03-31 International Business Machines Corporation Automatic visual preview of non-visual data
JP5739623B2 (ja) * 2010-06-25 2015-06-24 キヤノン株式会社 編集装置、およびプログラム
US9396167B2 (en) * 2011-07-21 2016-07-19 Flipboard, Inc. Template-based page layout for hosted social magazines
US10789412B2 (en) * 2012-02-20 2020-09-29 Wix.Com Ltd. System and method for extended dynamic layout
US20140026041A1 (en) * 2012-07-17 2014-01-23 Microsoft Corporation Interacting with a document as an application
US10289661B2 (en) 2012-09-12 2019-05-14 Flipboard, Inc. Generating a cover for a section of a digital magazine
US10621274B2 (en) 2013-05-23 2020-04-14 Flipboard, Inc. Dynamic arrangement of content presented while a client device is in a locked state
US9489349B2 (en) 2013-07-09 2016-11-08 Flipboard, Inc. Page template selection for content presentation in a digital magazine
US9483444B2 (en) 2013-07-09 2016-11-01 Flipboard, Inc. Dynamic layout engine for a digital magazine
US9529790B2 (en) 2013-07-09 2016-12-27 Flipboard, Inc. Hierarchical page templates for content presentation in a digital magazine
CN104881298A (zh) * 2014-02-27 2015-09-02 国际商业机器公司 用于在线显示文档的方法和装置
KR102280985B1 (ko) * 2014-11-26 2021-07-26 삼성전자주식회사 화면 구성 방법, 전자 장치 및 저장 매체
CN105590241B (zh) * 2015-05-20 2021-02-12 中国银联股份有限公司 自适应地电子票据实现方法及系统
CN108733332B (zh) * 2018-06-19 2021-04-16 浪潮通用软件有限公司 一种通用的打印模板元数据设计方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
JP2004236170A (ja) * 2003-01-31 2004-08-19 Canon Inc 画像データ処理方法、画像データ処理装置ならびにプログラム、記憶媒体
US20050094207A1 (en) * 2003-10-15 2005-05-05 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
JP2006171942A (ja) * 2004-12-14 2006-06-29 Fuji Photo Film Co Ltd 重要度設定装置および方法並びにプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996016813A1 (fr) * 1994-12-02 1996-06-06 Seiko Epson Corporation Processeur d'informations de caracteres a fonction d'affichage de presentation
JP4183774B2 (ja) * 1996-10-11 2008-11-19 富士ゼロックス株式会社 要素間参照を利用したレイアウト処理方法および装置
JP3754838B2 (ja) 1999-01-29 2006-03-15 キヤノン株式会社 複合フォーム編集装置及び複合フォーム編集方法及びプログラムの記憶媒体
TW486656B (en) * 1999-11-05 2002-05-11 Ibm Method and system for user-selectable shell from web server
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US20030023627A1 (en) * 2001-07-26 2003-01-30 Kerr John M. System and method for indicating a measure of content copy fitting
DE602004023165D1 (de) * 2003-10-15 2009-10-29 Canon Kk Selektive Voranzeige und Probedruck von Dokumente oder Layouts, die variablen Daten enthalten
US20060103667A1 (en) * 2004-10-28 2006-05-18 Universal-Ad. Ltd. Method, system and computer readable code for automatic reize of product oriented advertisements
US7783115B2 (en) 2004-12-14 2010-08-24 Fujifilm Corporation Apparatus and method for setting degrees of importance, apparatus and method for representative image selection, apparatus and method for printing-recommended image selection, and programs therefor
US7581169B2 (en) * 2005-01-14 2009-08-25 Nicholas James Thomson Method and apparatus for form automatic layout
US8090612B2 (en) * 2005-07-19 2012-01-03 Hewlett-Packard Development Company, L.P. Producing marketing items for a marketing campaign

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
JP2004236170A (ja) * 2003-01-31 2004-08-19 Canon Inc 画像データ処理方法、画像データ処理装置ならびにプログラム、記憶媒体
US20050094207A1 (en) * 2003-10-15 2005-05-05 Canon Kabushiki Kaisha User interface for creation and editing of variable data documents
JP2006171942A (ja) * 2004-12-14 2006-06-29 Fuji Photo Film Co Ltd 重要度設定装置および方法並びにプログラム

Also Published As

Publication number Publication date
CN100361068C (zh) 2008-01-09
US7831909B2 (en) 2010-11-09
CN1811691A (zh) 2006-08-02
US20060168514A1 (en) 2006-07-27
JP2006211248A (ja) 2006-08-10

Similar Documents

Publication Publication Date Title
JP4560416B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4144883B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4241410B2 (ja) レイアウト調整方法および装置およびレイアウト調整プログラム
JP4332477B2 (ja) レイアウト調整方法及び装置並びにプログラム
JP4700940B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4332480B2 (ja) レイアウト調整方法及び装置並びにプログラム
JP4250540B2 (ja) レイアウト調整方法および装置およびレイアウト調整プログラム
US7707494B2 (en) Information processing apparatus, control method therefor, and program
JP4110105B2 (ja) 文書処理装置及び文書処理方法及び文書処理プログラム
JP4298642B2 (ja) レイアウト処理方法およびレイアウト処理装置およびレイアウト処理プログラム
JP4522280B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4912139B2 (ja) 情報処理装置
JP2006277727A (ja) レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP2005216180A (ja) 文書処理装置及び文書処理方法及び文書処理プログラム
KR100881479B1 (ko) 정보 처리 방법 및 그 장치
US7853872B2 (en) Laying out field regions in a page for insertion of data
JP4111519B2 (ja) レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP4194501B2 (ja) 文書処理方法、文書処理装置及び文書処理プログラム
JP2007066304A (ja) 情報処理装置及びその制御方法、プログラム
JP2007249431A (ja) 情報処理装置及びその制御方法、プログラム
JP2007122486A (ja) Web文書処理方法、プログラム、記憶媒体
JP4743909B2 (ja) 情報処理方法および装置およびコンピュータプログラム
JP2007122487A (ja) 自動レイアウトシステム
JP2010176366A (ja) バリアブルプリントシステム
JP2008102869A (ja) レイアウト処理方法及び装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091102

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100701

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: 20100720

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: 20100726

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees