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