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