(57)【要約】【課題】  複数部数の出力結果を断裁して積み重ねた際に、余分な余白領域が出力結果の間に挟まれるため認識性が低下し、断裁後には余分な余白領域を除去することが困難となる。【解決手段】  複数部にて出力するための出力設定情報が含まれている場合、認識された余白領域が、数部数分の出力結果を断裁して積み重ねた際に端部となる記録媒体から連続して出力されるように各ページのレイアウトを決定する。【選択図】  図２７
2007172247.tif 000002
【特許請求の範囲】
【請求項１】
文書データに含まれる各ページのレイアウトを決定する情報処理装置であって、
前記文書データの出力方法を設定する設定手段と、
前記設定手段によって設定された出力方法に従って前記文書データを配置した際に生成される余白領域を認識する認識手段と、
前記設定手段によって設定された出力方法として複数部にて出力する出力設定情報が含まれている場合、前記認識手段によって認識された余白領域が、前記複数部数分の出力結果を断裁して積み重ねた際に端部となる記録媒体から連続して出力されるように前記文書データにおける各ページのレイアウトを決定する決定手段を有することを特徴とする情報処理装置。
【請求項２】
前記出力方法は、断裁後に束を重ね合わせるとページ順番に並ぶようにレイアウトする方法と、同一用紙に複数種類のページをレイアウトする方法と、複数項目のデータを組み合わせてなるレコードを選択して該レコードに含まれるデータを前記文書データの指定されたページにレイアウトする方法の少なくとも１つのレイアウト方法、および複数部の出力設定情報、および１枚の記録媒体に配置すべき前記文書データのページ数の組み合わせによって構成された情報であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記認識手段は、前記文書データに含まれるページ数と前記設定手段によって設定された出力方法とに基づいて生成される余白領域ページ数を認識し、
前記認識手段によって認識された余白領域ページ数と前記文書データに含まれるページ数を比較する比較手段とを有し、
前記決定手段は、比較手段によって余白領域ページ数が前記文書データに含まれるページ数よりも多いと判断された場合、前記認識手段によって認識された余白領域に対して前記文書データが配置されるようにレイアウトを決定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記決定手段は、前記比較手段によって余白領域ページ数が前記文書データに含まれるページ数よりも少ない判断された場合、前記出力方法にて設定されている部数と前記認識手段によって認識された余白領域ページ数に基づく部数分の余白領域ページ数ずらした位置から前記文書データをレイアウトすることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
アプリケーションから出力される出力情報をブック、章、ページを含む階層的な印刷属性部と文書データ部とから構成される電子文書を編集処理可能であることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
文書データに含まれる各ページのレイアウトを決定する情報処理装置における情報処理方法であって、
前記文書データの出力方法を設定する設定工程と、
前記設定工程によって設定された出力方法に従って前記文書データを配置した際に生成される余白領域を認識する認識工程と、
前記設定工程によって設定された出力方法として複数部にて出力する出力設定情報が含まれている場合、前記認識工程によって認識された余白領域が、前記複数部数分の出力結果を断裁して積み重ねた際に端部となる記録媒体から連続して出力されるように前記文書データにおける各ページのレイアウトを決定する決定工程を有することを特徴とする情報処理方法。
【請求項７】
前記出力方法は、断裁後に束を重ね合わせるとページ順番に並ぶようにレイアウトする方法と、同一用紙に複数種類のページをレイアウトする方法と、複数項目のデータを組み合わせてなるレコードを選択して該レコードに含まれるデータを前記文書データの指定されたページにレイアウトする方法の少なくとも１つのレイアウト方法、および複数部の出力設定情報、および１枚の記録媒体に配置すべき前記文書データのページ数の組み合わせによって構成された情報であることを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記認識工程は、前記文書データに含まれるページ数と前記設定工程によって設定された出力方法とに基づいて生成される余白領域ページ数を認識し、
前記認識工程によって認識された余白領域ページ数と前記文書データに含まれるページ数を比較する比較工程とを有し、
前記決定工程は、比較工程によって余白領域ページ数が前記文書データに含まれるページ数よりも多いと判断された場合、前記認識工程によって認識された余白領域に対して前記文書データが配置されるようにレイアウトを決定することを特徴とする請求項６または７に記載の情報処理方法。
【請求項９】
前記決定工程は、前記比較工程によって余白領域ページ数が前記文書データに含まれるページ数よりも少ない判断された場合、前記出力方法にて設定されている部数と前記認識工程によって認識された余白領域ページ数に基づく部数分の余白領域ページ数ずらした位置から前記文書データをレイアウトすることを特徴とする請求項８に記載の情報処理方法。
【請求項１０】
アプリケーションから出力される出力情報をブック、章、ページを含む階層的な印刷属性部と文書データ部とから構成される電子文書を編集処理可能であることを特徴とする請求項６乃至９のいずれか１項に記載の情報処理方法。
【請求項１１】
請求項６乃至１０に記載された情報処理方法をコンピュータに実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパーソナルコンピュータなどの情報処理装置、スキャナおよびプリンタなどから生成された電子データを編集する文書処理方法に関するものである。
【背景技術】
【０００２】
従来、紙の文書をスキャナで読み取り、読み取った画像データを文書処理システムにより画像編集手段で修正加工し、両面やステイプル、パンチ穴等の加工指示を付加して印刷装置より出力することが一般的に行われている。
【０００３】
また、ＰＣ上のアプリケーションソフトウェアで作成した文書データを、作成したアプリケーションに依存しない電子データに変換し、両面やステイプル、パンチ穴等の加工指示を付加して印刷装置より出力することが一般的に行われている。さらに、画像データのページと電子データのページを組み合わせて電子原稿として保存し、両面やステイプル、パンチ穴等の加工指示を付加して印刷装置より出力することも行われている。
【０００４】
また、印刷業界において顧客ごとにデータを差し替えて印刷を行うバリアブルプリントが行われている。バリアブルプリントとは、一般的に宛名印刷などに用いられ、データベースから宛名データ（データベースレコード）を顧客ごとに差し替えて印刷を行う。バリアブルプリントでは、レイアウトテンプレートとデータベースのデータを結合することによって印刷物が得られる。結果的に、「テンプレート」×「データベースレコード」分の出力物が得られる。
【０００５】
上記をふまえ、近年プリントオンデマンド（ＰＯＤ）市場においては、紙の使用量を少なくしてコストダウンを行う目的で、同じ原稿ページを同一用紙の上に複数枚面付けして印刷する多連印刷という印刷方法が存在している。印刷後は断裁機によって、ドキュメントごとに断裁して運用されている。同じく、異なる原稿ページを同一用紙上に複数面付けして印刷する多面印刷という印刷方法もある。また、同一用紙上に異なる原稿を面付けした上に、断裁後に重ねることにより原稿の順番がそろうように面付けを行う前半後半印刷という印刷方法もある。さらに、前述したバリアブル印刷と同一用紙上への複数原稿面付けを合わせた形態で、異なるレコードを同一用紙上へ面付けするマルチレコード印刷という印刷方法もある。
【０００６】
前半後半印刷において原稿の各ページが用紙上に面付けされる面数と面付けする原稿のページ数が整数倍でない場合に発生する余分な余白領域を断裁後に取り除き易いように、余白領域が上または下に出力されるように配置する技術が特許文献１に開示されている。
【特許文献１】特開２００１−２０５８８５
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記特許文献１に記載の技術では、本願に記載の前半後半印刷を１部印刷した場合しか、想定していない。そのため、前半後半印刷を１部印刷する出力方法以外が設定された場合に生成される余分な余白領域の認識性を高めたり、出力結果を断裁して積み重ねた後に余分な余白領域を取り除きやすくすることはできなくなる。
【０００８】
例えば、印刷実行時に複数部を指定して印刷することが一般的に行われている。しかしながら、上記特許文献１では１部分の出力を実行することしか想定していない。つまり、上記特許文献１に記載の技術を用いることによって１部の出力結果は、余分な余白領域が出力結果の上側または下側となるようにレイアウトすることができる。しかし、出力結果を断裁するために各部の出力結果を積み重ねると、結果として出力結果の間に余分な余白領域が挟まれてしまうため、余分な余白領域の認識性を高めたり、出力結果を断裁して積み重ねた後に余分な余白領域を取り除き易くすることはできなくなる。
【０００９】
本発明は、上記の課題を鑑みてなされたものであり、複数部数の出力結果を断裁して積み重ねた際に、ユーザに対して余分な余白領域の認識性を高め、断裁後には容易に余分な余白領域を除去可能となるようにレイアウトを決定する技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明によれば、文書データに含まれる各ページのレイアウトを決定する情報処理装置であって、前記文書データの出力方法を設定する設定手段と、前記設定手段によって設定された出力方法に従って前記文書データを配置した際に生成される余白領域を認識する認識手段と、前記設定手段によって設定された出力方法として複数部にて出力する出力設定情報が含まれている場合、前記認識手段によって認識された余白領域が、前記複数部数分の出力結果を断裁して積み重ねた際に端部となる記録媒体から連続して出力されるように前記文書データにおける各ページのレイアウトを決定する決定手段を有することを特徴とする。
【発明の効果】
【００１１】
本発明によって、複数部数の出力結果を断裁して積み重ねた際に、ユーザに対して余分な余白領域の認識性を高め、断裁後には容易に余分な余白領域を除去可能となる。よって、ユーザの利便性向上を図ることができる。
【発明を実施するための最良の形態】
【００１２】
＜システム概要＞
まず、本発明に係る文書処理システムの概要について、図１乃至図１２を参照して以下に説明する。尚、この文書処理システムは、一般のアプリケーションによって作成されたデータファイルを電子原稿ファイルに変換する電子原稿ライタ１０２と、その電子原稿ファイル１０３を編集する機能を提供する製本アプリケーション１０４とを含む。文書処理システムは、作成されたデータを一まとめにした文書の作成及び編集を可能とし、その操作性を向上させて文書編集を効率的に行えるものである。
【００１３】
＜システム構成及び動作＞
図１は、本実施形態の文書処理システムのソフトウェア構成を示す図である。文書処理システムは、本発明の情報処理装置に好適な実施形態であるデジタルコンピュータ１００（以下、ホストコンピュータとも呼ぶ）によって実現されている。
【００１４】
図１に示す一般アプリケーション１０１は、ワードプロセシングやスプレッドシート、フォトレタッチ、テキスト編集などの機能を提供するアプリケーションプログラムであり、オペレーティングシステム（ＯＳ）に対する印刷機能を有している。これらのアプリケーションは、作成された文書データや画像データなどのアプリケーションデータを印刷する際に、ＯＳによって提供される所定のインタフェース（一般に、ＧＤＩと呼ばれる）を利用する。即ち、アプリケーション１０１は、作成したデータを印刷するために、上述のインタフェースを提供するＯＳの出力モジュールに対して、あらかじめ定められたＯＳに依存する形式の出力コマンド（ＧＤＩ関数と呼ばれる）を送信する。一方、出力コマンドを受けた出力モジュールは、その出力コマンドをプリンタ等の出力デバイスが処理可能な形式に変換して、変換されたコマンド（ＤＤＩ関数と呼ばれる）を出力する。出力デバイスが処理可能な形式はデバイスの種類やメーカ、機種などによって異なるため、デバイスごとにデバイスドライバが提供されている。ＯＳは、そのデバイスドライバを利用してコマンドの変換を行い、印刷データを生成し、ＪＬ（Ｊｏｂ  Ｌａｎｇｕａｇｅ）でくくることにより印刷ジョブが生成される。ＯＳとしてマイクロソフト社のウインドウズを利用する場合には、前述した出力モジュールとしてはＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）と呼ばれるモジュールが相当するが、これに限る必要はない。なお、本願では、ウインドウズを利用した場合を想定して記述する。
【００１５】
電子原稿ライタ１０２は、上述のデバイスドライバを改良したものであり、本文書処理システム実現のために提供されるソフトウェアモジュールである。但し、電子原稿ライタ１０２は特定の出力デバイスを目的としておらず、詳細は後述する製本アプリケーション１０４やプリンタドライバ１０６により処理可能な形式に出力コマンドを変換する。この電子原稿ライタ１０２による変換後の形式（以後電子原稿形式と呼ぶ）は、ページ単位の原稿を詳細な書式をもって表現可能であれば特に問わない。実質的な標準形式のうち、例えばアドビシステムズによるＰＤＦ形式やＳＶＧ形式などが電子原稿形式として採用できる。
【００１６】
一般アプリケーション１０１から電子原稿ライタ１０２を利用させる場合には、出力に使用するデバイスドライバとして電子原稿ライタ１０２を指定してから印刷を実行させる。但し、電子原稿ライタ１０２によって作成されたままの電子原稿ファイル１０３は、電子原稿ファイルとして完全な形式を備えていない。そのため、デバイスドライバとして電子原稿ライタ１０２を指定するのは製本アプリケーション１０４であり、その管理下でアプリケーションデータの電子原稿ファイルへの変換が実行される。そして、製本アプリケーション１０４は電子原稿ライタ１０２が生成した新規の不完全な電子原稿ファイルを後述する形式を備えた電子原稿ファイルとして完成させる。以下、この点を明瞭に識別する必要がある場合、電子原稿ライタ１０２によって作成されたファイルを「電子原稿ファイル」と呼び、製本アプリケーション１０４によって構造を与えられた電子原稿ファイルを「ブックファイル」と呼ぶ。また、特に区別する必要がない場合は、アプリケーションにより生成されるドキュメントファイル、電子原稿ファイル、及びブックファイルをいずれも文書ファイル（または文書データ）と呼ぶ。
【００１７】
このようにデバイスドライバとして電子原稿ライタ１０２を指定し、一般アプリケーション１０１によりデータを印刷させる。これにより、アプリケーションデータはアプリケーション１０１によって定義されたページ（以後論理ページあるいは原稿ページと呼ぶ）を単位とする電子原稿形式に変換され、電子原稿ファイル１０３としてハードディスクなどの記憶媒体に格納される。尚、ハードディスクは、本実施形態の文書処理システムを実現するホストコンピュータ１００が備えているローカルドライブであっても良く、ネットワークに接続されている場合にはネットワーク上に提供されるドライブであっても良い。
【００１８】
製本アプリケーション１０４は電子原稿ファイル（あるいはブックファイル）１０３を読み込み、それを編集するための機能を利用者に提供する。但し、製本アプリケーション１０４は、各ページの内容を編集する機能は提供しておらず、ページを最小単位として構成される、後述の章やブックの構造を編集するための機能を提供している。
【００１９】
製本アプリケーション１０４によって編集されたブックファイル１０３を印刷する際には、製本アプリケーション１０４によって電子原稿デスプーラ１０５が起動される。電子原稿デスプーラ１０５は、製本アプリケーションと共にコンピュータ内にインストールされるプログラムモジュールである。電子原稿デスプーラ１０５は、製本アプリケーションで利用するドキュメント（ブックファイル）を印刷する際に、プリンタドライバへ描画データを出力するために使用されるモジュールである。電子原稿デスプーラ１０５は、指定されたブックファイルをハードディスクから読み出し、ブックファイルに記述された形式で各ページを印刷するために、前述したＯＳの出力モジュールに適合する出力コマンドを生成し、不図示の出力モジュールに出力する。その際に、出力デバイスとして使用されるプリンタ１０７用のプリンタドライバ１０６がデバイスドライバとして指定される。上述の出力モジュールは、受信した出力コマンドをデバイスコマンドに変換して指定されたプリンタ１０７用のプリンタドライバ１０６に出力し、そのプリンタドライバ１０６がプリンタ１０７で解釈可能なページ記述言語（ＰＤＬ）等のコマンドに変換する。そして、変換されたコマンドはプリンタドライバ１０６から不図示のシステムスプーラを介してプリンタ１０７に送信され、プリンタ１０７によってコマンドに応じた画像が出力される。
【００２０】
図２は、ホストコンピュータ１００のハードウェアブロック図である。図２において、ＣＰＵ２０１は、ＲＯＭ２０３のプログラム用ＲＯＭに記憶された、あるいはハードディスク２１１からＲＡＭ２０２にロードされたＯＳや一般アプリケーション、製本アプリケーションなどのプログラムを実行する。そして、ＣＰＵ２０１は、図１のソフトウェア構成や後述するフローチャートの手順を実現する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）２０５は、キーボード２０９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）２０６は、ＣＲＴディスプレイ２１０の表示を制御する。ディスクコントローラ（ＤＫＣ）２０７は、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、後述する編集ファイル等を記憶するハードディスク（ＨＤ）２１１やフロッピー（登録商標）ディスク（ＦＤ）等とのアクセスを制御する。ＰＲＴＣ２０８は、接続されたプリンタ１０７との間の信号の交換を制御する。ＮＣ２１２はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００２１】
＜電子原稿データの形式＞
製本アプリケーション１０４の詳細を言及する前に、ブックファイルのデータ形式について説明する。ブックファイルは紙媒体の書物を模倣した３層の層構造を有する。まず、上位層は「ブック」と呼ばれ、１冊の本を模倣しており、その本全般に係る属性が定義されている。その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。各章についても、章毎の属性が定義できる。そして、下位層は「ページ」であり、アプリケーションプログラムで定義された各ページに相当する。尚、各ページについてもページ毎の属性が定義できる。更に、一つのブックは複数の章を含んでいてよく、また一つの章は複数のページを含むこともできる。
【００２２】
図３に示す（Ａ）は、ブックファイルの形式の一例を模式的に示す図である。図示するように、この例では、ブックファイルにおけるブック、章、ページは、それぞれに相当するノードにより示されている。一つのブックファイルは一つのブックを含む。ブック、章は、ブックとしての構造を定義するための概念であるから、定義された属性値と下位層へのリンクとをその実体として含む。ページは、アプリケーションプログラムによって出力されたページ毎のデータを実体として有する。そのため、ページは、その属性値のほかに、原稿ページの実体（原稿ページデータ）と各原稿ページデータへのリンクを含む。
【００２３】
尚、紙媒体等に出力する際の印刷ページは複数の原稿ページを含む場合がある。この構造に関してはリンクによって表示されず、ブック、章、ページ各階層における属性として表示される。なお、印刷ページとは実際に記録媒体に出力されるデータを指すと共に、出力されることにより、記録媒体を指すこともある。また、各印刷ページに配置される原稿ページは、アプリケーションから出力された文書データに含まれる各ページに該当する。
【００２４】
図３において、ブック３０１には、ブック属性が定義されていると共に、２つの章３０２Ａと３０２Ｂがリンクされている。このリンクにより、章３０２Ａと章３０２Ｂがブック３０１に包含されていることが表示される。章３０２Ａには、ページ３０３Ａとページ３０３Ｂがリンクされ、これらページが含まれることが示されている。ページ３０３Ａとページ３０３Ｂにはそれぞれ属性値が定義され、その実体である原稿ページデータ（１）、（２）へのリンクが含まれる。これらリンクは、図３に示す（Ｂ）のように原稿ページデータ３０４の原稿データ（１）および（２）を指し、ページ３０３Ａとページ３０３Ｂの実体が原稿ページデータ（１）、（２）であることを表示している。
【００２５】
図４は、ブック属性のリストである。下位層と重複して定義可能な項目に関しては、下位層の属性値が優先採用される。そのため、ブック属性にのみ含まれる項目に関しては、ブック属性に定義された値が、ブック全体を通して有効な値となる。しかし、下位層と重複する項目については、下位層において定義されていない場合における既定値としての意味を有する。尚、図示された各項目は具体的に１項目に対応するのではなく、関連する複数の項目を含むものもある。
【００２６】
図５は章属性の、図６はページ属性のリストである。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。
【００２７】
図４〜図６から明らかなように、ブック属性に固有の項目は、印刷方法、製本詳細、表紙／裏表紙、インデックス紙、合紙、章区切りの６項目である。これらはブックを通して定義される項目である。印刷方法の属性としては、片面印刷、両面印刷、製本印刷の３つの値を指定できるが、これに限る必要はない。ここで、製本印刷とは、別途指定する枚数の用紙を束にして２つ折りにし、その束をつづり合わせることで製本が可能となる形式で印刷する方法である。製本詳細属性としては、製本印刷が指定されている場合に、見開き方向や、束になる枚数等が指定できる。
【００２８】
表紙／裏表紙属性は、ブックとしてまとめられる電子原稿ファイルを印刷する際に、表紙及び裏表紙となる用紙を付加することの指定、及び付加した用紙への印刷内容の指定を含む。インデックス紙属性は、章の区切りとして、印刷装置に別途用意される耳付きのインデックス紙の挿入の指定及びインデックス（耳）部分への印刷内容の指定を含む。なお、インデックス紙はタブ紙とも呼び、インデックス（耳）部分はタブ部と呼ぶこともある。この属性は、印刷用紙とは別に用意された用紙を所望の位置に挿入するインサート機能が使用する印刷装置に備えられている場合か、あるいは、複数の給紙カセットを使用可能である場合に有効となる。これは合紙属性についても同様である。
【００２９】
合紙属性は、章の区切りとしてインサータから、あるいは給紙カセットから供給される用紙の挿入の指定、及び合紙を挿入する場合には給紙元の指定などを含む。章区切り属性は、章の区切り目において、新たな用紙を使用するか、新たな印刷ページを使用するか、特に何もしないか等の指定を含む。片面印刷時には、新たな用紙の使用と新たな印刷ページの使用とは同じ意味を持つ。両面印刷時には、「新たな用紙の使用」を指定すれば連続する章が１枚の用紙に印刷されることは無いが、「新たな印刷ページの使用」を指定すれば、連続する章が１枚の用紙の表裏に印刷されることがあり得る。
【００３０】
章属性に関しては、章に固有の項目はなく、全てブック属性と重複する。従って、章属性における定義とブック属性における定義とが異なれば、章属性で定義された値が優先される。ブック属性と章属性とにのみ共通する項目は、用紙サイズ、用紙方向、Ｎ−ｕｐ印刷指定、拡大縮小、排紙方法の５項目である。これらのうち、Ｎ−ｕｐ印刷指定属性は１印刷ページに含まれる原稿ページ数を指定するための項目である。例えば、２ｉｎ１は、１枚の用紙に２ページ分の原稿ページを配置することを指す。指定可能な配置としては、１×１、１×２、２×２、３×３、４×４などがある。排紙方法属性は、排出した用紙にステイプル処理を施すか否かを指定するための項目であり、この属性の有効性は使用する印刷装置がステイプル機能を有するか否かに依存する。
【００３１】
ページ属性に固有の項目には、ページ回転属性、ズーム、配置指定、アノテーション、ページ分割などがある。ページ回転属性は、原稿ページを印刷ページに配置する際の回転角度を指定するための項目である。ズーム属性は、原稿ページの変倍率を指定するための項目である。変倍率は、仮想論理ページ領域のサイズを１００％として指定される。仮想論理ページ領域とは、原稿ページを、Ｎｕｐ等の指定に応じて配置した場合に、１原稿ページが占める領域である。例えば、１×１であれば、仮想論理ページ領域は１印刷ページに相当する領域となり、１×２であれば、１印刷ページの各辺を約７０パーセントに縮小した領域となる。
【００３２】
ブック、章、ページについて共通な属性としては、ウォーターマーク属性及びヘッダ・フッタ属性がある。ここで、ウォーターマークとは、アプリケーションで作成されたデータに重ねて印刷される、別途指定される画像や文字列などである。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。但し、ヘッダ・フッタには、ページ番号や日時など変数により指定可能な項目が用意されている。尚、ウォーターマーク属性およびヘッダ・フッタ属性において指定可能な内容は、章とページとは共通であるが、ブックはそれらと異なっている。ブックにおいてはウォーターマークやヘッダ・フッタの内容を設定できるし、また、ブック全体を通してどのようにウォーターマークやヘッダ・フッタを印刷するかを指定することができる。一方、章やページでは、その章やページにおいて、ブックで設定されたウォーターマークやヘッダ・フッタを印刷するか否かを指定できる。
【００３３】
＜ブックファイルの生成手順＞
ブックファイルは上述したような構造及び内容を有している。次に、製本アプリケーション１０４及び電子原稿ライタ１０２によるブックファイルの作成手順について説明する。ブックファイルの作成手順は、製本アプリケーション１０４によるブックファイルの編集操作の一環として実現される。
【００３４】
図７は、製本アプリケーション１０４によりブックファイルを開く際のフローチャートである。なお、本願に記載のフローチャートにおける各ステップの処理はホストコンピュータ１００のＣＰＵ２０１によって処理される。
【００３５】
まず、製本アプリケーション１０４は、開こうとするブックファイルが、新規作成すべきものであるか、それとも既存のものであるか判定する（ステップＳ７０１）。製本アプリケーション１０４は、新規作成であると判定した場合、章を含まないブックファイルを新規に作成する（ステップＳ７０２）。新規に作成されるブックファイルは、図３の例で示せば、ブックノード３０１のみ有し、章のノードに対するリンクが存在しないブックのノードとなる。ブック属性は、新規作成用としてあらかじめ用意された属性のセットが適用される。そして、新規ブックファイルを編集するためのユーザインタフェース（ＵＩ）画面を表示する（ステップＳ７０３）。図１１は、ステップＳ７０３によって表示される新規にブックファイルが作成された際のＵＩ画面の一例である。この場合は、ブックファイルは実質的な内容を持たないため、ＵＩ画面１１００には何も表示されない。
【００３６】
一方、Ｓ７０１によって新規作成ではないと判定された場合、製本アプリケーション１０４は、指定されたブックファイルを開き（ステップＳ７０３）、そのブックファイルの構造、属性、内容に従ってユーザインタフェース（ＵＩ）画面を表示する。図１０は、Ｓ７０３において、既存のブックファイルから指定されたブックファイルを表示するＵＩ画面の一例である。ＵＩ画面１１００は、ブックの構造を示すツリー部１１０１と、印刷された状態を表示するプレビュー部１１０２とを含む。ツリー部１１０１には、ブックに含まれる章、各章に含まれるページが図３に示す（Ａ）のような木構造で表示される。ツリー部１１０１に表示されるページは原稿ページである。またプレビュー部１１０２には、印刷ページの内容が縮小されて表示される。その表示順序はブックの構造を反映したものとなっている。
【００３７】
さて、開かれたブックファイルには、電子原稿ライタ１０２によって電子原稿ファイルに変換されたアプリケーションデータを、新たな章として追加することができる。この機能を電子原稿インポート機能と呼ぶ。図７に示す手順によって新規に作成されたブックファイルに電子原稿インポートすることで、そのブックファイルには実体が与えられる。この機能は、図１０の画面にアプリケーションデータをドラッグアンドドロップ操作することで起動される。
【００３８】
図８に電子原稿インポートの手順を示す。まず、製本アプリケーション１０４は、指定されたアプリケーションデータを生成したアプリケーションプログラムを起動する。そして、製本アプリケーション１０４は、デバイスドライバとして電子原稿ライタ１０２を指定してアプリケーションデータを印刷出力させることで、電子原稿データに変換する（ステップＳ８０１）。変換を終えたなら、製本アプリケーション１０４は、変換されたデータが画像データであるか否かを判定する（ステップＳ８０２）。Ｓ８０２の判定は、ウインドウズＯＳの下であれば、アプリケーションデータのファイル拡張子に基づいて行われる。例えば、拡張子が「ｂｍｐ」であればウインドウズビットマップデータであり、「ｊｐｇ」であればｊｐｅｇ圧縮された画像データ、「ｔｉｆｆ」であればｔｉｆｆ形式の画像データであると判定できる。また、このような画像データの場合はＳ８０１のようにアプリケーションを起動せずに、画像データから直接電子原稿ファイルを生成することが可能であるため、Ｓ８０１の処理を省略することも可能である。
【００３９】
ここで、画像データでなかった場合には、ステップＳ８０１で生成された電子原稿ファイルを、現在開かれているブックファイルのブックに、新たな章として追加する（ステップＳ８０３）。章属性としては、ブック属性と共通するものについてはブック属性の値がコピーされ、そうでないものについては、予め用意された規定値に設定される。
【００４０】
また、ステップＳ８０２で画像データである場合には、原則として新たな章は追加されず、指定されている章に、ステップＳ８０１で生成された電子原稿ファイルに含まれる各原稿ページが追加される（ステップＳ８０４）。但し、ブックファイルが新規作成されたファイルであれば、新たな章が作成されて、その章に属するページとして電子原稿ファイルの各ページが追加される。ページ属性は、上位層の属性と共通のものについてはその属性値が与えられ、アプリケーションデータにおいて定義された属性を電子原稿ファイルに引き継いでいるものについてはその値が与えられる。例えば、Ｎｕｐ指定などがアプリケーションデータにおいて指定されていた場合には、その属性値が引き継がれる。以上の処理により、新規なブックファイルが作成、あるいは、新規な章が追加される。
【００４１】
図９は、図８に示すステップＳ８０１において、電子原稿ライタ１０２により電子原稿ファイルを生成させる手順のフローチャートである。まず、製本アプリケーション１０４は、新たな電子原稿ファイルを作成してそれを開く（ステップＳ９０１）。生保ナプリケーション１０４は、指定したアプリケーションデータに対応するアプリケーションを起動し、電子原稿ライタをデバイスドライバとしてＯＳの出力モジュールに対して出力コマンドを送信する。出力モジュールは、受信した出力コマンドを電子原稿ライタ１０２によって電子原稿形式のデータに変換し、出力する（ステップＳ９０２）。Ｓ９０２の出力先はステップＳ９０１で開いた電子原稿ファイルである。指定されたデータ全てについて変換が終了したか判定し（ステップＳ９０３）、終了していれば電子原稿ファイルを閉じる（ステップＳ９０４）。電子原稿ライタ１０２によって生成される電子原稿ファイルは、図３の（Ｂ）に示される原稿ページデータの実体を含むファイルである。
【００４２】
＜ブックファイルの編集＞
以上のようにして、アプリケーションデータからブックファイルを作成することができる。生成されたブックファイルについては、章及びページに対して次のような編集操作が可能である。
（１）新規追加
（２）削除
（３）コピー
（４）切り取り
（５）貼り付け
（６）移動
（７）章名称変更
（８）ページ番号名称振り直し
（９）表紙挿入
（１０）合紙挿入
（１１）インデックス紙挿入
（１２）各原稿ページに対するページレイアウト
このほか、一旦行った編集操作を取り消す操作や、更に取り消した操作をやり直す操作が可能である。これら編集機能により、例えば複数のブックファイルの統合、ブックファイル内で章やページの再配置、ブックファイル内で章やページの削除、原稿ページのレイアウト変更、合紙やインデックス紙の挿入などの編集操作が可能となる。これらの操作を行うと、図４、図５に示す属性に操作結果が反映されたり、あるいはブックファイルの構造に反映される。例えば、ブランクページの新規追加操作を行えば、指定された箇所にブランクページが挿入される。このブランクページは原稿ページとして扱われる。また、原稿ページに対するレイアウトを変更すれば、その変更内容は、印刷方法やＮ−ｕｐ印刷、表紙／裏表紙、インデックス紙、合紙、章区切りといった属性に反映される。
【００４３】
＜ブックファイルの出力＞
以上のように作成・編集されるブックファイルは、印刷出力を最終目的とするものである。ここで、利用者が図１０に示した製本アプリケーション１０４のＵＩ画面１１００からファイルメニューを選択し、そこから印刷を選択すると、指定した出力デバイスにより印刷出力される。この際、まず製本アプリケーション１０４は、現在開かれているブックファイルからジョブチケットを作成し、そのジョブチケットを電子原稿デスプーラ１０５に渡す。一方、電子原稿デスプーラ１０５は、ジョブチケットをＯＳの出力コマンド、例えばウインドウズのＧＤＩ関数に変換し、それを出力モジュール、例えばＧＤＩに送信する。出力モジュールは、指定されたプリンタドライバ１０６によってデバイスに適したコマンドを生成し、そのデバイスに送信する。
【００４４】
ここで、ジョブチケットは原稿ページを最小単位とする構造を有するデータである。ジョブチケットにおける構造は、用紙上における原稿ページのレイアウトを定義している。ジョブチケットは１ジョブにつき１つ発行される。そのため、まず最上位にドキュメントというノードがあり、文書全体の属性、例えば両面印刷／片面印刷などが定義されている。その下には、用紙ノードが属し、用いるべき用紙の識別子やプリンタにおける給紙口の指定などの属性が含まれる。各用紙ノードには、その用紙で印刷されるシートのノードが属する。１シートは１枚の用紙に相当する。各シートには、印刷ページ（物理ページ）が属する。片面印刷ならば１シートには１物理ページが属し、両面印刷ならば１シートに２物理ページが属する。各物理ページには、その上に配置される原稿ページが属する。また物理ページの属性として、原稿ページのレイアウトが含まれる。
【００４５】
電子原稿デスプーラ１０５は、上述のジョブチケットを、出力モジュールへの出力コマンドに変換する。
【００４６】
＜そのほかのシステム構成＞
本実施形態の文書処理システムの概要は以上のようなものである。これはスタンドアロン型のシステムであるが、これを拡張したサーバクライアントシステムでもほぼ同様の構成・手順でブックファイルを作成・編集できる。但し、ブックファイルや印刷処理はサーバによって管理される。
【００４７】
図１２は、サーバクライアント型文書処理システムの構成を示すブロック図である。クライアント文書処理システムは、スタンドアロン型システムに、クライアントモジュールであるＤＯＭＳドライバ１０９及びＤＯＭＳプリントサービスモジュール１１０、ＤＳ（文書サービス）クライアントモジュール１０８を加えた構成を有する。なお、ＤＯＭＳとは、Ｄｏｃｕｍｅｎｔ  Ｏｕｔｐｕｔ  Ｍａｎａｇｅｍｅｎｔ  Ｓｅｒｖｉｃｅ：文書出力管理サービスを指す。このクライアント文書処理システム１２００に文書管理サーバ１２０１、印刷集中管理サーバ１２０２及びプリントサーバ１２０３が接続されている。これらサーバは、通常ネットワークによってクライアント文書処理システムと接続されるが、サーバが同時にクライアントとしても機能する場合には、ネットワーク間の通信をシミュレートするプロセス間通信によって接続される。
【００４８】
尚、図１２に示す例では、文書管理サーバ１２０１と印刷集中管理サーバ１２０２の両方のサーバがクライアントに接続されているが、何れか一方のみネットワーク上に存在する場合もあり得る。例えば、接続されているサーバが文書管理サーバであれば、そのクライアントモジュール１０８を含む文書管理サーバクライアントシステム１２０１ＳＣがスタンドアロン型文書管理システムに追加される。また接続されているサーバが印刷集中管理サーバ１２０２であれば、そのクライアントモジュールを含む印刷管理サーバクライアントシステム１２０２ＳＣが、スタンドアロン型文書管理システムに追加される。
【００４９】
文書管理サーバ１２０１は、製本アプリケーション１０４により作成・編集されたブックファイルを格納するサーバである。文書管理サーバ１２０１によってブックファイルを管理する場合、ブックファイルはクライアントＰＣのローカルＨＤに代わって、あるいはそれに加えて、文書管理サーバ１２０１のデータベース１２１１に保存される。製本アプリケーション１０４と文書管理サーバ１２０１との間のブックファイルの保存及び読み出しは、ＤＳクライアント１０８及びＤＳコア１２１２を介して行われる。
【００５０】
印刷集中管理サーバ１２０２は、クライアント文書管理システム１２００に格納された、あるいは文書管理サーバ１２０１に格納されたブックファイルの印刷を管理するサーバである。クライアントにおける印刷要求は、ＤＯＭＳドライバ１０９およびＤＯＭＳプリントサービスモジュール１１０を介して印刷集中管理サーバ１２０２のＤＯＭＳＷＧサーバモジュール１２２１に送信される。集中印刷管理サーバ１２０２は、クライアントのプリンタで印刷する場合にはクライアントのＤＯＭＳプリントサービスモジュール１１０を介して電子原稿デスプーラ１０５に電子原稿データを渡す。そして、プリントサーバ１２０３により印刷する場合、集中印刷管理サーバ１２０２は、プリントサーバ１２０３のＤＯＭＳプリントサービスモジュール１２０３に送信する。集中印刷管理サーバは、例えば保存されているブックファイルに対して印刷要求を発行した利用者の資格などについてセキュリティチェックを行ったり、印刷処理のログを保存したりする。このように、文書処理システムは、スタンドアロンとしても、クライアントサーバシステムとしても実現できる。
【００５１】
＜プレビュー表示の内容＞
既に説明した通り、ブックファイルが製本アプリケーション１０４によって開かれると、図１０に示したユーザインタフェース画面１１００が表示される。ツリー部１１０１には、開いているブック（以下、「注目ブック」と呼ぶ）の構造を示すツリーが表示される。プレビュー部には、利用者の指定に応じて、３通りの表示方法が用意されている。まず、第１は原稿ページをそのまま表示する原稿ビューと呼ばれるモードである。この原稿ビューモードでは、注目ブックに属する原稿ページの内容が縮小されて表示される。尚、プレビュー部１１０２の表示にレイアウトは反映されない。次に、第２は印刷ビューモードである。この印刷ビューモードでは、プレビュー部１１０２には原稿ページのレイアウトが反映された形で原稿ページが表示される。そして、第３は簡易印刷ビューモードである。この簡易印刷ビューモードでは、各原稿ページの内容はプレビュー部の表示には反映されず、レイアウトのみが反映される。
【００５２】
＜ステイプル制御＞
次に、ステイプル機能を有するプリンタ１０７と接続するホストコンピュータ１００の製本アプリケーション１０４によって行われるステイプル制御について説明する。なお、コンピュータ１００は、アプリケーションから出力された文書データに含まれる各ページのレイアウトを決定する情報処理装置である。また、ホストコンピュータ１００は、アプリケーションから出力される文書データをブック、章、ページを含む階層的な印刷属性部と文書データ部とから構成される電子文書を編集処理可能である。
【００５３】
図１３は、ステイプル制御システムの構成を示すブロック図である。図示するように、ステイプル制御システムは、図２に示したホストコンピュータ１００とステイプル機能を有するプリンタ１０７とで構成される。
【００５４】
以下、プリンタ１０７の構成について説明する。尚、本発明の機能が実現されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ、ＷＡＮ等のネットワークを介して接続がなされ、処理が行われるシステムであっても本発明を適用できる。
【００５５】
図示するように、１３０１はプリンタＣＰＵであり、ＲＯＭ１３０２内のプログラム用ＲＯＭに記憶された制御プログラム等や外部メモリ１３０３に記憶された制御プログラム等に基づいて、印刷部１３０６に出力情報としての画像信号を出力する。
【００５６】
また、このＲＯＭ１３０２内のプログラムＲＯＭには、ＣＰＵ１３０１の制御プログラム等が記憶され、ＲＯＭ１３０２内のフォント用ＲＯＭには、出力情報を生成する際に使用するフォントデータ等が記憶される。さらに、ＲＯＭ１３０２内のデータ用ＲＯＭには、ハードディスク等の外部メモリ１３０３がないプリンタの場合、ホストコンピュータ１００上で利用される情報等が記憶されている。
【００５７】
また、ＣＰＵ１３０１は、入力部１３０７を介してホストコンピュータ１００との通信処理が可能となっており、プリンタ１０７内の情報等をホストコンピュータ１００に通知できる。ＲＡＭ１３０８は、ＣＰＵ１３０１の主メモリや、ワークエリア等として機能するＲＡＭであり、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
【００５８】
尚、ＲＡＭ１３０８は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。上述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１３０３は、メモリコントローラ（ＭＣ）１３０９によりアクセスを制御される。外部メモリ１３０３は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、操作パネル１３１１は操作のためのスイッチ及びＬＥＤ表示器等で構成されている。
【００５９】
また、上述の外部メモリ１３０３は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。更に、図示しないＮＶＲＡＭを有し、操作パネル１３１１からのプリンタモード設定情報を記憶するようにしても良い。
【００６０】
続いて、本願が想定する課題の一例を図１４から図１７を用いて説明する。図１４は、多面印刷を行った場合の出力結果の一例である。図１４の例では、印刷ページ１４００に６ページ分の原稿ページ１４０１を配置した結果、６ページ分の原稿ページ数が印刷ページに配置可能なページ数（４ページ）の整数倍ではないので、余分な余白領域（１４０２）が生成される。つまり、２ページ分の原稿ページ分に相当する余分なスペース１４０２が生じている。出力後は図１５に示すように、２ページ分の印刷ページ１５００が重なってしまうので余分なスペース１５０１が下側になってしまう。その結果、余分なスペース１５０１の認識率が低くなり発見し難くなる。また断裁後に取り除く作業も困難になる。
【００６１】
また、マルチレコード印刷においても同様の課題が存在する。図１６はマルチレコード印刷時の例を示している。１６００は印刷ページ、１６０１は印刷ページ上に配置する原稿ページ、１６０２は原稿上に配置している可変データを示している。この例では２ページ分の原稿ページに対して６レコードのデータをマルチレコード印刷することを想定している。印刷するレコード数（６つ）が印刷ページ上に配置可能な原稿ページ数（４ページ分）の整数倍と等しくないので、余分なスペース（１６０３）が生じている。この出力結果１６００を積み重ねると、余分なスペース１６０３は出力結果の下側となるため認識性が悪くなる。また、出力結果を積み重ねて断裁したあとに、余分なスペースを取り除くことが困難となる。
【００６２】
さらに、図１７は複数部数の印刷を実行した場合の例を示している。この例は１０ページ分の原稿ページを４ページ単位に印刷ページ上（用紙上）に配置する前半後半印刷として面付けし、２部印刷を行うことを想定としている。なお、前半後半印刷とは、断裁後に束を重ね合わせるとページ順番に並ぶようにレイアウトする方法であり、このような印刷方法を総称して串刺し印刷と定義する。１７００は１部目の印刷、１７０１は２部目の印刷を示している。１７０２は印刷ページ、１７０３は用紙上に配置する原稿ページを示しており、１７０３上に記載されている数字は原稿ページ番号を示している。印刷する原稿ページ数（１０ページ分）が印刷ページ（用紙）上に配置している原稿ページ数の整数倍（４の倍数）と等しくないので、余分なスペース１７０４が生成されてしまう。各部においては、余分なスペース１７０４が出力結果の上側に配置されているので問題ないが、断裁後にページ順を揃えるために両者を積み重ねると出力結果１７０５のようになり、結果として、余分なスペース１７０４を取り除くことが困難となる。なお、本願では図１４の領域１４０２や図１６の領域１６０３を「余分なスペース」または「余分な余白領域」と記述するが、両者は同義である。
【００６３】
また、本願では、面付け方法法として「多連印刷」、「多面印刷」、「前半後半印刷」、「マルチレコード印刷」と記述している。これらの面付け方法は公知の技術として知られているが、面付け方法を示す用語についてはこの明細書で記述しているものと異なることがある。もし用語が異なっていたとしても、面付け方法が同様であるならば、本発明の技術は適用できることは言うまでもない。各印刷方法の詳細については後述する。
【００６４】
＜多連印刷＞
製本アプリケーション１０４は、生成したブックファイルの属性として、多連印刷を設定することが可能である。図１８（Ａ）は多連印刷についての例を示している。多連印刷とは、印刷ページ上に、同一の原稿ページを複数配置（面付け）する印刷方法である。
【００６５】
例えば、複数部数印刷する際に使用する用紙枚数を節約するために有効となるレイアウト方法である。原稿ページ（１８００）に対して、印刷ページ上に２ページ分の原稿ページを配置する多連印刷を設定すると、印刷ページ（１８０１）には、同一の原稿ページ（１８０２と１８０３）が印刷ページを等分に分けるように配置される。
【００６６】
実際の運用時には断裁機によって断裁して個別のページにされるので、断裁を示す断裁線（１８０４）を付加する。また、印刷ページを断裁するときに、等分するように原稿ページ間を一度断裁するだけではなく、原稿ページの上下左右４辺すべてを断裁するような原稿の配置も行うことが可能である。そのときは、断裁する４辺の位置を示す「しるし（トンボ）」を印刷ページ上に描画する。トンボの描画例は後述する多面印刷の説明で記述する。
【００６７】
図１８（Ｂ）は、多連印刷の設定ＵＩ例を示している。１８０５は設定ダイアログのＵＩ図であり、１８０６は印刷方法を指定するリストボックス、１８０７は印刷ページに原稿ページをいくつ配置するかを指定するスピンボタンである。また、１８０８は断裁時に原稿ページの４辺を断裁するためのトンボを指定するチェックボックス、１８０９は１８０６〜１８０８で指定した設定内容を簡易的に確認できるプレビューエリアである。さらに、１８１０はプレビュー用の印刷ページ、１８１１はプレビュー用の原稿ページ、１８１２は１８０６〜１８０８で指定した設定内容をブック属性として設定するためのＯＫボタン、１８１３は設定をキャンセルするためのキャンセルボタンを示している。
【００６８】
設定ダイアログ（１８０５）は製本アプリケーション１０４のメニューなどから選択される。リストボックス（１８０６）は印刷方法を指定する項目のため、多連印刷を行う場合は『多連』という項目を選択する。他にも後述する『多面』『前半後半』という項目がリストされる。スピンボタン（１８０７）は、縦×横の数値指定により、原稿を配置する数を指定する。たとえば、縦２、横２と指定すれば４枚の原稿ページが印刷ページ上に配置される。チェックボックス（１８０８）は、用紙上に配置した原稿ページの４辺を断裁するときはチェックオンにして、断裁するためのトンボを有効にする。
【００６９】
プレビュー（１８０９〜１８１１）は、設定した内容を簡易的に確認するものであり、多連印刷を指定していれば、印刷ページ（１８１０）に同じ原稿ページ（１８０９）が配置されている様子が確認できる。原稿ページの上に表示している番号はページ番号を示しているが、プレビューは簡易的なものであるので、実際の原稿ページのページ番号と必ずしも一致しているとは限らない。ここで説明した設定ＵＩは一例であるため、各コントロールの形状・操作などは同様の機能を持っていれば、他の形態であってもよい。
【００７０】
＜多面印刷＞
製本アプリケーション１００４は、生成したブックファイルの属性として、多面印刷を設定することが可能である。図１９（Ａ）は多面印刷についての例を示している。多面印刷とは、同一の印刷ページ上に、異なる原稿ページを複数配置する印刷方法である。原稿ページ（１９００）に対して、印刷ページ上に４ページ分の原稿ページを配置するように多面印刷を行うと、印刷ページ（１９０１）には、４ページ分の原稿ページ（１９０２）が印刷ページ上に配置される。実際の運用時には断裁機によって断裁して個別のページにされる。ここでは、多連印刷で前述した原稿ページの上下左右４辺すべてを断裁するような原稿の配置を行った例を示している。原稿ページの４辺を断裁するので、配置される各原稿ページ（１９０２）はある間隔を空けて配置される。４辺を断裁するための目印はトンボとして印刷ページに描画される（１９０３）。このトンボを目印として断裁機で断裁することにより、原稿ページを得ることが出来る。
【００７１】
図１９（Ｂ）は前記多面印刷の設定ＵＩ例を示している。外観や各コントロールについては前述した多連印刷の設定ダイアログＵＩ例と同じであるので、説明は省く。リストボックス（１９０４）は印刷方法を指定するためのものであるので、多面印刷を行う場合は『多面』という項目を選択する。チェックボックス（１９０５）は、断裁するためのトンボを有効にするためのもので、前述したレイアウト例のようにトンボを付けるときはチェックオンにする。プレビュー（１９０６）は、１９０４、１９０５、１９０７の設定内容を反映したプレビューであり、多面印刷を指定しているのでそれを示す原稿ページの順番になる。ここで説明した設定ＵＩは一例であるため、各コントロールの形状・操作などは同様の機能を持っていれば、他の形態であってもよい。このように図１９（Ｂ）の設定ダイアログを用いることにより、同一用紙に複数種類のページをレイアウトする方法と、１枚の記録媒体に配置すべき前記文書データのページ数を設定することができる。さらに、製本アプリケーション１０４では、所定のダイアログを用いて出力部数を設定することができる。多面印刷において後述する図２７から図２９の処理を実行する場合、多面印刷を行うという情報、１枚の記録媒体に配置すべき前記文書データのページ数、複数部数の出力をおこなう出力部数情報を組み合わせた情報に基づいて処理を進める。
【００７２】
＜前半後半印刷＞
製本アプリケーション１００４は、生成したブックファイルの属性として、前半後半印刷を設定することが可能である。図２０（Ａ）は前半後半印刷についての例を示している。前半後半印刷とは、印刷ページ上に、原稿ページを複数配置して、断裁後に断裁された用紙の束と束を重ねるとページ順番が揃うようにレイアウトする印刷方法である。前半後半印刷は、広い意味では、串刺し印刷ともいう。
【００７３】
原稿ページ（２０００）に対して、印刷ページ上に２ページ分の原稿ページを配置するように前半後半印刷を行うと、印刷ページ（２００１）には、２ページ分の原稿ページ（２００２、２００３）が配置される。ここで、印刷ページ上に配置される各原稿ページの配置位置は、断裁後の順番と印刷ページ上に配置される原稿ページの数と、印刷する原稿ページの枚数によって計算される。図２０（Ａ）の例では、印刷対象となる６ページの原稿ページを、１枚の印刷ページ上に２ページ配置しているので、１枚目の用紙には１ページ目と、４ページ目の原稿が配置されている。また前述した多連印刷、多面印刷と同様に断裁するための断裁線を用紙上に描画する（２００４）。
【００７４】
図２０（Ｂ）は前記前半後半印刷の設定ＵＩ例を示している。外観や各コントロールについては前述した多連印刷の設定ダイアログＵＩ例と同じであるので、説明は省く。リストボックス（２００５）は印刷方法を指定するためのものであるので、前半後半印刷を行う場合は『前半後半』という項目を選択する。プレビュー（２００６）は、前半後半印刷を指定しているのでそれを示す原稿ページの順番になる。ここで説明した設定ＵＩは一例であるため、各コントロールの形状・操作などは同様の機能を持っていれば、他の形態であってもよい。
【００７５】
このように図２０（Ｂ）の設定ダイアログを用いることにより、断裁後に束を重ね合わせるとページ順番に並ぶようにレイアウトする方法と、１枚の記録媒体に配置すべき前記文書データのページ数を設定することができる。さらに、製本アプリケーション１０４では、所定のダイアログを用いて出力部数を設定することができる。前半後半印刷において後述する図２７から図２９の処理を実行する場合、前半後半印刷を行うという情報、１枚の記録媒体に配置すべき前記文書データのページ数、複数部数の出力をおこなう出力部数情報を組み合わせた情報に基づいて処理を進める。
【００７６】
＜可変印刷（バリアブルプリント）＞
製本アプリケーション１００４は、生成したブックファイルのページ属性として、可変印刷を実行するための可変フィールドの設定を行うことが可能である。図２１は可変印刷のページレイアウト例を示している。２１００は原稿ページ、２１０１は可変印刷を実行するための可変フィールドを指名している。なお、可変フィールドは、原稿ページ上に複数配置することも可能であるし、一つも配置しないことも可能である。また、可変フィールドには、各レコードのデータが配置される。製本アプリケーション１０４は、可変フィールドの中に、接続したデータベースからデータを差込み（流し込み）、編集して印刷を行う。２１０２は接続しているデータベースのデータを示している。データベースにはレコードと呼ばれる識別子があり、１つのレコードに含まれるデータを原稿ページの所定のフィールドに差込んで、原稿ページを編集する。図２１の例では、データベース２１０２には、１〜４の４レコードが記憶されている。データベース２１０２のレコードには、各レコードのテキストデータ（２１０３）と各レコードのイメージデータ（２１０４）が記憶されている。この例では、原稿ページ１ページ目に設定されている可変フィールド２１０１にはテキストデータ（２１０３）を差し込むように設定されている。さらに、原稿ページ２ページ目に設定されている可変フィールド２１００にはイメージデータ（２１０４）を差し込むように設定されているものとする。可変フィールドの設定や、データベースデータとの関連の設定については、後述する。
【００７７】
２１０５は実際にデータベースのデータが差し込まれた原稿ページを示している。レコード１が差し込まれると、原稿ページ１ページ目の可変フィールド２１０６にはレコード１のテキストデータ“ＡＡＡ”が差し込まれる。また、原稿ページ２ページ目の可変フィールド２１０７にはレコード１のイメージデータ（飛行機のイメージデータ）が差し込まれて原稿ページが作成される。レコード２が差し込まれると、原稿ページ１ページ目の可変フィールド２１０８にはレコード２のテキストデータ“ＢＢＢ”が差し込まれる。また、原稿ページ２ページ目の可変フィールド２１０９にはイメージデータ（トラックのイメージデータ）が差し込まれて原稿ページが作成される。以上の処理をレコード３、レコード４と繰り返すことにより、３つの原稿ページからなる１種類の原稿データであっても、差し込まれるデータが所定の条件に従って切り替わるため、レコード数分の種類の出力結果を得ることができる。
【００７８】
なお、原稿ページ３ページ目については、可変フィールドが設定されていないので、データの差込みは実行されない。しかし、データの差込みは実行されなくても、すべてのレコードに対して原稿ページ３ページ目は印刷される。このように、可変印刷を行うと、原稿ページ×レコード数分の印刷が行われる。つまり、図２１の例では、１２ページ分の印刷が行われる。
【００７９】
図２２（Ａ）は前述した可変印刷の設定を行う可変印刷エディタのＵＩ例を示している。この可変印刷エディタは、製本アプリケーション１００４から起動され、ブックファイルの論理ページ単位で設定を行うことが可能である。製本アプリケーション１００４からの起動方法は、製本アプリケーションのプレビュー画面で単一の論理ページを選択して、製本アプリケーションのＵＩ画面からツールメニューを選択して“可変印刷エディタ”を選択する方法が挙げられる。さらに、製本アプリケーションのプレビュー画面で単一の論理ページを選択してマウス右クリックメニューで“可変印刷エディタ”を選択する方法などでよい。その他（たとえばツールボタンなど）の起動方法であっても良い。
【００８０】
図２２（Ａ）には、可変印刷エディタの全体ＵＩ２２００を示している。可変印刷エディタが起動されると全体ＵＩ２２００が表示される。２２０１は可変印刷エディタのウインドウを最小化、最大化、閉じることが出来るボタンを示している。図２２には、可変印刷エディタの各種編集操作を行うメニューバー２２０２を示している。図２２には、可変印刷エディタのツールボタン２２０３を示している。ツールボタン２２０３は、メニューで行える操作を簡単な操作で選択できるように用意されている。さらに、図２２のＵＩ２２０２には、スクロールバー２２０４があり、可変印刷エディタで原稿ページを表示しきれない場合に表示され、スクロールして原稿ページ全体を編集することを可能にする。全体ＵＩ２２００には、可変印刷エディタのグラブコントロール２２０５があり、マウスポインタを使ってウインドウサイズを任意に変更することを可能にする。さらに、図２２の全体ＵＩ２２００には、可変印刷エディタで編集対象としている原稿ページ２２０６がある。可変印刷エディタで原稿ページのページ移動機能を用意し、製本アプリケーションに戻らなくとも、ページ移動を可能にしてもよい。全体ＵＩ２２００には、原稿ページ上に描画されているオブジェクト２２０７がある。可変印刷エディタでは前述した可変フィールドの設定のみを機能として持つので、他の原稿ページ上のオブジェクトに対しては編集作業を施すことはできない。全体ＵＩ２２００には、テキストデータを差し込むテキスト可変フィールド２２０８およびイメージデータを差し込むイメージ可変フィールド２２０９がある。本実施例ではテキスト可変フィールド、イメージ可変フィールドを区別せずに指し示すときに可変フィールドという言葉を用いている。これらの可変フィールドはメニュー２２０２やツールボタン２２０３で可変フィールド作成機能を選択して、マウスカーソルで矩形を描画することにより作成される。
【００８１】
図２２（Ｂ）は、可変フィールドに対してデータを差し込むために、差し込み対象となるデータが記憶されているデータベースへの接続方法を設定するためのダイアログ２２１０である。なお、接続ダイアログ２２１０のマーク２２１１は、接続ダイアログを閉じるボタンを示している。接続ダイアログ２２１０は、メニュー２２０２やツールボタン２２０３を選択することで表示される。
【００８２】
２２１２はデータベースへの接続を行うエリアである。すでに接続されていれば、接続中のデータベースファイル名が表示される。未接続であれば空白である。接続を行うときは、参照ボタン（２２１３）を押下し、データベースファイル参照ダイアログ等を表示させ、データベースファイルを指定する。データベースへ接続中に参照ボタンで他のデータベースファイルを選択したときは、選択したデータベースへ接続を切り替える。製本アプリケーションで接続が出来るデータベースの数は１つである。複数のデータベースと接続することはできない。
【００８３】
２２１４〜２２１９はデータベースに接続中に有効になるコントロールであり、接続中のデータベースの内容を示すためのものである。２２１４は接続しているデータベースのレコードを移動させるレコード移動ボタンである。２２１５は接続しているデータベースの総レコード数と、現在内容を表示しているレコード番号を示すものである。２２１６は接続しているデータベースに設定されているカラム名を示している。カラム名は項目名ともいう。カラム名はデータベースの各レコードデータがどのような属性を持っているかを示すもので、図２２（Ｂ）の例では、「“名前”と“イメージ”」（２２１７）という属性を持ったデータベースであることを示している。２２１８は接続しているデータベースの各レコードのカラム名に対する値（データ）を示している。図２２（Ｂ）では、１レコード目のデータは“名前”という属性に対して“ＡＡＡ”という値と、“イメージ”という属性に対して“ＸＸＸＸ．ｂｍｐ”という値を持っていることを示す。２２１４のレコード移動ボタンでレコードを移動すると、２２１９のデータの内容も移動したレコード番号に合わせて変化する。
【００８４】
図２３（Ａ）は可変フィールドにデータベースデータの関連付けを示したＵＩ例である。２３００のテキスト可変フィールドへは前述した“名前”というカラムが設定されている。設定方法としては、テキスト可変フィールドのプロパティなどで、接続しているデータベースのカラムを設定できるようにすれば良い。テキスト可変フィールドへ設定できるデータベースのカラムの数は複数であっても良い。
【００８５】
２３０１のイメージ可変フィールドへは前述した“イメージ”というカラムが設定されている。設定方法としては、イメージ可変フィールドのプロパティなどで、接続しているデータベースのカラムを設定できるようにすれば良い。
【００８６】
図２３（Ｂ）は設定した内容に、実際のデータベースのデータをレイアウトしてプレビューしたときのＵＩ例である。プレビューでは、可変フィールドへ設定したデータベースデータが差し込まれた状態が確認できる。
【００８７】
２３０２は図２３（Ａ）で示したテキスト可変フィールド（２３００）へ“名前”のカラムの値“ＡＡＡ”が差し込まれた状態を示している。また２３０３は図２３で示したイメージ可変フィールド（２３０１）へ“イメージ”のカラムの値“ｘｘｘ．ｂｍｐ”に該当する「電車のイメージ」が差し込まれた状態を示している。このときに、設定したカラムに対するデータの型にエラーが発生していたり、データに抜けが発生していたりすると、プレビュー表示することが出来ない。２３０４はデータベースのレコードを移動するレコード移動ボタンである。このボタンを使ってレコード移動処理を行いレコードを選択すると、選択されたレコード内に含まれる値が各フィールドに差し込まれ、それぞれのレコードにおいてプレビュー状態として表示される。なお、可変（バリアブル）印刷は製本アプリケーションの印刷ダイアログで印刷時にＯＮ／ＯＦＦを指定することで実行するか否かを設定できる。したがって、印刷ダイアログで可変印刷をしないということを指定すれば、可変印刷エディタで設定した内容は反映せずに印刷することが出来る。
【００８８】
＜マルチレコード印刷＞
製本アプリケーション１０４は、生成されたブックファイルの属性として、マルチレコード印刷を設定することが可能である。図２４はマルチレコード印刷の例を示した図例である。まず、マルチレコード印刷を行うためには、原稿ページに対して前述した可変印刷の設定がされている必要がある。ここでは図２１の２１００〜２１０４で説明した原稿ページ、可変フィールド、データベースの設定と同じものを用いる。個別の説明は前述したので省かせてもらう。なお、マルチレコード印刷とは、リアブル印刷と同一用紙上への複数原稿面付けを合わせた形態で、異なるレコードを同一用紙上へ面付けする処理である。２４００は１つの印刷ページ上に４ページの原稿データを配置したマルチレコードのレイアウト例を示している。２４１０から２４１２は各印刷ページを示している。２４０２は原稿ページの１ページ目を示しており、印刷ページ上に同一の原稿ページが配置される。２４０３は原稿ページ１ページ目に設定されている可変フィールドを示している。印刷ページ上に配置されている原稿ページは同一であるが、各原稿ページに設定されている可変フィールドへ差し込まれるレコードは異なる。この例では印刷ページに対して４ページ文の原稿ページを配置しているので、４レコード分のレコードが差し込まれて配置される。
【００８９】
同じく、原稿ページ２ページ目（２４０４）に配置されている可変フィールド（２４０５）も４レコード分のレコードが差し込まれて配置される。同じく、原稿ページ３ページ目（２４０６）も印刷ページ上に４ページ分配置される。原稿ページ３ページ目には可変フィールドが設定されていないので、実質同じ原稿ページが並ぶことになる。
【００９０】
マルチレコード印刷は、前述した多連印刷と同様に断裁して運用されることになるので、印刷ページに対して垂直方法は同じ印刷データでなくてはいけない。つまり、複数の印刷ページを重ねた場合、各印刷ページにおける原稿データの配置位置はレコードごとに同じでなければならない。例えば、図２４では、１ページ目に該当する印刷ページ２４１０１と、２ページ目に該当する印刷ページ２４１１と、３ページ目に該当する印刷ページにおいて、それぞれの左上の原稿データは同じレコード番号のコンテンツデータがレイアウトされる。つまり、図２４に記載のデータ２１０２より、レコード１は「“ＡＡＡ”と“飛行機のイメージ”」で構成されていることが分かる。そのため、印刷ページ２４１０の左上の原稿データは、レコード１の「ＡＡＡ」が差し込まれ、次の印刷ページ２４１１の左上の原稿データは、同じくレコード１の「飛行機のイメージ」が差し込まれている。他のレコードについても同様である。
【００９１】
この図の例ではレイアウトするレコードの数が４であるため、印刷ページ上に配置する原稿ページ（４つ）の数と整数倍になっていたため余分なスペースは生成されなかった。しかし、整数倍と等しくないときは、図１５で示した多連印刷時の余分なスペース１６０３と同じような形で生成される。
【００９２】
また、前述したマルチレコード印刷にはレコードが印刷ページ上に順に並んでいくものではなく、断裁後に重ねるとレコードの順番が揃うように配置するレコードの順番を並べる“串刺し印刷”という設定を行うことが可能である。前半後半印刷は、断裁後に並べるとページ順が揃うように配置する出力方法であり、串刺し印刷は、レコードの順番が揃うように配置する出力方法である。いずれの出力方法も、出力後に重ねると垂直方向に順番が揃っているため、総称して串刺し印刷ということもある。図２５は串刺し印刷のレイアウト例を示している。２５００および２５１０から２５１４は印刷ページ、２５０１は原稿ページを示しており、原稿ページ内の番号は、各原稿ページにレイアウトされるレコード番号であると仮定する。
【００９３】
図２５では原稿ページ２ページのブックファイルに１０レコードのデータベースと接続して可変印刷を行い、１枚の印刷ページに４ページ分の原稿ページを配置するマルチレコード印刷を串刺し印刷で実行した時の例である。レコード番号の配置が断裁後の重ねを想定しており、印刷ページに対して垂直方向に順番を揃うようになっている。例えば、図２５を例にすると、１ページ目の印刷ページ２５００の左上と２ページ目の印刷ページ２５１０の左上には１レコード目のデータが２ページの原稿データに配置されている。そして、３ページ目の印刷ページ２５１１の左上と４ページ目の印刷ページ２５１２の左上には、２レコード目のデータが２ページの原稿データに配置されている。なお、３ページ目以降の印刷データも同様である。その結果、印刷ページ２５００および２５１０〜２５１４を重ねて断裁すると、１レコード目のデータが配置された２ページの原稿ページの下に、２レコード目のデータが配置された２ページの原稿ページが重なる。同様に、２レコード目のデータが配置された２ページの原稿ページの下に、３レコード目のデータが配置された２ページの原稿データが重なる。しかし、図２５の場合、１ページの印刷ページに配置可能な原稿ページ数（４）に対して、配置すべきレコード数は１０である。よって、配置すべきレコード数（１０）が、１ページの印刷ページに配置可能な原稿ページ数（４）の整数倍ではないため、図２５の２５０２のような余分なスペースが生じてしまう。この余分なスペースは、図１７で示した前半後半印刷時の余分なスペースと同じような形で生成される。
【００９４】
図２６は前記マルチレコード印刷の設定ＵＩ例を示している。前述した多連印刷などの設定ＵＩと同じ部分については説明を省く。リストボックス（２６００）は印刷方法を指定するためのものである。マルチレコード印刷を行うときは、各印刷ページに配置される原稿ページは同一のものであるので、『多連』という項目を選択する。マルチレコード印刷を行うときは、チェックボックス（２６０１）のチェックをＯＮにする。また、前述した串刺し印刷を行うときはさらにチェックボックス（２６０２）のチェックをＯＮにする。最初の印刷方法で『多連』を指定することが分かりづらければ、この指定方法ではなく、マルチレコード印刷用の選択項目を設けても良い。
【００９５】
２６０３はプレビューエリアであり、設定した状態を確認することが出来る。なお、可変印刷は製本アプリケーションの印刷ダイアログで印刷時にＯＮ／ＯＦＦの指定を可能であるので、印刷ダイアログで可変印刷をしないということを指定すれば、マルチレコード印刷は行われず、原稿ページの配置方法も『多連』印刷へと切り替わる。
【００９６】
このように図２６のダイアログを用いて、複数項目のデータを組み合わせてなるレコードを選択して該レコードに含まれるデータを文書データの指定されたページにレイアウトする方法と、１枚の記録媒体に配置すべき文書データのページ数を設定することができる。さらに、製本アプリケーション１０４では、所定のダイアログを用いて出力部数を設定することができる。マルチレコード印刷において後述する図２７から図２９の処理を実行する場合、マルチレコード印刷を行うという情報、１枚の記録媒体に配置すべき前記文書データのページ数、複数部数の出力をおこなう出力部数情報を組み合わせた情報に基づいて処理を進める。
【００９７】
［全体処理フロー］
本発明の実施例について説明する。図２７は本発明における全体的な処理フローを示している。それぞれの処理ステップについて説明する。なお、本願のフローチャートにおける各処理ステップは、ホストコンピュータ１００のＣＰＵ２０１によって実行される。
【００９８】
製本アプリケーション１０４は、ＵＩを介して指示された印刷メニューより印刷指示された情報を取得する（Ｓ２７００）。この印刷処理の取得が本発明の各処理の開始トリガー（きっかけ）となる。
【００９９】
製本アプリケーション１０４は、ＵＩを用いて設定されたブック、章、ページの属性を元に、出力対象としている印刷データで生成される余分なスペースを計算する（Ｓ２７０１）。なお、詳細な計算処理は図２８にて後述する。Ｓ２７０１によって計算された余分なスペースの数や印刷設定を元に、製本アプリケーション１０４は、本発明において後述する適用手段のどれを用いるかを判断する（Ｓ２７０２）。詳細な判断処理については図２９にて後述する。
【０１００】
Ｓ２７０２によって、製本アプリケーション１０４は、適用すべきと判断された適用手段を用いて原稿ページまたはレコード番号の配置順番を変更する（Ｓ２７０３）。詳細な配置順番変更処理については図３１にて後述する。
【０１０１】
この全体処理フローを実行することにより、複数部数の出力結果を断裁して積み重ねた際に、ユーザに対して余分な余白領域の認識性を高め、断裁後には容易に余分な余白領域を除去可能となる。
【０１０２】
［余分なスペースの計算処理］
図２８（Ａ）および図２８（Ｂ）は、図２７の全体処理フローのＳ２７０１の余分なスペースの計算処理の詳細を示している処理フローである。それぞれの処理ステップについて説明する。
【０１０３】
図２８（Ａ）は、製本アプリケーション１０４が、ブックの印刷設定が前述した“多面印刷”もしくは“前半後半印刷”であると判断したときに実行されるフローチャートである。
【０１０４】
製本アプリケーション１０４は、印刷ページ上に配置する原稿ページの数を取得する（Ｓ２８００）。たとえば、図１８（Ｂ）で説明した設定ダイアログのスピンボタン（１８０７）で「縦×横」を「２×２」と指定したとすると、この処理で取得される原稿ページの数を示す値は４となる。なお、本願に記載の設定ダイアログを用いて設定された値は、ＲＡＭ２０２に保持されているので、製本アプリケーション１０４が、ＲＡＭ２０２を読み出すことにより、Ｓ２８００の処理を実行することが可能となる。
【０１０５】
製本アプリケーション１０４は、Ｓ２８００で取得された値を変数Ｎとして保持する（Ｓ２８０１）。続いて、製本アプリケーション１０４は、出力対象となる印刷データにおける原稿ページ数を取得する（Ｓ２８０２）。たとえば、製本アプリケーション１０４が処理対象としているブックに１０ページの原稿ページが存在して、その原稿ページをすべて印刷する設定がされれば、この処理で取得される値は１０である。
【０１０６】
製本アプリケーション１０４は、Ｓ２８０２で取得した値を変数Ｍとして保持する（Ｓ２８０３）。Ｓ２８００〜Ｓ２８０３で取得した値を用いて、製本アプリケーション１０４は、生成される余分なスペースの数を計算する（Ｓ２８０４）。なお、余分なスペースの数とは、印刷ページあたりに配置すべき原稿ページにおいて、配置されなかった原稿ページ数である。例えば、図１４の例では１ページの印刷ページ当たりに４ページ分の原稿ページを配置すべきとの設定がされていたが、余分なスペース１４０２のように２ページの原稿ページ分だけ余分なスペース（余白領域）となっている。この場合、余分なスペースの数は２ページとなる。また、Ｓ２８０４の計算方法は、「余分なスペース数＝Ｎ−（Ｍ％Ｎ）」とあらわすことが出来る。つまり、製本アプリケーションは、取得した原稿ページ数（変数Ｍ）と取得した１ページの印刷ページ上に配置すべき原稿ページの数（変数Ｎ）の割り算の余りの数を求めることにより、原稿ページの何ページ分が印刷ページ上に配置できずに余るのかを求める。そして、算出された印刷ページ上に配置することができない原稿ページ数を１ページの印刷ページ上に配置すべき原稿ページの数（変数Ｎ）から引くことによって印刷ページに生成される余分なスペースの数を算出できる。製本アプリケーション１０４は、算出された値を変数Ｘに代入する。
【０１０７】
製本アプリケーション１０４は、Ｓ２８０４により算出された余分なスペースの数「Ｘ」が、印刷ページ上に配置すべき原稿ページの数「Ｎ」と等しいかどうかを判断する（Ｓ２８０５）。もし、変数Ｘと変数Ｎが等しい値であれば、余分なスペースは生成されないことを意味するので、本発明の処理は適用せずに終了する。等しくなければ、余分なスペースが生成されたことを意味するので、次の処理ステップ（全体処理ステップのＳ２７０２）へ進む。
【０１０８】
つまり、図２８では、製本アプリケーション１０４が、本願の設定ダイアログを介して入力された値を文書データの出力方法として設定する。さらに、製本アプリケーション１０４は、設定された出力方法に従って文書データを配置した際に生成される余分な余白領域を認識することができる。
【０１０９】
図２８（Ｂ）は、製本アプリケーション１０４が、ブックの印刷設定が前述した“マルチレコード印刷”もしくは“マルチレコード印刷の串刺し印刷”であり、印刷設定で“可変印刷”を行うことが設定されていると判断したときに実行されるフローチャートである。製本アプリケーション１０４は、印刷ページ上に配置すべき原稿ページの数を取得する（Ｓ２８０６）。製本アプリケーション１０４は、Ｓ２８０６で取得された値を変数Ｎとして保持する（Ｓ２８０７）。なお、Ｓ２８０６およびＳ２８０７の処理はＳ２８００およびＳ２８０１の処理と同様であるので詳細な説明は省略する。
【０１１０】
製本アプリケーション１０４は、印刷するレコード数を取得する（Ｓ２８０８）。例えば、製本アプリケーション１０４が、可変印刷エディタで１０レコードのデータを持つデータベースと接続を行い、可変フィールドの設定を行ったとする。そして、製本アプリケーションの印刷設定で可変印刷を行うと指定したときは、１０レコード分の差込みが実行される。この場合、Ｓ２８０８にて取得されるレコード数は１０である。
【０１１１】
製本アプリケーション１０４は、Ｓ２８０８で取得した印刷するレコード数を変数Ｍとして保持する（Ｓ２８０９）。
【０１１２】
Ｓ２８０６〜Ｓ２８０９で取得した値を用いて、製本アプリケーション１０４は、生成される余分なスペースの数を計算する（Ｓ２８１０）。なお、Ｓ２８１０にて実行される計算方法は、「Ｎ−（Ｍ％Ｎ）」とあらわすことが出来る。製本アプリケーション１０４は、印刷すべきレコード数（変数Ｍ）と印刷ページに配置すべき原稿ページ数（変数Ｎ）の割り算の余りの数を求める。そして、原稿ページの何レコード分が印刷ページ上に配置できずに余るのかを算出し、算出された値を印刷ページ上に配置する原稿ページの数（変数Ｎ）から引くことによって印刷ページに生成される余分なスペースの数が算出される。算出された値は、変数Ｘとして保持される。
【０１１３】
製本アプリケーション１０４は、Ｓ２８０４により算出された余分なスペースの数「Ｘ」が、印刷ページ上に配置すべき原稿ページの数「Ｎ」と等しいかどうかを判断する（Ｓ２８１１）。なお、Ｓ２８１１の処理は、Ｓ２８０５と同様であるため詳細な説明は省略する。
【０１１４】
Ｓ２８１１により、変数Ｘと変数Ｎが等しい値であれば、余分なスペースは生成されないことを意味するので、本発明の処理は適用せずに終了する。等しくなければ、余分なスペースが生成されたことを意味するので、次の処理ステップ（全体処理ステップのＳ２７０２）へ進む。
【０１１５】
［適用手段の判断処理］
図２９は、図２７の全体処理フローのＳ２７０２の適用手段の判断処理の詳細処理を示している処理フローである。図２９は、図２８（Ａ）のＳ２８０５または図２８（Ｂ）のＳ２８１１において次処理フローへと判定された場合（Ｓ２８０５−ＮｏまたはＳ２８１１−Ｎｏ）に実行されるフローチャートである。
【０１１６】
製本アプリケーション１０４は、印刷設定で指定された印刷部数を取得する（Ｓ２９００）。上述したように、設定された値はＲＡＭ２０２に保持されているので、製本アプリケーション１０４が、ＲＡＭ２０２を参照することにより、Ｓ２９００の処理は可能となる。製本アプリケーション１０４は、Ｓ２９００で取得した印刷部数を変数Ｊとして保持する。
【０１１７】
続いて、製本アプリケーション１０４は、Ｓ２９０１で保持した変数Ｊの値が１と等しいかどうかを判断する（Ｓ２９０２）。もし１と等しいのであれば、単数部印刷であるとしてＳ２９０３の処理ステップへ進む。
【０１１８】
製本アプリケーション１０４は、ブックファイルの印刷設定が串刺し印刷（前半後半印刷およびマルチレコード版の串刺し印刷を含む）かどうかを判断する（Ｓ２９０３）。Ｓ２９０３において、製本アプリケーション１０４が、串刺し印刷であると判断した場合、本発明の処理は適用せずに処理ステップを終了する。一方、製本アプリケーション１０４が、串刺し印刷でないと判断した場合、次の処理フロー（全体処理フローのＳ２７０３）へと進む。
【０１１９】
製本アプリケーション１０４は、Ｓ２９０２で１と等しくないと判断した場合、複数部印刷であると判断する。製本アプリケーション１０４は、印刷する複数部数全体で生成される余分なスペースの合計数を計算する（Ｓ２９０４）。Ｓ２９０４によって実行される計算方法は、図２８（Ａ）のＳ２８０４または図２８（Ｂ）のＳ２８１０で算出された「余分なスペースの数（Ｘ）」の値を「部数（Ｊ）」と掛けることにより算出される。なお、算出された複数部数全体で生成される余分なスペースの数は、ＳとしてＲＡＭ２０２に保持される。
【０１２０】
製本アプリケーション１０４は、出力用紙枚数を最適化するかどうかを判断する（Ｓ２９０５）。もし最適化を行わないのであれば、次の処理ステップ（全体処理フローのＳ２７０３）に進む。最適化を行うのであれば、Ｓ２９０６へと進む。Ｓ２９０６〜Ｓ２９０９は出力用紙枚数の最適化を行う処理ステップである。各処理ステップの説明の前に出力用紙の最適化の説明を行う。
【０１２１】
図３０は出力用紙の最適化の例を示している。３０００は最適化を行う前の出力結果を示している。この例では、１ページの印刷ページに４ページ分の原稿ページを配置して、１０ページの原稿ページを前半後半印刷している。３００１は印刷ページを示しており、３００２は原稿ページを示している。なお、図３０において、印刷ページ３００１と同じサイズの矩形は、全て印刷ページであることは明らかであり、図３０の３０００には２１ページ分の印刷ページがある。また、図３０の原稿ページ３００２と同じサイズの矩形は、図３０において全て原稿ページであることは明らかである。原稿ページ内の数字はページ番号を示している。また、３００３は余分なスペースを示している。図３０の例では、１ページの印刷ページに４ページ分の原稿ページを配置して、１０ページの原稿ページを前半後半印刷している。そのため、図２８（Ａ）の処理を用いると、「余分なスペースの数（Ｘ）＝取得した面数（Ｎ＝４）−（取得した原稿ページ数（Ｎ＝１０）％取得した面数（Ｎ＝４））」を計算すると、余分なスペースの数（Ｘ）は２と算出される。また、１部を印刷するために、３枚の印刷ページが必要である。このときに３０００のように７部を印刷すると、総出力用紙枚数は３×７で２１枚となり、Ｓ２９０４の処理を実行すると全体で「７×２＝１４」となる。つまり、１４ページの原稿ページ分に相当する余分なスペース数が生成されていることが算出される。また、６部目までに生成される余分なスペースの数は１２である。この６部目までに生成される余分なスペースを用いて、７部目の１０ページ分の原稿ページを配置する。
【０１２２】
３００４は出力用紙枚数の最適化後の出力結果である。３００５は印刷ページ、３００６は原稿ページを示している。前述したように、６部目までに生成される余分なスペースを用いて７部目の原稿ページを配置可能と判断されたら、６部目までの総印刷ページ上に、７部分の原稿ページを配置する。原稿ページの配置を行うときは、ブックの印刷設定で設定されている印刷設定を崩さないように原稿ページ配置順番を調整する。この出力用紙枚数の最適化処理を実行することにより、７部印刷の出力用紙枚数を６部分に抑えることが可能である。また、部数全体で生成される余分なスペースの数も少なくすることが出来る。この処理が出力用紙枚数の最適化である。なお、原稿ページの並び順の調整処理については、後述（全体処理フローのＳ２７０３）する。
【０１２３】
つまり、製本アプリケーション１０４は、文書データに含まれるページ数と生成される余分な余白領域ページ数を認識する。そして、製本アプリケーション１０４は、認識された余分な余白領域ページ数と前記文書データに含まれるページ数を比較する。その結果、余白領域ページ数（余分な余白領域ともいう）が文書データに含まれるページ数よりも多いと判断された場合、認識された余分な余白領域に対して文書データが配置されるようにレイアウトを決定する。また、図３０の例は前半後半印刷であったが、多面印刷、またはマルチレコード印刷、串刺し印刷においても同様に用紙枚数の最適化が可能である。
【０１２４】
Ｓ２９０６〜Ｓ２９０９の説明に戻る。Ｓ２９０５において、製本アプリケーション１０４が出力用紙枚数の最適化処理を実行すると判断した場合、部数全体で生成される余分なスペースの数（変数Ｓ）から１部で生成される余分なスペースの数（変数Ｘ）を減算する（Ｓ２９０６）。Ｓ２９０６において算出された値は再度変数ＳとしてＲＡＭ２０２に保持される。
【０１２５】
製本アプリケーション１０４は、Ｓ２９０６で算出された余分なスペース数（変数Ｓ）と印刷する原稿ページの数または印刷するレコード数（変数Ｍ）の大小関係を判定する（Ｓ２９０７）。もし余分なスペース数（変数Ｓ）より、原稿ページの数または印刷するレコード数（変数Ｍ）が大きければ、算出された余分なスペース数には原稿ページまたはレコードのコンテンツデータを配置することができない。その場合、次の処理ステップへ進む（全体処理フローのＳ２７０３）。
【０１２６】
また、製本アプリケーション１０４は、Ｓ２９０７により変数Ｓのほうが大きいか、変数Ｍと等しいと判断した場合、Ｓ２９０８へ進む。Ｓ２９０７は出力用紙の最適化ができるかどうかの判定であり、この判定を一度も通らずに全体処理ステップのＳ２７０３へ進んだ場合は、出力用紙の最適化はできなかったことになる。
【０１２７】
製本アプリケーション１０４は、Ｓ２９０６において算出された余分なスペース数に原稿ページまたはレコードのコンテンツデータをレイアウトする。そして、レイアウト後の余分なスペース数（変数Ｓ）を算出するため、Ｓ２９０６において算出された余分なスペース数（変数Ｓ）から原稿ページ数またはレコード数（変数Ｍ）の値を減算する（Ｓ２９０８）。製本アプリケーション１０４は、印刷部数Ｊの値を１部数分減らす（Ｓ２９０９）。この処理は、実際に印刷される部数が１つ減ることを意味しているのではなく、Ｓ２９０１で取得した印刷部数分の出力を行うために、取得した「印刷部数−１」の出力用紙枚数で行えるということを意味している。製本アプリケーション１０４は、Ｓ２９０６へ戻り、Ｓ２９０７の判定処理で、全体処理ステップのＳ２７０３へ進むまでＳ２９０６からＳ２９０９の処理を繰り返す。この出力用紙枚数の最適化の処理は利用者によって明示的に指定されることにより実行されるものでも良いし、文書処理システムが自動的に実行するようになっていても良い。
【０１２８】
図２９の処理を実行することにより、生成される余分な余白領域を生かして、文書データの各ページをレイアウトしているため、無駄な用紙の出力を防ぐと共に、余分な余白領域の認識性を高め、断裁後に抜き取り易い出力結果を得ることが可能となる。
【０１２９】
［配置順番変更処理］
図３１（Ａ）、図３１（Ｂ）、図３１（Ｃ）は、図２７の全体処理ステップのＳ２７０３配置順番変更処理の詳細処理を示している処理フローである。
【０１３０】
図３１（Ａ）は前処理ステップＳ２９０２、Ｓ２９０３によって単数部印刷であり、かつ、前半後半印刷でないと判断されたときに実行される配置順番変更処理である。
【０１３１】
製本アプリケーション１０４は、余分なスペースの数分（変数Ｘ分）、原稿ページの配置開始位置をずらして印刷ページへ原稿ページを配置する（Ｓ３１００）。つまり、マルチレコード印刷や串刺し印刷が設定されている場合、図３１の処理を実行すると、製本アプリケーション１０４は、レコードの配置開始位置を余分なスペースの数（変数Ｘ分）ずらして印刷ページに配置することになる。印刷ページへの配置が終了したら次の処理ステップ（全体処理ステップのＳ２７０４）へ進む。
【０１３２】
図３２は、Ｓ３１００によって配置順番変更された出力結果の例を示している。出力結果３２００は変更前の状態を示している。３２０１は印刷ページ、３２０２は原稿ページを示している。原稿ページ内の番号はページ番号を示している。この例では１ページ分の印刷ページに４ページ分の原稿ページを配置する多面印刷であり、６ページ分の原稿ページを配置している。３２０３は生成された余分なスペースであり、２ページ分の余分なスペース数を示している。出力後は３２０４のように余分なスペースが下側になってしまうのでスペースの認識率が下がってしまうことや、断裁後にスペースを取り除くことが難しくなってしまう。出力結果３２０５はＳ３１００を適用後の状態を示している。製本アプリケーション１０４は、余分なスペース数分原稿ページの配置順番をずらしてレイアウトする。つまり、図３２の例では、余分なスペースが２ページ分生成されると判断されるので、１ページ目の原稿ページは、Ｓ３１００の処理を適用前において３ページ目の原稿ページを配置すべき位置（３２０８）に配置される。そして、余分なスペースが先頭位置（３２０６）となる。Ｓ３１００の処理を適用して出力処理を行うと、出力結果は３２０７に示すように余分なスペースが上側になるので、スペースの認識率が上がり、断裁後にも取り除き易くなる。ここでは多面印刷の例を示したが、マルチレコード印刷および串刺し印刷時にも同様な結果を得ることが出来る。
【０１３３】
続いて図３１（Ｂ）および図３１（Ｃ）のフローチャートについて説明するが、これらの処理は、出力方法として複数部にて出力する出力設定情報が含まれている場合に実行される処理である。
【０１３４】
図３１（Ｂ）は、図２９のＳ２９０５によって複数部印刷で出力用紙の最適化を行わないと判定されたときの配置順番変更処理を示している。
【０１３５】
製本アプリケーション１０４は、複数部数全体における余分なスペース数（変数Ｓ）分、複数部の原稿ページの配置開始位置をずらして印刷ページへ原稿ページを配置する（Ｓ３１０１）。また、製本アプリケーション１０４は、配置順番をずらすときに複数部全体を考慮して行う。マルチレコード印刷や串刺し印刷時は、複数部のレコードの配置開始位置を複数部数全体における余分なスペースの数分ずらして印刷ページに配置することになる。印刷ページへの配置が終了したら次の処理ステップ（全体処理ステップのＳ２７０４）へ進む。
【０１３６】
図３３は、Ｓ３１０１によって配置順番変更された印刷ページの例を示している。３３００は、Ｓ３１０１の処理を適用前の状態を示している。３３０１は印刷ページ、３３０２は原稿ページを示している。原稿ページ内の番号はページ番号を示している。この例では１ページ分の印刷ページに４ページ分の原稿ページを配置する前半後半印刷であり、１０ページの原稿ページを２部印刷することが設定されているとする。
【０１３７】
３３０３は生成された余分なスペースであり、各部で２ページ分の余分なスペースが生成されていることが分かる。これらを各部で断裁して重ねると、３３０５の余分なスペースが原稿ページ（３３０５）の下側になってしまい、余分なスペースの認識率が下がってしまうことや、取り除くことが難しくなってしまう。
【０１３８】
一方、出力結果３３０６はＳ３１０１の処理を適用して配置順番変更後の状態を示している。複数部全体の余分なスペース（３３０７）の数分、原稿ページの配置順番をずらすので、断裁して重ねると、余分なスペース（３３０８）が原稿ページ（３３０９）より上側になる。また、配置順番をずらすときに複数部全体を考慮してずらすので、断裁の作業を複数部同時に行うことが可能となり、断裁結果を重ね合わせることでページ順番が揃った出力結果を得ることができる。これにより余分なスペースの認識率が上がり、取り除く手間も少なくなる。ここでは前半後半印刷の例を示したが、多面印刷、マルチレコード印刷および串刺し印刷時にも同様な結果を得ることが出来る。
【０１３９】
つまり、図３１（Ｂ）は、余分な余白領域ページ数が文書データに含まれるページ数より少ないと判断された場合、設定部数と認識された余分な余白領域ページ数に基づく部数分の余分な余白領域ページ数ずらした位置から文書データをレイアウトする処理である。
【０１４０】
図３１（Ｃ）は図２９のＳ２９０７で出力用紙の最適化の適用を実行したときの配置順番変更処理を示している。製本アプリケーションは、出力用紙の最適化を適用後の余分なスペースの数である変数Ｓに１部分の余分なスペースである変数Ｘを加えた数分、原稿ページの配置開始位置をずらして、Ｊ部数印刷分の印刷ページへ原稿ページを配置する。また、配置順番をずらすときに複数部全体を考慮して行われる。マルチレコード印刷や串刺し印刷時は、複数部のレコードの配置開始位置を出力用紙の最適化を適用後の余分なスペースの数Ｓに１部分の余分なスペースの数（Ｘ）分ずらしてＪ部数印刷における印刷ページの総ページ枚数上に配置することになる。印刷ページへの配置が終了したら次の処理ステップ（全体処理ステップのＳ２７０４）へ進む。
【０１４１】
前述した出力用紙の最適化で説明した図３０を用いて、Ｓ３１０２によって配置順番変更された出力結果の例を説明する。各部分の説明は前述したとおりなので省く。この例では１ページ分の印刷ページに４ページ分の原稿ページを配置する前半後半印刷であり、１０ページの原稿ページを７部印刷している。各部で２ページ分の余分なスペースが生成されるので、７部全体では１４ページ分の余分なスペースが生成される。図２９のＳ２９０６の処理を図３０に適用すると（７部分の余分なスペース数（１４））−（１部あたりの余分なスペース数（２））を算出すると１２ページの余分なスペースが算出される。１２ページ分の余分なスペースを用いて、７部目の原稿ページ（１０ページ分）を配置することが可能であるので、製本アプリケーション１０４は、７部目の原稿ページを配置する。その結果、６部印刷分の印刷ページ数で７部分の原稿データを配置して、印刷することが可能となる。そして、Ｓ２９０８の処理を実行するとＳ２９０６によって算出された「余分なスペース数（１２ページ）―原稿ページ数（１０ページ）」を実行すると、Ｓ２９０８では余分なスペース量は２ページと算出される。ここで、Ｓ２９０６の処理を再度実行すると、「Ｓ＝現在の余分なスペース数（２ページ）―１部あたりの余分ページ数（２ページ）」は０となる。つまり、図２９のＳ２９０６〜Ｓ２９０９のループを抜けたときの変数Ｓの値は０であるので、Ｓ３１０２では「Ｓ＋Ｘ＝２ページ」の余分なスペース分原稿ページの配置開始位置をずらして、６部分の印刷ページ枚数上に配置する。すると３００４のような出力結果となる。原稿ページは、２ページ分の余分なスペース分（３００７および３００８）ずらして６部分の印刷ページ枚数１８枚の中で、配置されている。また、配置順番をずらすときに複数部全体を考慮してずらすので、断裁の作業を複数部同時に行うことが可能となる。これにより余分なスペースの認識率が上がり、取り除く手間も少なくなる。また、出力される用紙枚数の節約も可能となる。ここでは前半後半印刷の例を示したが、多面印刷、マルチレコード印刷および串刺し印刷時にも同様な結果を得ることが出来る。
【０１４２】
つまり、製本アプリケーションは、図３１（Ｂ）および（Ｃ）の処理により、認識された余分な余白領域が、複数部数分の出力結果を断裁して積み重ねた際に端部となる記録媒体から連続して出力されるように文書データにおける各ページのレイアウトを決定する。
【０１４３】
図３１（Ｂ）または図３１（Ｃ）の処理を実行することにより、複数部の出力結果を断裁するために積載して断裁した後であっても、余分な余白領域の視認性または余分な余白領域を取り除きやすくなるという効果を得ることができる。また、図３１（Ｃ）では、無駄な用紙が出力されないようにレイアウトすることも可能となる。
【０１４４】
［配置順番変更の指定方法］
前述した配置順番変更の処理は、製本アプリケーションの印刷指定時に、ブックの印刷設定として設定されている必要がある。
【０１４５】
図３４は配置順番変更の指定を行うＵＩ例を示している。前述した印刷方法の設定ダイアログ内に“白紙（余分なスペース）の並び順を最適化する”というチェックボックス（３４００）を用意して、チェックがＯＮになっているときに配置順番変更処理を行うようにする。３４０１はプレビューエリアであり、３４００で配置順番変更処理がチェックＯＮになっていれば、それを示すようにダミーの余分なスペース（３４０２）を表示させるなどを行っても良い。指定方法は、チェックボックスによる指定だけではなく、メニュー、ツールボタンなどの操作で指定されても良い。
【０１４６】
［配置順番変更の自動指定方法］
前述した配置順番変更の処理は、製本アプリケーションの印刷指定時に、ブックの印刷設定として設定されている必要がある。
【０１４７】
図３４で説明したチェックボックスなどによるＵＩ指定を用いなくとも、前述した印刷方法（多面印刷など）がブックの属性として設定されていれば、文書処理システムで自動的に配置順番変更処理を行うように設定しておくようにすることも可能である。
【０１４８】
また、自動設定を行ったとしても図３４のＵＩ例のように自動的に設定されていることをチェックボックスのＯＮの状態で示すことも可能である。したがって、自動設定とＵＩによる設定の併用も可能である。
【０１４９】
なお本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また本発明の目的は、前述の実施形態の機能を実現するプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５０】
また、本発明には、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた場合についても、本発明は適用される。その場合、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【０１５１】
また、発明の実施の形態は、本発明を中核として構成される装置又は方法を説明している。このため本実施形態には本発明の本質的部分に加えて付加的な構成要件も記載されている。すなわち発明の実施の形態において説明した装置又は方法の構成要件を備えることは、本発明を成立させるための十分条件ではあるものの、必要条件ではない。
【図面の簡単な説明】
【０１５２】
【図１】本実施形態のスタンドアロン型の文書処理システムのソフトウェア構成例を示すブロック図である。
【図２】本実施形態の文書処理システムを実現するハードウェア構成例を示すブロック図である。
【図３】ブックファイルの構造の一例を示す図である。
【図４】ブック属性の一覧を示す図である。
【図５】章属性の一覧を示す図である。
【図６】ページ属性の一覧を示す図である。
【図７】ブックファイルを開く手順例を示すフローチャートである。
【図８】電子原稿ファイルをブックファイルにインポートする手順例を示すフローチャートである。
【図９】図８のステップ８０１に示すアプリケーションデータを電子原稿ファイルに変換する手順例を示すフローチャートである。
【図１０】製本アプリケーションのＵＩ画面である。
【図１１】新規にブックファイルが作成された際のＵＩ画面である。
【図１２】クライアントサーバ型の文書処理システムのソフトウェア構成例を示すブロック図である。
【図１３】ステイプル制御システムの構成を示すブロック図である。
【図１４】本発明の課題の状態を示す多面印刷の印刷ページの図例である。
【図１５】本発明の課題の状態を示す多面印刷の出力ページの図例である。
【図１６】本発明の課題の状態を示すマルチレコード印刷の印刷ページの図例である。
【図１７】本発明の課題の状態を示す前半後半印刷の複数部数印刷の印刷ページの図例である。
【図１８】（Ａ）は多連印刷の印刷ページの図例、（Ｂ）は多連印刷の設定ＵＩ例を示す図である。
【図１９】（Ａ）は多面印刷の印刷ページの図例、（Ｂ）は多面印刷の設定ＵＩ例を示す図である。
【図２０】（Ａ）は前半後半印刷の印刷ページの図例、（Ｂ）は前半後半印刷の設定ＵＩ例を示す図である。
【図２１】可変印刷の印刷例を示す図である。
【図２２】（Ａ）は可変印刷エディタのＵＩ例、（Ｂ）はデータベース設定を行うダイアログのＵＩ例である。
【図２３】（Ａ）は可変フィールドの設定例を示す図、（Ｂ）は可変印刷エディタのプレビューの様子を示す図例である。
【図２４】マルチレコード印刷の印刷例を示す図である。
【図２５】マルチレコード印刷の串刺し印刷の印刷例を示す図である。
【図２６】マルチレコード印刷の設定ＵＩ例を示す図である。
【図２７】本発明の実施例における全体処理フローを示しているフローチャートである。
【図２８】（Ａ）は多面印刷または前半後半印刷時における本発明の実施例における余分なスペースの計算処理フローを示しているフローチャート、（Ｂ）はマルチレコード印刷および串刺し印刷時における本発明の実施例における余分なスペースの計算処理フローを示しているフローチャートである。
【図２９】本発明の実施例における適用手段の判断処理フローを示しているフローチャートである。
【図３０】本発明の実施例における出力用紙枚数の最適化の例を示している図例である。
【図３１】（Ａ）は単数部印刷で前半後半印刷でないときにおける本発明の実施例における配置順番変更処理フローを示しているフローチャート、（Ｂ）は複数部印刷で出力用紙の最適化を行わないと判定されたときにおける、本発明の実施例における配置順番変更処理フローを示しているフローチャート、（Ｃ）は出力用紙の最適化の適用を実行したときにおける、本発明の実施例における配置順番変更処理フローを示しているフローチャートである。
【図３２】本発明の実施例における配置順番変更処理の例を示している図例である。
【図３３】本発明の実施例における配置順番変更処理の例を示している図例である。
【図３４】配置順番変更の指定を行うＵＩ例を示している図例である。
【符号の説明】
【０１５３】
１００  ホストコンピュータ
１０７  プリンタ
２０１  ＣＵＰ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０７  ディスクコントローラ
【図１】
2007172247.tif 000003
【図２】
2007172247.tif 000004
【図３】
2007172247.tif 000005
【図４】
2007172247.tif 000006
【図５】
2007172247.tif 000007
【図６】
2007172247.tif 000008
【図７】
2007172247.tif 000009
【図８】
2007172247.tif 000010
【図９】
2007172247.tif 000011
【図１０】
2007172247.tif 000012
【図１１】
2007172247.tif 000013
【図１２】
2007172247.tif 000014
【図１３】
2007172247.tif 000015
【図１４】
2007172247.tif 000016
【図１５】
2007172247.tif 000017
【図１６】
2007172247.tif 000018
【図１７】
2007172247.tif 000019
【図１８】
2007172247.tif 000020
【図１９】
2007172247.tif 000021
【図２０】
2007172247.tif 000022
【図２１】
2007172247.tif 000023
【図２２】
2007172247.tif 000024
【図２３】
2007172247.tif 000025
【図２４】
2007172247.tif 000026
【図２５】
2007172247.tif 000027
【図２６】
2007172247.tif 000028
【図２７】
2007172247.tif 000029
【図２８】
2007172247.tif 000030
【図２９】
2007172247.tif 000031
【図３０】
2007172247.tif 000032
【図３１】
2007172247.tif 000033
【図３２】
2007172247.tif 000034
【図３３】
2007172247.tif 000035
【図３４】
2007172247.tif 000036