JP4332477B2 - レイアウト調整方法及び装置並びにプログラム - Google Patents

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

Info

Publication number
JP4332477B2
JP4332477B2 JP2004231434A JP2004231434A JP4332477B2 JP 4332477 B2 JP4332477 B2 JP 4332477B2 JP 2004231434 A JP2004231434 A JP 2004231434A JP 2004231434 A JP2004231434 A JP 2004231434A JP 4332477 B2 JP4332477 B2 JP 4332477B2
Authority
JP
Japan
Prior art keywords
layout
template
data
container
size
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004231434A
Other languages
English (en)
Other versions
JP2006050445A (ja
JP2006050445A5 (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 JP2004231434A priority Critical patent/JP4332477B2/ja
Priority to US11/196,838 priority patent/US7634725B2/en
Priority to CNB200510089419XA priority patent/CN100568907C/zh
Publication of JP2006050445A publication Critical patent/JP2006050445A/ja
Publication of JP2006050445A5 publication Critical patent/JP2006050445A5/ja
Application granted granted Critical
Publication of JP4332477B2 publication Critical patent/JP4332477B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Processing Or Creating Images (AREA)
  • Document Processing Apparatus (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、テキストやイメージで構成されたバリアブルデータドキュメントを印刷する際にバリアブルデータドキュメントのレイアウトを調整するレイアウト調整方法及び装置並びにプログラムに関する。
近年、商品の多品種化で商品のライフサイクルが短くなっていること、インターネット利用の普及による消費者のカスタマイズサービス指向などの要因からCRM(Customer Relationship Management)、One−to−Oneマーケティングの必要性が注目されている。これらの手法は、顧客満足度を高め、顧客の開拓や囲い込みを目指すという目的に対して非常に効果的なものである。
One−to−Oneマーケティングはデータベース・マーケティングの一種で、顧客の年齢、性別、趣味、嗜好、購買履歴等の個人属性情報をデータベース化し、その内容を分析、顧客のニーズに合った提案を行うものであり、その代表的な具体的手法としてバリアブルプリントが挙げられる。特に、最近ではDTP(デスクトップパブリッシング)技術の進展とデジタル印刷装置の普及に伴って、文書を顧客毎にカスタマイズして出力するバリアブルプリントシステムが開発されている。このようなバリアブルプリントシステムでは、顧客毎に異なる量のコンテンツを最適にレイアウトされたカスタマイズ文書を作成することが求められる。
一般に、バリアブルプリントシステムにおいてそのようなカスタマイズ文書を作成する際には、ドキュメント上にコンテナをレイアウトする。コンテナとはコンテンツ(描画内容)を描画するための部分領域であり、フィールド領域と呼ばれることもある。すなわち、ドキュメント上にこのようなコンテナをレイアウトし、データベースとレイアウトを関連付ける(データベースの各コンテンツと各コンテナとを関連付ける)といった作業により、カスタマイズ文書(ドキュメント)を作成する。本明細書ではこのようなドキュメントをバリアブルデータドキュメント(単にテンプレートと呼ぶこともある)という。
このようなバリアブルプリントシステムにおいて、レイアウトされた各コンテナには顧客によって異なるコンテンツを流し込むことが可能である。ここで、コンテンツに流し込まれるデータのサイズは可変であり、これに対してコンテナのサイズが固定であると次のような課題が生じる。例えば、コンテナのサイズよりも大きなサイズのテキストデータが流し込まれた場合にはすべてのテキストをそのコンテナ内に表示できなくなってしまう。或いは、コンテナのサイズよりも大きなサイズのイメージデータが流し込まれた場合には、そのイメージの一部が欠落してしまう。このような問題をオーバーフローと呼ぶ。
例えば、コンテンツがイメージデータの場合には、当該イメージを縮小してコンテナ内に描画することも考えられるが、イメージが極端に小さくなってしまうといった弊害が生じる可能性がある。また、固定サイズのコンテナに入りきらないテキストデータが挿入された場合に、テキストのフォントサイズを縮小し、当該コンテナ内にすべてのテキストを表示可能にすることも考えられる。しかし、フォントサイズを調節する場合はフォントサイズが小さくなりすぎて、ドキュメント全体のバランスが崩れたり、読みにくくなるという課題が生じる。
一方で、テキスト及びイメージのコンテナサイズを可変に設定して上述したような課題を解決するための自動レイアウトシステムが考えられている。この自動レイアウトシステムは、テキストおよびイメージのコンテナサイズを可変に設定することが可能である。この自動レイアウトシステムにおいて、コンテナのサイズを可変とし、差し込まれるデータ量に応じてコンテナのサイズを大きくするよう変更できるものがある。また、テキストの場合において固定のコンテナサイズ内に入りきらないデータが挿入された場合、テキストのフォントサイズを縮小し、コンテナ内に全てのテキストを表示する技術も存在する。
しかし、可変のコンテナのサイズが大きくなった場合に、当該コンテナが同一ドキュメント上の他のコンテナに重なってしまうという問題が発生する。また、フォントサイズを調節してコンテナ内にすべてのテキストを表示する場合において表示するテキストの量が多いと、フォントサイズが小さくなりすぎる問題が発生する。
このような課題を解決するための自動レイアウトの技術として、あるコンテナのサイズが大きくなった場合に、隣接したコンテナとの間隔を保つべく当該隣接するコンテナのサイズを小さくするレイアウトデザイン装置に関する技術が知られている(例えば、特許文献1参照。)。
また、それぞれのオブジェクト(コンテナ)を動的にレイアウトし直すものではないが、画像を印刷装置で出力する際のレイアウトを制御するレイアウト制御装置に関する技術が知られている(例えば、特許文献2)。
一方で、文字、表、画像等のようにデータの種類が異なると、データを定義する構造やそれらデータに対する編集操作が異なってくる。そこで、一般的には、データの種類に応じた様々なアプリケーションプログラムが提供されている。そして、利用者は、一般にデータの種類ごとにアプリケーションプログラムを使い分けている。例えば、利用者は、文字を編集するためには文字処理プログラム、表を編集するためには表計算プログラム、画像を編集するためには画像編集プログラムといった具合に、データの種類別にアプリケーションを使い分けている。
また、利用者が作成する文書としては、例えば文字のみ、表のみ、画像のみといった1種類のデータのみから構成される文書よりも、文字と表、文字と画像等の複数種類のデータから構成される文書の方が一般的である。そのため、複数種類のデータを含む目的文書を作成する利用者は、各種アプリケーションが備えている印刷機能を利用してそれぞれのアプリケーションごとにデータを印刷し、出力された印刷物を所望の順序に組み合わせる必要があった。
これに対し、いわゆるオフィススイートと呼ばれる各種アプリケーションによって一つの統合アプリケーションを形成するプログラムには、各アプリケーションで生成されたデータを組み合わせ、一つの文書を構成する機能を提供するものもある。この統合アプリケーションを使用する利用者は、各アプリケーションで作成したデータを、統合アプリケーションに含まれる特定のアプリケーションによって一つの目的文書にまとめることができる。
特開平7−129658号公報(0049、図8) 特開2004−15215号公報
しかしながら、統合アプリケーションによって作成された目的文書は一つの文書ファイルであるため、ファイル単位で編集・出力等の管理が行われて、文書ファイルの一部について書式を設定しようとしてもアプリケーションの機能による制約が多いという問題がある。例えば、当該文書ファイルの書式が変わる部分ごとに書式設定を変更して、印刷し直すといった作業が必要となる。このため、アプリケーション間のインタフェースを利用者自身が人手によって提供する必要があり、利用者に多大な労力を要求することとなり、生産性の低下をもたらしていた。さらに、多くの人手を介することから処理過程において各種エラーの発生も生じ易かった。
このような問題を解決するために、一般的なアプリケーションにより作成されたデータファイルを、電子原稿ライタによって電子原稿ファイルに変換することにより、生産性を向上させる文書処理システムもある。このようなシステムでは、Nページ印刷、両面印刷、或いはステープル等の書式データも電子原稿ファイルと併せて保存することが可能であり、再設定し直すことなく以前保存した状態と全く同じ書式で印刷することを可能としている。
しかし、統合アプリケーションによって生成された一つの文書ファイルであるレイアウトファイルを上述したような文書処理システムに取り込み、連携して動作させるような場合がある。その際、レイアウトをデザインする人(例えば、テンプレートデザイナー)は、通常、文書処理システム上で行われる設定(例えば、とじしろ設定)を考慮しないので、同文書処理システム上の設定を考慮することなくレイアウトされた文書ファイルが必ずしも最適な状態で印刷出力されるとは限らない。例えば、同文書処理システム上でとじしろ設定を行った場合、統合アプリケーション上では最適にレイアウトされたはずの文書ファイルが全体移動してしまうことにより印刷出力時にコンテナ内に表示した文書等の一部が欠けてしまったり、ページが印字領域に合うように縮小されてしまうという問題が発生する場合がある。
本発明は、このような事情を考慮してなされたものであり、例えば、印刷時のとじしろ設定のような印刷条件に応じて一旦決定されたバリアブルデータドキュメントのコンテナの欠けや不適切な縮小をすることなく、印刷条件に応じて好適にバリアブルデータドキュメントのレイアウト調整を実現することができるレイアウト調整方法及び装置並びにプログラムを提供することを目的とする。
上記課題を解決するために、本発明は、印刷媒体上に形成されるページレイアウトを決定するレイアウト調整装置であって、
データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成手段と、
前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整手段と、
前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定手段と、
前記印刷条件設定手段において設定された綴じ代に基づいて、前記テンプレートを補正する補正手段と、
前記部分領域に流し込まれるデータの大きさと前記補正手段によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整手段とを有し、
前記補正手段は、前記第2調整手段が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整手段が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とする。
また、上記課題を解決するために、本発明は、印刷媒体上に形成されるページのレイアウトを決定するレイアウト調整装置の制御方法であって、
前記レイアウト調整装置の生成手段が、データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成工程と、
前記レイアウト調整装置の第1調整手段が、前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整工程と、
前記レイアウト調整装置の印刷条件設定手段が、前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定工程と、
前記レイアウト調整装置の補正手段が、前記印刷条件設定工程において設定された綴じ代に基づいて、前記テンプレートを補正する補正工程と、
前記レイアウト調整装置の第2調整手段が、前記部分領域に流し込まれるデータの大きさと前記補正工程によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整工程とを有し、
前記補正工程は、前記第2調整工程が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整工程が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とする。
さらに、上記課題を解決するために、本発明は、印刷媒体上に形成されるページのレイアウトを決定させるコンピュータに、
データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成手段と、
前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整手段と、
前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定手段と、
前記印刷条件設定手段において設定された綴じ代に基づいて、前記テンプレートを補正する補正手段と、
前記部分領域に流し込まれるデータの大きさと前記補正手段によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整手段として機能させ、
前記補正手段は、前記第2調整手段が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整手段が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とするプログラムであることを特徴とする。
本発明によれば、例えば、印刷時のとじしろ設定のような印刷条件に応じて一旦決定されたバリアブルデータドキュメントのコンテナの欠けや不適切な縮小をすることなく、印刷条件に応じて好適にバリアブルデータドキュメントのレイアウト調整を実現することができる。
以下、図面を参照して。本発明の好適な実施形態について説明する。
<システム構成>
まず、図1及び図2を参照して、本発明の一実施形態に係るバリアブルプリントシステムの構成を説明する。図1は、本発明の一実施形態に係るバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の構成例を示すブロック図である。また、図2は、図1に示されたホストコンピュータ101の構成をさらに詳細に示すブロック図である。
本実施形態で説明されるバリアブルプリント処理は、レイアウト調整装置であるホストコンピュータ101(汎用コンピュータモジュールで構成される)によって実行される。バリアブルプリントシステム100上で実施可能となるレイアウト編集アプリケーションプログラム121(本発明のレイアウト調整プログラム)はホストコンピュータ101において、そのソフトウェアの全体、あるいは一部分が実行される。特にレイアウト編集のための処理やバリアブルデータドキュメントの印刷のための処理はホストコンピュータ101で実行されるソフトウェアにより実現される。
レイアウト編集アプリケーションプログラム121はコンピュータ可読媒体に格納され、そのコンピュータ可読媒体からホストコンピュータ101のメモリ136にロードされ、実行される。そのようなソフトウェアやコンピュータプログラムを格納したコンピュータ可読媒体はコンピュータプログラム製品である。コンピュータにおいてそのコンピュータプログラム製品を使用することにより、ドキュメントのレイアウト編集やバリアブルプリントに好適な装置が提供されることになる。
図2に示されるように、ホストコンピュータ101には、入出力インターフェース143を介してキーボード132や、マウス133のようなポインティングデバイス等が入力装置として接続される。また、出力装置としてのディスプレイ装置(ビデオディスプレイ)144がビデオインターフェース137を介して接続される。更に、ローカルのプリンタ145等を入出力(I/O)インターフェース138を介して接続することも可能である。また、入出力インタフェース138はホストコンピュータ101をネットワーク107へ接続する機能も有する。これにより、ネットワークを介してバリアブルプリントシステム100内の他のコンピュータ装置にホストコンピュータ101を接続することができる。ネットワーク107の典型的な例としては、ローカルエリアネットワーク(LAN)、あるいはワイドエリアネットワーク(WAN)が挙げられる。
また、図2に示すように、ホストコンピュータ101は少なくとも1つのプロセッサユニット135、例えば半導体のランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)から構成されるメモリユニット136を含んでいる。格納デバイス139は、プログラム等を格納するコンピュータ可読媒体との間でデータのやり取りが可能なハードディスクドライブ(HDD)140やフロッピー(登録商標)ディスクドライブ(FDD)141を含む。尚、図2には示されていないが、磁気テープドライブ等も格納デバイス139として使用可能である。CD−ROMドライブ142は、不揮発性のデータソースとして提供される(もちろん、CD−ROMによってコンピュータプログラムを提供してもよい)。
ホストコンピュータ101は、GNU/LINUXやマイクロソフトウインドウズ(登録商標)のようなオペレーティングシステムや、典型的にはオペレーティングシステムに従う形で、或いは関連のある技術で知られているもので形成されたコンピュータシステムの常套的なオペレーションモードによる方法によって、相互接続バス134を介して通信を行うコンピュータモジュール101のコンポーネント135〜143を利用する。すなわち、上述したコンポーネント135〜143の各構成は、バス134を介して通信可能に接続されており、ホストコンピュータ101にインストールされたオペレーティングシステムにより利用される。
尚、図2に示したホストコンピュータ101の例としては、IBM互換PCやSUNのSparcstation等、或いはそれらを含んだコンピュータシステムが考えられる。
<レイアウト編集アプリケーションの概要>
本実施形態では、レイアウトアプリケーションプログラム121はハードディスクドライブ140に常駐し、プロセッサ135により実行や読み込みがコントロールされるものとする。レイアウト編集アプリケーション121のプログラムの媒介記憶装置とネットワーク107からフェッチされるデータはハードディスクドライブ140に呼応して半導体メモリ136を使用する。
一つの例では、レイアウト編集アプリケーション121のエンコードされたプログラムは、CD−ROMやフロッピー(登録商標)ディスク上に格納され、対応するCD−ROMドライブ142や格納デバイス141を通じて読み込まれ、ハードディスクドライブ140にインストールされる。或いは、別の例として、レイアウト編集アプリケーションプログラム121はネットワーク107からホストコンピュータ101内に読み込まれて、ハードディスクドライブ140にインストールされてもよい。
さらにソフトウェアは、磁気テープまたはROMまたは集積回路、光磁気ディスク、または、ホストコンピュータ101とその他のデバイス間における赤外線等の無線通信、PCMCIAカードのようなコンピュータ可読カード、そしてEメール通信やWEBサイト上の記録情報を持つインターネットやイントラネットを含む他の適当なコンピュータからホストコンピュータ101内にロードされてもよい。これらは、コンピュータ可読媒体の例であり、他のコンピュータ可読媒体が使用されてもよいことは明らかである。
図1において、本発明のレイアウト編集アプリケーション121はコンピュータにバリアブルプリント(バリアブルデータプリント(VDP)ともいう)を行わせるものであり、2つのソフトウェアコンポーネント、すなわちレイアウトエンジン105とユーザインターフェース103、を含んでいる。レイアウトエンジン105は、部分領域であるコンテナ(矩形の範囲)に与えられたサイズや位置の制限にしたがって、データベース119に格納されているバリアブルデータから1レコードずつ読み込み、読み込んだデータとコンテナの制限とから、読み込んだデータが流し込まれるコンテナの大きさや位置等を計算するソフトウェアコンポーネントである。
また、本実施形態では、レイアウトエンジン105は、更に、コンテナに割り当てられたデータを描画し、バリアブルデータドキュメントのイメージを生成する処理も行う。ただし、本発明はこれに限るものではなく、レイアウトエンジン105は各部分領域(コンテナ)のサイズと位置を決定するアプリケーションとして動作し、図示を省略したプリンタドライバに描画情報を出力することで、プリンタドライバがバリアブルデータドキュメントのイメージ描画処理を行い、印刷データを生成してもよい。ユーザインタフェース103は、ユーザによるコンテナのレイアウトや属性設定を可能とし、ユーザにドキュメントテンプレートを作成させる。また、ユーザインターフェース103はドキュメントテンプレート内の各コンテナとデータソースとを関連付けるメカニズムを提供する。ユーザインタフェース103とレイアウトエンジン105はコミュニケーションチャネル123を介して通信する。
図3は、本発明の一実施形態におけるバリアブルデータプリントの概略を説明する図である。レイアウト編集アプリケーション121のユーザインターフェースモジュール103(以下、「ユーザインタフェース103」と記載する。)により、ユーザからの操作指示に従いページ上に複数のコンテナ181〜183を配置し、各コンテナに位置やサイズに関する制約条件を付与することによりドキュメントテンプレート180が生成される。
また、ユーザインターフェース103はドキュメントテンプレート180とデータソース190との関連付け、更に各コンテナとデータソース190内の各データフィールドとの関連付けを行う。各コンテナとデータソース190内の各データフィールドとの関連付けを示す関連付け情報は、ドキュメントテンプレート内に記述され、該ドキュメントテンプレートは、HDD140に格納される。また、データソース190は、レコード単位で項目データが記載されているファイルであり、HDD140に格納されている。
レイアウトエンジン105は、ユーザからの印刷指示もしくはプレビュー指示に応じて、ドキュメントテンプレートの各コンテナ181〜183に、関連付け情報で関連付けられたデータをデータソース190から読み込み、レコード単位で流し込み(例えば、データレコード1のデータフィールドA〜Cをコンテナ181〜183へ流し込む。)、流し込まれたデータに応じて各コンテナのサイズ等を調整(レイアウト調整)する。
プレビュー指示の場合は、レイアウト調整されたドキュメントイメージを生成し、ビデオディスプレイ144の画面上にプレビューとして表示するべく出力される。また印刷指示の場合は、レイアウトエンジン105もしくはプリンタドライバを用いて生成したドキュメントイメージを印刷データとしてプリントサーバ109へ出力する。データレコード1,2,3…を順次処理することにより、バリアブルデータプリントが実現されることになる。
ドキュメント生成のためのデータソース(190)は、例えば、データベースアプリケーションを動かしている他のコンピュータによって構成されたデータベースサーバ117上の一般的なデータベース119であってもよい。この場合、ホストコンピュータ101はネットワーク107を介してデータベースサーバ117と通信し、データソースを取得できる。また、レイアウト編集アプリケーション121によって生成された、バリアブルデータプリントのためのドキュメントテンプレート(180)は、ホストコンピュータ101或いは他のコンピュータで構成されるファイルサーバ115に保存される。
図3に示したように、レイアウト編集アプリケーション121のレイアウトエンジン105は、データとマージされたドキュメントテンプレートによって構成されたバリアブルデータドキュメントを生成する。これらのドキュメントは、ホストコンピュータ101のローカルファイルシステムに保存されるか、ファイルサーバ115に保存されるか、あるいはプリンタ113に送信されて印刷される。プリントサーバ109はネットワークと直接には接続されていないプリンタ113にネットワーク機能を提供するためのコンピュータである。プリントサーバ109とプリンタ113は一般的な通信チャネル111を介して接続される。
<他のシステム構成例>
図4は、本発明の一実施形態に係るバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の他の構成例を示すブロック図である。図4に示されるバリアブルプリントシステム100は、図1と類似の構成をしたブロック図であるが、エンジンサーバ227が追加されている点で異なる。エンジンサーバ227に格納されているレイアウトエンジン225は、レイアウトエンジン105の分離バージョンである。
エンジンサーバ227には、一般的なコンピュータが用いられる。レイアウトエンジン225は、印刷やその他の目的に応じてバリアブルデータドキュメントを生成するために、ファイルサーバ115に保存されたドキュメントテンプレートとデータベース119に保存されたデータとを結合する。そのようなオペレーションはユーザインタフェース103を介して要求される。
<レイアウト編集アプリケーションの説明>
以下、レイアウト編集アプリケーション121の詳細について説明する。
[メインウインドウ]
図5は、メニューバー、ツールバー、ワークエリア、フローティングパレットを含む一実施形態におけるユーザインターフェースの一例を示す図である。ユーザインターフェース103は、操作時に図5に示されるようなアプリケーションウインドウ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には図6に示されるような、ユーザ選択可能な『ボタン』が配置されている。図6は、ユーザインターフェースにおけるコンテナの表示例を示す図である。以下に、図6に表示されている各種ボタンを説明する。
(1)選択ツールボタン403:コンテナの辺を選択、移動、サイズ変更、リサイズそしてロック/ロック解除のために使われる。コンテナの選択は、コンテナの周りに選択ボックスをドラッグすることによりなされる。また、CTRLキーを押しながら、複数のコンテナについて選択操作をすることによって、複数のコンテナを選択可能である。
(2)テキストコンテナツールボタン404
スタティックあるいはバリアブルテキストを持つコンテナを作成するために使われる。
(3)イメージコンテナツールボタン404
スタティックあるいはバリアブルイメージを持つコンテナを作成するために使われる。
(4)リンクツールボタン406
コンテナ間に関連付けを行うリンクを作成するために使われ、リンクの距離をコントロールするためにも使われる。
レイアウト編集アプリケーション121の図5に示したアプリケーションウインドウ301は、ページ内に各コンテナやリンクをレイアウトすることで、基本レイアウトを決定することができる。基本レイアウトとは、バリアブルデータプリントで基本となるレイアウトのことである。基本レイアウト内の各コンテナが固定コンテナである場合は、すべてのレコードの印刷結果のレイアウトは同じになる。また、基本レイアウト内の各コンテナが後述する可変コンテナである場合は、レコード単位に読み込まれるデータの量やサイズにより各コンテナのサイズや位置が、後述する制約の範囲内で変動することになる。よって、レイアウト編集アプリケーション121で作成されるドキュメントテンプレートは、あくまで基本レイアウトを決定するものであり、可変コンテナが含まれる場合は、最終的な印刷物のレイアウトは読み込まれるデータによりレイアウト調整されることになる。
[ドキュメントテンプレート]
図5において、ワークエリア306はドキュメントテンプレート(180:基本レイアウト)のデザインを表示・編集するために使われる。これはユーザがドキュメントテンプレートをデザインする過程において、印刷されるドキュメントの概観をユーザに提示することを可能とする。これにより、ユーザは、データソース(190)とマージされたドキュメントが、バリアブルデータの量・サイズに基づいてどのように変化するかを容易に理解できる。
また、データソースがドキュメントテンプレートに関連付けられていた場合は、現在のドキュメントのプレビューができるように、対応するバリアブルテキストやイメージがレイアウトされた各コンテナに表示される。
ドキュメントテンプレートにおけるドキュメント構造とバリアブルデータコンテナの描写をする視覚的な手がかり(コンテナの枠線、アンカー、スライダー、リンク等)は、ドキュメントテンプレート作成時には常に表示され、バリアブルデータを流し込むプレビュー時には、視覚的な手がかりは、カーソルをコンテナ上に移動させたときや、コンテナを選択したときに表示される。
ワークエリア306はスクロールバー307とオプションのルーラー308とドキュメントテンプレート309を含む。ドキュメントテンプレート309はページが複数あることを示すことができる。また、ドキュメントテンプレート309は、図3のドキュメントテンプレート180を表示しているものである。
与えられたドキュメントテンプレートのページサイズは、周知の技術を用いて、ユーザによって指定される。例えばメニューの「ファイル」から「ページ設定」を選択することでページサイズを設定するダイアログを表示し、そこでユーザが指定したページサイズが反映されることになる。それぞれのドキュメントでの実際のページ数は、関連付けられたデータソース内のバリアブルデータによって変化する可能性がある。これは、ドキュメントテンプレート内に可変表のようにバリアブルデータの量により大きさが変更されるフィールドが設定されている場合、1ページ内にバリアブルデータをフィットできないバリアブルデータが読み込まれると、追加のページが自動的に作成されるからである。
それぞれのページ内に示される境界線310は、ページ上の印刷可能なオブジェクトの最大幅を示す、任意のページマージンである。
ここで、図6には、1ページのドキュメントテンプレート309上に表示され得るオブジェクトの例が示されている。このようなオブジェクトとしては、コンテナ407、408と、任意に適用するアンカーアイコン409、固定されている辺411、414、固定されていない辺410、リンク412そしてスライダー413を持つ。アンカーアイコン409は、コンテナの矩形の角、辺、またはコンテナの中央に設定することが可能である。アンカーアイコン409が設定されると、設定された個所の位置が固定となる。
つまり、図6に示す例では、アンカーアイコン409は、コンテナ407の左上の角に設定されているため、コンテナ407はバリアブルデータが流し込まれ、バリアブルデータの画像サイズもしくはテキスト量が多い場合に、右方向及び下方向に拡大可能であることを示している。アンカーアイコン409が辺に設定されている場合は、その辺が固定となり、その他の3辺の各方向に拡大可能である。また、アンカーアイコン409がコンテナの中央に設定されている場合は、コンテナの中央位置が固定となり、コンテナ矩形の中央位置が変わらないように、4方向に拡大可能である。
リンク412は詳細は後述するが、コンテナ407とコンテナ408が関連付けられていることを示しており、このリンクに設定されている長さ(範囲指定可能)を保ちつつ、コンテナ408が右方向に移動可能であることを示している。スライダー413は、設定されている辺と水平方向に移動可能であることを示している。
[コンテナ]
ここで、コンテナについて説明する。コンテナは、ドキュメントテンプレート内にバリアブルデータファイルから固定あるいは可変のテキスト/イメージが流し込まれ、描画されるスペース(これを「部分領域」と呼ぶ。)であり、図6に示されるように他のコンテナやオブジェクトと共にレイアウトされる。ユーザインターフェース画面を介して、ユーザからの操作指示により、コンテナはマウス133の操作により移動、サイズ調整、再作成される。
より正確にはコンテナは、設定の集まり、視覚的表現、そしてインタラクションと編集動作をもっている。下記は本実施形態によるコンテナの定義である。
(1)コンテナは固定あるいは可変のコンテンツを持つ。可変コンテンツは、データソースから取得したデータがドキュメント毎、つまりレコード毎に異なる可能性があるという意味でダイナミック(動的)であるということができる。但し、本実施形態の可変コンテンツは、アニメーション化されたもの、或いは他の方法で時間的に変化するコンテンツは印刷には適していないため、ここでは意図していない。同様に、固定コンテンツはコンテナを使って生成される全てのドキュメントで、同じように表示される。しかしながら、可変コンテンツとリンクが設定されている場合、可変コンテンツの影響を受けて、固定コンテンツはそれぞれのドキュメントで位置が異なる可能性がある。
(2)コンテナは、コンテンツに適用される背景色、ボーダー、フォント・スタイルのようなテキスト設定と同様の装飾機能を持っている。このような設定をコンテナ属性と呼ぶ。コンテナ属性は、各コンテナごとに設定可能であるが、あるコンテナと同じコンテナ属性であるという設定を行うことも可能である。
(3)コンテナはドキュメントを生成する際にデータソースからのデータとマージされる。装飾機能は、どんな固定コンテンツでもそうであるように、印刷された出力物において可視である。可変コンテンツはデータソースからの特定のデータの表示を提供する。コンテナのこの表現は例えば印刷されるか、ビデオディスプレイ144のスクリーン上に表示されるか、その両方が可能である。
(4)コンテナは、図6に示されるように視覚的な手がかりとしてのユーザインターフェースを有している。例えばコンテナの編集そして表示設定のためのインタラクティブなグラフィカルユーザインターフェース(GUI)を持つ。GUIの各要素はビデオディスプレイ144のスクリーン上に表示されるが、ドキュメントとしては印刷されない。レイアウト編集アプリケーション121のユーザインターフェース103は、背景色やフォントのようなコンテナの装飾機能のいくつかを表示し、さらにコンテナの設定の編集や表示を可能にするための機能を有している。
[コンテナの制約]
コンテナには、それぞれのドキュメントで表示されるコンテンツをどのように結びつけるかの制御に関する制約がある。これらの制約(固定/可変コンテンツをコンテナと結びつけることを含む。)は、ユーザが一つのドキュメントテンプレートから多数のドキュメントの世代をコントロールする主要な方法である。制約の一つの例は、『このコンテナのコンテンツの高さは最大4インチです。』である。また、別の制約の例は、『コンテナのコンテンツの左エッジは、それぞれのドキュメントにおいて同じ水平位置で表示しなければならない。』である。ここに記述される内容は、GUIを使ってこのような制約を表示、編集するためのいろいろな方法である。
イメージがページ上に定義された場所を持っているように、固定コンテンツの配置を指定するコンテンツプレイスホルダーは、デジタル印刷技術でよく知られている。コンテナは位置とサイズを持ち、それらは公知の技術で知られている手法で編集され、表示される。よって、以下の説明では、バリアブルデータ印刷に特化した方法における表示・編集に焦点を合わせる。
コンテナを用いることにより、ユーザは、ドキュメントにおけるコンテンツのサイズ(描画サイズ)や位置を指定することが可能となる。いく種類ものドキュメントが一つのドキュメントテンプレートから生成されるので、コンテナに多数の可能性と制約を設定することになるが、これらの設定(指定)や表示のために所定のユーザインターフェースが利用される。
1つのコンテナの辺は、関連付けられたコンテンツがドキュメント内で表示される仮想の境界線を定義する。したがって、コンテナの左辺を論じることは、関連付けられたコンテンツが、各ドキュメントにおいて、表示可能であるエリア内の最も左の辺を論じることと同じである。同様に、コンテナの高さを論じることは、生成されたドキュメントで関連付けられたコンテンツの高さの制約を論じることとして理解される。本明細書では、ユーザインターフェース103を参照してコンテナの辺あるいは大きさを論じるところで、この区別は明らかにされるであろう。
以下の記載において、コンテンツの表示を制限するために使われるある値を定義している用語『固定』は、全てのドキュメントで同じである。
(1)コンテナの幅が固定である場合、関連付けられたコンテンツに割り当てられる幅は、全てのドキュメントで同じになる。
(2)コンテナの高さが固定である場合、関連付けられたコンテンツに割り当てられる高さは、全てのドキュメントで同じになる。
(3)距離(リンクの長さ)が固定である場合、指定された距離は全てのドキュメントにおける制約となる。
(4)コンテナの左右辺が固定の場合、ページに関する辺の水平位置は全てのドキュメントで同じであることを意味している。ただし、コンテナの高さあるいは垂直方向の位置は、変化する可能性がある。例えば、コンテナの左辺が固定である場合、関連付けられたコンテンツの表示位置は、全てのドキュメントでその左辺の位置は同じ水平位置となるが、あるドキュメントではページの上の方に表示され、他のドキュメントではページの下の方に表示される可能性がある。
(5)コンテナの上下辺が固定の場合、ページにおける辺の垂直位置は全てのドキュメントで同じとなることを意味している。ただし、コンテナの幅あるいは水平位置はドキュメントによって変わる可能性がある。
(6)コンテナの垂直軸はコンテナの右辺と左辺に平行で、それらの中間に位置される仮想の垂直線である。もしコンテナの垂直軸が固定なら、当該コンテナの左右辺の水平位置の平均(すなわち左右の中央位置)は、すべてのドキュメントで同じとなる。この制約において、コンテナの幅は変化する可能性がある。しかしながら、左右辺が垂直軸にもっとも遠いものからもっともものまで、垂直軸は全てのドキュメントで同じ水平位置となる。なお、コンテナの高さと垂直位置はこの制約によって影響されない。
(7)同様に、もし水平軸が固定なら、コンテナの上辺と下辺の平均が同一の垂直方向位置に配置される。ただし、コンテナの幅と水平位置はこの制約によって影響されることはない。
(8)水平軸と垂直軸の両方が固定である場合、コンテナの中心位置が固定されていることを意味する。ただし、コンテナの幅・高さはこの制約によって影響されない。
(9)コンテナの角位置、コンテナの辺の中間位置、あるいはコンテナの中心位置が固定である場合、それぞれの位置はすべてのドキュメントで同じ場所となる。例えば、もしコンテナの左上角が固定なら、配置されたコンテナの左上位置が全てのドキュメントで同じになることを意味している。
(10)垂直辺あるいは垂直軸は、ページの左辺もしくは右辺、あるいは左ページマージンもしくは右ページマージン、あるいは他の水平位置に関連付けされて固定することができる。同様に、水平辺あるいは水平軸はページの上辺もしくは下辺、あるいは上下ページマージン、あるいは他の垂直位置に関連付けされて固定することができる。
『固定』の反対は、コンテナの辺、軸、角、中間位置、あるいはドキュメント制約がドキュメント間(レコード間)で変化するかもしれないことを意味する『可変』である。例えば、ページ内では、バリアブルデータのサイズや量により、動的にレイアウトが変更されることを期待するが、特定のコンテナについては、大きさや位置を固定にしたり、また、ページの角のコンテナの四隅は固定にしたいということを所望する場合がある。そのため、本レイアウト編集アプリケーション121では、各コンテナ(部分領域)について、辺、軸、角、中間位置等を固定にするか、可変にするかを適宜設定できるようにした。これにより、ユーザはドキュメントテンプレート180の基本レイアウトを決定する場合に、ユーザが所望とするように基本レイアウトを作成することができる。
[コンテナ表示・編集]
《新規コンテナの作成方法》
コンテナは、テキストコンテナとイメージコンテナの2種類で記述される。テキストコンテナはテキストおよび埋め込みのイメージを持つ。イメージコンテナは、イメージだけを持つ。
図6で示されるように、新規のテキストコンテナあるいはイメージコンテナは、テキストコンテナツール404あるいはイメージコンテナツール405をマウス133でクリックし、ドキュメントテンプレート309上に四角形をドラッグすることによって、当該ドキュメントテンプレート309上に作成される。
あるいは、コンテナは、適切なツール404、405をアクティブにした後に、ドキュメントテンプレート309上で単にクリックすることによって作成されるようにしてもよい。この場合、マウス133のクリック操作に応じてデフォルトサイズのコンテナがテンプレート上に挿入されるとともに、当該新規コンテナの寸法等を設定するためのダイアログボックスあるいは他のプロンプトが提供される。
尚、コンテナのサイズは自動的に前もって定義されるようにしてもよいし、あるいは、計算されたスキーマによって作成・配置される、等、種々の方法が考えられる。ここで生成されたコンテナをマウス等の入力手段により選択し、右クリックでプロパティを指示する等の操作を行うことにより、コンテナのプロパティダイアログが表示され、コンテナの制約を設定することができる。コンテナのプロパティダイアログUI(部分領域設定手段に相当する)では、上述した各種の制約を設定することができる。また、コンテナのプロパティダイアログでは、コンテナのサイズ(幅、高さ)や位置を決定することができ、可変サイズにする場合は、コンテナの基本パターン(基本サイズと基準位置)を設定し、更に、最大コンテナサイズ(幅、高さ)と最小コンテナサイズ(幅、高さ)を設定することが可能となっている。
[コンテナの表示方法]
図7は、一実施形態におけるコンテナの表示ルールを説明するための図である。具体的には、図7(A)〜(D)には、コンテナの辺に関する表示ルールが例示されている。
アプリケーション121は、コンテナの辺の状態を表現するために、実線(アイテム503)あるいは点線(504)を用いて辺を表すとともに、アンカー(辺の近くに描画された506、507、509によって示されるような線、形状、アイコン)、ハンドル(移動、修正するために領域の辺上あるいは近傍に描画されたコントロール点、502)、スライダー(辺の両側に描画された短い並行線、図6の413)、拡縮アイコン(505)、色を用いる。
図7(A)〜(D)に示されるコンテナ表示方法のルールは以下の通りである。
(1)それぞれの辺を固定するために、実線で描画する。
(2)幅が固定の場合は、左と右の辺を実線で描画する。
(3)高さが固定の場合は、上と下の辺を実線で描画する。
(4)軸は描画しない。
(5)(1)〜(3)によって描画されていないそれぞれの辺の近くには拡縮アイコンが描画され、それらの辺を点線で描画する。
(6)垂直辺と水平辺、あるいは垂直軸と水平軸のそれぞれのペアで、もし両者が固定なら、それらの交差点にアンカーが描画される。
(7)それぞれの固定辺で、もし辺のどこにもアンカーが描画されていなければ、エッジの中央にスライダーが描画される。
(8)垂直及び水平辺、あるいは垂直及び水平軸のそれぞれのペアで、アンカーやスライダーが描画されていない場合、それらの交差点にハンドルが描画される。
上記ルール(1)、(2)、(3)で定義された線は、前述したように固定あるいは制限されているため実線で描画される。ルール(5)のように、可変の辺は、点線で描画される。ルール(6)、(7)、(8)で定義された固定された点は、アンカーを表示し、いくつかの固定された辺はスライダーを表示し、他はハンドルを表示する。
上記ルールは、ユーザにより後で設定された制約が優先される。すなわち、後で別の制約が設定された場合、上記のルールが描画されるべき辺に影響すれば、実線や点線の描画内容が変更されることになる。
可変の辺が描画される場所は、コンテナのコンテンツに依存する。後に説明するように、ドキュメントテンプレートにコンテンツがマージされて、ユーザインターフェースで可視になることを意味する、『動的な校正処理』が使われる。代わりの実行は、すべてのドキュメントで平均化されるコンテナのコンテンツエリアで、あるいは、可変の辺がユーザインターフェースで、どこにレイアウトされるべきか決定するほかの手段で使われることができる。
これらのコンテンツ表現は、コンテナの各辺の状態を表示するグラフィカルな手段を提供する。その表現の解釈は下記のとおりである。
(1)図6の410の辺のように、点線はコンテナのコンテンツに依存してドキュメント内の辺の位置が変化することを意味する。
(2)実線は、固定されている(辺414)、あるいはコンテナの幅・高さが固定されている(コンテナ408では4辺が実線であり、両方が固定されている)ために制限された辺であることを意味する。
(3)アンカーは辺および軸が交差した場所が固定されていることを意味する。それゆえ、アンカー点は、すべてのドキュメントの水平、垂直位置で現れることになる。アンカーは当然固定される。図6のアイコン409は、辺414の交差する位置が固定されていることを意味しているアンカーアイコンの例である。
(4)スライダーは関係付けられた辺の長さが固定されているが、並行移動する可能性があることを意味する。例えば、図6でスライダー413はコンテナ408のコンテンツが、ドキュメント内で特定のダイアグラムで表される位置の、左あるいは右に表示されるかもしれない。例えば、コンテナ408と関連付けられている(リンク設定されている)コンテナ407に流し込まれるデータの画像サイズもしくはテキスト量が少ない場合は、コンテナ407のサイズが小さくなるため、コンテナ408は、左方向にスライド(並行移動)してレイアウトされて表示されることになる。また、コンテナ407のサイズが大きくなる場合は、逆にコンテナ408は右方向にスライドしてレイアウトされることになる。
これらのアイコン・辺のいくつかあるいは全ては、どのツール、どのコンテナを選択・ハイライトあるいはアクティブにするかによって、描画されたりされなかったりする。一般的に、コンテナの辺・アイコンはドキュメントテンプレートのデザインの手助けであるため、印刷物には描画されない。
尚、前述したように、コンテナの幅・高さの基本値・最小値・最大値の基本パターンの設定は、副次的なダイアログウインドウに表示される。
図7(A)で、コンテナ501は、幅・高さの両方が固定されておらず、可変である。固定された辺503は実線で表現され、可変の辺504は点線で表現されている。拡縮アイコン505は、隣接する辺504が可変であることを示す。他の形態のインジケータを代わりにあるいは追加的に用いてもよい。
図7(B)において、コンテナ501は幅・高さ両方が可変である。アンカーアイコン506が、交差している両方の辺503の角の位置が固定されていることを明示的に表すべく追加されている。
図7(C)において、コンテナ501は、コンテナの幅及び高さの両方が可変であり、任意のアンカーアイコン507で示されるような中心点の周りを平等に広がるという状態を示している。すなわち、コンテナ501はアンカーアイコン507を中心に拡大あるいは縮小が可能である。ここでの拡大/縮小は、アンカーアイコン507の位置が常にコンテナ501の中心点となるようにレイアウト調整される。
図7(D)において、コンテナ501は、上辺508が固定されているが、幅・高さの両方が可変である。上辺508の中心に位置付けられて示されるアンカーアイコン509は、固定されている。そしてコンテナ501の左辺・右辺(502)は、アンカーアイコン509を通って垂直な中心軸(垂直軸)の周りを、拡大・縮小する。
[リンクの設定方法]
次に、コンテナ同士を関連付けるためのリンクの設定について説明する。図8は、一実施形態におけるリンクの設定方法を説明するためのフローチャートである。また、図9は、一実施形態におけるリンク設定時のユーザインターフェース(UI)の遷移例(A)〜(C)を示す図である。以下、図8及び図9を用いて、コンテナにリンクを設定する方法について説明する。
まず、レイアウト編集アプリケーション121が、ユーザインターフェース画面のワークエリア306上に編集すべく選択されたドキュメントテンプレートを表示する(ステップS601)。リンクを設定するためには、リンクを設定するためのコンテナ(最低2つ)がドキュメントテンプレート上に作成されている必要がある。図9の(A)〜(C)では、ステップS1601で2つのコンテナを作成してリンクを設定する場合のユーザインターフェースの遷移例を示している。
次に、レイアウト編集アプリケーション121が、前述したリンクツールが選択状態(図6のボタン406をクリックすることにより選択状態となる)になったかを否か判断する(ステップS602)。その結果、リンクツールが選択上体でない場合(No)は、必要に応じて他の各種処理を実行し(ステップS609)、ステップS602に戻る。
ここで、図9(A)において、コンテナ601と602はすべて固定されている辺で構成されているものとする。また、603と604は、図6の409と同じであり、アンカーを意味する。605はマウスポインタを意味している。さて、リンクツールが選択状態となっている間に、ユーザはリンクを設定する2つのコンテナのうちの一方(例えば、コンテナ601とする。)をクリックして選択する。
この操作に応じて、レイアウト編集アプリケーション121のユーザインターフェース103は第1のコンテナが指定されたことを認識し(ステップS603)、選択されたコンテナを特定する情報を保持する。また、以降のマウスカーソルの移動に応じた軌跡を画面に表示するようにする(ステップS604)。例えば、図9(B)における線分606は、(A)の状態におけるクリック位置と現在のマウスカーソルの位置とを結んだ線を示しており、このUIによりどの位置にリンクが設定されるのかをユーザに明示することができる。
次に、ユーザは、図9(B)で示されるように、もう一方のコンテナ(例えば、コンテナ602)までマウスポインタを移動してクリックする。この操作に応じて、ユーザインターフェース103は、第2のコンテナが指定されたことを認識する(ステップS605)。そして、レイアウト編集アプリケーション121は、ステップS604で保持した第1のコンテナと、ステップS605で指定が認識された第2のコンテナとの間にリンクを設定する(ステップS606)。
こうして、ユーザにより選択された2つのコンテナ601、602の間にリンクが設定されると、リンクUI607が表示される(ステップS607)。さらに、このリンク設定を受けて、コンテナの表示状態は図9(C)の状態になる(ステップS608)。すなわち、リンクが設定されたことにより、コンテナのUIが自動的に変更される。ここでは、リンクによって関連付けられた辺が可変となり、点線で示される。図9(C)において、608は点線で示されている辺であり、前述した通り可変の辺を示すものである。
尚、図9(C)のようなコンテナの辺の状態の変化は、リンクを設定したことによりコンテナの辺を可変にする必要が生じたことにより自動的に実行されたものであり、リンクを設定したにもかかわらず全ての辺が固定であるという矛盾の発生を防ぐことを目的としている。また、609は図7の505と同じで、リンクを設定したことにより、コンテナが変化できる方向をユーザに視覚的に示したマークである。また、図9(C)の例では、左のコンテナの右辺と右のコンテナの左辺が可変な状態へ変化したが、これは一例であって、例えば、右コンテナが図6の413で示したスライダーを持つ設定に変化してもよい。
以上、ユーザインターフェース103によるドキュメントテンプレートのレイアウト編集について説明した。以下、データソースを各コンテナに流し込んだ場合における、データサイズ(描画サイズ)に応じたコンテナレイアウトの調整処理について説明する。
<レイアウトエンジンによるレイアウト計算処理>
[レイアウト計算方法(全体フロー)]
本実施形態のレイアウト編集アプリケーションは、ユーザインターフェース103を用いてコンテナを作成し、そのコンテナ間に関連付け(リンク設定)を行ってレイアウトを作成するレイアウトモードと、レイアウトエンジン105により、作成したレイアウトにデータソースの各レコードを挿入して、実際にレコードが挿入された後のレイアウト結果をプレビューするプレビューモードに分けられる。このプレビューモードにおいて、実際のレコードが挿入され、前述した優先順位に従ってレイアウトを計算する。ただし、プレビューモードは、表示上でのレイアウト計算である。実際に印刷する場合においても、レイアウトエンジン105が各コンテナにデータを挿入してレイアウトを計算するが、その際の計算方法はプレビューモードと同じである。
図10は、本発明の一実施形態のレイアウトエンジンによるレイアウト計算処理手順を説明するためのフローチャートである。まず、プレビューモードが選択される(ステップS1001)。プレビューモードになったら、レイアウト編集アプリケーション121は、ユーザにプレビューするレコードをデータソースより選択させ、選択されたレコードの各フィールドデータを各コンテナに挿入するよう決定する(ステップS1002)。
各コンテナへのフィールドデータの挿入が決定されると、レイアウト編集アプリケーション121は、そのレコードをレイアウトするための計算を行い、必要に応じてレイアウト調整を行う(ステップS1003)。ステップS1003におけるレイアウト計算の詳細については後述する。そして、レイアウト編集アプリケーション121は、ステップS1003で計算されたレイアウトを表示する(ステップS1004)。
レイアウト編集アプリケーション121は、他のレコードについてもプレビューを行うかどうかをユーザの指示により判断する(S1005)。ステップS1005で、他のレコードについてプレビューを行う必要がないと判断した場合は、プレビューモードを終了する(S1007)。他のレコードについてプレビューを行うのであれば、レイアウト編集アプリケーション121は、他のレコードを選択して再度レイアウト計算を行い、プレビューを行う(ステップS1006)。
尚、プレビューモードでなく印刷時においては、印刷するレコード全てについて順にレイアウトの計算を行う。したがって、ステップS1004は存在せず、ステップS1005は印刷するレコードを全て処理したかの判断を行う。ステップS1003でレイアウト計算された結果を、描画出力して出力し、プリンタドライバを用いて印刷データとして生成し、プリンタに印刷データが出力される。この場合、全てのレコード(印刷すべく指定された全レコード)について印刷データの出力が終了した時点で本処理を終了することになる。
[レイアウト計算方法(詳細)]
次に、上記ステップS1003によるレイアウト計算の詳細について説明する。図11は、一実施形態によるレイアウトの優先順位を設定しない場合のレイアウト計算の方法を示したフローチャートである。本図はレイアウト計算の処理方法についてのみ説明するためのフローチャートであるため、バリアブルデータプリントの1レコードの印刷/プレビュー時のレイアウト計算方法に相当する。複数レコードの場合は、下記の処理が繰り返されることになる。
まず、レイアウト編集アプリケーション121は、レイアウトを計算するコンテナの集合を求める(ステップS1101)。レイアウト計算は、関連付けられたコンテナを一つの集合として計算を行う。図12は、本発明の一実施形態のレイアウト計算時における、コンテナの集合について説明するための図である。
例えば、図12を参照すると、ページ上に4つのコンテナがレイアウトされており、各コンテナに関連付けが設定されている。この場合、コンテナAとコンテナB、そしてコンテナCとコンテナDがリンクによって関連付けされている。したがって、コンテナA、Bが集合1、コンテナC、Dが集合2となる。すなわち、リンクによって接続されたコンテナ群を一つの集合として特定する。前述したように、1501はアンカー、1502は固定された辺、1503はコントローラー、1504は可変の辺の変化方向を示している矢印、1505は可変の辺、1506はリンク、そして1507はスライダーを示している。
次に、レイアウト編集アプリケーション121は、ステップS1101で求めたコンテナの集合から、レイアウトを計算するために一つを選択する(S1102)。そして、選択したコンテナの集合について、レイアウトの計算を行う。まず、選択したコンテナの集合に含まれる可変要素である2つのコンテナ(A,B)について、流し込まれるデータの画像サイズもしくはテキスト量から各コンテナがなにも制約を受けない場合の大きさを計算する。具体的には、レイアウト編集アプリケーション121は、コンテナAが画像データ用コンテナであるか、テキスト用コンテナであるかを判断する。この判断は、前述したように、コンテナに対して設定されている属性により判断できる。
次に、レイアウト編集アプリケーション121は、コンテナAに流し込まれるデータを読み込み、コンテナAが画像データ用コンテナである場合は、その画像データのサイズ(幅、高さのピクセル数、および解像度)がコンテナAの制約を受けない場合の大きさになる。また、コンテナAがテキスト用コンテナである場合は、そのテキストデータも文字数と、コンテナAのコンテナ属性で指定されているフォントタイプ、フォントサイズ、文字ピッチ、行ピッチなどの文字属性に基づいて、コンテナAに流し込まれるべきデータ量が計算できる。ここで、テキスト用コンテナの場合は、コンテナAの縦横比が制約を考えないと決定できないため、制約を当てはめる。
図12に示す例では、コンテナAは、左上および左下の角にアンカーが設定されているため、高さ(縦方向)が固定となる。よって、レイアウト編集アプリケーション121は、コンテナAの基本パターンとして設定されている幅(横方向)のコンテナAに、計算したデータ量(テキスト量)の文字を流し込めるか否かを判断する。すべて流し込めると判断された場合は、コンテナAは、基本パターンで設定されているサイズ(幅、高さ)に変更はない。また、すべて流し込めないと判断された場合は、コンテナAは、アンカー設定により高さが固定であるため、横方向に伸びることになる。ここで、レイアウト編集アプリケーション121は、コンテナAの幅がどれだけになると、計算したデータ量の文字を流し込めるかを計算し、コンテナAのサイズを算出する。
次に、レイアウト編集アプリケーション121は、レイアウトされるコンテナのサイズが、実際のコンテンツのサイズとできる限り差が少なくなるように、レイアウトの最適化を行う(S1103)。レイアウトの最適化は、動的にサイズを変化することが可能なように関連付けられたコンテナにおいて、それぞれに挿入されるコンテンツのサイズとレイアウトされるサイズとの差が、できる限り同じになるように行われる。
レイアウト編集アプリケーション121は、ステップS1102で算出したコンテナの集合のサイズ、つまりコンテナAとコンテナBとリンク1506(ここでは固定リンク)の合計サイズを求め、この合計サイズと、基本レイアウトにおける当該コンテナの集合のサイズ(図12の例ではコンテナAとコンテナBのそれぞれのアンカーアイコンの距離に相当する。)との差を求める。コンテナAやコンテナBの幅が大きくなると前ステップで計算されている場合は、差分値が発生する。レイアウト編集アプリケーション121は、この差分値をコンテナの集合の各要素に均等に分配することでレイアウト調整を行う。
レイアウト編集アプリケーション121は、レイアウトの最適化を行い、ルールに違反していた場合は、再度ルールを違反しないように計算をする(S1104)。ここで記述したルールとは、レイアウト作成時にユーザによって設定される制限であり、コンテナのサイズの可変範囲や位置の制限、可変リンクの場合はリンクの長さの変化の制限などである。ルールを違反しないようにレイアウトが計算されたら、その集合のレイアウトは完成される。そして、ステップS1102〜S1104の処理をページ上のすべての集合について施し、レイアウト編集アプリケーション121は、ページ全体のレイアウトを計算する(S1105)。
また、図13は、一実施形態によるレイアウトの優先順位を設定しない場合のUI表示例を示した図である。
図13(A)は、あるレコードが挿入されレイアウトが決定されている状態を表している。1301と1302はアンカー、1303と1304は固定された辺、1305は可変の辺、1306は可変の辺の変化方向を示している矢印、1308はリンクをそれぞれ示している。この状態において、レコードを変更し、異なったサイズのコンテンツを挿入する。
図13(B)は、図13(A)の状態に新しいコンテンツのサイズを重ねて示している。1309はそれぞれのコンテナに挿入されるコンテンツのサイズを表している。そして、レイアウト計算が行われる。図13(C)は、レイアウト計算された結果を示している。計算後の各コンテナのサイズは、実際挿入されるコンテンツのサイズと同等に差異があるように計算され、且つ前述したルールを違反しないように計算される。図13(C)で示されるように、図13(B)で示した挿入されるコンテンツサイズ(1309)と計算後のコンテンツサイズ(1310)は、双方において同等な差異がある。
次に、図14及び図15を用いて、コンテナに挿入されるデータがイメージである場合の可変リンクの効果を説明する。
[長さが可変のリンクの設定]
図14は、可変リンクによってコンテナを配置したときのユーザインターフェースにおける表示例を示す図である。図6と同様にアプリケーションウインドウ301とツールバー303がある。図14の状態では、ドキュメントテンプレート309上にコンテナ1203とコンテナ1204が存在する。それぞれのコンテナはアンカーアイコン1201、アンカーアイコン1202と固定された辺1205、辺1206を含んで構成されている。コンテナ1203と1204の間には可変サイズのリンク1209があり、コンテナ1203とコンテナ1204を結んでいる。コンテナ1203とコンテナ1204の間にはリンクが設定されているのでそれぞれの右辺1207と左辺1208は点線で表現されている。このため各コンテナにインジケーター1210、インジケーター1211が表示され、それぞれ辺1207と辺1208が可変であることを示している。
また、図15は、一実施形態によるリンクの設定ダイアログウインドウを示す図である。図15は、本発明の特徴的構成であるリンク設定手段におけるユーザインタフェース画面であり、リンク1209の情報をセットするためのダイアログウインドウ701の例である。このダイアログは、タイトルバー702、ツールボタン703、ダイアログウインドウの開閉を行うボタン704、各種の情報をセットするエリア709で構成されている。
このダイアログウインドウでは、リンクタイプが可変長(707)のリンクであるか、あるいは固定長(706)のリンクであるかの択一的な選択を行える。リンクタイプが可変の場合には、リンクの長さの最小値(Min.Distance710)、最大値(Max.Distance712)、ならびに基準値(Distance711)が設定できる。
図15に示すダイアログ701は、例えば、図8及び図9で説明したリンクの設定操作によって2つのコンテナ間にリンクを設定した後に、この設定されたリンクをクリック等の操作によって選択したときに表示される。或いは、リンクを設定した直後に、当該リンクに関するダイアログウインドウ701が自動的に表示されるようにしてもよい。ここで各コンテナ間の距離の基準値711は、データを流し込んだ際に各コンテナのサイズが変更されない場合に用いられるリンクの長さである。
図16は、一実施形態のユーザインターフェース103による可変リンクを設定するための処理手順を説明するためのフローチャートである。例えば、図12のコンテナAとコンテナBの間に図8及び図9で説明した手順でリンクを張ると、まず固定サイズのリンクが張られる。そして、このリンクを選択して図16に示す処理を実行することにより、当該リンクを固定サイズのリンク1506(図12)の状態から可変サイズのリンク1209(図14)へと遷移させることができる。
まず、マウスにより所望のリンク(たとえばリンク1506)を選択状態とし、リンクプロパティを表示させるための所定の操作が行われると、レイアウト編集アプリケーション121のユーザインターフェース103は、リンクプロパティの表示指示の入力として認識する(ステップS801)。リンクプロパティの表示指示を認識すると、選択状態のリンク(以下、「対象リンク」という。)に対応したプロパティダイアログウインドウ701(図15)が表示される。次に、ユーザインタフェース103は、リンクプロパティを表示する(ステップS802)。尚、リンクの選択操作としては、コンテナの基本パターンの設定時と同様に、マウスの右クリックあるいはキーボードの特定のキーの操作等、いかなるものであってもよい。
ステップS802で表示されるダイアログウインドウ701には選択されたリンクの現在の状態が示される。本実施形態では、リンク1506が選択されたので、この段階ではリンクサイズは固定であり、Link Type705においては、固定長を示すFixed Length706が選択されている。
このダイアログウインドウ701においてリンクを固定サイズから可変サイズに変更するために、Link Type705においてリンクサイズを可変に設定するためのFlexible Lenght707を選択する。これにより、Link Distance708内に配置されているMax.Distance712、Min.Distance710、Distance711が有効になり、数値の設定が可能となる。ユーザは、リンクの可変サイズを設定するために、そのリンクの長さの最大値をMax.Distance712に、最小値をMin.DIstance710に、現在の値をDistance711に設定することになる。
設定を終えると、ユーザは一般的なダイアログウインドウ開閉ボタン704によって当該設定の適用を指示する。ユーザインターフェース103はこの指示を検出すると、ステップS803からステップS804以降へ処理を進め、当該対象リンクに上記設定状態を反映させる。
すなわち、まず、ステップS804において、レイアウト編集アプリケーション121は、対象リンクが固定サイズか可変サイズかを判定する。固定サイズが指定されていればステップS808へ進み、対象リンクを「固定サイズ」に設定し、ステップS807で対象リンクの表示状態を「固定リンク」を表す「実線」とする。
一方、ステップS804において、可変サイズが指定されていれば、ステップS805へ進み、レイアウト編集アプリケーション121は、対象リンクを「可変サイズ」に設定する。そして、ステップS806にて、上記ダイアログウインドウ701によって設定された対象リンクの現在値(基準値)、最大値、最小値を登録する。その後、ステップS807で対象リンクの表示状態を「可変リンク」を表す「点線」とする。この結果、図14のリンク1209に示すような状態にリンクのUI表示が変化する。以上のダイアログウインドウ701の設定情報はメモリに格納される。
尚、Distance711に設定される現在の値には、現在のレイアウトとして配置されているコンテナの間の距離がデフォルト値として自動的に入力されるようにしてもよい。
図17は、固定サイズのリンクを使用した場合のレイアウト結果を示す図である。尚、レイアウト計算方法は前述した手順に従って行われる。例えば、図14において、コンテナ1203とコンテナ1204にそれぞれ違ったサイズのイメージデータが挿入された場合を考える。この場合、それぞれのコンテナはデータの大きさを最適とみなし、コンテナ1203は挿入されたイメージサイズになる枠804(最適コンテナサイズ)に近づこうと右方向へ、同様にコンテナ1204は挿入されたイメージサイズになる枠805(最適コンテナサイズ)に近づこうと左方向へサイズを変更しようとする。
しかしコンテナ1203とコンテナ1204はアンカー1201とアンカー1202によってそれぞれ左辺1212と右辺1213の移動ができず、上記のようにサイズを変更しようとすると両者の間隔を狭めるしかない。しかしながら、コンテナ間には固定サイズのリンク803が設定されており、レイアウト計算時にその長さ維持されるため、コンテナ1203とコンテナ1204のサイズが変更されることになる。
その結果、コンテナ1203とコンテナ1204はデータの縦横比に合わせた最適なサイズを確保することができず、最終的に図17に示すように、最適なサイズ(枠804、枠805)よりも小さくなってしまう。すなわち、リンク803のサイズが固定であるためコンテナ801とコンテナ802は最適サイズを達成できない(尚、図17において、各コンテナ内の一点差線で示した範囲がデータの持つ縦横比である)。
一方、図18は、可変サイズのリンクを使用した場合のレイアウト結果を示す図である。すなわち、図17と同様の状態で、リンクを可変サイズにした場合を示している。この場合、上記の例でコンテナ1203とコンテナ1204の間には図示の通り可変サイズのリンクが設定されている。従って、コンテナ1203とコンテナ1204のサイズが変更される際には、リンクサイズが縮まることでコンテナ1203とコンテナ1204のサイズを図17の例より大きくすることができる。
この結果、挿入されるデータサイズに合わせた最適なサイズを達成できる、或いは、より挿入データサイズ(最適サイズ)に近いコンテナの枠を設定することが出来る。図18はこの結果を示しており、可変リンク1209はレイアウト計算の結果、可変リンク903に示されるようなサイズ状態となる。尚、この場合コンテナ1203とコンテナ1204はそれぞれ最適なサイズ(データサイズに合った大きさ)になっている。
<文書処理システムの概要>
ここで、本実施形態に係る文書処理システムの概要について、図面を参照して説明する。本実施形態に係る文書処理システムは、一般アプリケーションにより作成されたデータファイルが、電子原稿ライタによって電子原稿ファイルに変換され、製本アプリケーションによってその電子原稿ファイルを編集する機能を提供する。尚、本実施形態では、それぞれの機能が明瞭になるように、一般アプリケーション、電子原稿ライタ、製本アプリケーション、電子原稿デスプーラと分離して示しているが、ユーザに提供されるパッケージはこれらに限定されず、これらを組合わせたアプリケーションやグラフィックエンジンとして提供されてもよい。
図19は、本発明の一実施形態に係る文書処理システムのソフトウェア構成を示すブロック図である。図19に示すように、本実施形態に係る文書処理システムは、本実施形態に係る文書処理装置(情報処理装置)の好適な実施形態であるデジタルコンピュータ1700(以下、「ホストコンピュータ」とも呼ばれる。)によって実現される。一般アプリケーション1701は、ワードプロセシングやスプレッドシート、フォトレタッチ、ドロー或いはペイント、プレゼンテーション、テキスト編集等の機能を提供するアプリケーションプログラムであり、OSに対する印刷機能を有している。
これらのアプリケーションは、作成された文書データや画像データ等のアプリケーションデータを印刷するにあたって、オペレーティングシステム(OS)により提供される所定のインターフェース(一般に、「GDI」と呼ばれる。)を利用する。すなわち、アプリケーション101は、作成したデータを印刷するために、上記インターフェースを提供するOSの出力モジュールに対して、あらかじめ定められる、OSに依存する形式の出力コマンド(GDI関数と呼ばれる。)を送信する。
出力コマンドを受けた出力モジュールは、プリンタ等の出力デバイスが処理可能な形式にそのコマンドを変換し、変換されたコマンド(DDI関数と呼ばれる)を出力する。出力デバイスが処理可能な形式は、デバイスの種類やメーカ、機種などによって異なるために、デバイスごとにデバイスドライバが提供されている。そして、OSによってそのデバイスドライバを利用してコマンドの変換が行われ、印刷データを生成し、JL(Job Language)で出力されることにより印刷ジョブが生成される。OSとしてマイクロソフト社のウインドウズ(登録商標)を利用する場合には、前述した出力モジュールとしてはGDI(Graphic Device Interface)と呼ばれるモジュールが相当する。
電子原稿ライタ1702は、前述のデバイスドライバを改良したものであり、本文書処理システム実現のために提供されるソフトウェアモジュールである。但し、電子原稿ライタ1702は特定の出力デバイスを目的としておらず、後述の製本アプリケーション1704やプリンタドライバ1706により処理可能な形式に出力コマンドを変換する。この電子原稿ライタ1702による変換後の形式(以後、「電子原稿形式」と呼ぶ。)は、ページ単位の原稿を詳細な書式をもって表現可能であれば特にその形式は問わない。実質的な標準形式のうちでは、例えばアドビシステムズによるPDF形式や、SVG形式などが電子原稿形式として採用可能である。
一般アプリケーション1701により電子原稿ライタ1702を利用させる場合には、出力に使用するデバイスドライバとして電子原稿ライタ1702を指定してから印刷を実行させる。但し、電子原稿ライタ1702によって作成されたままの電子原稿ファイルは、電子原稿ファイルとして完全な形式を備えていない。そのため、デバイスドライバとして電子原稿ライタ1702を指定するのは製本アプリケーション1704であり、その管理下でアプリケーションデータの電子原稿ファイルへの変換が実行される。
製本アプリケーション1704は、電子原稿ライタ1702が生成した新規の不完全な電子原稿ファイルを後述する形式を備えた電子原稿ファイルとして完成させる。以下では、この点を明瞭に識別する必要がある際には、電子原稿ライタ1702によって作成されたファイルを電子原稿ファイルと呼び、製本アプリケーションによって構造を与えられた電子原稿ファイルをブックファイルと呼ぶ。また、特に区別する必要がない場合は、アプリケーションにより生成されるドキュメントファイル、電子原稿ファイル、及びブックファイルをいずれも文書ファイル(または、文書データ)と呼ぶ。
このようにデバイスドライバとして電子原稿ライタ1702を指定し、一般アプリケーション1701によりそのデータを印刷させることで、アプリケーションデータはアプリケーション1701によって定義されたページ(以後、「論理ページ」あるいは「原稿ページ」と呼ぶ。)を単位とする電子原稿形式に変換され、電子原稿ファイル1703としてハードディスクなどの記憶媒体に格納される。なお、ハードディスクは、本実施形態の文書処理システムを実現するコンピュータが備えているローカルドライブであってもよいし、ネットワークに接続されている場合にはネットワーク上に提供されるドライブであっても良い。
製本アプリケーション1704は、電子原稿ファイル或いはブックファイル1703を読み込み、それを編集するための機能を利用者に提供する。但し、製本アプリケーション1704は、各ページの内容を編集する機能は提供しておらず、ページを最小単位として構成される、後述する「章」や「ブック」の構造を編集するための機能を提供している。
製本アプリケーション1704によって編集されたブックファイル1703を印刷する際には、製本アプリケーション1704によって電子原稿デスプーラ1705が起動される。電子原稿デスプーラ1705は、製本アプリケーション1704と共にコンピュータ内にインストールされるプログラムモジュールであり、製本アプリケーション1704で利用するドキュメント(ブックファイル)を印刷する際に、プリンタドライバへ描画データを出力するために使用されるモジュールである。
電子原稿デスプーラ1705は、指定されたブックファイルをハードディスクから読み出し、ブックファイルに記述された形式で各ページを印刷するために、前述したOSの出力モジュールに適合する出力コマンドを生成し、不図示の出力モジュールに出力する。その際に、出力デバイスとして使用されるプリンタ1707のプリンタドライバ1706がデバイスドライバとして指定される。
出力モジュールは、指定されたプリンタ1707のプリンタドライバ1706を用いて受信した出力コマンドを、プリンタ1707で解釈実行可能なデバイスコマンドに変換する。そして、デバイスコマンドがホストコンピュータ1700からプリンタ1707に送信され、プリンタ1707によって当該コマンドに応じた画像の印刷が実行される。
次に、製本アプリケーション1704の詳細について説明する前に、ブックファイルのデータ形式について説明する。ブックファイルは、紙媒体の書物を模した3層の層構造を有する。そして、その上位層は「ブック」と呼ばれ、1冊の本を模しており、その本全般に係る属性が定義されている。また、その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。尚、各章についても、章ごとの属性が定義できる。そして、下位層は「ページ」であり、アプリケーションプログラムで定義された各ページに相当する。尚、各ページついても、それぞれのページごとの属性の定義が可能である。さらにまた、一つのブックは複数の章を含んでいる場合があり、一つの章は複数のページを含んでいてもよい。
図20は、本実施形態におけるブックファイルの構造の一例を示す図である。尚、本実施形態では、ブックファイルが1つの完結したブックである必要はないので、「ブック」を「文書」として一般化して記載している。
図20に示すように、ブックファイルは、最上位に文書情報1801を持つ。文書情報1801は、3つのパート1802〜1804に大別することができる。文書制御情報1802は、文書ファイルのファイルシステムにおけるパス名等の情報を保持する。また、文書設定情報1803は、ページレイアウト等のレイアウト情報とステイプル等の印刷装置の機能設定情報を保持し、ブックの属性に相当する。さらに、章情報リスト1804は、文書を構成している章の集合をリスト形式で保持する。尚、リストが保持するのは章情報1805である。
章情報1805もまた、3つのパート1806〜1808に大別することができる。まず、章制御情報1806は、章の名称等の情報を保持する。また、章設定情報1807は、その章特有のページレイアウトやステイプルの情報を保持し、章の属性に相当する。尚、章ごとに設定情報を持つことで最初の章は、2upのレイアウト、その他の章は4upのレイアウトのように、複雑なレイアウトを持った文書を作成することが可能である。さらに、ページ情報リスト1808は、各章を構成する原稿ページの集合リスト形式で保持している。尚、ページ情報リスト1808が指示するのは、ページ情報データ1809である。
そして、ページ情報データ1809もまた、3つのパート1810〜1812に大別することができる。まず、ページ制御情報1810は、ツリー上に表示するページ番号等の情報を保持する。また、ページ設定情報1811は、ページ回転角やページの配置位置情報等の情報を保持し、原稿ページの属性に相当する。さらに、ページリンク情報1812は、ページに対応する原稿データである。図20に示す例では、ページ情報1809が直接原稿データを持つのではなく、リンク情報1812だけを持っており、実際の原稿データは、ページデータリスト1813で保持する構成としている。
図21は、ブック属性(文書設定情報1803)の一覧を示す図である。通常、下位層と重複して定義可能な項目に関しては、下位層の属性値が優先採用される。そのため、ブック属性にのみ含まれる項目に関しては、ブック属性に定義された値はブック全体を通して有効な値となる。しかし、下位層と重複する項目については、下位層において定義されていない場合における既定値としての意味を有する。しかし、本実施形態では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。尚、図示された各項目は、具体的に1項目に対応するのではなく、関連する複数の項目を含むものもある。
ブック属性に固有の項目は、(1)印刷方法、(2)製本詳細、(3)表紙/裏表紙、(4)インデックス紙、(5)合紙、(6)章区切りの6項目である。これらは、ブックを通して定義される項目である。
(1)印刷方法属性としては、片面印刷、両面印刷、製本印刷の3つの値を指定できる。製本印刷とは、別途指定する枚数の用紙を束にして2つ折りにし、その束をつづり合わせることであり、製本が可能となる形式で印刷する方法である。
(2)製本詳細属性としては、製本印刷が指定されている場合に見開き方向や、束になる枚数等が指定できる。
(3)表紙/裏表紙属性は、ブックとしてまとめられる電子原稿ファイルを印刷する際に、表紙及び裏表紙となる用紙を付加することの指定、及び付加した用紙への印刷内容の指定を含む。
(4)インデックス紙属性は、章の区切りとして、印刷装置に別途用意される耳付きのインデックス紙の挿入の指定及びインデックス(耳)部分への印刷内容の指定を含む。この属性は、印刷用紙とは別に用意された用紙を所望の位置に挿入するインサート機能を持ったインサータが使用する印刷装置に備えられている場合か、或いは、複数の給紙カセットを使用可能である場合に有効となる。これは合紙属性についても同様である。
(5)合紙属性は、章の区切りとして、インサータからあるいは給紙カセットから供給される用紙の挿入の指定、及び、合紙を挿入する場合には、給紙元の指定等を含む。
(6)章区切り属性は、章の区切り目において、新たな用紙を使用するか、新たな印刷ページを使用するか、特に何もしないか等の指定を含む。片面印刷時には、新たな用紙の使用と新たな印刷ページの使用とは同じ意味を持つ。また、両面印刷時には、「新たな用紙の使用」を指定すれば連続する章が1枚の用紙に印刷されることはないが、「新たな印刷ページの使用」を指定すれば、連続する章が1枚の用紙の表裏に印刷されることがあり得る。
図22は、章属性(章設定情報1807)のリスト例を示す図である。また、図23は、ページ属性(ページ設定情報1811)のリスト例を示す図である。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。
章属性に関しては、章に固有の項目はなく、すべてブック属性と重複する。従って、通常は、章属性における定義とブック属性における定義とが異なった場合は、章属性で定義された値が優先する。しかし、本実施形態では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
ブック属性と章属性にのみ共通する項目は、用紙サイズ、用紙方向、N−up印刷指定、拡大縮小、排紙方法の5項目である。このうち、N−up印刷指定属性は、1印刷ページに含まれる原稿ページ数を指定するための項目である。指定可能な配置としては、1×1、1×2、2×2、3×3、4×4等がある。また、排紙方法属性は、排出した用紙にステイプル処理を施すか否かを指定するための項目であり、この属性の有効性は使用する印刷装置がステイプル機能を有するか否かに依存する。
ページ属性に固有の項目には、ページ回転属性、ズーム、配置指定、アノテーション、ページ分割等がある。ページ回転属性は、原稿ページを印刷ページに配置する際の回転角度を指定するための項目である。ズーム属性は、原稿ページの変倍率を指定するための項目である。変倍率は、仮想論理ページ領域のサイズを100%として指定される。仮想論理ページ領域とは、原稿ページを、N−up等の指定に応じて配置した場合に、1原稿ページが占める領域である。例えば1×1であれば、仮想論理ページ領域は1印刷ページに相当する領域となり、1×2であれば、1印刷ページの各辺を約70パーセントに縮小した領域となる。
また、ブック、章、ページについて共通な属性として、ウォーターマーク属性及びヘッダ・フッタ属性がある。ウォーターマークとは、アプリケーションで作成されたデータに重ねて印刷される、別途指定される画像や文字列等である。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。但し、ヘッダ・フッタには、ページ番号や日時など、変数により指定可能な項目が用意されている。
尚、ウォーターマーク属性及びヘッダ・フッタ属性において指定可能な内容は、章とページとは共通であるが、ブックはそれらと異なっている。ブックにおいてはウォーターマークやヘッダ・フッタの内容を設定できるし、また、ブック全体を通して、どのようにウォーターマークやヘッダ・フッタを印刷するかを指定することができる。一方、章やページでは、その章やページにおいて、ブックで設定されたウォーターマークやヘッダ・フッタを印刷するか否かを指定できる。本実施形態におけるブックファイルは、上述したような構造及び内容を有している。
次に、製本アプリケーション1704及び電子原稿ライタ1702によって、ブックファイルを作成する手順について説明する。ブックファイルの作成は、製本アプリケーション1704によるブックファイルの編集操作の一環として実現される。
図24は、本発明の一実施形態における製本アプリケーション1704によりブックファイルを開く際の手順を説明するためのフローチャートである。まず、開こうとするブックファイルが、新規作成すべきものであるか、それとも既存のものであるかを判定する(ステップS2401)。その結果、新規作成の場合(Yes)には、章を含まないブックファイルを新規に作成する(ステップS2402)。このとき、ブック属性は、新規作成用としてあらかじめ用意された属性のセットが適用される。そして、新規ブックファイルを編集するためのユーザインターフェース(UI)画面を表示する(ステップS2404)。図25は、ステップS2404において新規にブックファイルが作成された際のUI画面の一例である。図25に示されるように、この場合には、ブックファイルは実質的な内容を持たないために、UI画面2300には何も表示されない。
一方、ステップS2401で既存のブックファイルであると判断された場合(No)、指定されたブックファイルを開き(S2403)、そのブックファイルの構造、属性、内容に従ってユーザインタフェース(UI)画面を表示する(ステップS2404)。
図26は、既存のブックファイルを開いた際のUI画面の一例を示す図である。図26に示すように、UI画面2400は、ブックの構造を示すツリー部2401と、印刷された状態を表示するプレビュー部2402とを含む。ツリー部2401には、ブックに含まれる章、各章に含まれるページが、図20に示すような木構造が分かるように表示される。図26において、ツリー部2401に表示されるページは原稿ページである。また、プレビュー部2402には、印刷ページの内容が縮小されて表示される。その表示順序は、ブックの構造を反映したものとなっている。
一方で、開かれたブックファイルには、電子原稿ライタ1702によって電子原稿ファイルに変換されたアプリケーションデータを、新たな章として追加することができる。この機能を電子原稿インポート機能と呼ぶ。本実施形態では、図24のフローチャートで示される手順に従って新規に作成されたブックファイルに電子原稿インポートすることで、そのブックファイルに対して実体が与えられる。この機能は、図25や図26に示される画面にアプリケーションデータをドラッグ&ドロップ操作することで起動される。
図27は、電子原稿ファイルをブックファイルにインポートする手順を説明するためのフローチャートである。まず、指定されたアプリケーションデータを生成したアプリケーションプログラムを起動し、デバイスドライバとして電子原稿ライタ1702を指定してアプリケーションデータを印刷出力させることで、電子原稿データに変換する(ステップS2501)。
そして、変換されたデータが画像データであるか否かを判定する(ステップS2502)。この判定は、例えば、ウインドウズ(登録商標)のOS下であれば、アプリケーションデータのファイル拡張子に基づいて行うことができる。例えば、拡張子が「bmp」であればビットマップデータであり、「jpg」であればJPEG圧縮された画像データ、「tiff」であればtiff形式の画像データであると判定することができる。また、このような画像データの場合はアプリケーションを起動せずに、画像データから直接電子原稿ファイルを生成することが可能である。
ここで、ステップS2502の判定結果から、画像データでないと判定された場合(No)は、ステップS2501で生成された電子原稿ファイルを、現在開かれているブックファイルのブックに対して新たな章として追加する(ステップS2503)。通常、章属性としては、ブック属性と共通するものについてはブック属性の値がコピーされ、そうでないものについては、あらかじめ用意された規定値に設定される。これに対して、本実施形態では、後述するように下位層の属性値を優先するか否かが選択可能となっている。
一方、ステップS2502の判定結果から画像データであると判定された場合(Yes)には、原則として新たな章は追加されず、指定されている章に対してステップS2501で生成された電子原稿ファイルに含まれる各原稿ページが追加される(ステップS2504)。但し、ブックファイルが新規作成されたファイルである場合は新たな章が作成されて、その章に属するページとして電子原稿ファイルの各ページが追加される。
通常、ページ属性は、上位層の属性と共通のものについてはその属性値が与えられ、アプリケーションデータにおいて定義された属性を電子原稿ファイルに引き継いでいるものについてはその値が与えられる。例えば、N−up指定等がアプリケーションデータにおいてされていた場合には、その属性値が引き継がれる。このようにして、新規なブックファイルが作成され、或いは、新規な章が追加される。しかし、本実施形態では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
図28は、ステップS2501において電子原稿ライタ1702により電子原稿ファイルを生成させる処理の詳細を説明するためのフローチャートである。
まず、新たな電子原稿ファイルを作成してそれを開く(ステップS2601)。次いで、指定したアプリケーションデータに対応するアプリケーションを起動し、電子原稿ライタ1702をデバイスドライバとして、OSの出力モジュールに対して出力コマンドを送信させる。出力モジュールは、受信した出力コマンドを電子原稿ライタによって電子原稿形式のデータに変換して出力する(ステップS2602)。尚、データの出力先はステップS2601で開いた電子原稿ファイルである。
そして、指定されたデータすべてについて変換が終了したか否かを判定し(ステップS2603)、終了している場合(Yes)は、電子原稿ファイルを閉じて終了する(ステップS2604)。ここで、電子原稿ライタ1702によって生成される電子原稿ファイルは、原稿ページデータの実体を含むファイルである。
以上のようにして、アプリケーションデータからブックファイルを作成することができる。生成されたブックファイルについては、章及びページに対して次のような編集操作が可能である。
(1)新規追加
(2)削除
(3)コピー
(4)切り取り
(5)貼り付け
(6)移動
(7)章名称変更
(8)ページ番号名称振り直し
(9)表紙挿入
(10)合紙挿入
(11)インデックス紙挿入
(12)各原稿ページに対するページレイアウト。
尚、上述した編集操作の他には、一旦行った編集操作を取り消す操作や、さらに取り消した操作をやり直す操作が可能である。これらの編集機能により、例えば複数のブックファイルの統合、ブックファイル内で章やページの再配置、ブックファイル内で章やページの削除、原稿ページのレイアウト変更、合紙やインデックス紙の挿入等といった編集操作が可能となる。これらの操作を行うと、図21〜図23に示す属性に操作結果が反映されたり、或いはブックファイルの構造に反映される。
例えば、ブランクページの新規追加操作を行った場合には、指定された箇所にブランクページが挿入される。尚、このブランクページは原稿ページとして扱われる。また、原稿ページに対するレイアウトを変更すれば、その変更内容は、印刷方法やN−up印刷、表紙/裏表紙、インデックス紙、合紙、章区切りといった属性に反映される。
ここで、本実施形態における編集時の表示及び操作例について詳細に説明する。
以上説明したようにして作成・編集されるブックファイルは、印刷出力を最終目的としている。そこで、利用者が図26に示す製本アプリケーションのUI画面2400からファイルメニューを選択し、そこから印刷を選択すると、指定した出力デバイスにより印刷出力される。この際、まず製本アプリケーション1704は、現在開かれているブックファイルからジョブチケットを作成して電子原稿デスプーラ1705に渡す。電子原稿デスプーラ105は、当該ジョブチケットをOSの出力コマンド、例えばウインドウズ(登録商標)のGDIコマンドに変換し、それを出力モジュール、例えばGDIに送信する。また、出力モジュールは、指定されたプリンタドライバ106によってデバイスに適したコマンドを生成し、そのデバイスに送信する。
すなわち、図示しない出力モジュールのグラフィックエンジンは、印刷装置ごとに用意されたプリンタドライバ1706を外部メモリからRAMにロードし、出力をプリンタドライバ1706に設定する。そして、出力モジュールは、受け取ったGDI関数からDDI(Device Driver Interface)関数に変換して、プリンタドライバ1706へ当該DDI関数を出力する。また、プリンタドライバ1706は、出力モジュールから受け取ったDDI関数に基づいて、プリンタが認識可能な制御コマンド、例えばPDL(Page Description Language)に変換する。変換されたプリンタ制御コマンドは、OSによってRAMにロードされたシステムスプーラを経て、プリンタ1707へ印刷データとして出力される仕組みとなっている。
ここで、上記ジョブチケットは、原稿ページを最小単位とする構造を有するデータである。ジョブチケットにおける構造は、用紙上における原稿ページのレイアウトを定義している。ジョブチケットは1ジョブにつき1つ発行される。そのため、まず最上位にドキュメントというノードがあり、文書全体の属性、例えば両面印刷/片面印刷などが定義されている。その下には、用紙ノードが属し、用いるべき用紙の識別子や、プリンタにおける給紙口の指定などの属性が含まれる。各用紙ノードには、その用紙で印刷されるシートのノードが属する。1シートは1枚の用紙に相当する。各シートには、印刷ページ(物理ページ)が属する。例えば、片面印刷の場合は1シートには1物理ページが属し、両面印刷の場合は1シートに2物理ページが属する。各物理ページには、その上に配置される原稿ページが属する。また、物理ページの属性として、原稿ページのレイアウトが含まれる。
図29は、印刷や表示を行う際に使用するデータ構造の一例を示す図である。例えば、印刷用のデータでは、文書は用紙の集合で構成され、各用紙は表、裏の2面で構成されている。また、各面は原稿をレイアウトする領域(物理ページ)を持ち、各物理ページには、最小単位である原稿ページの集合から構成される。
図29において、291は文書に相当するデータであり、文書全体に関係するデータと、文書を構成する用紙情報のリストから構成される。用紙情報292は、用紙サイズなど用紙に関する情報と用紙上に配置される面情報のリストから構成される。面情報293は、面に固有のデータと、面上に配置される物理ページのリストから構成される。物理ページ情報294は、物理ページのサイズやヘッダ・フッタ等の情報と、物理ページを構成する原稿ページのリストから構成される。
電子原稿デスプーラ1705は、上述したようなジョブチケットを、出力モジュールへの出力コマンドに変換する。
すでに説明したとおり、ブックファイルが製本アプリケーションによって開かれると、図26に示すユーザインタフェース画面2400が表示される。図26において、ツリー部2401には、開いているブック(以下、「注目ブック」と呼ぶ。)の構造を示すツリーが表示される。プレビュー部2402には、利用者の指定に応じて、例えば3通りの表示方法が用意されている。
第1は、原稿ページをそのまま表示する原稿ビューと呼ばれるモードである。原稿ビューモードでは、注目ブックに属する原稿ページの内容が縮小されて表示される。尚、プレビュー部2402の表示にレイアウトは反映されない。第2は、印刷ビューモードである。印刷ビューモードにおいてプレビュー部2402には、原稿ページのレイアウトが反映された形で原稿ページが表示される。第3は、簡易印刷ビューモードである。簡易印刷ビューモードでは、各原稿ページの内容はプレビュー部の表示には反映されず、レイアウトのみが反映される。
図30〜32は、本発明を特徴づけるダイナミックレイアウト処理の手順を説明するためのフローチャートである。以下では、図30〜32に示すフローチャートを用いて本実施形態に係るダイナミックレイアウト処理の詳細について説明する。
先に説明したように、レイアウト編集アプリケーション121は、コンテンツデータ及びドキュメントテンプレート情報ファイル(テンプレートデータとも呼ぶ。)を含んだファイル(以降、ダイナミックレイアウトファイルと呼ぶ)を保存する。このファイルはレイアウトエンジン105を搭載しているアプリケーションはこのダイナミックレイアウトファイルを読むことが可能である。本実施形態に係る文書処理システムは、このレイアウトエンジン105を製本アプリケーション1704内に搭載している。ダイナミックレイアウトファイルに含まれるドキュメントテンプレート情報ファイルは、バリアブルデータを流し込むための部分領域(フィールド領域)をページ内にレイアウトされた基本レイアウトを持ち、複数の部分領域が互いに連動してレイアウトされることを定義すべるために当該複数の部分領域間にリンクが設定されているテンプレートデータである。
このダイナミックレイアウトファイルは、製本アプリケーション1704へインポートすることが可能である。このファイルをインポートすることにより、製本アプリケーション1704上で先に説明した複数アプリケーションの結合、属性属性の変更を行い、印刷を行うことが可能となる。
図30に示すように、先にレイアウト編集アプリケーション121で作成したダイナミックレイアウトファイルを製本アプリケーション1704にドラッグ&ドロップした場合、まず、ドキュメントテンプレートを含むダイナミックレイアウトファイルのインポート処理が行われる(ステップS2701)。図31は、ステップS2701のダイナミックレイアウトファイルのインポート処理の詳細を説明するためのフローチャートである。
ここでは、まず、製本アプリケーション1704は、ドラッグ&ドロップされたファイルがダイナミックレイアウトファイルかの判定処理が行われる(ステップS2801)。先に説明したように、ダイナミックレイアウトファイルでなければ、他の一般アプリケーションと同様に、新たな電子原稿ファイルを新規作成し、作成したファイルを開く(ステップS2601)。そして、ドロップされた文書ファイルに関連付けられているアプリケーションを起動し、印刷処理させることで描画出力させ、前述したように、出力された描画データの変換処理を行う(ステップS2602)。そして、全ページのデータ変換処理が終了したかを判定し(ステップS2603)、終了したと判定された場合に、生成された電子原稿ファイルのクローズ処理(ステップS2604)を経て電子原稿生成が行われる(ステップS2802)。
本実施形態では、ダイナミックレイアウトファイルを想定しているため、新たに電子原稿ファイルを生成する必要がない。そこで、ステップS2801でYesと判定されて、ダイナミックレイアウトファイル(テンプレートデータ)をデータ変換することなく、次の生成されたファイルをブックに章として追加する処理(ステップS2804)が行われる。これにより、前述したように、既に存在するブックにダイナミックレイアウトファイルが章として追加されることになる。尚、章属性としては、ブック属性と共通するものについてはブック属性の値がコピーされ、そうでないものについては、あらかじめ用意された規定値に設定される。このようにしてインポート(取り込まれた)ダイナミックレイアウトファイルは、ページ単位のテンプレートデータ毎に、図20のページデータリスト1813に格納され、製本アプリケーションにより管理される。
ステップS2701のインポート処理後は、属性設定情報の取得処理が行われる(ステップS2702)。これは、先に説明した属性設定を後のダイナミックレイアウト処理(ステップS2703)のために取得する処理である。そして、次のダイナミックレイアウト処理が行われる(ステップS2703)。図32は、ステップS2703のダイナミックレイアウト処理の詳細を説明するためのフローチャートである。
図32に示すように、まず、製本アプリケーション1704は、印刷対象の電子原稿中のダイナミックレイアウトファイルのページを処理する場合に、該当するページのドキュメントテンプレート情報を取得する処理が実行される(ステップS2901)。これはドラッグ&ドロップされたダイナミックレイアウトファイルのドキュメントテンプレート情報を、図20に示したページデータリスト1813から取得する処理である。
図33は、ダイナミックレイアウト情報の一例を示す図である。図33に示すように、ダイナミックレイアウト情報は、既にデザイナー等によって作成された基本テンプレートを有するものであって、テンプレート33a中の(A)はイメージの可変コンテナであり、矢印の方向に可変である。また、(B)はテキストの可変コンテナであり、これも矢印の方向に可変である。このようなテンプレート33aが取得されたとする。また、図33において、33b及び33cは、それぞれイメージ、テキストのコンテンツデータの一例を示している。
図34は、図33に示されるテンプレート33aコンテンツデータ33b、33cを流し込み、図11及び図16で説明したレイアウト計算処理が実行された結果の例を示す図である。図34に示すように、ダイナミックレイアウト情報に対して、製本アプリケーションがなにも制約を与えない場合は、前述したレイアウト計算処理が実行される。ここで、挿入されるイメージ及びテキストは、それぞれレコード毎にその大きさが異なっている。
次に、製本アプリケーション1704において、印刷条件の設定ユーザインタフェースを介して操作者から設定された印刷条件を取得し、取得した印刷条件でとじしろ設定があるか否かの判定処理が行われる(ステップS2902)。これは製本アプリケーション上で、ダイナミックレイアウトファイルを取り込む前に、とじしろの設定が既にされているか否かを判定する処理である。製本アプリケーションでは、UI上からとじしろの設定をすることが可能であり、本実施形態では一例として長辺左とじと、片面を想定している。図35は、連携時の製本アプリケーションUIの設定UI画面の一例を示す図である。図25に示すような情報が、図30のフローチャートにおける属性設定情報の取得処理(ステップS2702)より取得した属性設定の中から取得される。
ステップS2902でとじしろ設定がされていると判定された場合(Yes)は、次いで原稿の調整設定が動的レイアウトであるか、印字領域に合わせて縮小であるか、とじ幅に合わせて移動であるか否かの判定処理が行われる(ステップS2903)。図35の設定UI例に示すように、原稿の調整設定には「余白で設定した印字領域に合わせて縮小」351、「とじ幅に合わせて移動」352、「動的レイアウト」353の3種類の設定が選択可能であり、ユーザがこの3つの中からとじしろと原稿との関係を選択することが可能である。
図36は、図35の設定UI画面において「余白で設定した印字領域に合わせて縮小」351を選択した場合のイメージを示す図である。また、図37は、図35の設定UI画面において「とじ幅に合わせて移動」352を選択した場合のイメージを示す図である。ここで、前者は、縦横比が変わらないように縮小することができる一方で、デザイナーが意図した大きさを変えてしまうというデメリットがある。また、後者は、とじ幅によってその分が右へシフトされることで右端が切れてしまう場合があり得るというデメリットがある。
原稿の調整設定が動的レイアウトかの判定処理2903は、上記3つの設定のうち「動的レイアウト」353が選択されているか否かを判定する処理である。尚、ダイナミックレイアウトファイルを取り込んだ時点で設定を「動的レイアウト」に自動的に変更されるか、取り込んだ後、ユーザが設定しておくかは本実施形態では問わない。また、ダイナミックレイアウトファイルを取り込む以前にこの選択を許すかどうかも本実施形態では問わないこととする。
ステップS2903において、「余白で設定した印字領域に合わせて縮小」351が選択されている場合(NO)、図11及び図16で前述したレイアウト計算処理を行った結果を、印字領域に合わせて縦横比を維持したまま縮小して印刷データを生成する。また、ステップS2903において、とじ幅に合わせて移動」352が選択されている場合(NO)も、図11及び図16で前述したレイアウト計算処理を行った結果を、とじ幅に合わせて綴じ位置から離れる方向に移動して座標計算した結果を印刷データとして生成する。
ステップS2903において、図35に示すように「動的レイアウト」353が選択されている場合(YES)、次いで、動的レイアウトが可能な原稿であるか否か、すなわちダイナミックレイアウトファイルのページであるか否かが判断される(ステップS2904)。その結果、動的レイアウトが可能であると判断された場合(Yes)は、先に取得したドキュメントテンプレート情報の基本テンプレートとリンク設定とに基づいて、ダイナミックレイアウトエンジンを起動し、綴じ代部分がレイアウト禁止領域として設定し、図11及び図16で説明したようにレイアウト計算処理が行われる(ステップS2905)。またここでのレイアウト計算処理は、製本アプリケーションからの印刷条件の制約(綴じ代など)がないものとしてレイアウト計算したレイアウト結果を補正する処理として実現されてもよい。この場合、先に取得したとじしろ設定に合わせて、ドキュメントテンプレートを補正する処理となる。
レイアウト編集アプリケーション121におけるドキュメントテンプレート作成時の用紙サイズ(テンプレートサイズ)は、製本アプリケーション1704上でのとじしろ設定を予め意識することはできない。そこで、製本アプリケーション1704における印刷出力時に、レイアウトエンジン225(105)が印刷条件を取得し、取得された印刷条件(本実施例では、とじしろ設定)によって、各コンテナのサイズがこの印刷条件である綴じ代をレイアウトできない禁止領域として設定したテンプレートサイズに補正がなされることになる。ここでは、用紙サイズ(テンプレートサイズ)の横方向が小さくなるため、それに伴い、各コンテナの横方向の最大サイズが補正される。例えば、とじしろ分だけ、各コンテナの横方向の最大サイズを均等に小さくするという補正になる。また、固定リンクであればそのサイズを、可変リンクであればその最小サイズを小さくするということも可能である。
その後、コンテンツデータの取得処理が行われる(ステップS2906)。これは所望するレコードのコンテンツデータをダイナミックレイアウトファイル若しくはデータベース等から取得する処理である。尚、ファイル内若しくはデータベースの種類等は問わない。ここでは、図33に示すようなイメージデータ及びテキストデータが取得されたとする。
そして、図11及び図16で前述したレイアウト処理が行われる(ステップS2907)。これは先に補正されたテンプレートサイズを含むドキュメントテンプレート情報及びコンテンツデータより実際のレイアウトの計算がされる処理である。図38は、図35の設定UI画面において「動的レイアウト」353を選択した場合のイメージを示す図である。図38のイメージにおいて、点線で示したものは、ドキュメントテンプレートが補正されていなかった場合の領域及びテキストコンテナの矩形を示したものである。先の補正により、図38で示す図のようにレイアウト計算が行われ、適切なレイアウトを配置することができる。
一方、ステップS2904において動的レイアウトが不可能であると判断された場合(No)は、動的レイアウトができない旨の警告メッセージや警告音等による警告をユーザに対して報知する(ステップS2908)。その後、デフォルトの処理(例えば、前の処理に戻る。)を行って(ステップS2909)、当該処理を終了する。
また、本実施形態では、長辺左とじ、片面印刷を想定したが、例えば、短辺上とじの場合であれば、用紙サイズ(テンプレートサイズ)の縦方向が小さくなるため、それに伴って各コンテナの縦方向の最大サイズが補正される。
<他の実施形態>
上述した実施形態に対して、製本アプリケーション上のとじしろの設定ではなく、デバイスの有効印字領域を取得して、ドキュメントテンプレートの補正を行う場合が考えられる。この場合、図32において、製本アプリケーション上のとじしろの設定判定処理の代わりにデバイスの有効印字領域取得処理を行い、そのサイズを元にドキュメントテンプレート情報の補正処理を行う。このデバイスの有効印字領域取得処理はドライバ経由でドライバ設定を含めた有効印字領域を取得する処理である。その後のコンテンツデータ取得処理(ステップS2906)、レイアウト処理(ステップS2907)は同様に行われ、デバイスの有効印字領域を考慮した動的レイアウトが可能となる。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
本発明の一実施形態に係るバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の構成例を示すブロック図である。 図1に示されたホストコンピュータ101の構成をさらに詳細に示すブロック図である。 本発明の一実施形態におけるバリアブルデータプリントの概略を説明する図である。 本発明の一実施形態に係るバリアブルデータドキュメントを印刷するためのバリアブルプリントシステム100の他の構成例を示すブロック図である。 メニューバー、ツールバー、ワークエリア、フローティングパレットを含む一実施形態におけるユーザインターフェースの一例を示す図である。 ユーザインターフェースにおけるコンテナの表示例を示す図である。 一実施形態におけるコンテナの表示ルールを説明するための図である。 一実施形態におけるリンクの設定方法を説明するためのフローチャートである。 一実施形態におけるリンク設定時のユーザインターフェース(UI)の遷移例(A)〜(C)を示す図である。 本発明の一実施形態のレイアウトエンジンによるレイアウト計算処理手順を説明するためのフローチャートである。 一実施形態によるレイアウトの優先順位を設定しない場合のレイアウト計算の方法を示したフローチャートである。 本発明の一実施形態のレイアウト計算時における、コンテナの集合について説明するための図である。 一実施形態によるレイアウトの優先順位を設定しない場合のUI表示例を示した図である。 可変リンクによってコンテナを配置したときのユーザインターフェースにおける表示例を示す図である。 一実施形態によるリンクの設定ダイアログウインドウを示す図である。 一実施形態のユーザインターフェース103による可変リンクを設定するための処理手順を説明するためのフローチャートである。 固定サイズのリンクを使用した場合のレイアウト結果を示す図である。 可変サイズのリンクを使用した場合のレイアウト結果を示す図である。 本発明の一実施形態に係る文書処理システムのソフトウェア構成を示すブロック図である。 本実施形態におけるブックファイルの構造の一例を示す図である。 ブック属性(文書設定情報1803)の一覧を示す図である。 章属性(章設定情報1807)のリスト例を示す図である。 ページ属性(ページ設定情報1811)のリスト例を示す図である。 本発明の一実施形態における製本アプリケーション1704によりブックファイルを開く際の手順を説明するためのフローチャートである。 ステップS2404において新規にブックファイルが作成された際のUI画面の一例である。 既存のブックファイルを開いた際のUI画面の一例を示す図である。 電子原稿ファイルをブックファイルにインポートする手順を説明するためのフローチャートである。 ステップS2501において電子原稿ライタ1702により電子原稿ファイルを生成させる処理の詳細を説明するためのフローチャートである。 印刷や表示を行う際に使用するデータ構造の一例を示す図である。 本発明を特徴づけるダイナミックレイアウト処理の手順を説明するためのフローチャートである。 ステップS2701のダイナミックレイアウトファイルのインポート処理の詳細を説明するためのフローチャートである。 ステップS2703のダイナミックレイアウト処理の詳細を説明するためのフローチャートである。 ダイナミックレイアウト情報の一例を示す図である。 図33に示されるテンプレート33aコンテンツデータ33b、33cを流し込み、図11及び図16で説明したレイアウト計算処理が実行された結果の例を示す図である。 連携時の製本アプリケーションUIの設定UI画面の一例を示す図である。 図35の設定UI画面において「余白で設定した印字領域に合わせて縮小」351を選択した場合のイメージを示す図である。 図35の設定UI画面において「とじ幅に合わせて移動」352を選択した場合のイメージを示す図である。 図35の設定UI画面において「動的レイアウト」353を選択した場合のイメージを示す図である。

Claims (15)

  1. データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成手段と、
    前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整手段と、
    前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定手段と、
    前記印刷条件設定手段において設定された綴じ代に基づいて、前記テンプレートを補正する補正手段と、
    前記部分領域に流し込まれるデータの大きさと前記補正手段によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整手段とを有し、
    前記補正手段は、前記第2調整手段が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整手段が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とするレイアウト調整装置。
  2. 前記複数の部分領域間の距離が取りうる範囲を設定する設定手段をさらに備え、
    前記補正手段は、前記複数の部分領域間の距離が取りうる範囲の最小サイズを縮小することで前記テンプレートを補正することを特徴とする請求項1に記載のレイアウト調整装置。
  3. 前記補正手段は、前記テンプレートに配置された部分領域の横方向の最大サイズを縮小することで前記テンプレートを補正することを特徴とする請求項1に記載のレイアウト調整装置。
  4. 前記補正手段は、前記複数の部分領域間の距離を縮小することで前記テンプレートを補正することを特徴とする請求項1に記載のレイアウト調整装置。
  5. 前記テンプレートに配置された2つの部分領域を接続するためのリンクを設定するリンク設定手段を更に有し、
    前記第1調整手段および前記第2調整手段は、前記リンクで接続された第1部分領域に流し込まれるデータの変化量と第2部分領域に流し込まれるデータの変化量とが等しくなるようにレイアウトを調整することを特徴とする請求項1乃至4のいずれか1項に記載のレイアウト調整装置。
  6. レイアウト調整装置の制御方法であって、
    前記レイアウト調整装置の生成手段が、データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成工程と、
    前記レイアウト調整装置の第1調整手段が、前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整工程と、
    前記レイアウト調整装置の印刷条件設定手段が、前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定工程と、
    前記レイアウト調整装置の補正手段が、前記印刷条件設定工程において設定された綴じ代に基づいて、前記テンプレートを補正する補正工程と、
    前記レイアウト調整装置の第2調整手段が、前記部分領域に流し込まれるデータの大きさと前記補正工程によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整工程とを有し、
    前記補正工程は、前記第2調整工程が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整工程が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とする制御方法。
  7. 前記複数の部分領域間の距離が取りうる範囲を設定する設定工程をさらに有し、
    前記補正工程は、前記複数の部分領域間の距離が取りうる範囲の最小サイズを縮小することで前記テンプレートを補正することを特徴とする請求項6に記載の制御方法。
  8. 前記補正工程は、前記テンプレートに配置された部分領域の横方向の最大サイズを縮小することで前記テンプレートを補正することを特徴とする請求項6に記載の制御方法。
  9. 前記補正工程は、前記複数の部分領域間の距離を縮小することで前記テンプレートを補正することを特徴とする請求項6に記載の制御方法。
  10. 前記テンプレートに配置された2つの部分領域を接続するためのリンクを設定するリンク設定工程を更に有し、
    前記第1調整工程および前記第2調整工程は、前記リンクで接続された第1部分領域に流し込まれるデータの変化量と第2部分領域に流し込まれるデータの変化量とが等しくなるようにレイアウトを調整することを特徴とする請求項6乃至9のいずれか1項に記載の制御方法。
  11. コンピュータを、
    データが流し込まれる複数の部分領域が配置されたテンプレートを生成する生成手段と、
    前記テンプレートに配置された部分領域に流し込まれるデータの大きさと前記テンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第1レイアウトを得る第1調整手段と、
    前記テンプレートを含む文書を印刷する際の綴じ代を設定する印刷条件設定手段と、
    前記印刷条件設定手段において設定された綴じ代に基づいて、前記テンプレートを補正する補正手段と、
    前記部分領域に流し込まれるデータの大きさと前記補正手段によって補正されたテンプレートとに基づいて、前記複数の部分領域のサイズと位置を表す第2レイアウトを得る第2調整手段として機能させ、
    前記補正手段は、前記第2調整手段が前記データを用いることにより得られた第2レイアウトにおける前記特定の部分領域を、前記第1調整手段が前記データと同一データを用いることにより得られた第1レイアウトの前記特定の部分領域に対応する部分領域よりも水平方向の長さが短く、かつ、垂直方向の長さが長くなるように、前記テンプレートを補正することを特徴とするプログラム。
  12. 前記複数の部分領域間の距離が取りうる範囲を設定する設定手段としてさらに機能させ、
    前記補正手段は、前記複数の部分領域間の距離が取りうる範囲の最小サイズを縮小することで前記テンプレートを補正することを特徴とする請求項11に記載のプログラム。
  13. 前記補正手段は、前記テンプレートに配置された部分領域の横方向の最大サイズを縮小することで前記テンプレートを補正することを特徴とする請求項11に記載のプログラム。
  14. 前記補正手段は、前記複数の部分領域間の距離を縮小することで前記テンプレートを補正することを特徴とする請求項11に記載のプログラム。
  15. 前記テンプレートに配置された2つの部分領域を接続するためのリンクを設定するリンク設定手段として更に機能させ、
    前記第1調整手段および前記第2調整手段は、前記リンクで接続された第1部分領域に流し込まれるデータの変化量と第2部分領域に流し込まれるデータの変化量とが等しくなるようにレイアウトを調整することを特徴とする請求項11乃至14のいずれか1項に記載のプログラム。
JP2004231434A 2004-08-06 2004-08-06 レイアウト調整方法及び装置並びにプログラム Expired - Fee Related JP4332477B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004231434A JP4332477B2 (ja) 2004-08-06 2004-08-06 レイアウト調整方法及び装置並びにプログラム
US11/196,838 US7634725B2 (en) 2004-08-06 2005-08-04 Layout adjustment method, apparatus and program for the same
CNB200510089419XA CN100568907C (zh) 2004-08-06 2005-08-05 布局调整方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004231434A JP4332477B2 (ja) 2004-08-06 2004-08-06 レイアウト調整方法及び装置並びにプログラム

Publications (3)

Publication Number Publication Date
JP2006050445A JP2006050445A (ja) 2006-02-16
JP2006050445A5 JP2006050445A5 (ja) 2007-01-25
JP4332477B2 true JP4332477B2 (ja) 2009-09-16

Family

ID=35757064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004231434A Expired - Fee Related JP4332477B2 (ja) 2004-08-06 2004-08-06 レイアウト調整方法及び装置並びにプログラム

Country Status (3)

Country Link
US (1) US7634725B2 (ja)
JP (1) JP4332477B2 (ja)
CN (1) CN100568907C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7396176B2 (ja) 2020-04-06 2023-12-12 株式会社アイシン 燃料電池システム

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7212309B1 (en) * 2002-08-30 2007-05-01 Microsoft Corporation Best fit printing
JP4047308B2 (ja) * 2004-08-06 2008-02-13 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム
US7721206B2 (en) * 2004-08-24 2010-05-18 Kodak Graphic Communications Canada Company Systems and methods for remotely viewing page layouts
JP4332480B2 (ja) * 2004-08-31 2009-09-16 キヤノン株式会社 レイアウト調整方法及び装置並びにプログラム
JP4510653B2 (ja) * 2005-01-31 2010-07-28 キヤノン株式会社 レイアウト決定方法及び装置並びにプログラム
JP4732029B2 (ja) * 2005-06-29 2011-07-27 キヤノン株式会社 レイアウト決定方法および情報処理装置およびレイアウト決定プログラム
US20070028169A1 (en) * 2005-07-28 2007-02-01 Microsoft Corporation Getting started assistance
GB2430060A (en) * 2005-09-08 2007-03-14 Hewlett Packard Development Co Flows for variable data printing
JP2007114822A (ja) * 2005-10-18 2007-05-10 Yokogawa Electric Corp 自動レイアウト方法および装置
JP4328762B2 (ja) * 2005-12-06 2009-09-09 キヤノン株式会社 情報処理装置、情報処理方法、プログラム及び記憶媒体
US7975224B2 (en) * 2005-12-21 2011-07-05 Xerox Corporation WYSIWYG multifunction device finishing options
JP4174735B2 (ja) * 2006-03-24 2008-11-05 ブラザー工業株式会社 印刷装置
US7712039B2 (en) * 2006-03-31 2010-05-04 Microsoft Corporation Setting control using edges of a user interface
US9317229B2 (en) * 2006-10-23 2016-04-19 Mimeo.Com, Inc. Finishing compatibility evaluation
JP2008129702A (ja) * 2006-11-17 2008-06-05 Canon Inc 情報処理装置および制御方法および制御プログラム
JP4912139B2 (ja) * 2006-12-22 2012-04-11 キヤノン株式会社 情報処理装置
JP4869093B2 (ja) * 2007-02-02 2012-02-01 キヤノン株式会社 情報処理装置及びその制御方法
US9324168B2 (en) * 2008-01-31 2016-04-26 Microsoft Technology Licensing, Llc Constraint-based correction of shape positions in a diagram
DE102008010264A1 (de) * 2008-02-19 2009-08-20 Bookrix Gmbh & Co. Kg Verfahren und Vorrichtung zur seitenweisen Bereitstellung eines elektronischen Dokumentes als Computergrafik
US8887085B1 (en) * 2008-03-20 2014-11-11 Amazon Technologies, Inc. Dynamic content navigation
US8935620B1 (en) 2008-03-20 2015-01-13 Amazon Technologies, Inc. Dynamic content management
KR20100030053A (ko) * 2008-09-09 2010-03-18 삼성전자주식회사 후처리장치를 구비한 화상형성장치 및 화상형성장치의 후처리방법
JP5253086B2 (ja) * 2008-10-20 2013-07-31 キヤノン株式会社 情報処理装置及び情報処理装置の制御方法
US8614836B2 (en) * 2008-10-20 2013-12-24 Hewlett-Packard Development Company, L.P. Enhanced security printing of a layout template
JP5377027B2 (ja) * 2009-03-30 2013-12-25 キヤノン株式会社 印刷制御装置、印刷制御方法、およびプログラム
JP5335495B2 (ja) * 2009-03-10 2013-11-06 キヤノン株式会社 情報処理装置、画像データ生成方法、及びコンピュータプログラム
US20100313106A1 (en) * 2009-06-04 2010-12-09 Microsoft Corporation Converting diagrams between formats
WO2011037558A1 (en) 2009-09-22 2011-03-31 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US9310907B2 (en) 2009-09-25 2016-04-12 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8832585B2 (en) 2009-09-25 2014-09-09 Apple Inc. Device, method, and graphical user interface for manipulating workspace views
US8799826B2 (en) 2009-09-25 2014-08-05 Apple Inc. Device, method, and graphical user interface for moving a calendar entry in a calendar application
US8766928B2 (en) 2009-09-25 2014-07-01 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8468448B2 (en) * 2009-10-28 2013-06-18 Hewlett-Packard Development Company, L.P. Methods and systems for preparing mixed-content documents
JP5556164B2 (ja) * 2009-12-17 2014-07-23 株式会社島津製作所 測定データ分析処理装置及びプログラム
US8677268B2 (en) 2010-01-26 2014-03-18 Apple Inc. Device, method, and graphical user interface for resizing objects
US9081494B2 (en) 2010-07-30 2015-07-14 Apple Inc. Device, method, and graphical user interface for copying formatting attributes
US8972879B2 (en) 2010-07-30 2015-03-03 Apple Inc. Device, method, and graphical user interface for reordering the front-to-back positions of objects
US9098182B2 (en) 2010-07-30 2015-08-04 Apple Inc. Device, method, and graphical user interface for copying user interface objects between content regions
CN102381062A (zh) * 2010-09-03 2012-03-21 上海商务数码图像技术有限公司 一种彩色数码印刷机的控制系统
US8806332B2 (en) * 2010-10-25 2014-08-12 Kodak Alaris Inc. Template opening modification for image layout method
JP5779378B2 (ja) * 2011-03-30 2015-09-16 株式会社Screenホールディングス 面付けテンプレート、面付けデータ生成装置、面付けデータ生成方法およびプログラム
JP5743723B2 (ja) * 2011-06-03 2015-07-01 キヤノン株式会社 印刷システム、サービス処理方法、及びプログラム
JP5917111B2 (ja) * 2011-11-30 2016-05-11 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
US9418068B2 (en) * 2012-01-27 2016-08-16 Microsoft Technology Licensing, Llc Dimensional conversion in presentations
US10789412B2 (en) 2012-02-20 2020-09-29 Wix.Com Ltd. System and method for extended dynamic layout
DE102013202782A1 (de) 2012-02-20 2013-08-22 Wixpress Ltd Server-basiertes Webseiten-Designsystem, das ein dynamisches Layout und dynamischen Inhalt integriert
US10169307B2 (en) * 2012-03-01 2019-01-01 Wix.Com Ltd. Method and system for the use of adjustment handles to facilitate dynamic layout editing
CN103294656A (zh) * 2012-02-27 2013-09-11 福州福昕软件开发有限公司 Pdf文档静态表单中添加可填写表单域的方法及装置
JP6022835B2 (ja) * 2012-07-17 2016-11-09 Necプラットフォームズ株式会社 レポート出力システム、レポート出力方法
JP6171562B2 (ja) 2013-05-24 2017-08-02 セイコーエプソン株式会社 印刷装置、印刷システム、印刷装置の制御方法、および、プログラム
US9582160B2 (en) 2013-11-14 2017-02-28 Apple Inc. Semi-automatic organic layout for media streams
US9489104B2 (en) * 2013-11-14 2016-11-08 Apple Inc. Viewable frame identification
CN105260351B (zh) * 2015-09-10 2018-05-01 武汉改图网技术有限公司 一种基于自适应模版的印刷品在线自助设计方法
JP6052371B2 (ja) * 2015-11-11 2016-12-27 株式会社寺岡精工 台紙レスラベルプリンタ
US10310785B2 (en) * 2016-09-30 2019-06-04 Innerworkings, Inc. Systems and methods for efficiently rendering and producing customized versions of variable print products
CN107015721A (zh) 2016-10-20 2017-08-04 阿里巴巴集团控股有限公司 一种应用界面的管理方法和装置
US10379726B2 (en) 2016-11-16 2019-08-13 Xerox Corporation Re-ordering pages within an image preview
US10713430B2 (en) * 2016-11-30 2020-07-14 Google Llc Systems and methods for applying layout to documents
CN106775511A (zh) * 2016-12-20 2017-05-31 珠海赛纳打印科技股份有限公司 一种打印方法和装置
US10409895B2 (en) * 2017-10-17 2019-09-10 Qualtrics, Llc Optimizing a document based on dynamically updating content
KR20210060496A (ko) * 2018-08-30 2021-05-26 인터페이스 인크. 바닥재 및 장식용 구조체들을 위한 디지털 인쇄
CN109783181B (zh) * 2019-01-31 2019-12-20 掌阅科技股份有限公司 屏幕适配显示方法、电子设备及计算机存储介质
JP7156100B2 (ja) * 2019-03-07 2022-10-19 コニカミノルタ株式会社 画像検査装置、画像検査方法及び画像検査プログラム
CN112416190B (zh) * 2019-08-23 2022-05-06 珠海金山办公软件有限公司 一种显示文档的方法及装置
CN112486430A (zh) * 2020-11-28 2021-03-12 刘坤 一种cad图纸的批量打印方法
CN114398121B (zh) * 2021-12-21 2024-02-27 北京五八信息技术有限公司 一种视图显示方法、装置、电子设备及存储介质
CN115767933B (zh) * 2022-12-22 2024-03-12 广东保伦电子股份有限公司 一种基于pcb绘制的元件丝印的调整方法及系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701500A (en) * 1992-06-02 1997-12-23 Fuji Xerox Co., Ltd. Document processor
JPH07129658A (ja) 1993-11-02 1995-05-19 Toppan Printing Co Ltd レイアウトデザイン装置
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
JPH09330397A (ja) * 1996-06-13 1997-12-22 Canon Inc 自動画像編集装置
US5943679A (en) * 1996-10-30 1999-08-24 Xerox Corporation Multi-page document viewer having a focus image and recursively nested images of varying resolutions less than the resolution of the focus image
JP3368803B2 (ja) * 1997-07-02 2003-01-20 キヤノン株式会社 印刷制御装置および方法
JP3673643B2 (ja) * 1997-07-30 2005-07-20 キヤノン株式会社 印刷レイアウト装置及び印刷レイアウト方法並びに記憶媒体
JPH11250272A (ja) * 1998-01-08 1999-09-17 Xerox Corp 自動イメ―ジレイアウト方法及びシステム
JP2001096833A (ja) 1999-09-30 2001-04-10 Canon Inc 情報処理装置及びその方法、コンピュータ可読メモリ
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US20020040375A1 (en) * 2000-04-27 2002-04-04 Simon Richard A. Method of organizing digital images on a page
US7028255B1 (en) * 2000-08-14 2006-04-11 Adobe Systems Incorporated Self-sizing object placement
US7051276B1 (en) * 2000-09-27 2006-05-23 Microsoft Corporation View templates for HTML source documents
JP2002268451A (ja) 2001-03-12 2002-09-18 Ricoh Co Ltd 画像形成装置および方法
JP2004015215A (ja) 2002-06-04 2004-01-15 Seiko Epson Corp レイアウト制御装置およびそのプログラム並びにレイアウト制御方法
JP4079087B2 (ja) * 2003-03-12 2008-04-23 セイコーエプソン株式会社 レイアウトシステム
US7339598B2 (en) * 2003-07-11 2008-03-04 Vistaprint Technologies Limited System and method for automated product design
US7391885B2 (en) * 2003-07-30 2008-06-24 Xerox Corporation Method for determining overall effectiveness of a document
US7554689B2 (en) * 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
JP4111519B2 (ja) * 2004-08-31 2008-07-02 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7396176B2 (ja) 2020-04-06 2023-12-12 株式会社アイシン 燃料電池システム

Also Published As

Publication number Publication date
CN100568907C (zh) 2009-12-09
JP2006050445A (ja) 2006-02-16
US7634725B2 (en) 2009-12-15
CN1731819A (zh) 2006-02-08
US20060028659A1 (en) 2006-02-09

Similar Documents

Publication Publication Date Title
JP4332477B2 (ja) レイアウト調整方法及び装置並びにプログラム
JP4332480B2 (ja) レイアウト調整方法及び装置並びにプログラム
KR100716084B1 (ko) 레이아웃 조정 방법 및 장치
JP4250540B2 (ja) レイアウト調整方法および装置およびレイアウト調整プログラム
US7831909B2 (en) Information processing apparatus, control method therefor, and program with display based on change amount of field areas
US7707494B2 (en) Information processing apparatus, control method therefor, and program
JP4110105B2 (ja) 文書処理装置及び文書処理方法及び文書処理プログラム
JP4144883B2 (ja) 情報処理装置及びその制御方法、プログラム
JP4298642B2 (ja) レイアウト処理方法およびレイアウト処理装置およびレイアウト処理プログラム
JP4700940B2 (ja) 情報処理装置及びその制御方法、プログラム
US20080155387A1 (en) Information processing apparatus, control method thereof, and program
US7847971B2 (en) Layout processing method, information processing apparatus, and computer program
JP2006277727A (ja) レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP2005216180A (ja) 文書処理装置及び文書処理方法及び文書処理プログラム
US7853872B2 (en) Laying out field regions in a page for insertion of data
JP4194501B2 (ja) 文書処理方法、文書処理装置及び文書処理プログラム
JP2007066304A (ja) 情報処理装置及びその制御方法、プログラム
JP2007249431A (ja) 情報処理装置及びその制御方法、プログラム
JP2010122893A (ja) バリアブルプリントシステム
JP2007122486A (ja) Web文書処理方法、プログラム、記憶媒体
JP2006293430A (ja) 情報処理装置及び情報処理方法
JP2006074225A (ja) レイアウト調整方法及び装置並びにプログラム
JP4743909B2 (ja) 情報処理方法および装置およびコンピュータプログラム
JP2010176366A (ja) バリアブルプリントシステム
JP2008102869A (ja) レイアウト処理方法及び装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061205

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081219

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees