JP2016137664A - 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム - Google Patents
印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム Download PDFInfo
- Publication number
- JP2016137664A JP2016137664A JP2015014652A JP2015014652A JP2016137664A JP 2016137664 A JP2016137664 A JP 2016137664A JP 2015014652 A JP2015014652 A JP 2015014652A JP 2015014652 A JP2015014652 A JP 2015014652A JP 2016137664 A JP2016137664 A JP 2016137664A
- Authority
- JP
- Japan
- Prior art keywords
- print job
- image processing
- processing
- printing
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1211—Improving printing performance
- G06F3/1212—Improving printing performance achieving reduced delay between job submission and print start
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Abstract
【課題】膨大な描画命令を含む印刷ジョブに対する予測処理にかかる時間を軽減する方法を提供する。【解決手段】印刷ジョブを受信する受信手段と、受信された印刷ジョブに対して、印刷ジョブの印刷に要する時間の予測値を求める予測処理を開始する開始手段と、受信された印刷ジョブに対する予測処理に要している時間が閾値を越えるか否かを判定する判定手段と、予測処理に要する時間が閾値を越えると判定されたことに基づいて、印刷ジョブに対する予測処理をキャンセルするキャンセル手段と、を有する。【選択図】図5
Description
本発明は、印刷ジョブの印刷に要する時間の予測値を求める技術に関する。
特許文献1は、印刷ジョブを受け付けた順にその印刷ジョブの印刷に要する時間(印刷時間)の予測値を求める印刷装置を開示する。
印刷ジョブに膨大な数の描画命令が含まれていると、その印刷ジョブに対する印刷時間の予測値を算出する処理(予測処理)に時間が多くかかる。このような膨大な数の描画命令を含む印刷ジョブを印刷装置が受け付けた場合に、1つの印刷ジョブの予測処理によって計算リソース(例えばCPUやメモリなどのハードウェアリソース)が占有されてしまう。そのため、そのような予測処理の実行中に、印刷ジョブの印刷処理などの他の処理の実行が指示された場合に、該他の処理に利用できる計算リソースが限られてしまう。
またあるいは、膨大な数の描画命令を含む印刷ジョブを印刷装置が受け付けた後にその印刷装置が続けて別の印刷ジョブを受け付けた場合に、次のようなことが起こりうる。先に受け付けられた印刷ジョブの予測処理に時間がかかり過ぎて、後から受け付けた印刷ジョブの予測処理が始められない。
特許文献1に開示される印刷装置は、1つの印刷ジョブの印刷時間の予測値を求め終わるまで予測処理を継続し続けるため、上記の不都合を解決する手段を開示してはいない。
本発明の課題は、上記事情による不都合の少なくとも1つを解決することを目的とする。
本発明の画像処理装置は、印刷ジョブを受信する受信手段と、前記受信された印刷ジョブに対して、印刷ジョブの印刷に要する時間の予測値を求める処理を開始する開始手段と、前記受信された印刷ジョブに対する前記処理に要している時間が閾値を越えるか否かを判定する判定手段と、前記時間が前記閾値を越えると判定されたことに基づいて、前記印刷ジョブに対する前記処理をキャンセルするキャンセル手段と、を有することを特徴とする。
印刷ジョブに対する予測処理に要している時間がかかり過ぎることによる不都合を解決する。
(実施例1)
図1は、画像処理装置の一例としての画像形成装置1のハードウェア構成を示すブロック図である。画像形成装置1は、コントローラ100、プリンタエンジン110、操作パネル112を有する。コントローラ100は、画像形成装置1の動作を統括的に制御する。プリンタエンジン110は、コントローラ100から送信された画像データに基づいて画像を紙などのシート上に印刷する。操作パネル112は、コントローラ100から送信された画像データに基づいて画像を表示する。なおプリンタエンジン110は、電子写真方式のものでも、インクジェット方式のものでも、その他方式のものでも、シートに画像を印刷できる機構をもつものであれば何でも良い。また操作パネル112は、液晶ディスプレイなどの一般的なディスプレイであり、ユーザーによるタッチ操作を検出可能なタッチスクリーンであっても良い。
図1は、画像処理装置の一例としての画像形成装置1のハードウェア構成を示すブロック図である。画像形成装置1は、コントローラ100、プリンタエンジン110、操作パネル112を有する。コントローラ100は、画像形成装置1の動作を統括的に制御する。プリンタエンジン110は、コントローラ100から送信された画像データに基づいて画像を紙などのシート上に印刷する。操作パネル112は、コントローラ100から送信された画像データに基づいて画像を表示する。なおプリンタエンジン110は、電子写真方式のものでも、インクジェット方式のものでも、その他方式のものでも、シートに画像を印刷できる機構をもつものであれば何でも良い。また操作パネル112は、液晶ディスプレイなどの一般的なディスプレイであり、ユーザーによるタッチ操作を検出可能なタッチスクリーンであっても良い。
図2も用いて各ハードウェア資源について説明する。
コントローラ100は、CPU(Central Processing Unit)102、RAM(Random Access Memory)103、ネットワークI/F(Interface)104、ROM(Read Only Memory)106、HDD(Hard Disk Drive)107、RIP(Raster Image Processor)108、デバイスI/F109、操作パネルI/F111をハードウェア資源として有する。
ROM106には、図2のブロック図で示されるソフトウェア構成を実現するためのコンピュータプログラムが記憶されており、そのコンピュータプログラムをCPU102がRAM103上で実行することで、そのソフトウェア構成が実現される。そのコンピュータプログラムに従って動作を実行するCPU102が、各部の動作を統括的に制御する。
ネットワークI/F104は、ネットワークN1と接続し、そのネットワークN1を介してホストPC(Personal Computer)などの外部装置からPDL(Page Description Language)データを受信する。ネットワークI/F104は、受信されたPDLデータを印刷ジョブとしてHDD107へ記憶する。これらの処理は、受信部200がPDLデータを外部装置から受信し、記憶部201に印刷ジョブとして記憶することに相当する。
なおプログラムに従って動作するCPU102およびRAM103によって実現される解釈部202、DL生成部(中間データ生成部)203は、この記憶された印刷ジョブを処理することでDL(Display List)と呼ばれる中間データを生成する。すなわち、解釈部202は、印刷ジョブとしてのPDLデータに含まれる1つまたは複数の描画命令を解釈し、その解釈結果をDL生成部203に受け渡す。そしてDL生成部203は、解釈部202から受け渡された解釈結果からDLを生成し、生成されたDLを後述のビットマップ生成部204に受け渡す。この受け渡しはDL生成部203として機能するCPU102が、DLをRAM103上で生成し、そのRAM103上のDLをRIP108に受け渡すことに相当する。
RIP108は、受け渡されたDLをラスタライズすることで、ページのビットマップ形式の画像データ(ビットマップ画像)を生成する。そしてRIP108は、生成された画像データをデバイスI/F109を介してプリンタエンジン110へ送信する。この処理は、ビットマップ生成部204がDL生成部203から受け取ったDLからビットマップの画像データを生成してプリンタエンジン110に送信する処理に相当する。
なお、プログラムに従って動作するCPU102およびRAM103は、図2の予測処理部205として機能する。この予測処理部205は、上記で説明した印刷ジョブの印刷の前に、予測処理を行う。
具体的には、予測処理部205は、記憶部201に記憶されている印刷前の印刷ジョブであってまだ予測処理が行われていない印刷ジョブに対して予測処理を行う。特に予測処理部205は、予測処理が行われていない印刷ジョブを記憶部201から取得して処理キュー207に追加する取得部206と、処理キュー207に追加された順に印刷ジョブに対して予測処理を印刷ジョブごとに実行する処理部208を有する。なお処理キュー207はFIFO(First In First Out)構造のキューとして実現されており、予測処理の実行対象となる印刷ジョブを記憶する。そして予測処理部205は、予測処理が完了したことで求められる印刷ジョブの予測時間を示す情報を、記憶部201に記憶されている対応する印刷ジョブに関連付けて記憶部201に記憶する。予測処理の詳しい方法は、図3を用いて後述する。
また、プログラムに従って動作するCPU102、およびそのCPU102に制御された操作パネルI/F111は、図2の予測時間表示部209として機能する。この予測時間表示部209は、記憶部201に記憶されている印刷ジョブを示す情報(例えばジョブ名)と、その印刷ジョブに関連付けられて記憶されている予測時間を示す情報(例えば秒数)とに基づいて操作パネル112に表示させる画像データを生成する。そして予測時間表示部209は、その画像データを操作パネルI/F111を介して操作パネル112に送信して、その印刷ジョブとその予測時間とが関連付けられた画像を操作パネル112上に表示させる。
以上が、画像形成装置1のハードウェアおよびソフトウェア構成についての説明である。このような構成を持つ画像形成装置1が、印刷ジョブに対する予測処理を実行する様子を以下で説明する。特徴的なのは、ある印刷ジョブに対する予測処理に要している時間が閾値時間(タイムアウト時間)を越えたことを検知して、その印刷ジョブに対する予測処理がキャンセル(中止)されて後続の印刷ジョブに対する予測処理が開始されることである。
まずは予測処理部205が印刷ジョブの予測時間を求める方法について図3を用いて説明する。図3は、印刷ジョブの処理の流れを示した図であり、処理の内容は前述した通りである。すなわち、印刷ジョブの処理は4つの処理(PDL解釈、DL生成、ビットマップ生成、印刷)に分けて考えることができる。予測処理部205は、大別された各処理に要する時間の予測値(予測時間)を求める。まず、処理部208は、取得部206によって処理キュー207に記憶された印刷ジョブのうち、処理キュー207の先頭の印刷ジョブに対して予測処理を開始する。具体的には、処理部208は、対象の印刷ジョブのPDLデータの各描画命令を実際に解釈し、その解釈にかかった実時間を予測時間T1とする。またこの際に処理部208は、各解釈結果を保持しておく。
次に処理部208は、DL生成処理の予測時間T2を、保持された解釈結果に基づいて求める。例えば解釈結果の数の合計に係数を乗じたものを予測時間T2とする。
次に処理部208は、ビットマップ生成処理の予測時間T3を、保持された解釈結果に基づいて求める。例えば処理部208は、各解釈結果に対応するオブジェクト(例えば図形やビットマップイメージなど)が互いに重なっている場合の互いに重なっているオブジェクトの数に係数を乗じた値(値1)を求める。また処理部208は、オブジェクトがビットマップイメージである場合のイメージを構成する画素数に別の係数を乗じた値(値2)を求める。そして処理部208は、値1と値2との合計値を求める。そしてRIP108の性能に対応する計数を、合計値に乗じたものを予測時間T3とする。
そして処理部208は、印刷ジョブによって印刷されるシート枚数と、プリンタエンジン110のエンジンスピードの係数とに基づいて、印刷処理の予測時間T4を求める。エンジンスピードの係数とは例えば1枚のシートの印刷にかかる時間である。例えば、印刷されるシート枚数に、エンジンスピードの係数を乗じたものが予測時間T4となる。
そして処理部208は、予測時間T1〜T4の合計値を最終的な予測時間として求める。
以上が、本実施例の予測処理の説明であるが、予測時間を求める方法であれば上記の予測処理に限らず他の公知の方法でも良い。
次に図4を用いて、予測処理における、記憶部201に記憶されている印刷ジョブのリスト(印刷ジョブリスト)および、その印刷ジョブリストに対する処理キュー207の様子を説明する。
図4(a)は、受信部200が受信した順に記憶部201に記憶した印刷ジョブのリストを左に示し、記憶部201に記憶された印刷ジョブのうちで予測処理がまだ行われていない印刷ジョブが追加された処理キュー207を右に示す。印刷ジョブリストは1レコードに以下の4項目を含む。印刷ジョブの受信順、その印刷ジョブの識別子(例えば印刷ジョブ名)、その印刷ジョブの予測時間(あるいはそれを示す情報)、その印刷ジョブの予測処理がキャンセルされたかを示すフラグである。予測時間の「N/A(Not Available)」は、その印刷ジョブの最終的な予測時間が求められていないことを示す。キャンセルフラグの「FALSE」は、その印刷ジョブの予測処理が1度もキャンセルされていないことを示し、逆に「TRUE」は、その印刷ジョブの予測処理が少なくとも1度はキャンセルされたことを示す。
図4(a)の印刷ジョブリストは、印刷ジョブA、B、Cが受信された直後を示す。すなわち、ジョブA、B、Cが順に受信され、各印刷ジョブの予測時間がまだ求められておらず、なおかつ、一度も予測処理がキャンセルされていないことを示す。すなわち、各印刷ジョブは、まだ予測処理が行われていない。そこで、取得部206は、印刷ジョブリストを参照して、「予測時間」の項目が、予測時間がまだ求められていないことを示す「N/A」である印刷ジョブを、受信順に処理キュー207に追加する。その追加後の様子が図4(a)の右に示される。まず処理部208は、処理キュー207の先頭にある印刷ジョブAに対して予測処理を開始する。
図4(b)は、印刷ジョブAの予測処理が閾値時間(例えば180秒)以内に完了した後の様子を示す。印刷ジョブリストの印刷ジョブAのレコードには予測処理によって求められた予測時間「20秒」が含まれ、処理キュー207には予測処理が完了した印刷ジョブAが削除された様子を示す。この状態になると処理部208は、処理キュー207の先頭にある印刷ジョブBに対して予測処理を開始する。すると、ここで印刷ジョブBに含まれる描画命令数が膨大であるために、印刷ジョブBに対する予測処理に要している時間が閾値時間を越えてしまったとする。この場合に、処理部208は、印刷ジョブBに対する予測処理をキャンセルし、印刷ジョブリストの印刷ジョブBのレコードのキャンセルフラグをTRUEに設定する。そして処理部208は、処理キュー207の先頭から印刷ジョブBを削除する。この処理の結果得られる印刷ジョブリストと処理キュー207を図4(c)に示す。
図4(c)のような状態になると、処理部208は、処理キュー207の先頭の印刷ジョブCに対して予測処理を行う。その結果、処理部208は、印刷ジョブCの予測時間を求め、印刷ジョブリストの印刷ジョブCのレコードに設定し、印刷ジョブCを処理キュー207から削除する。この結果を図4(d)に示す。
以上によって、時間がかかり過ぎている印刷ジョブBに対する予測処理をキャンセル(タイムアウト)することで、後続の別の印刷ジョブCに対して予測処理を行うことができる。また後続に予測処理を行うべき別の印刷ジョブがないとしても、印刷ジョブBに対する予測処理に消費されているCPU102のリソース(演算能力)を、他の処理(例えば別の印刷ジョブの印刷処理)に回すことができる。
この一連の処理を実現するための処理フローを図5に示す。図5は、予測処理部205によって実行される。
ステップS501では、取得部206が印刷ジョブリストを参照して記憶部201に記憶されている印刷ジョブのうちの新たに受信・記憶された印刷ジョブを、処理キュー207に追加する。具体的には、取得部206が印刷ジョブリストの各レコードの「予測時間」の項目と、「キャンセルフラグ」の項目を確認し、「予測時間」の項目が「N/A」且つ「キャンセルフラグ」の項目が「FALSE」を示すレコードの印刷ジョブを見つける。そして取得部206は、見つけた各印刷ジョブを印刷ジョブリストの受信順に、処理キュー207に追加する。これは図4(a)の状況に対応する。
ステップS502では、処理部208は、処理キュー207の先頭の印刷ジョブに対して予測処理を開始する。
ステップS503では、処理部208は、現在の印刷ジョブに対する予測処理が完了したかを判定し、完了していれば処理をステップS504へ進め、そうでなければ処理をステップS505へ進める。なおステップS503の判定処理は、例えば印刷ジョブに含まれる描画命令を一定数処理する毎のタイミングで行われる。また別の例ではステップS503の判定処理は、予め設定されている時間間隔毎のタイミングで行われても良く、以上述べたタイミングだけに限定されない。
ステップS504では、処理部208は、予測処理によって求められた予測時間を、印刷ジョブリストにおける現在の印刷ジョブのレコードの「予測時間」の項目に設定する。そして、処理部208は、その印刷ジョブを処理キュー207の先頭から削除する。そして処理はステップS501へ戻る。これは図4(b)の状況に対応する。
一方ステップS505では、処理部208は、現在の印刷ジョブに対する予測処理に要している時間(これまでに掛かっている時間)が閾値時間(例えば180秒)を越えたかどうかを判定する。越えていれば処理はステップS506へ進み、そうでなければ処理はS503へ戻る。
ステップS506では、処理部208は、現在の印刷ジョブに対する予測処理を中止(キャンセル)し、その印刷ジョブを処理キュー207から削除する。このとき処理部208は、印刷ジョブリストにおける現在の印刷ジョブのレコードの「キャンセルフラグ」の項目に「TRUE」を設定する。そして、処理はステップS501へ戻る。以上の処理によって、予測処理に時間がかかりすぎる印刷ジョブについては、予測処理をタイムアウトさせ、後続の印刷ジョブがあればその後続の印刷ジョブの予測処理を開始可能にする。これは図4(c)の状況に対応する。
以上の処理フローによって求められた各印刷ジョブの予測時間は、図6のような画面で操作パネル112に表示される。具体的には、予測時間表示部209は、操作パネル112を介して各ジョブの予測時間を表示する指示をユーザーから受け付ける。予測時間表示部209は、そのユーザー指示を受け付けたことに応じて、印刷ジョブリストに含まれる各印刷ジョブの情報に基づいて画像データを生成する。特に予測時間表示部209は、印刷ジョブの識別子である印刷ジョブ名、印刷ジョブの予測時間の情報をもとに、画像データを生成する。そして予測時間表示部209は、生成された画像データを操作パネル112へ送信し、操作パネル112がその画像データに基づいて図6のような画面を表示するように操作パネル112を制御する。生成される画像データのフォーマットは特定のものに限定されない。重要なのは、どの印刷ジョブがどれくらいの予測時間となっているのかがユーザーにとって理解できる情報を、操作パネル112に表示することである。例えば、表示される画像において、1レコードに印刷ジョブ名と予測時間とが対応していればよい。
この予測時間表示部209による表示の別の例として次のようなものも考えられる。例えば、予測時間表示部209は、上記のユーザー指示を受け付けたことに応じて、上記の印刷ジョブの識別子である印刷ジョブ名、印刷ジョブの予測時間の情報の他に、キャンセルフラグの情報も、印刷ジョブリストから取得する。そして予測時間表示部209は、各印刷ジョブについて、予測時間が求められているかを確認し、予測時間が既に求められていればその予測時間がその印刷ジョブ名と対応付いた画像データを生成する。この際に、予測時間表示部209は、予測時間の情報が「N/A」であることが確認された場合に、さらに印刷ジョブの「キャンセルフラグ」の項目を確認する。そして「キャンセルフラグ」の項目が「TRUE」であれば、その印刷ジョブがタイムアウトによって予測時間が求められていないので、予測時間表示部209は、その印刷ジョブ名と「N/A」とが対応づいた画像データを生成する。そうではなく、「キャンセルフラグ」の項目が「FALSE」であれば、その印刷ジョブに対する予測処理がまだ行われていないということなので、予測時間表示部209は、その印刷ジョブ名と「予測中」という表示とが対応づいた画像データを生成する。最後に予測時間表示部209は、生成された画像データを前述のように操作パネル112へ送信することで、予測時間の画面を操作パネル112に表示させる。
(実施例2)
実施例1では、印刷時間の予測処理に時間がかかりすぎる印刷ジョブについて、予測処理をキャンセルし、後続の印刷ジョブに対する予測処理が開始可能な状況を作り出した。これによって、なるべく多くの印刷ジョブの予測時間を短時間で多く求めることができるようになるが、以前に予測処理をキャンセルした印刷ジョブについても予測処理を再度開始できるようにすれば便利である。この要求を満たす1つの方法は、1度も予測処理が行われていない印刷ジョブが存在しない状況に限って、処理部208は、予測処理が以前にキャンセルされた印刷ジョブを処理キュー207へ追加する。具体的には図5のステップS501の処理の際、処理部208は、前述の処理に加えてさらに次の処理を行う。印刷ジョブリストにおける「キャンセルフラグ」が「FALSE」である全レコードに予測時間が設定されている場合、「キャンセルフラグ」が「TRUE」であるレコードの印刷ジョブのうち1つを処理キュー207に追加する。この追加される印刷ジョブは、例えば受信順が最も早い印刷ジョブである。
実施例1では、印刷時間の予測処理に時間がかかりすぎる印刷ジョブについて、予測処理をキャンセルし、後続の印刷ジョブに対する予測処理が開始可能な状況を作り出した。これによって、なるべく多くの印刷ジョブの予測時間を短時間で多く求めることができるようになるが、以前に予測処理をキャンセルした印刷ジョブについても予測処理を再度開始できるようにすれば便利である。この要求を満たす1つの方法は、1度も予測処理が行われていない印刷ジョブが存在しない状況に限って、処理部208は、予測処理が以前にキャンセルされた印刷ジョブを処理キュー207へ追加する。具体的には図5のステップS501の処理の際、処理部208は、前述の処理に加えてさらに次の処理を行う。印刷ジョブリストにおける「キャンセルフラグ」が「FALSE」である全レコードに予測時間が設定されている場合、「キャンセルフラグ」が「TRUE」であるレコードの印刷ジョブのうち1つを処理キュー207に追加する。この追加される印刷ジョブは、例えば受信順が最も早い印刷ジョブである。
さらに、ステップS505の判定を、次のように変更する。印刷ジョブに対する予測処理に要している時間が閾値時間を越え、且つ、その印刷ジョブのレコードの「キャンセルフラグ」が「FALSE」であれば、処理をステップS506へ進め、そうでなければ、処理をS503へ戻す。
このように図5のフローチャートを変更することで、以前に予測処理がタイムアウトした印刷ジョブについても再度予測処理を走らせ、完了させることができる。
(実施例3)
実施例2では、以前にキャンセルされた印刷ジョブに対して予測処理を再度開始すると、その完了まで他の印刷ジョブの予測処理を開始することができない。本実施例では、再予測処理を行っている際に、新たな印刷ジョブが受信されているならば、その印刷ジョブに対する予測処理を優先させるように制御する。なおこの制御は、印刷ジョブのキャンセルフラグの監視および処理キュー207内での印刷ジョブのソートによって実行される。
実施例2では、以前にキャンセルされた印刷ジョブに対して予測処理を再度開始すると、その完了まで他の印刷ジョブの予測処理を開始することができない。本実施例では、再予測処理を行っている際に、新たな印刷ジョブが受信されているならば、その印刷ジョブに対する予測処理を優先させるように制御する。なおこの制御は、印刷ジョブのキャンセルフラグの監視および処理キュー207内での印刷ジョブのソートによって実行される。
図7に示されるフローチャートは、新たな印刷ジョブに対する予測処理を、以前に予測処理がキャンセルされた印刷ジョブに対する予測処理よりも優先させつつも、以前に予測処理がキャンセルされた印刷ジョブに対する予測処理の再度の実行を可能とする。
ステップS701では、取得部206が図5のステップS501と同様の処理を行う。
ステップS702では、予測処理がまだ行われていない印刷ジョブがあるかが判定される。つまり処理部208は、印刷ジョブリストの「キャンセルフラグ」に「FALSE」が設定されている印刷ジョブが処理キュー207に含まれているかを判定する。そのような印刷ジョブが処理キュー207に含まれていれば、処理はステップS703に進み、そうでなければ処理はステップS705に進む。ここでステップS705に進む理由は、以前に予測処理がキャンセルされた印刷ジョブに対して、予測処理を再度実行するためである。
ステップS703およびステップS704では、予測処理がまだ行われていない印刷ジョブに対して予測処理を優先的に実行するために、そのような印刷ジョブを処理キューの先頭にソートするための処理が行われる。
具体的にはステップS703では、処理部208は、処理キュー207の先頭の印刷ジョブが以前に予測処理が行われた印刷ジョブであるかを判定する。この判定処理は処理キュー207の先頭の印刷ジョブの「キャンセルフラグ」が「TRUE」であるか否かを判定することで行われる。「キャンセルフラグ」が「TRUE」であればその印刷ジョブは以前に予測処理が実行されているので、ステップS704にて処理部208はその印刷ジョブを処理キュー207の最後に移し替える。そうでなければ、処理キュー207の先頭には予測処理が行われていない印刷ジョブがあるので、その印刷ジョブに予測処理を行うべく処理をステップS705へ進める。
ステップS705、S706、S707、S708では、処理部208は、図5のステップS502、S503、S504、S505と同様の処理を行う。
ここでステップS708において予測処理のタイムアウトが発生した場合に、処理部208は、予測処理がまだ実行されていない印刷ジョブが新たに受信されているのかを確認するための処理を、ステップS709、S710にて行う。具体的には、ステップS709において処理部208は、ステップS701と同様の処理を行う。そして処理部208は、ステップS710において、処理キュー207に、予測処理がまだ行われていない印刷ジョブがあるかを判定する。処理内容はステップS702と同様である。処理キュー207に予測処理がまだ行われていない印刷ジョブがなければ、処理はステップS711へ移行する。そうでなければ(つまり処理キュー207に予測処理がまだ行われていない印刷ジョブが存在すれば)、処理はステップS712へ進む。
ステップS711では、処理部208は、現在の印刷ジョブに対する予測処理で用いられる閾値時間を所定時間分だけ増やす。これによって、処理部208は、予測処理を継続させる。このようにして増やされた閾値時間は、ステップS707にて現在の印刷ジョブが処理キュー207から削除される際、あるいは、ステップS712にて現在の印刷ジョブが処理キュー207の最後に移される際に、初期値の閾値時間に戻される。なお予測処理の継続させるための制御方法はこれだけに限られず、例えば予測処理に要している時間を「ゼロ(0)」にリセットしても良い。
ステップS712では、処理部208は、現在の印刷ジョブに対する予測処理をキャンセルし、印刷ジョブリストにおける現在の印刷ジョブのレコードの「キャンセルフラグ」に「TRUE」を設定する。そして処理部208は、現在の印刷ジョブを処理キュー207の最後の印刷ジョブの後に移し替える。すなわち、ステップS709、S710、S712の一連の処理の目的は、現在の印刷ジョブの予測処理中に新たな印刷ジョブが受信された場合、その印刷ジョブに対して予測処理を優先的に行うべく、現在の印刷ジョブの予測処理をキャンセルすることである。そして、現在の印刷ジョブを処理キュー207の最後に移し替えることで予測処理の再度の開始を可能にすることである。
以上のフローに従うことで、予測処理がまだ行われていない印刷ジョブに対して、優先的に予測処理を実行でき、且つ、以前に予測処理がキャンセルされた印刷ジョブであっても予測処理の再度の開始を保証することができる。これにより、できるだけ早く、多くの印刷ジョブの予測時間をユーザーに提示することを可能にし、且つ、全ての印刷ジョブの予測時間をユーザーに提示できる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明の画像処理装置は、印刷ジョブを受信する受信手段と、前記印刷ジョブに対して、印刷ジョブの印刷に関する時間の予測値を求める予測処理を実行する予測手段と、前記印刷ジョブに対する前記予測処理に要している時間が閾値を越えるか否かを判定する判定手段と、を有し、前記予測手段は、前記要している時間が前記閾値を越えると判定されたことに基づいて、前記印刷ジョブに対して実行されている前記予測処理を中止することを特徴とする。
Claims (13)
- 印刷ジョブを受信する受信手段と、
前記受信された印刷ジョブに対して、印刷ジョブの印刷に要する時間の予測値を求める処理を開始する開始手段と、
前記受信された印刷ジョブに対する前記処理に要している時間が閾値を越えるか否かを判定する判定手段と、
前記時間が前記閾値を越えると判定されたことに基づいて、前記印刷ジョブに対する前記処理をキャンセルするキャンセル手段と、
を有することを特徴とする画像処理装置。 - 前記開始手段は、前記時間が前記閾値を越えると判定されて前記一つの印刷ジョブに対する前記処理がキャンセルされたことに基づいて、前記受信手段によって受信された別の印刷ジョブに対して前記処理を開始することを特徴とする請求項1に記載の画像処理装置。
- 前記印刷ジョブに対する印刷に関する処理を実行する処理手段をさらに有することを特徴とする請求項1または2に記載の画像処理装置。
- 前記処理手段は、印刷ジョブに含まれる描画命令を解釈する解釈手段、解釈結果から中間データを生成する中間データ生成手段、中間データからビットマップ画像を生成するビットマップ生成手段、ビットマップ画像に基づいて画像をシートに印刷する印刷手段のいずれかを有することを特徴とする請求項3に記載の画像処理装置。
- 前記処理がキャンセルされた印刷ジョブよりも前記処理が行われていない印刷ジョブに対して前記処理を優先して開始するよう、前記開始手段による前記処理の開始および前記キャンセル手段による前記処理のキャンセルを制御する制御手段をさらに有することを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
- 前記印刷ジョブは、PDLデータであることを特徴とする請求項1乃至5の何れか1項に記載の画像処理装置。
- 印刷ジョブを受信する受信工程と、
前記受信された印刷ジョブに対して、印刷ジョブの印刷に要する時間の予測値を求める処理を開始する開始工程と、
前記受信された印刷ジョブに対する前記処理に要している時間が閾値を越えるか否かを判定する判定工程と、
前記時間が前記閾値を越えると判定されたことに基づいて、前記印刷ジョブに対する前記処理をキャンセルするキャンセル工程と、
を有することを特徴とする画像処理方法。 - 前記開始工程は、前記時間が前記閾値を越えると判定されて前記一つの印刷ジョブに対する前記処理がキャンセルされたことに基づいて、前記受信手段によって受信された別の印刷ジョブに対して前記処理を開始することを特徴とする請求項7に記載の画像処理方法。
- 前記印刷ジョブに対する印刷に関する処理を実行する処理工程をさらに有することを特徴とする請求項7または8に記載の画像処理方法。
- 前記処理工程は、印刷ジョブに含まれる描画命令を解釈する解釈工程、解釈結果から中間データを生成する中間データ生成工程、中間データからビットマップ画像を生成するビットマップ生成工程、ビットマップ画像に基づいて画像をシートに印刷する印刷工程のいずれかを有することを特徴とする請求項9に記載の画像処理方法。
- 前記処理がキャンセルされた印刷ジョブよりも前記処理が行われていない印刷ジョブに対して前記処理を優先して開始するよう、前記開始工程による前記処理の開始および前記キャンセル手段による前記処理のキャンセルを制御する制御工程をさらに有することを特徴とする請求項7乃至10の何れか1項に記載の画像処理方法。
- 前記印刷ジョブは、PDLデータであることを特徴とする請求項7乃至11の何れか1項に記載の画像処理方法。
- 請求項1乃至6の何れか1項に記載の各手段として、コンピュータを機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015014652A JP6067039B2 (ja) | 2015-01-28 | 2015-01-28 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
US15/006,335 US10048904B2 (en) | 2015-01-28 | 2016-01-26 | Image processing apparatus capable of obtaining prediction value of time relating to printing, image processing method, and storage medium |
US16/033,031 US20180321886A1 (en) | 2015-01-28 | 2018-07-11 | Image processing apparatus capable of obtaining prediction value of time relating to printing, image processing method, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015014652A JP6067039B2 (ja) | 2015-01-28 | 2015-01-28 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016248234A Division JP6545144B2 (ja) | 2016-12-21 | 2016-12-21 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016137664A true JP2016137664A (ja) | 2016-08-04 |
JP6067039B2 JP6067039B2 (ja) | 2017-01-25 |
Family
ID=56434475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015014652A Active JP6067039B2 (ja) | 2015-01-28 | 2015-01-28 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
Country Status (2)
Country | Link |
---|---|
US (2) | US10048904B2 (ja) |
JP (1) | JP6067039B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018079660A (ja) * | 2016-11-18 | 2018-05-24 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法、およびプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6067039B2 (ja) * | 2015-01-28 | 2017-01-25 | キヤノン株式会社 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
DE102020122423B4 (de) * | 2020-08-27 | 2024-06-20 | Canon Production Printing Holding B.V. | Verfahren und Vorrichtung zur Ablaufplanung für die Bearbeitung von Druckaufträgen und Drucknachbearbeitungsaufträgen auf mehreren Geräten |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10315576A (ja) * | 1997-05-19 | 1998-12-02 | Brother Ind Ltd | 印刷システム及び印刷方法並びに印刷制御プログラムが記録された記録媒体 |
JPH1120273A (ja) * | 1997-07-03 | 1999-01-26 | Fuji Xerox Co Ltd | 画像処理装置および画像処理方法 |
JP2000353068A (ja) * | 1999-06-10 | 2000-12-19 | Sharp Corp | 印刷装置および印刷制御方法 |
JP2003029940A (ja) * | 2001-07-16 | 2003-01-31 | Canon Inc | レンダリング処理の動的分散処理方法及び印刷制御装置 |
JP2007193808A (ja) * | 2006-01-17 | 2007-08-02 | Ricoh Co Ltd | 電子文書の最適化印刷 |
JP2014067217A (ja) * | 2012-09-26 | 2014-04-17 | Dainippon Screen Mfg Co Ltd | 変換時間予測装置、プログラムおよび変換時間予測方法 |
JP2014191721A (ja) * | 2013-03-28 | 2014-10-06 | Brother Ind Ltd | サーバ及びプログラム |
JP2014204386A (ja) * | 2013-04-09 | 2014-10-27 | シャープ株式会社 | 画像形成装置及びプログラム |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US48904A (en) * | 1865-07-25 | Improvement in valve-gears for oscillating engines | ||
US7304753B1 (en) * | 1999-03-11 | 2007-12-04 | Electronics For Imaging, Inc. | Systems for print job monitoring |
JP2000322209A (ja) * | 1999-05-07 | 2000-11-24 | Fuji Xerox Co Ltd | プリンタシステム |
US7225445B1 (en) * | 1999-09-02 | 2007-05-29 | Fuji Xerox Co., Ltd. | Execution control apparatus with key pad that enables selection of jobs to be run |
EP2040452A1 (en) * | 2000-03-29 | 2009-03-25 | Canon Kabushiki Kaisha | Printing apparatus connectable to a computer network and control method for image processing apparatus connectable to computer network |
US20020063884A1 (en) * | 2000-11-29 | 2002-05-30 | Ibm Corporation | Priority printing |
JP2006309625A (ja) * | 2005-04-28 | 2006-11-09 | Konica Minolta Business Technologies Inc | 画像処理装置、画像処理方法、および画像処理プログラム |
JP5116233B2 (ja) * | 2005-12-07 | 2013-01-09 | キヤノン株式会社 | 印刷装置、印刷方法及び制御プログラム |
JP2007249658A (ja) * | 2006-03-16 | 2007-09-27 | Sony Corp | 製品生成端末装置、製品生成方法、プログラム |
JP5018133B2 (ja) * | 2007-02-27 | 2012-09-05 | 富士通株式会社 | ジョブ管理装置、クラスタシステム、およびジョブ管理プログラム |
US20100238484A1 (en) * | 2009-03-23 | 2010-09-23 | Konica Minolta Systems Laboratory, Inc. | Method for estimating processing time for a printer and related applications |
JP2012200956A (ja) * | 2011-03-24 | 2012-10-22 | Fuji Xerox Co Ltd | 画像処理システムおよび画像処理プログラム |
JP2013165343A (ja) * | 2012-02-09 | 2013-08-22 | Canon Inc | 画像形成装置、画像形成方法及びプログラム |
JP2013168705A (ja) * | 2012-02-14 | 2013-08-29 | Canon Inc | 画像形成装置、画像形成装置の制御方法、及びプログラム |
EP3001304A1 (en) * | 2014-09-26 | 2016-03-30 | OCE-Technologies B.V. | User interface for a document processing system |
JP6067039B2 (ja) * | 2015-01-28 | 2017-01-25 | キヤノン株式会社 | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム |
-
2015
- 2015-01-28 JP JP2015014652A patent/JP6067039B2/ja active Active
-
2016
- 2016-01-26 US US15/006,335 patent/US10048904B2/en active Active
-
2018
- 2018-07-11 US US16/033,031 patent/US20180321886A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10315576A (ja) * | 1997-05-19 | 1998-12-02 | Brother Ind Ltd | 印刷システム及び印刷方法並びに印刷制御プログラムが記録された記録媒体 |
JPH1120273A (ja) * | 1997-07-03 | 1999-01-26 | Fuji Xerox Co Ltd | 画像処理装置および画像処理方法 |
JP2000353068A (ja) * | 1999-06-10 | 2000-12-19 | Sharp Corp | 印刷装置および印刷制御方法 |
JP2003029940A (ja) * | 2001-07-16 | 2003-01-31 | Canon Inc | レンダリング処理の動的分散処理方法及び印刷制御装置 |
JP2007193808A (ja) * | 2006-01-17 | 2007-08-02 | Ricoh Co Ltd | 電子文書の最適化印刷 |
JP2014067217A (ja) * | 2012-09-26 | 2014-04-17 | Dainippon Screen Mfg Co Ltd | 変換時間予測装置、プログラムおよび変換時間予測方法 |
JP2014191721A (ja) * | 2013-03-28 | 2014-10-06 | Brother Ind Ltd | サーバ及びプログラム |
JP2014204386A (ja) * | 2013-04-09 | 2014-10-27 | シャープ株式会社 | 画像形成装置及びプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018079660A (ja) * | 2016-11-18 | 2018-05-24 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP6067039B2 (ja) | 2017-01-25 |
US20160216918A1 (en) | 2016-07-28 |
US20180321886A1 (en) | 2018-11-08 |
US10048904B2 (en) | 2018-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8867081B2 (en) | Printing method and apparatus for dividing each of the two or more print jobs into a plurality of sub-print jobs | |
JP2007152750A (ja) | 印刷装置 | |
JP2010165261A (ja) | 印刷制御装置とその制御方法 | |
US9025186B2 (en) | Print control device, image forming apparatus, and non-transitory computer readable medium | |
US9164715B2 (en) | Method for managing a print job | |
JP6067039B2 (ja) | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム | |
US10534986B2 (en) | Printing apparatus having interpreters interpreting print data, printing method, and storage medium | |
US8848219B2 (en) | Printing control apparatus, printing control method, and program for reducing the number of times of shifting a printing apparatus to the standby state to reduce power consumption | |
JP5099594B2 (ja) | 画像処理装置、画像処理システムおよび画像処理プログラム | |
US20120250053A1 (en) | Method and system for handling sub-jobs | |
JP2016179619A (ja) | 情報処理装置及び情報処理装置により印刷所要時間を求める方法、画像形成装置及び画像形成装置の制御方法ならびにプログラム | |
US20140247458A1 (en) | Image forming apparatus, image forming method, and storage medium | |
JP6996189B2 (ja) | プリントコントローラー、画像形成システム及び画像形成装置 | |
JP6545144B2 (ja) | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム | |
JP2007152898A (ja) | 印刷処理装置 | |
JP6877963B2 (ja) | 画像形成装置、画像形成装置の制御方法、およびプログラム | |
US9471022B2 (en) | Print control apparatus, print control method, image forming system, and non-transitory computer readable medium | |
US8526047B1 (en) | Print control apparatus, image forming system, non-transitory computer readable medium | |
US8914591B2 (en) | Information processing apparatus, method for controlling same | |
JP5839183B2 (ja) | 画像形成装置および画像形成方法 | |
JP2010218325A (ja) | 印刷制御装置および印刷システム | |
JP6226604B2 (ja) | ディスプレイリストを生成する装置、方法、プログラム | |
US11656823B2 (en) | Information processing apparatus, printing apparatus, and information processing system | |
JP7067112B2 (ja) | 情報処理装置、情報処理方法、プログラム及び画像処理装置 | |
JP2018001603A (ja) | 画像形成装置、印刷時間の予測方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161116 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161220 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6067039 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |