以下に添付図面を参照して、この発明にかかる画像形成装置、印刷制御システム、印刷制御方法、印刷制御プログラムの最良な実施の形態を詳細に説明する。
本発明の一実施の形態として、画像処理装置をコピー機能、ファクシミリ(FAX)機能、印刷機能、スキャナ機能等を一つの筐体に納めたいわゆるMFP(Multi Function Peripheral)と称される複合機等、印刷機能を備えた装置に適用した例を示す。尚、以下の説明では、画像処理装置を上述の複合機に適用した場合について説明しているが、上述した機能以外の機能を備える複合機以外の装置であっても適用可能である。
(第1の実施の形態)
図1は、第1の実施の形態にかかる印刷制御システム1000の概念図である。本図に示すように、印刷制御システム1000は、パーソナル・コンピュータ100(以下、コンピュータ100と呼ぶ。)、携帯端末100等の情報処理装置Tと、複合機200と、通信ネットワーク300と、を含んで構成されている。以下の説明では、情報処理装置Tはコンピュータ100であるとして説明するが、通信機能を備えた装置等であればいずれの機器であってもよい。
図2は、図1に示した印刷制御システム1000を構成するコンピュータ100と、複合機200のブロック図である。図2に示すように、コンピュータ100は、入力受付部110と、表示部120と、データ記憶部130と、第2印刷情報送受信部140と、第2キャンセル情報送受信部150と、通信部160とを含んで構成されている。まず、コンピュータ100について説明する。
入力受付部110は、キーボードやタッチパネル等の入力装置から構成され、後述するデータ記憶部130に記憶されている文書ファイル等を複合機200から印刷する要求(以下、単に印刷要求と呼ぶ。)、あるいは、既に複合機200に対して印刷要求を行った文書ファイルに対する印刷処理をキャンセルする要求(以下、単にキャンセル要求と呼ぶ。)、印刷処理を行う文書ファイルを構成するページのうちのキャンセルするページの指定(以下、単に指定ページと呼ぶ。)、印刷処理を行う複合機200および文書ファイルの指定、さらには文書ファイルを印刷するための用紙サイズや、レイアウト等の印刷設定情報の入力を受け付ける。
表示部120は、LCD(Liquid Crystal Display)等のディスプレイ装置から構成され、入力受付部110が入力を受け付ける印刷要求ボタン、キャンセル要求ボタン、あるいは入力受付部110が受け付けた指定ページや印刷設定情報等の各種情報を表示する。また、表示部120は、後述するように、第2キャンセル情報送受信部150が、複合機200から受信した現在印刷処理されている文書ファイル等のページ数を表示する。
図3は、表示部120が、これらの各種情報を表示する様子を示す例である。図3に示すように、表示部120は、複合機200が印刷処理をしている場合に、現在印刷処理されているページ数、すなわち複合機200における文書ファイル等の印刷状態を表示する。
図2に戻り、データ記憶部130は、ユーザが作成した文書ファイル等の印刷対象となるデータを記憶するHDD(ハードディスクドライブ)やメモリ等の記憶媒体である。
第2印刷情報送受信部140は、入力受付部110が入力や指定を受け付けた印刷要求、文書ファイル、印刷設定情報を、複合機200に送信する。
第2キャンセル情報送受信部150は、入力受付部110が入力を受け付けたキャンセル要求、指定ページを複合機200に送信する。図4〜図7は、第2キャンセル情報送受信部150が複合機200に送信するキャンセル要求の例を示す図である。図4は、第2キャンセル情報送受信部150が、入力受付部110からキャンセル要求があった場合において、複合機200に対する要求の種別を表す「request type」として「cancel」、キャンセルを開始するページを表す「startpage」として「10」とするキャンセル要求を送信する例を示している。
また、図5は、第2キャンセル情報送受信部150が、複合機200に対する要求する種別を表す「request type」として「cancel」、キャンセルを終了するページを表す「endpage」として「20」とするキャンセル要求を送信する例を示している。さらに図6は、複合機200に対する要求する種別が図4、図5の場合と同じく「cancel」であり、キャンセルを開始するページと終了するページの両方を指定している場合、すなわちキャンセルする範囲を指定している場合の例を示している。また、図7は、キャンセルする範囲を指定するのではなく、ユーザが指定したページのみ(例えば、10、11、15ページ等)をキャンセルする場合のキャンセル要求を送信する例を示している。
図2に戻り、また、第2キャンセル情報送受信部150は、後述するように、複合機200の第1キャンセル情報送受信部220から文書ファイル等が印刷処理されるページのページ数、すなわち複合機200における文書ファイル等の印刷状態を受信する。
通信部160は、ネットワークボード等の通信装置から構成され、コンピュータ100と複合機200との通信を媒介する。
続いて、複合機200について説明する。複合機200は、第1印刷情報送受信部210と、第1キャンセル情報送受信部220と、印刷処理部230と、キャンセル判定部250と、キャンセル処理部260と、通信部270とを含んで構成されている。
第1印刷情報送受信部210は、コンピュータ100の第2印刷情報送受信部140から送信された印刷要求、文書ファイル、印刷設定情報を受信する。
第1キャンセル情報送受信部220は、コンピュータ100の第2キャンセル情報送受信部150から送信された指定ページを含むキャンセル要求を受信する。また、第1キャンセル情報送受信部220は、後述するように、キャンセル判定部250が、文書ファイルから形成された画像データを構成する各ページの印刷を印刷処理部230が開始する場合に不図示のRAMから取得したページ数を、コンピュータ100に送信する。
また、第1キャンセル情報送受信部220は、後述するように、キャンセル判定部250が、指定ページに対する印刷処理がキャンセル可能と判定し、キャンセル処理部260が行ったキャンセル処理が正常に終了したか否かを示す処理結果をコンピュータ100に送信する。図8、図9は、第2キャンセル情報送受信部220が、コンピュータ100に送信する処理結果の例を示す図である。
図8は、第1キャンセル情報送受信部220が、後述するキャンセル判定部250が判定したキャンセル処理が失敗した場合の例を示している。具体的には、第1キャンセル情報送受信部220は、キャンセル処理を行った結果の種類を示す「stateMessage」として「failed」、指定ページの開始ページを示す「statePage」として「10」、及び指定ページの終了ページを示す「totalPage」として「20」とする処理結果を送信する例を示している。また、図9は、第1キャンセル情報送受信部220が、キャンセル処理が成功した場合に、コンピュータ100に送信する処理結果の例を示している。
図2に戻り、印刷処理部230は、第2印刷情報送受信部210がコンピュータ100から受信した文書ファイル等から画像データを形成し、形成した画像データをエンジン部(不図示)から印刷する。また、印刷処理部230は、文書ファイルの1ページ分の画像データの印刷を開始すると、開始したページのページ数を不図示のRAM(Random Access Memory)等に記憶する。
キャンセル判定部250は、印刷処理部230が印刷を開始した画像データのページ数を不図示のRAM等から取得する。また、キャンセル判定部250は、第1キャンセル情報送受信部220が、コンピュータ100から受信した指定ページを含むキャンセル要求を受信すると、その指定ページの内容を読み取って、画像データのどのページに対する印刷処理のキャンセル要求がなされ、そのページに対する印刷処理がキャンセル可能か否か、すなわち既に印刷処理が完了しているか否かを判定する。
具体的には、キャンセル判定部250は、第1キャンセル情報送受信部220が受信したキャンセル要求に含まれる指定ページと、取得したページ数とを比較することによって、指定ページの画像データの印刷処理がキャンセル可能か否かを判定する。すなわち、指定ページのページ数が、取得したページ数未満の場合、例えば、指定ページが10ページの場合であって、取得したページ数が15ページの場合には、キャンセル判定部250は、既に10ページの印刷処理は終了し、指定ページに対する印刷処理のキャンセルは不可能であると判定する。
また、キャンセル判定部250は、第1キャンセル情報送受信部220が受信した指定ページと、取得したページ数とを比較し、受信したページ数が取得したページ数以上の場合には、指定ページ、または指定ページ以降のページの印刷処理がキャンセル可能と判定する。例えば、指定ページが20ページの場合であって、取得したページ数が15ページの場合には、キャンセル判定部250は、15ページから20ページに対する印刷処理のキャンセルが可能であると判定する。
さらに、キャンセル判定部250は、受信した指定ページが複数指定されている場合、あるいは範囲指定されている場合には、複数指定あるいは範囲指定された各指定ページと、取得したページ数とを上述したような比較をすることによって、印刷処理がキャンセル可能か否かを判定する。このように、キャンセル対象となるページが複数指定されている場合には、その間のページに対する印刷処理をスキップして、印刷ジョブ自体を停止やキャンセルすることなく指定されたページのみの印刷処理をキャンセルする。
また、キャンセル判定部250は、第1キャンセル情報送受信部220が受信したキャンセル要求に指定ページが含まれていない場合には、不図示のRAMに記憶されたページ数以降の全てのページに対する印刷処理のキャンセルが可能であると判定する。
キャンセル処理部260は、キャンセル判定部250がキャンセル可能と判定した指定ページに対する印刷処理部230が行う印刷処理を、ページ単位にキャンセルする旨を印刷処理部230に指示することにより制御する。
通信部270は、ネットワークボード等の通信装置から構成され、複合機200とコンピュータ100との通信を媒介する。
通信ネットワーク300は、LAN(Local Area Network:構内通信網)、WAN(Wide Area Network:広域通信網)、インターネットなどの通信回線である。
次に、上述した情印刷制御システム1000で行われる実行処理について説明する。
図10は、ユーザが、コンピュータ100から複合機200に対して文書ファイルの印刷要求をしてから、その印刷要求によって行われた印刷処理をキャンセルし、キャンセル処理の結果を受信するまでの手順を示すフローチャートである。尚、以下の説明では、ユーザが、印刷処理をキャンセルするページを指定してキャンセル要求を行った場合について説明する。
まず、入力受付部110は、ユーザからデータ記憶部130に記憶された文書ファイルの印刷要求と、印刷する文書ファイルの指定を受け付け(ステップS1001)、第2印刷情報送受信部140が、受け付けられた印刷要求と文書ファイルを複合機200に送信し(ステップS1002)、複合機200の第1印刷情報送受信部210は、送信された印刷要求と文書ファイルを受信する(ステップS1003)。
続いて、印刷処理部230は、第1印刷情報送受信部210が受信した文書ファイル等から画像データを形成し、形成した画像データを印刷する(ステップS1004)。その後、印刷処理部230は、ステップS1004で印刷を開始した画像データのページ数を不図示のRAM等に記憶する(ステップS1005)。
そして、印刷を開始したページ数がRAMに記憶されると、キャンセル判定部250はそのページ数をRAM等から取得し(ステップS1006)、第1印刷情報送受信部210は、取得したページ数をコンピュータ100に送信する(ステップS1007)。
このように、複合機200においては、ステップS1004〜S1007までの各処理を1つの処理単位uとして、文書ファイルの全ページ分の画像データに対する印刷処理が終了するまでこれらの各処理を繰り返し行い、コンピュータ100の表示部120では、図3に示すように、印刷中のページが順次表示されることとなる。
その後、コンピュータ100の第2印刷情報送受信部140は、複合機200から印刷中のページ数を受信し(ステップS1008)、ユーザから入力受付部110を介して印刷処理のキャンセル要求の入力を受け付けると(ステップS1009)、第2キャンセル情報送受信部150は、キャンセル要求を送信し(ステップS1010)、複合機200の第1キャンセル情報送受信部220は、指定ページを含むキャンセル要求を受信する(ステップS1011)。
その後、キャンセル判定部250は、不図示のRAMに記憶されているページ数を取得し(ステップS1012)、取得したページ数とステップS1011で受信したキャンセル要求に含まれる指定ページとを比較し、指定ページの画像データの印刷処理がキャンセル可能か否かを判定する(ステップS1013)。
そして、キャンセル判定部250が、指定ページの画像データの印刷処理がキャンセル可能であると判定した場合には(ステップS1013;Yes)、キャンセル処理部260は、そのページの印刷処理をキャンセルし(ステップS1014)、正常にキャンセル処理が出来た旨をコンピュータ100に送信し、指定ページの画像データの印刷処理がキャンセル可能でないと判定した場合には(ステップS1013;No)、正常にキャンセルできなかった旨をコンピュータ100に送信し(ステップS1015)、コンピュータ100の第2キャンセル情報送受信部150は、これらの処理結果を受信する(ステップS1016)。
そして、キャンセル判定部250は、指定された全てのページの印刷処理をキャンセルしたか否かを判定し(ステップS1017)、全てのページの印刷処理をキャンセルしたと判定した場合には(ステップS1017;Yes)、キャンセル処理が全て終了した旨をコンピュータ100に送信し(ステップS1018)、コンピュータ100の第2キャンセル情報送受信部150は、その旨を受信し、表示部120に表示する(ステップS1019)。
一方、キャンセル判定部250は、全てのページの印刷処理をキャンセルしていないと判定した場合には(ステップS1017;No)、ステップS1013に戻り、指定ページのキャンセルを行う処理(ステップS1013〜S1015)を繰り返す。
上述したステップS1001〜S1019までの処理が終了すると、本実施の形態における全ての処理が終了し、その後ユーザは、指定した全てのページについての印刷処理がキャンセルされたことを確認することが出来る。
このように、本実施の形態においては、印刷指示を行うコンピュータ100に通信ネットワーク300を介して接続された複合機200において、印刷処理部230が、コンピュータ100から受信した印刷指示に従って1または複数のページから構成されるファイルの印刷処理をページ単位で実行し、第1キャンセル情報送受信部220が、コンピュータ100から、印刷処理をキャンセルするページの範囲を示すページ数を含むキャンセル指示を受信し、キャンセル処理部260が、第1キャンセル情報送受信部220が受信したキャンセル指示に含まれるページ数が、ファイルを構成するページに含まれる場合に、そのページ数で示されるページの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後においても、ユーザからの要求に応じて適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、受信したページ数は、印刷処理をキャンセルするページの範囲の開始ページの指定を含み、キャンセル処理部260は、第1キャンセル情報送受信部220が受信したページ数で指定された開始ページ以降のページの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となる開始ページのみが指定された場合であっても、ユーザからの要求に応じてより適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、受信したページ数は、印刷処理をキャンセルするページの範囲の終了ページの指定を含み、キャンセル処理部260は、第1キャンセル情報送受信部220が受信したページ数で指定された終了ページまでのページの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となる終了ページのみが指定された場合であっても、ユーザからの要求に応じてより適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、受信したページ数は、印刷処理をキャンセルするページの範囲として、特定のページの指定を含み、キャンセル処理部260は、第1キャンセル情報送受信部220が受信したページ数で指定された特定のページのみの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となる特定のページのみが指定された場合であっても、その特定のページに対してより適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、キャンセル処理部260は、第1キャンセル情報送受信部220が受信したキャンセル指示にページ数が含まれない場合には、ファイルの全ページに対する印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となるページが指定されない場合であっても、ユーザからの要求に応じて適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、キャンセル判定部250が、ファイルを構成するページのうち印刷処理を既に完了したページの有無を判定し、キャンセル処理部260は、ページ数で指定されたページのうち、印刷処理を既に完了したと判断されたページを除外して、印刷を完了していないページの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後においても、ユーザからの要求に応じて適切にかつ効率的にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、第1キャンセル情報送受信部220は、キャンセル処理部260が行ったファイルの印刷処理のキャンセルが、正常に行われたか否かを示す処理結果情報をコンピュータ100に送信するので、ユーザが要求した文書ファイル等の印刷処理をキャンセルした結果を、適切にかつ速やかにユーザに知らせることが出来る。
(第2の実施の形態)
上述した第1の実施の形態においては、ユーザが印刷処理をキャンセルしたいページを指定することによって、文書ファイル等の印刷処理が行われている場合であっても、その印刷処理自体を停止、キャンセルすることなく、指定されたページの印刷処理をキャンセルすることとした。しかし、印刷処理をキャンセルする文書ファイルに、例えば、社外秘として対応すべき内容が複数箇所に亘って記載されている場合等は、該当するページを探した上で指定する必要があり、かえってユーザにとって操作が煩雑となってしまう場合がある。そこで、そのような場合には、ユーザが所望のキーワード等を指定し、そのキーワードを含んだページの印刷処理を自動的にキャンセルする場合について説明する。
図11は、第2の実施の形態にかかる印刷制御システム2000の構成を示すブロック図である。第2の実施の形態にかかる印刷制御システム2000は、コンピュータ400が、第1の実施の形態とは異なる入力受付部410と、表示部420と、第2キャンセル情報送受信部450を備え、複合機500が、第1の実施の形態とは異なる第1キャンセル情報送受信部520と、キャンセル処理部560と、を備え、さらにキー情報検索部580を備えている点において、第1の実施の形態にかかる印刷制御システム1000とは異なっている。以下の説明では、上述した第1の実施の形態と同一の構成要素には同一の符号を付してその説明を省略している。まず、コンピュータ400について説明する。
入力受付部410は、第1の実施の形態における入力受付部110と同様に、印刷要求やキャンセル要求の入力を受け付けるほか、キャンセルするページに含まれるキーワードの指定の入力を受け付ける。
表示部420は、第1の実施の形態における表示部120と同様に、指定ページや印刷設定情報等の各種情報を表示するほか、上述した入力受付部410が受け付けたキーワードを表示する。図12は、入力受付部410が、キーワードとして「社外秘」の入力を受け付けた場合に、そのキーワードが表示部120に表示される様子を示す図である。
第2キャンセル情報送受信部450は、入力受付部110が入力を受け付けたキーワードを含むキャンセル要求を送信する。
図13〜図14は、第2キャンセル情報送受信部450が複合機500に送信するキャンセル要求の例を示す図である。図13は、第2キャンセル情報送受信部450が、入力受付部410からキャンセル要求があった場合において、複合機200に対する要求の種別を表す「request type」として「cancel」、キャンセルするページに含まれるキーワードを示す「keywords」として「社外秘」とするキャンセル要求を送信する例を示している。
また、図14は、第2キャンセル情報送受信部450が、複合機200に対する要求の種別を表す「request type」として「cancel」、キャンセルするページの属性を示す「pageType」として「BlankPage」、すなわち空白ページとするキャンセル要求を送信する例を示している。続いて、複合機500について説明する。
図12に戻り、第1キャンセル情報送受信部520は、第1の実施の形態における第1キャンセル情報送受信部220と同様に、コンピュータ400の第2キャンセル情報送受信部450から送信されたキャンセル要求を受信する等、コンピュータ400との各種情報の送受信を行うほか、コンピュータ400から送信されたキャンセルするページに含まれるキーワードを含むキャンセル要求を受信する。
キャンセル処理部560は、キャンセル判定部250がキャンセル可能と判定した場合であって、後述するキー情報検索部580が、キャンセル可能と判定されたページにおいて、第1キャンセル情報送受信部520がコンピュータ400から受信したキーワードを含むページを検索した場合に、その検索したページに対する印刷処理部230が行う印刷処理を、そのキーワードを含むページ単位にキャンセルするように制御する。
キー情報検索部580は、第1キャンセル情報送受信部520がコンピュータ400から受信したキーワードを読み取って、キャンセル判定部250がキャンセル可能と判定した文書ファイル等のページのなかから、そのキーワードが含まれているページを検索する。
続いて、第2の実施の形態における印刷制御システム2000で行われる実行処理について説明する。第2の実施の形態にかかる印刷制御システム2000は、第1の実施の形態にかかる印刷制御システム1000における処理と比べて、キーワードを含むページについての印刷処理をキャンセルする部分の処理のみが異なる。そこで、図15を用いてこれらの処理について説明するが、これらの処理以外の処理については、第1の実施の形態にかかる処理と同じ処理内容であるため、第1の実施の形態にかかる処理と同一の処理(ステップS1501〜S1508、S1517〜S1521)については、その説明を省略している。
図15において、複合機500において文書ファイル等の印刷が開始され、ページ情報を受信すると(ステップS1508)、その後、ユーザから入力受付部410を介してキーワードを指定した印刷処理のキャンセル要求の入力を受け付けると(ステップS1509)、第2キャンセル情報送受信部150は、キャンセル要求を送信し(ステップS1510)、複合機500の第1キャンセル情報送受信部520は、キーワードを含むキャンセル要求を受信する(ステップS1511)。
その後、キャンセル判定部250は、不図示のRAMに記憶されているページ数を取得し(ステップS1512)、取得したページ数とステップS1011で受信したキャンセル要求に含まれる指定ページとを比較し、指定ページの画像データの印刷処理がキャンセル可能か否かを判定する(ステップS1513)。
そして、キャンセル判定部250が、指定ページの画像データの印刷処理がキャンセル可能であると判定した場合には(ステップS1513;Yes)、キー情報検索部580は、ステップS1511で受信したキャンセル要求に含まれるキーワードを読み取って、キャンセル判定部250がキャンセル可能と判定した文書ファイル等のページのなかから、そのキーワードが含まれているページを検索する(ステップS1514)。
キー情報検索部580が、キャンセル可能と判定した文書ファイル等のページのなかから、そのキーワードが含まれているページを検索した場合には(ステップS1514;Yes)、キャンセル処理部560は、検索したページに対する印刷処理部230が行う印刷処理をキャンセルするように制御する(ステップS1515)。
一方、キャンセル可能と判定した文書ファイル等のページのなかから、そのキーワードが含まれているページを検索できなかった場合には(ステップS1514;No)、キャンセル判定部250がキャンセル可能と判定した文書ファイル等のページに対する印刷処理部230が行う印刷処理をキャンセルする(ステップS1516)。以降、第1の実施の形態における処理と同様に、コンピュータ400にキャンセル処理の結果を送信する。
このように、本実施の形態においては、第1キャンセル情報送受信部520は、コンピュータ400からファイルを構成するページを特定するためのキーワードを含むキャンセル指示を受信し、キー情報検索部580が、ファイルを構成するページの中から、第1キャンセル情報送受信部520が受信したキーワードを含むページを、ファイルの内容に基づいて検索し、キャンセル処理部560は、キー情報検索部580が検索したキーワードを含むページに対する印刷処理のみをキャンセルするので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となるページのキーワードのみが指定された場合であっても、そのキーワードを含むページに対して適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、第1キャンセル情報送受信部520は、コンピュータ400からファイルを構成するページのうち空白ページを削除する旨の要求を含むキャンセル指示を受信し、キー情報検索部580は、第1キャンセル情報送受信部520がファイルを構成するページのうち空白ページを削除する旨の要求を受信した場合には、ファイルを構成するページの中から空白ページをファイルの内容に基づいて検索し、キャンセル処理部560は、キー情報検索部580が検索した空白ページに対する印刷処理のみをキャンセルするので、文書ファイル等の印刷処理を開始した後において、文書ファイルの空白ページがある場合であっても、その空白ページに対して適切にその印刷処理をキャンセルすることが出来る。
(第3の実施の形態)
上述した第1または第2の実施の形態においては、ユーザが印刷処理をキャンセルしたいページや、キーワードを指定することによって、文書ファイル等の印刷処理が行われている場合であっても、その印刷処理をページ単位にキャンセルすることとした。しかし、キャンセル対象となる印刷処理、すなわち文書ファイル等が複数ある場合には、ページを指定するだけでは、ユーザが意図する印刷処理をキャンセルできない場合がある。そこで、そのような場合には、ユーザが所望の印刷処理を特定するためのジョブIDを指定し、そのジョブIDに対応する印刷処理を自動的にキャンセルする場合について説明する。
図16は、第3の実施の形態にかかる印刷制御システム3000の構成を示すブロック図である。第3の実施の形態にかかる印刷制御システム3000は、コンピュータ600が、第1または第2の実施の形態とは異なる入力受付部610と、表示部620と、第2印刷情報送受信部640と、第2キャンセル情報送受信部650を備え、複合機700が、第1または第2の実施の形態とは異なる第1の印刷情報送受信部710と、第1キャンセル情報送受信部720と、キャンセル判定部750と、キャンセル処理部760を備え、さらにジョブ生成部790と、ジョブ分割部795とを備えている点において、第1または第2の実施の形態にかかる印刷制御システム1000、印刷制御システム2000とは異なっている。以下の説明では、上述した第1または第2の実施の形態と同一の構成要素には同一の符号を付してその説明を省略している。まず、コンピュータ600について説明する。
入力受付部610は、第1または第2の実施の形態における入力受付部110、入力受付部410と同様に、印刷要求やキャンセル要求の入力を受け付けるほか、キャンセルする印刷処理を識別するためのジョブIDの入力を受け付ける。尚、このジョブIDは、後述するように、ジョブ分割部795が印刷ジョブをページ単位に分割した場合のジョブIDである。具体的には、例えば、印刷処理のジョブIDがA00001である場合に、その文書ファイル等の1ページ目の印刷処理のジョブIDは、A00001-1となる。
表示部620は、第1または第2の実施の形態における表示部120、表示部420と同様に、指定ページや印刷設定情報等の各種情報を表示するほか、上述した入力受付部610が受け付けたジョブIDを表示する。図17は、入力受付部610が、ジョブIDとして「A00001-1」の入力を受け付けた場合に、そのジョブIDが表示部620に表示される様子を示す図である。
第2印刷情報送受信部640は、第1の実施の形態における第2印刷情報送受信部140と同様に、入力受付部610が入力や指定を受け付けた印刷要求、文書ファイル等を複合機700に送信するほか、後述するように、複合機700の第1印刷情報送受信部710から、印刷処理から生成された印刷ジョブのジョブIDを受信する。
第2キャンセル情報送受信部650は、入力受付部610が入力を受け付けたジョブIDを含むキャンセル要求を複合機700に送信する。
図18は、第2キャンセル情報送受信部650が複合機700に送信するジョブIDを含んだキャンセル要求の例を示す図である。図18に示すように、第2キャンセル情報送受信部650は、複合機700に対する要求の種別を表す「request type」として「cancel」、その対象となる印刷処理を示す「jobid」として「A00001-1」、キャンセルを開始するページを表す「startpage」として「10」とするキャンセル要求を送信する例を示している。続いて、複合機700について説明する。
第1印刷情報送受信部710は、コンピュータ600から送信された印刷要求、文書ファイル等を受信する。また、第1印刷情報送受信部710は、後述するように、ジョブ分割部795が分割した印刷ジョブのジョブIDをコンピュータ600に送信する。
第1キャンセル情報送受信部720は、第1または第2の実施の形態における第1キャンセル情報送受信部220や第1キャンセル情報送受信部520と同様に、キャンセル処理結果をコンピュータ600に送信する等の処理を行うほか、コンピュータ600から送信されたジョブIDを含むキャンセル要求を受信する。
キャンセル判定部750は、第1の実施の形態におけるキャンセル判定部250と同様に、印刷処理部230が印刷を開始した画像データのページ数を不図示のRAM等から取得する等の処理を行うほか、後述するように、ジョブ分割部795が、ジョブ生成部790が印刷ジョブから生成した文書ファイル等のページ単位に対応付けて分割した印刷ジョブ(以下、ページ分割印刷ジョブと呼ぶ。また、このページ分割印刷ジョブに対応するジョブIDをページ印刷ジョブIDと呼ぶ。)に対応するページに対する印刷処理がキャンセル可能か否か、すなわち既に印刷処理が完了しているか否かを判定する。
キャンセル処理部760は、第1または第2の実施の形態におけるキャンセル処理部260、キャンセル処理部560と同様に、キャンセル判定部250がキャンセル可能と判定した場合に、ジョブIDに対応付けられたページに対する印刷処理部230が行う印刷処理をページ単位にキャンセルするように制御する。
ジョブ生成部790は、第1印刷情報送受信部710が、コンピュータ600から印刷要求、文書ファイル等を受信すると、受信した文書ファイル等に対応する印刷ジョブを生成し、生成した印刷ジョブを特定するためのジョブID(例えば、A00001等)を取得する。尚、印刷ジョブとは、PDL(Page Description Language)と用紙サイズや給排紙トレイの選択等の設定情報の組み合わせから構成されるものである。また、PDLとは、文書ファイル等に含まれる文字列や画像等の印刷内容を、所定の言語で定義したデータのことである。
ジョブ分割部795は、ジョブ生成部790が印刷ジョブを生成すると、受信した文書ファイル等のファイル形式(例えば、PDF形式、WORD形式等)を読み取り、PDLに記述された印刷内容がページ単位に分割可能か否かを判定する。そして、ページ単位に分割可能と判定した場合には、ジョブ生成部790が生成した印刷ジョブ(例えば、A0001等)と文書ファイル等のページ(例えば、1ページであれば-1等)とを対応付けて印刷ジョブ(例えば、A0001-1等)を分割する。
一方、ジョブ分割部795は、ページ単位に分割可能でない判定した場合には、通信ネットワーク300を介して、他の複合機等に印刷ジョブの分割要求を行い、要求した他の複合機等からページ単位に分割した印刷ジョブを取得する。
続いて、第3の実施の形態における印刷制御システム3000で行われる実行処理について説明する。第3の実施の形態にかかる印刷制御システム3000は、第1または第1の実施の形態にかかる印刷制御システム1000、印刷制御システム2000における処理と比べて、ジョブIDを用いて印刷処理をページ単位に制御する部分の処理のみが異なる。そこで、図19を用いてこれらの処理について説明するが、これらの処理以外の処理については、第1または第2の実施の形態にかかる処理と同じ処理内容であるため、第1または第2の実施の形態にかかる処理と同一の処理(ステップS1901〜S1903、S1911〜S1915、S1921〜S1928)については、その説明を省略している。
図19において、ジョブ生成部790は、第1印刷情報送受信部710がコンピュータ600から受信した文書ファイル、印刷設定情報から印刷ジョブを生成する(ステップS1904)。
その後、ジョブ分割部795は、受信した文書ファイル等のファイル形式を読み取り(ステップS1905)、PDLに記述された印刷内容がページ単位に分割可能か否かを判定する(ステップS1906)。
そして、ジョブ分割部795が、印刷内容がページ単位に分割可能であると判定した場合(ステップS1906;Yes)、印刷ジョブと文書ファイル等のページとを対応付けて印刷ジョブを分割する(ステップS1907)。
一方、ジョブ分割部795が、印刷内容がページ単位に分割可能でないと判定した場合(ステップS1906;No)、通信ネットワーク300を介して他の複合機等に印刷ジョブの分割要求を行い(ステップS1908)、分割要求した他の複合機等から、ページ単位に分割した印刷ジョブを受信する(ステップS1909)。そして、分割された印刷ジョブのジョブIDを、コンピュータ600に送信する(ステップS1910)。
その後、ステップS1910〜S1915において各処理を行い、コンピュータ600は、ユーザから入力受付部610を介してジョブIDを指定した印刷処理のキャンセル要求の入力を受け付けると(ステップS1916)、第2キャンセル情報送受信部650は、キャンセル要求を送信し(ステップS1917)、複合機700の第1キャンセル情報送受信部720は、ジョブIDを含むキャンセル要求を受信する(ステップS1918)。
その後、キャンセル判定部750は、不図示のRAMに記憶されているページ数を取得し(ステップS1919)、取得したページ数とステップS1907で分割された印刷ジョブに対応するページに対する印刷処理がキャンセル可能か否かを判定し(ステップS1920)、その後ステップS1921〜S1928の各処理を行う。
このように、本実施の形態においては、印刷指示を行うコンピュータ600に通信ネットワーク300を介して接続された複合機700において、第1印刷情報送受信部710が、1または複数のページから構成されるファイルと、ファイルの印刷指示とをコンピュータ6700から受信し、または印刷指示に従って生成される印刷ジョブに含まれ、生成された印刷ジョブがファイルについてのものであることを示すジョブIDと、ファイルのページに対する印刷ジョブであることを示すページ印刷ジョブIDとをコンピュータ600に送信し、ジョブ生成部790が、第1印刷情報送受信部710が受信したファイルについての印刷ジョブを生成し、ジョブ分割部795が、第1印刷情報送受信部710が受信したファイルのファイル形式を識別し、識別したファイル形式のファイルについての印刷ジョブを、ページ処理識別情報に対応付けて分割し、印刷処理部230が、第1印刷情報送受信部710が受信した印刷指示に従ってファイルの印刷処理をページ単位で実行し、第1キャンセル情報送受信部720が、コンピュータ600から、印刷処理をキャンセルする印刷ジョブを示す印刷ジョブIDまたはページ印刷ジョブIDを含むキャンセル指示を受信し、キャンセル処理部760が、第1キャンセル情報送受信部720が受信したキャンセル指示に含まれる印刷ジョブIDまたはページ印刷ジョブIDが、ジョブ生成部790が生成した印刷ジョブIDまたはジョブ分割部795が分割したページ印刷ジョブIDに含まれる場合に、印刷ジョブIDまたはページ印刷ジョブIDで示される印刷ジョブの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、キャンセル対象となる印刷処理が複数ある場合であっても、ユーザからの要求に応じて適切にその印刷処理をキャンセルすることが出来る。
また、本実施の形態においては、ジョブ分割部795は、さらにファイルの形式に基づいて印刷ジョブがページ印刷ジョブIDに対応付けて分割することが可能か否かを判定し、ページ印刷ジョブIDに対応付けて分割することが可能でないと判定した場合には、通信ネットワーク300を介して他の複合機等に対してその形式のファイルについての印刷ジョブをページ印刷ジョブIDに対応付けて分割する要求をし、要求した印刷ジョブを他の複合機等から受け取り、キャンセル処理部760は、第1キャンセル情報送受信部720が受信した印刷ジョブIDまたはページ印刷ジョブIDが、他の複合機等から受け取った印刷ジョブに含まれる印刷ジョブIDまたはページ印刷ジョブIDに含まれる場合に、印刷ジョブIDまたはページ印刷ジョブIDで示される印刷ジョブの印刷処理をキャンセルするように印刷処理部230を制御するので、文書ファイル等の印刷処理を開始した後において、画像形成装置において印刷ジョブがページ単位に分割できない場合であっても、ユーザからの要求に応じて適切にその印刷処理をキャンセルすることが出来る。
図20は、第1〜3の実施の形態にかかる複合機のハードウェア構成を示すブロック図である。本図に示すように、この複合機200、500、700は、コントローラ10とエンジン部(Engine)60とをPCI(Peripheral Component Interconnect)バスで接続した構成となる。コントローラ10は、複合機200、500、700全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。エンジン部60は、PCIバスに接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部60には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
コントローラ10は、CPU11と、ノースブリッジ(NB)13と、システムメモリ(MEM−P)12と、サウスブリッジ(SB)14と、ローカルメモリ(MEM−C)17と、ASIC(Application Specific Integrated Circuit)16と、ハードディスクドライブ(HDD)18とを有し、ノースブリッジ(NB)13とASIC16との間をAGP(Accelerated Graphics Port)バス15で接続した構成となる。また、MEM−P12は、ROM(Read Only Memory)12aと、RAM(Random Access Memory)12bとをさらに有する。
CPU11は、複合機200、500、700の全体制御をおこなうものであり、NB13、MEM−P12およびSB14からなるチップセットを有し、このチップセットを介して他の機器と接続される。
NB13は、CPU11とMEM−P12、SB14、AGP15とを接続するためのブリッジであり、MEM−P12に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを有する。
MEM−P12は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ROM12aとRAM12bとからなる。ROM12aは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、RAM12bは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
SB14は、NB13とPCIデバイス、周辺デバイスとを接続するためのブリッジである。このSB14は、PCIバスを介してNB13と接続されており、このPCIバスには、ネットワークインターフェース(I/F)部なども接続される。
ASIC16は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGP15、PCIバス、HDD18およびMEM−C17をそれぞれ接続するブリッジの役割を有する。このASIC16は、PCIターゲットおよびAGPマスタと、ASIC16の中核をなすアービタ(ARB)と、MEM−C17を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のDMAC(Direct Memory Access Controller)と、エンジン部60との間でPCIバスを介したデータ転送をおこなうPCIユニットとからなる。このASIC16には、PCIバスを介してFCU(Fax Control Unit)30、USB(Universal Serial Bus)40、IEEE1394(the Institute of Electrical and Electronics Engineers 1394)インターフェース50が接続される。操作表示部20はASIC16に直接接続されている。
MEM−C17は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、HDD(Hard Disk Drive)18は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。
AGP15は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、MEM−P12に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
なお、本実施の形態の複合機200、500、700で実行されるプログラムは、ROM等に予め組み込まれて提供される。本実施の形態の複合機200、500、700で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
さらに、本実施の形態の複合機200、500、700で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態の複合機200、500、700で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
本実施の形態の複合機200、500、700で実行されるプログラムは、上述した各部(第1印刷情報送受信部、第1キャンセル情報送受信部、キャンセル判定部等)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、第1印刷情報送受信部、第1キャンセル情報送受信部、キャンセル判定部等が主記憶装置上に生成されるようになっている。
なお、上述した実施の形態では、複合機を一例として説明したが、本発明は複合機に限る必要はなく、コピー機、ファクシミリ、プリンタを含む様々な装置に適用することができる。