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