(57)【要約】【課題】プリンタにより印刷する文書途中にインサータから合紙を挿入する。【解決手段】デスプーラは、予め作成された文書の印刷指示がされた場合に（ステップ１６０１−Ｙ）、まずメモリに展開されている印刷設定のうちから給紙段情報の設定値を読み込み（ステップ１６０２）、インサータ給紙が設定されていれば（ステップ１６０３−Ｙ）、シートの構成を元にしてインサータから挿入されるシートの位置を判定し、その位置に基づいてインサート用紙挿入位置パラメータを生成する（ステップ１６０４）。そして、それをパラメータとするインサータ給紙コマンドをプリンタドライバに送信し、その後、印刷設定及び印刷データに基づいて出力コマンドをプリンタドライバに送信する（ステップ１６０５）。プリンタドライバは、受け取ったコマンドに従ってデバイスに対してインサータ給紙コマンドおよび印刷ジョブを発行して印刷を行わせる。【選択図】図１６
2005031760.tif 000002
【特許請求の範囲】
【請求項１】
通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置により文書データを印刷させるための文書処理装置における文書処理方法であって、
前記文書データのページ間にインサータによりシートを挿入させる指定を含む文書体裁の設定を行う設定工程と、
前記印刷装置が印刷ジョブ途中におけるインサータからの給紙機能を有するか否か判定する判定工程と、
前記設定工程により前記文書体裁の設定においてインサータによるシートの挿入が指定された場合に、前記判定工程により前記給紙機能を有すると判定された場合には前記文書データから単一の印刷ジョブを生成し、一方、前記判定工程により前記給紙機能を有しないと判定された場合には前記印刷データから前記一定位置ごとに分割された印刷ジョブを生成するジョブ生成工程と
を備えることを特徴とする文書処理方法。
【請求項２】
前記文書データは階層構造を有し、前記一定位置は前記階層構造の一定階層における境界であることを特徴とする請求項１に記載の文書処理方法。
【請求項３】
前記生成工程により生成された印刷ジョブとともに、前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力工程を更に備えることを特徴とする請求項１または２に記載の文書処理方法。
【請求項４】
前記文書処理装置は、文書データに対して、前記印刷装置における印刷設定としての文書体裁の設定が可能な印刷制御アプリケーションと、前記印刷装置で印刷すべき印刷ジョブを生成するプリンタドライバとを備えており、
前記設定工程及び前記判定工程は、前記印刷制御アプリケーションにより実行されることを特徴とする請求項１乃至３のいずれかに記載の文書処理方法。
【請求項５】
前記設定工程により前記文書体裁の設定においてインサータによるシートの挿入が指定され、かつ、前記判定工程により前記給紙機能を有すると判定され、前記ジョブ生成工程で前記文書データから単一の印刷ジョブを生成する場合に、前記印刷制御アプリケーションは、インサータによるシートの挿入を行うページ位置で、前記プリンタドライバに対して印刷設定情報を切り替えることを指示することを特徴とする請求項４記載の文書処理方法。
【請求項６】
通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置により編集された文書データを印刷させることが可能な文書処理装置であって、
前記文書データのページ間にインサータによりシートを挿入させる指定を含む文書体裁の設定を行う設定手段と、
前記印刷装置が印刷ジョブ途中におけるインサータからの給紙機能を有するか否か判定する判定手段と、
前記設定手段により前記文書体裁の設定においてインサータによるシートの挿入が指定された場合に、前記判定手段により前記給紙機能を有すると判定された場合には前記文書データから単一の印刷ジョブを生成し、一方、前記判定手段により前記給紙機能を有しないと判定された場合には前記印刷データから前記一定位置ごとに分割された印刷ジョブを生成するジョブ生成手段と
を備えることを特徴とする文書処理装置。
【請求項７】
前記文書データは階層構造を有し、前記一定位置は前記階層構造の一定階層における境界であることを特徴とする請求項６に記載の文書処理装置。
【請求項８】
前記生成手段により生成された印刷ジョブとともに、前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力手段を更に備えることを特徴とする請求項６または７に記載の文書処理装置。
【請求項９】
文書データに対して、前記印刷装置における印刷設定としての文書体裁の設定が可能な印刷制御アプリケーションと、前記印刷装置で印刷すべき印刷ジョブを生成するプリンタドライバを更に備え、
前記設定手段及び前記判定手段は、前記印刷制御アプリケーションにより実行されることを特徴とする請求項６乃至８のいずれかに記載の文書処理装置。
【請求項１０】
前記設定手段により前記文書体裁の設定においてインサータによるシートの挿入が指定され、かつ、前記判定手段により前記給紙機能を有すると判定され、前記ジョブ生成手段で前記文書データから単一の印刷ジョブを生成する場合に、前記印刷制御アプリケーションは、インサータによるシートの挿入を行うページ位置で、前記プリンタドライバに対して印刷設定情報を切り替えることを指示することを特徴とする請求項９記載の文書処理装置。
【請求項１１】
通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置から、編集された文書データを印刷させるためにコンピュータにより実行されるプログラムであって、
前記文書データのページ間にインサータによりシートを挿入させる指定を含む文書体裁の設定を行う設定手段と、
前記印刷装置が印刷ジョブ途中におけるインサータからの給紙機能を有するか否か判定する判定手段と、
前記設定手段により前記文書体裁の設定においてインサータによるシートの挿入が指定された場合に、前記判定手段により前記給紙機能を有すると判定された場合には前記文書データから単一の印刷ジョブを生成し、一方、前記判定手段により前記給紙機能を有しないと判定された場合には前記印刷データから前記一定位置ごとに分割された印刷ジョブを生成するジョブ生成手段と、
を備えることを特徴とする文書処理装置。
として前記コンピュータを機能させることを特徴とするプログラム。
【請求項１２】
前記文書データは階層構造を有し、前記一定位置は前記階層構造の一定階層における境界であることを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記生成手段により生成された印刷ジョブとともに、前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力手段を更に備えることを特徴とする請求項１１または１２に記載のプログラム。
【請求項１４】
文書データに対して、前記印刷装置における印刷設定としての文書体裁の設定が可能な印刷制御アプリケーションと、前記印刷装置で印刷すべき印刷ジョブを生成するプリンタドライバを更に備え、
前記設定手段及び前記判定手段は、前記印刷制御アプリケーションにより実行されることを特徴とする請求項１２乃至１３のいずれかに記載のプログラム。
【請求項１５】
前記設定手段により前記文書体裁の設定においてインサータによるシートの挿入が指定され、かつ、前記判定手段により前記給紙機能を有すると判定され、前記ジョブ生成手段で前記文書データから単一の印刷ジョブを生成する場合に、前記印刷制御アプリケーションは、インサータによるシートの挿入を行うページ位置で、前記プリンタドライバに対して印刷設定情報を切り替えることを指示することを特徴とする請求項１４記載のプログラム。
【請求項１６】
印刷ジョブ途中においても、通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置により、編集された文書データを印刷させるためにコンピュータにより実行されるプログラムであって、
前記文書データの一定位置にインサータによりシートを挿入するか否かの指定を含む文書体裁の設定を保存する設定保存手段と、
前記文書データから単一の印刷ジョブを生成するジョブ生成手段と、
前記文書体裁の設定においてインサータによるシートの挿入が指定されている場合に、前記生成手段により生成された印刷ジョブとともに前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力手段と
として前記コンピュータを機能させることを特徴とするプログラム。
【請求項１７】
通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置により編集された文書データを印刷させるためにコンピュータにより実行されるプログラムであって、
前記文書データの一定位置にインサータによりシートを挿入するか否かの指定を含む文書体裁の設定を保存する設定保存手段と、
前記文書体裁の設定においてインサータによるシートの挿入が指定されている場合に、前記印刷データから前記一定位置ごとに分割された印刷ジョブを生成するジョブ生成手段と、
前記生成手段により生成された印刷ジョブごとに、該印刷ジョブと共に前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力手段と
として前記コンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば文書処理プログラムや画像編集プログラム等、様々なプログラムによって生成される出力データをひとつの文書としてまとめ、その文書を印刷するための印刷機能を提供する文書処理装置及び方法に関し、特に印刷装置のインサータを用いて合紙を挿入する設定を行うことができる文書処理装置及び方法に関する。
【０００２】
【従来の技術】
文字や表、画像など、データの種類が異なると、データを定義する構造やそれらデータに対する編集操作が異なるために、データの種類に応じた様々なアプリケーションプログラムが提供されている。利用者は、文字を編集するためには文字処理プログラム、表を編集するためには表計算プログラム、画像を編集するためには画像編集プログラムといった具合に、データの種類別にアプリケーションを使い分けている。そして、このように、利用者が使い分けている各アプリケーションプログラムにより作成されるデータをひとまとめにした新たな文書の作成および編集を行うための文書処理システムも提案されている（特許文献１等参照）。
【０００３】
一方、デバイスにはプレプリントされたデータを文書の先頭に挿入するための機器であるインサータ装置があり、上記文書システムと組み合わせて使用することで文書の表紙としてインサータ給紙された用紙を使用することができた。
【０００４】
【特許文献１】特開２００３−９１５２０号公報
【０００５】
【発明が解決しようとする課題】
上述の文書処理システムでは、種々のアプリケーションにより作成された文書を組み合わせて新たなひとつの文書を構成しているために、それら構成要素たる文書の切れ目に、あるいは任意の位置にプレプリントされた合紙を挿入したいという要求があった。しかしながら、プリンタデバイスのコントローラの制約により上記インサータにより用紙を押入できるのは印刷ジョブの先頭だけであり、文書の任意に位置に挿入することができないという問題があり、その要求に応えることができなかった。
【０００６】
また、プリンタデバイス自体は、印刷ジョブの間にもインサータにより用紙を挿入することを許容することは可能であり、プリンタデバイスのコントローラが新たに開発されれば、印刷ジョブの間にインサータにより用紙を挿入することは可能となると考えられる。
【０００７】
よって、今後は、システム内に、印刷ジョブの先頭にのみインサータ給紙が可能なプリンタデバイスと、印刷ジョブの間にもインサータ給紙が可能なプリンタデバイスが共存することが考えられる。ここで、プリンタドライバのように、出力先のポートが指定されており、出力先のプリンタデバイスが変更されない場合は、そのプリンタデバイスに合わせて印刷ジョブの間のインサータ給紙の設定可否を切り替えればよいが、上述したような、出力先のデバイスに依存しないで、プリンタデバイスにおける印刷設定としての文書体裁の設定が可能な文書処理システム（印刷設定アプリケーション）では、操作者に対しては、上述したように、印刷ジョブの任意の位置にプレプリントされた合紙を挿入したいという要求があるため、印刷ジョブの間にインサータ給紙を設定することができるようにユーザインタフェースを構成することが考えられる。
【０００８】
本発明は上記従来例に鑑みて成されたもので、ユーザに出力先のプリンタの種別を意識させずに、文書データのページ間に、プリンタにおいてインサータ給紙されるように文書体裁を設定でき、かつ、所望とした印刷物が得られる文書処理装置及び方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明は次のような構成から成る。
【００１０】
通常の給紙径路とは異なる給紙部からシートを搬送して前記通常の給紙径路と同じ排出部から前記シートを排出できるインサータを有する印刷装置により文書データを印刷させるための文書処理装置における文書処理方法であって、
前記文書データのページ間にインサータによりシートを挿入させる指定を含む文書体裁の設定を行う設定工程と、
前記印刷装置が印刷ジョブ途中におけるインサータからの給紙機能を有するか否か判定する判定工程と、
前記設定工程により前記文書体裁の設定においてインサータによるシートの挿入が指定された場合に、前記判定工程により前記給紙機能を有すると判定された場合には前記文書データから単一の印刷ジョブを生成し、一方、前記判定工程により前記給紙機能を有しないと判定された場合には前記印刷データから前記一定位置ごとに分割された印刷ジョブを生成するジョブ生成工程とを備える。
【００１１】
更に好ましくは、前記文書データは階層構造を有し、前記一定位置は前記階層構造の一定階層における境界である。
【００１２】
更に好ましくは、前記生成工程により生成された印刷ジョブとともに、前記インサータによるシートの挿入の命令を前記印刷装置に送信する出力工程を更に備える。
【００１３】
更に好ましくは、前記文書処理装置は、文書データに対して、前記印刷装置における印刷設定としての文書体裁の設定が可能な印刷制御アプリケーションと、前記印刷装置で印刷すべき印刷ジョブを生成するプリンタドライバとを備えており、
前記設定工程及び前記判定工程は、前記印刷制御アプリケーションにより実行される。
【００１４】
更に好ましくは、前記設定工程により前記文書体裁の設定においてインサータによるシートの挿入が指定され、かつ、前記判定工程により前記給紙機能を有すると判定され、前記ジョブ生成工程で前記文書データから単一の印刷ジョブを生成する場合に、前記印刷制御アプリケーションは、インサータによるシートの挿入を行うページ位置で、前記プリンタドライバに対して印刷設定情報を切り替えることを指示する。
【００１５】
【発明の実施の形態】
［第１の実施形態］
以下、添付図面に従って、本発明の実施形態を詳細に説明する。
【００１６】
［本実施形態の文書処理システムの概要］
本発明の第１の実施形態である文書処理システムの概要を、図１〜図１３および図２５を参照して説明する。この文書処理システムでは、一般アプリケーションにより作成されたデータファイルが、印刷データ保存用ドライバによって保存ファイルに変換される。印刷制御アプリケーション（製本アプリケーションと呼ぶ場合もある。）はその電子原稿ファイルを編集する機能を提供している。また、印刷制御アプリケーションで編集された保存ファイルに対しては、保存ファイルに対応付けられた編集情報ファイルが生成されて保存される。そして、保存ファイルの内容は、印刷制御アプリケーションを介して印刷アプリケーション（デスプーラとも呼ばれる。）により読み出されて印刷に供される。尚、本例では、それぞれの機能が明瞭になるように、一般アプリケーション、印刷データ保存用ドライバ、印刷制御アプリケーション、印刷アプリケーションと分離して示しているが、ユーザに提供されるパッケージはこれらに限定されず、これらを組み合わせたアプリケーションやグラフィックエンジンとして提供されてもよい。以下、その詳細は説明する。
【００１７】
＜本実施形態の文書処理システムのハードウェア構成例＞
図２は本実施形態の文書処理システムの構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ，ＷＡＮ等のネットワークを介して接続がなされ処理が行われるシステムであっても本発明を適用できる。
【００１８】
同図において、ホストコンピュータ１００は、ＣＰＵ２０１やＲＡＭ２０２、ＲＯＭ２０３等を備える。ＣＰＵ２０１は、ＲＯＭ２０３のプログラム用ＲＯＭあるいは外部メモリ２１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行する。またＣＰＵ２０１は、システムバス２０４に接続される各デバイスを総括的に制御する。また、ＲＯＭ２０３のプログラム用ＲＯＭ領域あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ２０３のフォント用ＲＯＭ領域あるいは外部メモリ２１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ２０３のデータ用ＲＯＭ領域あるいは外部メモリ２１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００１９】
キーボードコントローラ（ＫＢＣ）２０５は、キーボード２０９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０の表示を制御する。ディスクコントローラ（ＤＫＣ）２０７は、ハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）等の外部メモリ２１１とのアクセスを制御する。外部メモリ１１１には、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等が記憶される。プリンタコントローラ（ＰＲＴＣ）２０８は、双方向性インタフェイス（インタフェイス）２１を介してプリンタ１０７に接続されて、プリンタ１０７との通信制御処理を実行する。
【００２０】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ２１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、プリンタドライバにより提供される印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００２１】
プリンタ１０７は、ＣＰＵ３１２により制御される。プリンタＣＰＵ３１２は、ＲＯＭ３１３のプログラム用ＲＯＭ領域に記憶された制御プログラム等あるいは外部メモリ３１４に記憶された制御プログラム等に基づいてシステムバス３１５に接続される印刷部（プリンタエンジン）３１７に出力情報としての画像信号を出力する。また、このＲＯＭ３１３のプログラムＲＯＭ領域には、ＣＰＵ３１２の制御プログラム等を記憶する。ＲＯＭ３１３のフォント用ＲＯＭ領域には上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ３１３のデータ用ＲＯＭ領域には、ハードディスク等の外部メモリ３１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００２２】
ＣＰＵ３１２は入力部３１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ１００に通知できる。ＲＡＭ３１９は、ＣＰＵ３１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ３１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ３１４は、メモリコントローラ（ＭＣ）３２０によりアクセスを制御される。外部メモリ３１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、３１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００２３】
また、外部メモリ３１４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作部３２１からのプリンタモード設定情報を記憶するようにしてもよい。
【００２４】
＜本実施形態の文書処理システムのソフトウェア構成例＞
図１は、本実施形態の文書処理システムのソフトウェア構成を示す図である。
【００２５】
文書処理システムは、本発明の文書処理装置（情報処理装置）の好適な実施形態であるデジタルコンピュータ１００（以下、ホストコンピュータとも呼ばれる）によって実現されている。一般アプリケーション１０１は、ワードプロセシングやスプレッドシート、フォトレタッチ、ドローあるいはペイント、プレゼンテーション、テキスト編集などの機能を提供するアプリケーションプログラムであり、オペレーティングシステム（ＯＳ）に対して印刷処理を要求する機能を有している。これらアプリケーションは、作成された文書データや画像データなどのアプリケーションデータを印刷するにあたって、ＯＳにより提供される所定のインタフェースを利用する。すなわち、アプリケーション１０１は、作成したデータを印刷するために、前記インタフェースを提供するＯＳの出力モジュールに対して、あらかじめ定められる形式で出力指示を行う。出力指示を受けた出力モジュールは、プリンタ等の出力デバイスが処理可能な形式にそのコマンドを変換し、変換されたコマンドを出力する。出力デバイスが処理可能な形式はデバイスの種類やメーカ、機種などによって異なるために、デバイスごとにデバイスドライバが提供されており、ＯＳではそのデバイスドライバを利用してコマンドの変換を行い、印刷データを生成し、ＪＬ（Ｊｏｂ  Ｌａｎｇｕａｇｅ）でくくることにより印刷ジョブが生成される。
【００２６】
ＯＳとしてマイクロソフト社のウインドウズ（登録商標）を利用する場合には、出力モジュールとしてはＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）と呼ばれるモジュールが用いられる。そして、アプリケーション１０１は、作成したデータをＧＤＩに適合した形式のパラメータとしてＧＤＩ関数をコールする。こうすることで、ＯＳに対して前述した出力指示が送られたことになる。
【００２７】
印刷データ保存用ドライバ１０２は、前述のデバイスドライバを改良したものであり、本文書処理システム実現のために提供されるソフトウェアモジュールである。ただし、印刷データ保存用ドライバ１０２は特定の出力デバイスを目的としておらず、後述の印刷制御アプリケーション１０４やプリンタドライバ１０６により処理可能な形式に出力コマンドを変換する。この印刷データ保存用ドライバ１０２による変換後の形式（以後、「保存ファイル形式」と呼ぶ。）は、文書の構造やページ単位の原稿を詳細な書式をもって表現可能であれば特に問わない。ページ単位の原稿を表現する形式としては、例えばアドビシステムズによるＰＤＦ形式や、ＳＶＧ形式などが保存ファイルとして採用できる。
【００２８】
なお、本実施形態においては保存ファイル１０３と編集情報ファイル１１１とを別個のファイルとしているが、これらは、ファイルが開かれていない状態においては、その一体性を保持するためにアーカイブファイルとして一体とされていてもよい。本説明では、とくに保存ファイル１０３と編集情報ファイル１１１とをまとめて電子原稿ファイルと呼ぶことがある。また印刷データ保存用ドライバのことを、電子原稿ファイルを生成するプログラムという意味で電子原稿ライタと呼ぶ場合もある。
【００２９】
図１で示すシステムにおいては、保存ファイル１０３で保存されているデータの内容に対して加工を施すことができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。これらの目的のために、図１のシステムでは中間コードデータでスプールする様、従来のものに対してシステムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常印刷制御アプリケーション１０４が提供するウインドウから設定を行い、その設定内容をＲＡＭ２０２上あるいは外部メモリ２１１上に保管する。
【００３０】
図１に示す通り、この拡張された処理方式では、まず、アプリケーション１０１からの印刷データは印刷データ保存用ドライバ１０２を介して保存ファイル１０３としてシステム上に保存される。この保存ファイル１０３は中間ファイルとも呼ばれ、印刷物のコンテンツデータや印刷用設定データ等が含まれる。印刷物のコンテンツデータとはユーザがアプリケーション上で作成したデータを中間コードに変換したデータであり、印刷用設定データとはコンテンツデータをどのように出力するか（出力体裁等）を記述したデータである。そのほか、印刷制御アプリケーションにより保存ファイルの内容の編集や出力指示をユーザに行わせる際のユーザインターフェースを提供するための編集情報ファイルというアプリケーション用拡張データが含まれる。編集情報ファイル１１１には、ユーザインターフェースの提供のための拡張データのみならず、保存ファイルには格納できない印刷用設定データが格納されている。このため、保存ファイルとしてたとえば標準化された形式を用いた場合など、その形式では保存できない印刷用設定も編集情報ファイル１１１に保存できる。
【００３１】
この保存ファイル１０３を印刷制御アプリケーション１０４が読み込む。この印刷制御アプリケーション１０４は、保存ファイル１０３の内容をメモリにテーブルとして展開し、さらに編集情報ファイル１１１に、保存ファイルには含まれない特有の設定が含まれていれば、その設定をメモリ上に展開したテーブルに反映する。そして、読み込んだ保存ファイル１０３に内容の出力体裁を変更、表示し、保存、印刷することが可能である。実際に印刷のための処理を行うのは印刷アプリケーション（デスプーラ）１０５である。印刷制御アプリケーション１０４から印刷命令を受けた印刷アプリケーション（デスプーラ）１０５は、印刷制御アプリケーション１０４の設定した出力体裁に従い、ＧＤＩ関数など、所定の形式でグラフィックエンジン１２１に対してデータを入力する。グラフィックエンジン１２１は、入力されたＧＤＩ関数形式などのデータをＤＤＩ関数に変換して、プリンタドライバ１０６へＤＤＩ関数を出力する。プリンタドライバ１０６は、グラフィックエンジン１２１から取得したＤＤＩ関数に基づいてページ記述言語等からなるプリンタ制御コマンドを生成し、システムスプーラ１２２経由でプリンタ１０７に出力する。
【００３２】
＜保存ファイルのデータ形式例＞
印刷アプリケーション１０４の詳細に言及する前に、保存ファイルのデータ形式を説明する。保存ファイルは、コンテンツデータとして各原稿ページ（アプリケーションで生成されたページ単位のデータ。論理ページとも呼ぶ。）のデータを含み、印刷用設定データとしてたとえばジョブチケットと呼ばれる形式のデータを含む。さらに、保存ファイル１０３と共に、後述する印刷制御アプリケーション１０４が独自に参照するための編集情報ファイル１１１も格納される。保存ファイル１０３においては、このＰＤＦ形式の原稿ページデータやジョブチケットと呼ばれる形式のデータが中間データということになる。
【００３３】
保存ファイルにおいて、原稿ページデータは、例えばＰＤＦ形式などで定義されており、文字の書体や色の指定、原稿ページ内における文字や図形等のレイアウトの情報等が含まれている。
【００３４】
保存ファイルとして保存されるジョブチケットは原稿ページを最小単位とする構造を有するデータである。ジョブチケットにおける構造は、用紙上における原稿ページのレイアウトを定義している。１つのジョブチケットは１つの印刷ジョブに対応する。最上位に文書全体のノードがあり、文書全体の属性、例えば両面印刷／片面印刷などが定義されている。その下には、文書の構造および各構成要素ごとの設定を示す情報と含む。具体的には、シート束ノードが属し、用いるべき用紙の識別子や、プリンタにおける給紙口の指定などの属性が含まれる。各シート束ノードには、そのシート束に含まれるシートのノードが属する。１シートは１枚の用紙に相当する。各シートには、印刷ページ（物理ページ）が属する。片面印刷ならば１シートには１物理ページが属し、両面印刷ならば１シートに２物理ページが属する。各物理ページには、その上に配置される原稿ページが属する。また物理ページの属性として、原稿ページのレイアウトが含まれる。原稿ページについては、原稿ページの実体である原稿ページデータへの関連づけ情報（リンク情報）が含まれる。
【００３５】
ジョブチケットのデータ構造の例を図１２に示す。印刷用のデータでは、文書は用紙の集合で構成されており、各用紙は表、裏の２面で構成されており、各面は原稿をレイアウトする領域（物理ページ）を持ち、各物理ページには、最小単位である原稿ページの集合から構成される。１１０１は文書に相当するデータで、文書全体に関係するデータと、文書を構成する用紙情報のリストから構成される。用紙情報１１０２は用紙サイズなど用紙に関する情報と用紙上に配置される面情報のリストから構成される。面情報１１０３は、面に固有のデータと、面上に配置される物理ページのリストから構成される。物理ページ情報１１０４は、物理ページのサイズやヘッダ・フッタなどの情報と、物理ページを構成する原稿ページのリストから構成される。
【００３６】
文書全体の設定については、例えば次のような情報を含む。
（１）物理ページ（印刷媒体のシートの面を指す。）上における原稿ページの配置の情報（Ｎページを１枚の物理ページに配置するいわゆるＮアップ（Ｎ−ｕｐ）印刷の設定等）および順序
（２）ドキュメント名
（３）両面指定の可否
（４）バリアブル印刷（あらかじめ定めた欄の内容を別途用意したデータを埋め込んで印刷する技術）の可否
（５）含まれる原稿ページ数
（６）カラータイプ
（７）部数など
（８）ウォーターマーク（原稿ページまたは印刷ページに重複させる地模様）
（９）プリンタ状態
（１０）メディアタイプ
（１１）シート上の論理ページ番号リスト
（１２）印刷品位など。
【００３７】
シート束ごとの印刷設定については次のようなパラメータを設定できる。
（１３）Ｎアップ印刷の指定
（１４）カラータイプ
（１５）給紙元など。
【００３８】
各シート束に属するシートごとの印刷設定については次のような設定ができる。
（１６）両面／片面印刷の設定。
【００３９】
各シートに属する物理ページ（面）ごとの印刷設定については次の設定ができる。
（１７）カラータイプ
（１８）表面／裏面のいずれかに相当するかの指定。
【００４０】
各物理ページに配置される原稿ページごとの印刷設定については次の設定ができる。
（１９）開始座標
（２０）大きさ
（２１）順序。
【００４１】
このようにジョブチケットは、原稿ページを最小位とした階層構造を有するデータである。そして、これらジョブチケットにより定義される印刷用設定は、その多くがドキュメント単位で設定される階層ごとに共通なものではあるが、Ｎ−ｕｐ設定やカラータイプのように階層間で共通なものも一部存在する。共通な設定については、下位の階層は、原則としてその上位の階層における同一の設定の値を継承する。ただし、階層間で共通な属性が異なる値を有している場合には、注目階層について設定された値が、その属性の値として用いられる。たとえば、カラータイプの設定は、ドキュメント全体とシート束（シートのくくり）、物理ページ（面あるいは印刷ページとも呼ぶ）について設定することができる。カラータイプは、印刷装置におけるモードを指定する設定であり、モノクロモードが設定されれば印刷装置によりモノクロームで印刷させ、カラーモードが設定されればカラーで印刷させるように、印刷データが生成される。
【００４２】
＜編集情報ファイルにより管理される文書構造＞
印刷制御アプリケーション１０４は、保存ファイル１０３に含まれるデータを様々な方法でユーザに指定させ、また、印刷設定を変更させるためのユーザインターフェースを提供するプログラムである。保存ファイル自体は上述した構造を有するファイルであるが、印刷制御アプリケーション１０４は、保存ファイル１０３とは別に前述した編集情報ファイル１１１を、保存ファイルと対応付けて管理している。その編集情報ファイルに含まれる編集情報により、印刷制御アプリケーション１０４は、保存ファイル１０３、例えばジョブチケットで定義されるドキュメントとは独立した管理構造で文書を管理する。その管理構造は、ジョブチケットと類似した階層構造であるが、ジョブチケットと異なり、上位から「ブック」「章」「原稿（論理）ページ」という階層からなる。このうち原稿ページはジョブチケットでいうところの原稿ページと同じものを指す。また章は、シート束（シートのくくり）に対応する。
【００４３】
ユーザインターフェースとして表示される文書ファイルは、ユーザが、印刷制御アプリケーション１０４を用いて保存ファイル１０３の印刷用設定の変更や印刷指示等を行う際に一時的にユーザインターフェースのために構築される。したがって、印刷制御アプリケーション１０４は、保存ファイル１０３を対応する編集情報ファイル１１１とともに開き、その保存ファイルから編集情報で定義される構造を有したデスプールテーブル（後述）をメモリ上に展開し、それに基づいて、文書ファイルの構造やプレビュー画面を、後述するようにユーザインターフェースとして表示する。この印刷制御アプリケーション（製本アプリケーション）１０４により、保存ファイル１０３および編集情報ファイル１１１に基づいて構築される文書ファイルをブックファイルと呼ぶ。そして、その際、編集情報ファイルに固有の設定項目がある場合には、ユーザがユーザインターフェースを介してブックファイルを参照しながら印刷設定の変更を行うことができる。変更された設定は、メモリ上のテーブル（デスプールテーブル）に反映され、保存の指示がされれば保存ファイル１０３および編集情報ファイル１１１に保存される。
【００４４】
＜編集情報ファイルの形式例＞
印刷制御アプリケーション１０４の詳細を言及する前に、ブックファイルすなわち編集情報ファイルのデータ形式を説明する。ブックファイルは紙媒体の書物を模した３層の階層構造を有する。上位層は「ブック」と呼ばれ、１冊の本を模しており、その本全般に係る属性が定義されている。その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。各章についても、章ごとの属性が定義できる。下位層は「ページ」であり、アプリケーションプログラムで定義された各ページに相当する。各ページついてもページごとの属性が定義できる。ひとつのブックは複数の章を含んでいてよく、また、ひとつの章は複数のページを含むことができる。
【００４５】
図３は、ブックファイルの形式の一例を模式的に示す図である。この例のブックファイルにおける、ブック、章、ページは、それぞれに相当するノードにより示されている。ひとつのブックファイルはひとつのブックを含む。ブック、章は、ブックとしての構造を定義するための概念であるから、定義された属性値と下位層へのリンクとをその実体としている。ページの実体は、保存ファイル１０３に含まれるＰＤＦ形式等の原稿ページデータである。すなわち、編集情報ファイルはブックファイルの形式および属性を定義するだけで、原稿ページデータそのものは含まない。ページは、アプリケーションプログラムによって出力されたページごとのデータを実体として有する。そのため、ページは、その属性値のほか、原稿ページの実体（原稿ページデータ）と各原稿ページデータへのリンクを含む。尚、紙媒体等に出力する際の印刷ページは複数の原稿ページを含む場合がある。この構造に関してはリンクによって表示されず、ブック、章、ページ各階層における属性として表示される。
【００４６】
なお図３では、ブックファイルが１つの完結したブックである必要はないので、「ブック」を「文書」として一般化して記載している。そして、文書に関する情報を文書情報、章に関する情報を章情報、ページに関する情報をページ情報と総括的に呼ぶ。
【００４７】
図３において、まず最上位に文書情報４０１を持つ。文書情報４０１は３つのパート４０２〜４０４に大別できる。文書制御情報４０２は、文書ファイルのファイルシステムにおけるパス名などの情報を保持する。文書設定情報４０３は、ページレイアウトなどのレイアウト情報とステイプルなど印刷装置の機能設定情報を保持し、ブックの属性に相当する。章情報リスト４０４は、文書を構成している章の集合をリスト形式で保持する。リストが保持するのは章情報４０５である。
【００４８】
章情報４０５も３つのパート４０６〜４０８に大別できる。章制御情報４０６は、章の名称などの情報を保持する。章設定情報４０７は、その章特有のページレイアウトやステイプルの情報を保持し、章の属性に相当する。章ごとに設定情報をもつことで最初の章は２ＵＰのレイアウトその他の章は４ＵＰのレイアウトのように複雑なレイアウトを持った文書を作成することが可能である。ページ情報リスト４０８は各章を構成する原稿ページの集合リスト形式で保持している。ページ情報リスト４０８が指示するのは、ページ情報データ４０９である。
【００４９】
ページ情報データ４０９も３つのパート４１０〜４１２に大別される。ページ制御情報４１０は、ツリー上に表示するページ番号などの情報を保持する。ページ設定情報４１１は、ページ回転角やページの配置位置情報などの情報を保持し、原稿ページの属性に相当する。ページリンク情報４１２は、ページに対応する原稿データである。この例では、ページ情報４０９が直接原稿データを持つのではなく、リンク情報４１２だけをもち、実際の原稿データは、ページデータリスト４１３で保持する構成としている。
【００５０】
図４は、ブック属性（文書設定情報４０３）の例を示すリストである。通常、下位層と重複して定義可能な項目に関しては、下位層の属性値が優先採用される。そのため、ブック属性にのみ含まれる項目に関しては、ブック属性に定義された値はブック全体を通して有効な値となる。しかし、下位層と重複する項目については、下位層において定義されていない場合における既定値としての意味を有する。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。なお、図示された各項目は具体的に１項目に対応するのではなく、関連する複数の項目を含むものもある。
【００５１】
ブック属性に固有の項目は、印刷方法、製本詳細、表紙／裏表紙、インデックス紙、合紙、章区切りの６項目である。これらは、ブックを通して定義される項目である。印刷方法属性としては、片面印刷、両面印刷、製本印刷の３つの値を指定できる。製本印刷とは、別途指定する枚数の用紙を束にして２つ折りにし、その束をつづり合わせることで製本が可能となる形式で印刷する方法である。製本詳細属性としては、製本印刷が指定されている場合に、見開き方向や、束になる枚数等が指定できる。
【００５２】
表紙／裏表紙属性は、ブックとしてまとめられる保存ファイルを印刷する際に、表紙及び裏表紙となる用紙を付加することの指定、及び付加した用紙への印刷内容の指定を含む。インデックス紙属性は、章の区切りとして、印刷装置に別途用意される耳付きのインデックス紙の挿入の指定及びインデックス（耳）部分への印刷内容の指定を含む。この属性は、印刷用紙とは別に用意された用紙を所望の位置に挿入するインサート機能を持ったインサータが使用する印刷装置に備えられている場合か、あるいは、複数の給紙カセットを使用可能である場合に有効となる。これは合紙属性についても同様である。
【００５３】
合紙属性は、章の区切りとして、インサータからあるいは給紙カセットから供給される用紙の挿入の指定、及び、合紙を挿入する場合には、給紙元の指定などを含む。
【００５４】
章区切り属性は、章の区切り目において、新たな用紙を使用するか、新たな印刷ページを使用するか、特に何もしないか等の指定を含む。片面印刷時には新たな用紙の使用と新たな印刷ページの使用とは同じ意味を持つ。両面印刷時には、「新たな用紙の使用」を指定すれば連続する章が１枚の用紙に印刷されることは無いが、「新たな印刷ページの使用」を指定すれば、連続する章が１枚の用紙の表裏に印刷されることがあり得る。
【００５５】
図５は、章属性（章設定情報４０７）の、図６はページ属性（ページ設定情報４１１）の例を示すリストである。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。
【００５６】
章属性に関しては、章に固有の項目はなく、すべてブック属性と重複する。したがって、通常は、章属性における定義とブック属性における定義とが異なれば、章属性で定義された値が優先する。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
【００５７】
ブック属性と章属性とにのみ共通する項目は、用紙サイズ、用紙方向、Ｎ−ｕｐ印刷指定、拡大縮小、排紙方法の５項目である。このうち、Ｎ−ｕｐ印刷指定属性は、１印刷ページに含まれる原稿ページ数を指定するための項目である。指定可能な配置としては、１×１や１×２、２×２、３×３、４×４などがある。排紙方法属性は、排出した用紙にステイプル処理を施すか否かを指定するための項目であり、この属性の有効性は使用する印刷装置がステイプル機能を有するか否かに依存する。
【００５８】
また、合紙属性は、各章について挿入するか否か、および、シートの供給元であるインサータあるいは給紙カセットの指定を含む。なお、本実施形態では章ごとに編集情報ファイルにおいても合紙設定を含むとしているが、保存ファイルにのみ含むようにしてもよい。この場合には、合紙設定はブック属性にのみ含まれるが、設定自体は章ごとに行うことができる。
【００５９】
ページ属性に固有の項目には、ページ回転属性、ズーム、配置指定、アノテーション、ページ分割などがある。ページ回転属性は、原稿ページを印刷ページに配置する際の回転角度を指定するための項目である。ズーム属性は、原稿ページの変倍率を指定するための項目である。変倍率は、仮想論理ページ領域のサイズを１００％として指定される。仮想論理ページ領域とは、原稿ページを、Ｎ−ｕｐ等の指定に応じて配置した場合に、１原稿ページが占める領域である。例えば１×１であれば、仮想論理ページ領域は１印刷ページに相当する領域となり、１×２であれば、１印刷ページの各辺を約７０パーセントに縮小した領域となる。
【００６０】
ブック、章、ページについて共通な属性として、ウォーターマーク属性及びヘッダ・フッタ属性がある。ウォーターマークとは、アプリケーションで作成されたデータに重ねて印刷される、別途指定される画像や文字列などである。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。ただし、ヘッダ・フッタには、ページ番号や日時など、変数により指定可能な項目が用意されている。なお、ウォーターマーク属性及びヘッダ・フッタ属性において指定可能な内容は、章とページとは共通であるが、ブックはそれらと異なっている。ブックにおいてはウォーターマークやヘッダ・フッタの内容を設定できるし、また、ブック全体を通してどのようにウォーターマークやヘッダ・フッタを印刷するかを指定することができる。一方、章やページでは、その章やページにおいて、ブックで設定されたウォーターマークやヘッダ・フッタを印刷するか否かを指定できる。
【００６１】
＜本実施形態の文書処理システムの操作手順例＞
編集情報ファイルは上述したような構造および内容を有している。次に、印刷制御アプリケーション１０４および印刷データ保存用ドライバ１０２によって編集情報ファイル１１１および保存ファイル１０３を作成する手順を説明する。編集情報ファイル１１１の作成は、印刷制御アプリケーション１０４による編集情報ファイル１１１の編集操作の一環として実現される。図７は、印刷制御アプリケーション１０４により、保存ファイル１０３および編集情報ファイル１１１を開いてメモリ上に展開する際の手順である。
【００６２】
まず、開こうとする編集情報ファイル１１１が、新規作成すべきものであるか、それとも既存のものであるか判定する（ステップＳ７０１）。新規作成の場合には、章を含まない編集情報ファイルを新規に作成する（ステップＳ７０２）。新規に作成される編集情報ファイルは、図３の例で示せば、章情報リスト４０４にリンクする章ノードが存在しないブックのノードとなる。ブック属性は、新規作成用としてあらかじめ用意された属性のセットが適用される。そして、新規編集情報ファイルを編集するためのユーザインターフェース（ＵＩ）画面を表示する（ステップＳ７０４）。図８は、新規にブックファイルが作成された際のＵＩ画面の一例である。この場合には、ブックファイルは実質的な内容を持たないために、ＵＩ画面８００には何も表示されない。
【００６３】
一方、既存の編集情報ファイルがあれば、指定された保存ファイルおよび編集情報ファイルを開き（ステップＳ７０４）、その保存ファイル及び編集情報ファイルの構造、属性、内容に従ってデータを展開してユーザインターフェース（ＵＩ）画面を表示する。図９は、このＵＩ画面の一例である。ＵＩ画面９００は、ブックの構造を示すツリー部９０１と、印刷された状態を表示するプレビュー部９０２とを含む。ツリー部９０１には、ブックに含まれる章、各章に含まれるページが、図３のような木構造が分かるように表示される。ツリー部９０１に表示されるページは原稿ページである。プレビュー部９０２には、印刷ページの内容が縮小されて表示される。その表示順序は、ブックの構造を反映したものとなっている。なおＲＡＭ１０２に展開されるデータもまた図３と同様の構成をとる。そして、各階層のノードに含まれる属性も、図４〜図６に示す形式でＲＡＭ１０２に展開される。これら属性項目は、たとえばその構造はポインタ等を用いて実現し、また属性における項目は、項目ごとの識別子等によって識別することができる。
【００６４】
さて、開かれた編集情報ファイルには、印刷データ保存用ドライバ１０２によって原稿ページデータを、新たな章として追加することができる。この機能をインポート機能と呼ぶ。図７の手順によって新規に作成された編集情報ファイルにアプリケーションデータをインポートすることで、原稿ページデータが編集情報ファイルの章の下に属するものとして対応付けられ、編集情報ファイルに実体が与えられる。この機能は、図８の画面にアプリケーションデータをドラッグアンドドロップ操作することで起動される。図１０にインポート処理の手順を示す。
【００６５】
図１０においてまず、指定されたアプリケーションデータを生成したアプリケーションプログラムを起動し、デバイスドライバとして印刷データ保存用ドライバ１０２を指定してアプリケーションデータを印刷出力させることで、中間形式のデータ（たとえばＰＤＦ形式）に変換する（ステップＳ８０１）。変換を終えたなら、変換されたデータが画像データであるか否かを判定する（ステップＳ８０２）。この判定は、ウインドウズ（登録商標）ＯＳの下であれば、アプリケーションデータのファイル拡張子に基づいて行うことができる。例えば、拡張子が「ｂｍｐ」であればウインドウズ（登録商標）ビットマップデータであり、「ｊｐｇ」であればｊｐｅｇ圧縮された画像データ、「ｔｉｆｆ」であればｔｉｆｆ形式の画像データであると判定できる。
【００６６】
画像データでなかった場合には、ステップＳ８０１で生成された中間データを、現在開かれている編集情報ファイル１１１のブックに、新たな章として追加する（ステップＳ８０３）。すなわち、インポートにより新たな章とそれに属する新たな原稿ページが追加される。そして、各ページノードには、原稿ページの実体に対するリンク情報を書き込む。原稿ページの実体は印刷データ保存用ドライバ１０２により生成されたものが使用される。
【００６７】
なおインポートされた場合、章属性としては、ブック属性と共通するものについてはブック属性の値がコピーされ、そうでないものについては、あらかじめ用意された規定値に設定される。また、保存ファイルの文書全体についての属性と共通するものについては、それを引き継ぐようにすることもできる。
【００６８】
インポートされたアプリケーションデータが画像データである場合には、原則として新たな章は追加されず、指定されている章に画像データが１ファイルを１原稿ページとして追加される（ステップＳ８０４）。ただし、編集情報ファイル１１１が新規作成された空のファイルであれば、新たな章が作成されて、その章に属する原稿ページとして画像データが追加される。その場合ページ属性は、上位層の属性と共通のものについてはその属性値が与えられ、アプリケーションデータにおいて定義された属性を保存ファイル１０３に引き継いでいるものについてはその値が与えられる。例えば、Ｎ−ｕｐ指定などがアプリケーションデータにおいてされていた場合には、その属性値が引き継がれる。このようにして、新規な編集情報ファイルが作成され、あるいは、新規な章が追加される。
【００６９】
また、保存ファイル１０３についても、追加された原稿ページデータは、印刷データ保存用ドライバ１０２で生成されたデータが、既存の保存ファイル１０３に対する追加であれば、新たに付加されて保存される。その際、アプリケーション１０１で指定された印刷設定が、印刷データ保存用ドライバ１０２で生成されたデータに反映されている場合には、その印刷設定を保存ファイル１０３に反映することもできる。
【００７０】
図１１は、図１０のステップＳ８０１において、印刷データ保存用ドライバ１０２により保存ファイル１０３を生成させる手順を示すフローチャートである。まず、新たな保存ファイル１０３を作成してそれを開く（ステップＳ９０１）。指定したアプリケーションデータに対応するアプリケーションを起動し、印刷データ保存用ドライバ１０２をデバイスドライバとして、ＯＳの出力モジュール（例えばウインドウズ（登録商標）のＧＤＩ）に対して出力コマンドを送信させる。出力モジュールは、受信した出力コマンドを印刷データ保存用ドライバ１０２によって所定の形式（例えばＰＤＦ形式）のデータに変換し、出力する（ステップＳ９０２）。出力先はステップＳ９０１で開いた保存ファイルである。指定されたデータすべてについて変換が終了したか判定し（ステップＳ９０３）、終了していれば保存ファイルを閉じる（ステップＳ９０４）。印刷データ保存用ドライバ１０２によって生成される保存ファイルは、図１２にしめす構造と、原稿ページデータの実体とを含むジョブチケットと呼ばれるファイルである。
【００７１】
＜編集情報ファイルの編集＞
以上のようにして、アプリケーションデータから編集情報ファイル１１１及び保存ファイル１０３を作成することができる。生成された編集情報ファイル１１１については、章及びページに対して次のような編集操作が可能である。
（１）新規追加
（２）削除
（３）コピー
（４）切り取り
（５）貼り付け
（６）移動
（７）章名称変更
（８）ページ番号名称振り直し
（９）表紙挿入
（１０）合紙挿入
（１１）インデックス紙挿入
（１２）各原稿ページに対するページレイアウト。
【００７２】
このほか、いったん行った編集操作を取り消す操作や、さらに取り消した操作をやり直す操作が可能である。これら編集機能により、例えば複数の編集情報ファイルの統合、編集情報ファイル内で章やページの再配置、編集情報ファイル内で章やページの削除、原稿ページのレイアウト変更、合紙やインデックス紙の挿入などといった編集操作が可能となる。これらの操作を行うと、図４乃至図６に示す属性に操作結果が反映されたり、あるいは編集情報ファイルの構造に反映される。たとえば、ブランクページの新規追加操作を行えば、指定された箇所にブランクページが挿入される。このブランクページは原稿ページとして扱われる。また、原稿ページに対するレイアウトを変更すれば、その変更内容は、印刷方法やＮ−ｕｐ印刷、表紙／裏表紙、インデックス紙、合紙、章区切りといった属性に反映される。
【００７３】
＜編集情報ファイルの出力＞
以上のように作成・編集される編集情報ファイルは印刷出力を最終目的としている。利用者が図９に示す印刷制御アプリケーションのＵＩ画面９００からファイルメニューを選択し、そこから印刷を選択すると、指定した出力デバイスにより印刷出力される。この際、まず印刷制御アプリケーション１０４は、現在開かれている編集情報ファイルおよび対応する保存ファイル（例えばジョブチケット）からデスプールテーブルと呼ばれるデータを作成して印刷アプリケーション１０５に渡す。
【００７４】
デスプールテーブルは、その元となるジョブチケットと同様の構造および各層における印刷設定、原稿ページへの関連づけを含む。すなわち、部数やカラータイプ、両面／片面印刷の指定などドキュメント全体に有効な印刷設定の下に、Ｎアップ印刷の指定などシート束（シートのくくり）で有効な印刷設定があり、各シート束に属するシートごとに、両面／片面指定などの印刷設定があり、各シートに属する物理ページ（面）ごとに、カラータイプや表面／裏面のいずれかに相当するかの指定などの印刷設定がある。各層の印刷設定には設定可能な項目が含まれている。デスプールテーブルの設定はデバイスの仕様に従い、物理ページでの指定となっている。印刷アプリケーション１０５は、デスプールテーブルを、グラフィックエンジン１２１に渡すパラメータに変換する。
【００７５】
印刷アプリケーション１０５は、保存ファイル１０３をＯＳの出力コマンド、例えばウインドウズ（登録商標）のＧＤＩコマンドに変換し、それをパラメータとしてグラフィックエンジンであるＧＤＩ関数をコールする。グラフィックエンジン１２１は、指定されたプリンタドライバ１２１によってデバイス（例えばプリンタ）に適したコマンドを生成させ、そのコマンドをデバイスに送信する。
【００７６】
ここでグラフィックエンジン１２１は、印刷デバイスごとに用意されたプリンタドライバ１０６を外部メモリ２１１からＲＡＭ２０２にロードし、出力をプリンタドライバ１０６に設定する。そして、グラフィックエンジン１２１は、ＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ１０６の提供するＤＤＩ関数をコールする。プリンタドライバ１０６は、出力モジュールから呼び出されたＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２０２にロードされたシステムスプーラ１２２を経てインタフェース２１経由でプリンタ１０７へ印刷データとして出力される仕組みとなっている。
【００７７】
（プレビュー表示の内容例）
すでに説明したとおり、ブックファイルが印刷制御アプリケーションによって開かれると、図９に示すユーザインタフェース画面９００が表示される。ツリー部９０１には、開いている文書（以下、「注目ブック」と呼ぶ。）の構造を示すツリーが表示される。プレビュー部には、利用者の指定に応じて、３通りの表示方法が用意されている。第１は原稿ページをそのまま表示する原稿ビューと呼ばれるモードである。原稿ビューモードでは、注目ブックに属する原稿ページの内容が縮小されて表示される。プレビュー部の表示にレイアウトは反映されない。第２は印刷ビューモードである。印刷ビューモードでは、プレビュー部９０２には、原稿ページのレイアウトが反映された形で原稿ページが表示される。第３は簡易印刷ビューモードである。簡易印刷ビューモードでは、各原稿ページの内容はプレビュー部の表示には反映されず、レイアウトのみが反映される。
【００７８】
＜他の文書処理システムの構成例＞
上記実施形態の文書処理システムはスタンドアロン型のシステムであるが、これを拡張したサーバクライアントシステムでもほぼ同様の構成・手順でブックファイルが作成・編集される。ただし、ブックファイルや印刷処理はサーバによって管理される。
【００７９】
図１３はサーバクライアント型文書処理システムの構成を示すブロック図である。
【００８０】
クライアント文書処理システムは、スタンドアロン型システムに、クライアントモジュールであるＤＯＭＳ（Ｄｏｃｕｍｅｎｔ  Ｏｕｔｐｕｔ  Ｍａｎａｇｅｍｅｎｔ  Ｓｅｒｖｉｃｅ：文書出力管理サービス）ドライバ１０９及びＤＯＭＳプリントサービスモジュール１１０、ＤＳ（文書サービス）クライアントモジュール１０８を加えた構成を有する。このクライアント文書処理システム１２００に、文書管理サーバ１２０１及び印刷集中管理サーバ１２０２及びプリントサーバ１２０３が接続されている。これらサーバは、通常ネットワークによってクライアント文書処理システムと接続されるが、サーバが同時にクライアントとしても機能する場合には、ネットワーク間の通信をシミュレートするプロセス間通信によって接続される。尚、図１３では文書管理サーバ１２０１と印刷集中管理サーバ１２０２の両サーバがクライアントに接続されているが、いずれか一方のみがネットワーク上に存在する場合もあり得る。接続されているサーバが文書管理サーバであれば、そのクライアントモジュールを含む文書管理サーバクライアントシステム１２０１ＳＣが、印刷集中管理サーバ１２０２であれば、そのクライアントモジュールを含む印刷管理サーバクライアントシステム１２０２ＳＣが、スタンドアロン型文書管理システムに追加される。
【００８１】
文書管理サーバ１２０１は、印刷制御アプリケーション１０４により作成・編集されたブックファイルを格納するサーバである。文書管理サーバ１２０１によってブックファイルを管理する場合、ブックファイルは、クライアントＰＣのローカルＨＤに代わって、あるいはそれに加えて、文書管理サーバ１２０１のデータベース１２１１に保存される。印刷制御アプリケーション１０４と文書管理サーバ１２０１との間のブックファイルの保存及び読み出しは、ＤＳクライアント１０８及びＤＳコア１２１２を介して行われる。
【００８２】
印刷集中管理サーバ１２０２は、クライアント文書管理システム１２００に格納された、あるいは文書管理サーバ１２０１に格納されたブックファイルの印刷を管理するサーバである。クライアントにおける印刷要求は、ＤＯＭＳドライバ１０９及びＤＯＭＳプリントサービスモジュール１１０を介して印刷集中管理サーバ１２０２のＤＯＭＳＷＧサーバモジュール１２２１に送信される。集中印刷管理サーバ１２０２は、クライアントのプリンタで印刷する場合にはクライアントのＤＯＭＳプリントサービスモジュール１１０を介して印刷アプリケーション１０５に電子原稿データを渡し、プリントサーバ１２０３により印刷する場合には、プリントサーバ１２０３のＤＯＭＳプリントサービスモジュール１２０３に送信する。集中印刷管理サーバは、例えば保存されているブックファイルに対して印刷要求を発行した利用者の資格などについてセキュリティチェックを行ったり、印刷処理のログを保存したりする。このように、文書処理システムは、スタンドアロンとしても、クライアントサーバシステムとしても実現できる。
【００８３】
＜プリンタの構成＞
図２５は、プリンタ１０７の一例である、フィニッシャが装着された複写機の断面図である。複写機１０７は、原稿を操作するリーダ部を備えており、スキャナや複写機として利用でき、加えて、接続されたコンピュータから印刷ジョブを入力することにより、プリンタとして利用することもできる。
【００８４】
図２５において、原稿給送装置１３０１は、原稿を先頭から順に１枚ずつプラテンガラス１３０２上へ給送し、原稿の読み取り動作終了後、プラテンガラス１３０２上の原稿を排出する。原稿がプラテンガラス１３０２上に搬送されると、ランプ１３０３を点灯し、そしてスキャナユニット１３０４の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー１３０５、１３０６、１３０７、及びレンズ１３０８によってＣＣＤイメージセンサ（以下ＣＣＤという）１３０９へ導かれる。このように、走査された原稿の画像はＣＣＤ１３０９によって読み取られる。プリンタとして利用される際には、このリーダ部は不要である。
【００８５】
レーザドライバ１３２１はレーザ発光部１３１０を駆動し、出力画像データに応じたレーザ光をレーザ発光部１３１０に発光させる。出力画像データは、プリンタとして利用される場合にはホストコンピュータから入力される。このレーザ光は、予め帯電された感光ドラム１３１１上を走査するように照射され、感光ドラム１３１１にはレーザ光に応じた潜像が形成される。この感光ドラム１３１１の潜像の部分に現像器１３１２によって現像剤が付着される。現像器１３１２には、カラー機の場合は、イエロー，マゼンタ，シアン，ブラックの４色分の現像器が装着されている。そして、レーザ光の照射開始と同期したタイミングで、カセット１３１３及びカセット１３１４、手差し給紙段１３２７のいずれかから記録紙を給紙して転写部１３１５へ搬送し、感光ドラム１３１１に付着された現像剤を記録紙に転写する。現像剤が転写された記録紙は定着部１３１６に搬送され、定着部１３１６の熱と圧力により現像剤が記像紙に定着され、画像が記録紙上に形成される。
【００８６】
定着部１３１６を通過し、画像形成が完了した記録紙は排出ローラ１３１７によって排出される。また、両面記録が設定され、その第１面のみの画像形成が済んだ場合には、排出ローラ１３１７のところまで記録紙を搬送した後、排出ローラ１３１７の回転方向を逆転させ、フラッパ１３１８によって再給紙搬送路１３１９へ導く。再給紙搬送路１３１９へ導かれた記録紙は上述したタイミングで転写部１３１５へ給紙され、第２面の画像が形成される。
【００８７】
Ｚ折りユニット１３２６が本体に装備されている場合には、複写機本体から排出された記録紙はＺ折りユニット１３２６へ搬送され、操作部からの操作あるいは印刷設定に応じてＺ折りが行われる。
【００８８】
フィニッシャ１３２０が装備されている場合には、複写機本体から排出された記録紙が束ねられて仕分けされたり、印刷設定に応じてパンチャ１３２３で記録紙にパンチ孔があけられたり、ステイプラ１３２４でステイプルが行われる。また、サドルスティッチャ１３２５によって、束ねられた記録紙はその中央部がステッチ（サドルステッチ）され、中央部で折られて製本される。インサータ１３２２は、予め何らかの画像が印刷された用紙などを、文書の表紙や合紙として給紙し、排出される文書の指定されたページとして挿入することが可能である。インサータ１３２２によって挿入される用紙はプリンタ部の記録紙の搬送経路を通らないために、傷まずに搬送される。
【００８９】
＜バリアブル印刷手順＞
バリアブル印刷を行う旨の指示が後述するように設定され、印刷の指示が与えられるとバリアブル印刷が行われる。その際には、各レコードについて、バリアブルフィールドにレコードが挿入された印刷データがブック単位で生成され、このブック単位の印刷データが指定された全レコードについて生成される。本発明にかかる制御手順では、この印刷データの生成にともなって、１つのレコードについて生成されたブック単位の印刷データ毎にそれぞれひとつの印刷ジョブを生成するか、すべてのレコードについて生成されたブック毎の印刷データをまとめてひとつの印刷ジョブとするかを、印刷設定に応じて適切に決定する。
【００９０】
図１４〜図１５は、印刷制御アプリケーション１０４による処理手順であり、図１６はデスプーラ１０５による、本発明のインサータ印刷に係る大まかな処理手順を示すフローチャートである。これらを参照して印刷制御アプリケーション１０４及びデスプーラ１０５の処理フローを説明する。
【００９１】
図１４は印刷制御アプリケーション１０４の印刷設定変更後の保存時の大まかなフローを表している。また、図９は印刷制御アプリケーション１０４の印刷プレビュー画面であり、そこでファイルメニューを選択してさらに印刷を選択すると、指定した出力デバイスにより印刷出力される。また、メニュー選択により、ブックや章、原稿ページの属性の設定を変更することもできる。図１７はブック属性における印刷設定の変更を促すユーザインターフェース画面を例示した図である。
【００９２】
まず、電子原稿ファイル（前述の通り保存ファイル１０３および編集情報ファイル１１１の総称である。）が印刷制御アプリケーションにより読み込まれる。これは印刷設定の前段階であり、ここで読み込まれた電子原稿ファイルが印刷設定の対象となる。
【００９３】
図１４において、電子原稿ファイルを読み込んだ際、まず、保存された印刷設定の読み込み処理１４０１が行われる。これは電子原稿ファイルから印刷用設定データが読み込まれ、デスプールテーブルと呼ばれるメモリ上の展開領域に読み込まれた印刷設定が展開される処理である。印刷用設定データは、図３に示したブック属性、章属性、原稿ページ属性それぞれに含まれている。
【００９４】
そして、設定変更がされたか否かの判定処理１４０２が行われる。これは、例えば図１７で示される印刷制御アプリケーション１０４のインターフェース（ブック属性のユーザインターフェース）や図１９で示される用紙の挿入設定のインターフェース等がユーザの操作に応じて表示され、その上で設定の変更がされたか否かの判定処理である。ユーザが図９などの画面からメニュー選択することで設定変更の項目を選択すると、図１７や図１９のユーザインターフェース画面を表示する。ユーザインターフェースに表示された設定項目には、メモリ上に展開されている印刷設定において対応する項目から値が獲得されて表示されている。それら画面においてユーザは設定値を変更する。図１７においては、たとえばブック属性の「章の区切り」設定において「合紙挿入」が指定可能である。設定変更の有無は、ユーザによりその設定を変更する操作がされ、かつ、現実に内容が変更されている場合に、変更があったものと判断される。各設定項目の操作自体は、それぞれのユーザインターフェース上のコントロール（文字列ボックス）やボタン等の操作に応じて発生するイベント（ＯＳ等により管理される。）により印刷制御アプリケーションから知ることができる。
【００９５】
ステップ１４０２で設定変更があったと判定されれば、次の、ジョブの途中でインサータからの給紙が必要な印刷設定か否かの判定処理１４０３が行われる。これは例えば、図１９の「合紙の給紙部」の設定ボックス１９０１で「インサータ」が設定されている場合等、設定変更の中で、ジョブの途中でのインサータからの給紙設定が行われたか否かの判定を行う処理である。この判定は、設定が行われた項目（処理手順の中で特定できる）と、その内容とで判定される。たとえば、章やブックの「用紙の挿入」（図１９）において合紙を挿入する旨の値が設定され、合紙の給紙元としてインサータを示す値が設定された場合には、ステップ１４０３でインサータからの給紙が必要な印刷設定であると判定される。
【００９６】
そして、ステップ１４０３でジョブの途中におけるインサータからの給紙であると判断されると、ジョブの途中でのインサータからの給紙を考慮したデスプールテーブル書き込み処理１４０４が行われる。
【００９７】
電子原稿ファイルから展開されるデスプールテーブルは、印刷制御アプリケーション１０４により電子原稿ファイルを開いた場合にメモリに展開されるデータである。デスプールテーブルはまた、電子原稿ファイルをデスプールして印刷ジョブを生成する際にも参照されるデータテーブルであり、図１８で示すような構造を有する。すなわち、印刷設定には、ドキュメント全体（ブック）について有効な印刷設定項目（属性）が含まれる。ドキュメント全体の下位層として、利用者等により指定されたシートのくくり（章）について有効な印刷設定項目（属性）が含まれ、その下位層として、各シートについて有効な印刷設定項目（属性）が含まれる。シートとは、印刷される１枚の媒体に相当する単位であり、シートのくくりとは１枚乃至複数枚のシートを束にしてなる単位である。ドキュメント全体とは、ブックファイル全体を意味する。ここで、前述したように給紙段の指定はシートのくくりについて有効な印刷設定項目（属性）に含まれる。
【００９８】
さて、ステップ１４０４におけるジョブの途中でのインサータからの給紙を考慮したデスプールテーブル書き込み処理とは、シートのくくりについて有効な印刷設定項目（属性）のなかの給紙段指定の項目にインサータをマークする処理である。ジョブの途中でインサータからの給紙が必要な印刷設定か否かの判定処理１４０３でそれでないと判断されれば、ジョブの途中でのインサータからの給紙を考慮しないデスプールテーブル書き込み処理１４０５が行われる。ステップ１４０５においてはインサータ項目はマークされない。
【００９９】
図２３はインサータからの給紙を考慮したデスプールテーブル書き込み処理を行ったデスプールテーブルを図示したものである。図においては、「給紙段設定−インサータ」と記載されているが、実際のデスプールテーブル上では、シートのくくりについて有効な印刷設定項目（属性）のなかの給紙段指定の項目にインサータがマークされる。
【０１００】
そして、設定変更がされると、変更された設定の保存が指定されたか否かの判定処理１４０６が行われる。保存は、例えば図９の画面において「ファイル」メニューから「保存」などの項目が選択されると、保存指定がされたと判定され、デスプールテープルの保存処理１４０７が行われる。これはメモリ上のデスプールテープルに展開された印刷設定内容を電子原稿ファイルに書き戻す処理である。これにより、印刷制御アプリケーション１０４で設定変更された内容が電子原稿ファイルに反映されることとなる。電子原稿ファイルは、図１に示すように保存ファイル１０３と編集情報ファイル１１１とを含む。保存は、保存ファイルと編集情報ファイルとに共通に含まれる設定項目については双方について反映され、一方にのみ含まれる項目についてはいずれか当該設定項目を含む方のみが反映される。
【０１０１】
なお、図１４の手順では設定変更がされた場合に限ってジョブの途中でのインサータからの給紙が必要であるか否かが判定されているが、電子原稿ファイルを開いた際にステップ１４０１で読み込んだ印刷設定を、設定変更されない場合にもすべてチェックしてそれが必要であるか否かを判定することもできる。図１４の手順では、ジョブの途中でのインサータからの給紙の必要性を示すジョブ分割項目のマークも印刷設定の一部として保存しておく必要がある。これに対して電子原稿ファイルを読み込む都度その判定を行えば、ジョブ分割項目のマークは保存する必要はない。いずれにしても、デスプーラ１０５により電子原稿データがデスプールされたなら、印刷ジョブが生成される前に、図３に示すブック属性や章属性、ページ属性といった属性に含まれる印刷設定に基づいてジョブの途中でのインサータからの給紙の必要性が判定され、デスプールテーブルに出力される。
【０１０２】
＜印刷処理手順＞
次に、図１５を参照して、印刷時の処理の概略を説明する。まず、保存された印刷設定の読み込み処理１５０１が行われる。これは先に示したように印刷制御アプリケーション１０４により電子原稿ファイル（保存ファイル１０３及び編集情報ファイル１１１）を読み込み、その印刷設定をデスプールテーブルに展開する処理である。そして、印刷指示がされたか否かの判定処理１５０２が行われる。ステップ１５０２は印刷制御アプリケーション１０４におけるユーザインターフェースからユーザによる印刷指示があったか否かの判定処理である。印刷指示がされた場合には印刷のユーザインターフェース画面（図２０）が表示される。図２０は、図１０のユーザインターフェース画面において「ファイル」メニューから「印刷」が選択された場合に表示される。
【０１０３】
ここで、印刷指示があったと判定されれば、デスプーラ１０５に対する印刷処理１５０３が行われ、印刷が行われる。具体的には、ステップ１５０３では、メモリ上に展開されているデスプールテーブルがデスプーラ１０５からグラフィックエンジン１２１に渡される。
【０１０４】
デスプールテーブルを引き渡されたデスプーラ１０５の処理の概要を図１６を用いて説明する。まず、図１５のステップ１５０３において印刷指示がされたかの判定処理１６０１が行われる。ここでの判定はたとえばデスプーラから引き渡されるパラメータに基づいて行われる。
【０１０５】
ここで、先の一連の流れで、印刷制御アプリケーション１０４より印刷指示があったとすると、次の、給紙段情報の読み込み処理１６０２が行われる。これは先に印刷制御アプリケーション１０４に図１７のユーザインターフェースからの指示によりセットされたデスプールテーブル中の給紙段情報の読み込み処理である。給紙段情報は、デスプールテーブルの構造から特定できる。すなわち、デスプールテーブルは図２３のような構造を有し、その設定項目に例えばそれを識別するための識別符号を持ち、給紙段情報に相当する識別子を、シートくくりで有効な印刷設定において検索することで、給紙段情報を特定できる。
【０１０６】
そして、この読み込みより、給紙段情報においてインサータ給紙の設定があるかの判定処理１６０３が行われる。ここで、給紙段指定の項目においてインサータにマークされていれば、インサータ給紙があると判定され、その場合にはインサータ用紙挿入位置パラメータ生成処理１６０４が行われる。これは、後の印刷処理１６０５において、ドライバに対しジョブの最初にインサータの挿入コマンドを発行する際の位置を指定するパラメータを作成する処理である。
【０１０７】
文書処理システムが実装されるコンピュータ１００においては、たとえば周辺装置の機能等の情報は、オペレーティングシステムにより各デバイスのデータベースとして保存されている。たとえばマイクロソフト社のウインドウズ（登録商標）であれば、ＤＥＶＭＯＤＥと呼ばれるデータとして保存され、デバイスドライバはそのデータを参照して、利用者に設定させることのできる機能や、利用できる機能などを判定し、またデバイスに発行するコマンドを生成する。図２６のレーザビームプリンタについてのＤＥＶＭＯＤＥの一例である。前述したインサータ挿入コマンドにより、プリンタドライバはこのＤＥＶＭＯＤＥに含まれるインサータ給紙項目を更新する。
【０１０８】
インサータ挿入コマンドは図２１のように示される。すなわち、所定のコマンドコード「ＣＤＭ＿ＩＴＥＭ＿ＩＮＳＥＲＴＥＲＰＯＳ」に、後続するパラメータの設定を示すファンクションコード「ＣＤＭ＿ＦＵＮＣ＿ＳＥＴＩＴＥＭ」と、挿入箇所をたとえばページ番号で指定するパラメータとを組みあわせたものである。たとえば、５ページの片面印刷に対して、インサータ挿入位置（文書データのページ間に設定可能）として３，６を図２１のＤＷＯＲＤとして指定した場合には、出力される文書は、（１ページ目）（２ページ目）（インサータ用紙）（３ページ目）（４ページ目）（インサータ用紙）（５ページ目）となる（ただし片面印刷を想定している。）。そのために、デスプーラ１０５は、デスプールテーブルに基づいて挿入位置が文書全体として第何ページ目に相当するか算出し、それをコマンドのパラメータとして挿入する。インサータ給紙の順番はデスプールテーブルから明らかである。たとえば、図２３の例では、各シートのくくりにはすべて３つずつシートの印刷設定のエントリがあることから、挿入されるシートを含めて文書全体は１２枚のシートを含み、そのうちインサータ給紙は１，８ページ目と判断できる。
【０１０９】
ただし、バリアブル印刷では、バリアブル領域に挿入されるレコード数に応じて枚数が決定されるために、本実施形態では、シートの設定にバリアブル印刷が含まれているかを判定して、含まれている場合には、別途指定されている挿入レコードの数（これはバリアブルフィールドの内容を格納したファイルのヘッダ情報等から獲得できる。）を数え、その数をシートくくりに含まれるシート数に加算して、インサータ挿入位置を決定する。ただし、バリアブルフィールドの値ごとに１ジョブが生成される場合には、各ジョブの先頭において合紙を挿入すれば良く、従来のプリンタの機能により対応可能である。
【０１１０】
ドライバはこのＤＥＶＭＯＤＥ（印刷設定情報）を参照して、前述したように決定された挿入位置にインサータ給紙すべくデバイス（プリンタ）に適したのインサータ給紙コマンド（例えばＣＰＣＡコマンド）に変換し、デバイスはこれを受け取ることで、ジョブの途中のインサータ給紙を実現する。このコマンドは、ドライバから発行される印刷ジョブに先立って、インサータ給紙の位置を指定することで、実現される。
【０１１１】
一方ステップ１６０３でインサータ給紙がないと判定されれば、インサータ給紙コマンドを発行することなく、通常の印刷処理が行われる。
【０１１２】
ステップ１６０５およびステップ１６０６においては、デスプーラ１０５は、デスプールテーブルに基づいて作成した命令を、本実施形態ではオペレーティングシステムのグラフィックエンジン１２１を介してプリンタドライバに渡す。この命令の形式はグラフィックエンジンにより処理可能な形式であり、たとえばウインドウズのＧＤＩコマンドなどに相当する。
【０１１３】
さて、インサータ挿入コマンドに続いて、あるいはインサータ給紙コマンドなしにデスプーラ１０５から出力命令を受けとったプリンタドライバ１０６は、その命令に基づいて印刷ジョブを生成する。たとえば、ジョブの先頭を示すコードと、ジョブの末尾を示すコードとの間に、プリンタが処理可能なページ記述言語で記述されたページ単位の描画命令が生成されてプリンタ１０７に送信される。
【０１１４】
これらインサータ給紙命令および印刷ジョブをプリンタドライバ１０６から受信したプリンタ１０７は、印刷ジョブにしたがってページ単位の画像を生成して印刷を行う。その際に、印刷ジョブに先立ってインサータ給紙コマンドを受信していれば、そのコマンドで指定された位置にインサータから用紙を挿入するよう動作する。
【０１１５】
以上のように、デスプーラ１０５において、印刷制御アプリケーション１０４によりセットされたデスプールテーブルを参照し、インサータ挿入コマンドを生成し、ジョブの最初でドライバ経由でデバイスに送ることにより、ジョブの途中のインサータ給紙を可能とし、ユーザの所望する印刷を実現できる。
【０１１６】
［第２の実施形態］
他の実施形態として、アプリケーションの設定内容の他に、デバイスの能力によってアプリ側で印刷ジョブを分けることにより、ジョブの途中（章単位）でのインサータ給紙を行う例を説明する。これを図２２を用いて説明する。システムの構成は第１実施形態と同様であり、相違する部分に限ってここでは説明する。
【０１１７】
図２２は、印刷制御アプリケーション１０４によるインサータ能力の判断を行い、それに応じてジョブ分割フラグを設定・保存する際の大まかなフローチャートを表している。
【０１１８】
印刷制御アプリケーション１０４により電子原稿ファイルを読み込んだ際、まず、印刷体裁の取得処理２２０１が行われる。これは電子原稿ファイル１０３から印刷用設定データが読み込まれ、デスプールテーブルと呼ばれるメモリ上の展開領域に印刷体裁設定が展開される処理である。そして、ジョブの途中でのインサータ給紙があるかの判定処理２２０２が行われる。ここでジョブの途中でのインサータ給紙設定がされていると判定されれば、次に、デバイスにジョブの途中でのインサータ給紙可能か否かの判定処理２２０３が行われる。これは使用するプリンタが１ジョブでそのインサータ給紙をすることが可能か否かの判定を行う処理である。デバイスにその能力があれば、インサータ給紙を含む印刷を１ジョブで行うことが可能だからである。この判定は、たとえばコンピュータでは使用するプリンタがわかっていることから、そのプリンタでそのような機能を使用可能か否かを印刷制御アプリケーション１０４により判定できる。そのための情報として、デバイスすなわち使用されるプリンタの能力を、図１に示したプリンタドライバ１０６により把握できる。
【０１１９】
すなわち、プリンタドライバ１０６はプリンタ１０７に対応する制御手順を実現するためのソフトウエアであるから、プリンタ１０７として特定のプリンタが用いられ、それに対応するプリンタドライバ１０６が印刷制御システム１００にインストールされると、デバイスの基本的な能力を示すデータはプリンタドライバと共に印刷制御システム１００に導入することができる。また、フィーダやサドルステッチャ等、プリンタ１０７に選択的に付加できるデバイスに関する情報は、ドライバ１０６によりプリンタ１０７と双方向的に通信することにより獲得することができる。あるいは、プリンタドライバ１０６により提供されるユーザインターフェース画面上から利用者が設定することで、プリンタの付加的な能力を利用者により設定させることもできる。
【０１２０】
判定の結果、印刷制御アプリケーション１０４によりデバイス（プリンタ）にその能力があると判定されると、印刷制御アプリケーション１０４はジョブの途中でのインサータ給紙のデスプールテーブルへの書き込み処理２２０５が行われる。これは第１の実施形態と同様、シートのくくりに有効な印刷設定項目の給紙段指定にインサータをマークする処理である。
【０１２１】
ここで、デバイスにそのような設定が可能ではないと判定されれば、ジョブ分割フラグのデスプールテーブルへの書き込み処理２２０４が行われる。具体的には図２４で示すように、シートのくくりを示すグループにジョブを分割するためのフラグがセットされる。ジョブ分割のフラグは電子原稿ファイルとしては保存されなくとも良く、それがメモリに読み込まれる都度デスプールテーブル中において設定される。この場合インサータ給紙のためにジョブを分割するのが目的であるから、インサータ給紙の単位でジョブが分割される。合紙をインサータから挿入する場合には、章（シートのくくり）ごとにインサータ給紙されるから、シーツのくくりについて有効な印刷設定において、分割フラグがセットされる。
【０１２２】
そして、ジョブの途中でのインサータ給紙のデスプールテーブルへの書き込み処理２２０５が行われ、さらに、次の保存指定がされたかの判定処理２２０６が行われ、保存指定がされたと判定されれば、デスプールテープルの保存処理２２０７が行われる。これはメモリ上のデスプールテープルに展開された印刷設定内容を電子原稿ファイル１０３に書き込む処理である。これにより、製本時の設定が電子原稿ファイルに反映されることとなる。印刷出力の手順は図１６に示したとおりの手順である。この手順は第１実施形態と同様である。
【０１２３】
これにより、デバイスの能力に応じて、ジョブの途中のインサータ給紙を１ジョブで行うか、複数印刷ジョブに分けることで実現するかが振り分けられることとなる。
【０１２４】
さて、ジョブ毎のインサータ給紙設定を含むジョブを受信したプリンタ１０７は、まずインサータからシートを供給し、その後印刷ジョブに従って印刷を実行する。印刷ジョブはシートくくり毎に分割されているために、各くくり毎にインサータ給紙が実行される。この方法はバリアブル印刷でも利用可能である。
【０１２５】
以上のように、本実施形態によれば、プリンタが印刷ジョブ途中でのインサータ給紙機能を有していない場合であっても、印刷ジョブを分割することで、合紙をインサータから行わせることが可能である。また、プリンタがジョブ途中でのインサータ給紙を行えるならば、その機能を利用して合紙をインサータから挿入できる。後者の方法を利用すれば、ネットワークにおいてプリンタを共有しているような場合でも、ジョブの途中における、プリンタを共有する他人のジョブの割り込みを防止できる。
【０１２６】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（複写機、プリンタ、ファクシミリ装置など）に適用してもよい。また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコード（本実施形態では図１４〜１６、図２２など）を記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【０１２７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２８】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１２９】
【発明の効果】
以上説明したように、本発明によれば、ジョブの途中でのインサータ給紙を可能にすることにより、任意の場所にプレプリント用紙を挿入することができるようになり、ユーザの所望する出力結果を得ることができる。
【０１３０】
さらに、デバイスのインサータ能力を判定し、その能力のないデバイスに対してもジョブを分割して出力することで、同能力のないデバイスに対してもユーザの所望する出力結果を提供することができる。
【０１３１】
さらに、デバイスの能力により、デバイスでのジョブの途中のインサータ給紙とジョブを分割してのインサータ給紙を振り分けることで、最適な方法を自動的に選択できる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るスタンドアロン型の文書処理システムの構成を説明するためのブロック図である。
【図２】本発明の実施の形態に係る文書処理システムにおけるホストコンピュータとプリンタの構成を説明するためのブロック図である。
【図３】本実施の形態に係るブックファイルの構造の一例を示す図である。
【図４】本実施の形態に係るブック属性の一例を示す図である。
【図５】本実施の形態に係る章属性の一例を示す図である。
【図６】本実施の形態に係るページ属性の一例を示す図である。
【図７】本実施の形態に係るブックファイルを開く手順を説明するフローチャートである。
【図８】新規のブックファイルを開いた際のユーザインターフェース画面の一例を示す図である。
【図９】既存のブックファイルを開いた際のユーザインターフェース画面の一例を示す図である。
【図１０】本実施の形態に係る、保存ファイルをブックファイルにインポートする手順を説明するフローチャートである。
【図１１】本実施の形態に係る、アプリケーションデータを保存ファイルに変換する手順を説明するフローチャートである。
【図１２】ジョブチケットの構造の一例を示す図である。
【図１３】本実施の形態に係るクライアントサーバ型の文書処理システムの構成を示すブロック図である。
【図１４】印刷制御アプリケーション１０４によるデスプールテーブル書き込み処理を例示したフローチャートである。
【図１５】印刷制御アプリケーション１０４によるデスプールテーブル書き込み処理を具体的に例示したフローチャートである。
【図１６】デスプーラ１０５によるデスプール処理を例示したフローチャートである。
【図１７】印刷制御アプリケーション１０４によるブック属性の設定ユーザインターフェース画面の一例の図である。
【図１８】デスプールテーブル概要を示した図である。
【図１９】印刷制御アプリケーション１０４による用紙の挿入設定ユーザインターフェース画面の一例の図である。
【図２０】印刷制御アプリケーション１０４による印刷時のユーザインターフェース画面の一例の図である。
【図２１】インサータ挿入コマンドを例示した図である。
【図２２】他の実施形態における印刷制御アプリケーション１０４によるデスプールテーブル書き込み処理を例示したフローチャートである。
【図２３】給紙段設定を含むデスプールテーブル概要を示した図である。
【図２４】給紙段設定に加えてジョブ分割フラグ設定を含むデスプールテーブル概要を示した図である。
【図２５】プリンタの断面図である。
【図２６】ＤＥＶＭＯＤＯの一例を示す図である。
【図１】
2005031760.tif 000003
【図２】
2005031760.tif 000004
【図３】
2005031760.tif 000005
【図４】
2005031760.tif 000006
【図５】
2005031760.tif 000007
【図６】
2005031760.tif 000008
【図７】
2005031760.tif 000009
【図８】
2005031760.tif 000010
【図９】
2005031760.tif 000011
【図１０】
2005031760.tif 000012
【図１１】
2005031760.tif 000013
【図１２】
2005031760.tif 000014
【図１３】
2005031760.tif 000015
【図１４】
2005031760.tif 000016
【図１５】
2005031760.tif 000017
【図１６】
2005031760.tif 000018
【図１７】
2005031760.tif 000019
【図１８】
2005031760.tif 000020
【図１９】
2005031760.tif 000021
【図２０】
2005031760.tif 000022
【図２１】
2005031760.tif 000023
【図２２】
2005031760.tif 000024
【図２３】
2005031760.tif 000025
【図２４】
2005031760.tif 000026
【図２５】
2005031760.tif 000027
【図２６】
2005031760.tif 000028