(57)【要約】【課題】データと設定値を階層的に保持するような文書処理システムで、スキャン画像を読み込み、画像データの内容から文書の階層構造および設定を再現可能な紙原稿の電子化方法を提供する。【解決手段】スキャナで原稿を電子化して（ステップ２００１）、その読み込み方式（両面／片面）の別と共に読み込み（ステップ２００２）、電子化された原稿を電子原稿ファイル（ブックファイル）を構成するページとして、電子原稿ファイルを作成する（２００３）。そして、作成した電子原稿ファイルに含まれる空白ページを合紙と判定し（ステップ２００４）、合紙において章分割する旨の設定がされていれば、合紙を境界としてブックファイルに属する章を分割する（ステップ２００５）。最後に、章の先頭に位置する空白ページを削除して、文書全体に対する。章間に合紙を挿入する旨の属性を設定する（ステップ２００６）。【選択図】図２０
2005141425.tif 000002
【特許請求の範囲】
【請求項１】
ページ単位の画像データを読み込む画像読込み工程と、
前記画像読込み工程により読み込んだ画像データから、ページのまとまりごとの境界ページを特定する境界ページ特定工程と、
前記境界ページ特定工程により特定した境界ページの位置で分割した電子文書を、前記画像読み込み工程で読み込んだ画像データを基に作成する文書作成工程と
を備えることを特徴とする文書作成方法。
【請求項２】
前記境界ページ特定工程により特定された境界ページを削除し、前記文書作成工程により作成される電子文書における、ページのまとまりごとの境界ページを挿入する旨の設定を付与する設定編集工程を更に備えることを特徴とする請求項１に記載の文書作成方法。
【請求項３】
前記境界ページ特定工程により特定される境界ページは、空白ページであることを特徴とする請求項１記載の文書作成方法。
【請求項４】
前記画像読み込み工程により原稿の表裏の画像データを連続して読み込む場合には、前記境界ページ特定工程により特定される境界ページは、表裏で連続する空白ページであることを特徴とする請求項２記載の文書作成方法。
【請求項５】
前記設定編集工程において付与される設定は、空白ページの挿入設定であることを特徴とする請求項２記載の文書作成方法。
【請求項６】
前記設定編集工程においては、読み込まれた先頭の画像データが空白ページでは無い場合は、先頭には境界ページを挿入しない旨の設定を追加的に付与することを特徴とする請求項２記載の文書作成方法。
【請求項７】
ページ単位の画像データを読み込む画像読込み工程と、
前記画像読込み工程により読み込んだページ単位の画像データから、白紙ページを特定する白紙ページ特定工程と、
前記白紙ページ特定工程により特定した白紙ページの位置を境界とする章により構成される電子文書を、前記画像読み込み工程で読み込んだ画像データを基に作成する文書作成工程と
を備えることを特徴とする文書作成方法。
【請求項８】
ページ単位の画像データを読み込む画像読込み手段と、
前記画像読込み手段により読み込んだ画像データから、ページのまとまりごとの境界ページを特定する境界ページ特定手段と、
前記境界ページ特定手段により特定した境界ページの位置で分割した電子文書を、前記画像読み込み手段で読み込んだ画像データを基に作成する文書作成手段と
を備えることを特徴とする文書作成装置。
【請求項９】
前記境界ページ特定手段により特定された境界ページを削除し、前記文書作成手段により作成される電子文書における、ページのまとまりごとの境界ページを挿入する旨の設定を付与する設定編集手段を更に備えることを特徴とする請求項８に記載の文書作成装置。
【請求項１０】
前記境界ページ特定手段により特定される境界ページは、空白ページであることを特徴とする請求項８記載の文書作成装置。
【請求項１１】
前記画像読み込み手段により原稿の表裏の画像データを連続して読み込む場合には、前記境界ページ特定手段により特定される境界ページは、表裏で連続する空白ページであることを特徴とする請求項９記載の文書作成装置。
【請求項１２】
前記設定編集手段において付与される設定は、空白ページの挿入設定であることを特徴とする請求項９記載の文書作成装置。
【請求項１３】
前記設定編集手段においては、読み込まれた先頭の画像データが空白ページでは無い場合は、先頭には境界ページを挿入しない旨の設定を追加的に付与することを特徴とする請求項９記載の文書作成装置。
【請求項１４】
ページ単位の画像データを読み込む画像読込み手段と、
前記画像読込み手段により読み込んだ画像データから、ページのまとまりごとの境界ページを特定する境界ページ特定手段と、
前記境界ページ特定手段により特定した境界ページの位置で分割した電子文書を、前記画像読み込み手段で読み込んだ画像データを基に作成する文書作成手段と
をコンピュータにより実現するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパーソナルコンピュータ等の情報処理装置、スキャナを備えた文書処理方法及び装置に関し、特に、スキャナから読み込んだ画像データを電子文書として保存する際に、読み込まれる紙媒体の文書の構造をも含めて電子文書に反映することのできる文書処理方法及び文書処理方法に関する。
【背景技術】
【０００２】
紙原稿の複製を行う方法として、最も一般的な方法は複写機を利用することである。近年のデジタル複写機では、スキャナ部から読み込まれた原稿の画像データを、ネットワークを介して接続されるホストコンピュータ（外部装置）に対してファイルとして送信する読み取り画像送信機能が存在している（例えば、特許文献１）。
【０００３】
また、複写機のスキャナ部に原稿をセットし、複製すべき部数を入力し、コピーボタンを押すと、指定部数の複製を作成することができる。この方法では、スキャナで読み取られた原稿が斜行して読み取られた場合には、すべての複製物の該当ページが斜めに印刷されるという問題があった。また、複写機で複製した場合には、元の原稿に対してノイズや黒点が付加されて画質が劣化するという問題があった。さらには、元の原稿に付いている不要なページ番号やヘッダ・フッタの除去、および新しくページ番号やヘッダ・フッタを付加することができないという問題があった。また、特定の原稿ページの印刷される位置を調整するなど、さらに高度な原稿の編集を行うことができないといった問題点があった。これらの問題を解決する方法として、従来二つの方法が実施されている。
【０００４】
一つは複写機単体で実施する方法で、複写機のスキャナで読み取った原稿を一旦複写機内に保存し、ユーザがその保存された原稿の状態を確認し、前記の問題点を改善する印刷設定を行った後、保存された原稿のコピーを前記印刷設定に従って実行する方法である（例えば、特許文献２）。この方法では、斜行補正やノイズ・黒点除去を自動的に実施する場合には用いられる方法であるが、ヘッダ・フッタの編集やページ単位の印刷位置調整などの高度な編集は、複写機の操作性や処理能力の問題からあまり実施されていないか、あるいは操作性の良くない状態で実施されているというのが現状である。
【０００５】
もう一つは、複写機のスキャナで読み取った原稿を一旦複写機に接続された情報処理装置へ転送し、情報処理装置の高度な処理能力と高度な機能を備えたアプリケーションソフトウエア、およびディスプレイ・マウス・キーボードといった操作性の良いインタフェース装置を用いることにより、高度な編集も可能とする方法である（例えば、特許文献３）。
【０００６】
これらの二つの方法により、紙原稿の高品質な複製物の作成が従来行われてきた。
【０００７】
このように文書をスキャナで電子データに変換して画像データとして取り込んで電子文書を生成する場合、傾き補正、濃度調整など紙原稿特有の画質問題が発生する。また、紙の入力原稿に文書内の論理的な区切りを示すために合紙とよばれる空白ページを入れている場合がある。
【特許文献１】特開２００２−１３２６４２号公報
【特許文献２】特開平７−２８３９３３号公報
【特許文献３】特開２０００−１６５６３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のように、文書中に空白用紙（合紙）を差し込んで文書の構造を表現するような形式の紙原稿を扱う場合、スキャナで取り込んだデータは単なる電子化された画像データの並びであるため、電子化された文書においては、単に空白の画像データが１ページ含まれるというに過ぎず、白紙により文書が区切られるという論理的な構造は失われる。その場合、電子文書中から合紙を探し、そこを区切り目とするような文書の構造を利用者自身が文書に付与する操作を行う必要があった。
【０００９】
また、出力に用いるプリンタ等について印刷枚数に応じた従量課金がされている場合、白紙ページに関しては何も印刷されなくても課金されるといった不具合が発生する。これを防止するために、スキャンされた画像データを文書として保存する際に、空白ページを削除するという機能が提供されていることもある。しかしこの場合、印刷結果から文書の区切り目を示すための合紙は失われてしまい、空白ページを目安に電子文書を論理的に区切り、構造を持った文書として復元することもできない。
【００１０】
本発明は上記従来例に鑑みてなされたもので、スキャンされた原稿画像から空白ページを検出することで、紙媒体の文書の構造を電子文書に再現し、さらに、印刷時にも無駄な課金がなされないように電子文書を構成する文書処理方法及び文書処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために本発明は以下の構成を備える。
【００１２】
ページ単位の画像データを読み込む画像読込み工程と、
前記画像読込み工程により読み込んだ画像データから、ページのまとまりごとの境界ページを特定する境界ページ特定工程と、
前記境界ページ特定工程により特定した境界ページの位置で分割した電子文書を、前記画像読み込み工程で読み込んだ画像データを基に作成する文書作成工程とを備える。
【００１３】
さらに好ましくは、前記境界ページ特定工程により特定された境界ページを削除し、前記文書作成工程により作成される電子文書における、ページのまとまりごとの境界ページを挿入する旨の設定を付与する設定編集工程を更に備える。
【００１４】
さらに好ましくは、前記境界ページ特定工程により特定される境界ページは、空白ページである。
【００１５】
さらに好ましくは、前記画像読み込み工程により原稿の表裏の画像データを連続して読み込む場合には、前記境界ページ特定工程により特定される境界ページは、表裏で連続する空白ページである。
【００１６】
さらに好ましくは、前記設定編集工程において付与される設定は、空白ページの挿入設定である。
【００１７】
さらに好ましくは、前記設定編集工程においては、読み込まれた先頭の画像データが空白ページでは無い場合は、先頭には境界ページを挿入しない旨の設定を追加的に付与する。
【００１８】
あるいは本発明は以下の構成を備える。ページ単位の画像データを読み込む画像読込み工程と、
前記画像読込み工程により読み込んだページ単位の画像データから、白紙ページを特定する白紙ページ特定工程と、
前記白紙ページ特定工程により特定した白紙ページの位置を境界とする章により構成される電子文書を、前記画像読み込み工程で読み込んだ画像データを基に作成する文書作成工程とを備える。
【発明の効果】
【００１９】
本発明は、紙原稿を読み込んだ画像データ中に合紙（白紙ページ）を検出した場合に、合紙の位置で文書の階層構造を区切って電子化文書を作成することで、電子原稿ファイルに紙原稿文書の階層構造を再現することができる。
【００２０】
さらに、空白ページ原稿を合紙挿入設定に置き換えることで、印刷時に何も印刷されないページや用紙への課金を防ぐことができる。
【００２１】
さらに、空白ページ原稿を合紙挿入設定に置き換えることで、文書の構造的に不要である空白原稿を取り除くことができる。
【発明を実施するための最良の形態】
【００２２】
以下、添付図面に従って、本発明の実施形態を詳細に説明する。
【００２３】
［本実施形態の文書処理システムの概要］
本実施形態の文書処理システムでは、スキャナで読み取られた画像データだけでなく、様々なアプリケーションプログラムで作成した電子ファイルも扱うことが可能である。実施形態の説明に先立ち、本実施形態の文書処理システムが必要となった背景を説明する。
【００２４】
文字や表、デジタルカメラやスキャナで取り込まれた画像など、データの種類が異なると、データを定義する構造やそれらデータに対する編集操作が異なるために、データの種類に応じた様々なアプリケーションプログラムが提供されている。利用者は、文字を編集するためには文字処理プログラム、表を編集するためには表計算プログラム、画像を編集するためには画像編集プログラムといった具合に、データの種類別にアプリケーションを使い分けている。
【００２５】
このように、利用者はデータの種類ごとにアプリケーションプログラムを使い分けるのが一般的である。しかし、利用者が作成しようとする文書としては、例えば文字のみや、表のみ、画像のみといった１種類のデータのみから構成される文書よりも、文字と表、文字と画像など、複数種類のデータから構成される文書の方が一般的である。そこで複数種類のデータを含む目的文書を作成するために、利用者は各種アプリケーションが備えている印刷機能を利用してアプリケーションごとにデータを印刷させ、印刷物を所望の順序に組み合わせる必要があった。
【００２６】
あるいは、いわゆるオフィススイートと呼ばれる、各種アプリケーションによってひとつの統合アプリケーションを形成するプログラムには、各アプリケーションで生成されたデータを組み合わせ、ひとつの文書を構成する機能を提供するものもある。この統合アプリケーションを使用する場合には、利用者は、各アプリケーションで作成したデータを、統合アプリケーションに含まれる特定のアプリケーションによってひとつの目的文書にまとめることができる。
【００２７】
しかしながら、利用者が各種アプリケーションによる印刷物を組み合わせてひとつの目的文書を作成する場合、例えばページ番号を各ページに振るためには、いったん必要なデータをすべて印刷出力し、文書としてまとめてから付すべきページ番号を決定する必要がある。そして、各アプリケーションによって、そのアプリケーションで作成された原稿の各ページ（これを論理ページあるいは原稿ページと呼ぶ）ごとに、決定されたページ番号を書き込んでいく。アプリケーションプログラムがページ番号を振る機能を有している場合であっても、不連続部分があればその部分についてはやはり利用者がページ番号を指定しなければならない。また、目的文書のページを再配置した場合には、ページ番号もそれに合わせて振り直さなければならない。あるいは、複数の原稿ページを、印刷物としての１ページ（これを物理ページあるいは印刷ページと呼ぶ）にまとめたり、片面印刷から両面印刷に変更したりするなど、データの内容にかかる変更ではなく、単に書式を変更する場合であっても、アプリケーションによって編集及び印刷のし直しが必要となる。
【００２８】
このように、データの種類ごとにそれを管理できるアプリケーションが異なることから、アプリケーション間のインタフェースを利用者自身が人手によって提供しなければならない。このことは、利用者に多大な労力が要求されるということであり、生産性の低下をもたらす。さらに、多くの人手を介することからエラーの発生も生じやすかった。
【００２９】
一方、統合アプリケーションを利用して目的文書を作成する場合、印刷出力せずに、データの状態で各種データを配置することができる。このため、印刷物を組み合わせて目的文書を作成する場合ほどには労力は必要とされることはない。しかしながら、各種データを編集・作成するためのアプリケーションは、統合アプリケーションに含まれるものに限られてしまい、利用者が望むアプリケーションが使用できるとは限らない。また、統合アプリケーションによって作成された目的文書はひとつの文書ファイルであり、ファイル単位で編集・出力等の管理が行われる。そのために、文書ファイルの一部について書式を設定しようとしてもアプリケーションの機能による制約が多く、例えば書式が変わる部分ごとに書式設定を変更しては印刷し直すといった作業が必要とされる。このため、多くの労力が必要とされて生産性が低い点においては、前述した方法と変わりはなかった。
【００３０】
以上のような背景から、本実施形態の文書処理システムは、これらの問題点を解決した上で、本発明の課題も解決する文書処理システムとなっている。よって、スキャナで読み取った画像データだけでなく、様々なアプリケーションプログラムで作成した電子ファイルも扱うことが可能に構成されている。
【００３１】
次に、本発明の実施形態である文書処理システムの概要を、図１〜図１３を参照して説明する。この文書処理システムでは、一般アプリケーションにより作成されたデータファイルが、電子原稿ライタ（印刷データ保存用ドライバと呼ぶこともある。）によって電子原稿ファイルに変換される。また、スキャナで読み取られた画像も、スキャナドライバか他のアプリケーションソフトウエア等の手段によって電子原稿ファイルに変換される。製本アプリケーション（印刷制御アプリケーションと呼ぶこともある。）はその電子原稿ファイルを編集する機能を提供している。尚、本例では、それぞれの機能が明瞭になるように、一般アプリケーション、スキャナドライバ、電子原稿ライタ、製本アプリケーション、電子原稿デスプーラ（印刷アプリケーションと呼ぶこともある。）と分離して示しているが、ユーザに提供されるパッケージはこれらに限定されず、これらを組み合わせたアプリケーションやグラフィックエンジンとして提供されてもよい。以下、その詳細を説明する。
【００３２】
＜本実施形態の文書処理システムのソフトウェア構成例＞
図１は、本実施形態の文書処理システムのソフトウェア構成を示す図である。
【００３３】
文書処理システムは、本発明の文書処理装置（情報処理装置）の好適な実施形態であるデジタルコンピュータ１００（以下、ホストコンピュータとも呼ばれる）によって実現されている。一般アプリケーション１０１は、ワードプロセシングやスプレッドシート、フォトレタッチ、ドローあるいはペイント、プレゼンテーション、テキスト編集などの機能を提供するアプリケーションプログラムであり、ＯＳに対する印刷機能を有している。これらアプリケーションは、作成された文書データや画像データなどのアプリケーションデータを印刷するにあたって、オペレーティングシステム（ＯＳ）により提供される所定のインタフェース（一般に、ＧＤＩと呼ばれる）を利用する。すなわち、アプリケーション１０１は、作成したデータを印刷するために、前記インタフェースを提供するＯＳの出力モジュールに対して、あらかじめ定められる、ＯＳに依存する形式の出力コマンド（ＧＤＩ関数と呼ばれる）を送信する。出力コマンドを受けた出力モジュールは、プリンタ等の出力デバイスが処理可能な形式にそのコマンドを変換し、変換されたコマンド（ＤＤＩ関数と呼ばれる）を出力する。出力デバイスが処理可能な形式はデバイスの種類やメーカ、機種などによって異なるために、デバイスごとにデバイスドライバが提供されており、ＯＳではそのデバイスドライバを利用してコマンドの変換を行い、印刷データを生成し、ＪＬ（Job Language）でくくることにより印刷ジョブが生成される。ＯＳとしてマイクロソフト社のウインドウズ（登録商標）を利用する場合には、前述した出力モジュールとしてはＧＤＩ（Graphic Device Interface）と呼ばれるモジュールが相当する。
【００３４】
電子原稿ライタ１０２は、前述のデバイスドライバを改良したものであり、本文書処理システム実現のために提供されるソフトウェアモジュールである。ただし、電子原稿ライタ１０２は特定の出力デバイスを目的としておらず、後述の製本アプリケーション１０４やプリンタドライバ１０６により処理可能な形式に出力コマンドを変換する。この電子原稿ライタ１０２による変換後の形式（以後、「電子原稿形式」と呼ぶ。）は、ページ単位の原稿を詳細な書式をもって表現可能であれば特に問わない。実質的な標準形式のうちでは、例えばアドビシステムズによるＰＤＦ形式や、ＳＶＧ形式などが電子原稿形式として採用できる。
【００３５】
アプリケーション１０１により電子原稿ライタ１０２を利用させる場合には、出力に使用するデバイスドライバとして電子原稿ライタ１０２を指定してから印刷を実行させる。ただし、電子原稿ライタ１０２によって作成されたままの電子原稿ファイルは、電子原稿ファイルとして完全な形式を備えていない。そのため、デバイスドライバとして電子原稿ライタ１０２を指定するのは製本アプリケーション１０４であり、その管理下でアプリケーションデータの電子原稿ファイルへの変換が実行される。製本アプリケーション１０４は、電子原稿ライタ１０２が生成した新規の不完全な電子原稿ファイルを後述する形式を備えた電子原稿ファイルとして完成させる。以下では、この点を明瞭に識別する必要がある際には、電子原稿ライタ１０２によって作成されたファイルを電子原稿ファイルと呼び、製本アプリケーションによって構造を与えられた電子原稿ファイルをブックファイルと呼ぶ。また、特に区別する必要がない場合は、アプリケーションにより生成されるドキュメントファイル、電子原稿ファイル、及びブックファイルをいずれも文書ファイル（または文書データ）と呼ぶ。
【００３６】
このようにデバイスドライバとして電子原稿ライタ１０２を指定し、一般アプリケーション１０１によりそのデータを印刷させることで、アプリケーションデータはアプリケーション１０１によって定義されたページ（以後、「論理ページ」あるいは「原稿ページ」と呼ぶ。）を単位とする電子原稿形式に変換され、電子原稿ファイル１０３としてハードディスクなどの記憶媒体に格納される。なお、ハードディスクは、本実施形態の文書処理システムを実現するコンピュータが備えているローカルドライブであってもよいし、ネットワークに接続されている場合にはネットワーク上に提供されるドライブであっても良い。
【００３７】
製本アプリケーション１０４は、電子原稿ファイルあるいはブックファイル１０３を読み込み、それを編集するための機能を利用者に提供する。ただし製本アプリケーション１０４は、各ページの内容を編集する機能は提供しておらず、ページを最小単位として構成される、後述する章やブックの構造を編集するための機能を提供している。
【００３８】
本実施形態では、まず、一般アプリケーション１０１からの印刷データは電子原稿ライタ１０２を介して電子原稿ファイル１０３としてシステム上に保存される。この電子原稿ファイル１０３には、中間ファイルと編集情報ファイルとが含まれる。中間ファイルには、印刷物のコンテンツデータや印刷用設定データ等が含まれる。印刷物のコンテンツデータとはユーザがアプリケーション上で作成したデータを中間コードに変換したデータであり、印刷用設定データとはコンテンツデータをどのように出力するか(出力体裁等)を記述したデータである。そのほか、製本アプリケーション１０４により電子原稿ファイル１０３の内容の編集や出力指示をユーザに行わせる際のユーザインターフェースを提供するための編集情報ファイルというアプリケーション用拡張データが含まれる。編集情報ファイルには、ユーザインターフェースの提供のための拡張データのみならず、中間ファイルには格納できない印刷用設定データが格納されている。このため、中間ファイルとしてたとえば標準化された形式を用いた場合など、その形式では保存できない印刷用設定も編集情報ファイルに保存できる。
【００３９】
この電子原稿ファイル１０３を製本アプリケーション１０４が読み込む。この製本アプリケーション１０４は、中間ファイルの内容をメモリにテーブルとして展開し、さらに編集情報ファイルに、中間ファイルには含まれない特有の設定が含まれていれば、その設定をメモリ上に展開したテーブルに反映する。そして、読み込んだ中間ファイルの内容の出力体裁を変更、表示し、保存、印刷することが可能である。実際に印刷のための処理を行うのは電子原稿デスプーラ１０５である。
【００４０】
製本アプリケーション１０４によって編集されたブックファイル１０３を印刷する際には、製本アプリケーション１０４によって電子原稿デスプーラ１０５が起動される。電子原稿デスプーラ１０５は、製本アプリケーションと共にコンピュータ内にインストールされるプログラムモジュールであり、製本アプリケーションで利用するドキュメント（ブックファイル）を印刷する際に、プリンタドライバへ描画データを出力するために使用されるモジュールである。電子原稿デスプーラ１０５は、指定されたブックファイル（電子原稿ファイル）をハードディスクから読み出し、ブックファイル（電子原稿ファイル）に記述された形式、すなわち中間ファイルおよび編集情報ファイルにより定義された形式で各ページを印刷するために、前述したＯＳの出力モジュール（グラフィックエンジン）に適合する出力コマンドを生成し、不図示の出力モジュールに出力する。その際に、出力デバイスとして使用されるプリンタ１０７のドライバ１０６がデバイスドライバとして指定される。出力モジュールは、指定されたプリンタ１０７のプリンタドライバ１０６を用いて受信した出力コマンドを、プリンタ１０７で解釈実行可能なデバイスコマンドに変換する。そしてデバイスコマンドはプリンタ１０７に送信され、プリンタ１０７によってコマンドに応じた画像が印刷される。
【００４１】
また、図１のシステムはスキャナを備えており、スキャナ１０８により画像を読み取って電子原稿ファイル１０３として保存することができる。スキャナ１０８から画像を取り込むには大きく分類して二つの方法がある。一つはプルスキャンと呼ばれる方法で、画像を受け取るアプリケーション側からスキャンの指示を行う方法である。具体的には、スキャナドライバ１０９を通じてアプリケーションは画像データを取得する方法が挙げられる。スキャナドライバとしてはTWAINやISIS対応のドライバが一般的である。解像度や色数などは、スキャナドライバで設定することが可能である。
【００４２】
もう一つの方法は、プッシュスキャンと呼ばれる方法で、スキャナ側からスキャンの指示を行う方法である。具体的には、ネットワーク共有されているハードディスクにスキャナが画像ファイルを置く方法が挙げられる。この場合、スキャナはデジタルコンピュータ１００と共通のネットワーク機能を備え、共有フォルダに書き込み権限を持っている必要がある。
【００４３】
プッシュスキャンの場合、画像ファイルの画質設定はスキャナ本体のパネルなどで設定する。画像フォーマットとしてはTIFF、JPEG、BMP、PDFなどの形式が一般的である。一方プルスキャンの場合、製本アプリケーション１０４は直接スキャナドライバから画像データを取得して読み込む。プッシュスキャンの場合は、デジタルコンピュータ１００の、たとえば所定のフォルダにおかれた画像ファイルを読み込む。このとき、製本アプリケーション１０４が、スキャンされた画像ファイルが置かれるフォルダを監視し、あるいはスキャナからのスキャン終了通知を受け取り、ユーザの入力を待たずに自動的に読み込むことができる。もしくは、デジタルコンピュータ１００に置かれた画像ファイルをユーザが製本アプリケーション１０４に読み込む指示を行っても良い。
【００４４】
＜本実施形態の文書処理システムのハードウェア構成例＞
図２は、本実施形態の文書処理システムのハードウェア構成を示す図である。図２において、ホストコンピュータ１００は、ＲＯＭ２０３内のプログラム用ＲＯＭあるいは外部メモリ２１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ２０１を備え、システムバス２０４に接続される各デバイスをＣＰＵ２０１が総括的に制御する。また、このＲＯＭ２０３内のプログラム用ＲＯＭあるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステムプログラム等を記憶し、ＲＯＭ２０３内のフォント用ＲＯＭあるいは外部メモリ２１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ２０３内のデータ用ＲＯＭあるいは外部メモリ２１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００４５】
キーボードコントローラ（ＫＢＣ）２０５は、キーボード２０９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０の表示を制御する。２０７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、スキャナ制御プログラム（スキャナドライバ）、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）等の外部メモリ２１１とのアクセスを制御する。外部インターフェース（外部Ｉ／Ｆ）２０８は、双方向性インタフェース（インタフェース）２１を介してプリンタ１０７に、双方向性インターフェース２２を介してスキャナ１０８に接続されて、プリンタ１０７およびスキャナ１０８との通信制御処理を実行する。ＮＣ２１２はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。プリンタ１０７及びスキャナ１０８はネットワークを介して接続されていても良い。
【００４６】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ２１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００４７】
プリンタ１０７は、ＣＰＵ３１２により制御される。プリンタのＣＰＵ３１２は、ＲＯＭ３１３内のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ３１４に記憶された制御プログラム等に基づいてシステムバス３１５に接続される印刷部（プリンタエンジン）３１７に出力情報としての画像信号を出力する。また、このＲＯＭ３１３内のプログラムＲＯＭには、ＣＰＵ３１２の制御プログラム等を記憶する。ＲＯＭ３１３内のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ３１３内のデータ用ＲＯＭには、ハードディスク等の外部メモリ３１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００４８】
ＣＰＵ３１２は入力部３１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ１００に通知できる。ＲＡＭ３１９は、ＣＰＵ３１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ３１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ３１４は、メモリコントローラ（ＭＣ）３２０によりアクセスを制御される。外部メモリ３１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、３２１は操作パネルで、操作のためのスイッチ及びＬＥＤ表示器等が配されている。
【００４９】
また、前述した外部メモリ３１４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル３２１からのプリンタモード設定情報を記憶するようにしてもよい。
【００５０】
スキャナ１０８は、ＣＰＵ３３２により制御される。スキャナのＣＰＵ３３２は、ＲＯＭ３３３内のプログラム用ＲＯＭに記憶された制御プログラムに基づいてシステムバス３３５に接続される読み取り部（スキャナエンジン）３３７から入力情報としての画像信号を入力する。また、このＲＯＭ３３３内のプログラムＲＯＭには、ＣＰＵ３３２の制御プログラム等を記憶する。ＲＯＭ３３３内のデータ用ＲＯＭには、ＣＰＵ３３２により利用される情報等が記憶されている。
【００５１】
ＣＰＵ３３２はＩ／Ｆ部部３３８を介してホストコンピュータ１００との通信処理が可能となっており、スキャナ内の情報等をホストコンピュータ１００に通知できる。ＲＡＭ３３９は、ＣＰＵ３３２の主メモリや、ワークエリア等として機能するＲＡＭであり、スキャナエンジンで読み取った画像データを一時的に保存する画像メモリとしても機能する。読み取られた画像データは、シート１ページ単位でＲＡＭ３３９に一時的に保存されて、ホストコンピュータ１００に送信される。
【００５２】
読み取り部３３７は、原稿画像に光源光を照射してその反射光を光学系によりＣＣＤやＣＭＯＳなどのイメージセンサに集光して電子化し、それをデジタル信号に変換してＩＦ部３３８に入力する。あるいはＣＩＳを用いたものであってもよい。また、読み取り部３３７には、自動原稿給送装置（ＡＤＦ）が設けられ、給紙部に積載された原稿を１枚ずつ読み取り位置まで搬送する機能を持ち、複数枚の原稿を自動で読み取ることができる。さらに、ＡＤＦにはシートの反転機能が備えられており、１枚のシートの表裏を連続して読み取ることができる。その場合には、表面の読み取り後に読み取られた画像データが１ページ相当の画像データとしてホストコンピュータに送信され、その後にシートが反転されて裏面が読み取られてその画像データが１ページ相当の画像データとしてホストコンピュータ１００に送信される。操作パネル３３１はオペレータによる操作、たとえばプッシュスキャン操作のためのスイッチ及びＬＥＤ表示器等が配されている。
【００５３】
＜電子原稿データの形式例＞
編集アプリケーション１０４の詳細を言及する前に、ブックファイルのデータ形式を説明する。ブックファイルは紙媒体の書物を模した３層の層構造を有する。上位層は「ブック」と呼ばれ、１冊の本を模しており、その本全般に係る属性が定義されている。その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。各章についても、章ごとの属性が定義できる。下位層は「ページ」であり、アプリケーションプログラムで定義された各ページに相当する。各ページについてもページごとの属性が定義できる。ひとつのブックは複数の章を含んでいてよく、また、ひとつの章は複数のページを含むことができる。
【００５４】
図３は、ブックファイルの形式の一例を模式的に示す図である。このブックファイルの形式は、編集情報ファイルにより表される。すなわち、図３は、電子原稿ファイルのうちでも編集情報ファイルの構造を示すものである。ブックファイルにおける、ブック、章、ページは、それぞれに相当するノードにより示されている。ひとつのブックファイルはひとつのブックを含む。ブック、章は、ブックとしての構造を定義するための概念であるから、定義された属性値と下位層へのリンクとをその実体として含む。ページは、アプリケーションプログラムによって出力されたページごとのデータを実体として有する。そのため、ページは、その属性値のほか、原稿ページの実体（原稿ページデータ）と各原稿ページデータへのリンクを含む。尚、紙媒体等に出力する際の印刷ページは複数の原稿ページを含む場合がある。この構造に関してはリンクによって表示されず、ブック、章、ページ各階層における属性として表示される。
【００５５】
図３では、ブックファイルが１つの完結したブックである必要はないので、「ブック」を「文書」として一般化して記載している。
【００５６】
まず最上位に文書情報４０１を持つ。文書情報４０１は４０２〜４０４の３つのパートに大別できる。文書制御情報４０２は、文書ファイルのファイルシステムにおけるパス名などの情報を保持する。文書設定情報４０３は、ページレイアウトなどのレイアウト情報とステイプルなど印刷装置の機能設定情報を保持し、ブックの属性に相当する。章情報リスト４０４は、文書を構成している章の集合をリスト形式で保持する。リストが保持するのは章情報４０５である。
【００５７】
章情報４０５も４０６〜４０８の３つのパートに大別できる。章制御情報４０６は、章の名称などの情報を保持する。章設定情報４０７は、その章特有のページレイアウトやステイプルの情報を保持し、章の属性に相当する。章ごとに設定情報をもつことで最初の章は２UPのレイアウトその他の章は４UPのレイアウトのように複雑なレイアウトを持った文書を作成することが可能である。ページ情報リスト４０８は各章を構成する原稿ページの集合リスト形式で保持している。ページ情報リスト４０８が指示するのは、ページ情報データ４０９である。
【００５８】
ページ情報データ４０９も４１０〜４１２の３つのパートに大別される。ページ制御情報４１０は、ツリー上に表示するページ番号などの情報を保持する。ページ設定情報４１１は、ページ回転角やページの配置位置情報などの情報を保持し、原稿ページの属性に相当する。ページリンク情報４１２は、ページに対応する原稿データである。この例では、ページ情報４０９が直接原稿データを持つのではなく、リンク情報４１２だけをもち、実際の原稿データは、ページデータリスト４１３で保持する構成としている。
【００５９】
図４は、ブック属性（文書設定情報４０３）の例を示すリストである。通常、下位層と重複して定義可能な項目に関しては、下位層の属性値が優先採用される。そのため、ブック属性にのみ含まれる項目に関しては、ブック属性に定義された値はブック全体を通して有効な値となる。しかし、下位層と重複する項目については、下位層において定義されていない場合における既定値としての意味を有する。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。なお、図示された各項目は具体的に１項目に対応するのではなく、関連する複数の項目を含むものもある。
【００６０】
ブック属性に固有の項目は、製本詳細、表紙／裏表紙、インデックス紙、合紙、章区切りの５項目である。これらは、ブックを通して定義される項目である。印刷方法属性としては、片面印刷、両面印刷、製本印刷の３つの値を指定できる。製本印刷とは、別途指定する枚数の用紙を束にして２つ折りにし、その束をつづり合わせることで製本が可能となる形式で印刷する方法である。製本詳細属性としては、製本印刷が指定されている場合に、見開き方向や、束になる枚数等が指定できる。
【００６１】
表紙／裏表紙属性は、ブックとしてまとめられる電子原稿ファイルを印刷する際に、表紙及び裏表紙となる用紙を付加することの指定、及び付加した用紙への印刷内容の指定を含む。インデックス紙属性は、章の区切りとして、印刷装置に別途用意される耳付きのインデックス紙の挿入の指定及びインデックス（耳）部分への印刷内容の指定を含む。この属性は、印刷用紙とは別に用意された用紙を所望の位置に挿入するインサート機能を持ったインサータが使用する印刷装置に備えられている場合か、あるいは、複数の給紙カセットを使用可能である場合に有効となる。これは合紙属性についても同様である。
【００６２】
合紙属性は、章の区切りとして、インサータからあるいは給紙カセットから供給される用紙の挿入の指定、及び、合紙を挿入する場合には、給紙元の指定などを含む。
【００６３】
章区切り属性は、章の区切り目において、新たな用紙を使用するか、新たな印刷ページを使用するか、特に何もしないか等の指定を含む。片面印刷時には新たな用紙の使用と新たな印刷ページの使用とは同じ意味を持つ。両面印刷時には、「新たな用紙の使用」を指定すれば連続する章が１枚の用紙に印刷されることは無いが、「新たな印刷ページの使用」を指定すれば、連続する章が１枚の用紙の表裏に印刷されることがあり得る。
【００６４】
図５は、章属性（章設定情報４０７）の、図６はページ属性（ページ設定情報４１１）の例を示すリストである。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。
【００６５】
章属性に関しては、章に固有の項目はなく、すべてブック属性と重複する。したがって、通常は、章属性における定義とブック属性における定義とが異なれば、章属性で定義された値が優先する。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
【００６６】
ブック属性と章属性とにのみ共通する項目は、印刷方法、用紙サイズ、用紙方向、Ｎ−ｕｐ印刷指定、拡大縮小、排紙方法の６項目である。印刷方法属性は、ブック属性では片面印刷、両面印刷、製本印刷の３つの値を指定できるが、章属性ではブック属性で両面印刷が指定されている場合のみ片面印刷するか否かすなわち片面印刷と両面印刷のいずれかを指定でき、一つのブック内で片面印刷と両面印刷の切り替えを設定できるようになっている。Ｎ−ｕｐ印刷指定属性は、１印刷ページに含まれる原稿ページ数を指定するための項目である。指定可能な配置としては、１×１や１×２、２×２、３×３、４×４などがある。排紙方法属性は、排出した用紙にステイプル処理を施すか否かを指定するための項目であり、この属性の有効性は使用する印刷装置がステイプル機能を有するか否かに依存する。
【００６７】
ページ属性に固有の項目には、ページ回転属性、ズーム、配置指定、アノテーション、ページ分割などがある。ページ回転属性は、原稿ページを印刷ページに配置する際の回転角度を指定するための項目である。ズーム属性は、原稿ページの変倍率を指定するための項目である。変倍率は、仮想論理ページ領域のサイズを１００％として指定される。仮想論理ページ領域とは、原稿ページを、Ｎ−ｕｐ等の指定に応じて配置した場合に、１原稿ページが占める領域である。例えば１×１であれば、仮想論理ページ領域は１印刷ページに相当する領域となり、１×２であれば、１印刷ページの各辺を約７０パーセントに縮小した領域となる。
【００６８】
ブック、章、ページについて共通な属性として、ウォーターマーク属性及びヘッダ・フッタ属性がある。ウォーターマークとは、アプリケーションで作成されたデータに重ねて印刷される、別途指定される画像や文字列などである。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。ただし、ヘッダ・フッタには、ページ番号や日時など、変数により指定可能な項目が用意されている。なお、ウォーターマーク属性及びヘッダ・フッタ属性において指定可能な内容は、章とページとは共通であるが、ブックはそれらと異なっている。ブックにおいてはウォーターマークやヘッダ・フッタの内容を設定できるし、また、ブック全体を通してどのようにウォーターマークやヘッダ・フッタを印刷するかを指定することができる。一方、章やページでは、その章やページにおいて、ブックで設定されたウォーターマークやヘッダ・フッタを印刷するか否かを指定できる。
【００６９】
＜本実施形態の文書処理システムの操作手順例＞
（ブックファイルの生成手順例）
ブックファイルは、上述したような構造及び内容を有している。次に、製本アプリケーション１０４及び電子原稿ライタ１０２によってブックファイルを作成する手順を説明する。ブックファイルの作成は、製本アプリケーション１０４によるブックファイルの編集操作の一環として実現される。
【００７０】
図７は、製本アプリケーション１０４によりブックファイルを開く際の手順を示すフローチャートである。
【００７１】
まず、開こうとするブックファイルが、新規作成すべきものであるか、それとも既存のものであるか判定する（ステップＳ７０１）。新規作成の場合には、章を含まないブックファイルを新規に作成する（ステップＳ７０２）。新規に作成されるブックファイルは、図３の例で示せば、ブックノード３０１のみ有し、章のノードに対するリンクが存在しないブックのノードとなる。ブック属性は、新規作成用としてあらかじめ用意された属性のセットが適用される。そして、新規ブックファイルを編集するためのユーザインタフェース（ＵＩ）画面を表示する（ステップＳ７０４）。図８は、新規にブックファイルが作成された際のＵＩ画面の一例である。この場合には、ブックファイルは実質的な内容を持たないために、ＵＩ画面８００には何も表示されない。
【００７２】
一方、既存のブックファイルがあれば、指定されたブックファイルを開き（ステップＳ７０３）、そのブックファイルの構造、属性、内容に従ってユーザインタフェース（ＵＩ）画面を表示する。図９は、このＵＩ画面の一例である。ＵＩ画面９００は、ブックの構造を示すツリー部９０１と、印刷された状態を表示するプレビュー部９０２とを含む。ツリー部９０１には、ブックに含まれる章、各章に含まれるページが、図３のような木構造が分かるように表示される。ツリー部９０１に表示されるページは原稿ページである。プレビュー部９０２には、印刷ページの内容が縮小されて表示される。その表示順序は、ブックの構造を反映したものとなっている。
【００７３】
さて、開かれたブックファイルには、電子原稿ライタ１０２によって電子原稿ファイルに変換されたアプリケーションデータを、新たな章として追加することができる。この機能を電子原稿インポート機能と呼ぶ。図７の手順によって新規に作成されたブックファイルに電子原稿インポートすることで、そのブックファイルには実体が与えられる。この機能は、図８あるいは図９の画面にアプリケーションデータをドラッグアンドドロップ操作することで起動される。
【００７４】
図１０は電子原稿インポートの手順例を示すフローチャートである。ただし、スキャナ１０８から文書を画像データとして読み込んでインポートする場合については、図２１において説明する。
【００７５】
まず、指定されたアプリケーションデータを生成したアプリケーションプログラムを起動し、デバイスドライバとして電子原稿ライタ１０２を指定してアプリケーションデータを印刷出力させることで、電子原稿データに変換する（ステップＳ８０１）。変換を終えたなら、変換されたデータが画像データであるか否かを判定する（ステップＳ８０２）。この判定は、ウインドウズ（登録商標）ＯＳの下であれば、アプリケーションデータのファイル拡張子に基づいて行うことができる。例えば、拡張子が「ｂｍｐ」であればウインドウズ（登録商標）ビットマップデータであり、「ｊｐｇ」であればＪＰＥＧ圧縮された画像データ、「ｔｉｆｆ」であればｔｉｆｆ形式の画像データであると判定できる。また、このような画像データの場合はＳ８０１０のようにアプリケーションを起動せずに、画像データから直接電子原稿ファイルを生成することが可能であるため、Ｓ８０１の処理を省略することも可能である。
【００７６】
画像データでなかった場合には、ステップＳ８０１で生成された電子原稿ファイルを、現在開かれているブックファイルのブックに、新たな章として追加する（ステップＳ８０３）。通常、章属性としては、ブック属性と共通するものについてはブック属性の値がコピーされ、そうでないものについては、あらかじめ用意された規定値に設定されるが、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
【００７７】
画像データである場合には、原則として新たな章は追加されず、指定されている章に、ステップＳ８０１で生成された電子原稿ファイルに含まれる各原稿ページが追加される（ステップＳ８０４）。ただし、ブックファイルが新規作成されたファイルであれば、新たな章が作成されて、その章に属するページとして電子原稿ファイルの各ページが追加される。通常、ページ属性は、上位層の属性と共通のものについてはその属性値が与えられ、アプリケーションデータにおいて定義された属性を電子原稿ファイルに引き継いでいるものについてはその値が与えられる。例えば、Ｎ−ｕｐ指定などがアプリケーションデータにおいてされていた場合には、その属性値が引き継がれる。このようにして、新規なブックファイルが作成され、あるいは、新規な章が追加される。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
【００７８】
図１１は、図１０のステップＳ８０１において、電子原稿ライタ１０２により電子原稿ファイルを生成させる手順を示すフローチャートである。
【００７９】
まず、新たな電子原稿ファイルを作成してそれを開く（ステップＳ９０１）。指定したアプリケーションデータに対応するアプリケーションを起動し、電子原稿ライタ１０２をデバイスドライバとして、ＯＳの出力モジュールに対して出力コマンドを送信させる。出力モジュールは、受信した出力コマンドを電子原稿ライタによって電子原稿形式のデータに変換し、出力する（ステップＳ９０２）。出力先はステップＳ９０１で開いた電子原稿ファイルである。指定されたデータすべてについて変換が終了したか判定し（ステップＳ９０３）、終了していれば電子原稿ファイルを閉じる（ステップＳ９０４）。電子原稿ライタ１０２によって生成される電子原稿ファイルは、図３に示した、原稿ページデータの実体を含むファイルである。
【００８０】
（ブックファイルの編集例）
以上のようにして、アプリケーションデータからブックファイルを作成することができる。生成されたブックファイルについては、章及びページに対して次のような編集操作が可能である。
（１）新規追加
（２）削除
（３）コピー
（４）切り取り
（５）貼り付け
（６）移動
（７）章名称変更
（８）ページ番号名称振り直し
（９）表紙挿入
（１０）合紙挿入
（１１）インデックス紙挿入
（１２）各原稿ページに対するページレイアウト。
【００８１】
このほか、一旦行った編集操作を取り消す操作や、さらに取り消した操作をやり直す操作が可能である。これら編集機能により、例えば複数のブックファイルの統合、ブックファイル内で章やページの再配置、ブックファイル内で章やページの削除、原稿ページのレイアウト変更、合紙やインデックス紙の挿入などといった編集操作が可能となる。これらの操作を行うと、図４乃至図６に示す属性に操作結果が反映されたり、あるいはブックファイルの構造に反映されたりする。たとえば、ブランクページの新規追加操作を行えば、指定された箇所にブランクページが挿入される。このブランクページは原稿ページとして扱われる。また、原稿ページに対するレイアウトを変更すれば、その変更内容は、印刷方法やＮ−ｕｐ印刷、表紙／裏表紙、インデックス紙、合紙、章区切りといった属性に反映される。本例における、編集時の表示及び操作例については、以下で詳細に示す。
【００８２】
（ブックファイルの出力例）
以上のように作成・編集されるブックファイルは印刷出力を最終目的としている。利用者が図９に示す製本アプリケーションのＵＩ画面９００からファイルメニューを選択し、そこから印刷を選択すると、指定した出力デバイスにより印刷出力される。この際、まず製本アプリケーション１０４は、現在開かれているブックファイル（編集情報ファイル及び中間ファイル）からデスプールテーブルを作成して電子原稿デスプーラ１０５に渡す。電子原稿デスプーラ１０５は、中間ファイル、本実施形態ではジョブチケットをデスプールテーブルに変換し、それをＯＳの出力コマンド、例えばウインドウズ（登録商標）のＧＤＩコマンドに変換して出力モジュール、例えばＧＤＩに送信する。出力モジュールは、指定されたプリンタドライバ１０６によってデバイスに適したコマンドを生成し、そのデバイスに送信する。
【００８３】
すなわち、図示しない出力モジュールのグラフィックエンジンは、印刷装置ごとに用意されたプリンタドライバ１０６を外部メモリ２１１からＲＡＭ２０２にロードし、出力をプリンタドライバ１０６に設定する。そして、出力モジュールは、受け取ったＧＤＩ（Graphic Device Interface）関数からＤＤＩ（Device Driver Interface）関数に変換して、プリンタドライバ１０６へＤＤＩ関数を出力する。プリンタドライバ１０６は、出力モジュールから受け取ったＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Page Description Language）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２０２にロードされたシステムスプーラを経てインタフェース２１経由でプリンタ１０７へ印刷データとして出力される仕組みとなっている。
【００８４】
ここで、ジョブチケットは、電子原稿ファイル１０３の構成する中間ファイルとして本実施形態に置いて用いている形式である。ジョブチケットは、原稿ページを最小単位とする構造を有するデータである。ジョブチケットにおける構造は、用紙上における原稿ページのレイアウトを定義している。ジョブチケットは１ジョブにつき１つ発行される。そのため、まず最上位にドキュメントというノードがあり、文書全体の属性、例えば両面印刷／片面印刷などが定義されている。その下には、用紙ノードが属し、用いるべき用紙の識別子や、プリンタにおける給紙口の指定などの属性が含まれる。各用紙ノードには、その用紙で印刷されるシートのノードが属する。１シートは１枚の用紙に相当する。各シートには、印刷ページ（物理ページ）が属する。片面印刷ならば１シートには１物理ページが属し、両面印刷ならば１シートに２物理ページが属する。各物理ページには、その上に配置される原稿ページが属する。また物理ページの属性として、原稿ページのレイアウトが含まれる。
【００８５】
ジョブチケットのデータ構造の例を図１２に示す。印刷用のデータでは、文書は用紙の集合で構成されており、各用紙は表、裏の２面で構成されており、各面は原稿をレイアウトする領域（物理ページ）を持ち、各物理ページには、最小単位である原稿ページの集合から構成される。１１０１は文書に相当するデータで、文書全体に関係するデータと、文書を構成する用紙情報のリストから構成される。用紙情報１１０２は用紙サイズなど用紙に関する情報と用紙上に配置される面情報のリストから構成される。面情報１１０３は、面に固有のデータと、面上に配置される物理ページのリストから構成される。物理ページ情報１１０４は、物理ページのサイズやヘッダ・フッタなどの情報と、物理ページを構成する原稿ページのリストから構成される。
【００８６】
電子原稿デスプーラ１０５は、電子原稿ファイルのジョブチケットをデスプールテーブルというテーブル（図１２のジョブチケットをテーブルとして表現したものに相当する。）を作成し、編集情報ファイルに定義された属性や印刷設定に応じて、そのデスプールテーブルを出力モジュールへの出力コマンドに変換する。
【００８７】
（プレビュー表示の内容例）
すでに説明したとおり、ブックファイルが製本アプリケーションによって開かれると、図９に示すユーザインタフェース画面９００が表示される。ツリー部９０１には、開いているブック（以下、「注目ブック」と呼ぶ。）の構造を示すツリーが表示される。プレビュー部には、利用者の指定に応じて、３通りの表示方法が用意されている。第１は原稿ページをそのまま表示する原稿ビューと呼ばれるモードである。原稿ビューモードでは、注目ブックに属する原稿ページの内容が縮小されて表示される。プレビュー部の表示にレイアウトは反映されない。第２は印刷ビューモードである。印刷ビューモードでは、プレビュー部９０２には、原稿ページのレイアウトが反映された形で原稿ページが表示される。第３は簡易印刷ビューモードである。簡易印刷ビューモードでは、各原稿ページの内容はプレビュー部の表示には反映されず、レイアウトのみが反映される。
【００８８】
＜他の文書処理システムの構成例＞
上記実施形態の文書処理システムはスタンドアロン型のシステムであるが、これを拡張したサーバクライアントシステムでもほぼ同様の構成・手順でブックファイルが作成・編集される。ただし、ブックファイルや印刷処理はサーバによって管理される。
【００８９】
図１３はサーバクライアント型文書処理システムの構成を示すブロック図である。クライアント文書処理システムは、スタンドアロン型システムに、クライアントモジュールであるＤＯＭＳ（Document Output Management Service：文書出力管理サービス）ドライバ１０９及びＤＯＭＳプリントサービスモジュール１１０、ＤＳ（文書サービス）クライアントモジュール１０８を加えた構成を有する。このクライアント文書処理システム１２００に、文書管理サーバ１２０１及び印刷集中管理サーバ１２０２及びプリントサーバ１２０３が接続されている。これらサーバは、通常ネットワークによってクライアント文書処理システムと接続されるが、サーバが同時にクライアントとしても機能する場合には、ネットワーク間の通信をシミュレートするプロセス間通信によって接続される。尚、図１３では文書管理サーバ１２０１と印刷集中管理サーバ１２０２の両サーバがクライアントに接続されているが、いずれか一方のみがネットワーク上に存在する場合もあり得る。接続されているサーバが文書管理サーバであれば、そのクライアントモジュールを含む文書管理サーバクライアントシステム１２０１ＳＣが、印刷集中管理サーバ１２０２であれば、そのクライアントモジュールを含む印刷管理サーバクライアントシステム１２０２ＳＣが、スタンドアロン型文書管理システムに追加される。
【００９０】
文書管理サーバ１２０１は、製本アプリケーション１０４により作成・編集されたブックファイルを格納するサーバである。文書管理サーバ１２０１によってブックファイルを管理する場合、ブックファイルは、クライアントＰＣのローカルＨＤに代わって、あるいはそれに加えて、文書管理サーバ１２０１のデータベース１２１１に保存される。製本アプリケーション１０４と文書管理サーバ１２０１との間のブックファイルの保存及び読み出しは、ＤＳクライアント１０８及びＤＳコア１２１２を介して行われる。
【００９１】
印刷集中管理サーバ１２０２は、クライアント文書管理システム１２００に格納された、あるいは文書管理サーバ１２０１に格納されたブックファイルの印刷を管理するサーバである。クライアントにおける印刷要求は、ＤＯＭＳドライバ１０９及びＤＯＭＳプリントサービスモジュール１１０を介して印刷集中管理サーバ１２０２のＤＯＭＳＷＧサーバモジュール１２２１に送信される。集中印刷管理サーバ１２０２は、クライアントのプリンタで印刷する場合にはクライアントのＤＯＭＳプリントサービスモジュール１１０を介して電子原稿デスプーラ１０５に電子原稿データを渡し、プリントサーバ１２０３により印刷する場合には、プリントサーバ１２０３のＤＯＭＳプリントサービスモジュール１２０３に送信する。集中印刷管理サーバは、例えば保存されているブックファイルに対して印刷要求を発行した利用者の資格などについてセキュリティチェックを行ったり、印刷処理のログを保存したりする。このように、文書処理システムは、スタンドアロンとしても、クライアントサーバシステムとしても実現できる。
【００９２】
［本実施形態の文書処理システムの編集操作例］
上記図９は、製本アプリケーション１０４の操作画面である。製本アプリケーションは、文書のページ順の入れ替えや複製、削除などの編集に加え、ステイプルなどの印刷装置の機能設定も行うことができ、指定した印刷装置に印刷することが可能である。図９の左側の領域には、文書の構造を示すツリービューが表示されている。文書は、章の集合で構成されており、各章は原稿ページの集合で構成されている。図９の右側の領域には、各ページの印刷プレビューが表示されている。
【００９３】
＜本実施形態の文書処理システムの属性設定例＞
図１４は、製本アプリケーション１０４の「文書の詳細設定」ウインドウ１４００を示している。このウインドウでは、「文書設定情報４０３」を表示／設定することができる。このウインドウは、図９のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Document」メニューあるいはツールバー上の「Detailed Setting for Document」ボタンから起動される。「文書の詳細設定」ウインドウは、文書全体に影響する属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Finishing、Edit、Paper Sourceの４つのシートから構成されており、図１４は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主にレイアウトに関する設定を行うことができ、用紙サイズや向き、Ｎページ印刷などの設定を指示することができる。このウインドウには、ズームに関するチェックボックスコントロール１４０１、１４０２が配置されている。
【００９４】
図１５は、製本アプリケーション１０４の「章の詳細設定」ウインドウ１５００を示している。このウインドウでは、「章設定情報４０７」を表示／設定することができる。このウインドウは、図９のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Chapter」メニューあるいはツールバー上の「Detailed Setting for Chapter」ボタンから起動される。「章の詳細設定」ウインドウは、章固有の属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Finishing、Edit、Paper Sourceの４つのシートから構成されており、図１５は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主に各章で固有のレイアウトに関する設定を行うことができ、用紙サイズや向き、Ｎページ印刷などの設定を指示することができる。「文書の詳細設定」と「章の詳細設定」で重複する設定項目については「Follow Book Attribute」のチェックボックスコントロール１５０１、１５０２、１５０３を配置している。このチェックボックスにチェックが入っている項目グループについては、文書の設定値をその章にも適用する。このチェックをはずした場合については、次の図１６に示す。章固有の設定としては２種類に分類できる。一つは章でしか持たない設定項目である。もう一つは、上位階層の文書とは異なる独自の設定値を章の階層で保持している場合である。
【００９５】
図１６は、図１５の「章の詳細設定」でチェックボックスコントロール１５０１、１５０２のチェックをはずした状態である。この場合、文書の全体がA3用紙を使っている場合でも、この章を構成するページはA4用紙サイズとする。またレイアウトも、文書では１Page Par Sheetであっても、この章は4 Page Per Sheetでレイアウトするという指定である。「Zoom Arrange」については、チェックがついているので、上位階層である文書の設定値をこの章の設定値として使う。
【００９６】
図１７は、製本アプリケーション１０４の「ページの詳細設定」ウインドウ１７００を示している。このウインドウでは、「ページ設定情報４１１」を表示／設定することができる。このウインドウは、図９のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Page」メニューあるいはツールバー上の「Detailed Setting for Page」ボタンから起動される。「ページの詳細設定」ウインドウは、各ページで固有の属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Editの２つのシートから構成されており、図１７は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主に各ページで固有のレイアウトに関する設定を行うことができ、原稿ページを配置する際の回転角や拡縮率などの設定を指示することができる。「章の詳細設定」と「ページの詳細設定」で重複する設定項目については「Follow Chapter Attribute」のチェックボックスコントロール１７０１を配置している。このチェックボックスにチェックが入っている項目については、章の設定値をそのページにも適用する。このチェックをはずした場合については、次の図１８に示す。
【００９７】
図１８は、図１７の「ページの詳細設定」でPage Rotationの設定を変更した状態を示している。コントロール１７０１で、原稿ページをレイアウトする際にページの上が左になるように回転して配置する設定にしている。この項目については「Follow Chapter Attribute」のチェックボックスが無いので、章や文書に重複する設定項目が無いので、このウインドウに表示されている設定が常にページの設定値となる。１７０１のチェックがある場合、例えば「Zoom Arrange」の項目は、章にも重複する設定項目があるので章の設定値をページの設定値とする。章で該当する「Zoom Arrange」の項目が「Follow Book Attribute」のチェックがある場合、章の設定値は上位階層である文書の設置値を使うので結局ページの設定値は文書の設定値を使うことになる。章で該当する項目のチェックが外れている場合、章固有の設定値を持っているので、ページの設定値はその章固有の設定値を使う。
【００９８】
尚、上記設定画面で設定されたチェックボックスコントロールの情報は、専用の領域に保持されてもよいが、図３に示した設定情報内に属性の１つとして保持するのが望ましい。この場合には、図５及び図６にチェックボックスコントロールの情報を保持する領域が追加される。
【００９９】
＜本実施形態の文書処理システムの文書編集の表示例＞
上位階層と重複する設定項目を上位階層の設定値を使わないようにした場合、つまり、チェックボックスコントロール１５０１や１７０１のチェックをはずした場合のアプリケーションの表示形式を、図１９に示す。
【０１００】
図１９の例では、文書は二つの章からなり、各章は９ページの原稿データを持っている。最初の章のレイアウトを４ＵＰ（４ｉｎ１とも表記する）に、２番目の章の先頭ページ（文書全体では１０ページ目）に回転を指定した場合の表示例である。右側のプレビューにおいて、１〜３ページ目には１ページ上に４つの原稿がそれぞれ配置されている様子が表示されている。そして、第４ページ目のデータである「A」の文字が回転している様子が表示されている。ツリービューでの章やページ固有の設定を行った場合の表示形式を説明する。最初の章に対するアイコン１９０１が変化して、この章に章独自の設定がなされていることを示している。２番目の章の先頭ページに対するアイコン１９０２が変化して、このページに特別な設定がなされていることが示されている。
【０１０１】
＜本実施形態における文書処理装置への入稿方法＞
文書処理装置である製本アプリケーション１０４に電子原稿として文書を入稿するための方法としては、前述したように、ホストコンピュータ上の任意のアプリケーションにより生成された文書（画像ファイルも含む）を、電子原稿ライタを用いて電子原稿フォーマットに変換する方法が既に考えられている。そして、本発明では、ホストコンピュータと双方向インタフェースを介して接続されるスキャナ部を備える画像読取装置（単体のスキャナもしくは入出力機能を備える複合機）で読み取られた画像ファイルを、製本アプリケーション１０４で扱う電子原稿（ブックファイル）として入稿する機能を提供する。以下、紙原稿から読み取られた画像ファイルをブックファイルに変換する入稿方法について説明する。
【０１０２】
前述したように、スキャナ部で読み取られた画像ファイルをホストコンピュータで受信する方法としては、プルスキャン方法とプッシュスキャン方法がある。プルスキャン方法は、製本アプリケーション１０４からスキャナドライバを介して、画像読取装置に対してスキャン指示を送信し、その応答として画像ファイルを取得する。このプルスキャン方法は既知の技術であり詳細な説明は省略する。そして、取得された画像ファイルは、電子原稿ライタを用いてブックファイルとして生成され、後述する章分割機能を用いて新規の章として入稿される。また、プッシュスキャン方法は、入出力機能を備える複合機としての画像読取装置の操作パネルで、操作者が読み取った画像を送信する先の送信先アドレス（ネットワーク上のホストコンピュータのＨＤの所定フォルダへのパス）を指定し、指定された送信先のアドレスに対して読み取った画像ファイルを送信することにより実現される。このプッシュスキャン方法もまた既知の技術であるので、詳細な説明は省略する。プッシュスキャン方法を用いた電子原稿の入稿は、ホストコンピュータ上で、プッシュスキャンにより画像ファイルが送信される先である所定のフォルダを、定期的に監視しており、所定のフォルダに画像ファイルが送信されたことを検知した場合に、その画像ファイルを電子原稿ライタに渡すことにより、ブックファイルとして生成され、後述する章分割機能を用いて新規の章として入稿される。
【０１０３】
このようにして、画像読取装置で読み取られた画像ファイルを製本アプリケーション１０４にブックファイルとして入稿することが可能となっている。次に、本発明の特徴である画像読取装置で読み取られた画像ファイルを製本アプリケーション１０４にブックファイルとして入稿する際の章分割の方法について説明する。特にここでは、合紙により分割された文書の原稿をブックファイルに変換する方法を説明する。
【０１０４】
＜本実施形態における紙媒体文書の電子化方法＞
（インポート時のオプション）
以下、図２０を参照して紙媒体文書の電子化処理について説明するが、その前にまず紙原稿の電子化処理において利用者が設定可能なオプションについて説明する。本実施形態では、図３３及び図３４に示すユーザインターフェースにより操作者がインポート時の処理条件を設定することができる。これら指定項目は、指定に応じた値が所定の記憶領域に記憶されて、インポート処理時に参照される。
【０１０５】
図３３は、プッシュスキャン方法を用いた場合に、スキャンされた画像ファイルの送信先フォルダに投入される画像ファイルに対するインポート方法を設定するためのダイアログボックスの一例を示すＵＩ図である。このダイアログは、たとえば図１９のメニューの「Ｐｒｉｎｔ（印刷設定）」欄に用意された「インポート」項目を選択することで表示され、設定可能となる。図３３においては、インポート方法３２０１により、スキャンされた画像データを製本アプリケーション（図３３ではＰＭと表記）によりブックファイルへインポートするか、あるいはフォルダ内に格納しておくかいずれかを選択できる。図３３では示されていないが、フォルダに格納する場合には、フォルダを指定することもできる。ブックファイルへインポートする旨の指定がされている場合には、製本アプリケーション１０４は、画像データをスキャナから取り込んで処理を施す。またフォルダに格納する旨の指定がされている場合には、製本アプリケーション１０４は処理対象の画像データを所定のフォルダから取り込む。
【０１０６】
またインポート方法３２０２により、スキャンされた画像データを既存のドキュメント（すなわちブックファイル）に追加するか、あるいは新規のブックファイルを作成するかが選択できる。既存のドキュメントに追加する場合には、追加されるドキュメントを指定できる。インポートされる画像データを既存のドキュメントに追加する旨の指定がされている場合には、既存のブックファイルが指定されてオープンされ、その後にそのブックファイルに対して図２０の処理が実行されてインポートされる画像データ新たなページとして追加される。また、インポートされる画像データを新規のドキュメントとするする旨の指定がされている場合には、図２０の手順に先立って、新規のブックファイルが作成され、その後にその新規なブックファイルに対して図２０の処理が実行される。
【０１０７】
図３４は、プルスキャン方法を用いる場合に、製本アプリケーションに投入されたブックファイルに対する自動章分割を行う設定をするためのメニューバーの一例を示すＵＩ図である。図３４は、図３３と同じウインドウではあるが、「インポート時の処理」タブを選択することで入力可能となる。図３４において、白紙削除チェックボックス３３０１がチェックされると、所定記憶領域に確保された白紙削除フラグがセットされる。そして、本実施形態では、インポート処理時にこの白紙削除フラグがセットされている場合には、白紙ページが削除される。ここで白紙ページとは、片面読み込みの場合には１ページの白紙であり、両面読み込みの場合には、連続する奇数ページ番号と偶数ページ番号の２ページがともに白紙の場合、当該連続する２ページをいうものとする。さらに「連続する白紙は削除しない」チェックボックス３３０２が指定されると、対応するフラグがセットされる。これがセットされている場合には、複数枚の白紙が連続している場合にも、その白紙をそのままブックファイルにインポートする。白紙削除フラグがセットされており、かつこのチェックボックス３３０２がチェックされていない場合には、たとえば１枚だけ白紙をインポートする。
【０１０８】
また、章の分割チェックボックス３３０３がチェックされていれば、章分割フラグがセットされる。章分割フラグがセットされていなければ、章分割の処理は行われず、インポートされる原稿画像はすべてひとつの章にまとめて挿入される。
【０１０９】
また、章分割フラグがセットされている場合には、分割方法ボタン３３０４が選択可能となる。分割方法としては白紙ページで章を分割する設定（白紙分割設定）と、原稿が片面／両面の切り替わりで分割する方法とが選択できる。さらに、「白紙を合紙にする」（合紙化設定）チェックボックス３３０５が、白紙ページでの章の分割が選択されている場合には選択可能である。これらの設定は、ＲＡＭに確保された各設定ごとの領域に、その旨を示す値として記憶される。さらにこれら設定は、一つの設定ファイルとしてハードディスクに保存されてもよい。
【０１１０】
「白紙を合紙にする」チェックボックス３３０５がチェックされている場合には、章が分割されると、章の間に挿入された白紙は削除され、その代わりに当該文書のブック属性における合紙設定（図４が設定番号１３）が設定される。設定される内容は、合紙が挿入される旨の合紙フラグ、および合紙を供給する部位を示す符号が含まれる。合紙を供給する部位を示す符号には、たとえば「給紙カセットと同じ」であるとか、特定の給紙カセットであるとか、あるいはオプションのインサータがプリンタに備えられていれば、そのインサータが指定できる。したがって、白紙を合紙化する場合には、「白紙削除」チェックボックス３３０１の設定に無関係に白紙ページは削除される。
【０１１１】
図３６は、自動章分割を行う際の詳細設定を設定するためのダイアログボックスの一例を示すＵＩ図である。自動章分割は、既存のブックファイルを選択して操作者が自動章分割の適用を指示することで、当該ブックファイルに対して施される処理である。図３４の設定はインポート時に参照される点で図３６の設定と相違するが、各チェックボックスの意味は図３４に示したものと同様である。なお、図３５は、図３６のユーザインターフェース画面を表示させるためのメニュー画面を示している。ここでドキュメント全体または選択した章のいずれに対して章分割を行うか指示できる。たとえばインポート時に図３４の「章の分割」チェックボックス３３０３をチェックしていなくとも、インポート完了後に章分割を行えば、白紙挿入部分などで章を分割できる。
【０１１２】
（インポート処理）
図２０は、インポート処理の手順を示すフローチャートである。図１０の手順は他のアプリケーションで生成された文書をインポートする場合の手順であったのに対して、図２０は紙原稿をインポートするために、紙原稿を読み込んで文書構造を解析し合紙設定を行う際の全体的な処理を示すフローチャートである。なお本実施形態ではスキャナから読み込まれる原稿を紙原稿と呼ぶが、もちろん紙以外のシート状の媒体に印刷された原稿をも含む。図２０の手順は、スキャナ１０８とコンピュータ１００とを含むシステム全体により実行される。特にステップ２００１はスキャナにより、ステップ２００２〜２００６は製本アプリケーション１０４により実行される。
【０１１３】
ステップ２００１で紙原稿を電子化する。自動化を考慮すると原稿自動送り装置付きのスキャナが望ましいが、処理としてはスキャナの種類は問わない。また、電子化されたデータの形式もTIFF, JPEG, BMP，PDF等複数のフォーマットが考えられるが、どのような形式であっても本発明を適用することができる。前述したように、原稿スキャンの処理方式は大きく２種類に分類できる。一つは、プッシュスキャンと呼ばれる方式であり、例えば、ＰＣ上のフォルダを共有設定し、スキャナが取り込んだ画像データファイルをその共有フォルダにコピーする方式である。もう一つはプルスキャンと呼ばれる方式で、TWAINやISIS等のスキャナドライバを経由してスキャナから画像データを直接受け取る方式である。プッシュスキャンの場合にはステップ２００１とステップ２００２の処理とは非同期に実行され得るが、プルスキャンの場合には、ステップ２００１による原稿の電子化とステップ２００２によるその読み込みは一連の処理としてコンピュータの管理下で同期を取りつつ実行される。
【０１１４】
次にステップ２００２へ進み、読込み方式を示す情報を製本アプリケーション１０４が取得する。ここでは、合紙を判定するための参考情報となる片面読込みであるか、両面読込みであるかが分かれば十分である。プル方式であれば、ドライバとＩ／Ｆを取り決めておくことでこの情報を取得することができる。たとえば、コンピュータ１００からスキャナ１０８へと片面／両面の別を示す指示を与えてプルスキャンするために、製本アプリケーション１０４ではその片面／両面指定のための情報を読み取ることで判定できる。
【０１１５】
また、プッシュスキャンの場合は、スキャン時に作成するファイル名について、片面／両面の区別をつけられるような取り決めをしておけば、製本アプリケーション１０４が画像データファイルを読み出す際に、そのファイル名に基づいて両面読み込みされたデータか、片面読み込みされたデータかを自動的に判定することが可能となる。例えば、片面読込みの場合にはファイル名の先頭に"S_"を付け、両面読込みの場合には、“D_”をつける事でファイル名から判定することが可能となる。また、全ページをスキャンしてデータ中の空白ページから判定する方式も可能である。例えば、「空白ページが１ページ置きに出現した場合」、「連続する奇数・偶数の２ページが共に空白ページであるようなページが存在する場合」のような条件で両面ジョブと判断し、それ以外は片面だと判定する方式である。或いは、自動判定ではなく、情報を取得するためのダイアログ画面を表示して片面読込み／両面読込みなのかを指定させる方式でも良い。いずれの方法であっても、判定結果は後の工程で参照するために、参照可能なフラグ等の値（たとえばＲＡＭに確保した両面／片面フラグの値）として保存される。
【０１１６】
ステップ２００３では、電子化されたデータ（画像データ）を本システム特に製本アプリケーション１０４に読み込んでいる。プッシュスキャン方式であれば、原稿のスキャンにより作成された画像データが格納される共有フォルダを監視し、画像データファイルができたところで自動的にシステムがファイルを読み込む方法が可能である。また、プル方式であれば、スキャナドライバから直接データを取得することが可能である。読み込まれた画像データを基に、原稿の１ページに相当する画像データを１ページとする電子原稿ファイル１０３が作成される。この手順の詳細は図２１で説明する。
【０１１７】
次にステップ２００４へ進み、製本アプリケーション１０４は、合紙判定処理を行う。処理の詳細は、図２２、図２３、図２４で説明する。合紙ページを判定したらステップ２００５へ進み、製本アプリケーション１０４は、判定された合紙ページの前後でブックファイルの章を分割し、原稿の論理的な構造を文書中のデータ構造に反映する。この処理の詳細は図２５で説明する。次にステップ２００６へ進み、空白ページを文書の「用紙挿入設定」へと変更する。この処理の詳細は図２６で説明する。
【０１１８】
以上の手順により、紙原稿から読み込まれた画像データが紙原稿の文書の構成を反映した電子ファイルに変換される。このファイルは、製本アプリケーション１０４によりその内容を表示することができるし、また、印刷することもできる。印刷時には、章間の合紙の設定がされている場合には、電子原稿ファイル１０３としては合紙である白紙ページが含まれていなくとも、ブック属性の合紙（図３の文書設定情報４０３に含まれる、図４の設定番号１３）設定として、「合紙を挿入する」旨の設定がされていれば、印刷あるいは表示される文書中では、合紙が白紙として出力される。そのために、電子原稿ファイルのデータの表示処理においては、合紙設定があれば章間に白紙ページを挿入して表示する。また、印刷処理においては、たとえば合紙を挿入する位置において、設定に応じたカセットやインサータからの合紙の給紙をするための命令を生成して挿入し、プリンタに送信する。
【０１１９】
このようにして、読み取った紙原稿をその形式も含めて再現した電子原稿ファイルを生成でき、また、それを出力する際にも、元の紙原稿をそのまま再現した文書を出力できる。
【０１２０】
（電子化データ読み込み処理）
図２１は、図２０のステップ２００３の電子化データ読み込み処理の手順を示すフローチャートである。まずステップ２０１１で、製本アプリケーション１０４は、紙原稿の電子化データ（画像データ）を全て読み込んだか判定する。ここで画像データは、紙原稿の１ページ分が１ファイルを構成している。したがってプッシュスキャンの場合には、所定フォルダ内のすべての画像ファイルを読み終えたかが判定される。またプルスキャンの場合には、たとえば読み取り終了の信号がスキャナから入力されたかが判定される。また、画像データは、原稿のページの順序を判別できるように構成される。たとえばそのファイル名を時系列に付しても良い。あるいは、ファイル属性の作成時刻によりファイルの作成された系列を判定し、その順序をページ順とみなすこともできる。そして、ステップ２０１２、ステップ２０１４での読み込みは、その順序に従って行われる。
【０１２１】
ステップ２０１２では、製本アプリケーション１０４は、１ページ（すなわち１つのファイル）の画像データを読み込む。読み込みの順序はたとえば先頭のページに相当するファイルから生成された時系列である。ファイルにページ番号を示す名称が与えられていれば、その番号に従う。ステップ２０１３では、製本アプリケーション１０４は、片面読み込みか両面読み込みかの別を、図２０のステップ２００２で判別した結果を基に判定する。両面であれば、ステップ２０１４でさらにもう１ページ分の画像データを読む。
【０１２２】
ステップ２０１５では、製本アプリケーション１０４は、読み込んだ画像データが白紙であるか判定する。ここでは、両面読み込みならば、ステップ２０１２およびステップ２０１４で読み込んだ２ページ共に白紙であるかが判定され、片面ならば１ページのみについて白紙であるかが判定される。
【０１２３】
白紙である場合には、ステップ２０１７において白紙削除フラグをテストする。白紙削除フラグは、図３４の「白紙削除」チェックボックス３３０１のチェックに応じてセットされる。白紙削除フラグがセットされている場合には、次にステップＳ２０１８で、製本アプリケーション１０４は、章分割フラグがセットされ、かつ、分割方法として「白紙分割」設定がされているかを判定する。章分割フラグは図３４の「章の分割」チェックボックス３３０３がチェックされた際に、「白紙分割」設定は、分割方法選択欄３３０４において、「白紙ページで章を分割」が選択されている場合に設定される。
【０１２４】
ステップ２０１８の判定の結果、章分割フラグがセットされていないか、あるいはセットされていても「白紙で章分割」が選択されていなければ、白紙を削除するために、白紙ページは読み捨てられる。したがって、読み込んだページは放置し、ステップ２０１１に進んで次のページを読む。
【０１２５】
一方、白紙削除フラグがセットされていても、章分割フラグがセットされており、かつ、「白紙で章分割」が選択されていれば、白紙を後のステップにおける章分割に使用するために、ここでは削除せず、ステップ２０１６で読み込んだページを現在の着目章に追加する。先頭ページの読み込み直後では着目章が存在しないので、この場合には章を新たに生成してそれを着目章とする。読み込んだページが白紙ページでない場合や白紙削除フラグがセットされていない場合にも同様にステップ２０１６において読み込んだページを現在の着目章に付加する。
【０１２６】
ここで、電子原稿ファイル１０３中の編集情報ファイルにおいて、章にページを付加する操作を図３の例で説明する。まず、現在の章４０５について、インポートされる画像を新たなページデータとしてページデータリスト４１３に付加し、現在の章情報４０５のページ情報リスト４０８のページデータリンクに新たなページデータのためのリンクを付加し、そのページデータリンクにより、インポートされた画像のページデータを現在の章情報４０５にリンクする。
【０１２７】
一方電子原稿ファイルに含まれる中間ファイルであるジョブチケット（図１２参照）は、階層構造を有するものの編集情報ファイルと異なり章という構造を有していない。ジョブチケットでは共通する用紙（シートとも呼ぶ。）の束を用紙情報１１０２で、さらに共通する用紙の束中において共通する面の設定（たとえば両面印刷と片面印刷）を有する部分的な用紙の束を面情報１１０３でまとめるという構造を有する。したがって、たとえば１文書中に異なる複数の用紙サイズが含まれる場合にはそれぞれのサイズごとの用紙情報が含まれ、用紙サイズや紙質が１つであれば、印刷方法が異なっても用紙情報は１つあれば十分である。本実施形態では、スキャナのＡＤＦ機能等を用いてまとめて読み込まれる原稿画像は一定のサイズなので、用紙情報１１０２に関しては、最初の１ページに対応する用紙情報を１つ作成しておけばそれで十分である。そのため、本実施形態では、編集情報ファイルの「章」に対応するジョブチケットの階層は「面情報」に相当する。もちろんこれは本実施形態では用紙の設定は一定としているからであって、章ごとに用紙サイズ等の用紙設定が異なるのであれば、章に相当するジョブチケットの階層は用紙情報となる。このように、編集情報ファイルにおいて章ごとに相異なる属性の種類に応じて、ジョブチケットにおいて章に対応する階層は決定される。そこで本実施形態においてジョブチケットに対する新たなページの付加は、図１２を参照すると次のようになる。すなわち、現在の章に相当する面情報１１０３にリンクする新たな物理ページ情報１１０４を追加し、さらにその物理ページ情報１１０４にリンクする新たな原稿ページ情報１１０５を追加する。そして原稿ページ情報１１０５のページデータリンクにインポートされる画像データを新たなページデータとしてリンクする。
【０１２８】
以上の手順により、ステップ２００３において、電子原稿ファイルが作成されるとともに、このステップ以降で使用されずしかも削除が指示されている白紙ページは削除される。なお、この手順では、電子原稿ファイルは新たに作成される場合もあるし、既存の電子原稿ファイルに追加される場合もある。追加される場合には、読み込まれた画像データにより新規な章が作成される場合もあるし、既存の章に追加される場合もある。ただし、図２０では新規な章が追加されるものとして説明した。
【０１２９】
（合紙判定処理）
図２２はステップ２００４の合紙判定処理の大きな流れを示すフローチャートである。まずステップ２１０１で片面読込みであるか両面読込みであるかを判定する。この判定は、ステップ２００２の処理結果をフラグとして保持しておき、そのフラグを参照することで高速に判定することができる。片面読込みの場合はステップ２１０３へ、両面読込みの場合はステップ２１０２へと進む。ステップ２１０２は両面データの場合の判定処理であり、詳細は図２４で説明する。ステップ２１０３は片面読込みの場合の判定処理である、詳細は図２３で説明する。なお、図２２の手順は、合紙により章分割するためのものなので、章分割フラグがセットされていない場合にはスキップした方が処理負荷の軽減のためには望ましい。
【０１３０】
図２３は、片面読込み時の合紙判定処理を詳細に説明したフローチャートである。ステップ２２０１で、カウンタｉを初期化する。ここでは、１ページ目が先頭ページであるとする。ステップ２２０２では終了判定を行う。ｉ番目のページが存在すれば次のステップへ、存在しない（最終ページを超えている）場合は終了する。ステップ２２０３はｉ番目のページが白紙であるかを判定する。スキャン画像が空白であるかの判定方式は、本発明では特に限定しない。空白ページである場合ステップ２２０４へ、そうでない場合はステップ２２０５へと進む。ステップ２２０４では、合紙判定を行う。片面印刷の場合、白紙が検知されたらその空白ページは無条件で合紙と判定し、合紙テーブルにカウンタiを記録する。そしてステップ２２０５へと進み、カウンタを１進め、再びステップ２２０３へ戻り終了判定を行う。合紙テーブルはＲＡＭなどの書き換え可能な記憶領域に設けられたテーブルである。
【０１３１】
図２４は、両面読込み時の合紙判定処理を詳細に説明したフローチャートである。ステップ２３０１でカウンタｉを初期化する。図２３同様、１ページが先頭とする。ステップ２３０２では終了判定を行う。ｉ番目のページが存在すれば次のステップ２３０３へ進み、存在しない場合は終了する。ステップ２３０３では、ｉ番目のページ空白ページであるかを調べる。空白ページの場合はさらにステップ２３０４へ進み、空白で無い場合はステップ２３０６へと進む。ステップ２３０４では、（ｉ＋１）番目のページが空白かを判定する。ここで、ｉ番目、（ｉ＋１）番目のページが両方とも空白ページであった場合、表面、裏面が両方空白であるので合紙であると判定し、ステップ２３０５へと進み、合紙テーブルに（ｉ，ｉ＋１）の組を記録する。そして、ステップ２３０６へと進みカウンタを２進める。こうすることでカウンタは常に奇数となり、表面を指し示すことが可能となる。そしてステップ２３０２へ戻り次のデータの処理を行う。
【０１３２】
なお、ステップ２３０６でカウンタを１ずつ進め、ステップ２３０５で連続する奇数・偶数ページが空白であった場合、スキャンミスの可能性をユーザに報告するなどのバリエーションを実装してもよい。
【０１３３】
このようにして、ステップ２００３で作成した電子原稿ファイル中を先頭から走査して白紙ページがあれば、そのページ番号を合紙テーブルに登録する。
【０１３４】
（章分割処理）
図２５は、ステップ２００５の章分割処理の詳細を説明したフローチャートである。ステップ２４０Ａで、章分割フラグをテストする。章分割フラグがセットされていなければ章分割は行わない。セットされていれば、次に分割方法として「白紙分割」設定がされているかステップ２４０Ｂで判定する。白紙分割でなければ、ステップ２４０Ｃにおいて両面と片面との境界で章を分割する。本発明は白紙分割に係るものであるので、この処理についてはこれ以上の説明は省略する。
【０１３５】
一方、白紙分割設定がされている場合には、ステップ２４０１でカウンタｉを初期化する。ｉは着目している章の番号を示す。次にステップ２４０２へと進み、ｉ番目のページがあるか判定してなければ処理を終了する。終了しない場合は、ステップ２４０３へと進み、合紙テーブルに（ｉ，ｉ＋１）の組が記録されているかをチェックする。記録されている場合は、ステップ２４０５へと進む。記録されていない場合は、さらにステップ２４０４へと進み、合紙テーブルにｉが記録されているかをチェックし、記録されていればステップ２４０５へ、記録されていない場合はステップ２４０８へと進む。
【０１３６】
ステップ２４０５は、先頭ページを例外扱いするための判定である。先頭ページの場合に章を分割する処理を行うと、ページを含まない章ができてしまう。これを防ぐために、先頭ページの場合は章を分割する処理をせずにステップ２４０８へとジャンプする。
【０１３７】
ステップ２４０６と２４０７は、章を分割する処理を示している。まず、ステップ２４０６で新しい章を作成する。章情報４０５をつくり、章情報リスト４０４の末尾に追加する。そしてステップ２４０７へ進み、ページ情報リスト４０８をｉ番目で切り離し、ステップ２４０６で作成した新しい章のページ情報リストとする。
【０１３８】
次にステップ２４０８へと進み片面読込みの処理であったかを判定し、片面読込みの場合はステップ２４０９へと進んでカウンタを１増やし、両面読込みの場合はステップ２４１０へと進みカウンタを２増やす。両面の場合にカウンタを倍速で増やさなくてもよければ、２４０８〜２４１０はステップ２４０９の１ステップで置き換えることができる。また、ステップ２４０３〜２４０４は、連続したステップではなく、片面読込みの場合はステップ２４０４、両面読込みの場合はステップ２４０３だけを行ってもよい。
【０１３９】
ここで、ステップ２４０６およびステップ２４０７における章の分割の際における電子原稿ファイル１０３に対する操作を、図３及び図１２を参照して説明する。
【０１４０】
まずステップ２４０６においては、図３に示す編集情報ファイルに対して、新たな章情報を作成して着目章の属する文書情報の文書情報リスト４０４にリンクする。図１２に示す中間ファイルは、前述のように、ジョブチケットにおいては編集情報ファイルに対応する章という構造は有していない。そのため、章に対応する階層は必ずしも一定ではない。しかし、本例では用紙属性は異なる章間で同一であるとすれば、面情報１１０３の階層を章に対応させることができる。したがって、ジョブチケットについては、ステップ２４０６において、新たな面情報１１０３を作成して、現在の面情報が属する用紙情報１１０２にリンクする。
【０１４１】
また、ステップ２４０７については以下のようになる。まず編集情報ファイルについては、現在の章情報にリンクされたページ情報のうち、第ｉページから最終ページまでのデータを、作成した新たな章情報にリンクするよう移動する。
【０１４２】
一方ジョブチケットについては、現在の章に相当する面情報にリンクされる物理ページ情報以下のデータを、作成した新たな面情報にリンクするように移動する。
【０１４３】
このようにして、白紙での章分割が選択されている場合には、紙原稿に挿入された白紙ごとに、電子化された文書においても章が分割される。
【０１４４】
（合紙化処理）
図２６は、ステップ２００６の合紙化処理の詳細を説明したフローチャートである。ステップ２５００において、章分割フラグをテストし、セットされていなければ処理を終了する。一方、章分割フラグがセットされていれば、ステップ２５０１で、合紙化設定が設定されているか、すなわち合紙を白紙ページから用紙挿入設定に変更するかを判定する。合紙化設定がされていない場合、すなわちユーザが空白ページを原稿として残す設定をしていればそのまま終了する。章を分割した時点で、原稿の論理的な区切りと章の区切りを一致しており、印刷結果も空白用紙が有る状態になっているので、設定変更しないという選択をする事も十分考えられるからである。
【０１４５】
一方、合紙化設定がされている場合、すなわちユーザが空白ページを合紙挿入設定に変更する設定をしていればステップ２５０２へと進む。ステップ２５０２では、章の区切りに空白用紙を挿入する設定をオンにする。この設定は、図３の文書設定情報４０３に含まれ、図４の属性情報番号１３の「合紙」属性に含まれる。この属性において、合紙設定がセットされる。合紙をどこから供給するかについても指定可能であるが、本実施形態では、印刷用の給紙カセットから供給されるよう、給紙口が設定される。
【０１４６】
そしてステップ２５０３へと進み、章を順に処理するためのカウンタｉを初期化する。カウンタｉは着目章を示す。ステップ２５０４でｉ番目の章があるかを判定する。全ての章で処理が終わっていれば処理は終了である。
【０１４７】
まだ未処理の章が残っていればステップ２５０５へ進み、片面読込みであるかを判定する。片面読込みであればステップ２５０６へ進み、章の先頭ページが空白ページであるかを調べる。この分岐は、文章の最初には合紙を組み込んでいない場合に対応するための処理である。章の先頭ページが空白ページでなければページを削除してはならない。ステップ２５０６で空白ページの場合はステップ２５０７へと進み、章の先頭の空白ページを削除する処理を行う。ステップ２５０７では、編集情報ファイルの章のページ情報リスト４０６の先頭ページ情報４０９とページデータリスト４１３から該当する原稿データを削除する。またジョブチケットにおいては、白紙ページの原稿ページを含む物理ページ情報以下を削除する。ステップ２５０６で空白ページでは無いと判定された場合はステップ２５１０へとジャンプする。
【０１４８】
ステップ２５０５で両面読込みであった場合、ステップ２５０８へと進み、ステップ２５０６同様、章の先頭用紙に相当するページが空白であるかを判定する。空白ページで無い場合は、ステップ２５１０へとジャンプする。ステップ２５０８で空白ページだと判定された場合は、章の先頭から２ページ分のデータを削除する。これもステップ２５０７同様、章のページ情報リストから先頭のページ情報４０９を２ページ分削除し、対応するページデータリストを文書から削除する。ジョブチケットについてもステップ２５０７と同様である。
【０１４９】
ステップ２５１０は着目章が文書の先頭の章であるかを判定する。先頭章の場合は、ステップ２５１１へとすみ、先頭の章には合紙を挿入しない設定を記録する。すんわち、図４のブック属性の内、属性番号１３の「合紙」設定には、文書の先頭の章には合紙を挿入しない旨の設定情報を含み、ステップ２５１０ではそれをオンに設定する。図２６では先頭章ではない場合は特に何もしていないが、任意の位置で合紙を挿入しない設定が可能であれば、合紙を挿入しない章の番号としてカウンタｉを記録してもよい。
【０１５０】
そしてステップ２５１２へと進み、カウンタｉを１増やし、再びステップ２５０４に戻り終了判定を行う。
【０１５１】
以上のようにして、章の先頭の白紙ページを削除してその代わりに、文書設定（ブック属性）について、章間における「合紙挿入」の設定をセットすることができる。
【０１５２】
図２７の符号２６０１は、空白ページが挟み込まれた片面原稿の一例を示す。この例では、先頭および３ページ目と４ページ目との間に空白ページが存在している。図２７の符号２６０２は、原稿２６０１の原稿を片面スキャンした場合に作成される電子データの例を示す。
【０１５３】
図２８の符号２７０１は、空白ページが挟み込まれた両面原稿の一例を示す。この例では、先頭および原稿の２枚目と３枚目の間に空白ページが存在している。図２８の符号２７０２は、原稿２７０１の原稿を両面スキャンした場合に作成される電子データの例である。なお、以下の例では、空白ページによる章分割および合紙化設定がされている場合の例である。
【０１５４】
図２９は、図２７の原稿を読み込んだ場合の画面表示例である。一つの章に全てのページが所属している。符号２８０１は空白ページに相当する電子原稿ページ（ページ番号１−１と１−５）である。
【０１５５】
図３０は、図２０のステップ２００５を終えた時点の画面表示例である。３ページ目と４ページ目の間にある空白ページ１−５で章が分割され、二つの章ができている。この時点では、空白ページ２９０１が残っている。
【０１５６】
図３１は、図２０のステップ２００６を終えた時点の画面表示例である。原稿からは２７０１に相当する空白ページが削除され、合紙の設定に置き換わっている。
【０１５７】
図３２は、図３１における用紙挿入設定画面の例である。コンボボックス３１０１で白紙原稿の代わりに合紙を挿入する設定が有効になっている事が示されている。この設定の表示は、文書設定情報（ブック属性）のうち、「合紙」属性に基づいて表示されている。図２６のステップ２５１１で先頭の章に白紙用紙が無いことが記録された場合、先頭の章に合紙を挿入しない設定となるため、その設定値がチェックボックス３１０２において表示される。そのためチェックボックス３１０２にはチェックが入る。
【０１５８】
＜本実施形態における合紙化処理された文書の印刷制御方法＞
次に電子原稿デスプーラ１０５における印刷処理の詳細を説明する。本発明を適用可能なプリンタなどの印刷装置は、ブックファイルが持つブック・章・ページの階層構造と同様に、ジョブ・バインダー・ページという階層構造をもつ。基本的に、ブックに対する設定は印刷装置のジョブに、章に対する設定は印刷装置のバインダーに対して適用することで、階層構造を持った文書の印刷設定に従った印刷装置の制御が可能となる。
【０１５９】
電子原稿デスプーラ１０５は、まずジョブ開始の発行を行う。そしてジョブの印刷方法属性にブックの印刷方法（片面印刷または両面印刷）をセットする。ブックの印刷方法には製本印刷も選択肢にあるが、本実施例では片面/両面印刷制御に関して説明し、製本印刷については省略する。なお、実際には、バインダーの属性としても印刷方法を設定しているので、ブックの印刷方法設定は、この場合には意味がない。あるいは、ブックファイルでは、ブックの印刷方法属性が両面印刷の場合のみ、章の印刷方法に片面/両面（ブックと同じ）を設定できる例を示したのと同様、ブックの印刷方法にも両面を指定する必要がある場合もある。本実施例ではブックの印刷方法属性をそのままジョブの印刷方法属性に設定することで、どちらの場合でも制御可能である。
【０１６０】
次に、印刷方法を含むジョブの属性を発行し、現在処理中の章番号を初期化する。次に、すべての章を処理済みか判定し、処理済の場合にはジョブ終了を発行して、ブックの印刷処理を終了する。未処理の章が残っている場合には、処理対称の章を一つ進め、すべての章に対して上記処理を順次実施する。
【０１６１】
次にバインダー開始を発行し、バインダーの印刷方法属性に現在処理中の章の印刷方法を設定して、印刷方法を含むバインダー属性を発行する。続いて処理中の章の各ページの印刷処理を実行する。章内の印刷処理が終了すると、バインダー終了を発行し、すべての章が終了するまでバインダ発行の処理を繰り返し、すべての章の片面/両面印刷設定をプリンタに伝えることができる。
【０１６２】
以下に、上記印刷処理が、電子原稿デスプーラ１０５、プリンタドライバ１０６、およびプリンタ１０７の間でどのように制御されるかを示す。
【０１６３】
まず、電子原稿デスプーラ１０５は、ＯＳの印刷処理手順に従って、例えばWindows（登録商標）OSであれば、CreateDC(), StartDoc()など、印刷ジョブを生成する処理を実行する。この処理は、GDIを経由して、プリンタドライバ１０６に通知され、プリンタドライバ１０６は、ジョブ生成処理およびジョブ属性設定処理を行う。具体的には、ジョブの開始、印刷方法設定などを含むジョブ属性をプリンタへ指示するコマンドを生成し、プリンタへデータを送信するためのOSの手続きを経て、プリンタ１０７へコマンドを送信する。
【０１６４】
次に、電子原稿デスプーラ１０５は、バインダー開始の発行処理でExtEscape(BINDER_START)を実行し、プリンタドライバ１０６へ、独立したフィニッシング属性を指定可能なバインダーの開始を通知する。具体的には、章の印刷開始の通知を意味している。次にバインダー属性の発行処理でResetDC()を実行し、バインダー属性をプリンタドライバ１０６へ通知する。具体的には、章の合紙挿入やステイプル設定を含むバインダー属性をプリンタドライバ１０６へ通知する。なお合紙は白紙ページとしてプリンタに送信しても良い。プリンタドライバ１０６は、これらの処理を受けて、プリンタ１０７に対して、バインダーが開始されたことを通知するバインダー生成処理およびバインダー属性設定処理を行う。具体的には、印刷方法設定を含むバインダーの属性をプリンタへ指示するコマンドを生成し、プリンタへデータを送信するためのOSの手続きを経て、プリンタ１０７へコマンドを送信する。
【０１６５】
その後、電子原稿デスプーラ１０５は、バインダーに含まれる各ページの描画内容すなわち現在の章に含まれる各原稿ページの描画内容をGDIを通じてプリンタドライバ１０６へ通知する。前述のとおり、プリンタドライバ１０６はGDIからDDIに変換された形で描画内容を受け取り、PDLなどのプリンタが解釈可能な描画命令に変換してプリンタ１０７へ送信する。
【０１６６】
そして、電子原稿デスプーラ１０５は、現在のバインダーが終了すること、次のバインダーが開始することを、それぞれExtEscape ( BINDER_END ) およびExtEscape ( BINDER_START ) によってプリンタドライバ１０６へ通知する。この２つの通知は、バインダーの境界を通知するのが目的であるため、バインダーの境界を通知する１つの通知にまとめることも可能である。
【０１６７】
このように、電子原稿デスプーラ１０５は、章の数だけ上記処理を繰り返し、最後に電子原稿デスプーラ１０５は、ＯＳの印刷処理手順に従って、例えばWindows（登録商標）OSであれば、EndDoc()など、印刷ジョブを終了する処理を実行する。この処理は、GDIを経由して、プリンタドライバ１０６に通知され、プリンタドライバ１０６は、ジョブ終了処理を行う。具体的には、ジョブの終了をプリンタへ指示するコマンドを生成し、プリンタへデータを送信するためのOSの手続きを経て、プリンタ１０７へコマンドを送信する。
【０１６８】
なお、ここでは、電子原稿デスプーラ１０５がGDI経由でプリンタドライバ１０６へ通知する手段として、ExtEscape()やResetDC()といった具体的なAPIを例として挙げたが、電子原稿デスプーラ１０５とプリンタドライバ１０６が同期して印刷処理を実行できるのであれば、このAPI以外の手段を用いても同様の処理が実現可能なことは言うまでもない。
【０１６９】
このような処理により、ブックファイルで章ごとに設定された印刷方法（片面/両面）は、バインダー属性としてプリンタに発行され、片面/両面印刷を切り替えながら実施することが可能である。またブックファイルで文書単位で設定された合紙挿入は、バインダー属性として、あるいは白紙ページが再生されてプリンタに発行され、章ごとに合紙を挿入しつつ実施することが可能である。
【０１７０】
このようにして、本実施形態の文書処理システムでは、スキャン時には合紙を含めてスキャンすることで、紙原稿の文書をそのまま電子化することができ、同時に白紙を削除することでデータ量を削減することができる。
【０１７１】
尚、本実施形態で示したフローチャートにおいて、その前後は処理が未完成にならない限り入れ替えることが可能である。
【０１７２】
また、本発明は、複数の機器(例えばホストコンピュータ、インタフェース機
器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置（複写機、プリンタ、ファクシミリ装置など）に適用してもよい。
【０１７３】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェア（図２０〜図２６の手順）のプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１７４】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１７５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１７６】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１７７】
また、本実施形態では白紙を合紙として章を分割したが、一定の画像を記載した用紙や、あるいは異なるサイズの原稿を連続的に読み込めるスキャナであれば、他の部分と異なるサイズの用紙など、境界であることを示すページを章の境界に挿入することもできる。
【０１７８】
また、本実施形態では電子文書が章という構造を有するために、個別の章を作成することで原稿の構造を表している。しかし、たとえば章などの部分の最終ページの情報に一定のフラグをセットするなどして章の構造を示す文書であれば、合紙によりそのフラグをセットして紙原稿の文書の構造を電子文書で表すことができる。
【０１７９】
このようにして、文書中に合紙を検出した場合に、合紙の位置で文書の階層構造を区切って章を作成する事で、電子原稿ファイルに文書の階層構造を再現する事ができる。さらに、空白ページ原稿を合紙挿入設定に置き換える事で、印刷時に何も印刷されないページや用紙への課金を防ぐことができる。さらに、空白ページ原稿を合紙挿入設定に置き換えることで、文書の構造的に不要である空白原稿を取り除くことができる。
【図面の簡単な説明】
【０１８０】
【図１】本実施形態のスタンドアロン型の文書処理システムのソフトウェア構成例を示すブロック図である。
【図２】本実施形態の文書処理システムを実現するハードウェア構成例を示すブロック図である。
【図３】ブックファイルの構造の一例を示す図である。
【図４】ブック属性の一覧を示す図である。
【図５】章属性の一覧を示す図である。
【図６】ページ属性の一覧を示す図である。
【図７】ブックファイルを開く手順例を示すフローチャートである。
【図８】新規のブックファイルを開いた際のユーザインタフェース画面の一例を示す図である。
【図９】既存のブックファイルを開いた際のユーザインタフェース画面の一例を示す図である。
【図１０】電子原稿ファイルをブックファイルにインポートする手順例を示すフローチャートである。
【図１１】図１０のステップ８０１に示すアプリケーションデータを電子原稿ファイルに変換する手順例を示すフローチャートである。
【図１２】印刷や表示を行う際に使用するデータ構造の例を示す図である。
【図１３】クライアントサーバ型の文書処理システムのソフトウェア構成例を示すブロック図である。
【図１４】データ構成の最上位階層である文書全体の設定を行うダイアログウィンドウの例を示す図である。
【図１５】データ構成の中間階層である章の設定を行うダイアログウィンドウの例を示す図である。
【図１６】図１５のダイアログウィンドウで固有属性の設定を行った例を示す図である。
【図１７】データ構成の最下位階層であるページの設定を行うダイアログウィンドウの例を示す図である。
【図１８】図１７のダイアログウィンドウでの設定値の変更例を示す図である。
【図１９】章やページに固有の設定を行った場合の表示例を示す図である。
【図２０】本発明の全体的な処理の流れを示すフローチャートである。
【図２１】原稿の電子化処理の流れを示すフローチャートである。
【図２２】合紙判定処理の流れを示すフローチャートである。
【図２３】図２１の詳細処理を説明するフローチャートである。
【図２４】図２１の詳細処理を説明するフローチャートである。
【図２５】章の階層構造を編集する処理の流れを説明するフローチャートである。
【図２６】空白原稿を文書設定に置き換える処理の流れを説明するフローチャートである。
【図２７】空白用紙を含んだ原稿と、スキャナで取り込んだ画像の例である。
【図２８】空白用紙を含んだ原稿と、スキャナで取り込んだ画像の例である。
【図２９】本発明を適用していない電子文書の表示例である。
【図３０】本発明のステップを一部適用後の電子文書の表示例である。
【図３１】本発明を一部適用後の電子文書の表示例である。
【図３２】本発明を適用後の電子文書の用紙挿入設定画面の例である。
【図３３】インポート方法を選択するためのユーザインターフェース画面の一例を示す図である。
【図３４】インポート時の処理オプションを選択するためのユーザインターフェース画面の一例を示す図である。
【図３５】ドキュメントの章分割を指示するためのユーザインターフェース画面の一例を示す図である。
【図３６】ドキュメントの章分割におけるオプションを選択するためのユーザインターフェース画面の一例を示す図である。
【図１】
2005141425.tif 000003
【図２】
2005141425.tif 000004
【図３】
2005141425.tif 000005
【図４】
2005141425.tif 000006
【図５】
2005141425.tif 000007
【図６】
2005141425.tif 000008
【図７】
2005141425.tif 000009
【図８】
2005141425.tif 000010
【図９】
2005141425.tif 000011
【図１０】
2005141425.tif 000012
【図１１】
2005141425.tif 000013
【図１２】
2005141425.tif 000014
【図１３】
2005141425.tif 000015
【図１４】
2005141425.tif 000016
【図１５】
2005141425.tif 000017
【図１６】
2005141425.tif 000018
【図１７】
2005141425.tif 000019
【図１８】
2005141425.tif 000020
【図１９】
2005141425.tif 000021
【図２０】
2005141425.tif 000022
【図２１】
2005141425.tif 000023
【図２２】
2005141425.tif 000024
【図２３】
2005141425.tif 000025
【図２４】
2005141425.tif 000026
【図２５】
2005141425.tif 000027
【図２６】
2005141425.tif 000028
【図２７】
2005141425.tif 000029
【図２８】
2005141425.tif 000030
【図２９】
2005141425.tif 000031
【図３０】
2005141425.tif 000032
【図３１】
2005141425.tif 000033
【図３２】
2005141425.tif 000034
【図３３】
2005141425.tif 000035
【図３４】
2005141425.tif 000036
【図３５】
2005141425.tif 000037
【図３６】
2005141425.tif 000038