(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置であって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記電子機器から前記印刷データを受信する受信手段と、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録手段と、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行手段と、を備え、
前記コマンド実行手段は、
前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、
当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示する印刷データに書き換える、
ことを特徴とする印刷装置。
【請求項２】
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御手段を、さらに備え、
前記印刷ジョブ制御手段は、
前記コマンド実行手段による印刷ジョブの実行の終了を検知すると、終了した印刷ジョブの印刷ジョブ特定情報を前記印刷ジョブキューより取り除き、前記コマンド実行手段を、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、前記割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に移動するとともに、前記コマンド実行手段を、実行中の印刷ジョブを中断し、前記割り込み処理の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記印刷ジョブ制御手段は、
前記割り込み処理の指示を検知すると、改ページコマンドであるＰＤＬコマンドが前記コマンド実行手段により実行されるまで待ち、その後、割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に移動するとともに、前記コマンド実行手段を、実行中の印刷ジョブを中断し、前記割り込み処理の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とする請求項２に記載の印刷装置。
【請求項４】
前記割り込み処理は、新たに受信された印刷データにより表される印刷ジョブを直ちに実行する処理である、
ことを特徴とする請求項１乃至３のいずれか１項に記載の印刷装置。
【請求項５】
前記割り込み処理は、印刷ジョブキューに登録済みの印刷ジョブ特定情報により特定される印刷ジョブを直ちに実行する処理である、
ことを特徴とする請求項１乃至３のいずれか１項に記載の印刷装置。
【請求項６】
前記再実行必要コマンドには、印刷装置の動作を制御する制御情報を指定するＰＤＬコマンドが含まれ、
前記再実行不要コマンドには、イメージの描画を指示するＰＤＬコマンドを含む画像データを生成するＰＤＬコマンド、および、印刷を開始する改ページコマンドが含まれる、
ことを特徴とする請求項１乃至５のいずれか１項に記載の印刷装置。
【請求項７】
前記再実行不要コマンドには、イメージの描画を指示するコマンドを表すコマンド部と、イメージデータを表すイメージデータ部と、を有するイメージ描画コマンドが含まれ、
前記ＰＤＬコマンド記憶手段は、コマンドが記憶されるコマンド記憶手段と、イメージデータが記憶されるイメージデータ記憶手段と、を備え、
前記ＰＤＬコマンド登録手段は、
前記受信された印刷データに含まれるＰＤＬコマンドが前記イメージ描画コマンドである場合、当該イメージ描画コマンドのコマンド部を内部コマンドに変換して前記コマンド記憶手段に登録するとともに、当該イメージ描画コマンドのイメージデータ部を前記イメージデータ記憶手段に登録し、
前記受信された印刷データに含まれるＰＤＬコマンドがイメージ描画コマンドでない場合、当該ＰＤＬコマンドを前記コマンド記憶手段に登録し、
前記コマンド実行手段は、
前記内部コマンドを実行する場合、前記コマンド記憶手段に記憶されている内部コマンドと、前記イメージデータ記憶手段に登録されているイメージデータと、に基づいて、イメージの描画を実行し、
前記内部コマンドの実行後、前記コマンド記憶手段に記憶されている当該内部コマンドを、当該内部コマンドのサイズ分の、何も処理しないことを指示する制御データであるＮＯＰデータに書き換え、
前記内部コマンド以外の再実行不要コマンドについては、当該コマンドの実行後、前記コマンド記憶手段に記憶されている当該コマンドを、当該コマンドのサイズ分のＮＯＰデータに書き換える、
ことを特徴とする請求項１乃至６のいずれか１項に記載の印刷装置。
【請求項８】
前記内部コマンドには、前記イメージデータ記憶手段に登録されたイメージデータの相対アドレスおよび長さを特定する情報が含まれる、
ことを特徴とする請求項７に記載の印刷装置。
【請求項９】
前記内部コマンドの実行後、前記イメージデータ記憶手段に記憶されているイメージデータを、所定のデータで置き換えるイメージデータ消去手段、をさらに備える、
ことを特徴とする請求項７又は８に記載の印刷装置。
【請求項１０】
前記何も処理しないことを指示する印刷データは、
何も処理しないことを指示するＮＯＰコマンドか、又は、
再実行不要コマンドであると判別された前記ＰＤＬコマンドのサイズ分の、何も処理しないことを指示する制御データであるＮＯＰデータである、
ことを特徴とする請求項１乃至６のいずれか１項に記載の印刷装置。
【請求項１１】
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置が実行する印刷制御方法であって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記電子機器から前記印刷データを受信する受信ステップと、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録ステップと、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行ステップと、を備え、
前記コマンド実行ステップでは、
前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、
当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示する印刷データに書き換える、
ことを特徴とする印刷制御方法。
【請求項１２】
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御ステップを、さらに備え、
前記印刷ジョブ制御ステップでは、
前記コマンド実行ステップによる印刷ジョブの実行の終了を検知すると、終了した印刷ジョブの印刷ジョブ特定情報を前記印刷ジョブキューより取り除き、前記コマンド実行ステップを、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、前記割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に移動するとともに、前記コマンド実行ステップにおいて、実行中の印刷ジョブを中断させ、前記割り込み処理の指示がなされた印刷ジョブの実行を開始させるように制御する、
ことを特徴とする請求項１１に記載の印刷制御方法。
【請求項１３】
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置が備えるコンピュータに実行させるプログラムであって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記プログラムは、前記コンピュータを、
前記電子機器から前記印刷データを受信する受信手段、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録手段、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行手段、として機能させ、
前記コマンド実行手段は、前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示する印刷データに書き換える、
ことを特徴とするプログラム。
【請求項１４】
前記プログラムは、前記コンピュータを、
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御手段として、さらに機能させ、
前記印刷ジョブ制御手段は、
前記コマンド実行手段による印刷ジョブの実行の終了を検知すると、終了した印刷ジョブの印刷ジョブ特定情報を前記印刷ジョブキューより取り除き、前記コマンド実行手段を、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、前記割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に移動するとともに、前記コマンド実行手段に、実行中の印刷ジョブを中断させ、前記割り込み処理の指示がなされた印刷ジョブの実行を開始させるように制御する、
ことを特徴とする請求項１３に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、割り込み印刷が可能な印刷装置、印刷制御方法、および、プログラムに関する。
【背景技術】
【０００２】
今日、ホストコンピュータ等のホスト機器（クライアント装置）と単機能印刷装置や所謂複合機等の印刷装置とがネットワークを介して接続された印刷システムが利用されている。このようなシステムにおいては、印刷装置があるホスト機器から依頼された印刷ジョブを処理する間に、この印刷装置に他のホスト機器から次の印刷ジョブが供給される可能性が高い。
【０００３】
印刷ジョブが競合した場合、先着の印刷ジョブの印刷処理が終了するまで、他の印刷ジョブの処理を受け付けない制御も可能である。しかしながら、この場合、印刷システム全体としてみると、効率が低下し、使い勝手の悪いシステムとなる。すなわち、印刷終了までに時間を要する印刷ジョブが先に処理される間、印刷時間が短くて済む小容量の印刷ジョブであっても印刷処理が待たされるため、印刷システム全体として考えると、印刷待ちの状態におかれる印刷ジョブの数が増大し、効率の悪いシステムとなる。
また、ユーザは、緊急に印刷を行いたい場合でも、印刷終了までに時間のかかる印刷ジョブが先に処理されると、この印刷処理が終了するまで、長時間待たされる。
【０００４】
上記問題に鑑み、例えば以下のような特許文献１、及び特許文献２が開示されている。何れの特許文献も、印刷処理中のジョブの中断処理、緊急の印刷ジョブの割込み印刷処理、割込まれた印刷ジョブの復帰処理、ならびに、割込まれた印刷ジョブの再開印刷処理を実行する割込印刷機能を持つ印刷装置の発明である。
【０００５】
先ず、特許文献１は、クライアント装置から受信した非ページ独立のページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅであり、以降ＰＤＬと呼ぶ）で記載された印刷ジョブを記憶し、各ページのイメージを順次生成し、生成したイメージを印刷装置に供給して印刷させる通常モードと、印刷装置へイメージの供給を行わない非印刷モードと、の２つの動作モードを有し、印刷が中断された場合に印刷再開ページを算出し、印刷再開時に印刷再開信号を受信すると、中断された印刷ジョブをジョブ記憶手段により最初から処理し、印刷再開ページに達するまでは非印刷モードで動作し、印刷再開ページ以降は通常モードで動作する印刷制御装置を開示する。
【０００６】
また、特許文献２は、割込まれた印刷ジョブを再開する方法として、入力されるジョブデータを保存しておき、再開時には中断された印刷ジョブデータを先頭から解釈し、ページ毎に印刷要求を発行するが、既に印刷されたページに係る印刷要求を無効とし、未印刷のページの印刷要求のみを有効とする方法を採用することにより、重複印刷を防止する発明を開示する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１０−１７７４６４号公報
【特許文献２】特開平１１−３１２０６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、いずれの装置も、入力された印刷ジョブを保存しておき、割り込み要求が発生した場合、印刷実行中のジョブをページの区切りで中断し、印刷済みのページ番号、又は再開のページ番号を記憶し、印刷ジョブの中断処理を行った後、割り込み印刷を実行する。そして、いずれの装置も、割り込み印刷が終了すると、中断した印刷ジョブの先頭よりコマンド解釈を実行し、既に印刷済みのページについては印刷を行うことなく、未印刷のページから、印刷処理を再開する復帰再開処理を行っている。この印刷ジョブの復帰再開処理では、割り込まれたジョブの先頭から解釈を実行して印刷画像を生成していくため、既に印刷出力されたページについても解釈実行および印刷画像生成が行われ、印刷処理を再開するまで長時間を要する。
【０００９】
このため、割込み印刷機能を使用すると、割込まれた先行印刷ジョブの復帰に時間を要し、その結果、割込み印刷機能を使用する際の障害となっている。従って、割込み印刷処理を行った後の中断した印刷ジョブの印刷再開までの復帰再開処理を短時間で行うことが可能な印刷装置が望まれている。
さらに、特許文献1には、ハード的に画像を生成するＰＤＬコマンドは動作させないようにしてジョブ復帰時間の短縮を図る手法が開示されているが、この場合、回路規模が大きくなり、また、ロジック構成も複雑になり、コストアップの原因となる。このため、比較的簡単な構成で、割り込み復帰時のパフォーマンスを向上することが可能な印刷装置が望まれている。
【００１０】
本発明は、上記問題に鑑みてなされたものであり、比較的簡単な構成で、割り込み復帰時のパフォーマンスを向上することが可能な印刷装置、印刷制御方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明にかかる印刷装置は、
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置であって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記電子機器から前記印刷データを受信する受信手段と、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録手段と、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行手段と、を備え、
前記コマンド実行手段は、
前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、
当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示する印刷データに書き換える、
ことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、比較的簡単な構成で、割り込み復帰時のパフォーマンスを向上することができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態１に係る印刷装置が備える印刷制御部のソフトウエア構成を示す図である。
【図２】実施形態１に係る印刷装置の概略断面図である。
【図３】実施形態１に係る印刷装置が備える印刷制御部のハードウエア構成を示す図である。
【図４】操作パネルの構成を示す図である。
【図５Ａ】ＬＡＮ制御部及び入力ジョブ保存部が実行する処理を示すフローチャートである。
【図５Ｂ】入力ジョブキュー管理部が実行する処理を示すフローチャートである。
【図５Ｃ】入力ジョブキュー管理部が実行する処理を示すフローチャートである。
【図６】入力ジョブキューのデータ構成を示す図である。
【図７Ａ】ＰＤＬ解釈・実行部が実行する処理を示すフローチャートである。
【図７Ｂ】ＰＤＬ解釈・実行部が実行する処理を示すフローチャートである。
【図８】印刷データのデータフォーマットの一部とＮＯＰコマンドに置き換えられた印刷データのデータフォーマットの一部とを示す図である。
【図９】表示パネルの表示例を示す図である。
【図１０】実施形態２に係る印刷装置が備える印刷制御部のソフトウエア構成を示す図である。
【図１１】印刷データのデータフォーマットを示す図である。
【図１２Ａ】ＬＡＮ制御部及び入力ジョブ保存部が実行する処理を示すフローチャートである。
【図１２Ｂ】入力ジョブ保存部が実行する処理を示すフローチャートである。
【図１３】識別フラグ＆レングス記述部に関する処理を詳しく示す図である。
【図１４Ａ】入力ジョブキュー管理部が実行する処理を示すフローチャートである。
【図１４Ｂ】入力ジョブキュー管理部が実行する処理を示すフローチャートである。
【図１５】入力ジョブキューのデータ構成を示す図である。
【図１６Ａ】ＰＤＬ解釈・実行部が実行する処理を示すフローチャートである。
【図１６Ｂ】ＰＤＬ解釈・実行部が実行する処理を示すフローチャートである。
【図１６Ｃ】ＰＤＬ解釈・実行部が実行する処理を示すフローチャートである。
【図１７】印刷データのデータフォーマットの一部とＮＯＰデータに置き換えられた印刷データのデータフォーマットの一部とを示す図である。
【図１８】ファイル完全消去部が実行する処理を示すフローチャートである。
【発明を実施するための形態】
【００１４】
（実施形態１）
以下、本発明の実施形態１を図面に基づいて説明する。
図２は本実施形態を説明する印刷装置として、例えば４連タンデム構成の電子写真方式のカラープリンタ（以下、印刷装置で示す）の例を示す概略断面図である。
同図において、印刷装置１のエンジン部は、画像形成部２、記録媒体給紙部３、記録媒体搬送部４で構成されている。画像形成部２は、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）の各画像形成ユニット２Ｍ、２Ｃ、２Ｙ、２Ｋで構成され、用紙搬送方向に沿って所定の間隔を保持して順次で配設されている。
【００１５】
各画像形成ユニット２Ｍ、２Ｃ、２Ｙ、２Ｋは、それぞれ感光体ドラム５、及び感光体ドラム５の周囲に配設された帯電器５ａ、印字ヘッド（ＬＥＤヘッド）５ｂ、現像器５ｃ、転写器５ｄを有し、電子写真プロセスに従って用紙に画像形成を行う。尚、電子写真プロセスは、帯電、露光、現像、転写、クリーニングの各工程を繰り返して、用紙（記録媒体）に画像形成を行うプロセスである。具体的には、帯電によって感光体ドラム５の表面に均一な電荷を付与し、露光によって感光体ドラム５の表面に静電潜像を形威し、現像によって静電潜像に従ったトナー像を形成し、転写によってトナー像を用紙に転写し、用紙に転写されたトナー像は定着処理によって用紙に熱定着される。
【００１６】
記録媒体給紙部３は、上下に階層して配設された記録媒体給紙部３ａ〜３ｅで構成される。一方、記録媒体給紙部３ａ〜３ｅの何れかから給紙された用紙は、待機ローラ１０を介して、記録媒体搬送部４に送られる。記録媒体搬送部４は、ベルト駆動ローラ１１や従動ローラ１２、搬送ベルト１３等で構成される。搬送ベルト１３は、ベルト駆動ローラ１１の駆動力によって回転し、待機ローラ１０によってタイミングを合わせて搬送ベルト１３に送られた用紙を画像形成部２に送る。
【００１７】
画像形成部２に送られた用紙は、前述の画像形成ユニット２Ｍ、２Ｃ、２Ｙ、２Ｋによって対応するトナーが順次転写される。用紙に転写されたトナー像は定着器１５によって熱定着される。その後、用紙は、排紙部１６に送られる。
尚、上記各部は、用紙の材質（例えば、紙、ＯＨＰシート）、用紙の呼量（例えば、薄紙、普通紙、厚紙）、用紙の長さ（例えば、長尺紙）等に基づいて、転写スピード（搬送速度）や転写バイアス、定着温度等のプリンタエンジンの動作モードを設定し、それぞれの用紙に最適となる印刷制御を行う。
【００１８】
図３は、上記構成の印刷装置１において、印刷制御部１７のハードウエア構成を示す図である。印刷制御部１７は、ＬＡＮ制御回路１８、ＵＳＢ制御回路１９、ＣＰＵ２０、メモリ２１、不揮発性メモリ２２、ＲＯＭ２３、エンジン制御回路２４、操作パネル制御回路２５、ハードディスク制御回路（以下、ＨＤＤ制御回路で示す）２８で構成されている。
【００１９】
また、エンジン制御回路２４にはプリンタエンジン２６が接続され、操作パネル制御回路２５には操作パネル２７が接続され、ＨＤＤ制御回路２８にはハードディスク２９が接続されている。
【００２０】
図４は操作パネル２７の構成を示す図であり、操作パネル２７は表示部２７ａとキー部２７ｂで構成されている。表示部２７ａには、後述する入力ジョブキューから読み出された印刷実行中又は印刷実行待ちの印刷ジョブ情報が表示される。また、ユーザ操作に基づくキー部２７ｂからの操作信号は、操作パネル制御回路２５を介してＣＰＵ２０に送信される。
【００２１】
一方、図１は上記印刷制御部１７のソフトウエア構成を示す図であり、上記図３に示す回路に基づく機能部は関連する番号を使用して説明する。本例の印刷装置１（印刷制御部１７）はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介してパーソナルコンピュータ（ＰＣ）等のクライアント装置（ホスト機器）３０に接続される。クライアント装置３０は、例えば、不図示のアプリケーションプログラムや、プリンタドライバ、スプーラ、及びＬＡＮ接続制御部で構成されている。
【００２２】
クライアント装置３０は、アプリケーションプログラムに従って作成した印刷データをプリンタドライバによって前述のＰＤＬコマンドを含む中間データに変換し、スプーラに保持し、ＬＡＮ接続制御部を介して印刷装置１に出力する。
【００２３】
クライアント装置３０から出力された印刷データは、上記ＬＡＮ制御回路１８（ＬＡＮ制御部１８ａ）を介して印刷装置１に入力される。
印刷装置１は上記のように、エンジン制御回路２４に対応するエンジン制御部（プリンタエンジン制御部）２４ａ、操作パネル制御回路２５に対応する操作パネル制御部２５ａ、及びメモリ２１に対応する画像メモリ２１aを備える。印刷装置１は、更に、ＲＯＭ２３に記憶されたプログラムによってＣＰＵ２０を制御し、印刷データの解釈、実行を行うＰＤＬ解釈・実行部３１、入力ジョブの保存処理を行う入力ジョブ保存部３２、及び、入力ジョブキュー３４の管理を行う入力ジョブキュー管理部３３を備える。
【００２４】
また、前述のエンジン制御回路２４に対応するエンジン制御部２４ａはプリンタエンジン２６に対してプリンタエンジン動作モード等を設定し、給紙処理、画像メモリ２１aからの画像データの転送、排紙処理等の制御を行なう。また、エンジン制御部２４ａは、ある一定間隔で定期的に、エンジン状態を監視し、また、給紙口の状態を各給紙口から取得し、各給紙口の状態を監視する。尚、給紙口より取得できる情報は、例えばカセットの装着/未装着や、カセットのセット状態／引出し状態、用紙の有無、及び用紙サイズ等の情報である。
【００２５】
また、入力ジョブキュー３４は、前述の不揮発性メモリ２２またはハードディスク２９上に構築されている。尚、図３に示すＵＳＢ制御回路１９の構成は、特に図１において示していない。
【００２６】
以上の構成において、以下に本例の処理動作を説明する。
図５Ａ、図５Ｂおよび図５Ｃは、ＬＡＮ制御部１８ａ、入力ジョブ保存部３２、及び入力ジョブキュー管理部３３の処理動作を説明するフローチャートである。
先ず、ＬＡＮ制御部１８ａはクライアント装置３０から出力された印刷データを受信すると（ステップ（以下、Ｓで示す）１）、印刷データを受信バッファにバッファリングする（Ｓ２）。尚、受信バッファは、例えば前述のメモリ２１の所定エリアに設定されている。
【００２７】
次に、ＬＡＮ制御部１８ａは印刷データの入力を入力ジョブ保存部３２に通知し、入力ジョブ保存部３２をウエイクアップする（Ｓ３）。
印刷データの受信を待っていた入力ジョブ保存部３２は、上記ＬＡＮ制御部１８ａからの通知により、処理を開始し、受信バッファに格納された印刷データを読み出し、順次印刷ジョブ単位で前述のハードディスク２９に書き込む（Ｓ４、Ｓ５）。
【００２８】
その後、入力ジョブ保存部３２は、クライアント装置３０から出力され、受信バッファに格納した印刷ジョブの全てのデータをハードディスク２９に書き込んだか判断し（Ｓ６）、印刷ジョブの全てのデータをハードディスク２９に書き込むまで、上記処理を繰り返す（Ｓ６：ＮＯ、Ｓ４〜Ｓ６）。そして、印刷ジョブ全ての書き込み処理が完了すると（Ｓ６：ＹＥＳ）、入力ジョブ保存部３２は入力ジョブキュー管理部３３に対して、印刷ジョブの登録要求を出力する（Ｓ７）。その際、ハードディスク２９に記憶した印刷ジョブのファイル名を入力ジョブキュー管理部３３に受け渡す。なお、印刷ジョブファイル名称については、入力ジョブ保存部３２がユニークな名称を自動生成する。
【００２９】
入力ジョブキュー管理部３３は、要求待ち状態で待機しており（Ｓ８）、上記入力ジョブ保存部３２からアクセスがあると、登録要求であるか判断する（Ｓ９）。ここで、入力ジョブキュー管理部３３は入力ジョブ保存部３２から登録要求があると判断すると（Ｓ９：ＹＥＳ）、入力ジョブキュー管理部３３は上記印刷ジョブのファイル名の情報を受け取り、入力ジョブキュー３４のジョブファイル名にセットし、入力ジョブキュー３４の最後に追加する（Ｓ１０）。
【００３０】
図６は入力ジョブキュー３４のデータ構成を示す。スタートキューポインタは、最初の印刷ジョブ情報３４−１にリンクする。つまり、スタートキューポインタは、最初の印刷ジョブ情報３４−１の先頭のアドレスを示す。最初の印刷ジョブ情報３４−１のネクストポインタは次の印刷ジョブ情報３４−２を指示し、以後順次ネクストポインタの指示に従って次の印刷ジョブ情報３４−ｎが指示される。つまり、印刷ジョブ情報３４−ｉ（ただし、ｉは、１≦ｉ＜ｎを満たす整数。）のネクストポインタは、印刷ジョブ情報３４−（ｉ＋１）の先頭のアドレスを示す。尚、各印刷ジョブ情報３４−１〜３４−ｎには前述の印刷ジョブファイル名が記憶されている。
【００３１】
次に、入力ジョブキュー管理部３３は、上記印刷ジョブファイルの情報が入力ジョブキュー３４の先頭に追加されたか判断する（Ｓ１１）。ここで、入力ジョブキュー３４の先頭に追加された場合（Ｓ１１：ＹＥＳ）、入力ジョブキュー管理部３３はＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示する（Ｓ１２）。この際、入力ジョブキュー管理部３３はＰＤＬ解釈・実行部３１に対して、印刷ジョブファイル名の情報を受け渡す。
【００３２】
図７Ａおよび図７Ｂは、ＰＤＬ解釈・実行部３１の処理を説明するフローチャートである。要求待ち状態（ステップ（以下、ＳＴで示す）１）で待機していたＰＤＬ解釈・実行部３１に印刷ジョブの実行指示が有ると（ＳＴ２）、ＰＤＬ解釈・実行部３１は、入力ジョブキュー管理部３３から受け渡された印刷ジョブファイル名の情報を受け取る（ＳＴ３）。
【００３３】
次に、ＰＤＬ解釈・実行部３１は、受け渡された印刷ジョブファイルの情報を読み出す（ＳＴ４）。そして、ＰＤＬ解釈・実行部３１は、読み出しデータがあるか判断する（ＳＴ５）。ＰＤＬ解釈・実行部３１は、最初のこの判断では、印刷ジョブファイルに読み出しデータはありと判断し（ＳＴ５：ＹＥＳ）、印刷ジョブファイルに記憶されたＰＤＬコマンドの解析を行う（ＳＴ６）。
【００３４】
先ず、ＰＤＬ解釈・実行部３１は、画像データを生成しないＰＤＬコマンド、例えば印刷処理を行う際に必要な給紙口の情報や解像度、階調値の情報等のＰＤＬコマンドについては、そのままコマンド処理を行う（ＳＴ７）。また、ＰＤＬ解釈・実行部３１は、画像データを生成するＰＤＬコマンドについても、そのままコマンド処理を行う（ＳＴ８）。
【００３５】
図８は、印刷データのデータフォーマットの一部を示す図であり、画像データを生成するコマンドの構成を示す図である。図８における(ａ)は、印刷データのデータフォーマットの一部を示す。例としてイメージ描画コマンドを挙げている。画像データを生成するコマンドは、イメージ描画コマンドや文字描画コマンド、直線・円などのグラフィック描画コマンドであり、また描画するための座標を指定するコマンドも含まれる。ＰＤＬ解釈・実行部３１は、この画像データを生成するＰＤＬコマンドについても、そのままコマンド処理を行う。
【００３６】
次に、ＰＤＬ解釈・実行部３１は、上記ＰＤＬコマンドをＮＯＰコマンドに置き換え、ハードディスク２９の同じ印刷ジョブファイルに書き戻す（ＳＴ９）。ＰＤＬ解釈・実行部３１は、例えば、図８における（ａ）に示す“ＩＭ  ｌｅｎ”を、同図における（ｂ）に示すＮＯＰコマンドである“ＮＯＰ  ｌｅｎ２”に置き換えて（ｂ−１）、ハードディスク２９の同じ印刷ジョブファイルの同じ位置に書き戻す。尚、ＰＤＬ解釈・実行部３１は、画像データを生成するコマンドの中の残りのパラメータ部分とデータ部分（ｂ−２）については変更することなく、書き戻す必要もなくそのままとする。また、ＰＤＬ解釈・実行部３１は、元のＰＤＬコマンドのサイズを超えないように書き戻す。なお、ＰＤＬ解釈・実行部３１は、ＮＯＰコマンドの最小サイズより短いＰＤＬコマンドは、元のＰＤＬコマンドのサイズ分、ＮＯＰデータ（１バイトのデータであり、値は０ｘ００）に置き換えて、印刷ジョブファイルに書き戻す。
【００３７】
次に、改頁コマンドの場合、ＰＤＬ解釈・実行部３１は、画像メモリ２１aに生成中の画像データを印刷データとして確定し、エンジン制御部２４ａに印刷処理を指示し、同時に上記給紙口の情報や解像度、階調値の情報をパラメ-タとして受け渡す（ＳＴ１０）。また、ＰＤＬ解釈・実行部３１は、改頁コマンドについても、ＮＯＰコマンドに置き換えて、ハードディスク２９の同じ印刷ジョブファイルに書き戻す（ＳＴ１１）。
【００３８】
次に、ＰＤＬ解釈・実行部３１は、ジョブ中断停止フラグがオンされているか判断し（ＳＴ１２）、ジョブ中断停止フラグがオンされていなければ（ＳＴ１２：ＮＯ）、読み出したデータを全て解釈したか判断して上記処理を繰り返す（ＳＴ１３：ＮＯ、ＳＴ６〜ＳＴ１３）。
【００３９】
その後、ＰＤＬ解釈・実行部３１は、読み出したデータを全て解釈すると（ＳＴ１３：ＹＥＳ、ＳＴ５：ＮＯ）、入力ジョブキュー管理部３３に対して印刷ジョブの終了を通知する（ＳＴ１４）。入力ジョブキュー管理部３３は、ＰＤＬ解釈・実行部３１から印刷ジョブの終了通知を受信すると（Ｓ１３：ＹＥＳ）、入力ジョブキュー３４の先頭のキューデータを取り外し、次のキューデータを先頭にする（Ｓ１４）。そして、入力ジョブキュー管理部３３は、終了した印刷ジョブの印刷ジョブファイルを削除する（Ｓ１５）。
【００４０】
さらに、入力ジョブキュー管理部３３は、入力ジョブキュー３４に先頭キューデータがあるか判断し（Ｓ１６）、入力ジョブキュー３４の先頭にキューデータがある場合（Ｓ１６：ＹＥＳ）、前述と同様、ＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示し（Ｓ１２）、上記ＰＤＬ解釈・実行部３１による印刷処理を繰り返す。
【００４１】
一方、上記印刷処理の間、操作パネル２７には入力ジョブキュー３４に記憶された情報が表示される。図９は入力ジョブキュー３４に記憶された印刷ジョブ情報が操作パネル２７に表示される例を示す図である。同図に示すように、操作パネル２７には印刷実行中の印刷ジョブ名とユーザ名、及び印刷実行待ちの印刷ジョブ名とユーザ名が表示される。また、操作パネル２７には割込印刷が可能な状態の場合には割り込み印刷可能状態を表す「割込印刷」マーク２７ｃが表示される。
【００４２】
上記図９に示す表示状態において、割込キー２７ｄ（図４に示す右矢印キー（＞）で代替え）が押下されると、同図に示すように、印刷実行待ちの印刷ジョブ名とユーザ名の表示が反転され、前述の図４に示す上下矢印キー（∧、∨）を押下することによって、割り込み印刷を行う印刷ジョブを選択することができる。また、選択した印刷ジョブの決定は、前述の図４に示すキー部２７ｂにある決定キーを押下することによって行なうことができる。
【００４３】
上記操作によって割り込み印刷が指示されると、操作パネル２７から操作信号が操作パネル制御部２５ａの制御に従って、割込要求として入力ジョブキュー管理部３３に通知される。入力ジョブキュー管理部３３は、上記割込要求が通知されると（Ｓ８、Ｓ９：ＮＯ、Ｓ１３：ＮＯ、ＳＴ１７：ＮＯ、ＳＴ１８：ＹＥＳ）、割り込み処理を行う印刷ジョブ名の情報を受け取り、入力ジョブキュー３４をサーチする（Ｓ１９）。
【００４４】
そして、入力ジョブキュー管理部３３は、割り込み印刷の指定が行なわれた印刷ジョブ名が入力ジョブキュー３４に存在するか判断し、存在しない場合は（Ｓ２０：ＮＯ）、操作パネルに「指定のジョブは既に印刷終了しました」と表示する（Ｓ３１）。入力ジョブキュー管理部３３は、割り込み指示が行われた印刷ジョブ名のキューデータが存在する場合（Ｓ２０：ＹＥＳ）、当該印刷ジョブ名のキューが先頭のキューデータであるかの判断を行う（Ｓ２１）。入力ジョブキュー管理部３３は、当該印刷ジョブ名のキューデータが先頭であれば（Ｓ２１：ＹＥＳ）、現在印刷中であるため操作パネルに「指定のジョブは現在印刷中」と表示し、以後特別に割り込み処理を行う必要がないので、現在の印刷をそのまま継続する（Ｓ３２）。
入力ジョブキュー管理部３３は、当該印刷ジョブ名のキューデータが先頭でなければ（Ｓ２１：ＮＯ）、ジョブの中断・停止要求フラグをオンして（Ｓ２２）、ジョブの中断を待つ（Ｓ８）。
【００４５】
ここで、ジョブの中断・停止要求フラグがオンされた場合、印刷処理中であるＰＤＬ解釈・実行部３１は、前述の判断（ＳＴ１２）において、ジョブの中断・停止要求フラグがオンであることから（ＳＴ１２：ＹＥＳ）、ＰＤＬ解釈・実行部３１の内部状態を初期化し、実行中の印刷ジョブの処理を中断する（ＳＴ１５）。また、ＰＤＬ解釈・実行部３１は、入力ジョブキュー管理部３３に対して、継続中の印刷ジョブの処理を中断する旨の通知を行う（ＳＴ１６）。
【００４６】
入力ジョブキュー管理部３３は、ジョブ中断、停止の通知があると（Ｓ１７：ＹＥＳ）、ジョブの中断・停止要求フラグをオフし（Ｓ２３）、割込み要求の印刷ジョブのキューデータを入力ジョブキュー３４から一旦取り外し、入力ジョブキュー３４の先頭に挿入する（Ｓ２４）。
【００４７】
以後、入力ジョブキュー管理部３３は、入力ジョブキュー３４の先頭にキューデータがあることを判断して（Ｓ１６：ＹＥＳ）、前述と同様、入力ジョブキュー管理部３３はＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示し（Ｓ１２）、上記ＰＤＬ解釈・実行部３１による印刷処理を行う。この割り込み印刷の印刷処理は前述と同様であり、ＰＤＬ解釈・実行部３１によって実行される。
【００４８】
次に、入力ジョブキュー管理部３３は、上記割込み印刷が終了すると（ＳＴ１３：ＹＥＳ、ＳＴ１４、Ｓ１３：ＹＥＳ）、前述と同様、入力ジョブキュー３４の先頭の割込み印刷を行ったキューデータを取り外し、次のキューデータを先頭にする（Ｓ１４）。そして、終了した印刷ジョブの印刷ジョブファイルを削除する（Ｓ１５）。
さらに、入力ジョブキュー管理部３３は、入力ジョブキュー３４に先頭キューデータがあるか判断し（Ｓ１６）、この場合中断した印刷ジョブファイルの情報が入力ジョブキュー３４に先頭に記憶されており、以下の処理を行なう。
【００４９】
すなわち、ＰＤＬ解釈・実行部３１は、前述と同様、先ず印刷ジョブファイルの情報を読み出し、ジョブファイルに記憶されたＰＤＬコマンドの解析を行い、復帰印刷処理を行う。この場合、前述のように、印刷ジョブファイルには印刷処理を行う際に必要な給紙口の情報や解像度、階調値の情報等のＰＤＬコマンドが含まれており、このＰＤＬコマンドについてはそのままコマンド処理を行う（ＳＴ７）。
【００５０】
一方、ＰＤＬ解釈・実行部３１は、図８における（ｂ）に示すＮＯＰコマンドについては、当該コマンドのパラメータで指定されるサイズ分データを読み飛ばす（ＳＴ１７）。したがって、先の印刷処理において印刷処理が行われた画像データを生成するコマンド、及び改頁コマンドについてはＮＯＰコマンドに書き換えられており、読み飛ばす。
【００５１】
すなわち、一旦中断した印刷ジョブの復帰再開処理において、ＮＯＰコマンドについては読み飛ばすことができる。したがって、印刷ジョブの復帰再開処理において既に印刷出力された頁については、前述の処理によってＮＯＰコマンドに書き換えられており、既に印刷出力された頁まで印刷データを読み飛ばすことができる。尚、先の印刷処理において未だ印刷出力されていない頁については、ＮＯＰコマンドへの書き換え処理が行なわれておらず、前述の処理（ＳＴ８、ＳＴ１０）が行なわれる。
【００５２】
以上のように、本例によれば、割込み印刷処理後のジョブ復帰再開処理を効率よく、短時間で行なうことができる。したがって、印刷ジョブの復帰処理を高速化し、割込復帰のパフォーマンスを格段に改善することができる。
【００５３】
また、本実施形態では、画像データを生成するＰＤＬコマンドを解釈実行したあと、ＮＯＰコマンドに変換して印刷ジョブファイルに書き戻したが、ＮＯＰコマンドを使用せずに、元のＰＤＬコマンドのサイズ分全て、1バイトデータで値が０ｘ００のＮＯＰデータに置き換えて印刷ジョブファイルに書き戻してもよい。
この場合、印刷が終了した時点では、ハードディスク上の印刷ジョブファイルの中には、画像データを生成するＰＤＬコマンドは全く無くなり、すべてＮＯＰデータ（値は０ｘ００）に置き換わっている。そして、この状態でファイル削除される。つまり、印刷ジョブファイル上、印刷物の内容に関する情報が全く無くなっており、その状態でファイル削除されている。このため、たとえ、ハードディスクが盗難等にあい、悪意のユーザに何らかの方法で削除されている印刷ジョブファイルを復元されたとしても、印刷物の内容に関する情報が全く無くなっているため、情報漏洩の心配が全く無い。
このように、前述の印刷ジョブの復帰処理を高速化・割込復帰のパフォーマンスの向上のほか、セキュリティ面での効果もある。
但し、本実施形態では、印刷処理中に、元のＰＤＬコマンドのサイズ分をＮＯＰデータに置き換えて印刷ジョブファイルに書き戻す。従って、特に、容量の多いイメージ描画コマンドもそのイメージデータをも含めてＮＯＰデータに置き換え書き戻す為、これがオーバーヘッドとなり、印刷スピードへの悪影響を及ぼす可能性が高い。
そこで、この問題も解決して印刷スピードを維持し、かつ、割込復帰処理の高速化、更に、高いセキュリティを保証する実施形態２を以下に示す。
【００５４】
（実施形態２）
近年、セキュリティの重要性が叫ばれ、情報漏洩防止の為に、印刷装置といえども、ファイルの管理情報の消去だけでなく、ファイルの完全消去が求められている。ここで、ファイルの管理情報の消去は、印刷処理過程での印刷データ及び処理過程で生成される中間データを含むハードディスク装置内のファイルにアクセスするための情報を削除することである。一方、ファイルの完全消去は、ハードディスク装置内のファイルそのものを特定のパターンデータで上書き処理を行ったうえでファイルを削除することである。以下、セキュリティの高い印刷装置に本発明を適用する例について説明する。
【００５５】
以下、本発明の実施形態２を図面に基づいて説明する。なお、実施形態２に係る印刷装置の構成の大部分は、実施形態１に係る印刷装置の構成と同様である。従って、以下では、実施形態１と同様の構成については、適宜、説明を省略する。
【００５６】
図１０は上記印刷制御部１７のソフトウエア構成を示す図であり、上記図３に示す回路に基づく機能部については関連する番号を使用して説明する。本例の印刷装置１（印刷制御部１７）はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介してパーソナルコンピュータ（ＰＣ）等のクライアント装置（ホスト機器）３０に接続される。クライアント装置３０は、例えば、アプリケーションプログラム３０ａ、プリンタドライバ３０ｂ、スプーラ３０ｃ、及びＬＡＮ制御部３０ｄで構成されている。
【００５７】
クライアント装置３０は、アプリケーションプログラム３０ａによって作成した印刷データをプリンタドライバ３０ｂによって前述のＰＤＬコマンドを含む中間データに変換し、スプーラ３０ｃに保持し、ＬＡＮ制御部３０ｄを介して印刷装置１に出力する。
【００５８】
クライアント装置３０から出力された印刷データは、上記ＬＡＮ制御回路１８（ＬＡＮ制御部１８ａ）を介して印刷装置１に入力する。
印刷装置１は上記のように、エンジン制御回路２４に対応するエンジン制御部２４ａ、操作パネル制御回路２５に対応する操作パネル制御部２５ａ、及びメモリ２１に対応する画像メモリ２１ａを備える。印刷装置１は、更に、ＲＯＭ２３に記憶されたプログラムによってＣＰＵ２０を制御し、印刷データの解釈、実行を行うＰＤＬ解釈・実行部３１、入力ジョブ保存処理を行う入力ジョブ保存部３２、入力ジョブキューの管理を行う入力ジョブキュー管理部３３、ファイルデータの全てをあるパターンデータで上書きした上でファイル削除するファイル完全消去部３５を備える。
【００５９】
また、前述のエンジン制御回路２４に対応するエンジン制御部２４ａはプリンタエンジン２６に対してプリンタエンジン動作モード等を設定し、給紙処理、画像メモリ２１aからの画像データの転送、排紙処理等の制御を行なう。また、エンジン制御部２４ａは、ある一定間隔で定期的に、エンジン状態の監視し、また、給紙口の状態を各給紙口より取得し、各給紙口の状態を監視する。尚、給紙口より取得できる情報は、例えばカセットの装着／未装着や、カセットのセット状態／引出し状態、用紙の有無、及び用紙サイズ等の情報である。
【００６０】
また、入力ジョブキュー３４は、前述の不揮発性メモリ２２またはハードディスク２９上に構築されている。尚、図３に示すＵＳＢ制御回路１９の構成は、特に図１０において示していない。
【００６１】
図１１はプリンタドライバ３０ｂが生成し、印刷装置１に入力される印刷データ（印刷ジョブ）のデータフォーマットを示す図である。印刷データは、先ず識別フラグとレングスが記述された識別フラグ＆レングス記述部Ｄ１、データ記述エリアＤ２、識別フラグ＆レングス記述部Ｄ３、データ記述エリアＤ４、識別フラグ＆レングス記述部Ｄ５、データ記述エリアＤ６、識別フラグ＆レングス記述部Ｄ７、・・・、識別フラグ＆レングス記述部Ｄ９９で構成されている。
【００６２】
ここで、識別フラグ＆レングス記述部Ｄ１、Ｄ３、Ｄ５、Ｄ７、・・・に記述される識別フラグは、例えば“０”がイメージ描画コマンド以外のＰＤＬコマンドが次のエリアに記述されていることを示し、“１”がイメージ描画コマンド（ＰＤＬコマンド）が次のエリアに記述されていることを示し、“２”がユーザ名及び印刷ジョブ名の情報が次のエリアに記述されていることを示す。また、レングスは次のエリア（Ｄ２、Ｄ４、Ｄ６、・・・）に記述される情報の長さを示す。Ｄ９９に記述される識別フラグ“９”は印刷ジョブの終了を表わし、この場合レングスは０である。
【００６３】
例えば、図１１に示す例では、最初の識別フラグ＆レングス記述部Ｄ１の識別フラグが“２”であり、次のデータ記述エリアＤ２にユーザ名及び印刷ジョブ名が記述され、次の識別フラグ＆レングス記述部Ｄ３の識別フラグが“０”であり、次のデータ記述エリアＤ４にイメージ描画コマンド以外のＰＤＬコマンドが記述されている。このＰＤＬコマンドは、例えば用紙サイズの情報や、給紙口の情報、解像度や階調設定の情報等のＰＤＬコマンドである。
【００６４】
また、次の識別フラグ＆レングス記述部Ｄ５の識別フラグが“１”であり、次のデータ記述エリアＤ６にイメージ描画コマンドが記述されている。このイメージ描画コマンドは、クライアント装置側で既に印刷すべきイメージデータに展開されたデータを含み、印刷装置側でそのままイメージデータを描画するように指示する制御コマンド部分とイメージデータ部分とから構成される。
そして、最後に識別フラグ＆レングス記述部Ｄ９９の識別フラグが“９”であり、印刷ジョブの終了を表す。
【００６５】
以上の構成において、以下に本例の処理動作を説明する。
先ず、図１２Ａ及び図１２Ｂは、ＬＡＮ制御部１８ａ、及び入力ジョブ保存部３２の処理動作を説明するフローチャートであり、上記フォーマットの印刷データが入力された際に行う処理を説明するものである。先ず、ＬＡＮ制御部１８ａは、印刷データを受信すると（ステップ（以下、ＳＵで示す）１）、印刷データを受信バッファにバッファリングする（ＳＵ２）。尚、受信バッファは、例えば前述のメモリ２１の所定エリアに設定されている。
【００６６】
次に、ＬＡＮ制御部１８ａは、印刷データの入力を入力ジョブ保存部３２に通知し、入力ジョブ保存部３２をウエイクアップする（ＳＵ３）。
印刷データの受信を待っていた入力ジョブ保存部３２は、上記ＬＡＮ制御１８ａからの通知により、処理を開始し、受信バッファに格納された印刷データを読み出す（ＳＵ４、ＳＵ５）。この処理により、入力ジョブ保存部３２には前述のフォーマットの印刷データが読み出され、識別フラグ＆レングス記述部の解析処理が行われる。
【００６７】
図１３は、識別フラグ＆レングス記述部Ｄ３、Ｄ５、及びデータ記述エリアＤ４、Ｄ６に対する処理を詳しく説明する図である。
【００６８】
先ず、入力ジョブ保存部３２は、印刷データの最初の識別フラグ＆レングス記述部Ｄ１に含まれる識別フラグとレングスの情報を読み出す（ＳＵ６）。図１１に示す例の場合、識別フラグは“２”であり、レングスは“ｌｅｎ０”である。この場合、判断はＹＥＳ（ＳＵ７：ＹＥＳ）となり、入力ジョブ保存部３２は、識別フラグ＆レングス記述部Ｄ１に続くデータ記述エリアＤ２に記述されたユーザ名及び印刷ジョブ名の情報をセーブする（ＳＵ８）。そして、入力ジョブ保存部３２は、印刷ジョブファイル１及び２の名称を自動生成しセーブする（ＳＵ９）。この印刷ジョブファイル１及び２の名称はユニークな名称である。
【００６９】
一方、上記判断（ＳＵ７）において、識別フラグが“２”でない場合、入力ジョブ保存部３２は、識別フラグが“９”であるか判断する（ＳＵ１０）。識別フラグが“９”、即ち、印刷ジョブの終了の場合、入力ジョブ保存部３２は、入力ジョブキュー管理部３３に対してジョブ登録要求を出す（ＳＵ１１）。入力ジョブ保存部３２は、その際セーブしているユーザ名、印刷ジョブ名、及びジョブファイル２の名称を入力ジョブキュー管理部３３に受け渡す。
【００７０】
上記判断（ＳＵ１０）において、識別フラグが“９”でない場合、入力ジョブ保存部３２は、更に識別フラグが“０”か判断する（ＳＵ１２）。図１３に示す例では、次の識別フラグ＆レングス記述部Ｄ３には識別フラグとして、“０”が設定されており（ＳＵ７：ＮＯ、ＳＵ１０：ＮＯ、ＳＵ１２：ＹＥＳ）、識別フラグ＆レングス記述部Ｄ３に続くデータ記述エリアＤ４からイメージ描画コマンド以外のＰＤＬコマンドを読み出す。すなわち、レングス“ｌｅｎ１”分、ＰＤＬコマンドを読み出し、印刷ジョブファイル１に当該ＰＤＬコマンドを書き込む（ＳＵ１３）。
【００７１】
尚、この処理は、図１３に示す処理ａである。また、上記印刷ジョブファイル１は、前述のハードディスク２９に構築されたファイルであり、上記ＰＤＬコマンド及び後述するイメージ描画２コマンド（内部コマンド）を記憶するファイルである。
したがって、上記処理によって印刷ジョブファイル１の所定エリアに、先ずＰＤＬコマンドが書き込まれる（図１３に示すｂ）。
【００７２】
次に、入力ジョブ保存部３２は、識別フラグ＆レングス記述部Ｄ５の情報を読み出し、識別フラグを判断する。図１３に示す例では、この識別フラグは“１”であり、識別フラグ＆レングス記述部Ｄ５に続くデータ記述エリアＤ６のイメージ描画コマンドを読み出す（ＳＵ１２：ＮＯ）。
ここで、イメージ描画コマンドやイメージ描画２コマンドの形式は、コマンドＩＤ，データ部サイズ，パラメータ，区切りコード，データで構成されており、
イメージ描画コマンドは、
コマンドＩＤ…イメージ描画コマンドを示すコマンド識別子（ＩＭ）、
データ部サイズ…本コマンドのデータ部分のサイズ（ｌｅｎ）、
パラメータ…本コマンドのパラメータ（ｘ，ｙ，Δｘ,Δｙ）、
区切りコード…パラメータとデータ部分を区切るコード（＊）、
データ…イメージデータ実体（サイズはデータ部サイズｌｅｎで示される）、
なる構造である。
【００７３】
この場合、入力ジョブ保存部３２は、イメージ描画コマンドのイメージデータ部分を印刷ジョブファイル２の最後に追記し、コマンドパラメータ部分をイメージ描画２コマンドに置き換えて、印刷ジョブファイル１に書き込む。
イメージ描画２コマンドは、
コマンドＩＤ…イメージ描画２コマンドを示すコマンド識別子（ＩＭ２）、
データ部サイズ…本コマンドのデータ部分のサイズ（ｌｎ２）、
パラメータ…イメージ描画コマンドのパラメータと同じ（ｘ，ｙ，Δｘ,Δｙ）、
区切りコード…パラメータとデータ部分を区切るコード（＊）、
データ…イメージデータ実体を示す印刷ジョブファイル２上の相対アドレス（Ｌｏｃ）とイメージデータのサイズ（ｌｅｎ）（このＬｏｃとｌｅｎを併せたサイズがデータ部サイズｌｎ２。）、
なる構造である。
入力ジョブ保存部３２は、先ず印刷ジョブファイル２のファイルサイズを取得し、イメージ描画２コマンドの相対アドレスＬｏｃ（ロケーション）とする（ＳＵ１４）。
【００７４】
この印刷ジョブファイル２もハードディスク２９に構築されたファイルであり、イメージ描画コマンドのイメージデータ部分を記憶するファイルである。すなわち、印刷ジョブファイル２の最後にイメージデータを追記するため、追記する前のファイルサイズが該イメージデータの印刷ジョブファイル２上の相対アドレスＬｏｃである。
次に、入力ジョブ保存部３２は、イメージ描画コマンドのイメージデータ部分を、イメージ描画コマンドのデータ部サイズで指定されるレングス分、印刷ジョブファイル２の最後に記憶する（ＳＵ１５）。すなわち、図１３のｃに示すように、印刷ジョブファイル２の相対アドレスＬｏｃ位置からイメージデータ（サイズｌｅｎ）を追記する。
【００７５】
次に、入力ジョブ保存部３２は、イメージ描画コマンドを、内部コマンドであるイメージ描画２コマンドに変換する。すなわち、入力ジョブ保存部３２は、コマンドＩＤをイメージ描画（ＩＭ）からイメージ描画２（ＩＭ２）に変え、イメージ描画２のパラメータは元のパラメータのままとし、イメージ描画２のデータ部分は、イメージデータを印刷ジョブファイル２に追記した際の相対アドレスＬｏｃとイメージデータサイズｌｅｎとする（データ部分のサイズは、新しいイメージ描画２のデータ部分のサイズｌｎ２とする）（ＳＵ１６）。すなわち、図１３のｄに示すように、元のイメージ描画コマンドのパラメータである“ＩＭ２  ｌｎ２  ｘ，  ｙ，  Δｘ，  Δｙ*”と、イメージデータサイズであるｌｅｎと、相対アドレスＬｏｃと、が、イメージ描画２コマンドのデータとして記憶される。
【００７６】
次に、入力ジョブ保存部３２は、生成したイメージ描画２コマンドを、イメージ描画コマンドの代わりに印刷ジョブファイル１に出力する（ＳＵ１７）。
次に、入力ジョブ保存部３２は、受信バッファより読み出した印刷データを全て処理したか判断し（ＳＵ１８）、読み出した印刷データを全て処理するまで上記処理を繰り返す（ＳＵ１８：ＮＯ、ＳＵ６〜ＳＵ１７）。そして、全ての処理が完了すると（ＳＵ１８：ＹＥＳ）、印刷データの受信を待つ（ＳＵ４）。
【００７７】
次に、図１４Ａ及び図１４Ｂを参照して、入力ジョブキュー管理部の動作について説明する。
【００７８】
入力ジョブキュー管理部３３は、要求待ち状態で待機しており（ステップ（以下、ＳＷで示す）１）、上記入力ジョブ保存部３２から登録要求が出されると、まず要求がジョブ登録要求であるか判断する（ＳＷ２）。ここで、入力ジョブキュー管理部３３は、入力ジョブ保存部３２からジョブ登録要求があると判断すると（ＳＷ２：ＹＥＳ）、上記ユーザ名と印刷ジョブ名、及び印刷ジョブファイル１および２の名称の情報を受け取り、新規にキューデータを作成し、受け取った印刷ジョブ名等の情報をキューデータにセットし、そのキューデータを入力ジョブキューの最後に追加する（ＳＷ３）。
【００７９】
図１５は入力ジョブキュー３４のデータ構成を示す。スタートキューポインタは最初の印刷ジョブ情報３４−１にリンクする。つまり、スタートキューポインタは、最初の印刷ジョブ情報３４−１の先頭のアドレスを示す。最初の印刷ジョブ情報３４−１のネクストポインタは次の印刷ジョブ情報３４−２を指示し、以後順次ネクストポインタの指示に従って次の印刷ジョブ情報３４−ｎが指示される。つまり、印刷ジョブ情報３４−ｉ（ただし、ｉは、１≦ｉ＜ｎを満たす整数。）のネクストポインタは、印刷ジョブ情報３４−（ｉ＋１）の先頭のアドレスを示す。尚、各印刷ジョブ情報３４−１〜３４−ｎには前述のユーザ名、印刷ジョブ名、印刷ジョブファイル１及び２の名称が記憶されている。
【００８０】
次に、入力ジョブキュー管理部３３は、上記印刷ジョブファイルの情報が入力ジョブキュー３４の先頭に追加されたか判断する（ＳＷ４）。すなわち、入力ジョブキュー管理部３３は、印刷していない状態でジョブが投入されたか判断する。ここで、入力ジョブキュー３４の先頭に追加された場合（ＳＷ４：ＹＥＳ）、入力ジョブキュー管理部３３は、ＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示する（ＳＷ５）。この際、入力ジョブキュー管理部３３は、ＰＤＬ解釈・実行部３１に対して、印刷ジョブファイル１及び２の名称等の情報を受け渡す。
【００８１】
図１６Ａ、図１６Ｂおよび図１６Ｃは、ＰＤＬ解釈・実行部３１の処理を説明するフローチャートである。要求待ち状態（ステップ（以下、ＳＸで示す）１）で待機していたＰＤＬ解釈・実行部３１に印刷ジョブの実行指示が有ると（ＳＸ２）、ＰＤＬ解釈・実行部３１は、入力ジョブキュー管理部３３から受け渡された印刷ジョブファイル１及び２の名称等の情報を受け取る（ＳＸ３）。
【００８２】
次に、ＰＤＬ解釈・実行部３１は、先ず印刷ジョブファイル１の情報を読み出す（ＳＸ４）。そして、ＰＤＬ解釈・実行部３１は、読み出しデータがあるか判断する（ＳＸ５）。ＰＤＬ解釈・実行部３１は、印刷ジョブファイル１に読み出しデータがある場合（ＳＸ５：ＹＥＳ）、印刷ジョブファイル１に記憶されたＰＤＬコマンドの解析を行う（ＳＸ６）。
【００８３】
先ず、ＰＤＬ解釈・実行部３１は、画像データを生成しないＰＤＬコマンド、例えば印刷処理を行う際に必要な給紙口の情報や解像度、階調値の情報等のＰＤＬコマンドについては、そのままコマンド処理を行う（ＳＸ７）。また、ＰＤＬ解釈・実行部３１は、画像データを生成するＰＤＬコマンドについても、そのままコマンド処理を行う（ＳＸ８）。
【００８４】
なお、ＰＤＬ解釈・実行部３１は、入力ジョブ保存部にて置き換えられた内部コマンドのイメージ描画２コマンドについては、イメージ描画２コマンドの相対アドレスＬｏｃとレングスｌｅｎの情報を取り出し（ＳＸ９）、印刷ジョブファイル２の相対アドレスＬｏｃの位置から上記レングスｌｅｎ分のデータを読み出す（ＳＸ１０）。このデータは、前述の処理によってハードディスク２９の印刷ジョブファイル２に記憶されたイメージデータ部分であり、このイメージデータ部分の情報が読み出され、読み出したイメージデータに基づいて画像データが生成される（ＳＸ１１）。
【００８５】
図１７は、印刷データのデータフォーマットの一部を示す図であり、画像データを生成するコマンドの構成を示す図である。図１７における(ａ)は、印刷データのデータフォーマットの一部を示す。例として前記内部コマンドのイメージ描画２コマンドを挙げている。画像データを生成するＰＤＬコマンドは、内部コマンドのイメージ描画２コマンドをはじめ、文字描画コマンド、直線・円などのグラフィック描画コマンドであり、また描画するための座標を指定するＰＤＬコマンドも含まれる。ＰＤＬ解釈・実行部３１は、この画像データを生成するＰＤＬコマンドについても、そのままコマンド処理を行う。
【００８６】
ＰＤＬ解釈・実行部３１は、画像データを生成するＰＤＬコマンドのそれぞれの処理を終えると、次に、上記ＰＤＬコマンドをそのサイズ分、ＮＯＰデータ（１バイトのデータであり、値は０ｘ００）に置き換えて、ハードディスク２９の同じ印刷ジョブファイル１に書き戻す（上書きする）。（ＳＸ１２）。
【００８７】
次に、ＰＤＬ解釈・実行部３１は、読み出したデータを全て解釈していなければ（ＳＸ１３：ＮＯ）、ＰＤＬコマンド解析（ＳＸ６）を続行する。改頁コマンドの場合、ＰＤＬ解釈・実行部３１は、画像メモリ２１ａに生成中の画像データを印刷データとして確定し、エンジン制御部２４ａに印刷処理を指示し、同時に上記給紙口の情報や解像度、階調値の情報をパラメータとして受け渡す（ＳＸ１４）。また、ＰＤＬ解釈・実行部３１は、改頁コマンドについても、ＮＯＰデータに置き換えて、ハードディスク２９の同じ印刷ジョブファイル１に書き戻す（ＳＸ１５）。
【００８８】
ＰＤＬ解釈・実行部３１は、続いて改頁コマンドの処理として、ジョブ中断停止フラグがオンされているか判断し（ＳＸ１６）、ジョブ中断停止フラグがオンされていなければ（ＳＸ１６：ＮＯ）、読み出したデータを全て解釈したか判断して上記処理を繰り返す（ＳＸ１３：ＮＯ、ＳＸ６〜ＳＸ１３）。
【００８９】
その後、ＰＤＬ解釈・実行部３１は、読み出したデータを全て解釈すると（ＳＸ１３：ＹＥＳ、ＳＸ５：ＮＯ）、入力ジョブキュー管理部３３に対して印刷ジョブの終了を通知する（ＳＸ２０）。入力ジョブキュー管理部３３は、ＰＤＬ解釈・実行部３１から印刷ジョブの終了通知を受信すると（ＳＷ６：ＹＥＳ）、入力ジョブキュー３４の先頭のキューデータを取り外し、次のキューデータを先頭にする（ＳＷ７）。そして、入力ジョブキュー管理部３３は、終了した印刷ジョブの印刷ジョブファイル１を削除し、印刷ジョブファイル２をファイル完全消去要求ディレクトリに移動し、ファイル完全消去部３５に対し、ファイル完全消去要求を出す（ＳＷ８、ＳＷ９）。
【００９０】
ファイル完全消去部３５は、図１８の如く、ある一定時間間隔か、又は入力ジョブキュー管理部３３からファイル完全消去要求を出されたときに起こされ（ＳＹ１、ＳＹ２）、現在印刷中か調べ（ＳＹ３）、印刷中で無いならば（ＳＹ３：ＮＯ）、完全消去要求ディレクトリに完全消去要求のファイルがあるかチェックする（ＳＹ４）。ありの場合（ＳＹ４：ＹＥＳ）、ファイル完全消去部３５は、その要求されたファイルのサイズを取得し、そのサイズ分、あるパターン（ｅｘ．０ｘ００)のデータをそのファイルに上書きし、そのあとファイル削除する（ＳＹ５、ＳＹ６）。すなわち、印刷装置が印刷中で無い時に、ファイルデータを完全消去した上でファイル削除を行う。
【００９１】
さらに、入力ジョブキュー管理部３３は、入力ジョブキュー３４に先頭キューデータがあるか判断し（ＳＷ１０）、入力ジョブキュー３４の先頭にキューデータがある場合（ＳＷ１０：ＹＥＳ）、前述と同様、入力ジョブキュー管理部３３はＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示し（ＳＷ５）、上記ＰＤＬ解釈・実行部３１による印刷処理を繰り返す。
【００９２】
一方、上記印刷処理の間、上記入力ジョブキュー３４に登録された印刷ジョブ情報は、操作パネル制御部２５ａの制御によって操作パネル２７に表示される。図９は、入力ジョブキュー３４に記憶された印刷ジョブ情報が操作パネル２７に表示される例を示す図である。同図に示すように、操作パネル２７には印刷実行中の印刷ジョブ名とユーザ名、及び印刷実行待ちの印刷ジョブ名とユーザ名が表示される。また、操作パネル２７には、割込印刷が可能な状態の場合には割り込み印刷可能状態を表す「割込印刷」マーク２７ｃが表示される。
【００９３】
尚、上記表示においては、操作パネル制御部２５ａが、入力ジョブキュー管理部３３に対して、ユーザ名、印刷ジョブ名リスト取得要求を出し、取得されたリストに基づき、操作パネル２７にユーザ名・印刷ジョブ名を表示する。
入力ジョブキュー管理部３３は、ユーザ名、印刷ジョブ名リスト取得要求があると（ＳＷ２１：ＹＥＳ）、入力ジョブキュー３４の先頭のキューデータより、キューデータを辿り、入力ジョブキュー３４内のユーザ名及び印刷ジョブ名を取り出し、リストを作成する（ＳＷ２２）。そして、入力ジョブキュー管理部３３は、上記リストの応答を行なう（ＳＷ２３）。
【００９４】
上記図９に示す表示状態において、割込キー２７ｄ（図４に示す右矢印キー（＞）で代替え）が押下されると、同図に示すように、印刷実行待ちの印刷ジョブ名とユーザ名の表示が反転され、前述の図４に示す上下矢印キー（∧、∨）を押下することによって、割り込み印刷を行う印刷ジョブを選択することができる。また、選択した印刷ジョブの決定は、前述の図４に示すキー部２７ｂにある決定キーを押下することによって行なうことができる。
【００９５】
上記操作によって割り込み印刷が指示されると、操作パネル２７から操作信号が操作パネル制御部２５ａの制御に従って、割込要求として入力ジョブキュー管理部３３に通知される。入力ジョブキュー管理部３３は、上記割込要求が通知されると（ＳＷ１が「要求あり」、ＳＷ２：ＮＯ、ＳＷ６：ＮＯ、ＳＷ１１：ＮＯ、ＳＷ１２：ＹＥＳ）、割り込み処理を行う印刷ジョブ名の情報を受け取り、入力ジョブキュー３４をサーチする（ＳＷ１３）。
【００９６】
そして、入力ジョブキュー管理部３３は、割り込み印刷の指定が行なわれた印刷ジョブ名が入力ジョブキュー３４に存在するか判断し、存在しない場合は（ＳＷ１４：ＮＯ）、操作パネルに「指定のジョブは既に印刷終了しました」と表示する（ＳＷ１９）。入力ジョブキュー管理部３３は、割り込み指示が行われた印刷ジョブ名のキューデータが存在する場合（ＳＷ１４：ＹＥＳ）、当該印刷ジョブ名のキューが先頭のキューデータであるかの判断を行う（ＳＷ１５）。入力ジョブキュー管理部３３は、当該印刷ジョブ名のキューデータが先頭であれば（ＳＷ１５：ＹＥＳ）、現在印刷中であるため操作パネルに「指定のジョブは現在印刷中」と表示し、以後特別に割り込み処理を行う必要がないので、現在の印刷をそのまま継続する（ＳＷ２０）。
入力ジョブキュー管理部３３は、当該印刷ジョブ名のキューデータが先頭でなければ（ＳＷ１５：ＮＯ）、ジョブの中断・停止要求フラグをオンして（ＳＷ１６）、ジョブの中断を待つ（ＳＷ１）。
【００９７】
ここで、ジョブの中断・停止要求フラグがオンされた場合、印刷処理中であるＰＤＬ解釈・実行部３１は、前述の判断（ＳＸ１６）において、ジョブの中断・停止要求フラグがオンであることから（ＳＸ１６：ＹＥＳ）、ＰＤＬ解釈・実行部３１の内部状態を初期化し、実行中の印刷ジョブの処理を中断する（ＳＸ１７）。また、ＰＤＬ解釈・実行部３１は、入力ジョブキュー管理部３３に対して、継続中の印刷ジョブの処理を中断する旨の通知を行う（ＳＸ１８）。
【００９８】
入力ジョブキュー管理部３３は、ジョブ中断、停止の通知があると（ＳＷ１１：ＹＥＳ）、ジョブの中断・停止要求フラグをオフし（ＳＷ１７）、割込み要求の印刷ジョブのキューデータを入力ジョブキュー３４から一旦取り外し、入力ジョブキュー３４の先頭に挿入する（ＳＷ１８）。
【００９９】
以後、入力ジョブキュー管理部３３は、入力ジョブキュー３４の先頭にキューデータがあることを判断して（ＳＷ１０：ＹＥＳ）、前述と同様、入力ジョブキュー管理部３３はＰＤＬ解釈・実行部３１に対して印刷ジョブの実行を指示し（ＳＷ５）、上記ＰＤＬ解釈・実行部３１による印刷処理を行う。この割り込み印刷の印刷処理は前述と同様であり、ＰＤＬ解釈・実行部３１によって実行される。
【０１００】
次に、上記割込み印刷が終了すると（ＳＸ１３：ＹＥＳ、ＳＸ２０、ＳＷ６：ＹＥＳ）、入力ジョブキュー管理部３３は、前述と同様、入力ジョブキュー３４の先頭の割込み印刷を行ったキューデータを取り外し、次のキューデータを先頭にする（ＳＷ７）。そして、入力ジョブキュー管理部３３は、終了した印刷ジョブの印刷ジョブファイル１を削除し、印刷ジョブファイル２を、ファイル完全消去要求ディレクトリに移動し、ファイル完全消去部に対し、ファイル完全消去要求を出す（ＳＷ８、ＳＷ９）。さらに、入力ジョブキュー管理部３３は、入力ジョブキュー３４に先頭キューデータがあるか判断し（ＳＷ１０）、この場合中断した印刷ジョブファイルの情報が入力ジョブキュー３４に先頭に記憶されており、以下の処理を行なう。
【０１０１】
すなわち、ＰＤＬ解釈・実行部３１は、前述と同様、先ず印刷ジョブファイル１の情報をファイル先頭より読み出し、印刷ジョブファイル１に記憶されたＰＤＬコマンドの解析を行い、復帰印刷処理を行う。この場合、前述のように、印刷ジョブファイル１には印刷処理を行う際に必要な給紙口の情報や解像度、階調値の情報等のＰＤＬコマンドが含まれており、ＰＤＬ解釈・実行部３１は、このＰＤＬコマンドについてはそのままコマンド処理を行う（ＳＸ７）。
【０１０２】
一方、図１７における（ｂ）に示すＮＯＰデータについては読み飛ばす（ＳＸ１９）。したがって、先の印刷処理において印刷処理が行われた画像データを生成するコマンド、及び改頁コマンドについてはＮＯＰデータに書き換えられており、読み飛ばされる。
【０１０３】
すなわち、一旦中断した印刷ジョブの復帰再開処理において、既に印刷出力された頁については、前述の処理によってＮＯＰデータに書き換えられており、ＮＯＰデータについては読み飛ばすことができ、しかも容量の大きいイメージデータが記憶されている印刷ジョブファイル２には一切アクセスもしなくて済む。尚、先の印刷処理において未だ印刷出力されていない頁については、ＮＯＰデータへの書き換え処理が行なわれておらず、前述の処理（ＳＸ８、ＳＸ９、ＳＸ１４）が行なわれる。
【０１０４】
以上のように、本例によれば、割込み印刷処理後のジョブ復帰再開処理を効率よく、短時間で行なうことができる。したがって、印刷ジョブの復帰処理を高速化し、割込復帰のパフォーマンスを格段に改善することができる。
【０１０５】
また、画像データを生成するＰＤＬコマンドを、値が０ｘ００のＮＯＰデータに置き換えて印刷ジョブファイル１に書き戻しており、印刷が終了した時点では、ハードディスク上の印刷ジョブファイル１の中には、画像データを生成するＰＤＬコマンドは全く無くなり、すべてＮＯＰデータ（値は０ｘ００）に置き換わっている。そして、この状態でファイル削除される。つまり、イメージデータ以外の印刷物の内容に関する情報が全く無くなっており、その状態でファイル削除されている。また、印刷ジョブファイル２については、印刷を行なっていない時に全データを０ｘ００の値で上書きした上でファイル削除される為、イメージデータについても内容も消され、印刷物の内容は完全に痕跡が無くなっている。このため、たとえ、ハードディスクが盗難等にあい、悪意のユーザに何らかの方法で削除されている印刷ジョブファイルを復元されたとしても、印刷物の内容に関する情報が全く無くなっているため、情報漏洩の心配が全く無い。
【０１０６】
また、小容量の印刷ジョブファイル１をＮＯＰデータで上書きしてもたいした時間もかからず、性能に与える影響はほとんど無く、大きい容量の印刷ジョブファイル２については、印刷処理を行なっていないときに完全消去される為、印刷処理に及ぼす性能的影響はほぼ無い。
このように、前述の印刷ジョブの復帰処理を高速化・割込復帰のパフォーマンスの向上のほか、セキュリティ面での効果もある。
【０１０７】
（変形例）
これまで、本発明のいくつかの実施形態を説明したが、本発明の範囲はこれらの実施形態に限定されない。つまり、これらの実施形態における各要素を当業者がこれと均等なものに置換した実施形態も本発明の範囲に含まれる。
【０１０８】
上記実施形態では、操作パネル２７を操作し、割り込み処理を行なう印刷ジョブを指定したが、受信する印刷ジョブ自身に優先度を持たせても良い。例えば、至急／通常のような優先度の指定、又は優先順位の特定等を行ない、上記と同様な処理を行なってもよい。
【０１０９】
この場合、優先度を認識できるように印刷ジョブの先頭に優先度に関する記述を行い、入力ジョブ保存部３２では、この優先度を認識し、印刷ジョブを保存した後、優先度が高い印刷ジョブに対して、割込み印刷要求を出力する。この割込印刷の要求があると、解釈・実行中の印刷ジョブの中断・停止を行い、割込印刷の登録要求の印刷ジョブを入力ジョブキューの先頭に挿入し、この印刷ジョブの解釈・実行を行なうように制御する。また、上記実施形態の説明では印刷装置としてカラープリンタの例で説明したが、例えばＭＦＰ等の複合機であっても同様に実施できる。
【０１１０】
なお、上記実施形態の印刷装置と同様の機能や構成を予め備えた印刷装置によって本発明を実現できることはもとより、既存の印刷装置にプログラムを適用することで、本発明にかかる印刷装置として機能させることもできる。この場合、上記実施形態で例示した印刷装置と同様の構成を備えた印刷装置のコンピュータ（ＣＰＵなどの制御部）に、上述した印刷装置の機能と同様の機能を実現させるためのプログラムを実行させることで、本発明にかかる印刷装置として機能させることができる。このようなプログラムの適用方法は任意であり、例えば、ＣＤ−ＲＯＭやメモリカードなどの記憶媒体に格納して適用できる他、例えば、インターネットなどの通信媒体を介して適用することもできる。
【０１１１】
また、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本出願の当初の特許請求の範囲に記載された発明を付記する。
【０１１２】
（付記１）
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置であって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記電子機器から前記印刷データを受信する受信手段と、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録手段と、
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御手段と、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行手段と、を備え、
前記コマンド実行手段は、前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示するコマンドであるＮＯＰコマンドに書き換え、
前記印刷ジョブ制御手段は、
前記コマンド実行手段による印刷ジョブの実行の終了を検知すると、前記コマンド実行手段を、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に追加するとともに、前記コマンド実行手段を、実行中の印刷ジョブを中断し、前記割り込み印刷の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とする印刷装置。
【０１１３】
（付記２）
前記印刷ジョブ制御手段は、
前記割り込み処理の指示を検知すると、改ページコマンドであるＰＤＬコマンドが前記コマンド実行手段により実行されるまで待ち、その後、割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に追加するとともに、前記コマンド実行手段を、実行中の印刷ジョブを中断し、前記割り込み印刷の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とする付記１に記載の印刷装置。
【０１１４】
（付記３）
前記割り込み処理は、新たに受信された印刷データにより表される印刷ジョブを直ちに実行する処理である、
ことを特徴とする付記１又は２に記載の印刷装置。
【０１１５】
（付記４）
前記割り込み処理は、前記印刷ジョブキューに登録済みの印刷ジョブ特定情報により特定される印刷ジョブを直ちに実行する処理である、
ことを特徴とする付記１又は２に記載の印刷装置。
【０１１６】
（付記５）
前記再実行必要コマンドには、印刷装置の動作を制御する制御情報を指定するＰＤＬコマンドが含まれ、
前記再実行不要コマンドには、イメージの描画を指示するＰＤＬコマンドが含まれる、
ことを特徴とする付記１乃至４のいずれか１つに記載の印刷装置。
【０１１７】
（付記６）
前記再実行不要コマンドには、イメージの描画を指示するコマンドを表すコマンド部と、イメージデータを表すデータ部と、から構成されるイメージ描画コマンドが含まれ、
前記ＰＤＬコマンド記憶手段は、コマンドが記憶されるコマンド記憶手段と、イメージデータが記憶されるイメージデータ記憶手段と、を備え、
前記ＰＤＬコマンド登録手段は、
前記受信された印刷データに含まれるＰＤＬコマンドが前記イメージ描画コマンドである場合、当該イメージ描画コマンドのコマンド部を内部コマンドに変換して前記コマンド記憶手段に登録するとともに、当該イメージ描画コマンドのイメージデータ部を前記イメージデータ記憶手段に登録し、
前記受信された印刷データに含まれるＰＤＬコマンドがイメージ描画コマンドでない場合、当該ＰＤＬコマンドを前記コマンド記憶手段に登録し、
前記コマンド実行手段は、
前記内部コマンドを実行する場合、前記コマンド記憶手段に記憶されている内部コマンドと、前記イメージデータ記憶手段に登録されているイメージデータと、に基づいて、イメージの描画を実行し、
前記内部コマンドの実行後、前記コマンド記憶手段に記憶されている当該内部コマンドを、当該内部コマンドのサイズ分の、何も処理しないことを指示する制御データであるＮＯＰデータに書き換え、
前記内部コマンド以外の再実行不要コマンドについては、当該コマンドの実行後、前記コマンド記憶手段に記憶されている当該コマンドを、当該コマンドのサイズ分のＮＯＰデータに書き換える、
ことを特徴とする付記１乃至５のいずれか１つに記載の印刷装置。
【０１１８】
（付記７）
前記内部コマンドには、前記イメージデータ記憶手段に登録されたイメージデータの相対アドレスおよび長さを特定する情報が含まれる、
ことを特徴とする付記６に記載の印刷装置。
【０１１９】
（付記８）
前記内部コマンドの実行後、前記イメージデータ記憶手段に記憶されているイメージデータを、所定のデータで置き換えるイメージデータ消去手段、をさらに備える、
ことを特徴とする付記６又は７に記載の印刷装置。
【０１２０】
（付記９）
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置が実行する印刷制御方法であって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記電子機器から前記印刷データを受信する受信ステップと、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録ステップと、
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御ステップと、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行ステップと、を備え、
前記コマンド実行ステップでは、前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示するコマンドであるＮＯＰコマンドに書き換え、
前記印刷ジョブ制御ステップでは、
前記コマンド実行ステップによる印刷ジョブの実行の終了を検知すると、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に追加するとともに、実行中の印刷ジョブを中断し、前記割り込み印刷の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とする印刷制御方法。
【０１２１】
（付記１０）
ネットワークを介して接続された電子機器から供給された印刷データに基づいて印刷ジョブを実行し、ある印刷ジョブの実行中に他の印刷ジョブの割り込み処理を許容する印刷装置が備えるコンピュータに実行させるプログラムであって、
前記印刷データは、一連のＰＤＬコマンドを含み、
前記一連のＰＤＬコマンドのそれぞれは、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが必要なＰＤＬコマンドである再実行必要コマンドと、前記割り込み処理により中断された印刷ジョブが再開される際、再度実行することが不要なＰＤＬコマンドである再実行不要コマンドと、のうちのいずれかに分類され、
前記プログラムは、前記コンピュータを、
前記電子機器から前記印刷データを受信する受信手段、
前記受信された印刷データに含まれる一連のＰＤＬコマンドを、ＰＤＬコマンド記憶手段に登録するＰＤＬコマンド登録手段、
前記印刷データが受信されたことを検知すると、当該受信された印刷データにより表される印刷ジョブを特定する印刷ジョブ特定情報を、印刷ジョブキューの末尾に追加する印刷ジョブ制御手段、
前記ＰＤＬコマンド記憶手段に記憶されている一連のＰＤＬコマンドを先頭から順次実行することにより前記印刷ジョブを実行するコマンド実行手段、として機能させ、
前記コマンド実行手段は、前記ＰＤＬコマンドを実行する毎に、当該ＰＤＬコマンドが前記再実行不要コマンドであるか否かを判別し、当該ＰＤＬコマンドが前記再実行不要コマンドであると判別した場合、前記ＰＤＬコマンド記憶手段に記憶されている当該ＰＤＬコマンドを、何も処理しないことを指示するコマンドであるＮＯＰコマンドに書き換え、
前記印刷ジョブ制御手段は、
前記コマンド実行手段による印刷ジョブの実行の終了を検知すると、前記コマンド実行手段を、前記印刷ジョブキューの先頭の印刷ジョブ特定情報により特定される印刷ジョブの実行を開始するように制御し、
前記割り込み処理の指示を検知すると、割り込み処理の指示がなされた印刷ジョブを特定する印刷ジョブ特定情報を、前記印刷ジョブキューの先頭に追加するとともに、前記コマンド実行手段を、実行中の印刷ジョブを中断し、前記割り込み印刷の指示がなされた印刷ジョブの実行を開始するように制御する、
ことを特徴とするプログラム。
【産業上の利用可能性】
【０１２２】
本発明は、割り込み機能を有する印刷装置に適用することができる。
【符号の説明】
【０１２３】
１…印刷装置、２…画像形成部、２Ｍ、２Ｃ、２Ｙ、２Ｋ…画像形成ユニット、３、３ａ〜３ｅ…記録媒体給紙部、４…記録媒体搬送部、５…感光体ドラム、５ａ…帯電器、５ｂ…印字ヘッド、５ｃ…現像器、５ｄ…転写器、１０…待機ローラ、１１…ベルト駆動ローラ、１２…従動ローラ、１３…搬送ベルト、１６…排紙部、１７…印刷制御部、１８…ＬＡＮ制御回路、１８ａ…ＬＡＮ制御部、１９…ＵＳＢ制御回路、２０…ＣＰＵ、２１…メモリ、２１ａ…画像メモリ、２２…不揮発性メモリ、２３…ＲＯＭ、２４…エンジン制御回路、２４ａ…エンジン制御部、２５…操作パネル制御回路、２５ａ…操作パネル制御部、２６…プリンタエンジン、２７…操作パネル、２７ａ…表示部、２７ｂ…キー部、２７ｃ…マーク、２７ｄ…割込キー、２８…ハードディスク制御回路、２９…ハードディスク、３０…クライアント装置、３０ａ…アプリケーションプログラム、３０ｂ…プリンタドライバ、３０ｃ…スプーラ、３０ｄ…ＬＡＮ制御部、３１…ＰＤＬ解釈・実行部、３２…入力ジョブ保存部、３３…入力ジョブキュー管理部、３４…入力ジョブキュー、３５…ファイル完全消去部
【図１】
0005434953.tif 000002
【図２】
0005434953.tif 000003
【図３】
0005434953.tif 000004
【図４】
0005434953.tif 000005
【図５Ａ】
0005434953.tif 000006
【図５Ｂ】
0005434953.tif 000007
【図５Ｃ】
0005434953.tif 000008
【図６】
0005434953.tif 000009
【図７Ａ】
0005434953.tif 000010
【図７Ｂ】
0005434953.tif 000011
【図８】
0005434953.tif 000012
【図９】
0005434953.tif 000013
【図１０】
0005434953.tif 000014
【図１１】
0005434953.tif 000015
【図１２Ａ】
0005434953.tif 000016
【図１２Ｂ】
0005434953.tif 000017
【図１３】
0005434953.tif 000018
【図１４Ａ】
0005434953.tif 000019
【図１４Ｂ】
0005434953.tif 000020
【図１５】
0005434953.tif 000021
【図１６Ａ】
0005434953.tif 000022
【図１６Ｂ】
0005434953.tif 000023
【図１６Ｃ】
0005434953.tif 000024
【図１７】
0005434953.tif 000025
【図１８】
0005434953.tif 000026