(57)【特許請求の範囲】
【請求項１】
ネットワークに接続するクライアント装置と、プリントサーバ装置またはネットワーク接続型のプリンタ制御装置を介して接続されたプリンタ装置により構成されるプリントシステムにおいて、
前記クライアント装置からのプリント要求を受信するプリント要求受信手段と、
前記プリント要求受信手段で受信したプリント要求に対応する目的プリンタが空き状態であるか否かを判定するプリンタ状態判定手段と、
前記プリンタ状態判定手段で目的プリンタが空き状態であると判定されたとき、印刷制御ファイルまたはプリントデータであるファイルを受信するファイル受信手段と、
前記ファイル受信手段で受信したファイルの内容を判定するファイル内容判定手段と、
前記印刷制御ファイルの内容を解釈し、前記プリントデータの印刷処理を実行するプリントサービスプログラム実行手段
を備え、
クライアント装置からプリントサーバ装置またはネットワーク接続するプリンタ制御装置に、プリント要求、印刷制御ファイルおよびプリントデータを送信して、前記プリント装置においてプリント出力する際に、
前記ファイル内容判定手段の判定結果に基づき、前記プリント要求の受信後に続いて受信したファイルが印刷制御ファイルであると判定された場合、前記印刷制御ファイルを受信し、前記プリントサービスプログラム実行手段へ印刷処理の要求の通知を行う印刷要求通知ステップと、
前記プリントサービスプログラム実行手段が直ちに印刷制御ファイルの内容を解釈すると共に、前記プリントデータを受信しながら前記プリントデータの印刷処理を実行するステップ
または、
前記ファイル内容判定手段の判定結果に基づき、前記プリント要求の受信後に続いて受信したファイルがプリントデータであると判定された場合、前記プリントデータを一時的にスプール領域に受信するプリントデータ受信ステップと、
前記印刷制御ファイルを受信すると前記プリントサービスプログラム実行手段が前記印刷制御ファイルの内容を解釈すると共に、前記プリントデータ受信ステップで受信したプリントデータの印刷処理を実行するステップ
とからなるネットワークプリント処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＬＡＮ（Local Area Network）または、公衆回線、専用回線のような通信回線を利用して、コンピュータとプリンタ装置とが接続されたネットワークプリンタにおいて、プリントデータを印刷出力するネットワークプリント出力処理方法に関し、更に、詳細には、コンピュータを用いた電子出版システムなどで頻繁に利用されているネットワーク接続されたレーザプリンタにおいて、大容量のイメージデータを高速に応答性よく印刷出力するためのネットワークプリント処理方法に関する。
【０００２】
【従来の技術】
従来から、この種のネットワークプリント処理方法の印刷制御技術としては、例えば、特開平４−１９７７６４号公報に記載されている「印刷出力制御方法」のように、プリンタ側で、プリント処理の指示に使用したプリントコントロールデータを、スプール領域に保管し、後で読み出して利用することにより、プリントの再出力処理を可能にするものが知られている。
【０００３】
また、特開平５−２６５６６９号公報に記載されている「印刷システム」のように、ネットワーク上の複数台のプリンタに対応して、その空きスプーラに対して順次キュー内の印刷要求を割り当て、速やかに出力するものが知られている。このため、このような技術によると、スプーラを用いて、複数台のプリンタに出力できるので、印刷出力の処理を高速化できる。
【０００４】
また、例えば、特開平４−３１４１２２号公報に記載されている「平行印刷処理装置」のように、２つの文書を交互に１頁ずつ交互に印刷処理する平行印刷処理の印刷モードと、文書の印刷を他の文書の割り込みを許さずに行う単一印刷処理の印刷モードとを印刷量に基づいて行うものがある。これは、大量のプリント処理を行う場合、スプーラ機構を使用すると、印刷要求を発行した順序により、プリンタ装置は、先の印刷要求の処理に長時間装置を占有されるため、つまり、大量の印刷出力時には、後の印刷要求のプリント待ちの時間が長くなるため、一時停止して、印刷量の少ないプリント処理を先に行わせるものである。ここでは、スプール処理、プリント出力処理の高速化については考慮されていない。
【０００５】
また、特開平７−２６１８６８号公報に記載の「印刷制御装置」のように、印刷スプーラの制御ファイルを用いて課金管理を行い、また、スプーラデータを用いて再出力管理を行うものが知られている。このように、ネットワークプリント出力方法においては、スプーラに記憶した印刷制御ファイルおよび印刷対象ファイルを有効利用するための技術が様々に開発されている。
【０００６】
【発明が解決しようとする課題】
しかしながら、従来のネットワークを介したプリント処理方法においては、プリントサーバ装置やネットワーク接続型プリンタなどのプリントデータの受信側の装置では、印刷スプーラを用いることが前提条件になっている。このため、プリントデータを全部受信し終わってから、プリント処理またはプリントのためのデータ加工処理を始めるように構成されている。このような結果、全体として印刷処理の時間が遅くなっていた。
【０００７】
また、プリントデータを送信するクライアント装置側からは、プリント時の処理、順番や表紙情報に関して記述してある印刷制御ファイルを全てのプリントデータの送信後に送信する。このため、受信側（プリントサーバ装置）では、印刷制御ファイル受信の受信処理を完了し、その印刷制御ファイルに記述してある内容を解析するまで、プリント処理を開始できない。
【０００８】
従来のネットワークプリント処理方法においては、プリントデータは必ずしも印刷出力する順番には送られて来るとは限らない。また、プリントデータの受信順とは無関係に、最後に受信する印刷制御ファイルに印刷オプションが記述されているため、全てのプリントデータの受信を待たずに、最初に受信したプリントデータをプリンタ装置にデータ転送する処理を行うことはできない。
【０００９】
例えば、印刷出力処理を全体として高速化する（スループットを向上させる）ことを目的とすると、大量の印刷出力処理の実行中は、プリンタ装置、プリンタ制御装置を占有してしまうことになるので、これを避ける意味で、複数のプリンタに出力させる提案（特開平５−２６５６６９号公報）や、印刷処理中に割り込んで他の印刷処理を同時に並行して進める提案（特開平４−３１４１２２号公報）があるが、これらの提案による印刷制御処理の技術では、出力した結果（印刷物）がバラバラになってしまうという問題があった。
【００１０】
したがって、本発明の目的は、ネットワークを介してプリンタに印刷出力を行う際に、プリント出力指示から最初の印刷用紙が出力されるまでの時間の短縮を行い、より高速なプリント処理が行えるネットワークプリント処理方法を提供することにある。
【００１１】
【課題を解決するための手段】
上記のような目的を達成するため、本発明によるネットワークプリント処理方法は、ネットワークに接続するクライアント装置と、プリントサーバ装置またはネットワーク接続型のプリンタ制御装置を介して接続されたプリンタ装置により構成されるプリントシステムにおいて、前記クライアント装置からのプリント要求を受信するプリント要求受信手段と、前記プリント要求受信手段で受信したプリント要求に対応する目的プリンタが空き状態であるか否かを判定するプリンタ状態判定手段と、前記プリンタ状態判定手段で目的プリンタが空き状態であると判定されたとき、印刷制御ファイルまたはプリントデータであるファイルを受信するファイル受信手段と、前記ファイル受信手段で受信したファイルの内容を判定するファイル内容判定手段と、前記印刷制御ファイルの内容を解釈し、前記プリントデータの印刷処理を実行するプリントサービスプログラム実行手段を備え、クライアント装置からプリントサーバ装置またはネットワーク接続するプリンタ制御装置に、プリント要求、印刷制御ファイルおよびプリントデータを送信して、前記プリント装置においてプリント出力する際に、前記ファイル内容判定手段の判定結果に基づき、前記プリント要求の受信後に続いて受信したファイルが印刷制御ファイルであると判定された場合、前記印刷制御ファイルを受信し、前記プリントサービスプログラム実行手段へ印刷処理の要求の通知を行う印刷要求通知ステップと、前記プリントサービスプログラム実行手段が直ちに印刷制御ファイルの内容を解釈すると共に、前記プリントデータを受信しながら前記プリントデータの印刷処理を実行するステップ、または、前記ファイル内容判定手段の判定結果に基づき、前記プリント要求の受信後に続いて受信したファイルがプリントデータであると判定された場合、前記プリントデータを一時的にスプール領域に受信するプリントデータ受信ステップと、前記印刷制御ファイルを受信すると前記プリントサービスプログラム実行手段が前記印刷制御ファイルの内容を解釈すると共に、前記プリントデータ受信ステップで受信したプリントデータの印刷処理を実行するステップとからなることを特徴とする。
【００１７】
このような特徴を有する本発明のネットワークプリント処理方法においては、プリントサーバ装置、ネットワークプリンタなどの受信側が、プリンタ装置が利用されていない場合に限って、プリントデータを受信しながら、プリンタ装置に対してプリントデータを出力してプリントさせる。
【００１８】
この場合、プリンタ装置は、他からのプリント処理に利用されないようにロックし、全てのプリントデータが揃わなくても、受信したプリントデータが印刷頁の１頁分、またはバッファ領域分のプリントデータが揃えば、プリンタ装置に起動をかけて、プリントデータを転送し、プリント処理を始めるようにする。
【００１９】
このプリント処理では、プリントサーバ装置、またはネットワーク接続型のプリンタ制御装置内において、プリントデータを受信しながら同時にプリント出力する処理を優先的に１つだけ処理すると同時に、従来と同様に、受信処理可能なプリントデータ通信量と、接続するクライアントの数を制御して、プリントサーバ側の負荷を押さえるようにする。
【００２０】
また、プリントサーバ装置、ネットワークプリンタなどの受信側が、前述したように、プリントデータを受信しながら、プリンタ装置に送信出力することに加えて、同一内容の再プリントに備えて、バッファ領域に受信したプリントデータを一時的に保管する。
【００２１】
プリントサーバ装置、ネットワークプリンタなどの受信側は、クライアント装置から、次に示す指定のいずれかの指定された「プリント方式の指示」を「プリント要求」と共に受信して、それ以降に送られてくるプリントデータの処理方法を決定する。
▲１▼プリント要求リクエスト時に（従来の技術と同様に）、全てのプリントデータを受信、スプール領域に一時的に保管してから、プリンタ装置への出力処理を開始する指定。
▲２▼プリントデータを受信しながら、その場でプリンタ装置への出力処理を行う指定。この場合、プリントデータの再プリントのための保管は行わない。
▲３▼プリントデータを受信しながら、その場でプリンタ装置への出力処理を行い、更に、プリンタ装置に出力したデータを同一内容の再プリントのために一時的に保管する指定。
【００２２】
また、本発明のネットワークプリント処理方法では、「印刷制御ファイル」の受信順による動作制御を行う。すなわち、プリントサーバ装置、ネットワークプリンタ装置などの受信側は、クライアント装置から「プリント要求」の指示後に直ちに「印刷制御ファイル」を受信した場合には、「印刷制御ファイル」の内容に従ってプリント処理を行う。また、「印刷制御ファイル」を受信せず、「プリントデータ」を受信した場合には、従来の技術と同様な方法で（スプール機能を利用して）「プリントデータ」を扱う。
【００２３】
また、本発明のネットワークプリント処理方法では、送信側クライアント装置において、操作員によって出力指示時に設定される出力時オプションに従って、「プリントデータ」をどのような順番で送信するか、「プリントデータ」の受信側での処理方法、「印刷制御ファイル」をいつ送信するかについて、自動的に最適な手段を選択する。
【００２４】
このような本発明のネットワークプリント処理方法によると、全プリントデータのネットワーク転送処理が完了していない場合であっても、プリンタ出力処理を開始できる。これは、データ通信を行うネットワークの通信回線が十分に高速であり、且つ安定しているので、一部のデータ転送処理が完了した時点でプリント処理を開始していても、後続するプリントデータが転送されてくることが、かなりの確度で保証されていることによる。また、データ転送開始後に、プリンタ装置に対して、データ転送の一時中断、転送再開、エラー処理などの制御が比較的容易に処理できるためである。
【００２５】
この結果、プリンタの印刷結果をより早く入手することができるようになる。つまり、プリントの待ち時間が少なくなる。また、プリント出力動作と、ネットワーク転送動作を同時に行うことにより、ネットワーク上の資源を有効に活用でき、システムの生産性が向上する。更に、また、従来のプリント方式と互換性があるため、従来方式の機器と組み合わせて利用できるという利点がある。
【００２６】
【発明の実施の形態】
以下、本発明を実施する場合の形態について、具体的に図面を参照して説明する。図１は、本実施例で用いるネットワークのシステム構成を示すブロック図であり、図２は、ネットワークに接続されるクライアント装置の構成を示すブロック図であり、また、図３は、ネットワークに接続されるプリントサーバ装置の構成を示すブロック図である。
【００２７】
本発明に係るネットワークプリント処理方法を実施するネットワークシステムは、図１に示すように、ローカルエリアネットワーク（ＬＡＮ）を構成するネットワーク１０により、クライアント装置１１とプリントサーバ装置１２が接続されたネットワークシステムである。ネットワーク１０に接続されたプリントサーバ装置１２には、印刷機構部を有するプリンタ装置１３が接続される。図１においては、プリント要求を発行するクライアント装置１１は、１台だけがネットワーク１０に接続されている様子を示しているが、もちろん、ネットワーク１０には複数台のクライアント装置１１が接続され、それぞれのクライアント装置１１がプリント要求を発行する。
【００２８】
クライアント装置１１は、例えば、ワークステーションなどのデータ処理装置であり、プリントサーバ装置１２に対して、ネットワークを介してプリント要求を発行する端末装置で構成される。つまり、クライアント装置１１で作成した文書ファイルおよびイメージファイル等を印刷物とするため、プリントサーバ装置１２にプリント要求を発行する。具体的には、ネットワークプリント処理を行うには、クライアント装置１１から、プリント要求を発行する際に、対象とする印刷対象データおよび出力オプションを記述した印刷制御データをプリントサーバ装置１２に送信する。また、ここでは、出力オプションに従い、プリントサーバ装置１２のスプール機能を利用して、クライアント装置１１は、プリント要求を行い、送信を行った印刷対象データの再出力を指示することもできる。
【００２９】
クライアント装置１１は、具体的には、図２に示すように、ネットワークに接続するネットワーク接続器２０、データ通信部２１、データ処理・制御部２２、情報表示部２３、情報入力部２４、データ蓄積部２５から構成される。ネットワーク接続器２０は、前述したように、ＬＡＮのネットワーク１０に物理的に接続する端子部分であり、データ通信部２１は、ネットワークの通信プロトコルに従い、ネットワークに接続された各端末装置の間のデータ通信処理を行う。データ処理・制御部２２は、クライアント装置におけるデータ処理と制御を行う本体部分である。情報表示部２３は、例えば、ＣＲＴディスプレイ装置で構成される。また、情報入力部２４は、例えば、キーボード、ポインティングデバイスのマウスなどで構成される。データ蓄積部２５は、例えば、ハードディスク装置で構成され、情報表示部２３および情報入力部２４を用いるデータ処理・制御部２２によるワードプロセッサなどのアプリケーションソフトウェアのプログラム処理によって作成された文書ファイルおよびイメージファイル等を蓄積する。そして、このアプリケーションソフトウェアのプログラム処理の中で、文書ファイルのデータまたはイメージファイルのデータを印刷物とするため、プリントサーバ装置１２にプリント要求を発行する。
【００３０】
プリントサーパ装置１２は、クライアント装置１１から受信したプリント要求により、その受信した印刷対象データおよび印刷制御データに基づいてプリンタ装置１３を制御して、印刷処理を行う。その場合、受信した印刷対象データおよび印刷制御データは、プリントサーバ装置１２のスプール機能により蓄積され、プリント要求の出力オプションで再出力が要求されると、蓄積している印刷対象データを再出力する。
【００３１】
また、プリントサーバ装置１２の構成は、図３に示すように、ネットワークに接続するネットワーク接続器３０、データ通信部３１、データ処理・制御部３２、プリンタ接続部３３、データ蓄積部３４から構成される。ネットワーク接続器３０は、前述したように、ＬＡＮのネットワーク１０に物理的に接続する端子部分であり、データ通信部３１は、ネットワークの通信プロトコルに従い、ネットワークにより接続された各クライアント装置の端末装置との間でデータ通信処理を行う。データ処理・制御部３２は、プリントサーバ装置における印刷制御にかかるデータ処理と、接続されるプリンタ装置の制御を行う本体部分である。プリンタ接続部３３は、プリンタ装置１３とデータ処理・制御部３２との間の接続部であり、具体的には、印刷出力用デバイスドライバで構成され、接続されるプリンタ装置１３のハードウェア仕様の違いを吸収する。データ蓄積部３４は、例えば、ハードディスク装置で構成され、主に、印刷制御のスプール機能を提供する記憶領域（スプール領域）を提供し、また、データ処理・制御部３２にかかる印刷制御処理のプログラムを格納している。データ蓄積部３４において、印刷対象ファイルおよび印刷管理ファイルを記憶するスプール領域は、FIFO（First In First 0ut）形式で構成され、受付順序に従つて印刷対象データを格納し、また、この順序で印刷対象データを出力する。
【００３２】
データ処理・制御部３２は、プリントサーバの処理機能に係る各種データ制御を行う制御部であり、具体的には、データ処理の制御プログラムを起勤して、受信データのスプール領域への格納や、スプール領域から印刷データを読み出す処理、プリンタに対する管理・制御等を行う。ここでの印刷処理においては、スプール領域に記憶された印刷ジョブの印刷処理は、いわゆる印刷管理プログラムを起動して印刷処理を実行する。印刷管理プログラムは、順次スプール領域から印刷対象ファイルおよび印刷管理ファイルをアクセスし、印刷ジョブごとに子プロセスを生成して印刷処理を行わせる。また、再出力処理では、必要に応じてクライアント装置１１から送信される再出力指示と、印刷管理ファイルおよび印刷対象ファイルに基づいて、新たな印刷デ一夕を作成する再出力処理を行う。
【００３３】
次に、上記のような構成を有するクライアント装置およびプリントサーバ装置における印刷処理の流れについて説明する。図４は、ＵＮＩＸオペレーティングにおける印刷制御ファイルの一例を示す図あり、図５は、ネットワーク・プリントの印刷処理のデータ流れを説明する図である。
【００３４】
図４に示すように、この印刷制御ファイル３５は、従来のＵＮＩＸオペレーティングにおいて用いられている１文字の制御コードによる印刷制御コマンドから構成されている。つまり、ＵＮＩＸオペレーティングにおける印刷制御を行うｌｐｒプログラムが呼び出されるホスト名を示す制御コードＨと、印刷出力を依頼するユーザ名を示す制御コードＰと、出力表紙に印刷するジョブ名を示す制御コードＪと、出力表紙上の分類行を示す制御コードＣと、出力表紙に印刷する識別情報を示す制御コードＬと、スプール領域での名前、データ種別、出力順番、部数、識別名等の出力オプションを示す制御コードｘと、出力後に削除するファイルを示す制御コードＵと、出力ファイル名を示す制御コードＮと、出力タイトル名を示す制御コードＴとの組合せで構成されている。
【００３５】
このような印刷制御ファイル３５の内容によると、まず、制御コードＨにより、ｌｐｒプログラムが呼び出されるホスト名“ｒａｎ”を示し、次に、制御コードＰにより印刷出力を依頼するユーザ名“ｒｏｏｔ”を示し、次に、制御コードＪにより、出力表紙に印刷するジョブ名“Ｍａｋｅｆｉｌｅ”とすることを指示する。
【００３６】
続いて、制御コードＣにより、出力表紙上の分類行“ｒａｎ”として示し、制御コードＬによって出力表紙に印刷する識別情報“ｒｏｏｔ”を示す。そして、次の行からの制御コードｘによって、スプール領域での名前、データ種別、出力順番、部数、識別名等の出力オプションを示す。その中で、再出力しない場合には、制御コードＵにより出力後に削除するファイルを指示しておく。また、制御コードＮによって、例えば、出力ファイル名“ｆｉｌｅＡ”を示し、制御コードＴによって出力タイトル名“Ｔｉｔｌｅ：ｆｉｌｅＡ”を示す。
【００３７】
この結果、図４に示す印刷制御プログラムによると、出力ファイル名を“ｆｉｌｅＡ”とし、出力タイトル名を“Ｔｉｔｌｅ：ｆｉｌｅＡ”とした印刷対象ファイルの出力オプション“ｄｆＡ００１ｒａｎ”と、出力ファイル名を“ｆｉｌｅＢ”とし、出力タイトル名を“Ｔｉｔｌｅ：ｆｉｌｅＢ”とした印刷対象ファイルの出力オプション“ｄｆＡ００２ｒａｎ”とを、それぞれ制御コードｘで２度指定しているので、この場合には、「ｆｉｌｅＡ」および「ｆｉｌｅＢ」が、それぞれ２部づつ印刷されることになる。なお、この場合において、制御コードＵの指示により、印刷処理を終了すると、２つの印刷対象ファイルは削除されるので、後の再出力は行えない。
【００３８】
次に、図５を参照して、ネットワーク・プリント処理におけるデータの流れについて説明する。既に作成した印刷対象ファイルが存在し、この印刷対象ファイルの印刷処理を行う場合、操作員４０は、ネットワーク・プリント要求プログラム４１を起動する。そして、印刷対象ファイル４５を指定してプリント要求を発行する。ネットワーク・プリント要求プログラム（ｌｐｒプログラム）４１は、プリント要求により、指定された印刷対象ファイル４５を送信スプール領域４６にコピーし、それに対応して、印刷制御ファイル４７を作成し、同じく送信スプール領域４６に格納する。そして、ネットワーク・プリント送信プログラム（ｌｐｄプログラム）４２に通知する。
【００３９】
ネットワーク・プリント送信プログラム（ｌｐｄプログラム）４２は、ネットワーク・プリント要求プログラム４１からの通知を受けると、印刷対象ファイル４５および印刷制御ファイル４７のネットワーク送信処理を行う。このネットワーク送信処理は、送信相手のネットワーク・プリント受信プログラム（ｌｐｄプログラム）４３との間で、所定の通信プロトコルに従って、ネットワーク通信を行う。つまり、送信開始時には、ネットワーク・プリント送信プログラム４２から送信の開始を通知し、印刷対象ファイル４５および印刷制御ファイル４７のファイル送信を開始する。
【００４０】
ネットワーク・プリント受信プログラム４３は、送信されてきた印刷対象ファイル４５および印刷制御ファイル４７の受信処理を行い、受信スプール領域４８に格納する。全てのファイルの受信を完了すると、その受信処理の終了時には、受信完了の確認をネットワーク・プリント送信プログラム４２に送信する。この結果、受信スプール領域４８には、印刷対象ファイル４５および印刷制御ファイル４７が格納された状態となる。
【００４１】
ネットワーク通信により受信された印刷対象ファイル４５および印刷制御ファイル４７が受信スプール領域４８に格納されると、直ちに、ネットワーク・プリント受信プログラム４３は、ｌｐｄプログラムの中で子プロセスを生成して、その印刷対象ファイルに対する印刷処理の要求を、ネットワーク・プリントサービスプログラム４４に通知する。ネットワーク・プリントサービスプログラム４４は、印刷処理の要求の通知を受けると、印刷制御ファイル４７の制御コード（図４）に従って、印刷対象ファイル４５の印刷処理を実行する。これにより、プリンタ４９において印刷用紙への印刷が行われる。
【００４２】
次にこれらの処理の中のネットワーク・プリント要求プログラム４１、ネットワーク・プリント送信プログラム４２、ネットワーク・プリント受信プログラム４３、およびネットワーク・プリントサービスプログラム４４のそれぞれの処理について説明する。
【００４３】
図６は、ネットワーク・プリント要求プログラム（４１：図５）の処理を示すフローチャートである。図６を参照してネットワーク・プリント要求の処理について説明する。ここでのネットワーク・プリント要求の処理においては、処理を開始すると、まず、ステップ５１において、プリントコマンドのパラメータを解析する。次に、ステップ５２において、印刷制御ファイルにオプションを記述する。次に、ステップ５３において、印刷対象ファイルの次のプリントファイルを読み込み、次のステップ５４において、プリントファイルが終了となったか否かを判定する。プリントファイルが終了でない場合には、未処理のプリントファイルが存在するので、次に、ステップ５５に進み、プリントファイルを送信スプール領域にコピーする。そして、次のステップ５６において、コピーしたプリントファイルに対する属性を印刷制御ファイルに記述する。そして、ステップ５３に戻り、ステップ５３からの処理により、印刷対象ファイルの次のプリントファイルに対する処理を繰り返し行う。
【００４４】
また、ステップ５４の判定処理において、プリントファイルが終了となったことが判定できると、次にステップ５７に進み、印刷制御ファイルの時刻を設定する。これにより、送信スプール領域に印刷対象ファイルおよび印刷制御ファイルが準備されたので、次のステップ５８において、ネットワーク・プリント送信プログラムに通知して、ここでの処理を終了する。
【００４５】
図７は、ネットワーク・プリント送信プログラム（４２：図５）の処理を示すフローチャートである。図７を参照してネットワーク・プリント送信の処理について説明する。ここでのネットワーク・プリント送信プログラムが起動されると、この処理においては、まず、ステップ６１において、ネットワークプリント送信の要求待ち処理を行い、次に、ステップ６２において、ファイル送信の要求があるか否かの判定を行う。ファイル送信の要求がない場合には、ステップ６１に戻り、ステップ６１からのネットワークプリント送信の要求待ち処理、ファイル送信の要求の判定処理を繰り返す。
【００４６】
ここでは印刷制御ファイルの内容に従って、印刷対象ファイルのプリントファイルと、その印刷制御ファイルを、この順に送信する。このため、ファイルの送信処理では、ファイル送信の要求があると、次のステップ６３に進み、スプールの印刷制御ファイル管理簿を読み出し、印刷制御ファイルを古い時刻順に並び替え、次のステップ６４において、次の処理対象の印刷制御ファイルを読み込む。そして、次のステップ６５において、送信する印刷制御ファイルが終了したか否かを判定する。ファイルが終了していない場合、まだ、印刷対象のプリントファイルが送信されていないので、まず、プリントファイルの送信を行うため、次のステップ６６に進み、目的のプリントサーバへのプリント開始要求を送信する。
【００４７】
そして、次に、ステップ６７において、送信先のプリントサーバからプリント開始要求の「受付確認」を受信すると、続いて、次のステップ６８において、送信するプリントファイルの所在とサイズを確認する。そして、ステップ６９において、プリントファイルの送信は終了したか否かを判定し、プリントファイルの送信が終了していない場合には、次のステップ７０に進み、「プリントファイルの送信要求」を送信する。そして、次のステップ７１において「受付確認」を受信すると、続いて、次のステップ７２において、「プリントファイル」を送信する。そして、ファイル送信が終了すると、続いて、次のステップ７３で、「送信終了」を送信する。これに対して、次のステップ７４において、「受信確認」を受信すると、ここでのプリントファイルの送信処理を完了する。そして、次のプリントファイルの送信処理を繰り返し行うために、ステップ６８に戻り、ステップ６８からのプリントファイルの送信処理を繰り返し行う。
【００４８】
一方、ステップ６９の判定において、プリントファイルの送信の終了を判定すると、次に、印刷制御ファイルの送信処理を行うため、ステップ７５に進む。そして、ステップ７５において、「印刷制御ファイルの送信要求」を送信し、次のステップ７６において「受付確認」を受信すると、続いて、次のステップ７７において、「印刷制御ファイル」を送信する。そして、ファイル送信が終了すると、続いて、次のステップ７８で、「送信終了」を送信する。これに対して、次のステップ７９において、「受信確認」を受信すると、ここでの印刷制御ファイルの送信処理を完了する。そして、次の印刷制御ファイルおよびプリントファイルの送信処理を繰り返し行うために、ステップ６３に戻り、ステップ６３からの印刷制御ファイルの送信処理を繰り返し行う。
【００４９】
また、ステップ６３からの処理で、ステップ６５に進み、ステップ６５において、送信する印刷制御ファイルが終了したことを判定すると、全てのネットワーク・プリント処理にかかる全てのファイルの送信処理が終了したので、ステップ６１に戻り、ステップ６１のからの処理で、次のネットワークプリント送信の要求を待つ処理を繰り返す。
【００５０】
図８は、ネットワーク・プリント受信プログラム（４３：図５）の処理を示すフローチャートである。図８を参照して、ここでのネットワーク・プリント受信の処理について説明する。ネットワーク・プリント受信プログラムが起動されると、この処理においては、まず、ステップ８１において、ネットワークプリント要求の受信待ちの処理を行い、次に、ステップ８２において、プリント要求の受信があるか否かの判定を行う。プリント要求の受信がない場合には、ステップ８１に戻り、ステップ８１からのネットワークプリント要求の受信待ち処理、プリント要求の受信の判定処理を繰り返す。
【００５１】
このプリント要求の受信待ちの処理を繰り返し、プリント要求受信を判定できると、次に、ステップ８３に進み、プリント開始要求の受信を行うと、続いて、ステップ８４において、「受付確認」を送信する。そして、次に、ステップ８５において、ファイル送信要求を受信する。次に、ステップ８６において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルであるか否かを判定する。ファイルが印刷制御ファイルでない場合、当該ファイルはプリントファイルであるので、次のステップ８７に進み、「プリントファイルの送信要求」を受信する。この受信処理が終わると、次にステップ８８に進み、「受付確認」を送信し、次のステップ８９において、プリントファイルを受信する。
【００５２】
プリントファイルを受信すると、次のステップ９０において、受信したプリントファイルは受信スプール領域に格納する。次に、ステップ９１において、「送信終了」を受信すると、次のステップ９２において「受信確認」を送信して１つのプリントファイルの受信処理を完了する。そして、続いて、次のプリントファイルの受信処理を行うため、ステップ８５に戻り、ステップ８５からの処理を繰り返し行う。
【００５３】
また、ステップ８５において、ファイル送信要求を受信し、次のステップ８６において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルである場合は、次に、ステップ９３に進み、「印刷制御ファイルの送信要求」を受信する。この受信処理が終わると、次にステップ９４に進み、送信要求の受付確認を行い、続いて、次のステップ９５において、印刷制御ファイルを受信する。受信した印刷制御ファイルは受信スプール領域に格納する。そして、次のステップ９６において、「送信終了」を受信すると、次のステップ９７において「受信確認」を送信して、印刷制御ファイルの受信処理を完了する。既にプリントファイルは受信されているので、印刷制御ファイルを受信すると、印刷処理を開始できる。このため、次のステップ９８において、プリントサービスプログラムに通知する。これにより、後述するように、プリントサービスプログラムは、プリンタを制御して印刷処理を開始する。そして、次のプリント要求の受信処理を行うため、ステップ８１に戻り、ステップ８１からの処理を繰り返し行う。
【００５４】
図９は、プリントサービスプログラム（４４：図５）の処理を示すフローチャートである。図９を参照してプリントサービス処理について説明する。このプリントサービス処理では、前述のネットワーク・プリント受信プログラム（４３：図５）が、印刷対象ファイルのプリントファイルおよび印刷制御ファイルを受信して、当該プリントサービスプログラムに通知されることにより起動され、処理が開始される。
【００５５】
プリントサービスプログラムは、処理を開始すると、まず、ステップ１０１において、プリントサービスの要求待ち処理を行い、次に、ステップ１０２において、プリントサービスの要求があるか否かの判定を行う。プリントサービスの要求がない場合には、ステップ１０１に戻り、ステップ１０１からのプリントサービスの要求待ち処理、プリントサービス要求の有無の判定処理を繰り返す。
【００５６】
ステップ１０２の判定処理で、プリントサービスの要求があることが判定できると、次に、ステップ１０３に進み、受信スプール領域から印刷制御ファイルを読み出す。次に、ステップ１０４において、読み出した印刷制御ファイルを古い時刻順に並び替え、次のステップ１０５において、次の処理対象の印刷制御ファイルを読み込む。そして、次のステップ１０６において、印刷制御ファイルが終了したか否かを判定する。ファイルが終了していない場合、まだ、未処理の印刷対象のプリントファイルが存在するので、プリンタにより印刷処理を行うため、次のステップ１０７に進み、目的プリンタの動作状態を確認し、次のステップ１０８において、他のプリンタサービスプログラムから当該プリンタが使用されないように、目的プリンタへの出力をロックする。
【００５７】
次に、ステップ１０９において、受信スプール領域からプリントファイルの所在とサイズを確認し、ステップ１１０において、印刷対象のプリントファイルが終了したか否かを判定し、ファイルが終了していない場合、プリントファイルの印刷処理を行うため、ステップ１１２に進み、ステップ１１２からの印刷処理を行う。また、印刷対象のファイルが終了した場合には、ステップ１１１に進み、目的プリンターの出力ロックを解放して、このとき、スプールのプリンタファイルおよび印刷制御ファイルを削除する。ステップ１０３に戻る。そして、次の印刷制御ファイルの読み込み処理のステップ１０３からの処理を繰り返し行う。
【００５８】
ステップ１１２からの処理によるプリントファイルの印刷処理では、まず、ステップ１１２において、印刷制御ファイルからの編集加工オプションを読み込み、次のステップ１１３において、プリントファイルの読み込みを行う。次にステップ１１４において、ファイル加工処理を行うか否かを判定し、ファイル加工処理を行う場合にのみ、次のステップ１１５で、プリントファイルを全件加工編集する。そして、ステップ１１６に進み、プリンタ出力準備信号をプリンタに出力して、次のステップ１１７において、プリントファイルをプリンタに全件出力する。これにより、このプリントファイルの印刷出力処理が終了するので、次のプリンタファイルに対する印刷処理を行うため、ステップ１０９に戻り、次にプリントファイルに対して、ステップ１０９からの処理を繰り返す。
【００５９】
ところで、本実施例のネットワークプリント処理方法においては、高速に印刷処理を開始させるため、プリントサーバ装置に対して、前述したように、「プリント要求」と共に「プリント方式の指示」を行うことによって、例えば、プリントデータを受信しながら、その場でプリンタへの出力処理を行う。この場合、前述のネットワークプリント受信プログラムの処理では、印刷制御ファイルと共にプリントファイルのバッファ領域分の受信のみで、プリントサービスプログラムに通知を行い、プリントサービスプログラムの制御により、印刷処理を開始するようにする。また、この場合において、「プリント方式の指示」の内容によっては、プリントファイルのデータの再プリントのための保管は行う場合と、行わない場合とがある。
【００６０】
このような高速の印刷出力のための印刷処理機能は、プリントサーバ装置に接続されたプリンタ装置が利用されていない場合に限って、プリントデータを受信しながら、プリント装置に対してプリントデータを出力してプリントさせるようにする。具体的に、ここでの印刷制御では、プリンタ装置は、他からのプリント処理に利用されないようにロックし、全てのプリントデータが揃わなくても、受信したプリントデータが印刷頁の１頁分、またはバッファ領域分のプリントデータが揃えば、プリント装置に起動をかけて、プリントデータを転送し、プリント処理を開始させるようにする。
【００６１】
図１０および図１１は、高速印刷処理のために修正されたネットワークプリント受信プログラム（４３：図５）の処理を示すフローチャートである。図１０および図１１を参照して、ここでの修正されたネットワーク・プリント受信の処理について説明する。まず、図１０を参照する。ネットワーク・プリント受信プログラムが起動されると、この処理においては、まず、ステップ１２１において、ネットワークプリント要求の受信待ちの処理を行い、次に、ステップ１２２において、プリント要求の受信があるか否かの判定を行う。プリント要求の受信がない場合には、ステップ１２１に戻り、ステップ１２１からのネットワークプリント要求の受信待ち処理、プリント要求の受信の判定処理を繰り返す。
【００６２】
このプリント要求の受信待ちの処理を繰り返し、プリント要求受信を判定できると、次に、ステップ１２３に進み、プリント開始要求の受信の処理を行う。次に、高速印刷処理を行うため、プリンタの空き状態を確認する処理を行う。このため、次のステップ１２４において、目的プリンタの動作確認を行い、次のステップ１２５において、プリンタが空き状態であるか否かを判定する。
【００６３】
プリンタが空き状態でなければ、高速印刷処理が行えないので、この場合は、前述の場合と同様に、そのまま、受信するプリントファイルおよび印刷制御ファイルを受信スプール領域に格納する処理を行う。このため、ステップ１２６に進み、このステップ１２６の処理において、「受付確認」を送信し、次に、ステップ１２７において、ファイル送信要求を受信する。次に、ステップ１２８において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルであるか否かを判定する。ファイルが印刷制御ファイルでない場合は、当該ファイルがプリントファイルであるので、次のステップ１２９に進み、「プリントファイルの送信要求」を受信する。この受信処理が終わると、次にステップ１３０に進み、「受付確認」を送信し、次のステップ１３１において、プリントファイルを受信する。
【００６４】
プリントファイルを受信すると、次のステップ１３２において、受信したプリントファイルを受信スプール領域に格納する。次に、ステップ１３３において、「送信終了」を受信すると、次のステップ１３４において「受信確認」を送信して１つのプリントファイルの受信処理を完了する。そして、続いて、次のプリントファイルの受信処理を行うため、ステップ１２７に戻り、ステップ１２７からの処理を繰り返し行う。
【００６５】
また、ステップ１２７において、ファイル送信要求を受信し、次のステップ１２８において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルである場合は、次に、ステップ１３６に進み、「印刷制御ファイルの送信要求」を受信する。この受信処理が終わると、次にステップ１３７に進み、送信要求の受付確認を行い、続いて、次のステップ１３８において、印刷制御ファイルを受信する。受信した印刷制御ファイルは受信スプール領域に格納する。そして、次のステップ１３９において、「送信終了」を受信すると、次のステップ１４０において「受信確認」を送信して、印刷制御ファイルの受信処理を完了する。既にプリントファイルは受信されており、印刷制御ファイルを受信すると、印刷処理を開始できるので、次のステップ１４１において、プリントサービスプログラムに通知する。これにより、プリントサービスプログラムは、プリンタを制御して印刷処理を開始する。そして、次のプリント要求の受信処理を行うため、ステップ１２１に戻り、ステップ１２１からの処理を繰り返し行う。
【００６６】
一方、ステップ１２５において、プリンタが空き状態であることが判定できると、この場合には、高速印刷処理が行えるので、ステップ１３５からの処理により、プリントデータを受信しながら同時に印刷出力を行う処理を行う。つまり、バッファ領域分のプリントデータを受信すると、直ちに、プリントサービスプログラムに通知して、当該プリントサービスプログラムにより、プリンタを動作させ、このプリントデータだけでも印刷出力処理へと処理を進行させ、続いて受信するプリントデータを順次にプリンタに出力する。
【００６７】
このため、ステップ１３５において、目的プリンタへの出力をロックし、次のステップ１４２（図１１）に進む。この場合、プリントデータを受信するため、ステップ１４２の処理において、「受付確認」を送信し、次に、ステップ１４３において、ファイル送信要求を受信する。次に、ステップ１４４において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルであるか否かを判定する。ファイルが印刷制御ファイルでない場合は、当該ファイルがプリントファイルであるので、次のステップ１４５に進み、「プリントファイルの送信要求」を受信する。この受信処理が終わると、次に、ステップ１４６において、プリントファイル受信用バッファ領域を確保する。そして、次のステップ１４７において、「受付確認」を送信し、次のステップ１４８において、プリント出力準備信号をプリンタへ出力し、次のステップ１４９において、プリントファイルを受信する。
【００６８】
プリントファイルを受信すると、次のステップ１５０において、プリントバッファ領域分受信したか否かを判定し、プリントバッファ領域分のプリントデータを受信するまで、ステップ１４９とステップ１５０の処理を繰り返す。プリントバッファ領域分のプリントデータを受信すると、次に、ステップ１５１に進み、バッファ領域分のプリントデータをプリンタへ出力する。そして、次のステップ１５２において、プリントファイル分の出力が完了したか否かの判定を行い、プリントファイル分の出力が完了しない場合には、ステップ１４９に戻り、ステップ１４９からステップ１５２の処理で、プリントバッファ領域分のプリントデータの受信と、バッファ領域分のプリントデータのプリンタへの出力の処理を繰り返す。
【００６９】
そして、ステップ１５２の判定において、プリントファイル分の出力が完了したことが判定できると、これにより、ネットワークプリントの処理は終了したので、ステップ１５３に進み、「送信終了」を受信し、そして、次のステップ１５４において「受信確認」を送信して１つのプリントファイルの受信処理を完了する。そして、続いて、次のプリントファイルの受信処理を行うため、ステップ１４３に戻り、ステップ１４３からの処理を繰り返し行う。
【００７０】
また、ステップ１４３において、ファイル送信要求を受信し、次のステップ１４４において、受信したファイルの内容を判定し、ファイルが印刷制御ファイルである場合は、次に、ステップ１５５に進み、「印刷制御ファイルの送信要求」を受信する。この受信処理が終わると、次にステップ１５６に進み、送信要求の受付確認を行い、続いて、次のステップ１５７において、印刷制御ファイルを受信する。受信した印刷制御ファイルは受信スプール領域に格納する。そして、次のステップ１５８において「送信終了」を受信すると、次のステップ１５９において「受信確認」を送信して、印刷制御ファイルの受信処理を完了する。この場合に、印刷制御ファイルを受信すると、印刷処理を開始できるので、次のステップ１６０において、プリントサービスプログラムに通知する。これにより、プリントサービスプログラムは、プリンタを制御して印刷処理を開始することができる。次のプリント要求の受信処理を行うため、ステップ１４２に戻り、ステップ１４２からの処理を繰り返し行う。
【００７１】
このようなクライアント装置とプリントサーバ装置との間のプリントデータの受信処理は、いわゆるネットワーク通信の送受信処理の伝送手順に従って、送信側のクライアント装置から、データの送信要求を送信し、これに対して、受信側のプリントサーバ装置においては、その受付確認、受信確認の応答を返して、印刷制御ファイルおよびプリントファイルのデータの送信を行う。次に、このようなデータの流れについて説明する。
【００７２】
図１２は、クライアント装置とプリントサーバ装置の間のプリントデータおよび印刷制御データの流れを説明する図である。前述したように、ここでのデータ転送では、プリント開始要求により、データ転送処理を開始し、まず、プリントファイルの送信を行い、続いて印刷制御ファイルのデータ転送を行う。
【００７３】
この場合のデータ転送のデータの流れでは、図１２に示すように、まず、クライアント装置側から自己の端末装置の識別番号の情報を伴って、プリントサーバ装置側に対して、▲１▼プリント開始要求で、プリント開始要求を発行すると、プリントサーバ装置側では、これを受け付け、その受付確認を返送する。これにより、プリントファイルおよび印刷制御ファイルの送信処理を開始する。また、ファイルデータのデータ転送では、まず、▲２▼プリントファイル送信要求−１で、プリントファイル送信要求、ファイルの大きさ、自己の端末装置の識別番号を送信して、送信要求を送信すると、受信側では、これに対して受付確認を返送する。これにより、送信側では、続いて、▲３▼プリントファイル転送−１で、転送するデータの本体部分を送信し、データ送信が終了すると、データの終わりを指示するファイル送信終了を送る。これに対して、受信側では、正常にデータを受信すると、受信確認を返送して、そのデータ転送を終了する。このようなファイル送信の処理（▲４▼プリントファイル送信要求−２，▲５▼プリントファイル転送−２）を繰り返して、一連のデータ転送を終了する。
【００７４】
図１２を参照して具体的に説明すると、ネットワークプリント処理を開始する場合には、クライアント装置側から、プリンタサーバ装置に対して、プリント開始要求（▲１▼）を送信する。プリンタサーバ装置では、これを受け付け、受付確認を返送する。次に、受付確認がプリントサーバ装置側から返されると、クライアント装置側から、第１番目のプリントファイル送信要求（▲２▼）を送信する。このプリントファイル送信要求では、プリントファイル送信要求を示すコードと、送信するファイルの大きさと、送信元の端末装置を示す識別番号を送信する。これに対して、受信側のプリントサーバ装置では、受付確認を送信するので、送信側のクライアント装置では、受付確認を受信すると、第１番目のプリントファイル転送（▲３▼）を開始し、転送データの本体部分であるプリントデータを送信する。プリントデータの送信が終了すると、クライアント装置側では、ファイル送信終了のコードを送信する。これに対して、受信側のプリントサーバ装置側では、正常にデータを受信すると、受信確認を返送する。
【００７５】
クライアント装置側から、第２番目のプリントファイル送信要求（▲４▼）を送信する。この場合も、プリントファイル送信要求では、プリントファイル送信要求を示すコードと、送信するファイルの大きさと、送信元の端末装置を示す識別番号を送信する。これに対して、受信側のプリントサーバ装置では、受付確認を送信するので、送信側のクライアント装置では、受付確認を受信すると、第２番目のプリントファイル転送（▲５▼）を開始し、転送データの本体部分であるプリントデータを送信する。プリントデータの送信が終了すると、クライアント装置側では、ファイル送信終了のコードを送信する。これに対して、受信側のプリントサーバ装置側では、正常にデータを受信すると、受信確認を返送する。
【００７６】
次に印刷制御ファイルのデータ転送を行うため、第３番目に、クライアント装置側から、印刷制御ファイル送信要求（▲６▼）を送信する。この印刷制御ファイル送信要求では、印刷制御ファイル送信要求を示すコードと、送信するファイルの大きさと、送信元の端末装置を示す識別番号を送信する。これに対して、受信側のプリントサーバ装置では、受付確認を送信するので、送信側のクライアント装置は、受付確認を受信すると、印刷制御ファイル転送（▲７▼）を開始し、転送データの本体部分である印刷制御ファイルのデータを送信する。印刷制御ファイルのデータ送信が終了すると、クライアント装置側は、ファイル送信終了のコードを送信する。これに対し、受信側のプリントサーバ装置側では、正常にデータを受信すると、受信確認を返送して、プリント開始要求に係るファイル転送を終了する。
【００７７】
以上の実施例のシステム構成は、ネットワークに接続されるプリントサーバ装置による構成であったが、このプリントサーバ装置による構成に変えて、ネットワーク接続型プリンタ装置による構成でも、同様に本発明は適用できる。図１３は、本発明を適用できるネットワーク接続型プリンタ装置によるシステム構成を示すブロック図であり、図１４は、ネットワークに接続されるネットワーク接続型プリンタ装置の構成を示すブロック図である。
【００７８】
この場合の本発明に係るネットワークプリント処理方法を実施するネットワークシステムは、図１３に示すように、ローカルエリアネットワーク（ＬＡＮ）を構成するネットワーク２１０により、クライアント装置２１１とネットワーク接続型プリンタ装置２１２が接続されたネットワークシステムとなっている。ネットワーク接続型プリンタ装置２１２は、ネットワーク接続部２１３、プリンタ制御部２１４、プリンタ部２１５から構成されている。図１３においては、プリント要求を発行するクライアント装置２１１は、１台だけがネットワーク２１０に接続されている様子を示しているが、もちろん、ネットワーク２１０には複数台のクライアント装置２１１が接続され、それぞれのクライアント装置２１１がプリント要求を発行する。これらのクライアント装置２１１の構成は、図２により説明した内容と同様なものである。
【００７９】
ネットワーク接続型プリンタ装置は、クライアント装置２１１から受信したプリント要求により、その受信した印刷対象データおよび印刷制御データに基づいてプリンタ部２１５を制御して、印刷処理を行う。その場合、受信した印刷対象データおよび印刷制御データは、プリンタ制御部２１４のスプール機能により蓄積され、プリント要求で再出力が要求されると、蓄積している印刷対象データを再出力する。
【００８０】
ネットワーク接続型プリンタ装置２１２の構成は、図１４に示すように、ネットワーク接続器を介してネットワーク２１０に接続するデータ通信部２３１と、このデータ通信部に結合されるデータ処理・制御部２３２、プリンタ接続部２３３、およびデータ蓄積部２３４から構成されるプリンタ制御部２１４と、プリンタ部２１５から構成されている。
【００８１】
データ通信部２３１は、ネットワークの通信プロトコルに従い、ネットワークにより接続された各クライアント装置の端末装置との間で、データ通信処理を行う。データ処理・制御部２３２は、プリンタ制御部２１４における印刷制御にかかるデータ処理と、接続されるプリンタ部２１５の制御を行う本体部分である。プリンタ接続部２３３は、プリンタ２１５とデータ処理・制御部２３２との間の接続部である。データ蓄積部２３４は、メモリ装置またはハードディスク装置で構成され、主に、印刷制御のスプール機能を提供する記憶領域（スプール領域）を提供し、また、データ処理・制御部２３２にかかる印刷制御処理のプログラムを格納している。データ蓄積部２３４において、印刷対象ファイルおよび印刷管理ファイルを記憶するスプール領域は、FIFO（First In First 0ut）形式で構成され、受付順序に従つて印刷対象データを格納し、また、この順序で印刷対象データを出力する。これらの機能は、基本的には、前述したプリントサーバ装置の機能と同様である。
【００８２】
このようなネットワーク・プリント処理では、プリントサーバ装置、またはネットワーク接続型のプリンタ制御装置内において、プリントデータを受信しながら同時にプリント出力する処理を優先的に１つだけ処理すると同時に、従来と同様に、受信処理可能なプリントデータ通信量と、接続するクライアントの数を制御して、プリントサーバ側の負荷を押さえるようにできる。
【００８３】
また、プリントサーバ装置、ネットワークプリンタなどの受信側が、前述したように、プリントデータを受信しながら、プリンタ装置に送信出力することに加えて、スプール機能を利用して、同一内容の再プリントに備えて、バッファ領域に受信したプリントデータを一時的に保管する。
【００８４】
プリントサーバ装置、ネットワークプリンタなどの受信側は、クライアント装置から、印刷制御ファイルにより、次に示す指定のいずれかの指定された「プリント方式の指示」の出力オプションを「プリント要求」と共に受信して、それ以降に送られてくるプリントデータの処理方法を決定する。
１．プリント要求リクエスト時に（従来の技術と同様に）、全てのプリントデータを受信し、スプール領域に一時的に保管してから、プリンタへの出力処理を開始する指定。
２．プリントデータを受信しながら、その場でプリンタへの出力処理を行う指定。この場合には、プリントデータの再プリントのためのプリントデータ保管は行わない。
３．プリントデータを受信しながら、その場でプリンタへの出力処理を行い、更に、プリンタに出力したデータを同一内容の再プリントのために一時的に保管する指定。
【００８５】
また、ここでのネットワークプリント処理方法では、図１０および図１１のフローチャートに示したように、「印刷制御ファイル」の受信順による処理動作の制御を行う。すなわち、プリントサーバ装置、ネットワークプリンタなどの受信側は、クライアント装置から、「プリント要求」の指示後に、直ぐに「印刷制御ファイル」を受信した場合には、「印刷制御ファイル」の内容に従ってプリント処理を行う。また、「プリント要求」の指示後に、直ぐに「印刷制御ファイル」を受信せず、「プリントデータ」を受信した場合には、スプール機能を利用して「プリントデータ」の印刷処理を行う。
【００８６】
また、ここでネットワークプリント処理方法では、送信側クライアント装置において、操作員によって出力指示時に設定される出力オプションに従って、「プリントデータ」をどのような順番で送信するか、「プリントデータ」の受信側での処理方法、「制御ファイル」をいつ送信するかについて、自動的に最適な手段
を選択するようにできる。
【００８７】
ところで、本発明によるネットワークプリント処理方法によると、『
（１）バッファ分データの先行プリント出力とデータ受信処理、
（２）プリントデータを受信しながら保管する蓄積処理、
★プリントデータを受信し、先行プリント出力を行いながらデータを保管する蓄積処理。
（３）プリント要求時のクライアントからの処理方法の指定、
★受信しながらの同時処理に関する指定。
（４）プリント要求時のクライアントからの処理方法の指定、
★受信しながらの同時処理に関する指定。
（５）送信側でのプリント処理方法の自動選択指定、
★受信しながらの同時処理に関する指定。
』のいずれか動作を含むようにして、プリント処理が行われる。
【００８８】
また、高速にプリント出力を得るために、第１のプリント処理の態様として、データの受信とデータ出力を同時に処理してプリント出力の完了を早めるようにするプリント処理が行われる（「高速プリント方法１」）。
【００８９】
第２のプリント処理の態様として、プリンタ装置へのデータ出力と蓄積処理を同時に行い、同一内容の複数部数をプリント出力する場合に、順番に電子ソートして出カするようにして効率的なプリント出力を可能としている（「高速プリント方法２」）。
【００９０】
第３のプリント処理の態様として、クライアント装置から、次のいずれかをプリント要求時に指定して効率的なネットワーク・プリント処理を行う（「高速プリント方法３」）。
▲１▼全てのプリントデータを受信し、スプール領域に一時的に保管してからプリンタへの出力を開始する従来の出力方法。
▲２▼プリント・データを受信しながら、その場でプリンタヘの同時出力処理を行う出力方法。
▲３▼プリント・データを受信しながら、その場でプリンタヘの同時出力処埋と蓄積処理を同時に行い、同一内容の再出力のためには、蓄積したデータを利用する出力方法。
【００９１】
また、第４のプリント処理の態様として、▲１▼印刷制御フアイルを、プリント要求の直後に受信した場合には、プリント・データを受信しながら、その場でプリンタヘの同時出力処理を行う（「高速プリント方法４」）。なお、この場合に、▲２▼印刷制御ファイルを、プリントデータの後に受信した場合には、全てのプリントデータを受信した後でプリント処理を行う（従来の出力と同様な方法）。
【００９２】
さらに、また、この第４のプリント処理の態様では、プリント処理方法の自動選択を指定する場合においては、送信するプリントデータのフォーマットの種類と、プリント・サーバ装置／ネットワーク接続型の制御装置側で、どのようなデータ加工を必要とするかというプリントデータの加工処理方法と、出力部数、出力順、出力時のオプション指定と、あらかじめ登録してあるプリント装置の性能に従って「利用できる高速化方法」と「各プリントデータを送信する順番」の最適かつ最も高速な方法を選択する。
【００９３】
本発明による高速ネットワーク・プリント処理の流れ動作説明図
１．ネットワークプリント受信プログラムの基本動作（図１５）
２．プリント・データを受信しながらプリント出力する方法（図１６）
目的のプリント・データが全て揃っていない場合であっても、一定容量のデータをプリントバッファ領域に受信した段階で、接続するプリンタ装置に対するデータ出力を開始する。
【００９４】
【発明の効果】
以上、説明したように、本発明のネットワークプリント処理方法によると、全プリントデータのネットワーク転送処理が完了していない場合であっても、プリンタに対する印刷出力の処理を開始できる。これは、データ通信を行うネットワークの通信回線が十分に高速であり、且つ安定しているので、一部のデータ転送処理が完了した時点でプリント処理を開始しても、後続するプリントデータが転送されてくることが、かなりの確度で保証されていることによる。また、データ転送の開始後にエラーが生じても、プリンタ装置に対して、データ転送の一時中断、転送再開、エラー処理などの制御が比較的容易に処理できるためである。
これにより、プリンタからの紙の印刷結果をより早く入手することができる。つまり、プリントの待ち時間が少なくなる。また、プリント出力動作と、ネットワーク転送動作を同時に行うことにより、ネットワーク上の資源を有効に活用でき、システムの生産性が向上する。更に、また、このようなネットワークプリント処理方法は、従来のプリント方式と互換性があるため、従来方式の機器と組み合わせて利用できるという利点がある。
【図面の簡単な説明】
【図１】  図１は本実施例で用いるネットワークのシステム構成を示すブロック図、
【図２】  図２はネットワークに接続されるクライアント装置の構成を示すブロック図、
【図３】  図３はネットワークに接続されるプリントサーバ装置の構成を示すブロック図、
【図４】  図４はＵＮＩＸオペレーティングにおける印刷制御ファイルの一例を示す図、
【図５】  図５はネットワーク・プリントの印刷処理のデータ流れを説明する図、
【図６】  図６はネットワーク・プリント要求プログラムの処理を示すフローチャート、
【図７】  図７はネットワーク・プリント送信プログラムの処理を示すフローチャート、
【図８】  図８はネットワーク・プリント受信プログラムの処理を示すフローチャート、
【図９】  図９はプリントサービスプログラムの処理を示すフローチャートである。
【図１０】  図１０は高速印刷処理のために修正されたネットワークプリント受信プログラムの処理を示す第１のフローチャート、
【図１１】  図１１は高速印刷処理のために修正されたネットワークプリント受信プログラムの処理を示す図１０のフローチャートに続く第２のフローチャート、
【図１２】  図１２はクライアント装置とプリントサーバ装置の間のプリントデータおよび印刷制御データの流れを説明する図、
【図１３】  図１３は本発明を適用できるネットワーク接続型プリンタ装置によるシステム構成を示すブロック図、
【図１４】  図１４はネットワークに接続されるネットワーク接続型プリンタ装置の構成を示すブロック図、
【図１５】  図１５は高速プリント処理を含むネットワークプリント受信プログラムの処理フローを示すプローチャート、
【図１６】  図１６はプリントデータを受信しながらのプリント出力場合の高速プリント処理を説明する図である。
【符号の説明】
１０…ネットワーク、１１…クライアント装置、１２…プリントサーバ装置、１３…プリンタ装置、２０…ネットワーク接続器、２１…データ通信部、２２…データ処理・制御部、２３…情報表示部、２４…情報入力部、２５…データ蓄積部、３０…ネットワーク接続器、３１…データ通信部、３２…データ処理・制御部、３３…プリンタ接続部、３４…データ蓄積部、３５…印刷制御ファイル、４０…操作員、４１…ネットワーク・プリント要求プログラム、４２…ネットワーク・プリント送信プログラム、４３…ネットワーク・プリント受信プログラム、４４…ネットワーク・プリントサービスプログラム、４５…印刷対象ファイル、４６…送信スプール領域、４７…印刷制御ファイル、４８…受信スプール領域、４９…プリンタ。
【図１】
0004059540.tif 000002
【図２】
0004059540.tif 000003
【図３】
0004059540.tif 000004
【図４】
0004059540.tif 000005
【図５】
0004059540.tif 000006
【図６】
0004059540.tif 000007
【図７】
0004059540.tif 000008
【図８】
0004059540.tif 000009
【図９】
0004059540.tif 000010
【図１０】
0004059540.tif 000011
【図１１】
0004059540.tif 000012
【図１２】
0004059540.tif 000013
【図１３】
0004059540.tif 000014
【図１４】
0004059540.tif 000015
【図１５】
0004059540.tif 000016
【図１６】
0004059540.tif 000017