(57)【特許請求の範囲】
【請求項１】
コンピュータのオペレーティングシステム上で稼働し、外部の情報端末から送信されてくる印刷用の中間ファイルからなるスプールファイルを受信し、該受信したスプールファイルを記憶手段へ記憶すると共に該記憶されたスプールファイルを印刷デバイスに適合した形式の印刷データに変換して該印刷デバイスへ出力する印刷サーバに設けられ、
前記記憶手段に記憶されたスプールファイルを加工して新たなスプールファイルを生成するスプールファイル加工装置であって、
前記記憶手段に記憶されたスプールファイルを取り出すスプールファイル取得手段と、
前記スプールファイル取得手段により取り出されたスプールファイルに、該スプールファイルを加工すべき加工情報が含まれているか否かを判断する加工情報有無判断手段と、
前記加工情報有無判断手段により前記加工情報が含まれていると判断されたとき、該加工情報に基づいて前記スプールファイルを加工して、該加工後のスプールファイルを、加工前のスプールファイルに代わる新たなスプールファイルとして再び前記記憶手段へ戻す加工手段と、
前記加工情報有無判断手段により前記加工情報が含まれていると判断されたとき、前記加工手段による前記加工に先立って、該判断対象のスプールファイルにフォントデータが含まれているか否かを判断し、含まれている場合にそのフォントデータを取り出すフォントデータ取得手段と、
前記フォントデータ取得手段によりフォントデータが取り出されたとき、前記加工手段による前記加工に先立って、該取り出されたフォントデータを、前記印刷サーバが前記スプールファイルを前記印刷データへ変換する際に使用できるよう該印刷サーバに登録する登録手段と
を備え、
前記スプールファイル取得手段及び前記加工情報有無手段は、前記オペレーティングシステムにおける一機能として構成され、前記加工手段は、前記オペレーティングシステムとは別に該オペレーティングシステムと連携しながら動作するデバイスドライバにおける一機能として構成されている
ことを特徴とするスプールファイル加工装置。
【請求項２】
前記印刷サーバが前記加工後のスプールファイルの印刷動作を終了したとき、該加工前のスプールファイルから取り出され前記印刷サーバに登録されたフォントデータを、前記印刷サーバから削除する削除手段を備えた
ことを特徴とする請求項１記載のスプールファイル加工装置。
【請求項３】
前記フォントデータ取得手段は、取り出したフォントデータを揮発性メモリに記憶し、
前記登録手段は、該フォントデータ取得手段によって前記揮発性メモリに記憶されるフォントデータを、前記印刷サーバが前記スプールファイルを前記印刷データへ変換する際に使用できるよう、該印刷サーバに登録する
ことを特徴とする請求項１又は２記載のスプールファイル加工装置。
【請求項４】
前記加工情報有無判断手段により前記加工情報が含まれていると判断されたスプールファイルをページ毎の中間ファイルに分割するページ分割手段を備え、
前記加工手段は、前記ページ分割手段にて分割されたページ毎の中間ファイルに対して該ページ毎に前記加工を行い、
前記フォントデータ取得手段は、前記ページ分割手段により分割されたページ毎の中間ファイルに対し、該ページ毎に、当該ページが前記加工手段にて加工されるのに先立って、前記フォントデータが含まれているか否かを判断して含まれていると判断されたときに該フォントデータを取り出し、
前記登録手段は、前記フォントデータ取得手段によりフォントデータが取り出されたとき、該取り出されたページの中間ファイルが前記加工手段にて加工されるのに先立って、該取り出されたフォントデータの前記登録を行う
ことを特徴とする請求項１〜３いずれかに記載のスプールファイル加工装置。
【請求項５】
前記フォントデータ取得手段は、前記ページ分割手段によりページ毎に分割された前記各中間ファイルの１ページ目から順番にその動作を実行する
ことを特徴とする請求項４記載のスプールファイル加工装置。
【請求項６】
請求項１〜５いずれかに記載のスプールファイル加工装置における前記各手段としてコンピュータを機能させるためのプログラム。
【請求項７】
請求項６記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷用のスプールファイルを加工して新たなスプールファイルを生成するスプールファイル加工装置に関し、特に、外部の情報端末にて生成されたスプールファイルを受信してプリンタ等の印刷デバイスへ出力する印刷サーバにおいて、その受信したスプールファイルを加工するためのスプールファイル加工装置に関する。
【０００２】
【従来の技術】
従来より、複数のパーソナルコンピュータ（以下「ＰＣ」と略す）をネットワークを介して相互に接続すると共にある特定のＰＣにプリンタを接続し、そのプリンタを、ネットワークに接続された全てのＰＣが利用できるように構成したネットワーク印刷システムが知られている。
【０００３】
図７は、ネットワーク印刷システムの一例を示すものであり、プリンタ７３が接続されたサーバＰＣ７２とクライアントＰＣ７１とがネットワーク７４を介して相互に接続されている。また、図示しないものの、ネットワーク７４には他にも複数のクライアントＰＣが接続されている。そして、サーバＰＣ７２からプリンタ７３へ印刷データを出力して印刷を行えるのはもちろん、ネットワーク７４に接続された全てのクライアントＰＣも、ネットワーク７４及びサーバＰＣ７２を介してプリンタ７３へ印刷データを出力し、印刷を行うことができる。つまり、プリンタ７３は、ネットワーク７４に接続された全てのＰＣに共有される共有プリンタとして構成されている。
【０００４】
このように構成されたネットワーク印刷システムにおいて、クライアントＰＣ７１からプリンタ７３への印刷要求があったときの印刷データの流れを、図８に基づいて概略説明する。図８では、クライアントＰＣ７１におけるクライアントＯＳ（Operating System）及びサーバＰＣ７２におけるサーバＯＳがいずれもＷｉｎｄｏｗｓ（登録商標）であるものとして説明する。
【０００５】
クライアントＰＣ７１にて起動中のアプリケーション８１からユーザ操作により印刷指示がなされると、その指示内容はクライアントＯＳのプリンタドライバを介して、クライアントＯＳが提供するプログラムモジュールであるＧＤＩ（Graphics Device Interface ）８２に送られる。このＧＤＩ８２により、仮想化されたディスプレイ領域であるデバイスコンテキスト（以下「ＤＣ」と略す）が作成されてアプリケーション８１へ供給される。これにより、アプリケーション８１によるＤＣへの描画処理が行われ、その結果、ＥＭＦ（Enhanced Meta File）と称される、プリンタの種類に依存しない中間ファイルがページ毎に生成される。
【０００６】
各ページの中間ファイルは、クライアントＯＳの一機能としてのスプーラシステム８３によって、印刷ジョブ毎に一つのスプールファイルとして形成されると共に、そのスプールファイルは、ネットワーク７４を介してサーバＰＣ７２へ送出される。サーバＰＣ７２では、サーバＯＳの一機能としてのスプーラシステム８５が、クライアントＰＣ７１から受信したスプールファイルを一時的に記憶装置に記憶（スプール）する。そして、プリントプロセッサ８６が、記憶装置に記憶されたスプールファイルをＧＤＩ（プリンタドライバ）８７へ渡すことにより、スプールファイルがこのＧＤＩ８７によって出力先のプリンタ７３に応じたプリンタ制御コードに変換され、プリンタ７３へ出力される。
【０００７】
上記のように、ＥＭＦからなるスプールファイルがクライアントＰＣ７１からサーバＰＣ７２へ送信される場合、通常は、クライアントＰＣ７１にて生成された印刷ジョブに使用されるフォントデータまでがサーバＰＣ７２へ送られることはない。但し、どのフォントを使用するのかといったフォント情報は、スプールファイルと共に送信される。そのため、サーバＰＣ７２は、そのフォント情報に基づいて、サーバＰＣ７２自信が備えているフォントデータを用いつつ、スプールファイルをプリンタ制御コードに変換する。
【０００８】
そのため、クライアントＰＣ７１からのスプールファイルに含まれるフォント情報に応じたフォントデータをサーバＰＣ７２が備えている限り、クライアントＰＣ７１にて生成した印刷ジョブをプリンタ７３にて忠実に印刷出力させることができる。逆に、クライアントＰＣ７１で印刷ジョブを生成する際に使用したフォントがサーバＰＣ７２にない場合は所望の印刷結果が得られない。
【０００９】
ところが、近年になってＯＳが次々に変化していく中で、スプールファイルにフォントデータを付加してサーバＰＣへ送信するようなＯＳが存在するようになった。具体的には、例えばＷｉｎｄｏｗｓ２０００がこれに相当するＯＳであり、例えば図８のネットワーク印刷システムにおいて、クライアントＯＳ及びサーバＯＳがともにＷｉｎｄｏｗｓ２０００の場合、クライアントＰＣ７１にて生成した印刷ジョブで使用されるフォントがサーバＰＣ７２にない場合は、スプールファイルにそのフォントデータが付加されて（詳細には、スプールファイルを構成する各ページのＥＭＦにフォントデータが付加されて）サーバＰＣ７２へ送信されるのである。
【００１０】
そのため、ユーザがクライアントＰＣ７１のアプリケーション８１を利用して各種印刷ジョブを生成する際に、サーバＰＣ７２にフォントデータがあるか否かを気にする必要はなく、クライアントＰＣ７１にて生成した通りの状態で印刷出力させることができる。
【００１１】
【発明が解決しようとする課題】
ところで、上記例示した通常の印刷に加え、例えばページ分割された複数のページを同一ページ内に印刷するいわゆる４in１、２in１等のＮin１と称されるマルチページ印刷や、ある画像に別の画像を重ねて印刷する重ね印刷、或いはページ分割された複数ページのページ順を入れ換えて印刷するといったページ入れ換え印刷などの、種々の特殊印刷を行いたいというニーズもあり、そのような特殊印刷ジョブをパソコン側で制御することも考えられている。そこで本願出願人は、特開平１１−２１９２６５号公報にて、スプールファイルを加工することにより特殊印刷を実現する技術を提案した。
【００１２】
具体的には、例えば図８のサーバＰＣ７２において、スプーラシステム８５によりスプールされたスプールファイルをプリントプロセッサ８６を介して取り出し、そのスプールファイルをページ毎の中間ファイルに分割する。そして、ページ分割した中間ファイルに加工を施して新たなスプールファイルを生成し、再びスプーラシステム８５へ戻すものである。これにより、新たに生成されたスプールファイルに基づいて、出力先のプリンタに応じたプリンタ制御コードをＧＤＩ８７にて生成するといった通常の処理を可能としつつ、上記各種の特殊印刷を実現している。
【００１３】
しかしながら、ＯＳの種類によっては、上記のような特殊印刷等のためにスプールファイルを加工して新たな印刷ジョブのスプールファイルを生成すると、その新たなスプールファイルをプリンタ制御コードに変換する際に、加工前の元のスプールファイル（つまりクライアントＰＣからのスプールファイル）に含まれていたフォントデータが利用されなくなってしまうことがある。
【００１４】
その一例として、上記のようにクライアントＯＳ及びサーバＯＳがともにＷｉｎｄｏｗｓ２０００の場合が挙げられる。この場合、通常の印刷であれば、クライアントＰＣ７１にて生成した印刷ジョブがサーバＰＣ７２にないフォントを用いたものであっても、その印刷ジョブのスプールファイルがサーバＰＣ７２へ送信される際にフォントデータも付加されて送信されるため、サーバＰＣ７２ではそのフォントデータを利用してプリンタ制御コードへの変換等を行うことができる。
【００１５】
しかし、特殊印刷を行うために、サーバＰＣ７２へ送信されてきたスプールファイルを加工すると、そのスプールファイルに含まれていたフォントデータが利用できなくなり、結果として、クライアントＰＣ７１にて作成した印刷データが所望のフォントで印刷されなくなってしまうのである。
【００１６】
つまり、従来はスプールファイルにフォントデータが付加されてサーバＰＣ７１へ送信されることはなかったものの、近年になって例えばＷｉｎｄｏｗｓ２０００のように、クライアントＰＣ７１にて生成した印刷ジョブがサーバＰＣ７２にないフォントを用いたものである場合に、そのフォントデータを付加したスプールファイルをサーバＰＣ７２へ送信するような仕様のＯＳも登場してきた。これにより、サーバＰＣ７２は、自身がフォントデータを持っていなくてもクライアントＰＣ７１からのスプールファイルに含まれるフォントデータを利用してプリンタ制御コードへの変換等を行えるようになったのだが、特殊印刷等のためにそのスプールファイルを加工して新たなスプールファイルを生成すると、元のスプールファイルに含まれていたはずのフォントデータが使用できなくなってしまうのである。
【００１７】
本発明は上記課題に鑑みなされたものであり、外部の情報端末から受信した印刷用のスプールファイルを印刷デバイスに適合した形式の印刷データに変換して印刷デバイスへ出力する印刷サーバにおいて、受信したスプールファイルにその印刷ジョブで使用するフォントデータが含まれている場合に、特殊印刷等のためにそのスプールファイルを加工して新たなスプールファイルを生成する場合であっても、加工後の新たなスプールファイルを印刷デバイスに適合した形式の印刷データに変換する際に、加工前の元のスプールファイルに含まれていたフォントデータを使用できるようにすることを目的とする。
【００１８】
【課題を解決するための手段及び発明の効果】
上記課題を解決するためになされた請求項１記載のスプールファイル加工装置は、外部の情報端末から送信されてくる印刷用の中間ファイルからなるスプールファイルを受信し、該受信したスプールファイルを記憶手段へ記憶すると共に該記憶されたスプールファイルを印刷デバイスに適合した形式の印刷データに変換して該印刷デバイスへ出力する印刷サーバに設けられるものであって、記憶手段に記憶されたスプールファイルを加工して新たなスプールファイルを生成するものである。印刷サーバは、コンピュータのオペレーティングシステム上で稼働するものである。
【００１９】
そして、本発明では、記憶手段に記憶されたスプールファイルをスプールファイル取得手段が取り出し、その取り出されたスプールファイルに、該スプールファイルを加工すべき加工情報が含まれているか否かを、加工情報有無判断手段が判断する。この加工情報有無判断手段により加工情報が含まれていると判断されたとき、加工手段が、該加工情報に基づいてスプールファイルを加工して、該加工後のスプールファイルを、加工前のスプールファイルに代わる新たなスプールファイルとして再び記憶手段へ戻す。
さらに、フォントデータ取得手段及び登録手段を備えており、加工情報有無判断手段により加工情報が含まれていると判断されたとき、フォントデータ取得手段が、加工手段による加工に先立って、該判断対象のスプールファイル（即ち加工情報が含まれているスプールファイル）にフォントデータが含まれているか否かを判断し、含まれている場合にそのフォントデータを取り出す。そして、フォントデータ取得手段によりフォントデータが取り出されたとき、登録手段が、加工手段による加工に先立って、その取り出されたフォントデータを、印刷サーバがスプールファイルを印刷データへ変換する際に使用できるよう該印刷サーバに登録する。
そして、スプールファイル取得手段及び加工情報有無手段は、オペレーティングシステムにおける一機能として構成され、加工手段は、オペレーティングシステムとは別に、オペレーティングシステムと連携しながら動作するデバイスドライバにおける一機能として構成されている。
【００２０】
つまり、外部の情報端末から受信したスプールファイルに加工情報が含まれている場合、そのスプールファイルがオペレーションシステムとは別のデバイスドライバの一機能である加工手段にて加工される前に、そのスプールファイルにフォントデータが含まれていればそれを抽出して、印刷サーバへ登録しておくのである。このようにすれば、例えば特殊印刷等のためにそのスプールファイルを加工して新たなスプールファイルを生成する場合であっても、加工後の新たなスプールファイルを印刷デバイスに適合した形式の印刷データに変換する際に、加工前の元のスプールファイルに含まれていたフォントデータを確実に使用することができる。
【００２１】
本発明（請求項１）により、加工前のスプールファイルに含まれるフォントデータが印刷サーバに登録され、以後、そのフォントデータは印刷サーバが元々備えるフォントデータと同等に扱われることになるが、例えば請求項２に記載の構成により、登録されたフォントデータが当該スプールファイルの印刷データへの変換時にのみ使用されるようにすることもできる。
【００２２】
即ち、請求項２に記載の発明は、請求項１記載のスプールファイル加工装置において、印刷サーバが加工後のスプールファイルの印刷動作を終了したときに、削除手段が、加工前のスプールファイルから取り出されて印刷サーバに登録されたフォントデータを削除する。これにより、スプールファイルに含まれて送られてきたフォントデータは、そのスプールファイルが上記印刷データに変換される際にのみ使用されることになる。
【００２３】
また、登録手段による登録は、例えばハードディスク等の不揮発性の記憶装置にフォントデータを記憶させてそれを印刷サーバが使用できるようにすることができる。しかし、このようにすると、削除手段による削除が実行されても何らかの要因によりフォントデータが完全に削除されないといった事態が起こってしまった場合、以後、そのフォントデータが引き続き印刷サーバ内に残ってしまう。
【００２４】
そこで、請求項１又は２記載のスプールファイル加工装置は、例えば請求項３に記載のように、フォントデータ取得手段が、取り出したフォントデータを揮発性メモリに記憶するようにし、登録手段は、その揮発性メモリに記憶されるフォントデータを印刷サーバに登録するようにするのが好ましい。
【００２５】
このようにすれば、登録したフォントデータを削除する操作をしなかったり、或いは削除手段によって削除を実行したにも関わらず何らかの要因で完全に削除されないといったことが生じても、少なくとも揮発性メモリが記憶内容を保持するのに必要な電源供給が遮断（例えば印刷サーバのシャットダウン等）されれば、フォントデータが確実に消去される。
【００２６】
ところで、スプールファイルにフォントデータが含まれて印刷サーバへ送信されてくる場合、通常（例えばＷｉｎｄｏｗｓなど）は、スプールファイルを構成するページ毎の中間ファイルの中にフォントデータが含まれて送られてくる場合が多い。そこで、スプールファイルからフォントデータを取り出すために、より具体的には、例えば請求項４に記載のように、加工情報有無判断手段により加工情報が含まれていると判断されたスプールファイルを、ページ分割手段が、ページ毎の中間ファイルに分割するようにし、加工手段は、ページ分割手段にて分割されたページ毎の中間ファイルに対して該ページ毎に加工を行い、フォントデータ取得手段は、ページ分割手段により分割されたページ毎の中間ファイルに対し、該ページ毎に、当該ページが加工手段にて加工されるのに先立って、フォントデータが含まれているか否かを判断して含まれていると判断されたときに該フォントデータを取り出し、登録手段は、フォントデータ取得手段によりフォントデータが取り出されたとき、該取り出されたページの中間ファイルが加工手段にて加工されるのに先立って、該取り出されたフォントデータの登録を行うようにするとよい。
【００２７】
そしてこの場合、ページ分割された各中間ファイルに対してどのような順番でフォントデータの取り出しを実行するかは任意に決めることができるが、印刷サーバ或いは外部情報端末の仕様によっては、例えば２ページ目以降で使用するフォントデータが１ページ目の中間ファイルのみに含まれた状態で外部情報端末から送信されてくるといったことも考えられる。
【００２８】
そのため、フォントデータ取得手段は、前記ページ分割手段によりページ毎に分割された各中間ファイルに対して、１ページ目から順番にその動作（フォントデータが含まれているか否かの判断及び含まれている場合の取り出し）を実行するとよい。このようにすれば、上記例のように全てのフォントデータが１ページ目の中間ファイルのみにまとめて含まれている場合であっても、そのフォントデータを取り出す前に他のページの中間ファイルが加工されてしまうおそれはなく、スプールファイルの上記印刷データへの変換をより確実に行うことができる。
【００２９】
また、本発明のスプールファイル加工装置は、例えば別途ハードウェアにより実現することができるなど、種々の方法により実現可能であるが、コンピュータがアプリケーションソフト（プログラム）を実行することにより実現することができる。即ち、当該スプールファイル加工装置における各手段としてコンピュータを機能させるためのプログラムを備え、コンピュータがそのプログラムを実行することにより、本発明のスプールファイル加工装置を実現するのである。
【００３０】
そして、コンピュータを本発明のスプールファイル加工装置として機能させるためのプログラムは、例えば、フロッピー（登録商標）ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ハードディスク等のコンピュータ読み取り可能な記録媒体に記録し、必要に応じてコンピュータにロードして起動することにより用いることができる。この他、ＲＯＭやバックアップＲＡＭをコンピュータ読み取り可能な記録媒体としてプログラムを記録しておき、このＲＯＭあるいはバックアップＲＡＭをコンピュータに組み込んで用いてもよい。
【００３１】
【発明の実施の形態】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
図１は、本実施形態のネットワーク印刷システムの概略構成を示すブロック図である。本実施形態のネットワーク印刷システムは、図７で説明したネットワーク印刷システムと全く同様、クライアントＰＣ１（本発明の情報端末）とサーバＰＣ２（本発明の印刷サーバ）とがネットワークを介して接続されており、サーバＰＣ２には、印刷デバイスとしてのプリンタ３が接続されている。そして、サーバＰＣ２から直接プリンタ３へ印刷させることができるのはもちろん、クライアントＰＣ１も、サーバＰＣ２を介してプリンタ３へ印刷させることができる。本実施形態では、クライアントＯＳ及びサーバＯＳがいずれもＷｉｎｄｏｗｓ２０００の場合を示している。
【００３２】
そして、本実施形態では、中間ファイル生成部１１にて生成された印刷用の中間ファイルが、印刷ジョブ毎のスプールファイルとしてプリントスプーラ１２からサーバＰＣ２へ送信される。サーバＰＣ２では、受信したスプールファイルをプリントスプーラ２１が一旦スプール領域２８へ記憶すると共に、そのスプールファイルに加工情報が含まれているときは、スプールファイル加工部２３にてそのスプールファイルを加工して再びスプール領域２８へ戻し、プリンタ３の動作状態に応じて、スプールファイルをＧＤＩ２５にてプリンタ制御コードに変換してプリンタ３へ出力するものである。
【００３３】
尚、一般に、クライアントＰＣ１及びサーバＰＣ２はいずれも、ＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏ等のハードウェアのもとで各ＯＳがこれらの制御を担い、そのＯＳの元で、アプリケーションソフトやデバイスドライバ等の応用ソフトが動作するようになっている。そして、本実施形態のサーバＰＣ２では、プリントスプーラ２１及びＧＤＩ２９は、サーバＯＳの一機能としてのプログラムモジュールであり、フォントデータ抽出・登録部３０，ＥＭＦ加工部３１及びＧＤＩ２５はいずれも、プリンタ３を動作させるためにサーバＰＣ２に組み込まれたデバイスドライバ（プログラム）であってサーバＯＳと連携しながらプリンタ３の動作を制御する。
【００３４】
また、プリントプロセッサ２７は、ＯＳ（Ｗｉｎｄｏｗｓ２０００）が元々備えているプリントプロセッサ（図示略）とは別に、プリンタ３に対応してサーバＰＣ２に追加（インストール）されることによりサーバＯＳの中に組み込まれて動作するプログラムモジュールであり、スプールファイル加工部２３及びメモリ２４と共に本発明のスプールファイル加工装置を構成するものである。
【００３５】
尚、本実施形態では、サーバＰＣ２における各部の機能を実現するためのプログラムは全てハードディスク（ＨＤＤ）２２に格納されている。また、メモリ２４は、ＲＡＭ等のいわゆる揮発性メモリである。以下、本実施形態のネットワーク印刷システムにおいてクライアントＰＣ１から印刷要求があった場合の各部の動作について詳述する。
【００３６】
図１に示す如く、ユーザによってクライアントＰＣ１上のアプリケーション１４により作成された印刷データは、Ｗｉｎｄｏｗｓ２０００のプリンタドライバ１５を介してＷｉｎｄｏｗｓ２０００が提供するプログラムモジュールであるＧＤＩ１６に送られ、このＧＤＩ１６により仮想化されたディスプレイ領域であるＤＣ（デバイスコンテキスト）が作成される。そして、このＤＣの指示された座標にデバイス（プリンタ、ディスプレイ等）の種類に依存しない印刷ジョブ毎の印刷データが格納され、仮想化されたデバイスへの描画が行われる。アプリケーション１４は、例えばワープロソフトや表計算ソフトなどの、クライアントＯＳ上で動作する応用ソフトを示すものである。
【００３７】
尚、一般にＧＤＩと呼ばれるものには、ＤＣの管理、ＥＭＦの形成を行うものと、ＤＣへの処理をデバイス（例えばプリンタやディスプレイ）に依存するコマンドに変換するものとがあり、前者はＯＳにより提供されるものであって図１のＧＤＩ１６或いはＧＤＩ２９（後述）がこれに相当するものであり、後者はデバイスメーカによりドライバとして提供されるものであって図１のＧＤＩ２５（後述）に相当するものである。
【００３８】
このようにＤＣ即ち仮想化されたデバイスに描画することで、各ページ毎にデバイスの種類に依存しないＥＭＦ（中間ファイル）が形成される。そして、このＥＭＦがプリントスプーラ１２により結合されて、印刷ジョブ毎のスプールファイルが形成されるのだが、本実施形態では、プリントスプーラ１２にてスプールファイルが形成される前に、サーバＰＣ２との間で相互通信を行うことにより、その印刷ジョブで使用しているフォントをサーバＰＣ２が備えているか否かを確認する。
【００３９】
そして、サーバＰＣ２がそのフォントを備えていない場合は、ＨＤＤ１３内に格納されているフォントデータ１９から所望のフォントデータを取得して、そのフォントデータを付加したスプールファイルを形成するのである。また、アプリケーション１４にて作成した印刷データをユーザが印刷させる際に、特殊印刷をする旨の指示があった場合は、その旨の情報（即ちスプールファイルを加工するための加工情報）も、スプールファイルに付加される。プリントスプーラ１２にて形成された印刷ジョブ毎のスプールファイルは、ＨＤＤ１３内に確保されたスプール領域２０に適宜記憶されつつ、ＲＰＣ（Remote Procedure Call ）を使用してサーバＰＣ２へ送信される。尚、スプールファイルへのフォントデータ付加の詳細については後述する。
【００４０】
このようにクライアントＰＣ１からサーバＰＣ２へスプールファイルが送信されると、サーバＰＣ２のプリントスプーラ２１にてそのスプールファイルが受信され、スプーラシステム２６が、受信したスプールファイルを、ＨＤＤ２２内に確保された記憶手段であるスプール領域２８へ一旦記憶する。
【００４１】
そして、マルチページ印刷、重ね印刷等の特殊印刷を行う場合には、スプールファイル加工部２３が起動され、このスプールファイル加工部２３により、スプール領域２８に格納されている印刷ジョブ毎のスプールファイルが特殊印刷のために加工される。具体的には、プリントプロセッサ２７が、スプール領域２８に記憶されたスプールファイルを取り出して、その取り出したスプールファイルに加工情報が含まれているか否かをみる。そして、加工情報が含まれている場合に、そのスプールファイルをスプールファイル加工部２３へ渡す。
【００４２】
スプールファイル加工部２３における処理の詳細は後述するが、その概略だけ説明すると、まず、プリントプロセッサ２７から渡されたスプールファイルを、ページ毎のＥＭＦ（中間ファイル）に分割し、各ページのＥＭＦをメモリ２４等に形成されるテンポラリファイルにコピーする。このテンポラリファイルは不要となった時点で消去する。尚、ページ分割の前に、スプールファイルから加工情報を取得して、どのような加工をすべきかを予め識別しておく。
【００４３】
本実施形態のスプールファイルは、具体的には図２に示す構成となっており、ヘッダを先頭としてページ毎のＥＭＦ及び加工情報等が含まれる。そして、各ページのＥＭＦは、コマンド及びデータからなる複数のレコード及びエンドコマンドにより構成されており、フォントデータは、ある一部のレコードに含まれることになる。このフォントデータを含むレコードは、次に述べる「拡張レコード」の一つである。
【００４４】
「拡張レコード」は、ＥＭＦ本来のレコードを拡張したものであるので、ＥＭＦの描画ルーチンでは処理できないものである。換言すれば、このレコードは本来ＥＭＦとして処理する場合は無視されるものである。
そして、フォントデータ抽出・登録部３０が、ページ分割された各ＥＭＦに対してフォントデータが含まれているか否かを判断し、含まれていればそのフォントデータを抽出して、サーバＯＳのシステムフォントとして登録する。その後、ＥＭＦ加工部３１が、ページ毎のＥＭＦに対して加工情報に基づく加工を施し、新たなＥＭＦを生成する。この加工後の新たなＥＭＦは、スプーラシステム２６によって再びスプール領域２８へ戻される。そして、このようにスプールファイル加工部２３により加工されてスプール領域２８に戻された新しい印刷ジョブのＥＭＦは、プリントプロセッサ２７によってＧＤＩ２５へ送られ、このＧＤＩ２５により、新しい印刷ジョブのＥＭＦがプリンタ３に対応したプリンタ制御コードに変換されて、プリンタ３に送られる。このプリンタ制御コードが、本発明の印刷データ（印刷デバイスに適合した形式のもの）に相当するものである。
【００４５】
尚、プリンタの制御用コマンドはメーカ毎に仕様が異なっており、代表的なものとして、例えば米国Ｈｅｗｌｅｔｔ−Ｐａｃｋａｒｄ社のＰＣＬや米国Ａｄｏｂｅ社のPostScript（ＰＳ：登録商標）などの種々のページ記述言語（ＰＤＬ；Page-Description Language ）によるコマンドセットがある。そのため、プリンタ３にて採用されているＰＤＬに対応できるように、ＧＤＩ２５により、ページ毎のＥＭＦからなるスプールファイルを、そのＰＤＬによるプリンタ制御コードに変換しているのである。
【００４６】
以上詳述した本実施形態のネットワーク印刷システムにおいて、サーバＰＣ２のプリントプロセッサ２７によりスプールファイルに加工情報が含まれていると判断され、そのスプールファイルがスプールファイル加工部２３へ渡されたときに、スプールファイル加工部２３が実行するスプールファイル加工処理について、図３に基づいて説明する。図３は、本実施形態のスプールファイル加工処理を示すフローチャートであり、スプールファイル加工部２３としての機能を実現するためのプログラムをサーバＰＣ２が実行することにより処理されるものである。
【００４７】
この処理が開始されると、まずステップ（以下「Ｓ」と略す）１１０にて、スプールファイルに含まれる加工情報をチェックし、どのように加工すべきかを識別する。そして、Ｓ１２０で、スプールファイルをページ毎のＥＭＦに分割し、続くＳ１３０にて、スプール領域２８に記憶されている元の印刷ジョブ（スプールファイル）を消去して、Ｓ１４０に移行する。
【００４８】
Ｓ１４０では、Ｓ１１０でチェックした加工情報に従い、ページ分割されたＥＭＦに対して実際に加工処理を施すと共に、ＥＭＦにフォントデータが含まれている場合はそのフォントデータを抽出してシステムフォントとして登録（メモリ２４に記憶）する。そして、スプールファイル加工後は、全ページの印刷が終了するまで待機し（Ｓ１５０）、印刷終了後、Ｓ１６０にて、システムフォントとしてメモリ２４に記憶したフォントデータを消去すると共に、その登録も抹消する。
【００４９】
尚、クライアントＰＣ１からスプールファイルと共に送られてきたフォントデータは、当該スプールファイルの印刷終了後にも引き続きサーバＰＣ２のシステムフォントとして残すことはせず、印刷終了後にＳ１６０の処理によって消去するようにしている。これにより、フォントデータを含んだスプールファイルがサーバＰＣ２へ送信された場合、そのフォントデータは当該スプールファイルの印刷実行時にのみ使用されることになる。
【００５０】
しかも、スプールファイルから抽出したフォントデータを、ＨＤＤ２２に記憶するのではなく、揮発性のメモリ２４に記憶することにより、仮にＳ１６０の処理を実行したにも関わらず何らかの要因でフォントデータが消えずに残ってしまっても、サーバＰＣ２がシャットダウンされる度に確実にフォントデータが消去されるようにしている。
【００５１】
次に、Ｓ１４０の加工・フォント登録処理の詳細について説明する。Ｓ１４０では、既述の通り、スプールファイルに含まれる加工情報に従った加工処理を行うものであるが、加工情報としては、例えば重ね印刷（透かし文字加工ともいう）をすべき旨の情報であったり、或いはページ入れ換え印刷をすべき旨の情報であったりするなど、種々の情報が想定される。そこでまず、例えば透かし文字加工を行う旨の加工情報であった場合に実行される加工・フォント登録処理について、図４に基づいて説明する。図４は、透かし文字加工を行う旨の加工情報があった場合に実行される加工・フォント登録処理（図３のＳ１４０）を示すフローチャートである。
【００５２】
この処理が開始されると、まずＳ２１０にて、ページ分割されたＥＭＦを１ページ目から順に抽出する。即ち、最初のＳ２１０の処理では、１ページ目のＥＭＦが抽出されることになる。Ｓ２２０では、ＯＳの一機能としてのＧＤＩ２９をコールすることによりＤＣ（デバイスコンテキスト）を作成する。そして、Ｓ２３０にて、Ｓ２１０で抽出した１ページ分のＥＭＦをさらに各レコード（図２参照）毎に分割し、続くＳ２４０にて、その分割されたレコードを抽出する。この抽出も、複数あるレコードについて一つずつ順に行われ、レコード一つ一つにつきＳ２５０以下の処理が実行されることになる。
【００５３】
Ｓ２５０では、抽出したレコードが拡張レコードであるか否かを判断し、拡張レコードでなければＳ２６０に移行して、そのレコードの内容に従ってデバイスコンテキストへの描画処理を行うが、拡張レコードである場合は、Ｓ２８０に移行して、フォントデータを含んでいるか否かの判断を行う。尚、フォントデータを含むレコードが拡張レコードとして形成されることは既に述べたが、拡張レコードには、他にもフォントデータを含まない種類のものもあり、必ずしも「拡張レコード＝フォントデータを含んでいる」というわけではない。そのため、Ｓ２８０においてフォントデータを含んでいるか否かの判断を行っているのである。
【００５４】
そして、フォントデータを含まない拡張レコードである場合は、そのままＳ２６０の処理に進むが、フォントデータを含んでいる場合は、Ｓ２９０に移行して、そのフォントデータをメモリ２４へ展開（記憶）すると共に、続くＳ３００にてシステムフォントとして登録する。これにより、クライアントＰＣ１からスプールファイルに含まれた形で送信されてきたフォントデータを、サーバＯＳがもともと備えているフォントデータと同様に使用することが可能となる。
【００５５】
Ｓ３００での登録後、或いはＳ２６０の処理後は、Ｓ２７０に移行して、全てのレコードに対して上記処理（Ｓ２５０以下）が行われたか否かを判断し、未処理のレコードが残っている場合は再びＳ２４０以下の処理を実行する。一方、全てのレコードについて処理が終了した場合（このとき、１ページ分のＥＭＦに基づくＤＣへの描画処理も終了している）、Ｓ３１０に移行して実際の加工、即ち透かし文字処理を行う。この処理は、ＥＭＦの内容が描画されたＤＣに対し、透かし文字用の印刷データを重ねて描画するものである。
【００５６】
透かし文字処理の終了後は、Ｓ３２０に進んでＤＣの後処理、即ちＤＣを閉じて、１ページ分の加工が終了した旨をスプーラシステム２６へ伝える。これにより、加工終了したページのＥＭＦが、加工前のＥＭＦに代わる新たなＥＭＦとしてスプール領域２８に記憶され、プリンタ３の動作状況に応じてプリンタ３側へ出力されることになる。つまり、全ページのＥＭＦについて加工処理が終了していなくても、加工処理が終了したＥＭＦから順に、実際の印刷が行われるのである。
【００５７】
そして、Ｓ３３０では、全ページのＥＭＦに対して処理が終了したか否かを判断し、全ページ終了した場合はこの処理を終了してＳ１５０以降（図３参照）の処理に進むことになるが、例えばまだ１ページ目しか処理しておらず２ページ目以降のＥＭＦが処理待ち状態であるなど、未処理のＥＭＦがあれば、再びＳ２１０へ戻り、以下同様に１ページずつ順に処理が行われることになる。
【００５８】
次に、スプールファイルに含まれている加工情報が、ページ入れ換え印刷の一つであるマニュアルデュープレックス印刷（用紙の両面に連続したページ順で印刷すること）を行う旨の情報であった場合に実行される加工・フォント登録処理について、図５に基づいて説明する。図５は、マニュアルデュープレックス印刷を行う旨の加工情報があった場合に実行される加工・フォント登録処理（図３のＳ１４０）を示すフローチャートである。
【００５９】
この処理が開始されると、まずＳ４１０にて、図４のＳ２１０と同様、ページ分割されたＥＭＦを１ページ目から順に抽出する。そして、Ｓ４２０にて、抽出したＥＭＦが偶数ページであるか否かを判断し、偶数ページであればＳ４３０に移行するが、奇数ページであればＳ５００へ移行する。本実施形態では、上記のようにＳ４１０にて１ページ目から順にＥＭＦが抽出されるため、最初のＳ４２０の処理（つまり１ページ目のＥＭＦが抽出された状態）では必ず否定判定されてＳ５００へ進むことになる。
【００６０】
Ｓ５００では、図４のＳ２４０と同様、１ページ分のＥＭＦをさらに各レコード（図２参照）毎に分割し、続くＳ５１０にて、全てのレコードを抽出済みであるか否か、即ちＳ５００の処理にて新たに抽出されたレコードがないか否か（換言すれば、全てのレコードに対してＳ５２０以下の処理がなされたか否か）を判断し、全レコード抽出済みであって新たに抽出されたレコードがない場合はＳ４４０に移行する。一方、新たに抽出されたレコードがある限り、そのレコードに対してＳ５２０以下の処理が実行される。
【００６１】
まず、Ｓ５２０では、図４のＳ２５０と同様、抽出したレコードが拡張レコードであるか否かを判断し、拡張レコードでなければ再びＳ５００に戻るが、拡張レコードである場合は、Ｓ５３０（図４のＳ２８０と同様）に移行して、フォントデータを含んでいるか否かの判断を行う。そして、フォントデータを含まない場合は再びＳ５００に戻るが、フォントデータを含んでいる場合は、Ｓ５４０に移行してそのフォントデータをメモリ２４へ展開（記憶）すると共に、続くＳ５５０にてシステムフォントとして登録して、Ｓ５００の処理へ戻る。
【００６２】
以後、Ｓ５００でレコードを抽出する毎に、抽出した各レコードに対してＳ５２０以下の処理を実行するが、全てのレコードに対して上記処理が行われて新たにレコードが抽出されなかった場合は、Ｓ５１０で肯定判定されてＳ４４０へ進むことになる。そして、Ｓ４４０では、図４のＳ３３０と同様、全ページのＥＭＦに対して処理が終了したか否かを判断し、全ページ終了した場合はＳ４５０に進むことになるが、未処理のＥＭＦがあれば、再びＳ４１０へ戻り、以下同様に１ページずつ順に処理が行われることになる。そのため、最初に１ページ目のＥＭＦに対してＳ５００〜Ｓ５５０の処理がなされた後に、再びＳ４１０に戻った場合は、Ｓ４１０では次の２ページ目のＥＭＦが抽出されることになり、続くＳ４２０で肯定判定されてＳ４３０の１ページ処理が実行されることになる。
【００６３】
Ｓ４３０の１ページ処理の詳細は、図６に示す通りであるが、この処理において、Ｓ６１０〜Ｓ６９０の処理は、図４のＳ２２０〜Ｓ３００の処理と全く同じであり、さらにＳ７００の処理も、図４のＳ３２０の処理と全く同じである。そのため、図６についての詳細説明はここでは省略し、その概略だけ説明する。即ち、図６に示した１ページ処理は、まずＤＣを作成して（Ｓ６１０）、Ｓ４１０（或いは後述するＳ４７０）で抽出されたＥＭＦをレコード分割し（Ｓ６２０）、各レコードについて拡張レコードであるか否かの判断（Ｓ６４０）、更には拡張レコードであった場合にフォントデータが含まれている否かといった判断（Ｓ６７０）を行う。
【００６４】
そして、フォントデータが含まれない場合はそのままＤＣへの描画処理に移行することになるが（Ｓ６５０）、フォントデータが含まれている場合は、そのフォントデータをメモリ２４へ記憶（Ｓ６８０）すると共にシステムフォントとして登録（Ｓ６９０）する。この一連の処理（Ｓ６３０〜Ｓ６９０）を全てのレコードについて行い、全レコード終了したら、ＤＣの後処理（Ｓ７００）を行ってＳ４４０（或いはＳ４９０）へ移行する。尚、この１ページ処理が終了した時点で、その終了したページのＥＭＦが、加工前のＥＭＦに代わる新たなＥＭＦとしてスプール領域２８に記憶され、プリンタ３の動作状況に応じてプリンタ３側へ出力されることになる。そのため、ここでは偶数ページから順に印刷が行われることになる。
【００６５】
Ｓ４４０では、全てのページについて１ページ処理（Ｓ４３０）或いはＳ５００以下の処理が終了したか否かを判断し、終了していなければ再びＳ４１０に戻って次のページのＥＭＦに対する同様の処理を行うことになるが、全ページ終了した場合は、Ｓ４５０に移行する。Ｓ４５０ではダイアログを表示して、ユーザに対し、全ての偶数ページの印刷が終了するのを待つとともに、終了したら用紙を裏返して再び給紙口にセットするように促す。
【００６６】
ユーザはこのダイアログ表示に従って、全ての偶数ページが印刷されるまで待ち、終了したら用紙を裏返して再び給紙口にセットする。この状態では、用紙の片面に全ての偶数ページの印刷が行われ、且つその用紙の未印刷面が新たな印刷面としてセットされていることになる。そして、用紙再セットの後にユーザにて行われる、再セット完了の旨の入力（例えばクライアントＰＣ１が備えるキーボードによる何らかの入力操作）があったとき、Ｓ４６０で肯定判定されてＳ４７０へ移行することになる。
【００６７】
Ｓ４７０では、ページ分割されたＥＭＦのうち奇数ページのみを、１ページ目から順に抽出する。そして、抽出したＥＭＦに対し、Ｓ４８０の１ページ処理（詳細は図６）を実行する。この１ページ処理については既に説明したため、ここでは説明を省略する。そして、Ｓ４９０にて、全ての奇数ページについて１ページ処理がなされたか否かを判断し、未処理のページがあれば再びＳ４７０へ移行するが、全奇数ページの処理が終了すれば、Ｓ１５０以降（図３参照）の処理に進むことになる。
【００６８】
上記の処理により、奇数ページが順に印刷処理されることになる。即ち、プリンタ３は、偶数ページが裏側に印刷された用紙を順に給紙し、２ページの裏側に１ページ、４ページの裏側に３ページという順に印刷することになる。総ページ数が奇数（例えば９ページ）の場合は、前記裏返して入れた偶数ページの最終の用紙に対して印刷した後、それに続く未印刷の用紙に対して端数ページを印刷する。ユーザは、これらの用紙の端を綴じることにより製本できる。
【００６９】
尚、図５の加工・フォント登録処理において、実際の加工処理自体は偶数ページから行ってその後に奇数ページの加工を行うもののフォントデータの抽出については、１ページ目から順番に実行するようにした（つまりＳ５００〜Ｓ５５０の処理を行うようにした）が、このようにしたのは以下の理由による。
【００７０】
即ち、スプールファイルにフォントデータが含まれて送られてくる場合に、フォントデータが実際にスプールファイル中にどのような状態で含まれるかは、ＯＳの仕様等の違いによって異なる場合がある。各ページのＥＭＦに、そのページで使用されるフォントデータ（但しサーバＰＣ２が元々備えていないもの）が必ず含まれている場合は問題ないのであるが、例えば、２ページ目以降で使用するフォントデータ或いは１ページ目以外のある特定のページにのみ使用するフォントデータが、まとめて１ページ目のＥＭＦのみに含まれて送信されてくることも考えられる。
【００７１】
そのため、そのような仕様のＯＳであっても送られてきたフォントデータを確実に利用できるようにするために、Ｓ５００〜Ｓ５５０の処理を設けて、フォントデータの抽出・登録については１ページ目から順に行うようにしているのである。逆にいえば、各ページのＥＭＦに、そのページで使用されるフォントデータであってサーバＰＣ２が元々備えていないものが必ず含まれている場合には、必ずしもこのＳ５００〜Ｓ５５０の処理を実行する必要はない。
【００７２】
以上詳述した本実施形態のネットワーク印刷システムでは、クライアントＰＣ１のアプリケーション１４にて、サーバＰＣ２が持たないフォントを用いた印刷ジョブを生成した場合、そのフォントデータを含んだＥＭＦからなるスプールファイルが生成され、サーバＰＣ２へ送られる。サーバＰＣ２では、スプールファイルをＧＤＩ２５にてプリンタ制御コードに変換する際にそのスプールファイルに含まれたフォントデータが利用されることにより、所望の印刷結果を得ることができるが、スプールファイルに加工情報が含まれていてそのスプールファイルをスプールファイル加工部２３にて加工すると、そのスプールファイルに含まれていたフォントデータが使えなくなってしまう。そのため本実施形態では、実際にＥＭＦの加工処理を行う前に、各ページのＥＭＦに含まれるフォントデータを抽出して、システムフォントとして登録するようにしている。
【００７３】
従って、本実施形態のネットワーク印刷システムによれば、クライアントＰＣ１から送信されるフォントデータを含んだスプールファイルが、加工情報を含むものであっても、スプールファイル加工部２３による加工前にそのフォントデータが抽出・登録されるため、加工後のスプールファイルをプリンタ制御コードに変換する際に確実にそのフォントデータを使用することができ、延いては所望の印刷結果を確実に得ることができる。
【００７４】
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、プリントプロセッサ２７は本発明のスプールファイル取得手段に相当し、フォントデータ抽出・登録部３０は本発明のフォントデータ取得手段及び登録手段に相当し、ＥＭＦ加工部３１は本発明の加工手段に相当する。また、スプールファイル加工部２３は、本発明の削除手段及びページ分割手段としても機能するものである。
【００７５】
また、図３のスプールファイル加工処理において、Ｓ１２０の処理は本発明のページ分割手段が実行する処理に相当し、Ｓ１６０の処理は本発明の削除手段が実行する処理に相当する。更に、図４におけるＳ２８０〜Ｓ２９０の処理、図５におけるＳ５３０〜Ｓ５４０の処理及び図６におけるＳ６７０〜Ｓ６８０の処理はいずれも本発明のフォントデータ取得手段が実行する処理に相当し、図４におけるＳ３００の処理、図５におけるＳ５５０の処理及び図６におけるＳ６９０の処理はいずれも本発明の登録手段が実行する処理に相当する。
【００７６】
尚、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
例えば、上記実施形態では、クライアントＰＣ１から受信してスプール領域２８に記憶されたスプールファイルを、プリントプロセッサ２７が取り出して加工情報が含まれているか否かを判断し、含まれている場合に、そのスプールファイルをスプールファイル加工部２３へ渡すものとしたが、このような構成に限らず、例えば、加工情報の有無に関係なく全てのスプールファイルをスプールファイル加工部２３へ渡し、スプールファイル加工部２３による一連の処理（図３のスプールファイル加工処理）を実行するようにしてもいい。但しこの場合、加工情報のないスプールファイルについては、このスプールファイル加工部２３による加工処理後も、結果としては加工前のスプールファイルの内容と何ら変わることなくスプーラシステム２６へ戻されることになる。
【００７７】
また、上記実施形態では、クライアントＰＣ１とサーバＰＣ２とが有線のネットワークにて接続されているものとして説明したが、有線に限定されることはなく、無線にて相互にデータ送受信するよう構成された無線ネットワーク印刷システムにおいても、上記同様に本発明を適用することが可能である。
【００７８】
更に、上記実施形態では、スプールファイル加工の例として、透かし文字加工及びマニュアルデュープレックス印刷を行う場合について説明したが、他の様々な加工処理（例えばマルチページ印刷など）においても、本発明を適用することにより実際の加工処理前にフォントデータを抽出・登録できることはいうまでもない。
【００７９】
更にまた、上記実施形態では、本発明のスプールファイル加工装置として機能させるための各種プログラム（具体的には、スプールファイル加工部２３及びプリントプロセッサ２７等としての機能を実現するためのプログラム）が、いずれもＨＤＤ２２内に格納されたものとして説明したが、これら各種プログラムを、例えばフロッピーディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ハードディスク等のコンピュータ読み取り可能な記録媒体に記録しておくこともできる。
【００８０】
この場合、記録媒体に記録したプログラムを必要に応じてコンピュータシステムにロードして起動することにより、そのコンピュータシステムにおいて本発明のスプールファイル加工装置を実現することができる。尚、ＲＯＭやバックアップＲＡＭをコンピュータ読み取り可能な記録媒体として上記各プログラムを記録しておき、このＲＯＭあるいはバックアップＲＡＭをコンピュータシステムに組み込んで用いても良い。
【図面の簡単な説明】
【図１】  本実施形態のネットワーク印刷システムの概略構成を示すブロック図である。
【図２】  スプールファイルの概略構成を示す説明図である。
【図３】  本実施形態のスプールファイル加工処理を示すフローチャートである。
【図４】  図３のスプールファイル加工処理におけるＳ１４０の加工・フォント登録処理の一例（透かし文字加工を行う旨の加工情報があった場合）を示すフローチャートである。
【図５】  図３のスプールファイル加工処理におけるＳ１４０の加工・フォント登録処理の一例（マニュアルデュープレックス印刷を行う旨の加工情報があった場合）を示すフローチャートである。
【図６】  図５の加工・フォント登録処理におけるＳ４３０及びＳ４８０の１ページ処理を示すフローチャートである。
【図７】  ネットワーク印刷システムにおいて各端末が接続された状態を示す説明図である。
【図８】  従来のネットワーク印刷システムにおける印刷データの流れを示す説明図である。
【符号の説明】
１，７１…クライアントＰＣ、２，７２…サーバＰＣ、３，７３…プリンタ、１１…中間ファイル生成部、１２，２１…プリントスプーラ、１３，２２…ハードディスク（ＨＤＤ）、１４，８１…アプリケーション、１５…プリンタドライバ、１６，２５，２９，８２，８７…ＧＤＩ、１９…フォントデータ、２０，２８…スプール領域、２３…スプールファイル加工部、２４…メモリ、２６，８３、８５…スプーラシステム、２７，８６…プリントプロセッサ、３０…フォントデータ抽出・登録部、３１…ＥＭＦ加工部、７４…ネットワーク
【図１】
0003757847.tif 000002
【図２】
0003757847.tif 000003
【図３】
0003757847.tif 000004
【図４】
0003757847.tif 000005
【図５】
0003757847.tif 000006
【図６】
0003757847.tif 000007
【図７】
0003757847.tif 000008
【図８】
0003757847.tif 000009