以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
[本実施形態の文書処理システムの概要]
第1の実施形態である文書処理システムの概要を、図1〜図13を参照して説明する。
この文書処理システムでは、一般アプリケーションにより作成されたデータファイルを、実施形態で説明する電子原稿ライタによって電子原稿ファイルに変換する。そして、実施形態における製本アプリケーションはその電子原稿ファイルを編集する機能を提供する。尚、本例では、それぞれの機能が明瞭になるように、一般アプリケーション、電子原稿ライタ、製本アプリケーション、電子原稿デスプーラと分離して示しているが、ユーザに提供されるパッケージはこれらに限定されず、これらを組合わせたアプリケーションやグラフィックエンジンとして提供されてもよい。以下、その詳細は説明する。
<本実施形態の文書処理システムのソフトウェア構成例>
図1は、本実施形態の文書処理システムのソフトウェア構成を示す図である。
実施形態における文書処理システムの主要部分は、パーソナルコンピュータ等の汎用情報処理装置100(以下、PC、もしくはホストコンピュータとも呼ぶ)によって実現されている。一般アプリケーション101は、ワードプロセシングやスプレッドシート、フォトレタッチ、ドローあるいはペイント、プレゼンテーション、テキスト編集のいずれかの機能を提供するアプリケーションプログラムであれば、その種類及びメーカを問わない。換言すれば、OSに対する印刷指示機能を有しているものであれば如何なるものでも良い。
一般に、アプリケーション上で、そのアプリケーションで作成された文書データや画像データなどを印刷する場合、オペレーティングシステム(OS)により提供される所定のインタフェース(一般に、GDIと呼ばれる)を利用する。すなわち、アプリケーション101は、作成したデータを印刷するために、前記インタフェースを提供するOSの出力モジュールに対して、あらかじめ定められる、OSに依存する形式の出力コマンド(GDI関数と呼ばれる)を送信する。出力コマンドを受けたデバイスドライバは、プリンタ等の出力デバイスが処理可能な形式にそのコマンドを変換し、変換されたコマンド(DDI関数と呼ばれる)を出力する。デバイスドライバが変換したデータは、その出力デバイスの種類やメーカ、機種などによって異なる。このため、出力デバイスごとにデバイスドライバが提供されており、OSではそのデバイスドライバを利用してコマンドの変換を行い、印刷データを生成し、JL(Job Language)でくくることにより印刷ジョブが生成される。OSとしてマイクロソフト社のウインドウズ(登録商標)を利用する場合には、前述した出力モジュールとしてはGDI(Graphic Device Interface)と呼ばれるモジュールが相当する。
実施形態における電子原稿ライタ102は、前述のデバイスドライバを改良したものであり、本文書処理システム実現のために提供されるソフトウェアモジュールである。ただし、電子原稿ライタ102は特定の出力デバイスを目的としておらず、後述の製本アプリケーション104や実際のプリンタドライバ106により処理可能な形式に出力コマンドを変換する。この電子原稿ライタ102による変換後の形式(以後、「電子原稿形式」と呼ぶ。)は、ページ単位の原稿を詳細な書式をもって表現可能であれば特に問わない。実質的な標準形式となっているものとしては、例えば米国アドビシステムズ社が提唱しているPDF形式をはじめ、SVG形式などがある。
アプリケーション101により電子原稿ライタ102を利用させる場合には、出力に使用するデバイスドライバとして電子原稿ライタ102を指定(選択)させてから印刷処理を実行させればよい。つまり、アプリケーション101から見れば、電子原稿ライタ102と一般のプリンタドライバの違いはない。電子原稿ライタ102は先に説明したように処理した結果をファイル103として、適当なフォルダ(ディレクトリ)に保存することになる。
ただし、電子原稿ライタ102によって作成されたままの電子原稿ファイルは、実施形態で述べる電子原稿ファイルとして完全な形式を備えていない。そのため、デバイスドライバとして電子原稿ライタ102を指定するのは製本アプリケーション104であり、その管理下でアプリケーションデータの電子原稿ファイルへの変換が実行される(詳細後述)。製本アプリケーション104は、電子原稿ライタ102が生成した新規の不完全な電子原稿ファイルを後述する形式を備えた電子原稿ファイルとして完成させる。以下では、この点を明瞭に識別する必要がある際には、電子原稿ライタ102によって作成されたファイルを電子原稿ファイルと呼び、製本アプリケーションによって構造を与えられた電子原稿ファイルをブックファイルと呼ぶ。また、特に区別する必要がない場合は、アプリケーションにより生成されるドキュメントファイル、電子原稿ファイル、及びブックファイルをいずれも文書ファイル(または文書データ)と呼ぶ。
このようにデバイスドライバとして電子原稿ライタ102を指定し、一般アプリケーション101によりそのデータを印刷させることで、アプリケーションデータはアプリケーション101によって定義されたページ(以後、「論理ページ」あるいは「原稿ページ」と呼ぶ。)を単位とする電子原稿形式に変換され、電子原稿ファイル103としてハードディスクなどの記憶媒体に格納される。
ここで注目する点は、先に説明したように、実施形態における電子原稿ライタはアプリケーションから見れば、通常のプリンタメーカが用意するプリンタドライバと同じである点である。より分かりやすく説明するのであれば、既存の如何なるアプリケーションプログラム、或いは、将来出現する未知のアプリケーションプログラムを問わず、そのアプリケーションが印刷出力する機能を有していれば、実施形態における電子原稿ライタ102を介することで、実施形態で説明する製本アプリケーションが処理可能対象とする形式のデータファイルを得ることが約束されることを意味する。
実施形態における製本アプリケーション104は、電子原稿ファイルあるいはブックファイル103を読み込み、それを編集するための機能を利用者に提供する。ただし、実施形態における製本アプリケーション104の編集機能とは、例えばワードプロセッサのように、文章を編集する等の細かい機能ではなく、ページを最小単位として構成される後述する章やブックの構造についての編集機能である。文章中のフォントを変えるとか、文字を挿入等といった細かい編集については、おおもとの使いなれたアプリケーションで再度行えばよいからである。
製本アプリケーション104によって編集されたブックファイル103を印刷する際には、製本アプリケーション104によって電子原稿デスプーラ105を起動して行う。電子原稿デスプーラ105は、製本アプリケーションと共にコンピュータ内にインストールされるプログラムモジュールであり、製本アプリケーションで利用するドキュメント(ブックファイル)を印刷する際に、プリンタドライバへ描画データを出力するために使用されるモジュールである。電子原稿デスプーラ105は、指定されたブックファイルをハードディスクから読み出し、ブックファイルに記述された形式で各ページを印刷するために、前述したOSの出力モジュールに適合する出力コマンドを生成し、不図示の出力モジュールに出力する。その際に、出力デバイスとして使用されるプリンタ107のドライバ106がデバイスドライバとして指定される。出力モジュールは、指定されたプリンタ107のプリンタドライバ106を用いて受信した出力コマンドを、プリンタ107で解釈実行可能なデバイスコマンドに変換する。そしてデバイスコマンドはプリンタ107に送信され、プリンタ107によってコマンドに応じた画像が印刷される。
<本実施形態の文書処理システムのハードウェア構成例>
図2は、本実施形態の文書処理システムのハードウェア構成を示す図である。
図2において、PC100は、システムバス204に接続された各要素を制御して、装置全体の制御を司るCPU201を備える。このCPU201が文書処理プログラムや、図形、イメージ、文字、表(表計算等を含む)等の各種アプリケーションを実行することになる。ROM203にはBIOS及びブートプログラムと、基本的なフォントデータ、及び各種データを記憶している。そして、外部メモリ211(ハードディスク装置等である)には、OSを始め、実施形態で説明する各種プログラム(図1に示した、一般的なアプリケーションプログラム101、電子原稿ライタ102、製本アプリケーション104、電子原稿スプーラ105、プリンタドライバ106)を始め、フォントデータ、各種アプリケーションで作成されたデータファイルが格納されている。RAM202は、CPU201の主メモリ、ワークエリア等として機能するものである。本装置の電源をONにした場合、CPU201はROM203のブートプログラムに従って、外部メモリ211からOSをRAM202にロードし、その後で、各種アプリケーションや実施形態で説明するプログラムをロードして情報処理装置として機能するようになる。
キーボードコントローラ(KBC)205は、キーボード209や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)206は、CRTディスプレイ(CRT)210の表示を制御する。207はディスクコントローラ(DKC)で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム(以下プリンタドライバ)等を記憶する外部メモリ211とのアクセスを制御する。プリンタコントローラ(PRTC)208は、双方向性インタフェース(インタフェース)21を介してプリンタ107に接続されて、プリンタ107との通信制御処理を実行する。NC(ネットワークコントローラ)212はネットワークと通信を行うものであり、ネットワークに接続された他の機器との通信制御処理を実行する。
なお、CPU201は、例えばRAM202上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT210上でのWYSIWYGを可能としている。また、CPU201は、CRT210上の不図示のマウス(登録商法)カーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
一方、プリンタ107は、そのプリンタ全体の制御を司るCPU312を備える。CPU312は、ROM313内のプログラム用ROMに記憶された制御プログラム等あるいは外部メモリ314に記憶された制御プログラム等に基づいてシステムバス315に接続される印刷部(プリンタエンジン)317に出力情報としての画像信号を出力する。また、このROM313内のプログラムROMには、CPU312の制御プログラム等を記憶する。ROM313内のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ROM313内のデータ用ROMには、ハードディスク等の外部メモリ314がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
CPU312は入力部318を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ100に通知できる。RAM319は、CPU312の主メモリや、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM319は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。前述したハードディスク(HD)、ICカード等の外部メモリ314は、メモリコントローラ(MC)20によりアクセスを制御される。外部メモリ314は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、321は前述した操作パネルで、操作のためのスイッチ及びLED表示器等が配されている。
また、前述した外部メモリ314は1個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないNVRAMを有し、操作パネル321からのプリンタモード設定情報を記憶するようにしてもよい。
<電子原稿データの形式例>
製本アプリケーション104の詳細を言及する前に、ブックファイルのデータ形式を説明する。ブックファイルは紙媒体の書物を模した3層の層構造を有する。上位層は「ブック」と呼ばれ、1冊の本を模しており、その本全般に係る属性が定義されている。その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。各章についても、章ごとの属性が定義できる。下位層は「ページ」であり、アプリケーションプログラムで定義された各ページに相当する。各ページついてもページごとの属性が定義できる。ひとつのブックは複数の章を含んでいてよく、また、ひとつの章は複数のページを含むことができる。
図3は、ブックファイルの形式の一例を模式的に示す図である。この例のブックファイルにおける、ブック、章、ページは、それぞれに相当するノードにより示されている。ひとつのブックファイルはひとつのブックを含む。ブック、章は、ブックとしての構造を定義するための概念であるから、定義された属性値と下位層へのリンクとをその実体として含む。ページは、アプリケーションプログラムによって出力されたページごとのデータを実体として有する。そのため、ページは、その属性値のほか、原稿ページの実体(原稿ページデータ)と各原稿ページデータへのリンクを含む。尚、紙媒体等に出力する際の印刷ページは複数の原稿ページを含む場合がある。この構造に関してはリンクによって表示されず、ブック、章、ページ各階層における属性として表示される。
図3に示すブックファイルは、1つの完結したブックである必要はなく、何度でも編集できるものであるので、それ故、図示では「ブック」を「文書」として一般化して示している。
まず最上位に文書情報401を持つ。文書情報401は402〜404の3つのパートに大別できる。文書制御情報402は、文書ファイルのファイルシステムにおけるパス名などの情報を保持する。文書設定情報403は、ページレイアウトなどのレイアウト情報とステイプルなど印刷装置の機能設定情報を保持し、ブックの属性に相当する。章情報リスト404は、文書を構成している章の集合をリスト形式で保持する。リストが保持するのは章情報405である。
章情報405も406〜408の3つのパートに大別できる。章制御情報406は、章の名称などの情報を保持する。章設定情報407は、その章特有のページレイアウトやステイプルの情報を保持し、章の属性に相当する。章ごとに設定情報をもつことで最初の章は2UPのレイアウト、その他の章は4UPのレイアウトのように複雑なレイアウトを持った文書を作成することが可能である。ページ情報リスト408は各章を構成する原稿ページの集合リスト形式で保持している。ページ情報リスト408が指示するのは、ページ情報データ409である。なお、上記の2UPとは、実施形態での製本アプリケーション104で作成する1ページに、一般アプリケーションで作成された2ページ分をレイアウトすることを言う。従って、4UPとは、製本アプリケーションの1ページを、一般アプリケーションで作成した4ページのデータを2×2にレウアウトした状態を言い、Nupとは1枚の記録紙に、論理nページをレイアウトした状態を言う。
なお、図3は、アプリケーションプログラムで電子原稿ライタ102を介して印刷指示した論理的1ページが、製本アプリケーション104での1ページに対応していることを示しているが、例えば4UPの場合には、ページデータリンク412には、4論理ページのリンク情報が格納されることになる。
ページ情報データ409も410〜412の3つのパートに大別される。ページ制御情報410は、ツリー上に表示するページ番号などの情報を保持する。ページ設定情報411は、ページ回転角やページの配置位置情報などの情報を保持し、原稿ページの属性に相当する。ページリンク情報412は、ページに対応する原稿データである。この例では、ページ情報409が直接原稿データを持つのではなく、リンク情報412だけをもち、実際の原稿データは、ページデータリスト413で保持する構成としている。
図4は、設定可能なブック属性(文書設定情報403)の項目リストである。通常、下位層と上位層で重複して定義可能な項目に関しては、下位層の属性値が優先採用される。換言すれば、下位層で特に属性が設定がなされていない項目は、その上位層の設定項目が反映される。そのため、ブック属性にのみ有効となるよう設定されている項目に関しては、ブック属性に定義された値はブック全体を通して有効な値となる。ただし、本例では、後述するように、同じ属性項目について下位層、上位層で異なる設定を行っている場合、そのいずれを優先するか否かが選択可能となっている。なお、図示された各項目は具体的に1項目に対応するのではなく、関連する複数の項目を含むものもある。
ブック属性に固有の項目は、印刷方法、製本詳細、表紙/裏表紙、インデックス紙、合紙、章区切りの6項目である。これらは、ブックを通して定義される項目である。印刷方法属性としては、片面印刷、両面印刷、製本印刷の3つの値を指定できる。製本印刷とは、別途指定する枚数の用紙を束にして2つ折りにし、その束をつづり合わせることで製本が可能となる形式で印刷する方法である。製本詳細属性としては、製本印刷が指定されている場合に、見開き方向や、束になる枚数等が指定できる。
表紙/裏表紙属性は、ブックとしてまとめられる電子原稿ファイルを印刷する際に、表紙及び裏表紙となる用紙を付加することの指定、及び付加した用紙への印刷内容の指定を含む。インデックス紙属性は、章の区切りとして、印刷装置に別途用意される耳付きのインデックス紙の挿入の指定及びインデックス(耳)部分への印刷内容の指定を含む。この属性は、印刷用紙とは別に用意された用紙を所望の位置に挿入するインサート機能を持ったインサータが使用する印刷装置に備えられている場合か、あるいは、複数の給紙カセットを使用可能である場合に有効となる。これは合紙属性についても同様である。
合紙属性は、章の区切りとして、インサータから、あるいは給紙カセットから供給される用紙の挿入の指定、及び、合紙を挿入する場合には、給紙元の指定などを含む。
章区切り属性は、章の区切り目において、新たな用紙を使用するか、新たな印刷ページを使用するか、特に何もしないか等の指定を含む。片面印刷時には新たな用紙の使用と新たな印刷ページの使用とは同じ意味を持つ。両面印刷時には、「新たな用紙の使用」を指定すれば連続する章が1枚の用紙に印刷されることは無いが、「新たな印刷ページの使用」を指定すれば、連続する章が1枚の用紙の表裏に印刷されることがあり得る。
図5は章属性(章設定情報407)、図6はページ属性(ページ設定情報411)で設定可能なリストである。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。
章属性に関しては、章に固有の項目はなく、すべてブック属性と重複する。したがって、通常は、章属性における定義とブック属性における定義とが異なれば、章属性で定義された値が優先する。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
ブック属性と章属性とにのみ共通する項目は、用紙サイズ、用紙方向、Nup印刷指定、拡大縮小、排紙方法の5項目である。このうち、Nup印刷指定属性は、先に説明したように、1印刷ページに含まれる原稿ページ数を指定するための項目である。指定可能な配置(レイアウト)としては、1×1や1×2、2×2、3×3、4×4などがある。排紙方法属性は、排出した用紙にステイプル処理を施すか否かを指定するための項目であり、この属性の有効性は使用する印刷装置がステイプル機能を有するか否かに依存する。
ページ属性に固有の項目には、ページ回転属性、ズーム、配置指定、アノテーション、ページ分割などがある。ページ回転属性は、原稿ページを印刷ページに配置する際の回転角度を指定するための項目である。ズーム属性は、原稿ページの変倍率を指定するための項目である。変倍率は、仮想論理ページ領域のサイズを100%として指定される。仮想論理ページ領域とは、原稿ページを、Nup等の指定に応じて配置した場合に、1原稿ページが占める領域である。例えば1×1であれば、仮想論理ページ領域は1印刷ページに相当する領域となり、1×2であれば、1印刷ページの各辺を約70パーセントに縮小した領域となる。
ブック、章、ページについて共通な属性として、ウォーターマーク属性及びヘッダ・フッタ属性がある。ウォーターマークとは、アプリケーションで作成されたデータに重ねて印刷される、別途指定される画像や文字列などである。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。ただし、ヘッダ・フッタには、ページ番号や日時など、変数により指定可能な項目が用意されている。なお、ウォーターマーク属性及びヘッダ・フッタ属性において指定可能な内容は、章とページとは共通であるが、ブックはそれらと異なっている。ブックにおいてはウォーターマークやヘッダ・フッタの内容を設定できるし、また、ブック全体を通してどのようにウォーターマークやヘッダ・フッタを印刷するかを指定することができる。一方、章やページでは、その章やページにおいて、ブックで設定されたウォーターマークやヘッダ・フッタを印刷するか否かを指定できる。
以上、実施形態における前提となる構成及び製本アプリケーションで作成されるブックファイル構造について説明した。次に、実施形態における製本アプリケーションについて更に詳しく説明することとする。
<本実施形態の文書処理システムの操作手順例>
次に、製本アプリケーション104及び電子原稿ライタ102によってブックファイルを作成する手順を説明する。ブックファイルの作成は、製本アプリケーション104によるブックファイルの編集操作の一環として実現される。
図7は、製本アプリケーション104によりブックファイルを開く際の手順を示すフローチャートである。
まず、開こうとするブックファイルが、新規作成すべきものであるか、それとも既存のものであるか判定する(ステップS701)。新規作成の場合には、章を含まないブックファイルを新規に作成する(ステップS702)。新規に作成されるブックファイルは、図3の例で示せば、ブックノード301のみ有し、章のノードに対するリンクが存在しないブックのノードとなる。ブック属性は、ユーザが必要に応じて設定するが、新規作成の場合にはデフォルトの設定が適用される。そして、新規ブックファイルを編集するためのユーザインタフェース(UI)画面を表示する(ステップS704)。図8は、新規にブックファイルが作成された際のUI画面の一例である。この場合には、ブックファイルは実質的な内容を持たないために、UI画面800には何も表示されない。
一方、既存のブックファイルがあれば、ユーザが該当するブックファイルを指定することになる。その指定が行われると、そのブックファイルを開き(ステップS703)、そのブックファイルの構造、属性、内容に従ってユーザインタフェース(UI)画面を表示する。図9は、このUI画面の一例である。UI画面900は、ブックの構造を示すツリー部901と、印刷された状態を表示するプレビュー部902とを含む。ツリー部901には、ブックに含まれる章、各章に含まれるページが、図3のような木構造が分かるように表示される。ツリー部901に表示されるページは原稿ページである。プレビュー部902には、印刷ページの内容が縮小されて表示される。その表示順序は、ブックの構造を反映したものとなっている。
さて、開かれたブックファイル(新規作成ブックファイルも含む)には、電子原稿ライタ102によって電子原稿ファイルに変換されたアプリケーションデータを、新たな章として追加することができる。この機能を電子原稿インポート機能と呼ぶ。図7の手順によって新規に作成されたブックファイルに電子原稿インポートすることで、そのブックファイルには実体が与えられる。この機能は、OSが用意するGUIを利用し、所望とするアプリケーションデータファイルを図8あるいは図9の画面上に、ドラッグアンドドロップ操作することで起動される。
ここでドラッグアンドドロップすることになるファイルは、一般的なアプリケーションプログラムで作成されたデータファイルであれば、その種類を問わないが、そのデータファイルを作成したアプリケーションはPC100にインストールされているものとする。ただし、ドラッグアンドドロップしようとするファイルの構造(フォーマット)が公開されている場合、例えば、拡張子がjpg、bmp、tiff、pdf等の汎用データファイルについては、実施形態の製本アプリケーション104自身が解釈できるようにしているので、必ずしもそのアプリケーションを必要ではない。ここで言う汎用データファイルか否かは、製本アプリケーション104がサポートするデータ構造を有するものに限られ、それ以外の構造を持つデータファイルについては、上記のように、そのデータファイルを作成/編集するアプリケーションがインストールされていることが必要になる。
図10に電子原稿インポートの手順例を示すフローチャートを示す。
先ず、ステップS801において、ドラッグアンドドロップしたファイルは、先に示した所定の汎用画像ファイルであるか否か、すなわち、実施形態における製本アプリケーションがダイレクトに解釈できるファイルであるのか否かを判別する。
製本アプリケーションが解釈できる画像ファイルであると判断した場合には、ステップS802に進んで、製本アプリケーションで編集中のブックにページとして追加する。
なお、製本アプリケーションで新規なブックファイルが作成されている状態では、章が存在しないので、新たな章が作成されて、その章に属するページとして追加されることになる。また、追加する際のページ属性は、上位層の属性と共通のものについてはその属性値が与えられ、アプリケーションデータにおいて定義された属性を電子原稿ファイルに引き継いでいるものについてはその値が与えられるる。例えば、Nup指定などがアプリケーションデータにおいてされていた場合には、その属性値が引き継がれる。
一方、ステップS801において、ドラッグアンドドロップされたデータファイルが製本アプリケーションがダイレクトに解釈できないものであると判断した場合、例えば、ワードプロセッシングアプリケーションや表計算アプリケーションや未知のアプリケーションで作成されたデータファイルであると判別した場合には、ステップS803に進み、電子原稿ファイルを作成させる。
具体的には、ドラッグアンドドロップしたデータファイルを作成したアプリケーションプログラムを起動し、印刷出力する際のデバイスドライバとして電子原稿ライタ102を指定し、そのアプリケーションデータを印刷出力させることになる。この結果、図1に示すように、電子原稿ファイルが生成されることになる。
次いで、ステップS804に進んで、生成された電子原稿ファイルを、実施形態の製本アプリケーションで開いているブックに章として追加する。
以上のようにして、新規なブックファイルが作成され、あるいは、新規な章、ページが追加される。しかし、本例では、後述するように、下位層の属性値を優先するか否かが選択可能となっている。
図11は、図10のステップS803の処理、すなわち、ドラッグアンドドロップしたアプリケーションデータファイルから、電子原稿ライタ102により電子原稿ファイルを生成させる手順を示すフローチャートである。
まず、新たな電子原稿ファイルを保存するため、外部メモリ211内に空のファイルを作成し、オープン状態にする(ステップS901)。そして、指定したアプリケーションデータファイルに対応するアプリケーションを起動し、且つ、電子原稿ライタ102をデバイスドライバとして設定し、OSの出力モジュールに対して出力コマンドを送信させる。なお、OSがマイクロソフト社のWindows(登録商標)の場合、レジストリファイルを検索することで、ドラッグアンドドロップしたデータファイルの拡張子等から、そのデータファイルを作成したアプリケーションプログラムを特定することができる。
出力モジュールは、受信した出力コマンドを電子原稿ライタ102によって電子原稿形式のデータに変換し、出力する(ステップS902)。出力先は、ステップS901で開いた電子原稿ファイルにする。指定されたデータすべてについて変換が終了したか判定し(ステップS903)、終了していれば電子原稿ファイルを閉じる(ステップS904)。電子原稿ライタ102によって生成される電子原稿ファイルは、図3に示した、原稿ページデータの実体を含むファイルであり、実施形態における製本アプリケーションが解釈できる形式になる。
なお、例えば、ワードプロセッシングアプリケーション用のデータファイルをドラッグアンドドロップして、電子原稿形式ファイルにした場合、その電子原稿ファイルには複数ページが含まれる1つの章が作成される。作成された章中に不要なページが存在する場合には、製本アプリケーションで削除する指示を与えることで、必要なページのみを残すことが可能となる。
また、上記処理を、必要なアプリケーションデータファイルについて繰り返していくと、インポートする単位毎に章が作成され、その章の下にページが作成されていく。つまり、異なるアプリケーションで作成されたページが混在したブックが作成できることになるのが理解できよう。
<ブックファイルの編集例>
以上のようにして、アプリケーションデータからブックファイルを作成することができる。生成されたブックファイルについては、章及びページに対して次のような編集操作が可能である。
(1)新規追加
(2)削除
(3)コピー
(4)切り取り
(5)貼り付け
(6)移動
(7)章名称変更
(8)ページ番号名称振り直し
(9)表紙挿入
(10)合紙挿入
(11)インデックス紙挿入
(12)各原稿ページに対するページレイアウト。
このほか、一旦行った編集操作を取り消す操作や、さらに取り消した操作をやり直す操作が可能である。これら編集機能により、例えば複数のブックファイルの統合、ブックファイル内で章やページの再配置、ブックファイル内で章やページの削除、原稿ページのレイアウト変更(2UPにするなど)、合紙やインデックス紙の挿入などといった編集操作が可能となる。これらの操作を行うと、図4乃至図6に示す属性に操作結果が反映されたり、あるいはブックファイルの構造に反映される。たとえば、ブランクページの新規追加操作を行えば、指定された箇所にブランクページが挿入される。このブランクページは原稿ページとして扱われる。また、原稿ページに対するレイアウトを変更すれば、その変更内容は、印刷方法やN−up印刷、表紙/裏表紙、インデックス紙、合紙、章区切りといった属性に反映される。また、或る章中のページを別な章に移動することもできる(該当するページを他の章中にドラッグアンドドロップする)。
本例における、編集時の表示及び操作例については、以下で詳細に示す。
<ブックファイルの出力例>
以上のように作成・編集されるブックファイルは印刷出力を最終目的としている。利用者が図9に示す製本アプリケーションのUI画面900からファイルメニューを選択し、そこから印刷を選択すると、指定した出力デバイスにより印刷出力される。この際、まず製本アプリケーション104は、現在開かれているブックファイルからジョブチケットを作成して電子原稿デスプーラ105に渡す。電子原稿デスプーラ105は、ジョブチケットをOSの出力コマンド、例えばウインドウズのGDIコマンドに変換し、それを出力モジュール、例えばGDIに送信する。出力モジュールは、指定されたプリンタドライバ106によってデバイスに適したコマンドを生成し、そのデバイスに送信する。
すなわち、図示しない出力モジュールのグラフィックエンジンは、印刷装置ごとに用意されたプリンタドライバ106を外部メモリ211からRAM202にロードし、出力をプリンタドライバ106に設定する。そして、出力モジュールは、受け取ったGDI(Graphic Device Interface)関数からDDI(Device Driver Interface)関数に変換して、プリンタドライバ106へDDI関数を出力する。プリンタドライバ106は、出力モジュールから受け取ったDDI関数に基づいて、プリンタが認識可能な制御コマンド、例えばPDL(Page Description Language)に変換する。変換されたプリンタ制御コマンドは、OSによってRAM202にロードされたシステムスプーラを経てインタフェース21経由でプリンタ107へ印刷データとして出力される仕組みとなっている。
ここで、上記ジョブチケットは、原稿ページを最小単位とする構造を有するデータである。ジョブチケットにおける構造は、用紙上における原稿ページのレイアウトを定義している。ジョブチケットは1ジョブにつき1つ発行される。そのため、まず最上位にドキュメントというノードがあり、文書全体の属性、例えば両面印刷/片面印刷などが定義されている。その下には、用紙ノードが属し、用いるべき用紙の識別子や、プリンタにおける給紙口の指定などの属性が含まれる。各用紙ノードには、その用紙で印刷されるシートのノードが属する。1シートは1枚の用紙に相当する。各シートには、印刷ページ(物理ページ)が属する。片面印刷ならば1シートには1物理ページが属し、両面印刷ならば1シートに2物理ページが属する。各物理ページには、その上に配置される原稿ページが属する。また物理ページの属性として、原稿ページのレイアウトが含まれる。
ジョブチケットのデータ構造の例を図12に示す。印刷用のデータでは、文書は用紙の集合で構成されており、各用紙は表、裏の2面で構成されており、各面は原稿をレイアウトする領域(物理ページ)を持ち、各物理ページには、最小単位である原稿ページの集合から構成される。1101は文書に相当するデータで、文書全体に関係するデータと、文書を構成する用紙情報のリストから構成される。用紙情報1102は用紙サイズなど用紙に関する情報と用紙上に配置される面情報のリストから構成される。面情報1103は、面に固有のデータと、面上に配置される物理ページのリストから構成される。物理ページ情報1104は、物理ページのサイズやヘッダ・フッタなどの情報と、物理ページを構成する原稿ページのリストから構成される。
電子原稿デスプーラ105は、上述のジョブチケットを、出力モジュールへの出力コマンドに変換する。
<プレビュー表示の内容例>
すでに説明したとおり、ブックファイルが製本アプリケーションによって開かれると、図9に示すユーザインタフェース画面900が表示される。ツリー部901には、開いているブック(以下、「注目ブック」と呼ぶ。)の構造を示すツリーが表示される。実施形態におけるプレビュー部には、利用者の指定に応じて、3通りの表示方法が用意されている。第1は原稿ページをそのまま表示する原稿ビューと呼ばれるモードである。原稿ビューモードでは、注目ブックに属する原稿ページの内容が縮小されて表示される。プレビュー部の表示にレイアウトは反映されない。第2は印刷ビューモードである。印刷ビューモードでは、プレビュー部902には、原稿ページのレイアウトが反映された形で原稿ページが表示される。第3は簡易印刷ビューモードである。簡易印刷ビューモードでは、各原稿ページの内容はプレビュー部の表示には反映されず、レイアウトのみが反映される。これら表示形態の切換えは、製本アプリケーションのメニューバーの「表示」をクリックすることで表示されるプルダウンメニューで指定できる。
<他の文書処理システムの構成例>
上記実施形態の文書処理システムはスタンドアロン型のシステムであるが、これを拡張したサーバクライアントシステムでもほぼ同様の構成・手順でブックファイルが作成・編集される。ただし、ブックファイルや印刷処理はサーバによって管理される。
図13はサーバクライアント型文書処理システムの構成を示すブロック図である。
クライアント文書処理システムは、スタンドアロン型システムに、クライアントモジュールであるDOMS(Document Output Management Service:文書出力管理サービス)ドライバ109及びDOMSプリントサービスモジュール110、DS(文書サービス)クライアントモジュール108を加えた構成を有する。このクライアント文書処理システム1200に、文書管理サーバ1201及び印刷集中管理サーバ1202及びプリントサーバ1203が接続されている。これらサーバは、通常ネットワークによってクライアント文書処理システムと接続されるが、サーバが同時にクライアントとしても機能する場合には、ネットワーク間の通信をシミュレートするプロセス間通信によって接続される。尚、図13では文書管理サーバ1201と印刷集中管理サーバ1202の両サーバがクライアントに接続されているが、いずれか一方のみがネットワーク上に存在する場合もあり得る。接続されているサーバが文書管理サーバであれば、そのクライアントモジュールを含む文書管理サーバクライアントシステム1201SCが、印刷集中管理サーバ1202であれば、そのクライアントモジュールを含む印刷管理サーバクライアントシステム1202SCが、スタンドアロン型文書管理システムに追加される。
文書管理サーバ1201は、製本アプリケーション104により作成・編集されたブックファイルを格納するサーバである。文書管理サーバ1201によってブックファイルを管理する場合、ブックファイルは、クライアントPCのローカルHDに代わって、あるいはそれに加えて、文書管理サーバ1201のデータベース1211に保存される。製本アプリケーション104と文書管理サーバ1201との間のブックファイルの保存及び読み出しは、DSクライアント108及びDSコア1212を介して行われる。
印刷集中管理サーバ1202は、クライアント文書管理システム1200に格納された、あるいは文書管理サーバ1201に格納されたブックファイルの印刷を管理するサーバである。クライアントにおける印刷要求は、DOMSドライバ109及びDOMSプリントサービスモジュール110を介して印刷集中管理サーバ1202のDOMSWGサーバモジュール1221に送信される。集中印刷管理サーバ1202は、クライアントのプリンタで印刷する場合にはクライアントのDOMSプリントサービスモジュール110を介して電子原稿デスプーラ105に電子原稿データを渡し、プリントサーバ1203により印刷する場合には、プリントサーバ1203のDOMSプリントサービスモジュール1203に送信する。集中印刷管理サーバは、例えば保存されているブックファイルに対して印刷要求を発行した利用者の資格などについてセキュリティチェックを行ったり、印刷処理のログを保存したりする。このように、文書処理システムは、スタンドアロンとしても、クライアントサーバシステムとしても実現できる。
<本実施形態の文書処理システムの編集操作例>
上記図9は、製本アプリケーション104の操作画面である。製本アプリケーションは、文書のページ順の入れ替えや複製、削除などの編集に加え、ステイプルなどの印刷装置の機能設定も行うことができ、指定した印刷装置に印刷することが可能である。図9の左側の領域には、文書の構造を示すツリービューが表示されている。文書は、章の集合で構成されており、各章は原稿ページの集合で構成されている。図9の右側の領域には、各ページの印刷プレビューが表示されている。
<本実施形態の文書処理システムの属性設定例>
図14は、製本アプリケーション104の図4における「文書の詳細設定」ウインドウ1400を示している。この図14の設定画面は、後述する図41に示される複数のフォルダ毎に存在し、各フォルダに対する設定を行なうことができる。また、あるフォルダの設定を変更する場合も利用される。つまり、フォルダの設定を変更することにより、変更前と変更後のフォルダをあたかも別のフォルダとして利用することが可能となる。
このウインドウでは、「文書設定情報403」を表示/設定することができる。このウインドウは、図9のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Document」メニューあるいはツールバー上の「Detailed Setting for Document」ボタンから起動される。「文書の詳細設定」ウインドウは、文書全体に影響する属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Decoration、Edit、Paper Sourceの4つのシートから構成されており、図14は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主にレイアウトに関する設定を行うことができ、用紙サイズや向き、Nページ印刷などの設定を指示することができる。このウインドウには、ズームに関するチェックボックスコントロール1401、1402が配置されている。尚、ズームとは、上に述べたように原稿ページの変倍率を指す。
図15は、製本アプリケーション104の「章の詳細設定」ウインドウ1500を示している。この図15の設定画面は、例えば、製本アプリケーションによって生成された何れかの章の設定を変更する際に利用される。
このウインドウでは、図4の「章設定情報407」を表示/設定することができる。このウインドウは、図9のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Chapter」メニューあるいはツールバー上の「Detailed Setting for Chapter」ボタンから起動される。「章の詳細設定」ウインドウは、章固有の属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Decoration、Edit、Paper Sourceの4つのシートから構成されており、図15は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主に各章で固有のレイアウトに関する設定を行うことができ、用紙サイズや向き、Nupページ印刷などの設定を指示することができる。「文書の詳細設定」と「章の詳細設定」で重複する設定項目については「Follow Book Attribute」のチェックボックスコントロール1501、1502、1503を配置している。このチェックボックスにチェックが入っている項目グループについては、文書の設定値をその章にも適用する。このチェックをはずした場合については、次の図16に示す。章固有の設定としては2種類に分類できる。一つは章でしか持たない設定項目である。もう一つは、上位階層の文書とは異なる独自の設定値を章の階層で保持している場合である。このチェックボックスにチェックが入っている項目グループについては、文書(ブック)の設定値をその章にも適用する。このチェックをはずした場合については、次の図16に示す。章固有の設定としては2種類に分類できる。一つは章でしか持たない設定項目である。もう一つは、上位階層の文書とは異なる独自の設定値を章の階層で保持している場合である。
図16は、図15の「章の詳細設定」でチェックボックスコントロール1501、1502のチェックをはずした状態である。この場合、文書の全体がA3用紙を使っている場合でも、この章を構成するページはA4用紙サイズとする。またレイアウトも、文書では1Page Par Sheetであっても、この章は4 Page Per Sheet(4UP)でレイアウトするという指定である。「MS Arrange」については、チェックがついているので、上位階層である文書の設定値をこの章の設定値として使う。
図17は、製本アプリケーション104の「ページの詳細設定」ウインドウ1700を示している。
このウインドウでは、「ページ設定情報411」を表示/設定することができる。このウインドウは、図9のアプリケーション操作画面にあるPrint Formメニューの「Detailed Setting for Page」メニューあるいはツールバー上の「Detailed Setting for Page」ボタンから起動される。「ページの詳細設定」ウインドウは、各ページで固有の属性の設定を行うためのウインドウである。このウインドウは、Page Setup、Editの2つのシートから構成されており、図17は、Page Setupシートを表示した状態を示している。このPage Setupシートでは、主に各ページで固有のレイアウトに関する設定を行うことができ、原稿ページを配置する際の回転角や拡縮率などの設定を指示することができる。「章の詳細設定」と「ページの詳細設定」で重複する設定項目については「Follow Chapter Attribute」のチェックボックスコントロール1701を配置している。このチェックボックスにチェックが入っている項目については、章の設定値をそのページにも適用する。このチェックをはずした場合については、次の図18に示す。
図18は、図17の「ページの詳細設定」でPage Rotationの設定を変更した状態を示している。コントロール1701で、原稿ページをレイアウトする際にページの上が左になるように回転して配置する設定にしている。この項目については「Follow Chapter Attribute」のチェックボックスが無いので、章や文書に重複する設定項目が無いので、このウインドウに表示されている設定が常にページの設定値となる。1701のチェックがある場合、例えば「Arrange」の項目は、章にも重複する設定項目があるので章の設定値をページの設定値とする。章で該当する「Arrange」の項目が「Follow Book Attribute」のチェックがある場合、章の設定値は上位階層である文書の設置値を使うので結局ページの設定値は文書の設定値を使うことになる。章で該当する項目のチェックが外れている場合、章固有の設定値を持っているので、ページの設定値はその章固有の設定値を使う。
尚、上記設定画面で設定されたチェックボックスコントロールの情報は、専用の領域に保持されてもよいが、図3に示した設定情報内に属性の1つとして保持するのが望ましい。この場合には、図5及び図6にチェックボックスコントロールの情報を保持する領域が追加される。
<本実施形態の文書処理システムの文書編集の表示例>
上位階層と重複する設定項目を上位階層の設定値を使わないようにした場合、つまり、チェックボックスコントロール1501や1701のチェックをはずした場合のアプリケーションの表示形式を、図19に示す。
図19の例では、文書は二つの章で構成され、各章は9ページの原稿データを持っていることを示している。最初の章のレイアウトを4UP(4in1とも表記する)に、2番目の章の先頭ページ(文書全体では10ページ目)に回転を指定した場合の表示例である。右側のプレビューにおいて、1〜3ページ目には1ページ上に4つの原稿がそれぞれ配置されている様子が表示されている。そして、第4ページ目のデータである「A」の文字が回転している様子が表示されている。ツリービューでの章やページ固有の設定を行った場合の表示形式を説明する。最初の章に対するアイコン1901が変化して、この章に章独自の設定がなされていることを示している。2番目の章の先頭ページに対するアイコン1902が変化して、このページに特別な設定がなされていることが示されている。
ここで、注目したい点は、各章中のページ、例えば4UPのページに含まれる4つの論理ページは、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション等のアプリケーションの種類を問わない点である。換言すれば、実施形態における文書を構成する各ページは、如何なるアプリケーションで作成されたものでも良いし、混在しても構わないことを意味する。
以上説明したように、本実施形態によると、図1に示すような構成のプログラムを用意することで、実施形態で述べた「文書」を構成する各ページを作成するアプリケーションプログラムの種類及びメーカを問わず、それぞれのアプリケーションで作成されたファイルに基づくページが混在した文書を作成することができ、しかも、レイアウト等についても自由に変更することができるので、印刷する際のページ番号を再付与しなおす等の作業もごく簡単なものとすることが可能となる。
ただし、上記によると、「文書」を構成することになる各種アプリケーションデータファイルが、外部メモリ211に記憶保存されていることが必要になる。また、例えば、1つの「文書」が2つの章で構成され、第1章はワードプロセッシングアプリケーション、第2章はスプレッドシートアプリケーションで作成したページで構成する場合、その両方のアプリケーションがPC100にインストールされていることが必要になる。
ところが、1つのブックを構成する各ページを、複数の人間がそれぞれのPCで作成することが有り得る。例えば、第1章を担当する者が使用するPC(仮にPC−Aという)には、ワードプロセッシングアプリケーションのみ、第2章を担当する者が使用するPC(仮にPC−Bという)にはスプレッドシートアプリケーションのみがインストールされている状況にあっては、上記実施形態では対処は難しい。全てのPCに同じアプリケーションプログラムをインストールすると、それだけライセンス費用がかかることにもなる。本実施形態では、このような問題をも解決する。以下にその説明を続ける。
<オブジェクトへの画像データの投入による自動処理>
先ず、実施形態におけるPC100は、ネットワークに接続されていて、そのネットワークシステムが図40のようになっているものとして説明する。
図40は実施形態におけるネットワーク構成を示す図である。同図において、110、120、125はパーソナルコンピュータ等の汎用情報処理装置(以下、単にPCという)であり、上記実施形態で説明したPC100と同じ構成である。130は複合機であって、複写機能、ネットワークスキャナ機能、ネットワークプリンタ機能を有する。140はファイルサーバ、135はネットワークプリンタである。そして、これらの各装置が通信回線としてのネットワーク150に接続され、互いに通信可能となっている。なお、図示はその一例を示したものであり、PC、複合機、プリンタ、ファイルサーバの数に制限はないし、このネットワーク上に他のデバイスが存在しても構わない。
複合機130は上記のようにネットワークスキャナとしての機能をも有するので、原稿を読取り、その際にネットワーク上の所望とする宛て先(ネットワーク上のリソースアドレス)を指定することで、読取った画像を所定形式のファイル(PDF、MTIFF等)にして送信する機能を有する。なお、このような複合機130は、既に公知のものであり、例えば、キヤノン株式会社が提供する製品iRシリーズがある。複合機130で読込む原稿は、PC100、110、120、125等の実行される一般アプリケーションで印刷指示してプリンタ107、135、複合機130で印刷した印刷物とすることができる。
上記のようなネットワークシステムを構成を前提にして、以下に実施形態の更に有利な点を説明することとする。
ここでも、上記説明を続ける意味で、PC100を例にして説明する。また、ネットワーク上には、1つ以上の共有フォルダが設けられている必要があるが、説明を簡単なものとするため、PC100の外部メモリ211にその共有フォルダを複数設けるものとして説明する。つまり、PC100はファイルサーバとしても機能する。尚、以下の説明では共有フォルダを例に説明を行なうが、インポートされるデータを投入可能なオブジェクトであれば適用可能であり、共有フォルダに限定されるものではない。
更に、PC100には、共有フォルダ(1つ以上)へのデータの投入を監視するプログラムが実行されていて、その共有フォルダ内のファイル構成が変化したと判断した場合、特に、新規にファイルが格納されたと判断した場合、製本アプリケーションにインポートするため、個々の共有フォルダ毎に設定された処理を実行する。
つまり、通常のファイルサーバでの共有フォルダは、単にネットワークから要求に従ってファイルの受信・保存と送信を行うだけであるのに対し、実施形態におけるPC100には、共有フォルダに格納されたファイルに対して自動的に更なる処理を行うものである。このようなフォルダを、一般の共有フォルダと区別するため、実施形態ではホットフォルダと呼ぶ。つまり、ホットフォルダとは、そのフォルダにデータファイルが格納されると、所定の処理を実行する共有フォルダと言える。共有フォルダそのものは、ファイルサーバとして機能させるだけで良いので、それは周知のものである。その上で、その共有フォルダ内のデータフォルダの状態を定期的に調べ、状態の変化に応じた処理をする機能を備える必要がある。この監視プログラムを、以下、ホットフォルダプログラムという。このホットフォルダプログラムは、製本アプリケーション104を構成するパートプログラムとして提供する。なお、ホットフォルダに設定する各種条件は、外部メモリ211に格納され、記憶保持されるものとする。
図41は実施形態におけるホットフォルダを設けた場合のデータファイルの流れと、各プログラムの役割を模式的に示す図である。
図示において、4001、4002が複数のホットフォルダ、4010は製本アプリケーション104に渡す際に使用するテンポラリフォルダ、4011はバックアップフォルダである。これらは、PC100の外部メモリ211に確保されるものとする。ここで、4001、4002の複数のホットフォルダに対する設定は図14で説明した設定画面を介して可能であり、各々異なる設定が施された複数のフォルダ(第1フォルダ、第2フォルダ・・)は区別されて表示される。
詳細は後述する説明から明らかになるが、設置するホットフォルダの数に制限はなく、それぞれに異なる属性を設定できる。図示の場合、ホットフォルダ4001には、格納されたファイル中の各ページを4in1(4UP)にし、斜行補正を行う等の設定がなされている。また、ホットフォルダ4002は2in1、黒点除去、バックアップを作成する等が設定されているものとする。なお、斜行補正とは、原稿を読取る際に、原稿送りが正しく行われず、斜めに読取った場合の回転補正を言う。また、黒点除去とは、読取った画像中のノイズとなって現れる孤立した黒ドットを除去する処理である。
さて、図41では、ネットワーク上の複合機130より、原稿束4100をセットして、転送先としてホットフォルダ4001を宛て先として読取り、その際のデータフォーマットとしてPDFやMTiFF等のマルチページ形式(複数のページが含まれる)の画像フォーマットを指定した場合を示している。読取られた原稿束4001の各ページの画像が1つのファイル4100’としてホットフォルダ4001に格納される。同様に、原稿束4101をセットして、転送先としてホットフォルダ4002を宛て先として読取った場合には、ファイル4101’としてホットフォルダ4002に格納されることを示している。
ホットフォルダプログラム4200は、ホットフォルダ4001、4002内に新たなファイルが格納されたか否かを監視する。そして、新たなファイルが格納されたと判断した場合には、ホットフォルダ4001、4002に設定された処理を行うべくアクションプログラム4300を実行させ、製本アプリケーション104が解釈可能なデータファイル4100''及び4101''をテンポラリフォルダ4010に格納する。例えば、ホットフォルダ4001には、4in1(4UP)、斜行補正等が設定されているので、斜行補正を行った後、4in1形式の属性を生成し、その結果をテンポラリフォルダ4010に格納する。また、ホットフォルダ4002には、2in1、黒点除去、バックアップが設定されているので、ホットフォルダ4002に格納されたファイル4101’については、そのコピーをバクアップフォルダ4011に格納する。そして、黒点除去処理を行い、2in1(2UP)の属性を生成して、テンポラリフォルダ4010に格納する。
この結果、テンポラリディレクトリには、製本アプリケーション104がインポート可能なファイルが格納されることになるので、製本アプリケーション104ではそのファイル内の各ページの画像を、新規ブック、或いは既存のブックにページを含む章、又はページとして追加することになる。
なお、ホットフォルダに設定される属性には、先に説明したブック、章、ページに設定可能な属性が含まれる。上記はその一例を示したものである。また、ホットフォルダに設定する属性に基づいてアクションプログラムが実行されるが、設定可能な属性には予め優先順位が設定されている。例えば、図41のホットフォルダ4001に対して斜行補正処理が4in1処理より先に行われるのは、この理由によるものである。
以上の結果、ホットフォルダにファイルを格納すると、そのホットフォルダで設定された属性に変換した上で、製本アプリケーションにインポート可能になるので、製本アプリケーション上でブック、章、ページの属性を設定する手間を省くことができるようになる。
以上実施形態におけるホットフォルダの利用による処理の概要を説明したが、以下では、更にその詳細を説明する。
<ホットフォルダプログラムの説明>
図20は、ホットフォルダプログラム4200の処理手順を示すフローチャートである。
ステップS2001で一定期間が経過したかどうかを判断する。一定期間ではなく、OSからフォルダの状態が変化した事旨の通知を受け取る事が可能であれば、その方式で良い。また、OSが米国マイクロソフト社のWindows(登録商標)あればシステムにタイマーを発行してもらい一定時間間隔でOSからタイマーイベントを受け取る事で実現する事が多い。本実施形態では、タイマーを使ってフォルダの監視を行うものとする。なお、監視する時間間隔は、利用者が設定可能としているが、概ね数分間隔で良いであろう。
ステップS2001で一定期間が経過していない場合は、何もせずに一定時間が経過するのを待つ。つまり、次のタイマーイベントを受け取るまでシステムに制御を渡す。ステップS2001で一定期間が経過した場合、つまりタイマーイベントを受け取った場合、ステップS2002へと進む。ステップS2002以降は、全ての監視対象のフォルダに対して処理を行うためのループである。監視対象のフォルダが一つであればこのステップは不要であるが、本実施形態でシステムの場合、多数のホットフォルダを作成可能であるため、ループを用いて全てのホットホルダ状態を調べている。監視対象であるホットフォルダ単位でスレッドやプロセスを起動してそれぞれ独立に監視する形態等のバリエーションも可能であるが、原理的には本図の処理と大差は無い。
ステップS2002では、全ての監視対象フォルダに対する処理が終わったかどうかをチェックし、まだ処理をすべきフォルダが残っていればステップS2003へと進む。また、全ての監視対象フォルダの処理が終わっていれば最初に戻り、次のタイマーイベントを待つことになる。
ステップS2003では、未処理の監視対象フォルダから一つを選択する。ユーザがフォルダに対して処理の優先度を設定できる場合、或いは、内部的に優先度を保持している場合には、優先度に従い監視対象フォルダのリストから一つを選択する。優先度を持たない場合は、単純に監視対象フォルダリストの先頭からフォルダを選択すればよい。
次に、ステップS2004に進み、ステップS2003で選択したフォルダの状態変更をチェックする。OSのサービス関数を使用して、選択フォルダのファイル数、ファイル名、ファイルのサイズ変化、ファイル構成の変化等の情報を取得し、取得したフォルダの状態に関する情報を調べて、アクションを起こす対象となる変化が起きているかを調べる。ファイル構成の変化によってアクションを起こす場合には、前回のタイマーイベントで調査した時のフォルダ内のファイル数、各ファイルのサイズ、更新日時、アクセス権限などの情報を保持しておき、今回取得した情報と比較する。
次に、ステップS2005に進み、ステップS2004の調査結果でアクションを起こすべき変化があったか否か、より詳しくは新規ファイルが格納されているか否かを判定する。ステップS2005でアクションを起こすべき変化が無ければ、ステップS2002へと戻り次の監視対象のループに進む。ステップS2005でアクションを起こすべき変化があると判定された場合、ステップS2006へ進み、そのフォルダに対して指定されているアクションを実行する。アクションを実行した後は、ステップS2002へと戻り次のフォルダに対してループを繰り返す。
<ホットフォルダの処理実体>
上記説明のホットフォルダプログラムを実行するには、タイマーイベントを受け取るためのアプリケーション実行が必要である。制御の容易性から、実施形態でのホットフォルダプログラムは製本アプリケーション104とは別個に、常駐型のアプリケーションとして実装したものとして説明する。無論のこと常駐型のアプリケーションを製本アプリケーション104に含めるようにしても良い。
この常駐型アプリケーションの起動方法は、システムのサービスとして組み込まれて、OSの起動と同時に動作するアプリケーションとして動作するタイプと、システムにユーザがログインした時に自動的に起動するタイプと、ユーザが明示的にプロセスを実行するタイプとがある。本実施形態では、ユーザがログインした時に自動的に起動するタイプである。Windows(登録商標)ではユーザのスタートアップメニューに登録する事で、ユーザのログイン時に自動的にホットフォルダアプリケーションを起動する。この場合、システム権限ではなく、各ログインユーザの権限で動作させるため、ユーザの権限に応じたアクセス制限やシステム情報の取得が容易であるという利点がある。
図21は常駐型のホットフォルダプログラム実行時の表示画面に表示されるOSが用意するタスクバーの例を示す図である。タスクバーのトレイ中の符号2101が実施形態におけるホットフォルダプログラムが実行されていることを示すアイコンである。アイコン2101にマウス(登録商標)カーソルを移動して右クリックすることで、メニュー2102が表示される。図示では、この右クリックされた状態を示していることになる。メニューの「Sendフォルダの設定」が選択されると、フォルダの状態変化が発生した時のアクションを設定するGUI(ウインドウ)を開く。「終了」を選択されると、常駐型アプリケーションを終了する。終了後は、ホットフォルダプログラムが実行されなくなり、ホットフォルダを監視する事ができない。すなわち、フォルダの状態変化がおきても何もアクションが起こらない。ただし、ユーザはスタートメニューから手動で常駐型アプリケーションを起動する事もできる。
<ホットフォルダによるファイルの自動インポートの設定>
ホットフォルダによるファイルの自動インポート機能の設定について説明する。自動インポートでは、ホットフォルダに対してファイルの追加が有ったかどうかを監視し、追加されたファイルがあったら、製本アプリケーション104にインポートするというアクションを起こす。
図22は、複数のホットフォルダに対する自動インポートの設定GUIの例を示す図である。このGUIは、図21に示すタスクバーの右クリックメニューから「Sendフォルダの設定」を選択されると表示される。
リストボックス2201は現在監視対象となっているフォルダの一覧を表示する。監視対象フォルダには、識別を容易にするために、任意の文字列からなる名称を付けることができるようになっている。
ボタン2202は監視対象となるフォルダを追加するためのボタンである。本ボタンが押下されると、ホルダ名やフォルダのパスなどを設定するGUIを表示し、必要な情報が入力できるようになる。フォルダのパスはユーザが任意に設定できるものとする。
ボタン2203はリストボックス2201で選択されているフォルダの設定情報を変更するためのボタンであり、本ボタンが押下されるとフォルダ設定を変更するGUIを表示する。
ボタン2204はリストボックス2202で選択されているフォルダを監視対象から外すためのボタンであり、本ボタンが押下されると現在選択されているフォルダがリストボックス2201から削除する。監視対象から外すだけで、フォルダをファイルシステムから削除することを意味するものではない。
ボタン2205はリストボックス2201に表示されている監視対象フォルダを全て選択状態にするためのボタンである。
ボタン2206はリストボックス2201で選択状態となっているフォルダの選択状態を外すためのボタンである。本ボタンが押下されると、全てのフォルダが選択されていない状態にする。
なお、先に説明したように、複合機130は、所望とするネットワークリソースに向けて読取った原稿画像を送信することが可能となっている。そのアドレスを構成する文字を1つ1つ複合機130で入力するのは手間がかかるので、予め、PC100側から複合機130に向けて、送信対象となるリソース(共有フォルダ)を登録することを可能にしている。複合機130では、各PCから登録されたネットワークリソースを選択するだけで、送信先を決定できるためである。
図22におけるボタン2207は、選択中のフォルダの情報を複合機130に登録、保存させるためのボタンである。本ボタンが押下されると、ファイル名を指定するためのダイアログボックスを開き、リストボックス2201で選択されているフォルダの情報を宛先情報形式(複合機がインポート可能な形式)のデータファイルに加工し、ユーザが指定したファイル名で保存する。
図23から図25は、監視対象フォルダを追加・編集する際に表示するGUIの例を示している。図示のように、タブ形式で表示され、所望とするタブを選択することで、図23乃至頭25のいずれかのGUIを表示する。このGUIは図22のボタン2202、2203をクリックした際に表示されるものである。
図23は、監視対象フォルダの設定と宛先情報の入力を兼用するGUIの例である。監視対象を指定するだけであれば、フォルダのパスだけが分かればよいが、前述した通り、複合機(ネットワークスキャナでも構わない)に、ホットフォルダの所在を登録するため、複合機に対するエクスポートする機能を持つ。このため、フォルダのパスと合わせて宛先情報に必要な項目を設定する必要がある。
図23の詳細を説明する前に、宛先情報のフォーマット例を図26に示す。
最初の3行はコメントである。一行の空白をはさんで、項目が列挙されている。コロンの左側は項目名、右側は項目の値である。
cnは宛先名、cnreadは宛先のフリガナ、urlはホストPC名(ネットワーク上でのPC100の名前)である。この3項目はBASE64エンコードされることを示している。pathはスキャンデータを置く共有フォルダ名である。usernameはホストPCに書き込み権を与えられているユーザ名、pwdはそのパスワードである。このユーザ名、パスワードは複合機130にて、PCのフォルダにスキャンデータを送信する際に、PC100へのアクセス権を得るために使用する。protocolはファイル転送の際に使用するプロトコルを示しており、ftpやsmbが選択できる。accesscodeとobjectclassはプロトコルなどに応じて決まっている予約情報である。
図23の説明に戻る。テキストボックス2301は、宛先名cnを入力するコントロールである。この宛先名は、図22のリストボックス2201のフォルダ名にも使用される。
テキストボックス2302は、宛先のフリガナcnreadを入力するコントロールである。ファイル監視には必要ないが、宛先情報を作成するために必要な情報である。テキストボックス2303は、ホスト名urlを入力するためのコントロールである。テキストボックス2304は、フォルダへのパス名pathを入力するためのコントロールである。ボタン2305は、ファイルダイアログを開くボタンである。ファイルダイアログで指定したパスを2304のパス名に入力できるようになっている。ファイルダイアログ上で新しいフォルダの作成をする事や、テキストボックス2304に入力したパスを作成する機能を有しているため、必ずしも既存のパスを指定する必要は無い。
テキストボックス2306と2308は、ユーザ名とそのパスワードを入力するためのコントロールである。複合機130上でPC100にログインする際に使用する。適切なユーザを指定しないとスキャナがファイル書き込みに失敗する可能性がある。
プロトコルとしてSMBを使用する場合、フォルダが共有設定されており、ホストPC外からフォルダがアクセス可能な状態になっている必要がある。本実施形態で説明するシステムは、フォルダを新規追加する場合とパス名を変更する際に、指定されたパス名に共有設定がなされていない場合には自動的に共有設定を行う機能を有している。Windows(登録商標)システム上で動作する場合は、Win32API関数を使用してテキストボックス2304で指定されたパスに対して共有設定を行う。共有設定時には全ユーザにアクセス権を与えているが、セキュリティ上問題がある場合は、テキストボックス2306で指定されているユーザに対してだけ共有を許可する方式でも構わない。
図24と25は監視対象フォルダにファイルが追加された場合に常駐型アプリケーションが起こすアクションを指定するGUIの例である。図25は取り込み後のデータのバックアップに関する設定、図24はそれ以外の設定を集めたGUIである。
図24のGUIで設定可能な項目を説明する。本実施形態では設定を4つに分類しており、GUI上でも水平線で4つに区切ってカテゴリ分けしている。上から順に、新規のブックファイルを作成するか、既存のブックファイルへの追加読込みであるかの設定、インポート後のファイルや章に対する属性や文書内部に取り込まれている状態でのページのデータ形式の指定、空白部を認識して章構造を自動編集する機能の設定、画像補正設定である。
ラジオボタン2401は、ホットフォルダにファイルが追加された時に、新規ブックファイルを作成するか、既存のファイルに追加するかを選択するコントロールである。なお、図示の「PM」とは、製本アプリケーション104のことを示している。
複数ページをスキャンする場合、スキャナが1ファイルではなく、1ページ1ファイルを作成する設定の場合は、スキャンジョブの認識を行い1ページごとに1ファイルを作るのではなく、複数ページ分のスキャンデータをまとめて1つのブックファイルを作成する。この処理の詳細は後述する。
ボタン2402は、インポートしたデータに対して適用するテンプレートを指定するためのコントロールである。テンプレートとは、文書に対する設定値をグループ化したデータである。A4用紙、2UP、両面印刷、ステープルOnといった文書に対する複数の設定を一まとめにしてあり、属性を一つ一つ設定しなくてもテンプレートの適用によりワンタッチで複数の設定を変更する事ができる。
例えば、2UP、製本印刷などが設定されたテンプレートを指定できる。また、別なテンプレートを選択すると、1UP、両面、ステープル等が設定が行われることになる。先に説明した図41におえるホットフォルダ4001や4002等は、このようにして設定したものとなる。
本実施形態では、追加読み込みの場合は章に対する設定として属性値を適用する事も可能である。詳細については後述する。
ドロップダウンリスト2403は、インポートしたデータ、特に画像データをインポートした時の文書中の形式を指定する。TIFF、JPEG、BMP形式を選択する事ができる。特に指定しない場合は、画像データフォーマットに応じてできるだけ画質劣化がない方式でインポートするため、ファイルサイズが大きくなる。モノクロのテキストデータしかスキャンしないのであればTIFFを選択すれば、MMR圧縮で画質劣化することなくファイルサイズを小さくする事ができる。カラーデータであってもテキストやグラフィックではなく写真のようなデータであれば、JPEGを選択する事でファイルサイズを小さくする事ができる。
チェックボックス2404は、白紙ページを削除するかどうかを指定する。例えば、奇数ページ数しかない両面原稿の場合、最終用紙の裏面は白紙であるが、スキャンデータとしては裏面の画像も存在している。本チェックボックスをONにすると、画像データを調べて白紙であると判断した場合には、その白紙原稿ページを削除し、ブックファイルには取り込まれない。
チェックボックス2405は、白紙を認識して章の編集処理を行うかどうかのスイッチである。このチェックボックスをONにすると、ラジオボタン2406、チェックボックス2407が使用できるようになる。
ラジオボタン2406は、空白ページが出現した所で単純に章を分割する処理と、片面原稿を両面印刷で読み込んだ場合の様に交互に空白ページが出現した場合に、交互に白紙が出る部分をグループ化し章を作成するかのスイッチである。片面章を認識する場合には、更に章に対して片面/両面印刷の指定をするかどうかをチェックボックス2407で指定する事ができる。
チェックボックス2408は画像データをインポートする際に黒点除去処理を実施するかどうかを指定する。
チェックボックス2409では、画像データをインポートする際に斜行補正処理を実施するかどうかを指定する。
図25は、インポート後のファイルバックアップに関する設定を行うGUIの例である。
ラジオボタン2501は、インポート後にファイルを削除するかバックアップするかを指定する。
チェックボックス2502は、バックアップしたファイルを無制限に残すか(図41にしめるバックアップフォルダ4011にコピーをとるか)、制限を設けるかのスイッチである。チェックボックス2503は、ファイルサイズによる制限を有効にするスイッチで、本チェックボックスがONの場合には、さらにバックアップする総ファイル容量の最大量を指定する事ができる。この最大量を超えた場合には、古いファイルから順に削除される。
チェックボックス2504は、バックアップファイルを残す日数を設定するものであり、本スイッチがOnの場合は、更にファイルを何日残すのかを指定する事ができるようになる。バックアップファイルが作成された日付と現在の日付を比較し、日数制限を越えた場合にはファイルを削除する。
ボタン2505は、現在のバックアップファイルを全て削除するためのボタンである。本ボタンを押下すると、ファイルサイズや日数が制限に達していなくても、バックアップフォルダ4011内の全てのバックアップファイルが削除される。
実施形態では、図23から図25は、1つのホットフォルダに対する一つのダイアログ上のタブコントロールであるので、ホットフォルダ毎に異なるアクションを指定することが可能である。
図27は、図20のステップ2004の詳細を説明するフローチャートである。
先ず、ステップS2701で、前回のタイマーイベントに対応して調査した時の情報を読み出す。この情報は、RAM等に格納しておけばよい。
ステップS2702では、OSから、処理対象フォルダのファイル数、ファイル名、更新日時などの情報を読みだす。
ステップS2703では、ステップS2701とステップS2702で得た情報を比較し、フォルダ内のファイル構成に変化があったかを調べる。具体的には、フォルダ内の各ファイルに対して、前回調査時に存在していたかどうか、同名のファイルが存在していた場合は更新日時が前回調査時よりも後かどうかをチェックする。
ステップS2703で前回調査時とフォルダの構成が変化していると判定された場合には、ステップS2704へと進み、前回は存在していなかったファイルと前回調査時以後に更新されたファイルのリストを作成する。ステップS2703でファイル構成に変化が無いと判定された場合には、ステップS2705へと進む。
ステップS2705では、ステップS2702で取得した情報を書き出す。この情報は次回の調査時にステップS2701で読み出される情報となる。
ファイルのバックアップ処理で、インポート後にファイルを削除する場合、或いは、別フォルダにファイルを移動する場合には、前回処理したファイルは既に処理対象フォルダから移動されているか削除されているため、単に処理対象フォルダに存在しているファイル全てをインポートファイルリストに追加すればよい。その場合には、ステップS2701、ステップS2705は不要である。
尚、インポートファイルリストとは、図41の4100や4101のホットフォルダに、インポートファイルが1以上投入された場合に対応して登録される、ステップS2006においてアクションを実行するための待行列を示す。この待行列に登録されている1以上のファイルが後述のステップS2903において有無を判断されるファイルに対応する。
また、ここでのインポートファイルには、各種フォーマット画像ファイルは勿論のこと、ファイル化されていないような画像データをも含めることができる。
図28は、図20のステップS2005の判定処理およびステップS2006のフォルダに対するアクションの前段の詳細を説明するフローチャートである。ステップS2006の部分が長くなるため、インポート前のファイル処理と、インポート後の編集処理の2つに分けて説明する。
ステップS2801で、図27のステップS2704で作成したファイルリストが空であるかどうかを判定する。ファイルリストが空であれば終了する。ファイルリストが空でなければステップS2802へ進み、リスト内のファイルをファイル名順にソートする。
ステップS2803では、注目ホットフォルダに対してインポート時に画質補正をする設定になっているかをチェックする。これは図24で示したチェックボックス2408、2409がチェックされているか否かを判断することと等価である。画質補正を行うのでステップS2804へ進み、ファイルリストに登録されている各ファイルに対してファイルのテンポラリフォルダへのコピーを行い、そのコピーに対して画質補正処理を行う。画質補正をする必要が無ければステップS2809へと進みインポート処理を行う。
ステップS2804からステップS2808はファイルリストの各ファイルに対して画質補正を行うループ処理の説明である。
ステップS2804で、リストの先頭から順に処理を進めてゆき未処理のファイルが残っているかを調べる。ファイルリストの全てのファイルについて画質補正処理が終了していればステップS2809へと、画質補正処理が未処理のファイルがあればステップS2805へと進む。
ステップS2805では、ファイルリストの先頭から順に未処理のファイル名を取り出し、ステップS2806以降の処理対象とする。
ステップS2806では、ファイルをバックアップする設定になっているかを調べる。ユーザがラジオボタン2501で「フォルダ内にストアしておく」を選択している場合にはバックアップする設定である。この場合は画質補正をしてしまうとスキャン時のデータがなくなってしまうため、画質補正処理前にそのファイルのコピーを作成しておく必要がある。
ステップS2806でバックアップをする設定が行われていると判定されると、ステップS2807へと進み、画質補正前のデータファイルをバックアップフォルダ4011にコピーする。またバックアップしない設定であると判定された場合は、ステップS2808へと進む。
ステップS2808では、チェックボックス2408と2405のチェックに応じて画質補正を行いファイルを作成する。すなわち、ここでは、原稿を斜めに読み取ってしまった場合の回転補正、孤立した黒点除去等の処理を行う。斜め読取りの判定は、原稿のエッジを検出し、その原稿エッジで示される直線の傾きを算出することで行う。傾きが、所定角以上ずれている場合には、それを最寄りの水平或いは垂直線と一致させるため回転処理を行う。また、黒点除去は、黒画素数が所定数以下で、所定面積に集中し、且つ、所定範囲内に他の黒画素が存在しない場合、その黒画素をノイズとして判定し、それを白画素で置換える処理で実現する。
なお、該当するページのページ制御情報410(図3参照)には、バックアップページが存在すること、及び、バックアップフォルダ4011のパス名、及び、バックアップフォルダ4011にコピーしたファイル名を情報を格納しておく。また、注目ページがマルチページファイル内にある場合には、マルチページは初期では1つの章としてインポートされるので、章内のページ番号とマルチページファイル内でのページ番号は一致する。従って、ページ情報作成時に章の何ページ目であるかの情報も合わせてページ制御情報410に書き込んでおく。
ステップS2809はインポート処理である。詳細は図29で説明する。
ステップS2810はインポート後にファイルをバックアップするか削除するかを判定する。ラジオボタン2501でユーザがファイルを削除する設定にしていれば、ステップS2811へ、そうでない場合はステップS2812へと進む。
ステップS2811では、ファイルリストのファイルをホットフォルダから全て削除する。
ステップS2812では、ファイルリストのファイルをバックアップフォルダ4011に待避する。なお、このステップS2812の処理は、ステップS2807の処理を経た場合には行わない。また、本実施形態では移動先であるバックアップフォルダ4011の所在位置は予めプログラムで決めたフォルダにしているが、ユーザが指定できるようにしても構わない。ユーザが指定する場合は、リストア処理のために、どのファイルをどこに移動したかをホットフォルダの設定もしくはブックファイルのいずれかに記録しておく必要がある。
図29は、図20のステップS2006のフォルダに対するアクションの後段の詳細を説明するフローチャートであり、図20のフローチャートに基づいて階層構造で管理されるブックファイルを作成するPC100において、図14等を介して設定が施されたフォルダに対するインポートファイル(データ)の投入が検出された場合に実行される。ここで、検出の対象となるフォルダとは、図41に示される複数のホットフォルダが想定され、この複数のホットフォルダには各々異なる図14の設定画面を介した設定が施されていることが想定される。
また、インポート対象の製本アプリケーションが起動しており、その製本アプリケーションにインポートファイルリストとインポート時のアクションに関する設定が渡されているものとする。
まず、ステップS2901で既存ファイルへの追加なのか、インポートファイルだけからなる新規フィルを作成するかを判断する。製本アプリケーションが起動していない、或いは、起動しているが現在開いているファイル無い場合には新規ファイル作成であると判定する。新規ファイル作成だと判定した場合は、ステップS2902へと進み、テンプレートを適用する。適用するテンプレートはフォルダの設定で図24のボタン2402で指定されているテンプレートである。このテンプレートの設定が新たなブックの属性の設定とされる。
ステップS2901で新規ファイル作成ではないと判定された場合には、ステップS2903へと進む。
ステップS2903では、インポートファイルリストの各ファイルに対して処理を行うためのループの終了判定を行っている。インポートファイルリスト中の全てのファイルに対して処理が終了していればステップS2910へと、未処理のファイルが残っていればステップS2904へと進む。尚、ステップS2903でYesと判断される場合は、複数のフォルダの何れかに対して追加インポートファイルの投入が行なわれた場合に対応する。このステップS2903は、既に作成されたブックファイルに対して新たな章が何れかのフォルダを介して入力され作成される場合にも適用されるし、ステップS2902において新規に作成されたブックファイルに対して更に何れかのフォルダを介してデータが入力され、前記何れかのフォルダの設定を反映さえた章を追加する際も適用される。
ステップS2904では、インポートファイルリストの先頭から順に処理対象となるファイル名を取り出している。
ステップS2905では、ステップS2904で取り出されたファイル名から複合機130からのデータファイルのスキャン方式を判定している。複数ページから構成される原稿をスキャンする場合のファイル作成方法として、スキャンデータをマルチページのPDFやマルチページTIFF(MTIFF)として1ファイルで保存する場合と、ページ毎に別ファイル(シングルページ形式のファイル)で原稿のページ数分のファイルを作成する方法の2種類を選択する事ができる。複合機130において1ファイルで作成する場合は、「“年月日時分秒”.“拡張子”というフォーマットのファイル名で1ファイルを、複数ページを作成する場合は、「“年月日時分秒”_“ページ番号”.“拡張子”」というフォーマットで複数ファイルをそれぞれ作成するものとする。
例えば、TIFFフォーマットで2000年1月1日1時11分ちょうどに2ページ原稿のスキャンを開始した場合、1ファイルで作成する指定の場合には、「20000101011100.tiff」というファイルが、複数ファイルを作成する設定の場合は、「20000101011100_00001.tiff」「20000101011100_00002.tiff」の2ファイルが作成される。処理対象となるファイル名が後者のフォーマットの場合は、ページ単位でファイルを作成する設定でスキャンしていると判断してステップS2906へと進み、それ以外の場合はステップS2907へと進む。これにより、フォルダに投入されるドキュメントデータが複数のシングルページ形式のファイルであった場合に、複数のシングルページ形式のファイルを1つの新規チャプターとして作成することができる。
ステップS2906では、ファイル名の拡張子の直前にある“ページ番号”部分を示す文字列が「00001」で有るかを調べる。「00001」の場合は、複数ページ作成する場合の最初のページであるのでステップS2907へと進む。
ステップS2907では、原稿のページを格納するための章を作成する。1つのスキャンデータが1ファイルから構成される場合やインポートするファイルがスキャナから送付された画像データではない場合、或いは、1つのスキャンデータが複数ファイルから構成される場合、ページデータを格納する為の章を作成する。
次にステップS2908へと進み、ステップS2907で作成した新しい章に対して属性設定処理を実行する。属性設定処理は後で詳しく説明する。
ステップS2906で、最初のページであると判定されない場合、最初のページを処理する時にデータを格納すべき章を作成済みであるのでステップS2909へと進む。
ステップS2909では、ステップS2907で作成した章へと順にページのデータを追加する。そしてステップS2903へと戻りリストの最後まで順に章作成とページ追加処理を実行する。
このとき、追加するページのページ設定情報411には、追加するページを取り込んだホットフォルダの設定条件に従った情報をセットする。例えば、4UPの設定がなされたホットフォルダに格納されたページを追加する場合には、ページ設定情報411には、4UPであること、及びページデータリンク412には4枚の原稿画像にリンクする情報を格納することになる。また、ホットフォルダに対して設定された他の属性についても、同様に設定を来ない、図3に示す章制御情報、章設定情報、ページ情報リスト、ページ制御情報、ページ設定情報、ページデータリンクを作成していく。ただし、この段階では、どの文書(ブック)に属するかは未定である。
インポートファイルリストの全てのファイルについて、章作成とページ追加処理が終了するとステップS2910へと進み、製本アプリケーションの機能を実施する。
図24のGUIでは、製本アプリケーションの機能としてラジオボタン2406で指定する、白紙除去や章分割処理を選択する事が可能である。
本実施形態では、データの追加が終わった後の処理は白紙ページ削除と章分割の処理だけを記載しているが、製本アプリケーションの任意の機能を実施する事が可能である。
<ファイルの新規作成と既存ファイルへの追加>
次に、ステップS2901の新規ファイルへの追加か否かを決める処理について詳細に説明する。本実施形態では、ファイル名を指定する方法ではなく、ウィンドウへの追加という方式を説明する。この方式は、GUIを見せない処理と比べてウィンドウが開いているので追加後の状態をすぐに確認する事ができるという利点がある。GUIを見せずにファイルを作成あるいは追加する場合は、最低限新規作成するファイル或いは追加対象ファイルのパス名を指定する必要がある。パスの指定はWindows(登録商標)標準のダイアログを使用すればよいため、説明は省略する。
図30は、製本アプリケーション104における追加読み込みを許可するモードを設定するGUIの一例である。
図示のボタン3001をクリックすると、編集中のブックに追加読み込みが可能になる。複数の追加読み込み可能なウィンドウがあると再度選択が必要になるため、本実施形態では操作ステップを簡略化するため、システム上に高々1つの追加読み込みウィンドウを持つ方式にする。複数の製本アプリウィンドウが開いている時に、或る製本アプリケーションのウィンドウでボタン3001をクリックすると、そのクリックした製本アプリケーションのウインドウが、ホットフォルダプログラムで生成された電子原稿の章やページの組み込み対象として優先的に決定される。つまり、3001への指示入力により特定されるウィンドウに対して、上に説明した図29のフローチャートの処理が製本アプリケーション104によって実行されることとなる。
図31は、ホットフォルダの常駐型アプリケーションプログラム(ホットフォルダプログラム)が追加対象の製本アプリケーションのウィンドウを確定する手順を説明するフローチャートである。
ステップS3101で、フォルダの設定が既存ファイルへの追加設定になっているかを判定する。新規作成の設定になっている場合は、ステップS3102へと進み、追加対象となるべき新規の製本アプリケーションを立ち上げる。
次にステップS3103へ進み、ステップ3102で起動した製本アプリを追加読み込み可能な設定に変更する。この機能を実現するために、製本アプリケーション104と常駐型アプリケーション(ホットフォルダプログラム)との間で追加読み込み許可をON/OFFするインタフェースを実装している。
次にステップS3104へと進み、ステップS3103で追加読み込み設定をした製本アプリケーションのウィンドウを追加インポートの対象とする。
また、ステップS3101において、既存ファイルへの追加設定になっている場合、ステップS3105へと進む。
ステップS3105では、OSのAPIを使用して、現在起動しているアプリケーションのウィンドウハンドルを順に取得し、ウィンドウに対してファイルの追加読み込み許可がONになっているかを問い合わせる。この機能を実現するために、製本アプリケーションとホットフォルダプログラムとの間で追加読み込み設定の状態を問い合わせるインタフェースを実装している。
ステップS3105で追加可能な製本アプリケーションのウィンドウが見つからなかった場合、実施形態ではエラーとはせずに、新規ファイル作成へと処理を切り替える。そこで、ステップS3105からステップS3102へと進み、新規作成のフローに合流する。
ステップS3105で追加可能な製本アプリケーションのウィンドウが見つかった場合はステップS3104へと進み、見つかったウィンドウを追加対象とする。
<インポート時の章への属性設定>
本実施形態では、図24で示したとおりブックに対してテンプレートを使用して属性設定をしている。しかし、実施形態では、ブックという何れかの階層に対する指定だけではなく、章というブックとは別の階層に対する設定を適切におこなう事が可能である。
図32は図29のステップS2908の詳細を説明するフローチャートである。この図32により、ブックファイルにドキュメントデータを追加させるべく、フォルダにインポートデータが投入された場合に、フォルダの一部の設定を採用し、章として追加されるドキュメントデータの設定とする処理が実現される。このドキュメントデータとは、例えば、ブックファイルのチャプターデータであり、チャプターデータにはチャプターの属性の設定とページデータが含まれる。
ステップS3201はループの終了判定であり、図14のUIを介して設定されたブックのテンプレート中の全項目を処理したかどうかを判定する。ステップS3201で全項目の処理が終了したと判定された場合は終了する。また、ステップS3101でまだ未処理の属性項目が残っていると判定した場合にはステップS3202へと進む。
ステップS3202でテンプレートから未処理の設定項目を取り出し、ステップS3203へ進み、章にも適用可能な属性項目であるかを判定する。判定方法は、章に適用可能な項目はどうかを記したテーブルを保持しておき、テーブルを参照する事で判定する。図4で示したブックの属性のうち、印刷方法の設定やインデックス紙の設定など図5に示す章属性に無い項目である場合は、章に適用することができないので、ステップS3101へ戻る。
用紙サイズやNup印刷指定など、章にも同様の設定項目が有る場合はステップS3204へ進み、更にブックの属性と矛盾するかどうかを判定する。例えばブックの印刷設定が製本印刷の場合、章での用紙サイズ切り替えはできないので章に項目が合っても用紙サイズの項目は適用できないと判定する。ブックの設定と矛盾があるかどうかも内部にテーブルを持っており参照する事で判定する。
ステップS3204でブックの設定と矛盾しない、すなわち、整合すると判定されるとステップS3205へと進み、章の設定として適用する。この際、例えばブックが2UPであり、テンプレートにも2UPが設定されている場合、章に対して2UPを設定する方式と、ブックと共通である場合には章に設定しなくても結果は同じであるため設定を適用しないという方法もある。システムがどちらの処理を適用するか固定でも、上位層と同じ設定値の場合に設定をするかしないかを指定するコントロールを図24のGUIに追加して、ユーザが選択できるようにしても良い。
次にステップS3206へ進み、ブックの設定に影響するかを判定する。例えば、ブックの属性の1つが片面設定で、追加処理のテンプレートが両面設定だとする。本実施形態では、章毎に片面印刷と両面印刷を切り替えるためには、ブックが両面印刷である必要があるので、ブックの属性を両面設定に変更し、更に両面設定のテンプレートを適用する章以外の全ての章の設定を片面印刷に書き換える必要がある。このような場合にブックや他の設定に影響があると判定され、ステップS3207へと進む。ブックが2UPで、テンプレートが1UPの場合は単に1UPを適用すればよい。このような場合は他の設定に影響が無いと判定され、ステップS3201へと戻る。ステップS3207では、既に説明したように、ブックや章の設定を変更する。
ステップS3206の判定基準や設定変更方法もテーブルをもっており、テーブルの内容に従って判定、設定変更を行う。
<バックアップファイルとの置き換え>
先に説明したように、本実施形態でのホットフォルダには、ファイルインポート時に画質補正を自動的に適用することができる(実施形態では、補正処理として斜行補正、黒点除去としている)。しかし、補正パラメータが適切でなく、例えば黒点除去で濁点などの必要な点まで消えてしまう場合がある。例えば、複合機130で読取る原稿中の文字が小さく、アルファベットのiや日本語の濁点などが、ノイズによるものと判断され除去されてしまう場合がある。このような場合に、ブック中の該当するページを、バックアップフォルダ4011に格納されたファイルのページで置き換えることも可能である。
このバックアップページとの置換えは、製本アプリケーション上で、対象とするページを選択し、右クリックすると表示される処理メニュー中の「バックアップページとの置換え」(不図示)を選択することで行う。ただし、該当ページがバックアップページが存在する場合にのみ、このメニュー項目「バックアップページとの置換え」が表示される。
該当するページのバックアップページが存在するか否かの判定は、ホットフォルダプログラムが、画像補正処理(図28の説明参照)する以前にバックアップフォルダにコピーした際、該当するページ制御情報410にバックアップが存在することを示す情報が格納されているので、それを用いて判定する。
図33は、バックアップファイルとの置き換え処理を説明するフローチャートである。
ステップS3301で、ユーザが置き換えを指定したページのページ制御情報410から、インポート時に書き込んでいたバックアップフォルダ名とファイル名を読み込む。
次にステップS3302へ進み、ステップS3301で読み込んだバックアップフォルダ名とファイル名で指定されるパス名に、該当するファイルが残っているかを確認する。ステップS3303でバックアップファイルが残っている場合はステップS3304へ、残っていない場合はユーザにエラーメッセージを表示して処理を終了する。
ここで、ファイルが無い場合には、更に、ウィンドウズ(登録商標)のテンポラリフォルダなど別のフォルダ中にファイル名と同じデータが含まれているかを追加検索しても良い。
ステップS3304でバックアップファイルを文書に取り込み可能な形式に変化し、ステップS3305へ進みファイルに仮取り込みする。バックアップファイルがマルチページファイルであってもページ操作が自由に行える場合はステップS3304で変換した状態のままで仮取り込みをしなくても良い。
ステップS3306で、マルチページファイルであるかを判定する。この判定は、仮取り込みした時のページ数からでも、ページ制御情報401にページ番号の情報があるかどうかからでもバックアップファイルのファイル名からででもどこでも判定できる。ここでマルチページファイルであると判断された場合は、ステップS3307へ進み、ページ制御情報S410からページ番号情報を読み込む。
ステップS3308では、ページ情報リスト413で、仮取り込みしたファイルと、置き換え指定されているバックアップフォルダ内の該当するバックアップファイル中のページとを入れ替える。マルチページファイルの場合は、仮取り込みしたページの中からステップS3307でページ番号を読み込んでいるので、複数ページ仮取り込み去れているデータからページ番号に該当するデータのみを入れ替える。
次にステップS3309へ進み、ステップS3308で入れ替えた古いページデータと、マルチページデータであれば置き換え対象でないページデータを全て削除する。
なお、編集中のページをバックアップページで置換えた場合、バックアップフォルダ内のバックアップファイルは削除しない。マルチページファイルの場合、バックアップファイルで置換えたページとそうでないページが混在する可能性があるためであるし、製本アプリケーション上で画像編集を行った際に、誤った編集を行った場合にも対処するためである。
本実施形態では詳細を説明しないが、ユーザが複数ページの置き換えを指定した場合には、バックアップファイル名を調べて、同じバックアップファイルを使用しているページをまとめて処理する事で、バックアップファイルの変換および仮取り込みの処理回数を低減させる事が可能である。
<章への属性適用テーブル>
図32の説明では、ブックの属性を章に適用する際にテーブルを参照するものとして説明した。図34は、インポートする際のブック属性を章に適用する際に参照するテーブルの例である。
ステップS3203の章にも適用可能な属性項目であるかの判定には、図34に示す表の3列目「章に適用可能か」の項を使用する。「○」になっている項目は適用可能、「△」の項目は他の設定との関係で丸められる場合がある設定、「×」の項目は適用不可である。
この図34が製本アプリケーションにより読み込まれることにより、既に製本アプリケーションに読み込まされているブックのファイル(ドキュメント)にインポートファイル(ドキュメントデータ)を追加させるべくフォルダにデータが投入された場合に、図14の設定画面を介して設定されたフォルダの一部の設定が図34のテーブルに基づき採用され、章として追加されるインポートファイルの設定とする処理が実現される。図4がフォルダの一部の設定の例として挙げられる。
ステップS3204で、更にブックの属性と矛盾するかどうかを判定するには表の4列目「矛盾判定」の項を使用する。印刷方法の場合、ブックで「製本印刷」の設定になっている場合には章の設定はできない、ブックで片面あるいは両面印刷の設定になっている場合には適用可能と判定する。
ステップS3206の判定基準や設定変更方法は、表の5列目「設定変更方法」を使用する。
システムの仕様に応じてテーブルを書き換えることで、章への属性設定方式を変えることができる。
図35は、印刷方法の設定を適用する場合の処理例を説明するフローチャートである。この図35のフローチャートは、図34における「印刷方法」の項目を例にした場合の、図32におけるステップS3204乃至3208の処理をより具体的に説明したものに対応する。
ステップS3501で、ホットフォルダで指定されている印刷方法を調べる。片面印刷の場合はステップS2502へ、製本印刷の場合はステップS3505へ、両面印刷の場合はステップS3506へと進む。
ステップS3502では、文書設定情報403から現在、ブックに指定されている印刷方法設定が何かを調べる。ブックの印刷設定が両面印刷の場合はステップS3503へ、それ以外の片面もしくは製本印刷の場合はステップS3404へ進む。ステップS3503では、章の印刷設定に片面を指定する。この設定をする事で、両面印刷の一部分が裏面を使わない印刷方法に変更され、しかも、その片面印刷部分はプリンタに対して片面印刷のコマンドを発行するので、両面印刷ユニットを通らないため印刷時間を短かくすることができる。
ブックと章の属性の設定が片面印刷で一致あるいは、ブックが製本印刷の場合は章での設定はできないため、ステップS3405では特に何もせずに終了する。
ステップS3505では、章にはブックの設定が優先的に採用されるため製本印刷の設定はできず、章に対する印刷方法の設定は何もせずに終了する。
ステップS3506では、ブックでの印刷方法設定を調べる。ブックの印刷方法設定が片面印刷の場合はステップS3507へ、それ以外(両面印刷または製本印刷)の場合はステップS3510へと進む。
ステップS3507では、追加読み込みしている章だけが両面、それ以外は片面印刷になるように設定する。本実施形態ではブックの設定を片面印刷の時には章で両面印刷に変更する事はできない。ブックで両面印刷を設定し、片面印刷したい章を片面印刷の設定に、両面印刷したい章を両面印刷の設定にそれぞれ変更する必要がある。
そこで、ステップS3507ではブックの印刷設定を両面印刷に変更する。このままでは全体が両面で印刷されてしまうので、ステップS3508へ進み、全ての章に対して片面印刷を設定する。この時点で、図35のフローに入る前の状態、つまり、全ページが片面印刷で出力される状態になる。次にステップS3509へ進み、現在追加対象となっている章に対して両面設定を行う。
ステップS3510では、ブックと章の設定が両面印刷で一致、或いは、ブックが製本印刷で章に対しては印刷方法が指定できない状況なので何もせずに終了する。
以上のように図35のフローチャートが実行されることにより、監視対象のフォルダにデータが投入されたことを検出した場合、ブックファイルにフォルダの設定に従った新たな追加データが生成されるが、その際にブックファイルに追加されるドキュメントデータの設定が、ブックファイルの属性と同じ場合には、追加されるドキュメントデータの設定をブックの属性の変更に連動させ、ブックファイルに追加されるドキュメントデータの設定がブックの属性とは異なる場合には追加されるドキュメントデータの設定をブックの属性とは独立させるよう設定が行なわれる。
また、言い換えれば、ブックファイルに追加されるドキュメントデータの設定が、ブックファイルの属性と同じ場合には、図15の設定画面を表示すると、1501乃至1503にチェックボックスにチェックがいられている。
また、ブックファイルに追加されるドキュメントデータの設定がブックの属性とは異なる場合には、追加されるドキュメントデータの設定をブックの属性とは独立させるよう設定が行なわれ、図15の設定画面を表示すると1501乃至1503のチェックボックスにチェックが入れられていないこととなる。
<章への属性設定処理のもう一つの例>
図35のS3504、S3510では、章に設定すべき設定値と現在のブックの設定値を比較して同じであれば何もしないという方式であった。もう一つの実施形態として、インポートする際、上下の階層で同一の設定となる場合でも下位の階層に対して設定を行う場合の処理を以下に説明する。
図36は、章に対する設定処理を示すフローチャートである。
先ず、ステップS3601では、フォルダへのインポートファイルの投入に応じて、追加しようとする章に設定されたNupの設定情報を読み込む。
次いで、ステップS3602では、現在のブックファイルのNup設定値を文書設定情報403から読み出す。
ステップS3603では、ステップS3601とステップS3602で読み出した結果が等しいかを判定する。等しくない場合は、ステップS3605へ進み、章設定情報407に対してステップS3601で読み出した設定値を設定する。ブックと章双方の設定が一致した場合、ステップS3604へと進み、設定が一致している場合であっても章に設定をするかどうかを判定する。この指定は、システムの仕様でどちらか一方だけの処理にしていても、ユーザが指定できるようになっていても良い。ユーザが指定する場合、ホットフォルダの設定にしてフォルダごとに個別に設定できるようにしても良いし、製本アプリケーションの設定にして全ての処理で共通にしても良い。
ホットフォルダの設定にした場合のGUIの例を図37に示す。図示では、チェックボックス3701をチェックすると、章とブックの設定が一致していても章への設定を行う。ブックと章の設定が一致していても章に設定する場合はステップS3605へ進み章設定情報407へ設定を書き込む。ブックと章の設定が一致している場合は書き込みをしない設定の場合には、特に何もせずに終了する。
以上の結果、ブック、章それぞれに対して設定されることになるので、ブック属性を仮に変更したとしても、章での属性の設定が残ることになり、意図的な章の属性設定が保持されるようになる。
<バックアップ作成判定のもう一つの例>
図28のフローでは、バックアップをするかどうかを図25のラジオボタン2501の指定内容を読み込む事で判定していた。もう一つの判定方法の例として、必要な場合にのみバックアップを行う場合の判定処理を示す。
本実施形態では、元データを必要とするのは画像補正でデータを書き換えてしまう場合である。この場合、バックアップを指定するラジオボタン2501をGUI上から排紙し、「画像補正を行う場合にバックアップする」という選択肢に変更する。
図38はバックアップ処理を含む図28のフローチャートでバックアップの判定を画像補正処理と置き換えた場合の処理例を示すフローチャートである。
ステップS3801で、図27のステップS2704で作成したファイルリストがからであるかどうかを判定する。ファイルリストが空であれば終了する。ファイルリストが空でなければステップS3802へ進み、リスト内のファイルをファイル名順にソートする。
ステップS3803では、インポート時に画質補正をする設定になっているかをチェックする。チェックボックス2408、2409がチェックされている場合は、画質補正を行うのでステップS3804へ進み、ファイルリストに登録されている各ファイルに対してファイルのコピーをバックアップフォルダ4011に保存し、そのあとで画質補正処理を行う。画質補正をする必要が無ければステップS3809へと進みインポート処理を行う。
ステップS3804からステップS3807はファイルリストの各ファイルに対して画質補正を行うループ処理の説明である。
ステップS3804で、リストの先頭から順に処理を進めて、未処理のファイルが残っているかを調べる。ファイルリストの全てのファイルについて画質補正処理が終了していればステップS3808へと、画質補正処理が未処理のファイルがあればステップS3805へと進む。
ステップS3805では、ファイルリストの先頭から順に未処理のファイル名を取り出し、ステップS3806以降の処理対象とする。
ステップS3806へと進み、画質補正前のデータのコピーを作成する。
ステップS3807では、チェックボックス2408と2405のチェックに応じて画質補正を行いファイルを上書きする。
ステップS3808はインポート処理である。ステップS3809はインポート後にファイルをバックアップするか削除するかを判定する。ラジオボタン2501でユーザがファイルを削除する設定にしていれば、ステップS3810へ、そうでない場合はステップS3811へと進む。
ステップS3810では、ファイルリストのファイルを全て削除する。ステップS3811では、ファイルリストのファイルをバックアップする。
<バックアップ可能な場合の表示例>
実施形態における製本アプリケーション104でブックファイルをオープンしているとき、例えば、図9のようなGUIとするものとしたが、各ページには、そのバックアップページが存在するか否かを、画面上で区別できるようにすることが望まれる。
先に説明したように、各ページのページ制御情報410にはバックアップページが存在するか否かの情報が含まれるので、図19に替えて、図39に示すように、バックアップページがバックアップフォルダ4011に存在することを示すページ3901には、BKUPという文字列を、ブックツリー表示エリア中の該当するページに表示するようにする。なお、図示では文字列を付加する例を示したが、バックアップ有無を判別できればよいから、ページアイコンの形態を異なるようにして表示しても構わない。ページレイアウト領域にある各ページにバックアップされていることを示すマークを付加擦るようにしてもよいし、ツリー、レイアウト双方に表示するようにしても構わない。
なお、バックアップされているページは、上記実施形態の如く、該当するページが複合機130で原稿を読取られ、画像補正処理が実行され、且つ、そのページ制御情報410に記述されているバックアップフォルダ名及びファイル名から、実際にバックアップフォルダ4011に実在している場合である。
先に説明したように、バックアップファイルは、ファイル容量や日数制限によって削除されてしまうため、ファイルを開く際に、そのバックアップファイルの所在を確認する処理を行えばよい。
以上説明したように実施形態によれば、製本アプリケーションで新たなブックを作成する際、或いは、既存のブックに新たな章、ページをインポートするために2種類を用意した。
第1には、一般アプリケーション(そのアプリケーションの種類、メーカは問わない)で作成されたアプリケーションデータファイルを、実行中の製本アプリケーションにドラッグアンドドロップする操作を行うものである。この場合には、そのアプリケーションデータファイルを必要に応じて電子原稿ライタ102で電子原稿ファイルを作成してインポートすることが可能となる。また、実施形態における製本アプリケーションがサポートする画像データファイルである場合には、ダイレクトにインポートすることが可能になる。
第2には、原稿束を複合機130で代表されるネットワークスキャナで読取らせ、その読取った画像の送信宛て先としてホットフォルダを指定することで、インポートを行わせる。また、実施形態によると、ホットフォルダは幾つも存在して構わず、それぞれのホットフォルダには、インポートする際の章、ページの属性を定義できるので、実際に製本アプリケーションにインポートした際には、ある程度の属性を持ったページとして定義が完了していることが約束され、製本アプリケーションにおける作業を簡略化させることも可能となる。
特に、第2の手法でインポートする場合、複合機130で読取るための原稿を印刷するために使用したアプリケーションが、製本アプリケーションを実行するPCにインストールされている必要性はなくなるので、複数の人間が、それぞれのPCで分担して作成する場合に好適と言える。
また、第2の手法では、画像の斜行ほし得、黒点除去等の画像補正を行うようにも設定できるので、第1の手法で作成したページとほぼ同等の質のページを作成することも可能となれる。そして、実施形態で説明したように、画像補正結果が思わしくないと感じた場合には、必要に応じて、画像補正前のページで置換えることができ、高い利便性を提供できるようになる。
<第2の実施形態>
上記実施形態では、インポートの投入先としてホットフォルダを例にし、ネットワーク上の複合機130でスキャンした画像ファイルが投入されるものとして説明したが、PC100上において一般アプリケーションで作成したデータファイルを格納した場合にも対処できるようにすることが望まれる。
図20のステップS2005とステップS2006との間に、図42に示す処理ステップS4201、4202、4203を追加すれば良いであろう。
すなわち、図10に示す一般アプリケーションのデータファイルのインポートの処理をここに挿入するわけである。
先ず、ステップS4201にて、オブジェクトとしてのホットフォルダに投入されるデータが製本アプリケーションがサポートする画像ファイルか否かを判断し、否であれば、図10のステップS803と同様の処理を、ステップS4201で行わせる。ただし、電子原稿ライタ102の出力先としては、該当するホットフォルダを指定する。この結果、電子原稿ファイルがホットフォルダ内に作成されるので、オリジナルのファイルをステップS4203で削除する。そして、ステップS2006に処理を進める。
以上の結果、ホットフォルダは、原稿読取り装置(複合機やネットワークスキャナ)で読取った画像ファイルだけでなく、一般アプリケーションのデータファイルに対しても機能するようになる。
また、1つのブックの各パート(例えば章)を複数の人間が、それぞれのPC100、110、120、125で実行するアプリケーションで作成する場合に特に有効なものは、それぞれのPCに、実施形態で説明した電子原稿ライタ102をインストールすることである。そして、ホットフォルダを各担当者毎に作成し、各PCの利用者がアクセスできるように設定を行う。この結果、各PCで作成されたアプリケーションデータファイルを電子原稿ライタ102を使い、出力先としてそれぞれの担当者用に設けたホットフォルダにしておけば、PC100上では原稿読取りを行うことなく、製本アプリケーションにインポートできるようになる。
また、実施形態では、ホットフォルダを、製本アプリケーションを実行するPC上に設置するものとして説明したが、これにネットワーク上の記憶装置に設定しても良いのは明らかである。
また、実施形態では、インポートする際に、章として追加する例を説明したが、例えば、特定の章中のページを指定し、そのページの直後(もしくは直前)に各ページをインポートしても構わない。
また、実施形態で示したフローチャートにおいて、その前後は処理が矛盾が発生しない限り、入れ替えることが可能である。
以上各実施形態で説明してきたように、階層構造を有するドキュメントの何れの階層に対しての各種設定変更を効率よく行なうことが可能となる。
また、何れかのフォルダに設定された属性に基づいて、そのフォルダに投入されたインポートファイル(データ)から、階層構造のページとして読み込み可能な形式のデータを生成して、印刷目的のブックファイルを生産性よく作成することが可能となる。
また、実施形態での特徴となる点は、図1に示すように、その殆どがコンピュータプログラムによるものであるので、当然、かかるプログラムは本発明の範疇に含まれる。また、通常、コンピュータプログラムは、それを格納したCDROM等のコンピュータ可読記憶媒体を、コンピュータにセットし、システムにコピーもしくはインストールすることで実行可能となるわけであるから、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇に含まれる。