(57)【要約】【課題】アプリケーションが部数やページ単位に印刷ジョブを生成してくるような場合においても、印刷ジョブ毎にキャンセル要求を行わなければならない煩わしさを解消する。【解決手段】アプリケーション１２からの印刷指示に応じて印刷元データから印刷データを加工生成する印刷データ加工生成ステップ（ステップＳ１０５〜ステップＳ１１０）と、印刷データを削除する印刷データ削除ステップ（ステップＳ１１３）と、次に加工される印刷元データが、キャンセル要求に応じて削除された印刷データと連続性があるか否かを判断する加工処理判断ステップ（ステップＳ１０４）と、加工処理判断ステップにおいて、連続性があると判断すると印刷元データを加工することなく削除する（ステップＳ１１３）。【選択図】図２
2009043163.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションからの印刷指示に応じて印刷元データから印刷データを加工生成する印刷データ加工生成部と、
前記印刷データを削除する印刷データ削除部と、
次に加工される印刷元データが、キャンセル要求に応じて削除された印刷データと連続性があるか否かを判断する加工処理判断部と、
前記加工処理判断部が、前記連続性があると判断すると前記印刷元データを加工することなく削除することを特徴とする印刷装置。
【請求項２】
前記加工処理判断部は、
前記削除された印刷データの印刷指示を前記アプリケーションから受信した後、所定時間内に次の印刷指示を受信し、前記次の印刷指示が前記アプリケーションと同じアプリケーションから送信されたものであって、かつ同じファイル名であった場合に前記連続性があると判断することを特徴とする請求項１に記載の印刷装置。
【請求項３】
アプリケーションからの印刷指示に応じて印刷元データから印刷データを加工生成する印刷データ加工生成ステップと、
前記印刷データを削除する印刷データ削除ステップと、
次に加工される印刷元データが、キャンセル要求に応じて削除された印刷データと連続性があるか否かを判断する加工処理判断ステップと、
前記加工処理判断ステップにおいて、前記連続性があると判断すると前記印刷元データを加工することなく削除することを特徴とする印刷制御方法。
【請求項４】
前記加工処理判断ステップにおいて、
前記削除された印刷データの印刷指示を前記アプリケーションから受信した後、所定時間内に次の印刷指示を受信し、前記次の印刷指示が前記アプリケーションと同じアプリケーションから送信されたものであって、かつ同じファイル名であった場合に前記連続性があると判断することを特徴とする請求項３に記載の印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キャンセル処理された印刷データと連続性のある印刷データを自動的に削除する印刷装置及び印刷制御方法に関する。
【背景技術】
【０００２】
印刷処理においては、アプリケーションプログラムがプリンタドライバを通して、印刷データを生成しその印刷データをプリンタドライバがデバイスに転送することにより、簡単に印刷を行うことができる。アプリケーションプログラムによっては印刷元データに部数データを内風して印刷データ生成命令をプリンタドライバに送るアプリケーションもあれば、指示された印刷部数分だけ印刷データ生成命令を発するものも存在する。
【０００３】
特許文献１には、印刷装置のコントローラパネルや印刷装置に接続されたコンピュータから、印刷装置のページバッファに展開された印刷データをページ単位でキャンセルする印刷装置が記載されている。印刷装置はページ単位でスキップして、スキップしたページデータだけを後で印刷することもできるよう構成されている。
【０００４】
また、特許文献２には、ページ毎にキャンセル状態を管理しており、オペレータからページごとや章ごとのキャンセル指示を受けると、印刷データ生成前のページに対するキャンセル指示であれば印刷データの生成を省略し、印刷データ生成後のページに対するキャンセル指示であれば印刷処理の実行を省略する技術が記載されている。
【０００５】
特許文献３には、エラー状態が発生している印刷ジョブをキャンセルする入力をホストコンピュータから行うと、その印刷ジョブのエラー状態を仮想的に解除した後に、印刷データを削除する技術が記載されている。エラー状態の発生によってコマンド解析が途中で中止していても、エラー状態を仮想的に解除することによって、印刷データを確実に削除することができるようになっている。
【０００６】
【特許文献１】特開昭６２−８００６６号公報
【特許文献２】特開２００７−８０８０号公報
【特許文献３】特開２００３−２７１３５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記の特許文献１から３に記載の技術はキャンセル要求された印刷ジョブのみをキャンセルするものである。したがって、複数の印刷ジョブをキャンセルする必要がある場合は、印刷ジョブの数だけキャンセル要求を行わなければならない。
【０００８】
ところで、指示された印刷部数分だけ印刷データ生成命令を発するアプリケーションの場合、プリンタドライバは指定された部数分だけ印刷データを生成するため、これを途中でキャンセルするには指定された部数分のキャンセル要求を行わなければならない。例えば、アプリケーションで作成したファイルを５部数分印刷する印刷命令を受け付けると、アプリケーションは、同じ印刷元データを５部数分だけ生成してプリンタドライバへ送信する。
【０００９】
オペレータは印刷命令を与えてから、何らかの事情により印刷ジョブをキャンセルしたい場合には、生成される５部数分の印刷データを全てキャンセルしなければならない。つまり、生成された５部数分の印刷データに対して１つ１つキャンセル要求しなければならない。
【００１０】
本発明は上記課題を解決するためになされたものであって、アプリケーションが部数やページ単位に印刷ジョブを生成してくるような場合においても、印刷ジョブ毎にキャンセル要求を行わなければならない煩わしさを解消することによって、オペレータの操作を軽減し、印刷処理を効率化することを目的とする。  
【課題を解決するための手段】
【００１１】
上記課題を解決することのできる本発明の印刷装置は、アプリケーションからの印刷指示に応じて印刷元データから印刷データを加工生成する印刷データ加工生成部と、
前記印刷データを削除する印刷データ削除部と、
次に加工される印刷元データが、キャンセル要求に応じて削除された印刷データと連続性があるか否かを判断する加工処理判断部と、
前記加工処理判断部が、前記連続性があると判断すると前記印刷元データを加工することなく削除することを特徴とする。
【００１２】
また、上記課題を解決することのできる本発明の印刷装置の制御方法は、アプリケーションからの印刷指示に応じて印刷元データから印刷データを加工生成する印刷データ加工生成ステップと、
前記印刷データを削除する印刷データ削除ステップと、
次に加工される印刷元データが、キャンセル要求に応じて削除された印刷データと連続性があるか否かを判断する加工処理判断ステップと、
前記加工処理判断ステップにおいて、前記連続性があると判断すると前記印刷元データを加工することなく削除することを特徴とする。
【００１３】
上記構成によれば、印刷データの生成を行うようアプリケーションから印刷命令がなされた場合、先に削除された印刷データとの連続性を検証した上で、印刷データ生成処理を行う。つまり、連続性がある場合には、キャンセル要求を受けなくても自動的に次の印刷元データを削除する。したがって、従来のように連続性のある複数の印刷データに対して個々にキャンセル要求を行わなければならない場合の煩わしさを解消することができる。これによりオペレータの操作を軽減することが可能である。また、連続性がある場合には、印刷元データから印刷データへ加工する処理を行わずに印刷元データを削除するので、無駄な加工処理を行うことがなくなりキャンセル処理を効率よく行うことができる。
【００１４】
また、本発明において、前記加工処理判断部は、
前記削除された印刷データの印刷指示を前記アプリケーションから受信した後、所定時間内に次の印刷指示を受信し、前記次の印刷指示が前記アプリケーションと同じアプリケーションから送信されたものであって、かつ同じファイル名であった場合に前記連続性があると判断することを特徴とする。
【００１５】
また、本発明の前記加工処理判断ステップにおいて、
前記削除された印刷データの印刷指示を前記アプリケーションから受信した後、所定時間内に次の印刷指示を受信し、前記次の印刷指示が前記アプリケーションと同じアプリケーションから送信されたものであって、かつ同じファイル名であった場合に前記連続性があると判断することを特徴とする。
【００１６】
受信した印刷指示が、先に受信した印刷指示と同一のアプリケーションから送信されており、かつ同じファイル名であれば、オペレータが１つのファイルについて部数印刷を指示したものと考えられる。さらに、所定時間内に次の印刷指示を受信した場合には、さらに部数印刷を指示した可能性が高いといえる。このような条件が重なった場合に、前後の印刷データに連続性があるものと認定するので、オペレータが削除したいと考えている印刷元データだけをより確実に削除することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明に係る印刷装置及び印刷制御方法の好適な実施の形態について、図面を参照して詳細に説明する。
【００１８】
図１は、本発明に係る印刷装置の一実施の形態を利用した印刷システムの概略構成を示すブロック図、を説明するための図である。
本実施形態の印刷システムは、ホストコンピュータ１０と、該ホストコンピュータ１０が印刷データを転送する印刷デバイスとしてのプリンタ３０と、で構成されている。
【００１９】
ホストコンピュータ１０は、例えば、マイクロソフト社の表計算ソフトであるｅｘｃｅｌなどのアプリケーションソフトウェアであるアプリケーション１２と、アプリケーション１２で作成した印刷元データを格納する印刷元データ記憶部１１と、印刷元データ記憶部１１から指定された印刷元データを抽出し印刷データに加工処理して印刷データ１５（図３参照）を生成するプリンタドライバ２０と、プリンタドライバ２０が生成した印刷データ１５を記憶する印刷データ記憶部１４と、印刷データ１５をプリンタ３０へ送信し、プリンタ３０から制御情報を受信する送受信部１３と、を含む。
【００２０】
プリンタドライバ２０は、印刷元データ記憶部１１から指定された印刷元データを抽出し、プリンタ３０に適合する所定の加工処理により印刷データ１５を生成する印刷データ加工生成部２１と、印刷データをキャンセルすべきかどうかを判断する加工処理判断部２２と、印刷データ生成時にキャンセル命令がなされた場合に、印刷データを削除する印刷データ削除部２３とを備える。
【００２１】
一方、プリンタ３０は、ホストコンピュータ１０から印刷データ１５を受信してホストコンピュータ１０へ制御情報を送信する送受信部３１と、ホストコンピュータ１０から受信した印刷データ１５を一旦格納するプリントバッファ３２と、プリントバッファ３２に格納した印刷データ１５の展開処理の開始を指示し、印字起動処理の開始を要求する印刷制御部３３とを含む。
【００２２】
次に、本実施形態の印刷システムにおける印刷データ生成方法について図２を参照して説明する。図２は、本実施形態の印刷システムにおいて印刷データを削除する処理方法について説明するためのフローチャートである。
【００２３】
なお、本実施形態のアプリケーション１２（マイクロソフト社のｅｘｃｅｌ）は、複数部数分の印刷要求を受け付けると、部単位で印刷元データを生成しプリンタドライバへ印刷命令として送信する。例えば、アプリケーション１２で作成したファイルを５部数分印刷する印刷要求を受け付けると、アプリケーション１２は、同じ印刷元データを５部数分の印刷命令を生成してそれぞれプリンタドライバ２０へ送信する。
【００２４】
このため、オペレータは印刷命令を与えてから、何らかの事情により印刷処理をキャンセルしたい場合には、生成される５部数分の印刷命令を全てキャンセルしなければならない。つまり、生成された５つの印刷データを１つ１つキャンセルしなければならない。
【００２５】
本実施形態では、はじめに印刷データがキャンセルされると、その印刷データと連続性のある印刷元データは、キャンセルする印刷元データであると判断して、自動的にキャンセルすることができるようになっている。連続性のある印刷元データであれば印刷データへ変換することなく自動的にキャンセルするので、オペレータが１つ１つキャンセル処理を指示しなければならない煩雑さを解消することができる。以下では、はじめにキャンセルされた印刷データと連続性のある印刷元データを自動的にキャンセルする方法について説明する。
【００２６】
まず、ホストコンピュータ１０において、アプリケーション１２から印刷命令が成され（ステップＳ１０１）、アプリケーション１２で指定している印刷データを格納するファイルが印刷データ記憶部１４に準備される。
【００２７】
次に、アプリケーション１２からプリンタドライバ２０へ印刷元データ記憶部１１に記憶されている印刷元データが渡される（ステップＳ１０２）。印刷データ加工生成部２１が保持している印刷データキャンセルフラグの状況を確認する。印刷データキャンセルフラグは、初期設定ではＯＦＦ状態に設定されており、印刷データがキャンセルされるときに、ＯＦＦ状態からＯＮ状態へ変化する。したがって、印刷データキャンセルフラグが初期状態のときに（ＯＦＦ状態のとき）、印刷命令を受けるとステップＳ１０５のステップへ移行する（ステップＳ１０３：Ｎｏ）。
【００２８】
アプリケーション１２からプリンタドライバ２０へ印刷開始要求であるＤｒｖＳｔａｒｔＤｏｃが通知されると、プリンタドライバ２０は、印刷データ加工生成部２１において、受け取った印刷元データを印刷データに変換するための加工を開始する処理を行う。アプリケーション１２からＤｒｖＳｔａｒｔＤｏｃが通知されない場合には、加工処理判断部２２は加工処理が正常に終了できなかったと判断して（ステップＳ１０５：Ｎｏ）、印刷データキャンセルフラグをＯＦＦ状態からＯＮ状態へ書き換え(ステップＳ１１２)、印刷データ削除部２３が、印刷データ記憶部１４に準備されたファイルを削除する（ステップＳ１１３）。
【００２９】
一方、加工処理が成功したと判断した場合（ステップＳ１０５：Ｙｅｓ）は、処理した印刷データを印刷データ記憶部１４のファイルに書き込む（図３で示すＳｔａｒｔＤｏｃ分データ１５ａ）。
【００３０】
次に、アプリケーション１２からプリンタドライバ２０へ１頁分の印刷データの処理開始要求であるＤｒｖＳｔａｒｔＰａｇｅが通知され、印刷データ加工生成部２１は、印刷元データから１頁分の印刷元データの設定情報を抽出し、１頁分の印刷データの設定情報に加工を開始する処理を行う。
【００３１】
ここで、アプリケーション１２からＤｒｖＳｔａｒｔＰａｇｅが通知されない場合には、加工処理判断部２２は加工処理が正常に終了できなかったと判断して（ステップＳ１０６：Ｎｏ）、印刷データキャンセルフラグをＯＦＦ状態からＯＮ状態へ書き換え(ステップＳ１１２)、印刷データ削除部２３が、印刷データ記憶部１４に準備されたファイルを削除する（ステップＳ１１３）。一方、加工処理判断部２２は、加工処理が成功したと判断した場合（ステップＳ１０６：Ｙｅｓ）は、処理した１ページ分の印刷データの設定情報をファイルに書き込む（図３で示すＳｔａｒｔＰａｇｅ分データＤ１ａ）。
【００３２】
次に、アプリケーション１２からプリンタドライバ２０へ印刷元データを印刷データに変換する処理の開始要求であるＤｒｖＷｒｉｔｅＰｒｉｎｔｅｒが通知され、印刷データ加工生成部２１は、１ページ分の印刷元データを印刷データに変換する処理を行う。
【００３３】
アプリケーション１２からＤｒｖＷｒｉｔｅＰｒｉｎｔｅｒが通知されない場合には、加工処理判断部２２は加工処理が正常に終了できなかったと判断して（ステップＳ１０７：Ｎｏ）、印刷データキャンセルフラグをＯＦＦ状態からＯＮ状態へ書き換え(ステップＳ１１２)、印刷データ削除部２３が、印刷データ記憶部１４に準備されたファイルを削除する（ステップＳ１１３）。一方、加工処理判断部２２は、加工処理が成功したと判断した場合（ステップＳ１０７：Ｙｅｓ）は、処理した１ページ分の印刷データをファイルに書き込む（図３で示すページの描画データＤ１ｂ）。
【００３４】
次に、アプリケーション１２からプリンタドライバ２０へ１ページ分の印刷データ加工処理の終了要求であるＤｒｖＥｎｄＰａｇｅが通知され、加工処理判断部２２は、１ページ分の印刷データ加工の終了処理が成功したかどうかを判断する（ステップＳ１０８）。
【００３５】
アプリケーション１２からＤｒｖＥｎｄＰａｇｅが通知されない場合には、加工処理判断部２２は加工処理が正常に終了できなかったと判断して（ステップＳ１０８：Ｎｏ）、印刷データキャンセルフラグをＯＦＦ状態からＯＮ状態へ書き換え(ステップＳ１１２)、印刷データ削除部２３が、印刷データ記憶部１４に準備されたファイルを削除する（ステップＳ１１３）。一方、加工処理判断部２２は、加工処理が成功したと判断した場合（ステップＳ１０８：Ｙｅｓ）は、処理したデータをファイルに書き込む（図３で示すＥｎｄＰａｇｅ分データＤ１ｃ）。
【００３６】
次に、アプリケーション１２は、印刷ページの終りを認識するとＤｒｖＥｎｄＤｏｃをプリンタドライバ２０に対して通知する。加工処理判断部２２は、すべてのページの変換処理が終了したかどうかを判断し（ステップＳ１０９）。全てのページの変換処理が終了していない場合には（ステップＳ１０９：Ｎｏ）、ステップＳ１０６に戻り続きの印刷ページの加工処理を実行する。
【００３７】
アプリケーション１２からＤｒｖＥｎｄＤｏｃが通知されない場合には（ステップＳ１１０：Ｎｏ）、加工処理判断部２２は加工処理が正常に終了できなかったと判断して、印刷データキャンセルフラグをＯＦＦ状態からＯＮ状態へ書き換え(ステップＳ１１２)、印刷データ削除部２３が、印刷データ記憶部１４に準備されたファイルを削除する（ステップＳ１１３）。一方、加工処理判断部２２は印刷データの加工を終了する処理が成功したと判断した場合（ステップＳ１１０：Ｙｅｓ）は、印刷データキャンセルフラグをＯＦＦ状態にし、処理したデータをファイルに書き込み処理を終了する（図３で示すＥｎｄＤｏｃ分データ１５ｂ）。
【００３８】
上記説明した処理によれば、最初に１部目の印刷命令がなされた後、何れかのステップにおいて、印刷処理のキャンセル要求があると、ステップＳ１１２で印刷データキャンセルフラグがＯＦＦ状態からＯＮ状態へ書き換えられ、ステップＳ１１３で印刷データ記憶部１４に準備されたファイルが削除される。すると、次に２部目の印刷命令がなされたときには（ステップＳ１０１）、印刷データキャンセルフラグはＯＮ状態であるため、ステップＳ１０３において印刷データキャンセルフラグ＝ＯＮであると判断する（ステップＳ１０３：Ｙｅｓ）。
【００３９】
印刷データキャンセルフラグがＯＮ状態であれば、加工処理判断部２２は、次に処理している２部目の印刷元データと先にキャンセルした１部目の印刷データとが連続性のあるデータであるか否かを判断する（ステップＳ１０４）。ここで、連続性があるデータであるか否かは、短時間の間に同じアプリケーションから同じジョブファイル名で印刷命令がなされたかを基準に判断する。短時間とは、例えば１[ｓｅｃ]のように短い時間であることが好ましい。
【００４０】
通常、１[ｓｅｃ]の間に同じアプリケーションから同じジョブファイル名で印刷命令がなされた場合には、先に処理された印刷データと同一のデータであって複数部数印刷を指示したものと考えられる。そして、例えば５部分の部数印刷を指示して、１部目の印刷データがキャンセルされていた場合には、後に続く４部分もキャンセルする必要があると考えられる。このため、ステップＳ１０４で連続性があると判断すると、印刷データキャンセルフラグはＯＮ状態にしたまま（ステップＳ１１２）、次の2部目の印刷元データを変換することなく削除する（ステップＳ１１３）。これを３部目、４部目、５部目のデータについても同様に処理することで無駄な変換処理を行うことなく、自動的に５部分のデータを削除することができる。    
【図面の簡単な説明】
【００４１】
【図１】本実施形態の印刷システムの制御ブロック図である。
【図２】本実施形態にかかる印刷システムにおいて印刷データを削除する処理方法について説明するためのフローチャートである。
【図３】本実施形態の印刷システムによって生成される印刷データを示した図である。
【符号の説明】
【００４２】
１０：ホストコンピュータ，１１：印刷元データ記憶部、１２：アプリケーション、１３：送受信部、１４：印刷データ記憶部、２０：プリンタドライバ、２１：印刷データ加工生成部、２２：加工処理判断部、２３：印刷データ削除部、３０：プリンタ、３１：送受信部、３２：プリントバッファ、３３：印刷制御部
【図１】
2009043163.tif 000003
【図２】
2009043163.tif 000004
【図３】
2009043163.tif 000005