以下、図面を参照して、本発明の実施の形態について説明する。
図1は、本発明の印刷システムのシステム構成の一例を示す図である。図1に示す通り、本発明の印刷システムは、複合機101、クライアントPC102−1、102−2(以下まとめて「クライアントPC102」とする)、等を備えて構成されている。LAN103は上記した各装置を相互に通信可能に接続するためのネットワークである。
複合機101は、本発明の画像処理装置として機能する装置であり、クライアントPC102で作成された印刷データを受信し印刷する機能を有している。また、印刷データに保存指定が行われている場合には、ただちに印刷処理を行わず、一度当該印刷データを記憶装置に記憶させ、ユーザから印刷指示を受け付けた後に保存した印刷データに対する印刷処理を実行する保存データ印刷機能も有している。
クライアントPC104は、ユーザからの印刷指示を受け付けることで印刷データを作成し、前記複合機101に印刷させるべく、当該印刷データを複合機101に送信する機能、当該印刷データを複合機101に保存させるべく当該印刷データを送信する機能、等を備えている。
次に、図2を参照して、図1の複合機101のハードウェア構成の一例を説明する。図2は、図1の複合機101のハードウェア構成の一例を示す図である。
図2において、216はコントローラユニットで、画像入力デバイスとして機能するスキャナ214や、画像出力デバイスとして機能するプリンタ212と接続する一方、LAN(例えば、図1に示したLAN103)や公衆回線(WAN)(例えば、PSTNまたはISDN等)と接続することで、電子画像データやデバイス情報の入出力を行う。
コントローラユニット216において、201はCPUで、システム全体を制御するプロセッサである。202はRAMで、CPU201が動作するためのシステムワークメモリであり、プログラムを記録するためのプログラムメモリや、画像データを一時記録するための画像メモリでもある。
203はROMで、システムのブートプログラムや各種制御プログラムが格納されている。204はハードディスクドライブ(HDD)で、システムを制御するための各種プログラム,画像データ等を格納する。
207は操作部インタフェース(操作部I/F)で、操作部208とのインタフェース部である。また、操作部I/F207は、操作部208から入力したキー情報(例えば、スタートボタンの押下)をCPU201に伝える役割をする。
205はネットワークインタフェース(ネットワークI/F)で、LAN103等のネットワークに接続し、データの入出力を行う。206はモデムで、公衆回線に接続し、FAXの送受信等のデータの入出力を行う。
218は外部インタフェース(外部I/F)で、USB、IEEE1394、プリンタポート、RS−232C等の外部入力を受け付けるI/F部であり、本実施形態においてはユーザの認証を行う際に必要となる非接触ICカード(記憶媒体)の読み取り用のカードリーダ219が外部I/F部218に接続されている。そして、CPU201は、この外部I/F218を介してカードリーダ219によるICカードからの情報読み取りを制御し、該ICカードから読み取られた情報を取得可能である。以上のデバイスがシステムバス209上に配置される。
220はイメージバスインタフェース(イメージバスI/F)であり、システムバス209と画像データを高速で転送する画像バス215とを接続し、データ構造を変換するバスブリッジである。画像バス215は、PCIバスまたはIEEE1394で構成される。画像バス215上には以下のデバイスが配置される。
210はラスタイメージプロセッサ(RIP)で、例えば、PDLコード等のベクトルデータをビットマップイメージに展開する。211はプリンタインタフェース(プリンタI/F)で、プリンタ212とコントローラユニット216を接続し、画像データの同期系/非同期系の変換を行う。また、213はスキャナインタフェース(スキャナI/F)で、スキャナ214とコントローラユニット216を接続し、画像データの同期系/非同期系の変換を行う。
217は画像処理部で、入力画像データに対し補正、加工、編集を行ったり、プリント出力画像データに対して、プリンタの補正、解像度変換等を行ったりする。また、これに加えて、画像処理部217は、画像データの回転や、多値画像データに対してはJPEG、2値画像データはJBIG、MMR、MH等の圧縮伸張処理を行う。そして、この画像処理部217は、スキャナ214を駆動して画像読み取りされた画像データを画像処理して、ファイル出力可能な形式(例えば、PDF形式ファイル)に変換し、CPU201と連携して、ネットワークI/F205を介して、クライアントPC102等の外部装置に画像データファイルを送信することができる。
スキャナ214は、原稿となる紙上の画像を照明し、CCDラインセンサで走査することで、ラスタイメージデータとして電気信号に変換する。原稿用紙は原稿フィーダのトレイにセットし、装置使用者が操作部208から読み取り起動指示することにより、CPU301がスキャナ214に指示を与え、フィーダは原稿用紙を1枚ずつフィードし原稿画像の読み取り動作を行う。
プリンタ212は、ラスタイメージデータを用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、CPU201からの指示によって開始する。なお、プリンタ212には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセットがある。
操作部208は、LCD表示部を有し、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報を操作部I/F207を介してCPU201に伝える。また、操作部208は、各種操作キーとして、例えば、スタートキー、ストップキー、テンキー、ログオフキー、リセットキー等を備える。
ここで、操作部208のスタートキーは、原稿画像の読み取り動作を開始する時などに用いる。スタートキーの中央部には、緑と赤の2色LEDがあり、その色によってスタートキーが使える状態にあるかどうかを示す。また、操作部208のストップキーは、稼働中の動作を止める働きをする。例えば、ユーザは実行中のこのストップキーを押下することにより、印刷データの印刷処理を中止する命令をCPU201に入力することが可能となる。また、操作部208のIDキーは、使用者のユーザIDを入力する時に用いる。リセットキーは、操作部からの設定を初期化する時に用いる。
カードリーダ219は、CPU201からの制御により、非接触ICカードに記憶されている情報を読み取り、該読み取った情報を外部I/F218を介してCPU201へ通知する。
以上のような構成によって、複合機101は、スキャナ214で原稿を読み込むことで作成した電子画像データをLAN103上に送信したり、LAN103を介して受信した印刷データをプリンタ212により印刷出力したりすることができる。
また、スキャナ214で原稿を読み込むことで作成された電子画像データをモデム206により、公衆回線上にFAX送信したり、公衆回線からFAX受信したFAXデータをプリンタ212により出力したりすることができる。
以上が、図1の複合機101のハードウェア構成の一例の説明である。なお、複合機101のハードウェア構成は図2に示した構成を有するとして説明するが、必ずしも同図の構成を有することに限定するものではなく、複合機101が行う処理として説明する以下の処理が実行可能な構成であれば、複合機101の構成は適宜変形しても良い。
次に、図3を参照して、図1の認証サーバ102のハードウェア構成の一例について説明する。図3は、認証サーバ102のハードウェア構成の一例を示す図である。
図3において、301はCPUで、システムバス304に接続される各デバイスやコントローラを統括的に制御する。また、ROM303あるいは外部メモリ311には、CPU301の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、認証サーバ102が実行する各種機能を実現するために必要な後述する各種プログラム等が記憶されている。
302はRAMで、CPU301の主メモリ、ワークエリア等として機能する。CPU301は、処理の実行に際して必要なプログラム等をROM303あるいは外部メモリ311からRAM302にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
また、305は入力コントローラで、キーボードやポインティングデバイス等の入力装置309からの入力を制御する。306はビデオコントローラで、ディスプレイ装置310等の表示器への表示を制御する。これらは必要に応じて操作者が使用するものである。
307はメモリコントローラで、ブートプログラム,各種のアプリケーション,フォントデータ,ユーザファイル,編集ファイル,各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ311へのアクセスを制御する。
308は通信インタフェース(I/F)コントローラで、ネットワーク(例えば、図1に示したLAN103)を介して外部機器(例えば、図1に示した複合機101)と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
なお、CPU301は、例えばRAM302内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ装置310上での表示を可能としている。また、CPU301は、ディスプレイ装置310上の不図示のマウスカーソル等でのユーザ指示を可能とする。
本発明を実現するための後述するクライアントPC102が実行する各ステップの処理は、コンピュータで読み取り実行可能なプログラムにより実行され、そのプログラムは外部メモリ311に記録されている。そして、必要に応じてRAM302にロードされることによりCPU301によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ311に格納されており、これらについての詳細な説明も後述する。
以上が、図1のクライアントPC102のハードウェア構成の一例の説明である。尚、クライアントPC102のハードウェア構成は図3に示した構成を有するとして説明するが、必ずしも同図の構成を有することに限定するものではなく、クライアントPC102が行う処理として説明する以下の処理が実行可能な構成であれば、クライアントPC102のハードウェア構成は適宜変形しても良い。
次に、図4を参照して、図1の複合機101、クライアントPC102の機能構成について説明する。図4は複合機101及びクライアントPC102の機能構成の一例を示す図である。
図4に示す通り、複合機101は印刷データ受信部401、印刷データ保存部402、印刷実行部403、印刷キャンセル指示受付部404を、クライアントPC102は、印刷条件設定部411、印刷データ作成部412、印刷データ送信部413を備えている。
複合機101の印刷データ受信部401は、後述するクライアントPC102の印刷データ送信部413より送信された印刷データを受信する機能部である。印刷データ保存部402は、印刷データ受信部401が受信した印刷データのうち、保存指定がされた印刷データをHDD204に保存する機能部である。
印刷実行部403は、印刷データの印刷処理を行う機能部であり、通常印刷実行部403−1、保存データ印刷実行部403−2、再印刷実行部403−3、印刷キャンセル部403−4を備えている。通常印刷実行部403−1は、受信した印刷データをただちに印刷する機能部である。保存データ印刷実行部403−2は、HDD204に保存されている印刷データの印刷処理を実行する機能部ある。再印刷実行部403−3は、保存データ印刷実行部による印刷処理が途中でキャンセルされた印刷データを印刷する機能部であり、キャンセルされた際に既に印刷処理が終了したページから印刷を開始するページを特定し、特定したページ以降の印刷処理を実行する機能部である。印刷キャンセル部403−4は、後述する印刷キャンセル指示受付部404が印刷キャンセル指示を受け付けた場合に、保存データ印刷実行部403−2または再印刷実行部403−3が実行中の印刷処理を中止する機能部である。
印刷キャンセル指示受付部404は、ユーザからの印刷キャンセル指示を受け付ける機能部である。
クライアントPC102の印刷条件設定部411は、印刷データに対する印刷用紙指定、両面/片面指定、Nup指定(1ページ/枚、2ページ/枚等)、いずれの印刷装置(複合機を含む)から印刷出力を行うか、印刷データをただちに印刷させるか/記憶装置に保存させるか、等の印刷条件設定を設定する機能部であり、プリンタドライバのUIに対するユーザの操作指示に従って印刷条件の設定を行う。
印刷データ作成部412は、印刷条件設定部411で設定された印刷条件に従って印刷データを作成する機能部である。印刷データ送信部413は、印刷データ作成部412で作成された印刷データを複合機101に対して送信する機能部である。以上が、図1の複合機101、クライアントPC102の機能構成の説明である。
次に、図5を参照して、本発明の印刷システムによって行われる印刷処理の概要について説明する。図5は、本発明の印刷処理によって行われる印刷処理の概要を示すフローチャートである。図5のステップS501からS504に示す処理はクライアントPC102によって、ステップS511からS515に示す処理は複合機101によって行われる処理である。
クライアントPC102のCPU301は、実行中のアプリケーションプログラムで編集中のデータに対する印刷指示を受け付けたと判断すると(ステップS501でYES)、プリンタドライバのUIを表示装置310に表示し、ユーザによる入力装置309を用いたプリンタドライバのUIに対する操作指示に従って印刷設定を行う(ステップS502)。ここでは、印刷データを何れの印刷装置(複合機101を含む)から印刷するか、印刷データをただちに印刷させるか/記憶装置に記憶させるか、両面/片面設定、カラー/モノクロ設定、Nup設定などを行う。このステップS502の処理は、図4に示すクライアントPC102の印刷条件設定部411によって行われる処理である。
そして、印刷設定終了後、ステップS502で設定した印刷設定に従ってプリンタドライバを用いて前記編集中のデータの印刷データを作成する(ステップS503)。この処理は、クライアントPC102の印刷データ作成部412によって行われる処理である。そしてその後、ステップS502で作成された印刷データを、指定された印刷データをプリンタドライバの機能により指定された印刷装置に送信する(ステップS503)。この処理は、図4に示すクライアントPC102の印刷データ送信部413によって行われる処理である。
複合機101のCPU201は、クライアントPC102から送信された印刷データを受信する(ステップS511:複合機101の印刷データ受信部401による処理)と、印刷データに保存指定がされているかを判定する(ステップS512)。印刷データに保存指定がされていると判定した場合(ステップS512でYES)、処理をステップS513に進め、ステップS511で受信した印刷データをHDD204に保存する。そして、当該印刷データの印刷データ情報を保存する(ステップS514)。このステップS512からS514の処理は、図4に示す複合機101の印刷データ保存機能により行われる処理である。
ここで、図14を参照して、複合機101のHDD204に保存される印刷データ情報のデータ構成について説明する。図14は、印刷データ情報1400のデータ構成の一例を示す図である。
図14に示す通り、印刷情報データ1400は、文書ID1401、作成者1402、文書名1403、作成日時1404、用紙サイズ1405、ページ数1406、部数1407、カラー情報(カラー/モノクロ)1408、両面印刷情報(両面/片面)1409、Nup情報(1ページ/枚、2ページ/枚・・・)1410、キャンセルフラグ1411等のデータ項目を備えて構成されている。
文書ID1401には、HDD204に保存されている印刷データを一意に識別するための識別情報が登録される。作成者1402には、クライアントPC102のプリンタドライバにより設定される作成者情報が登録される。文書名1403には、プリンタドライバにより設定される文書名が登録される。作成日時1404には、プリンタドライバにより設定される当該印刷データの作成日時情報が登録される。
用紙サイズ1405には、プリンタドライバにより設定された印刷データを印刷する用紙サイズ情報が登録される。ページ数1406には、当該印刷データのページ数情報が登録される。部数1407には、当該印刷データの印刷部数が登録される。カラー情報1408には、当該印刷データはカラーデータであるかそれともモノクロデータであるかを特定するための情報が登録される。両面印刷情報1409には、当該印刷データは、片面印刷が設定された印刷データであるか、それとも両面印刷が設定された印刷データであるかを示す情報が登録される。Nup情報1410には、当該印刷データを印刷する際に、用紙の片面にアプリケーションデータの何ページ分の印刷処理が行われるかを示す情報が登録される。
キャンセルフラグ1411には、当該印刷データが印刷実行途中でキャンセル指示が行われることにより、印刷キャンセルが行われたデータであるか否かを示す情報が登録される。以上が印刷データテーブル1400のデータ構成の説明である。
図6の説明に戻る。ステップS512の判定処理で、印刷データに保存指定がされていないと判定した場合には、処理をステップS515に進め、ステップS511で受信した印刷データの印刷処理を行う。この処理は、図4に示す複合機101の通常印刷実行部403−1により行われる処理である。以上が、本発明の印刷システムによる印刷処理の概要である。
次に、図6を参照して、複合機101によって行われる、保存データに対する印刷処理について説明する。ここでは、複合機101のHDD204に保存されている印刷データに対する印刷処理の処理についての説明を行う。
まず、複合機101のCPU201は、当該複合機を利用するユーザのユーザ認証処理を行う。このユーザ認証処理を行うことで、複合機を利用するユーザの特定をする。このログイン処理は、例えば、ユーザが所有するICカードをカードリーダ219にかざすことにより得られるカード情報を用いたユーザ認証を行うことになる。ユーザIDやパスワードを用いたユーザ認証を行うことも可能である。
ステップS601でのユーザ認証処理終了後、ユーザよりHDD204に保存されている印刷データに対する印刷要求の入力を、操作部208を介して受け付けると(ステップS502でYES)、図9に示す印刷データ一覧画面900を操作部208のLCD表示部に表示し、当該ユーザが印刷指示可能な印刷データの一覧を表示する(ステップS503)。
ここで、図9を参照して印刷データ一覧画面900の構成の一例について説明する。図9は、印刷データ一覧画面900の構成の一例を示す図である。図9に示すように、印刷データ一覧画面900には、ユーザ名表示部901、印刷データ一覧表示部902、「全選択」ボタン903、「選択解除」ボタン904、「削除」ボタン905、「印刷」ボタン906が設定されている。
ユーザ表示部901には、図6のステップ601で認証されたユーザのユーザ情報が表示される。印刷データ一覧表示部902には、HDD204に保存されている印刷データのうち、当該ユーザが印刷指示可能な印刷データに対応する印刷データ情報が表示される。
より詳細には、文書名表示欄902−1には、印刷データ情報1400のうち、文書名情報1403に登録されている情報が表示される。印刷設定表示部902−2には、カラー情報1408、両面印刷情報1409に登録されている情報が表示される。ページ数/部数表示部902−3には、ページ数1406、部数1407に登録されている情報が表示される。日時表示部902−4には、作成日時情報1404に登録されている情報が表示される。キャンセル表示902−5には、キャンセルフラグ1411に登録されている情報に従った表示が行われる。キャンセルフラグにTRUEが登録されている場合には、図中の902−6に示すようにチェック表示が行われることになる。尚、この印刷データ一覧表示部902で印刷対象(若しくは削除対象)として選択されている印刷データ情報は902−7に示すように編みかけ表示がなされ、選択されていない印刷データ情報と識別可能に表示されている。
「全選択」ボタン903は、印刷データ一覧表示部902に表示されている全ての印刷データ情報を選択状態にするために用いられるボタンである。「選択解除」ボタン904は、印刷データ一覧表示部902に表示されている全てに印刷データ情報を非選択状態にするために用いられるボタンである。
削除ボタン905は、印刷データ一覧表示部902で選択状態となっている印刷情報データに対応する印刷データをHDD204から削除するために用いられるボタンである。この削除ボタンの押下指示を受け付けると、HDD204に保存されている印刷情報データに対応する印刷データを削除するとともに、印刷データ情報の削除を行う。
印刷ボタン906は、印刷データ一覧表示部903で選択状態になっている印刷情報データに体操する印刷データの印刷処理を実行するために用いられるボタンである。この印刷ボタンの押下指示を受け付けると、HDD204に保存されている当該印刷データ情報に対応する印刷データの印刷を実行する。そして、印刷データの印刷処理が終了すると、当該印刷データと印刷情報データを削除する。尚、削除のタイミングは印刷終了直後ではなく、一定時間経過後であっても構わない。
以上が、図9の印刷データ一覧画面900の構成の一例である。
図6の説明に戻る。ステップS602で印刷データ一覧表示画面902を表示することで印刷データの一覧表示を行った後、印刷データ一覧表示画面902の印刷データ一覧表示部902−2に表示されている印刷データ情報に対する指定を受け付ける(ステップS604)。その後、印刷データ一覧表示画面902の印刷ボタン906に対する押下指示を受け付けることで入力される印刷実行指示を受け付けたかを判定する(ステップS605)。
印刷実行指示を受け付けたと判定した場合には(ステップS605でYES)、処理をステップS606に進め、選択された印刷データ情報に対応する印刷データをHDD204より取得する。そして、選択された印刷情報データのキャンセルフラグが「TRUE」であるかを判定する(ステップS607)。キャンセルフラグがTRUEではない(即ち「FALSE」)場合には(ステップS607でNO)、処理をステップS608に進め、ステップS606で取得した印刷データの印刷処理を実行する(ステップS608)。その後、ステップS608の保存データ印刷処理が操作部208に設定されているストップキーの押下を受け付けることで終了したか、それとも、印刷処理が正常に終了したかを判定する(ステップS609)。正常に終了した(即ち「キャンセル終了」ではない:ステップS609でNO)と判定した場合には、印刷処理を終えた印刷データをHDD204から削除し(ステップS610)、当該印刷データの印刷データ情報1400も削除する(ステップS611)。
一方、ステップS609の判定処理で、キャンセル終了である(YES)と判定した場合には、処理をステップS612に進め、キャンセル終了された印刷データの印刷データ情報1400のキャンセルフラグ1411を「TRUE」に設定する。このような構成を備えることで、複合機101のCPU201は、何れの印刷データが過去に印刷処理がキャンセル終了された印刷データであるかを判定することが可能となる。以上、ステップS601からS611の処理は、複合機101の保存データ印刷実行部403−2によって行われる処理である。また、ステップS612の処理は印刷キャンセル部403−4によって行われる処理である。ユーザからの印刷キャンセル指示は、キャンセル指示受付部404が受け付けることになる。
ステップS607の判定処理で印刷データ情報1400のキャンセルフラグ1411にTRUEが設定されている(YES)と判定した場合には、処理をステップS613に進め再印刷処理を実行することになる。この処理の詳細については、図7を参照して説明する。この再印刷処理は複合機101の再印刷実行部403−3によって行われる処理である。以上が、複合機101によって行われる保存データに対する印刷処理の説明である。
次に、図7を参照して図6のステップS613の再印刷処理の詳細について説明する。図7は、図6のステップS613の再印刷処理の詳細を示すフローチャートである。
複合機101のCPU201は、図6のステップS607の判定処理で印刷データ情報1400のキャンセルフラグが「TRUE」である、即ち、印刷処理が一度キャンセルされた印刷データに対する印刷であると判定した場合には、当該印刷データがどのページの印刷を終了した後にキャンセルされたかを示す情報(前回印刷終了ページ情報)を取得する(ステップS701)。この情報は、ユーザからの操作部208に対する操作指示により入力を受け付けても、印刷データ情報に前回印刷終了ページ情報を登録するためのデータ項目(例えば印刷終了ページ情報1412)を追加し、印刷がキャンセル終了された場合に、複合機の印刷キャンセル部403−4がそのデータ項目に前回印刷終了ページ情報を登録しておき、その情報を取得する方法であっても構わない。
そしてその後、印刷開始指示画面1000を操作部208のLCD表示部に表示する(ステップS702)。
ここで、図10を参照して印刷開始指示画面1000の画面構成について説明する。図10は印刷開始指示画面1000の構成の一例を示す図である。図10に示すように、印刷開始指示画面1000には、「先頭ページから印刷」ボタン1001、「前回の続きから印刷」ボタン1002が設定されている。
「先頭のページから印刷」ボタン1001は、印刷を途中でキャンセルされた印刷データをもう一度先頭ページから再印刷する指示をCPU201に入力するために用いられるボタンである。「前回の続きから印刷」ボタン1002は、前回印刷終了したページに従って、途中のページから再印刷する指示をCPU201に対して入力するために用いられるボタンである。以上が図10の印刷開始指示画面1000の構成の説明である。
図7の説明に戻る。ステップS702で印刷開始指示画面1000を表示後、「先頭ページから印刷」ボタン1001の押下指示を受け付けることにより先頭ページからの再印刷指示を受け付けたか、それとも「前回の続きから印刷」ボタン1002の押下指示を受け付けることにより途中ページからの再印刷指示を受け付けたかを判定する(ステップS703)。この判定処理で、CPU201がYESと判定した場合には、処理をステップS704に進め、先頭ページからの再印刷を行う(保存データ印刷処理)。この処理は、複合機101の保存データ印刷実行部403−2によって行われる。
一方、ステップS703の判定処理でNO(即ち印刷開始指示画面1000の「前回の続きから印刷」ボタン1002の押下を受け付けた)と判定した場合には、処理をステップS705に進め、当該印刷データが両面印刷指定を受けた印刷データであるか否かを、当該印刷データの印刷データ情報1400の両面印刷情報1409に従って判定する。
ステップS705の判定処理で当該印刷データが、片面印刷設定がなされた印刷データである(即ち、「両面印刷データ?」でNO)と判定した場合には、処理をステップS707に進める。一方、両面印刷設定がなされた印刷データである(YES)と判定した場合には、処理をステップS706に進め、前回印刷終了ページが奇数ページであるかを判定する。ここでこの判定処理を行うのは、前回印刷終了ページが奇数ページであった場合には、前回印刷終了ページの続きから印刷する場合、前回印刷終了ページが印刷された用紙の裏面に印刷する必要があるためである。
ステップS706の判定処理でCPU201がNOと判定した場合には処理をステップS707に進める。そして、ステップS707では、前回印刷終了ページの次ページから再印刷処理を行う。印刷データに片面印刷設定がされている場合には片面印刷を、両面印刷設定が行われている場合には両面印刷を行うことになる。
一方、ステップS706の判定処理でYESと判定した場合には、操作部208のLCD表示部に図11に示す印刷開始ページ指示画面1100を表示する。
ここで、図11を参照して印刷開始ページ指示画面1100の構成について説明する。図11は印刷開始ページ指示画面1100の構成の一例を示す図である。図11に示すように、印刷開始ページ指示画面1100には、「前回印刷終了ページから印刷」ボタン1101と「前回印刷終了ページの次ページから印刷」ボタン1102が設定されている。
「前回印刷終了ページから印刷」ボタン1101に対する押下指示を受け付けると、前回印刷終了ページを用紙の表面に印刷し、その後、それ以降のページを印刷する形での両面印刷処理を実行する。「前回印刷終了ページの次ページから印刷」ボタン1102に対する押下指示を受け付けると、前回印刷終了ページが表面に印刷された用紙の裏面に前回印刷終了ページの印刷を行い、その後のページの両面印刷処理を実行する。以上が、図11の印刷開始ページ指示画面の構成の説明である。
図7の説明に戻る。ステップS708で操作部208のLCD表示部に表示した印刷開始ページ指示画面1100を介して、前回印刷終了ページからの再印刷指示を受け付けたと判定した場合、即ち「前回印刷終了ページから印刷」ボタン1101に対する押下指示を受け付けたと判定した場合には(ステップ709でYES)、処理をステップS710に進め、前回印刷終了ページから両面印刷処理を実行する。
一方、ステップS709の判定処理でNOと判定した場合には、前回印刷終了ページが印刷されている用紙を手差しトレイにセットする旨を報知する不図示の画面をLCD表示部に表示後、処理をステップS711に進め、前回印刷終了ページが印刷された用紙の裏面にその次ページを印刷する。そして、それ以降のページを給紙カセットに用意されている用紙に印刷する(ステップS712)。
以上が複合機101によって行われる再印刷処理の詳細な説明である。本発明では、前回印刷終了ページ情報と両面印刷設定情報とに応じて、どのページから印刷するかを判定し、再印刷処理をすることで、用紙の使用の無駄を省いた形での印刷処理が可能となる。特に、再印刷処理を行う印刷データに対して両面印刷が設定されており、且つ前回印刷終了ページが奇数ページの場合には、既に前回印刷終了ページが印刷された用紙の裏面から印刷を開始することが可能となる。
また、前回印刷終了ページの印刷がかすれてしまった等の場合には、再印刷処理を前回印刷終了ページから始めることも可能である。何れの再印刷を行ったとしても、再印刷処理の結果作成される印刷物は、ユーザがクライアントPC102で設定した印刷設定に従った印刷物になり、ユーザが当初想定していた印刷物を作成することが可能となる。
<第2の実施例>
次に、図6のステップS611の再印刷処理の第2の実施例について説明する。第2の実施例における再印刷処理では、図7を参照して既に説明した再印刷処理とは異なり、前回印刷終了ページを複合機101が備えるフィーダ装置により特定し、再印刷処理を行う実施例について説明する。再印刷処理以外の処理については既に説明したものと同様であるので、ここでの説明は割愛することにする。
図8は、第2の実施例における図6のステップS611の再印刷処理の詳細を示すフローチャートである。
まず、複合機101のCPU201は、キャンセルフラグ1411が「TRUE」である印刷データ情報に対応する印刷データに対する印刷指示を受け付けると、図12に示す原稿読み取り指示画面1200を操作部208のLCD表示部に表示する。
ここで、図12を参照して原稿読み取り指示画面1200の構成について説明する。図12は原稿読み取り指示画面1200の構成の一例を示す図である。図12に示す通り、原稿読み取り指示画面1200には、「原稿読み取りボタン」1201と「先頭ページから印刷ボタン」1202が設定されている。
「原稿読み取りボタン」1201は、フィーダにセットされている印刷済み原稿の読み取り処理の実行指示をCPU201に対して入力するために用いられるボタンである。「先頭ページから印刷」ボタン1202は、印刷データの先頭ページから再印刷処理の実行指示をCPU201に対して入力するために用いられるボタンである。以上が、原稿読み取り指示画面1200の構成の説明である。
図8の説明に戻る。ステップS801で原稿読み取り開始指示画面1200で「原稿読み取り」ボタン1201に対する押下指示を受け付けることによる原稿読み取り指示を受け付けたと判断した場合には、処理をステップS804に進める。一方、「先頭ページから印刷」ボタン1202に対する押下指示を受け付けることにより印刷指示を受け付けた場合には、処理をステップS803に進め、先頭ページからの保存データ印刷処理を行う。
ステップS804では、複合機101のCPU201は、フィーダ装置に載置された既に印刷データの一部ページが印刷された用紙の読み取り処理を行う。ここでは、単にフィーダ装置を用いて用紙の枚数をカウントする手法をとっても良いし、スキャナ214で用紙を読み取り、そのページに何らかのデータが印刷されているかを確認するようにしても良い。スキャナで読み取り処理をする場合には、当該印刷データが片面印刷設定の印刷データの場合には片面のみの読み取りを、両面印刷設定データの場合には両面の読み取り処理を行うことになる。そして、前回印刷最終ページを判定することになる。
ステップS805では、ステップS804の読み取り処理の結果に従って、前回印刷最終ページを取得する。そして、図13に示す原稿読み取り結果画面1300を操作部208のLCD表示部に表示する。
ここで、図13を参照して原稿読み取り結果画面1300の構成の一例ついて説明する。図13は原稿読み取り結果画面1300の構成の一例を示す図である。図13に示す通り、原稿読み取り結果画面1300には、「印刷」ボタン1301、「原稿読み取り」ボタン1302が設定されている。
「印刷」ボタン1301は、複合機101のCPU201に対して、再印刷処理の実行指示を入力するために用いられるボタンである。「原稿読み取り」ボタン1302は、複合機101のCPU201に対して、原稿の再読み取り指示を入力するために用いられるボタンである。以上が図13の原稿読み取り結果画面1300の構成の一例の説明である。
図8の説明に戻る。ステップS806で原稿読み取り結果画面表示後、当該画面に設定されている「印刷」ボタン1301に対する押下指示を受け付けることによる印刷指示を受け付けたとCPU201が判断した場合には(ステップS807でYES)、処理をステップS808に進める。一方、「原稿読み取りボタン」の押下指示を受け付けたと判断した場合には(ステップS807でNO)、処理をステップS803に進め、それ以降の処理を繰り返す。
ステップS808では、当該印刷データが両面印刷設定がされている印刷データであるか、片面印刷設定がされている印刷データであるかを判定する。片面印刷設定がされている印刷データであると判定した場合には(ステップS808でNO)、処理をステップS810に進める。一方、両面印刷設定がされている印刷データであると判定して場合には(ステップS808でYES)、処理をステップS809に進め、ステップS805で取得した前回印刷最終ページが奇数であるか偶数であるかを判定する。
ステップS809の判定処理で、印刷終了ページが偶数である(奇数ではない:NO)と判定した場合には、処理をステップS810に進める。ステップS810では、前回印刷終了ページの次ページからの再印刷処理を行うことになる。この再印刷処理では、印刷データが、片面印刷設定がされている印刷データの場合には片面印刷処理を、両面印刷設定がされている印刷データの場合には両面印刷処理を行うことになる。
ステップS809の判定処理で、印刷終了ページが奇数である(YES)と判定した場合には、処理をステップS811に進め、図11に示す印刷開始ページ指示画面をLCD表示部に表示する。ステップS812からステップS815の処理については、図7のステップS709からステップS712の処理と同様であるのでここでの詳細な説明は割愛する。
第2の実施例では、複合機101が備えるフィーダ装置やスキャナ214を用いて前回印刷最終ページを特定するので、例えば、既に印刷しているページ数が多い場合などに数え間違えの発生を低減させることが可能となる。
以上説明したように、本発明によれば、印刷処理を途中でキャンセルされた場合の再印刷処理を行う場合に、正常に印刷処理がなされたページを重複して印刷させることがないので、その結果として、用紙やトナー、インク等の使用を削減することが可能となる。
上記説明では、前回印刷最終ページが奇数ページであった場合に、既に前回印刷最終ページが印刷された用紙の裏にその次ページを印刷するかについて、図11の印刷開始ページ指示画面1100を介した操作指示に従ってCPU201が判定する構成について説明したが、例えば、複合機101が備える手差しトレイに用紙が設定されている場合には、手差しトレイに設定された用紙(即ち、前回印刷最終ページが印刷された用紙の裏面)にその次ページを印刷するとCPU201が判定するような構成にしても構わない。
また本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。