(57)【要約】【課題】印刷情報を記憶する記憶部が小容量である場合でも、印刷物のシートリカバリを極力実行して印刷ページ抜けを防止し、シートリカバリができなかった場合には、ユーザにページ抜けを通知して分かり易くする。【解決手段】エラー検出部が、印刷開始後の印刷エラーを検出し、記憶制御部が、外部装置から１ページ分の印刷情報が複数に分割され送信される分割印刷情報を取得して記憶部に記憶制御する。印刷制御部は、記憶部に記憶した分割印刷情報を用いて、エラーが起こった際に１ページの先頭の分割印刷情報から再印刷をするシートリカバリ処理を行うように印刷部を制御する。判別部は、シートリカバリ処理を、エラー発生後に実行することが可能か否かを、エラーの事前に判別する。また、表示制御部は、シートリカバリ処理の実行が不可能であると判別した場合、シートリカバリ処理を行わない旨のメッセージを表示部に表示する。【選択図】図２
2018058331.tif 000002
【特許請求の範囲】
【請求項１】
外部装置から送信される印刷情報を取得して記憶部に記憶制御する記憶制御部と、
前記印刷情報の印刷開始後の印刷エラーを検出するエラー検出部と、
前記エラーが起こったページの再印刷をするシートリカバリ処理を実行するか否かを判別する判別部と、
前記シートリカバリ処理を実行する判別結果が得られた場合に、前記記憶部に記憶した前記印刷情報を用いて前記シートリカバリ処理を実行するように印刷部を制御する印刷制御部と、
前記シートリカバリ処理を実行しない判別結果が得られた場合に、前記シートリカバリ処理を行わない旨のメッセージを表示部に表示する表示制御部と
を有する画像形成装置。
【請求項２】
前記印刷制御部は、
前記シートリカバリ処理を実行する判別結果が得られた場合、前記シートリカバリ処理を実行した後に、継続して前記印刷情報の前記エラーが起こったページ以降のページの印刷を行うように前記印刷部を制御し、
前記シートリカバリ処理を実行しない判別結果が得られた場合、前記印刷制御部は、前記エラーが起こったページは印刷せず、前記メッセージ表示後に前記エラーが起こったページ以降のページの印刷を行うように前記印刷部を制御すること
を特徴とする請求項１に記載の画像形成装置。 
【請求項３】
前記印刷情報は、１ページ分の印刷情報が複数に分割される分割印刷情報を含み、
前記記憶制御部は、前記分割印刷情報を前記記憶部に記憶し、
前記印刷制御部は、前記分割印刷情報を用いて、前記エラーが起こった際に前記１ページの先頭の前記分割印刷情報から再印刷をするシートリカバリ処理を実行するように前記印刷部を制御し、
前記判別部は、前記１ページの先頭の前記分割印刷情報を保持したまま、追加の分割印刷情報を前記記憶部に記憶可能であるか否かを判別することで、前記シートリカバリ処理が可能か否かの判別を行うこと
を特徴とする請求項１又は請求項２に記載の画像形成装置。
【請求項４】
前記印刷情報は、少なくとも１つの印刷設定情報を含み、
前記判別部は、前記印刷設定情報または、印刷設定情報の組み合わせによって、前記シートリカバリ処理を実行するか否かの判別を行うこと
を特徴とする請求項１から請求項３のうち、いずれか一項に記載の画像形成装置。
【請求項５】
前記記憶制御部は、前記分割印刷情報の、前記記憶部に対する記憶ができないと判別された場合、前記記憶部に記憶されている取得順が早い分割印刷情報を削除し、拡大した余領域に、前記分割印刷情報を記憶制御し、
前記表示制御部は、前記シートリカバリ処理を行なわず、前記エラーが発生した次のページから印刷を再開する旨のメッセージを表示部に表示すること
を特徴とする請求項３に記載の画像形成装置。
【請求項６】
前記記憶制御部は、前記記憶部に対する前記分割印刷情報の記憶ができないと判別され、前記印刷エラーが検出された際に取得された前記分割印刷情報が属するページが、前記記憶部に記憶済みの分割印刷情報が属するページの次のページの分割印刷情報であった場合、前記印刷エラーから復帰した際に、前記印刷制御部により、前記記憶部に記憶されている前記分割印刷情報に基づいて前記シートリカバリ処理が行われることで、前記記憶部に記憶済みのページである前ページの印刷が完了した後に、前記前ページの分割印刷情報を削除することで形成した余領域に、前記印刷エラーが検出された際に取得された前記分割印刷情報を記憶制御すること
を特徴とする請求項３又は請求項４に記載の画像形成装置。
【請求項７】
前記判別部は、前記記憶部に所定量以上の前記印刷情報の記憶領域が必要となる高画質印刷を示す所定条件に該当するか否かを判別する予備判別処理を行い、前記予備判別処理により、前記所定条件に該当しないと判別された前記印刷情報に対して、少なくとも用紙サイズと印刷品質とに基づいて、さらに前記シートリカバリ処理を行うか否かを判別する本判別処理を行うこと
を特徴とする請求項１から請求項６のうち、いずれか一項に記載の画像形成装置。
【請求項８】
前記表示制御部は、前記シートリカバリ処理を実行しない判別結果が得られた場合、印刷エラーが生じた次のページから印刷を再開するか、又は、印刷を中止するかを、ユーザに選択させるためのメッセージを前記表示部に表示し、
前記印刷制御部は、前記メッセージに基づいて前記印刷の中止が選択された場合、印刷を中止するように前記印刷部を制御し、前記印刷の再開が選択された場合、印刷エラーが生じた次のページから印刷を再開するように前記印刷部を制御すること
を特徴とする請求項１から請求項６のうち、いずれか一項に記載の画像形成装置。
【請求項９】
前記記憶制御部は、前記印刷の中止が選択された場合、中止した印刷の前記印刷情報を前記記憶部から消去すること
を特徴とする請求項８に記載の画像形成装置。
【請求項１０】
前記判別部により、前記シートリカバリ処理を実行しない判別結果が得られた場合、前記記憶制御部は、ページ抜けが発生していることを示すページ抜け明示ページを印刷するための印刷情報を前記記憶部に記憶制御し、
前記印刷制御部は、前記記憶部に記憶された前記印刷情報に基づいて、前記ページ抜け明示ページの印刷を行うように前記印刷部を制御すること
を特徴とする請求項１から請求項６のうち、いずれか一項に記載の画像形成装置。
【請求項１１】
前記記憶制御部は、前記ページ抜け明示ページの印刷が完了した際に、前記記憶部に記憶されている前記ページ抜け明示ページの前記印刷情報を消去すること
を特徴とする請求項１０に記載の画像形成装置。
【請求項１２】
記憶制御部が、外部装置から送信される印刷情報を取得して記憶部に記憶制御する記憶制御ステップと、
エラー検出部が、前記印刷情報の印刷開始後の印刷エラーを検出するエラー検出ステップと、
判別部が、前記エラーが起こったページの再印刷をするシートリカバリ処理を実行するか否かを判別する判別ステップと、
印刷制御部が、前記シートリカバリ処理を実行する判別結果が得られた場合に、前記記憶部に記憶した前記印刷情報を用いて前記シートリカバリ処理を実行するように印刷部を制御する印刷制御ステップと、
表示制御部が、前記シートリカバリ処理を実行しない判別結果が得られた場合に、前記シートリカバリ処理を行わない旨のメッセージを表示部に表示する表示制御ステップと
を有する画像形成方法。
【請求項１３】
コンピュータを、
外部装置から送信される印刷情報を取得して記憶部に記憶制御する記憶制御部と、
前記印刷情報の印刷開始後の印刷エラーを検出するエラー検出部と、
前記エラーが起こったページの再印刷をするシートリカバリ処理を実行するか否かを判別する判別部と、
前記シートリカバリ処理を実行する判別結果が得られた場合に、前記記憶部に記憶した前記印刷情報を用いて前記シートリカバリ処理を実行するように印刷部を制御する印刷制御部と、
前記シートリカバリ処理を実行しない判別結果が得られた場合に、前記シートリカバリ処理を行わない旨のメッセージを表示部に表示する表示制御部として機能させること
を特徴とする画像形成プログラム。
【請求項１４】
前記印刷制御部は、
前記シートリカバリ処理を実行する判別結果が得られた場合、前記シートリカバリ処理を実行した後に、継続して前記印刷情報の前記エラーが起こったページ以降のページの印刷を行うように前記印刷部を制御し、
前記シートリカバリ処理を実行しない判別結果が得られた場合、前記印刷制御部は、前記エラーが起こったページは印刷せず、前記メッセージ表示後に前記エラーが起こったページ以降のページの印刷を行うように前記印刷部を制御すること
を特徴とする請求項１３に記載の画像形成プログラム。 
【請求項１５】
前記印刷情報は、１ページ分の印刷情報が複数に分割される分割印刷情報を含み、
前記記憶制御部は、前記分割印刷情報を前記記憶部に記憶し、
前記印刷制御部は、前記分割印刷情報を用いて、前記エラーが起こった際に前記１ページの先頭の前記分割印刷情報から再印刷をするシートリカバリ処理を実行するように前記印刷部を制御し、
前記判別部は、前記１ページの先頭の前記分割印刷情報を保持したまま、追加の分割印刷情報を前記記憶部に記憶可能であるか否かを判別することで、前記シートリカバリ処理が可能か否かの判別を行うこと
を特徴とする請求項１３又は請求項１４に記載の画像形成プログラム。
【請求項１６】
前記印刷情報は、少なくとも１つの印刷設定情報を含み、
前記判別部は、前記印刷設定情報または、印刷設定情報の組み合わせによって、前記シートリカバリ処理を実行するか否かの判別を行うこと
を特徴とする請求項１３から請求項１５のうち、いずれか一項に記載の画像形成プログラム。
【請求項１７】
前記記憶制御部は、前記分割印刷情報の、前記記憶部に対する記憶ができないと判別された場合、前記記憶部に記憶されている取得順が早い分割印刷情報を削除し、拡大した余領域に、前記分割印刷情報を記憶制御し、
前記表示制御部は、前記シートリカバリ処理を行なわず、前記エラーが発生した次のページから印刷を再開する旨のメッセージを表示部に表示すること
を特徴とする請求項１５に記載の画像形成プログラム。
【請求項１８】
前記記憶制御部は、前記記憶部に対する前記分割印刷情報の記憶ができないと判別され、前記印刷エラーが検出された際に取得された前記分割印刷情報が属するページが、前記記憶部に記憶済みの分割印刷情報が属するページの次のページの分割印刷情報であった場合、前記印刷エラーから復帰した際に、前記印刷制御部により、前記記憶部に記憶されている前記分割印刷情報に基づいて、前記シートリカバリ処理が行われることで、前記記憶部に記憶済みのページである前ページの印刷が完了した後に、前記前ページの分割印刷情報を削除することで形成した余領域に、前記印刷エラーが検出された際に取得された前記分割印刷情報を記憶制御すること
を特徴とする請求項１５又は請求項１６に記載の画像形成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、画像形成方法、及び、画像形成プログラムに関する。
【背景技術】
【０００２】
今日において、シートリカバリ機能が設けられた画像形成装置が知られている。この画像形成装置は、用紙の搬送詰まり等の印刷エラーの発生により、印刷が途中で停止した場合、詰まった用紙が取り除かれ、画像形成装置がエラーから復旧した後、メモリに記憶されている印刷が完了してない印刷情報から印刷を再開する。これにより、エラーが生じた場合でも、印刷物のページ抜けを発生させることなく、印刷を完了することができる。
【０００３】
特許文献１（特開２００６−２０８７３９号公報）には、普通紙、ＯＨＰ（Overhead  Projector）等の媒体種別、標準文書、機密文書等の文書属性等に基づいて、きめ細かにジャム復旧処理のモードを決定する画像形成装置が開示されている。この画像形成装置は、記録媒体のジャム解除後における復旧モードの決定条件をＲＯＭに格納しておく。ジャム検出部によりジャムが検出されると、復旧モード決定部は、ＲＯＭに記憶されている復旧モードの決定条件に基づいて復旧モードを決定する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、例えば低価格の画像形成装置の場合、製造コストを抑えるため記憶容量の少ないメモリが設けられることがある。メモリの記憶容量が少なければ、印刷の条件次第では、1ページ分の印刷情報の保管ができないため、シートリカバリを行うことができない場合がある。
【０００５】
また、シートリカバリが行われない場合でも、出力をし終えた印刷物は、一見、印刷物の全ページが揃っているように見えるため、ユーザは、そのまま気付かずに印刷物を持ち帰ってしまい、後から印刷物を使用するときに印刷ページ抜けに気付くことになる。このとき、ユーザはページが揃った印刷物を得るために再度印刷をしなおさなければならない場合がある、という問題があった。
【０００６】
本発明は、上述の課題に鑑みてなされたものであり、印刷物のシートリカバリを極力実行して印刷ページ抜けを防止し、シートリカバリができなかった場合にはユーザにページ抜けが分かりにくい不便さを低減できる画像形成装置、画像形成方法、及び、画像形成プログラムの提供を目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、外部装置から送信される印刷情報を取得して記憶部に記憶制御する記憶制御部と、印刷情報の印刷開始後の印刷エラーを検出するエラー検出部と、エラーが起こったページの再印刷をするシートリカバリ処理を実行するか否かを判別する判別部と、シートリカバリ処理を実行する判別結果が得られた場合に、記憶部に記憶した印刷情報を用いてシートリカバリ処理を実行するように印刷部を制御する印刷制御部と、シートリカバリ処理を実行しない判別結果が得られた場合に、シートリカバリ処理を行わない旨のメッセージを表示部に表示する表示制御部とを有する。
【発明の効果】
【０００８】
本発明によれば、印刷物のシートリカバリを極力実行して印刷ページ抜けを防止し、シートリカバリができなかった場合にはユーザにページ抜けが分かりにくい不便さを低減できるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施の形態の画像形成装置のハードウェア構成図である。
【図２】図２は、画像形成装置に設けられている画像形成プログラムを実行することで実現される各機能の機能ブロック図である。
【図３】図３は、第１の実施の形態の画像形成装置の印刷処理の流れを示すフローチャートである。
【図４】図４は、第１の実施の形態の画像形成装置で取り扱われる印刷情報のフォーマットを示す図である。
【図５】図５は、第１の実施の形態の画像形成装置において、シートリカバリを行うか否かの判定動作の流れを示すフローチャートである。
【図６】図６は、第１の実施の形態の画像形成装置の、ＪＡＭ発生時におけるＲＡＭに対するバンドデータの記憶動作を説明するための模式図である。
【図７】図７は、第１の実施の形態の画像形成装置のシートリカバリ動作の流れを示すフローチャートである。
【図８】図８は、第１の実施の形態の画像形成装置において、シートリカバリ動作が行われない場合に表示されるエラーメッセージの一例を示す図である。
【図９】図９は、第２の実施の形態の画像形成装置において、シートリカバリを行うか否かの判定動作の流れを示すフローチャートである。
【図１０】図１０は、第２の実施の形態の画像形成装置において、シートリカバリを行うか否かの判定に用いられる判定テーブルの一例を示す図である。
【図１１】図１１は、第３の実施の形態の画像形成装置における、シートリカバリを行うか否かの判定動作の流れを示すフローチャートである。
【図１２】図１２は、リカバリＮＧモード一覧表の一例を示す図である。
【図１３】図１３は、シートリカバリ判定表の一例を示す図である。
【図１４】図１４は、第４の実施の形態の画像形成装置における、シートリカバリを行うか否かの判定結果に応じた動作の流れを示すフローチャートである。
【図１５】図１５は、シートリカバリが行われない場合に、次ページから印刷を再開するか否かを問うメッセージの一例を示す図である。
【図１６】図１６は、ユーザにより印刷の中止が指定された際に表示されるメッセージの一例を示す図である。
【図１７】図１７は、次ページからの印刷の中止が指定された場合に、印刷エラーが生じた印刷ジョブのバンドデータをＲＯＭから消去する動作を説明するためのフローチャートである。
【図１８】図１８は、印刷エラーが生じた印刷ジョブであり、ユーザから印刷の中止が指定された印刷ジョブをＲＡＭから消去する動作を説明するための模式図である。
【図１９】図１９は、第５の実施の形態の画像形成装置における、「ページ抜け明示ページ」を印刷可能とする処理の流れを示すフローチャートである。
【図２０】図２０は、ページ抜け明示ページの印刷用のバンドデータの印刷例を示す図である。
【図２１】図２１は、ページ抜け明示ページの印刷用のバンドデータをＲＡＭに記憶する流れを示す模式図である。
【図２２】図２２は、印刷後に、ページ抜け明示ページの印刷用のバンドデータがＲＡＭから消去される様子を示す模式図である。
【発明を実施するための形態】
【００１０】
以下、実施の形態となる複合機の説明をする。
【００１１】
（第１の実施の形態）
（画像形成装置のハードウェア構成）
まず、図１は、第１の実施の形態の画像形成装置のハードウェア構成を示す図である。この図１に示すように、画像形成装置は、ＣＰＵ（central  processing  unit）１、ＲＡＭ（Random  Access  Memory）２、ＲＯＭ（Read  Only  Memory）３、パネルインタフェース（パネルＩ／Ｆ）４、エンジンＩ／Ｆ５、外部Ｉ／Ｆ６を有している。ＣＰＵ１〜外部Ｉ／Ｆ６は、それぞれバスライン９を介して相互に接続されている。パネルＩ／Ｆ４には、操作パネル７が接続されている。エンジンＩ／Ｆ５には、プロッタエンジン８が接続されている。外部Ｉ／Ｆ６には、外部装置１０が接続される。プロッタエンジン８は、印刷部の一例である。
【００１２】
ＲＯＭ３には、画像処理装置を起動させるためのブートプログラム、後述する画像形成プログラム、及び、各種データが格納されている。また、ＲＡＭ２は、ＲＯＭ３から読み出された各種プログラム、印刷情報等を一時的に記憶する。また、ＲＡＭ２は、外部装置１０から送信される印刷情報を記憶する。ＲＡＭ２は、記憶部の一例であり、１ページ分の印刷情報が複数に分割されて送信される分割印刷情報（バンドデータ）及びページ情報等を含む印刷情報を記憶するページメモリである。
【００１３】
パネルＩ／Ｆ４は、操作パネル７を操作するためのインタフェースである。パネルＩ／Ｆ４は、例えばＵＡＲＴ通信（非同期シリアル通信）を用いて、表示画面に表示するメッセージを操作パネル７に送信する。また、パネルＩ／Ｆ４は、ユーザが操作パネル７を操作することで入力されたキー操作通知等を取得する。操作パネル７は、後述する印刷エラー時のメッセージ等の、ユーザへのメッセージを表示するための表示機能と、ユーザによる入力操作を検出する操作検出機能を有している。
【００１４】
エンジンＩ／Ｆ５は、プロッタエンジン８との間で、情報の送受信を行うためのインタフェースである。エンジンＩ／Ｆ５は、例えばＲＳ−２３２Ｃ通信を用いて、プロッタエンジン８と間で情報の送受信を行う。プロッタエンジン８は、エンジンＩ／Ｆ５から送信されたた印刷情報に基づいて、用紙に画像等を印刷する。また、プロッタエンジン８からエンジンＩ／Ｆ５へは、エンジンの状態を通知する。例えばプロッタエンジン８内で用紙が詰まったことを通知するＪＡＭ通知、及び、プロッタエンジン８のカバーが開いていることを通知するカバーオープン通知等が、エンジンＩ／Ｆ５に対して行われる。なお、印刷開始後の用紙の詰まり（ＪＡＭ）は印刷エラーの一例である。印刷エラーにはこの他に、印刷開始後に画像形成装置の本体カバーを開けた時のカバーオープン又は印刷開始後にトナーが無くなるトナー切れ等も含む。
【００１５】
また、この実施の形態の説明では、画像形成装置にプロッタエンジン８が設けられていることとして説明を進めるが、コピーエンジン、スキャナエンジン等の他の画像形成エンジンを設けてもよい。
【００１６】
また、本発明で説明する画像形成装置は、インクジェット装置を含んでもよい。インクジェット装置はインクジェットヘッドからインク（液滴）を用紙に飛ばして画像を形成する画像形成装置である。このようなインクジェット装置におけるプリントジョブによる画像形成の概要を説明する。ユーザによるプリントジョブ指示時に、まず外部装置（ＰＣ等）がインクジェット装置用のプリンタドライバを用いて印刷情報をインクジェット装置に送信する。印刷情報はインクジェット装置で、ジョブ情報・ページ情報・印刷画像等に分析・分解される。また印刷画像は複数の分割印刷情報（バンドデータ）に分割される。インクジェット装置は、インクジェットヘッドを用いて、バンドデータ毎に一走査分（一行分）の作像を、用紙に対して行い、印刷完了までこれを繰り返す。なお、外部装置が印刷画像をバンドデータに分割して送信し、インクジェット装置がバンドデータを受信し印刷する方法でもよい。
【００１７】
このような構成の画像形成装置では、低コスト化により低容量のメモリ（ＲＡＭで実現するページメモリ）を設けたことを背景（原因）として、本発明の課題が生じ易い状況、即ち、１ページ分の全てのバンドデータが、メモリに収まらない状況が生じる。なお、画像形成装置で、インクジェット装置以外のレーザプリンタや複合機が、上記のようなバンドデータを用いて印刷する構成であってもよい。
【００１８】
外部Ｉ／Ｆ６は、画像形成装置と、外部の外部装置１０との間で、印刷情報の送受信を行うためのインタフェースである。外部Ｉ／Ｆ６は、例えばＵＳＢ通信を用いて、外部装置１０から送信された印刷情報を受信する。外部装置１０は、例えばＰＤＦ（登録商標）（portable  document  format）ファイル等の電子データから、プロッタエンジン８が印刷可能な形式の印刷情報を生成する機器であり、例えばパーソナルコンピュータ装置又はスマートデバイス等が相当する。
【００１９】
（画像形成装置のソフトウェア構成）
図２は、画像形成装置のソフトウェア構成を示す図である。ＣＰＵ本体１は、例えばＲＯＭ３等に記憶されている画像形成プログラムを実行することで、図２に示す各機能を実現する。具体的には、ＣＰＵ１は、画像形成プログラムを実行することで、残量算出部５１、記憶制御部５２、解析部５３、ＪＡＭ検出部５４、エンジン制御部５５、及び、表示制御部５６等の各機能を実現する。解析部５３は、判別部の一例である。ＪＡＭ検出部５４は、エラー検出部の一例である。エンジン制御部５５は、印刷制御部の一例である。
【００２０】
なお、残量算出部５１〜表示制御部５６は、画像形成プログラムにより、ソフトウェア的に実現されることとしたが、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。
【００２１】
また、画像形成プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）などのコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）、ブルーレイ（登録商標）ディスク、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、画像形成プログラムは、インターネット等のネットワーク経由でインストールするかたちで提供してもよい。また、画像形成プログラムは、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【００２２】
残量算出部５１は、画像形成装置が外部装置から印刷情報（分割印刷情報含む）を取得時に、印刷情報を格納するＲＡＭ２の空き容量を監視して、印刷情報の格納可能サイズを算出する。また、記憶制御部５２は、ＲＡＭ２への印刷情報の記憶、及び、シートリカバリ処理を行うために、ＲＡＭ２に記憶されている印刷情報を呼び出す動作を行う。これは、シートリカバリを行う場合に、当初の印刷のために記憶した印刷情報と同じ印刷情報に基づいて再印刷処理を行うためである。解析部５３は、印刷情報の形式を解析処理し、印刷設定情報及び印刷画像等に分け、又は、印刷設定情報の種類の特定等を行う。
【００２３】
ＪＡＭ検出部５４は、プロッタエンジン８から通知される、用紙センサの搬送検出出力等に基づいて用紙の搬送状態等を監視し、搬送路等に用紙詰まり（ＪＡＭ）が発生した場合には、ユーザに通知すると共に、内部の処理をＪＡＭ発生時の処理に変更する。具体的には、ＪＡＭ検出部５４は、印刷する用紙を搬送する搬送路を移動させるモータの回転移動量と、用紙の移動位置を検出する移動センサのセンサ出力を監視する。そして、ＪＡＭ検出部５４は、モータの回転移動量に相当するセンサ出力を得られない場合、用紙詰まり等のＪＡＭの発生を検出する。すなわち、移動センサが設けられた位置まで用紙が搬送されたことを示すモータの回転移動量が得られたにもかかわらず、移動センサで用紙の存在が検出されない場合、用紙は、移動センサの手前の搬送路上で詰まっている可能性がある。このような場合、ＪＡＭ検出部５４は、ＪＡＭの発生を検出する。
【００２４】
また、ＪＡＭ検出部５４は、搬送路等に詰まった用紙が取り除かれ、正常に用紙を搬送可能な状態となったことを検出し、印刷が可能な状態に復帰したことをユーザに通知すると共に、内部の処理をＪＡＭ状態から復帰した際の処理に変更する。一例ではあるが、ＪＡＭ検出部５４は、ＪＡＭが発生した際、又は、ＪＡＭ状態から復帰した際、ＪＡＭの発生又はＪＡＭからの復帰を示す通知画面の作成を表示制御部５６へ依頼する。表示制御部５６は、ＪＡＭの発生又はＪＡＭからの復帰を示す通知画面を操作パネル７に表示する。
【００２５】
エンジン制御部５５は、プロッタエンジン８に対する制御を行う。エンジン制御部５５は、通常の印刷時には、記憶制御部５２によりＲＡＭ２から順に読み出される印刷情報をプロッタエンジン８に送信する。記憶制御部５２は、ＪＡＭ検出部５４でＪＡＭの発生が検出された場合、正常な印刷を続行できなくなるため、印刷情報の読み出し制御を停止する。
【００２６】
また、この第１の実施の形態の画像形成装置の場合、ＪＡＭから復帰した際には、シートリカバリ処理の有無に応じて実行する処理が異なる。シートリカバリを実行する場合、記憶制御部５２は、印刷を完了していないページの最初の印刷情報を、ＲＡＭ２から読み出してプロッタエンジン８に送信する。これに対して、シートリカバリを実行しない場合、後述するようにＪＡＭの発生を示すメッセージを操作パネル７に表示する。なお、シートリカバリを実行しない場合、ＪＡＭが発生した印刷ジョブをキャンセルしてもよい。また、印刷が完了していないページの次のページの最初の印刷情報から印刷を再開してもよい。
【００２７】
（通常の印刷動作）
次に、図３のフローチャートを用いて、第１の実施の形態の画像形成装置における通常の印刷動作の流れを説明する。まず、記憶制御部５２は、例えばパーソナルコンピュータ装置等の外部装置から印刷情報（印刷設定情報・ページ毎に複数に分割された分割印刷情報（バンドデータ）等を含む）を取得すると（ステップＳ０）、印刷設定情報を抽出・解析し（ステップＳ１）、ＲＡＭ２等の記憶部に記憶する（ステップＳ２）。エンジン制御部５５は、プロッタエンジン８に対して印刷要求を行うと共に（ステップＳ３）、記憶制御部５２によりＲＡＭ２から読み出されるバンドデータを、プロッタエンジン８に供給する。なお、印刷情報中の印刷画像は、外部装置側で分割して分割印刷情報として送信しても、画像形成装置に印刷画像を受信した後で、画像形成装置側で分割してもよい。
【００２８】
プロッタエンジン８は、供給されたバンドデータが、ページの先頭に相当するバンドデータであるか否かを判別し（ステップＳ５）、ページの先頭に相当するバンドデータであると判別（後述の、各バンドデータのヘッダの順序情報の「００１」で判別）した場合（ステップＳ５：Ｙeｓ）、用紙の給紙を行う（ステップＳ６）。そして、ステップＳ７において、バンドデータの印刷を開始する（バンドデータ１つを１走査分として用紙に作像する）。また、供給されたバンドデータが、ページの先頭に相当するバンドデータではないと判別（後述の、各バンドデータのヘッダの順序情報「００１」ではないことで判別）した場合（ステップＳ５：Ｎｏ）、プロッタエンジン８は、そのまま印刷を継続する（ステップＳ６）。
【００２９】
次に、プロッタエンジン８は、印刷を継続することで、ページの末端に相当するバンドデータの印刷が完了したか否かを判別（後述の、各バンドデータのヘッダの、ページ終了情報「end of band」で判別）する（ステップＳ８）。ページの末端に相当するバンドデータの印刷が完了していないものと判別された場合（ステップＳ８：Ｎｏ）、処理がステップＳ４に戻り、ページの末端に相当するバンドデータの印刷が完了するまでの間、順次、バンドデータの印刷が行われる。
【００３０】
これに対して、プロッタエンジン８により、ページの末端に相当するバンドデータの印刷が完了したと判別された場合（ステップＳ８：Ｙeｓ）、印刷が完了した用紙を排紙する（ステップＳ９）。排紙が行われると、記憶制御部５２は、ＲＡＭ２に記憶されている印刷済みのバンドデータを削除し（ステップＳ１０）、図３のフローチャートの処理を終了する。なお、最終ページの最終バンドデータの印刷が完了し、全てのページの排紙が完了したときに印刷ジョブ完了となる。
【００３１】
（印刷情報の構成）
次に、図４に、印刷情報の構成を示す。この図４は、ＲＡＭ２上に、順次、記憶される印刷情報を概念的に示した図である。この図４に示すように、印刷情報は、プリンタ言語情報６１、ジョブ情報６２、ページ情報６３、及び、印刷画像データ６４、６５、６６，６７を有している。
【００３２】
プリンタ言語情報６１は、プリンタ言語の種類が文字列で記載されている。すなわち、画像形成装置が取り扱い可能な印刷情報の形式は、プロッタエンジン８の種類によって異なる。このため、プリンタ言語情報６１は、プリンタ言語情報６１に後続の印刷情報の形式等を示す情報となっている。例えば、パーソナルコンピュータ装置から取得された印刷情報の場合、プリンタ言語情報６１として、「ＲＰＣＲ」等の文字列が記載される。また、端末デバイスから取得された印刷情報の場合、プリンタ言語情報６１として、「ＲａＳ２」等の文字列が記載される。なお、プリンタ言語情報６１は、は、実際には印刷されない。
【００３３】
ジョブ情報６２としては、例えば、ジョブ名、印刷したファイル名、ジョブの固有識別情報等の印刷ジョブ固有の情報が記載される。ジョブ情報６２の情報のうち、一部は操作パネル７に表示される。
【００３４】
ページ情報６３は、例えば以下に示すような、各ページの印刷に必要な印刷設定の条件に関する印刷設定情報、及び印刷画像の形式的な情報、等が記載されている。
【００３５】
１.印刷設定情報は、以下の各種設定情報、等を含む。
・印刷モード：写真モード・通常文書モード（ワードファイルやＰＤＦ、Ｗｅｂブラウザ表示した画面等の印刷）、等、データ種類に基づく印刷モード
・印刷用紙の種類  ：普通紙、写真用紙、光沢紙、薄紙、等
・印刷品質        ：画質優先、標準、速度優先、等
・印刷の色数：モノクロ、２色、フルカラー、等
・印刷用紙サイズ：Ａ４，Ａ３、レター、または使用する給紙トレイ等
【００３６】
２．印刷画像の形式的な情報は、以下に例示する印刷画像の形式情報を含む。
・印刷ページの全数
・用紙サイズに基づく、用紙の高さ（１ページ分の縦の長さ）・幅（１ページ分の横の長さ）
・印刷画像の解像度
・バンドの高さ（用紙縦方向における、１バンド分の長さ）
【００３７】
画像形成装置は、ページ情報６３から印刷に必要な情報を抽出して利用する。また、プリンタ言語の種類によっては、画像情報６４，６５の画像サイズを、ページ情報６３中に記載されている印刷画像の形式情報に基づいて算出可能である。この場合、バンドデータの画像サイズ（データ量）は、用紙の幅×バンドの長さ×解像度。１ページのデータ量は、用紙の幅×用紙の高さ×解像度、等、算出可能である。
【００３８】
印刷画像データ６４、６５は、１ページ分の画像データを複数の画像データに分割したデータとなっている。分割により形成された各画像データが、上述の「バンドデータ」となっている。各バンドデータは、ページ情報６３に続いて、１バンド目のバンドデータ、２バンド目のバンドデータ・・・等のように印刷情報内に記載されている。なお、印刷画像データ６６は、１ページ目のｎバンド目のバンドデータであり、そのページの最後のバンドデータを示す。印刷画像データ６７は、印刷ジョブの最終ページの最後のバンドデータを示す。符号６９は、印刷画像データの１ページ分を示す。
【００３９】
なお、各バンドデータにはヘッダ情報が付加されている。ヘッダ情報には、何ページ目かを示すページ数と、バンドデータの順番を示すバンド識別情報（バンドＩＤ）とを対応付けた順序情報が記載されている。例えば、１ページ目の１番目のバンドデータであれば、「１−００１」、１ページ目の２番目は「１−００２」、２ページ目の３番目は、「２−００３」といった順序情報により、全てのバンドデータが何ページ目の何バンド目かが分かるようになっている。１−００１、２−００１など「００１」はページ先頭のバンドデータを示す開始情報として機能する。また、印刷画像データ６６等、各ページの最後のバンドデータは、ヘッダ内に、「エンド・オブ・バンド（end  of  band）」といったページ終了を示すページ終了情報を持っている。印刷画像データ６７のような印刷ジョブの最終ページの最後のバンドデータは、ヘッダ内に「エンド・オブ・ジョブ（end  of  job）」といったジョブの最後のデータを示すジョブ終了情報を持っていてもよい。なお、図４の６８に示すような１ページ内の各印刷画像と、各印刷画像のヘッダ情報とを併せたものを、「分割印刷情報」、と定義してもよい。なお分割印刷情報のことをバンドデータと呼んでもよい。また、印刷情報のうち、印刷対象となる印刷画像データの１ジョブ分全体を「印刷画像データ全体」、と定義してもよい。
【００４０】
画像形成装置は、パーソナルコンピュータ装置等から印刷情報を取得する場合、最初にプリンタ言語情報６１〜ページ情報６３を取得し、以後、１バンド目のバンドデータ、２バンド目のバンドデータ・・・の順に取得する。画像形成装置は、ページ情報６３を取得してから、次のページ情報６３を取得するまでの間に取得する印刷情報を、１ページ分の印刷情報として認識して印刷制御を行う。なお、最終ページの印刷情報に対しては、最終ページであることを示すコマンドが付加されている。画像形成装置は、最終ページであることを示すコマンドが付加された印刷情報の印刷完了後に印刷動作を終了する。または、形式情報の印刷ページの全数と、順序情報のページ数を比較して、印刷中の印刷画像が最終ページに含まれると判別してもよい。
【００４１】
（シートリカバリの判定動作）
次に、第１の実施の形態の画像形成装置は、例えばシートリカバリの判定を、例えば以下のタイミングで実施する。
・分割印刷情報（バンドデータ）の取得時毎の、バンドデータ毎のＲＡＭ２の残量確認時（図５のフローチャートに示す動作）
・印刷情報内のページ情報６３から印刷設定情報を取得する時（図９フローチャートに示す動作。第２の実施形態で説明。）
【００４２】
この判定結果に基づいて、シートリカバリの実施又は非実施の決定（設定又は設定解除）をしておき、ＪＡＭ等の印刷エラーの解除時に、シートリカバリ動作を実行する（図７のフローチャートに示す動作）。一例ではあるが、第１の実施の形態の画像形成装置の場合、デフォルト設定として、「シートリカバリを実行する設定」となっている。このシートリカバリを実行するか否かを示すシートリカバリ情報は、例えばＲＡＭ２又はＲＯＭ３等の記憶部に記憶されている。後述するが、ＣＰＵ１は、ＪＡＭの解除時に、記憶部に記憶されているシートリカバリ情報を参照し、シートリカバリ動作の実行の有無を判断する。
【００４３】
まず、図５のフローチャートを用いて、シートリカバリの判定動作を説明する。なお、この図５のフローチャートに示すシートリカバリの判定動作は、印刷ジョブ単位で実行される。また、図５のフローチャートは、図３（全体動作のフローチャート）のサブフローチャートであり、図３のステップＳ０において印刷情報を取得した後、又は、ステップＳ２においてバンドデータを含む印刷情報をＲＡＭ２に格納した後に実行される。まず、図５のフローチャートのステップＳ１１ａで、バンドデータを取得する。ステップＳ１１ｂでは、図２に示す残量算出部５１が、バンドデータを記憶する記憶部の一例となっているＲＡＭ２の記憶領域の残量（余領域）を検出する。残量算出部１５は、ＲＡＭ２の全体の記憶容量と、現在、印刷情報を記憶することで使用されている記憶領域の大きさとの差分を計算することで、ＲＡＭ２の余領域を算出する。
【００４４】
また、ステップＳ１２では、解析部５３が、ＪＡＭ発生時に取得されたバンドデータのデータサイズを検出する。解析部５３は、図４を用いて説明した印刷情報のページ情報６３に含まれている印刷情報から、バンドデータのデータサイズを計算する。解析部５３は、例えば印刷情報中のページ情報６３に含まれている用紙サイズ、解像度、１バンドの高さ情報から、「用紙サイズ（ｉｎｃｈ）×解像度（ｄｐｉ）×バンドの高さ（ｌｉｎｅ）」の演算を行うことで、バンドデータのデータサイズを計算する。また、各バンドデータに画像データが含まれている場合、解析部５３が、含まれている画像データを読み取ることで、データサイズを検出してもよい。
【００４５】
次に、ステップＳ１３では、解析部５３が、ＪＡＭ発生時に取得されたバンドデータのデータサイズは、ＲＡＭ２の余領域以下であるか否かを判別する。図６は、ＲＡＭ２の余領域と、ＲＡＭ２に記憶されるバンドデータの関係を示す図である。このうち、図６（ａ）は、これからＲＡＭ２に記憶しようとしている２ページ目の２バンド目のバンドデータのデータサイズが、ＲＡＭ２の余領域以下であることを示している。この場合、ステップＳ１３において、「Ｙｅｓ」と判別され、処理がステップＳ１４に進む。
【００４６】
また、図６（ｂ）は、これからＲＡＭ２に記憶しようとしている１ページ目の９バンド目のバンドデータのデータサイズが、ＲＡＭ２の余領域よりも大きなデータサイズであることを示している。この場合、ステップＳ１３において「Ｎｏ」と判別され、処理がステップＳ１５に進む。同様に、図６（ｃ）は、これからＲＡＭ２に記憶しようとしている２ページ目の２バンド目のバンドデータのデータサイズが、ＲＡＭ２の余領域よりも大きなデータサイズであることを示している。この場合、ステップＳ１３において「Ｎｏ」と判別され、処理がステップＳ１５に進む。
【００４７】
ステップＳ１３において、これからＲＡＭ２に記憶しようとしているバンドデータのデータサイズが、ＲＡＭ２の余領域以下であると判別されることで（ステップＳ１３：Ｙｅｓ）、処理がステップＳ１４に進むと、記憶制御部５２が、ＲＡＭ２にバンドデータを記憶制御する。これにより、図５のフローチャートの処理が終了し、図３のフローチャートのステップＳ３に処理が進む。なお、この場合、後述するようにデフォルト設定されている「シートリカバリ動作を実行する設定」のシートリカバリ情報の書き換えは行われない。
【００４８】
これに対して、ステップＳ１３において、これからＲＡＭ２に記憶しようとしているバンドデータのデータサイズが、ＲＡＭ２の余領域よりも大きなデータサイズであると判別されると（ステップＳ１３：Ｎｏ）、ステップＳ１５に処理が進む。ステップＳ１５では、解析部５３が、現在、ＲＡＭ２に記憶しようとしているバンドデータは、ＲＡＭ２に記憶しているバンドデータのうち、取得順が最も早いバンドデータ、すなわち、ステップＳ１５時点でページメモリに記憶中であり未だ削除されていないバンドデータの中で、順序情報が最も先頭であることを示すバンドデータと同じページのバンドデータであるか否かを判別する。なお、取得順が最も早い（先頭の）バンドデータは、順序情報のページ数が最も小さいバンドデータの中で、バンドＩＤが最も小さいものを調べることで判別する。
【００４９】
ステップＳ１３の処理を行う時点で、ＲＡＭ２に記憶されているバンドデータのうち、一番取得順が早いバンドデータが、現在、ＲＡＭ２に記憶しようとしているバンドデータと同じページのバンドデータである場合、余領域を形成しなければ、印刷続行ができない。このため、記憶制御部５２は、一番取得順が早いバンドデータをＲＡＭ２から削除して形成した余領域に、現在、取得しているバンドデータを記憶制御する。図６（ｂ）に、このような場合の一例を示す。図６（ｂ）に示す例の場合、ＲＡＭ２に記憶されているバンドデータのうち、一番取得順が早いバンドデータは、１ページ目の１バンド目のバンドデータである。これに対して、現在、ＲＡＭ２に記憶しようとしているバンドデータは、１ページ目の９バンド目のバンドデータである。すなわち、両者は、同じページのデータである。この場合、記憶制御部５２は、ステップＳ１６において、一番取得順が早いバンドデータをＲＡＭ２から削除することで、大きな余領域を確保する。そして、ステップＳ１７において、記憶制御部５２は、ＲＡＭ２の確保した余領域に対して、バンドデータを記憶制御する。
【００５０】
図６（ｂ）の例を用いてステップＳ１６及びステップＳ１７の処理を説明すると、記憶制御部５２は、ＲＡＭ２に記憶されている１ページ目の１バンド目のバンドデータを削除する。これにより、元々存在していた余領域と、１ページ目の１バンド目のバンドデータを削除することで形成された余領域とが加算された余領域が形成される。記憶制御部５２は、現在、記憶しようとしている１ページ目の９バンド目のバンドデータよりも、大きな余領域に対して、１ページ目の９バンド目のバンドデータを記憶制御する。
【００５１】
なお、一番取得順が早いバンドデータを削除しても、現在、記憶しようとしているバンドデータよりも大きな余領域が形成されない場合、記憶制御部５２は、同じページの二番目に取得順が早いバンドデータも削除する。すなわち、記憶制御部５２は、現在、記憶しようとしているバンドデータよりも大きな余領域が形成されるまで、同じページのバンドデータを取得順が早いバンドデータから順に削除処理する。そして、記憶制御部５２は、現在、記憶しようとしているバンドデータよりも大きな余領域が形成された際に、この余領域にバンドデータを記憶制御する。
【００５２】
次に、このように同じページ内のバンドデータにおいて、一番取得順が早いバンドデータを削除して、現在、取得しているバンドデータを記憶する処理を行うと、同じページ内のバンドデータの一部が消失するため、そのページのシートリカバリは実行できない。上述のように、シートリカバリ動作の実行の有無を示すシートリカバリ情報は、デフォルトとして、「シートリカバリを実行する設定」となっている。このため、記憶制御部５２は、「シートリカバリを実行する設定」となっているＲＡＭ２のシートリカバリ情報を、ステップＳ１８において、「シートリカバリを実行しない設定」のシートリカバリ情報に書き換える。これにより、ＪＡＭが発生し解除された際に、後述する「シートリカバリを実行しない設定」の動作に、スムーズに移行することができる。
【００５３】
一方、ステップＳ１５において、ＲＡＭ２に記憶済みの一番取得順が早いバンドデータが、現在、ＲＡＭ２に記憶しようとしているバンドデータとは異なるページのバンドデータであった場合、記憶制御部５２は、一番取得順が早いバンドデータが属するページの全バンドデータの印刷が完了するまでの間、ＲＡＭ２に対するバンドデータの書き込み待機状態となる。
【００５４】
すなわち、図６（ｃ）の例の場合、一番取得順が早いバンドデータは、１ページ目の１バンド目のバンドデータである。また、現在、取得しているバンドデータは、１ページ目とは異なる２ページ目の２バンド目のバンドデータである。記憶制御部５２は、１ページ目の１バンド目〜２０バンド目のバンドデータの印刷処理が完了した際に、１ページ目の１バンド目〜２０バンド目のバンドデータを、ＲＡＭ２から消去する。このため、記憶制御部５２は、１ページ目の全バンドデータの印刷が完了するまでの間、ＲＡＭ２に対するバンドデータの書き込み待機状態となる。そして、記憶制御部５２は、１ページ目の全バンドデータの印刷が完了した際に、１ページ目の全バンドデータをＲＡＭ２上から消去し、これにより形成されたＲＡＭ２上の余領域に、２ページ目の２バンド目のバンドデータを書き込み処理する。これにより、ＪＡＭが発生し解除された際に、デフォルト設定となっている「シートリカバリを実行する設定」に基づいて、スムーズにシートリカバリを実行することができる。
【００５５】
（シートリカバリ動作）
次に、図７のフローチャートを用いて、ＪＡＭ等の、印刷開始後の印刷エラー解除時におけるシートリカバリ動作を説明する。図７は、図３における、Ｓ７の印刷開始後に印刷エラーが発生した後のサブフローチャートとなる。ＪＡＭ検出部５４は、ＪＡＭの発生を検出すると、例えば操作部２０の操作パネル７に、「詰まった用紙を取り除いてください」等のＪＡＭの発生を示すメッセージを表示する。この他の印刷エラー（印刷開始後のカバーオープン、もしくは、印刷中のトナー切れ）に関するメッセージ表示でもよい。ユーザは、このメッセージにより、印刷エラーの発生を認識し、手動で詰まった用紙を取り除く、カバーを閉める、トナーを新しい容器に交換する、等の印刷エラーの解消を行う。これにより、エラー状態が解除され、図７のフローチャートがスタートとなり、ステップＳ２１から処理が開始される。なおエラー解除時ではなく、印刷エラー発生時など、印刷エラー発生後の何れかのタイミングで処理を開始して、シートリカバリを実施するか否かの設定を変更してもよい。
【００５６】
ステップＳ２０では、印刷エラーが解除される。以下は印刷エラーの例としてＪＡＭで説明する。ステップＳ２１では、解析部５３が、ＲＡＭ２に記憶されているシートリカバリ情報を参照することで、シートリカバリを実行する設定であるか否かを判別する。シートリカバリを実行する設定であると判別できるということは（ステップＳ２１：Ｙｅｓ）、ＲＡＭ２内に、印刷が失敗したページのバンドデータが記憶されていることを意味する。この場合、ステップＳ２２において、記憶制御部５２は、印刷が失敗したページのバンドデータをＲＡＭ２から読み出す。そして、エンジン制御部５５が、ＲＡＭ２から読み出されたバンドデータに基づいて、プロッタエンジン８を印刷制御する。これにより、印刷が失敗したページのリカバリ印刷（シートリカバリ）を行うことができる。
【００５７】
一方、上述のステップＳ１８で説明したデフォルト設定の書き換え処理が行われることで、「シートリカバリを実行しない設定」となっている場合（ステップＳ２１：Ｎｏ）、解析部５３は、ステップＳ２３において、ＲＡＭ２に記憶されている印刷情報を参照することで、最終ページの印刷情報に対して付加されている、最終ページであることを示すコマンドの有無を判別することで、印刷を失敗したページは、最終ページであるか否かを判別する。
【００５８】
ＲＡＭ２に記憶されている印刷情報に、最終ページであることを示すコマンドが付加されておらず、印刷を失敗したページが最終ページではないと判別された場合（ステップＳ２３：Ｎｏ）、処理がステップＳ２４に進む。上述のように、「シートリカバリを実行しない設定」となっている場合、１ページの全バンドデータの一部が、ＲＡＭ２上から消去されている。このため、シートリカバリ動作を実行できない。この場合、表示制御部５６は、例えば図８（ａ）に示すような、「メモリが足りないのでリカバリできませんでした  エラーが発生した次のページから印刷します」等の、ユーザにリカバリが実行されないことを通知する第１のエラーメッセージを操作部２０に送信して、操作パネル７に表示する。
【００５９】
この第１のエラーメッセージにより、ユーザは、リカバリが実行されないことを認識できるため、再度、印刷が失敗したページの印刷を行う。これにより、印刷が失敗してシートリカバリが実行されない場合でも、ページ抜けが生ずる不都合を極力、防止できる。
【００６０】
これに対して、ＲＡＭ２に記憶されている印刷情報に、最終ページであることを示すコマンドが付加されており、印刷を失敗したページが最終ページであると判別された場合（ステップＳ２３：Ｙｅｓ）、処理がステップＳ２５に進む。上述のように、「シートリカバリを実行しない設定」となっている場合、印刷が失敗したページのバンドデータの一部が、ＲＡＭ２から消去されている。このため、シートリカバリを実行できない。この場合、表示制御部５６は、例えば図８（ｂ）に示すような、「メモリが足りないのでリカバリできませんでした。」等の、ユーザにリカバリが実行されないことを通知する第２のエラーメッセージを操作部２０に送信して、操作パネル７に表示する。
【００６１】
これにより、ユーザは、シートリカバリが実行されないことを認識できるため、再度、ＪＡＭが発生した最終ページの印刷を行う。従って、印刷が失敗してシートリカバリが実行されない場合でも、ページ抜けが生ずる不都合を極力、防止できる。
【００６２】
（第１の実施の形態の効果）
以上の説明から明らかなように、第１の実施の形態の画像形成装置は、バンドデータの取得時等に、取得したバンドデータのデータサイズと、バンドデータを記憶するＲＡＭ２の余領域のサイズとを比較する。バンドデータのデータサイズが、ＲＡＭ２の余領域のサイズ以下であった場合、取得されたバンドデータを、そのままＲＡＭ２に記憶し、ＪＡＭが解除された際に、シートリカバリを実行する。
【００６３】
これに対して、バンドデータのデータサイズが、ＲＡＭ２の余領域のサイズよりも大きなデータサイズであった場合、取得されたバンドデータと、ＲＡＭ２に記憶されているバンドデータとが、同じページのバンドデータであるか否かを判別する。同じページのバンドデータであった場合、取得順が早い順にＲＡＭ２に記憶されているバンドデータを削除して余領域を拡大し、取得されたバンドデータを記憶する。同じページのバンドデータの一部（又は全部）を削除することで、シートリカバリを実行できないため、シートリカバリができない旨のエラーメッセージをユーザに通知する。これにより、ユーザは、シートリカバリが実行されないことを認識できるため、再度、印刷が失敗した最終ページの印刷を行う。従って、ＪＡＭが発生してシートリカバリが実行されない場合でも、ページ抜けが生ずる不都合を極力、防止できる。
【００６４】
また、バンドデータのデータサイズが、ＲＡＭ２の余領域のサイズよりも大きなデータサイズであり、取得されたバンドデータと、ＲＡＭ２に記憶されているバンドデータとが、同じページのバンドデータではない場合、印刷が失敗したページの前のページの印刷が完了するまでの間、ＲＡＭ２に対する、取得されたバンドデータの書き込みを停止する（書き込み待機）。そして、印刷が失敗したページの前のページの印刷が完了し、印刷が失敗したページの前のページのバンドデータがＲＡＭ２から消去されることで形成された余領域に、現在、取得しているバンドデータの書き込みを行う。これにより、ＲＡＭ２に対して、順次、バンドデータを記憶することができ、ＪＡＭが発生しても、解除された後に、シートリカバリを実行することができる。
【００６５】
このように、第１の実施の形態の画像形成装置は、ＲＡＭ２が小容量である場合でも、印刷物のシートリカバリを極力実行して印刷ページ抜けを防止でき、シートリカバリができなかった場合には、ユーザにページ抜けが分かりにくい不便さを低減できる。
【００６６】
（第２の実施の形態）
次に、第２の実施の形態の画像形成装置の説明をする。上述の第１の実施の形態の画像形成装置の場合、バンドデータのデータサイズとＲＡＭ２の余領域の大きさに基づいて、シートリカバリを行うか否かの判定を行った。これに対して、第２の実施の形態の画像形成装置は、例えばＲＯＭ３等の記憶部に、シートリカバリを行うか否かの判定をするため、それぞれの印刷設定情報及び印刷設定情報の組合せと、シートリカバリ実施/非実施（設定/解除）の対応関係の一覧を示す判定テーブルを記憶しておく。そして、取得したバンドデータの印刷設定に基づいて、判定テーブルを参照することで、ＪＡＭ解除時にシートリカバリを行うか否かを判定するようにした例である。なお、上述の第１の実施の形態と以下に説明する第２の実施の形態とでは、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００６７】
図９は、第２の実施の形態の画像形成装置において、印刷設定情報を元にシートリカバリを行うか否かの判定動作を説明するためのフローチャートである。なお図９は、図３における、ステップＳ０の印刷設定情報取得時とその後のサブフローチャートとなる。また、図１０は、ＲＯＭ３等の記憶部に記憶されている、シートリカバリを行うか否かを判定するための各種印刷設定情報の組合せと、シートリカバリ実施/非実施（設定/解除）の対応関係の一覧を示す判定テーブル（情報記憶部に記憶される判定テーブルの一例）である。図９のフローチャートのステップＳ３１では、解析部５３が、取得したバンドデータが属するページのページ情報（図４の符号６３を参照）から判定対象となる印刷設定情報（ここでは印刷モード）を検出する。印刷モードとしては、例えば写真モード・通常文書モード等を検出する。判定対象となる印刷設定情報は、印刷モードの他、用紙サイズ、用紙種類、印刷品質を示す各情報、等でもよい。
【００６８】
次に、ステップＳ３２では、解析部５３が、印刷設定または印刷設定の組み合わせが、シートリカバリを実施するかどうかを判別する。具体的には、例えばＲＯＭ３等の記憶部に記憶された、図１０に示す判定テーブルに基づいて、シートリカバリの実施/非実施を判定する。判定テーブルには、印刷設定情報（印刷モード、用紙サイズ、用紙種類、印刷品質等の、印刷設定を示す各情報）や、その組合せと、シートリカバリの実施/非実施（設定/解除）を示す、シートリカバリ実施情報が、それぞれ対応付けられている。例えば、用紙サイズがＡ４サイズ、用紙種類が普通紙、印刷品質が速度優先印刷の印刷設定の組み合わせに対しては、シートリカバリ「実施」とのシートリカバリ実施情報が対応付けられている。また、用紙サイズがＡ４サイズ、用紙種類が普通紙、印刷品質が画質優先印刷の印刷モードに対しては、シートリカバリ「非実施」とのシートリカバリ実施情報が対応付けられている。
【００６９】
解析部５３は、ステップＳ３１で検出した印刷設定に基づいて、図１０に示す判定テーブルを参照することで、判定テーブルから、検出した印刷設定（表の各項目）を含む印刷設定の組み合わせ（行）が、シートリカバリ実施か非実施かを判定する（ステップＳ３２）。解析部５３により、シートリカバリ実施と判定された場合（ステップＳ３２：Ｙｅｓ）、記憶制御部５２は、ステップＳ３３において、現在、取得しているバンドデータを、そのままＲＡＭ２に記憶制御する。デフォルトがシートリカバリする設定になっているため、シートリカバリ設定の変更はしない。そのためシートリカバリ実施/非実施は、シートリカバリ設定/設定解除（ＯＮ/ＯＦＦ）、ということもできる。
【００７０】
これに対して、解析部５３により、シートリカバリが非実施と判定されるということは、取得されたバンドデータに対して、ＲＡＭ２の余領域が不足して、１ページ分のバンドデータ全てをページメモリ内に入れることができなくなる可能性が高い。なお、判定テーブルは、実際に領域が不足するかどうかではなく、例えば写真モードだとデータ量が多いため不足すると事前に決めた判定テーブルになっている。このため、解析部５３により、シートリカバリが非実施と判定されると（ステップＳ３２：Ｎｏ）、記憶制御部５２が、一番取得順が早いバンドデータを削除してＲＡＭ２の余領域を拡大し（ステップＳ３４）、拡大した余領域に、現在、取得しているバンドデータを記憶制御する（ステップＳ３５）。そして、デフォルトとして、「シートリカバリを実行する設定」となっているＲＡＭ２のシートリカバリ設定情報を、記憶制御部５２が、「シートリカバリを実行しない設定」のシートリカバリ設定情報に書き換え、設定解除する（ステップＳ３６）。なお、Ｓ３６のシートリカバリ設定の解除は、Ｓ３４、Ｓ３５の前に（Ｓ３２の判定直後に）実施してもよい。
【００７１】
なお、ステップＳ３３、及び、ステップＳ３４〜ステップＳ３６の各処理は、図５のフローチャートのステップＳ１４、及び、ステップＳ１５〜ステップＳ１８の各処理と同様の処理である。詳しくは、図５のフローチャートのステップＳ１４、及び、ステップＳ１５〜ステップＳ１８の各処理の説明を参照されたい。
【００７２】
（第２の実施の形態の効果）
このような第２の実施の形態の画像形成装置は、シートリカバリの可否の判定に判定テーブルを用いているため、シートリカバリの可否の判定に面倒な計算を不要とすることができ、迅速にシートリカバリの可否の判定を行うことができる他、上述の実施の形態と同様の効果を得ることができる。
【００７３】
（第３の実施の形態）
次に 、第３の実施の形態の画像形成装置の説明をする。この第３の実施の形態の画像形成装置は、シートリカバリを行うか否かの本判別処理を行う前に、所定の「リカバリＮＧモード」に基づいて、シートリカバリを行うか否かの予備判別処理を行う例である。すなわち、第３の実施の形態の画像形成装置は、まず、ＲＡＭ２等の記憶部に所定量以上の印刷情報の記憶領域が必要となる高画質印刷を示す所定条件に該当するか否かを判別する予備判別処理を行う。次に、予備判別処理により、所定条件に該当しないと判別された印刷情報に対して、少なくとも用紙サイズと印刷品質とに基づいて、さらにシートリカバリ処理を行うか否かを判別する本判別処理を行う。なお、上述の各実施の形態と以下に説明する第３の実施の形態とでは、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００７４】
図１１は、第３の実施の形態の画像形成装置における、シートリカバリを行うか否かの判定動作の流れを示すフローチャートである。上述のように、シートリカバリを行うか否かの判定は、図３のステップＳ０において印刷情報を取得した後、又は、ステップＳ２においてバンドデータを含む印刷情報をＲＡＭ２に格納した後に実行される。
【００７５】
図１１のフローチャートのステップＳ４１では、解析部５３が、図１に示す外部装置１０から取得した印刷情報に含まれるバンドデータが属するページのページ情報（図４の符号６３を参照）から、判定対象となる印刷設定情報（ここでは印刷モード）を検出する。一例ではあるが、解析部５３は、用紙サイズ、用紙種類、印刷品質、両面／片面判定データ等の情報を印刷モードとして検出する。
【００７６】
次に、ステップＳ４２では、解析部５３が、印刷モードが所定のリカバリＮＧモード以外であるか否かを判定する。リカバリＮＧモードは、ＲＡＭ２に対して多量（所定量以上）の印刷情報を記憶させる必要がある場合は、シートリカバリを行わないと決定した印刷モードを示している。具体的には、所定のリカバリＮＧモードであるか否かの判定は、図１２に示すリカバリＮＧモード一覧表、及び、印刷モード中のページ情報に基づいて判定する。このリカバリＮＧモード一覧表は、例えばＲＯＭ３等の記憶部に記憶されている。
【００７７】
図１２の例は、用紙種類が「光沢紙」又は「写真用紙」の場合に、リカバリＮＧモードとなる例を示している。すなわち、「光沢紙」又は「写真用紙」は細密な描画に用いられ、描画に用いる印刷情報の情報量も多くなる。このため、シートリカバリを行う場合には、ＲＡＭ２に対して多量の印刷情報を記憶可能な記憶領域が必要となり、画像形成装置に小容量のＲＡＭ２が設けられている場合には、シートリカバリの実行は困難となる。
【００７８】
このため、解析部５３は、ＲＯＭ３に記憶されているリカバリＮＧモード一覧表を参照することで、シートリカバリを実行しない用紙種類を認識する。そして、解析部５３は、外部装置１０から取得した印刷情報の印刷モードにより、「光沢紙」又は「写真用紙」の用紙が指定されている場合（ステップＳ４２：Ｎｏ）、ステップＳ４５に処理を進める（予備判別処理）。また、解析部５３は、外部装置１０から取得した印刷情報の印刷モードにより、「光沢紙」又は「写真用紙」以外の用紙が指定されている場合（ステップＳ４２：Ｙｅｓ）、ステップＳ４４に処理を進める。
【００７９】
印刷モードが所定のリカバリＮＧモード以外であるとしてステップＳ４３に処理を進めると、解析部５３は、印刷情報をＲＡＭ２に記憶可能か否かを判別する。具体的には、ＲＯＭ３には、図１３に示すように、各種印刷モードに基づくシートリカバリ判定表が記憶されている。一例として図１３に示すシートリカバリ判定表は、Ａ４サイズ、不定形、Ｂ６等の「用紙サイズ」、普通紙等の「用紙種類」、速度優先、画質優先、標準等の「印刷品質」、及び、実施、不実施、Ａ４以下は実施、片面は実施等の「シートリカバリの実施／不実施」が、それぞれ関連付けされて記憶されている例である。解析部５３は、取得した印刷情報に一致する条件を、シートリカバリ判定表から検出し、印刷情報をＲＡＭ２に記憶可能か否かを判別する（本判別処理）。
【００８０】
例えば、印刷情報で示される用紙サイズが不定形サイズであった場合、解析部５３は、印刷情報のページ情報６３から取得した縦サイズ×横サイズの設定値に基づいて、不定形サイズの情報量を計算する。不定形サイズの情報量がＡ４サイズの情報量以下であった場合、図１３に示すシートリカバリ判定表に基づいて、取得した印刷情報がＲＡＭ２に記憶可能か否かを判別する。
【００８１】
図１３の例は、用紙サイズが不定形サイズである場合、基本的には、シートリカバリは不実施（ＲＡＭ２に印刷情報を記憶不可）と判別するが、用紙サイズが不定形サイズであっても、情報量がＡ４サイズの情報量以下の場合は、シートリカバリは実施（ＲＡＭ２に印刷情報を記憶可能）と判別することを示している。また、図１３の例は、用紙サイズがＢ６サイズであった場合において、印刷品質が「画質優先」であった場合は、ＲＡＭ２に対する印刷情報の情報量が多くなるため、ＲＡＭ２に対する印刷情報の記憶は不可（シートリカバリ不実施）と判別する。また、用紙サイズがＢ６サイズであった場合において、印刷品質が「標準」であった場合は、ＲＡＭ２に対する印刷情報の情報量は、それ程多くはならないため、片面印刷であれば、ＲＡＭ２に対する印刷情報の記憶は可能（シートリカバリ実施）と判別する。
【００８２】
ＲＡＭ２に対する印刷情報の記憶が可能と判別された場合（ステップＳ４３：Ｙｅｓ）、ステップＳ４４において、記憶制御部５２が、上述のようにメモリ２に対してバンドデータを記憶して、図１１のフローチャートの処理を終了する。
【００８３】
一方、印刷モードが所定のリカバリＮＧモードであると判別し（ステップＳ４２：Ｎｏ）、又は、ＲＡＭ２に対する印刷情報の記憶は不可と判別することで（ステップＳ４３：Ｎｏ）、ステップＳ４５に処理を進めると、記憶制御部５２は、図９のステップＳ３４〜ステップＳ３６で説明した処理を行う。
【００８４】
すなわち、記憶制御部５２は、一番取得順が早いバンドデータを削除してＲＡＭ２の余領域を拡大し（ステップＳ４５）、拡大した余領域に、現在、取得しているバンドデータを記憶制御する（ステップＳ４６）。そして、デフォルトとして、「シートリカバリを実行する設定」となっているＲＡＭ２のシートリカバリ設定情報を、「シートリカバリを実行しない設定」のシートリカバリ設定情報に書き換えて、設定解除を行う（ステップＳ４７）。
【００８５】
このような第３の実施の形態の画像形成装置は、シートリカバリを行うか否かの本判定（ステップＳ４３）を行う前に、「リカバリＮＧモード」に基づいて、高画質印刷を示す所定条件に該当するか否かを判別する予備判別処理（ステップＳ４２）を行う。これにより、シートリカバリを行なわない特定の条件（本例では高画質印刷の場合）を、本判別処理（ステップＳ４３）の前に、１つの印刷設定情報（用紙種類）のみによって、迅速に判別することができる他、上述の各実施の形態と同様の効果を得ることができる。
【００８６】
（第４の実施の形態）
次に、第４の実施の形態の画像形成装置の説明をする。この第４の実施の形態の画像形成装置は、シートリカバリを行わない設定の場合において、印刷エラーが生じた次のページから印刷を再開するか又は印刷ジョブを中止するかを、ユーザが選択可能とした例である。なお、上述の各実施の形態と以下に説明する第４の実施の形態とでは、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００８７】
図１４は、第４の実施の形態の画像形成装置における、シートリカバリを行うか否かの判定結果に応じた動作の流れを示すフローチャートである。上述のように、用紙詰まり等の印刷エラーが解除され、図１に示すプロッタエンジン８が印刷を再開する際、図２に示すエンジン制御部５５は、プロッタエンジン８に転送する印刷情報を決定する。この際、第４の実施の形態の画像形成装置における解析部５３は、図１４のフローチャートのステップＳ５１において、上述のように図１０に示す判定テーブルに基づいてシートリカバリの実施/非実施を判定する。シートリカバリを行う設定の場合（ステップＳ５１：Ｙｅｓ）、ステップＳ５２に処理が進み、記憶制御部５２が、印刷エラーが生じたページの先頭のバンドデータをＲＡＭ２に記憶制御する。これにより、印刷エラーを生じたページが再度プロッタエンジン８により印刷される（シートリカバリされる）。
【００８８】
一方、ステップＳ５１において、シートリカバリを行わない設定であると判別された場合（ステップＳ５１：Ｎｏ）、ステップＳ５３に処理が進む。ステップＳ５３では、図２に示す表示制御部５６が、例えば図１５に示すように「メモリが足りないのでリカバリできませんでした。エラーが発生した次のページから印刷を再開しますか？」等の、次ページから印刷を再開するか否かを問うメッセージを操作パネル７に表示する。ユーザは、このメッセージを見て、次ページからの印刷の再開を希望する場合には、図１５に示す「再開」のボタンを操作する。この「再開」のボタンが操作されると、エンジン制御部５５は、印刷エラーが生じたページの次のページから印刷を再開するように、プロッタエンジン８を制御する。
【００８９】
これに対して、次ページからの印刷の再開を希望しない場合、ユーザは、図１５に示す「中止」のボタンを操作する。この「中止」のボタンが操作されると、表示制御部５６は、例えば図１６に示すように「印刷を中止します」等の、印刷を中止する旨のメッセージを操作パネル７に表示する。そして、エンジン制御部５５が、印刷を中止制御して、図１４のフローチャートの処理を終了する。なお、メッセージは操作パネルに表示されるウインドウ画面上に表示され、「再開」、「中止」ボタンは、同じウインドウ画面内に含めて表示される。
【００９０】
図１７は、ステップＳ５３で次ページからの印刷の中止が指定された場合に、印刷エラーが生じた印刷ジョブのバンドデータをＲＯＭ２から消去する動作を説明するためのフローチャートである。ユーザから印刷の中止が指定されると、記憶制御部５２は、ステップＳ６１において、印刷エラーが生じた印刷ジョブのバンドデータがＲＡＭ２上に存在するか否かを判別する。
【００９１】
印刷エラーが生じた印刷ジョブのバンドデータがＲＡＭ２上に存在する場合（ステップＳ６１：Ｙｅｓ）、記憶制御部５２は、ステップＳ６３において、ＲＡＭ２上に存在する、印刷エラーが生じた印刷ジョブのバンドデータを消去して、ステップＳ６２に処理を進める。ステップＳ６２では、記憶制御部５２が、印刷エラーが生じた印刷ジョブの最終ページの最終のバンドデータまで消去したか否かを判別する。すなわち、ステップＳ６２では、記憶制御部５２が、印刷エラーが生じた印刷ジョブの全てのバンドデータがＲＡＭ２から消去されたか否かを判別する。
【００９２】
印刷エラーが生じた印刷ジョブの全てのバンドデータがＲＡＭ２から消去されていないと判別した場合、記憶制御部５２はステップＳ６１に処理を戻し、印刷エラーが生じた印刷ジョブの最終ページの最後のバンドデータを消去するまで、ＲＡＭ２に残存している印刷エラーが生じた印刷ジョブのバンドデータの消去処理を繰り返し実行する。
【００９３】
このような消去処理を、さらに具体的に説明すると、例えば図１８（ａ）の例は、「ジョブ１」が、印刷エラーが生じた印刷ジョブであり、ユーザから印刷の中止が指定された印刷ジョブを示している。また、「ジョブ２」は、次に印刷を行う印刷ジョブの印刷情報を示している。また、図１８（ａ）の例は、印刷エラーが生じ、ユーザから印刷が中止された「ジョブ１」の最終ページの１バンド目〜最終バンドまでのバンドデータがＲＡＭ２に残存しているため、次に印刷を行うジョブ２の１ページ目の１バンド目のバンドデータを記憶するための余領域がＲＡＭ２に残っていない状態を示している。
【００９４】
この場合、記憶制御部５２は、図１７のフローチャートのステップＳ６１及びステップＳ６３の処理を実行することで、まず、ジョブ１の最終ページの１バンド目のバンドデータを消去する。そして、記憶制御部５２は、図１８（ｂ）に示すように、ジョブ１の最終ページの１バンド目のバンドデータを消去することで形成されたＲＡＭ２の余領域に、新たなジョブ２の１ページ目の１バンド目のバンドデータを記憶制御する。
【００９５】
次に、記憶制御部５２は、図１７のフローチャートのステップＳ６１〜ステップＳ６３の処理を実行することで、図１８（ｃ）に示すようにＲＡＭ２内に残存しているジョブ１の最終ページの全てのバンドデータを消去する。
【００９６】
このような第４の実施の形態の画像形成装置は、シートリカバリを行わない設定である場合に、印刷エラーが生じたページの次のページから印刷ジョブの実行を再開するか、又は、印刷エラーが生じた印刷ジョブを中止するかを、ユーザが選択できるようになっている。このため、印刷ジョブの中止又は印刷エラーが生じた次のページからの印刷の再開等の、ユーザの希望に沿った印刷動作に移行できる他、上述の各実施の形態と同様の効果を得ることができる。
【００９７】
（第５の実施の形態）
次に、第５の実施の形態の画像形成装置の説明をする。この第５の実施の形態の画像形成装置は、ＲＡＭ２の余領域が少ないために、シートリカバリを行えない場合（及びシートリカバリを行わない設定の場合）に、ページ抜けが発生していることを示す「ページ抜け明示ページ」を印刷し、ページ抜けの発生をユーザに明示する例である。なお、上述の各実施の形態と以下に説明する第５の実施の形態とでは、この点のみが異なる。このため、以下、両者の差異の説明のみ行い、重複説明は省略する。
【００９８】
図１９は、第５の実施の形態の画像形成装置における、「ページ抜け明示ページ」を印刷可能とする処理の流れを示すフローチャートである。まず、ステップＳ７１では、図２に示す残量算出部５１が、取得したバンドデータを記憶するＲＡＭ２の記憶領域の残量（余領域）を検出する。残量算出部１５は、ＲＡＭ２の全体の記憶容量と、現在、印刷情報を記憶することで使用されている記憶領域の大きさとの差分を計算することで、ＲＡＭ２の余領域を算出する。
【００９９】
次に、ステップＳ７２では、解析部５３が、ＪＡＭ発生時に取得されたバンドデータのデータサイズを検出する。解析部５３は、図４を用いて説明した印刷情報のページ情報６３に含まれている印刷情報から、バンドデータのデータサイズを計算する。解析部５３は、例えば印刷情報中のページ情報６３に含まれている用紙サイズ、解像度、１バンドの高さ情報から、「用紙サイズ（ｉｎｃｈ）×解像度（ｄｐｉ）×バンドの高さ（ｌｉｎｅ）」の演算を行うことで、バンドデータのデータサイズを計算する。また、各バンドデータに画像データが含まれている場合、解析部５３が、含まれている画像データを読み取ることで、データサイズを検出してもよい。
【０１００】
次に、ステップＳ７３では、解析部５３が、印刷エラーの発生時に取得されたバンドデータのデータサイズは、ＲＡＭ２の余領域以下であるか否かを判別する。バンドデータのデータサイズが、ＲＡＭ２の余領域以下である場合（ステップＳ７３：Ｙｅｓ）、ステップＳ７４において、記憶制御部５２が、ＲＡＭ２にバンドデータを記憶制御して、図１９のフローチャートの処理を終了する。
【０１０１】
これに対して、バンドデータのデータサイズが、ＲＡＭ２の余領域よりも大きい場合（ステップＳ７３：Ｎｏ）、ステップＳ７５において、解析部５３が、現在、ＲＡＭ２に記憶しようとしているバンドデータは、ＲＡＭ２に記憶しているバンドデータのうち、取得順が最も早いバンドデータであるか否か、すなわち、一番古いバンドデータと同じページのバンドデータであるか否かを判別する。なお、取得順が最も早いバンドデータは、順序情報のページ数が最も小さいバンドデータの中で、バンドＩＤが最も小さいものを調べることで判別する。
【０１０２】
ＲＡＭ２に記憶済みの一番古いバンドデータが、現在、ＲＡＭ２に記憶しようとしているバンドデータとは異なるページのバンドデータであった場合（ステップＳ７５：Ｎｏ）、記憶制御部５２は、一番古いバンドデータが属するページの全バンドデータの印刷が完了するまでの間、ＲＡＭ２に対するバンドデータの書き込み待機状態となる。そして、記憶制御部５２は、一番古いバンドデータが属するページの全バンドデータの印刷が完了した際に、ＲＡＭ２に記憶されているページの全バンドデータを消去し、ＲＡＭ２の余領域よりも大きいサイズであったバンドデータを、ＲＡＭ２に記憶制御する。
【０１０３】
これに対して、これからＲＡＭ２に記憶しようとしているバンドデータが、ＲＡＭ２に記憶されている一番古いバンドデータと同じページのバンドデータであった場合（ステップＳ７５：Ｙｅｓ）、解析部５３は、ステップＳ７６において、「ページ抜け明示ページ」の印刷を行う設定となっているか否かを判別する。「ページ抜け明示ページ」の印刷を行うか否かを示す設定情報は、例えばＲＯＭ３等の記憶部に記憶されており、デフォルト設定として、「ページ抜け明示ページの印刷を行う」との設定となっている。ユーザは、操作パネル７を操作して、「ページ抜け明示ページの印刷を行わない」との設定に変更することも可能である。変更後の設定情報は、記憶制御部５２により、ＲＯＭ３等の記憶部に記憶される。
【０１０４】
「ページ抜け明示ページの印刷を行わない」との設定となっていると判別された場合（ステップＳ７６：Ｎｏ）、記憶制御部５２は、ステップＳ８０において、一番古いバンドデータをＲＡＭ２から削除することで、大きな余領域を確保する。そして、ステップＳ８１において、記憶制御部５２は、ＲＡＭ２の確保した余領域に対してバンドデータを記憶制御する。
【０１０５】
また、同じページ内のバンドデータにおいて、一番古いバンドデータを削除して、現在、取得しているバンドデータを記憶する処理を行うと、同じページ内のバンドデータの一部が消失するため、そのページのシートリカバリは実行できない。上述のように、シートリカバリ動作の実行の有無を示すシートリカバリ情報は、デフォルトとして、「シートリカバリを実行する設定」となっている。このため、記憶制御部５２は、「シートリカバリを実行する設定」となっているＲＡＭ２のシートリカバリ情報を、ステップＳ８２において、「シートリカバリを実行しない設定」のシートリカバリ情報に書き換えて、図１９のフローチャートの処理を終了する。
【０１０６】
一方、ページ抜け明示ページを印刷する設定となっていると判別された場合（ステップＳ７６：Ｙｅｓ）、解析部５３は、ステップＳ７７において、ページ番号を印字する設定となっているか否かを判別する。ページ番号の印字を行うか否かを示す設定情報は、ＲＯＭ３等の記憶部に記憶されている。解析部５３は、この設定情報を参照することで、ページ番号の印字を行うか否かを判別する。
【０１０７】
ページ番号の印字を行わない設定となっていた場合（ステップＳ７７：Ｎｏ）、ページ抜け明示ページを印刷しても、ページ抜けとなったページ番号をユーザが認識できないため、ページ抜け明示ページを印刷することなく、上述のステップＳ８０に処理を進める。
【０１０８】
次に、ページ番号の印字を行う設定となっていた場合（ステップＳ７７：Ｙｅｓ）、記憶制御部５２は、ステップＳ７８において、一番古いバンドデータをＲＡＭ２から削除する。そして、記憶制御部５２は、ステップＳ７９において、ＲＡＭ２に確保された余領域に対して、「ページ抜け明示ページの印刷用のバンドデータ」を記憶制御して、処理を上述のステップＳ８０に進める。
【０１０９】
「ページ抜け明示ページの印刷用のバンドデータ」は、例えば図２０に示すように１ページの用紙の所定位置に、「ＴＨＩＳ  ＰＡＧＥ  ＬＯＳＴ（メモリが足りず、本ページはリカバリできませんでした）」等の、リカバリができなかった旨のメッセージを印刷し、このメッセージ以外の部分を空白とする印刷を行うためのバンドデータである。
【０１１０】
図２１（ａ）〜図２１（ｄ）は、ステップＳ７３、ステップＳ７５〜ステップＳ７９において、「ページ抜け明示ページの印刷用のバンドデータ」がＲＡＭ２に記憶されるまでの流れを示す模式図である。すなわち、図２１（ａ）に示すように、現在、１ページ目の１バンド目〜１７バンド目の各バンドデータがＲＡＭ２に記憶されていることから、ページ抜け明示ページの印刷用のバンドデータをＲＡＭ２に記憶困難な状態である場合、記憶制御部５２は、図２１（ｂ）に示すように一番古いバンドデータである、１ページ目の１バンド目のバンドデータを削除することで、ＲＡＭ２上の余領域を確保する。そして、記憶制御部５２は、図２１（ｃ）及び図２１（ｄ）に示すように、ＲＡＭ２上に確保した余領域に、ページ抜け明示ページの印刷用のバンドデータを記憶制御する。このページ抜け明示ページの印刷用のバンドデータは、ＲＯＭ３に予め記憶されている。記憶制御部５２は、ＲＯＭ３から読み出したページ抜け明示ページの印刷用のバンドデータをＲＡＭ２に記憶する。
【０１１１】
ページ抜け明示ページの印刷用のバンドデータをＲＡＭ２に記憶すると、処理がステップＳ８０に進み、記憶制御部５２が、ＲＡＭ２に記憶されているバンドデータのうち、一番古いデータ（＝ページ抜け明示ページの印刷用のバンドデータを記憶するためにＲＡＭ２から削除したバンドデータの次に古いバンドデータ）を削除する。そして、記憶制御部５２は、削除することで形成されたＲＡＭ２の余領域に、次のバンドデータを記憶制御し、ステップＳ８２において、シートリカバリを行わない設定に変更する。
【０１１２】
図２２（ａ）〜図２２（ｃ）は、ページ抜け明示ページの印刷用のバンドデータを印刷することで変化するＲＡＭ２の記憶内容を示す図である。シートリカバリできない状態、又は、ページ抜け明示ページを印刷する場合において、印刷エラー発生から復帰すると、エンジン制御部５５は、ＲＡＭ２上にページ抜け明示ページの印刷用のバンドデータが記憶されているか否かを判別する。図２２（ａ）に示すように、ＲＡＭ２上にページ抜け明示ページの印刷用のバンドデータが記憶されている場合、エンジン制御部５５は、ページ抜け明示ページの印刷用のバンドデータに基づいて、図２０に示したように、１ページの用紙の所定位置にリカバリができなかった旨のメッセージを印刷し、このメッセージ以外の部分を空白とする印刷を行う（ページ抜け明示ページ印刷）。
【０１１３】
記憶制御部５２は、このようなページ抜け明示ページの印刷用のバンドデータの印刷が完了すると、図２２（ｂ）に示すように、ページ抜け明示ページの印刷用のバンドデータをＲＡＭ２から削除する。そして、記憶制御部５２は、このような削除処理を行うことで形成されたＲＡＭ２の余領域に、図２２（ｃ）に示すように、次のページのバンドデータを記憶制御する。以降は、図２２（ｂ）及び図２２（ｃ）に示すように、次ページのバンドデータを順にＲＡＭ２に記憶して印刷を続行する。
【０１１４】
このような第５の実施の形態の画像形成装置は、シートリカバリを行えない場合、ページ抜けが発生していることを示す「ページ抜け明示ページ」を印刷する。これにより、ユーザは、印刷されたページ抜け明示ページを見ることで、ページ抜けの発生を認識することができ、抜けているページの再印刷を行うことができる他、上述の各実施の形態と同様の効果を得ることができる。
【０１１５】
最後に、上述の各実施の形態は、一例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な各実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。
【０１１６】
また、実施の形態及び実施の形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。例えば、本発明は、情報処理技術分野における通常の知識を有した技術者であれば、ＡＳＩＣ（Application  Specific  Integrated  Circuits）や、従来の回路モジュールを接続して構成した装置によって実施することが可能である。
【０１１７】
また、上述の各実施の形態に記載された各機能は、それぞれ、一又は複数の処理回路（Circuit）によって実現することが可能である。なお、ここで、本明細書における「処理回路」とは、ソフトウェアによって各機能を実行するようプログラムされたプロセッサや、各機能を実行するよう設計されたＡＳＩＣや回路モジュールなどのハードウェアを含むものとする。
【符号の説明】
【０１１８】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  パネルＩ／Ｆ
５  エンジンＩ／Ｆ
６  外部Ｉ／Ｆ
７  操作パネル
８  プロッタエンジン
９  バスライン
１０  外部装置
５１  残量算出部
５２  記憶制御部
５３  解析部
５４  ＪＡＭ検出部
５５  エンジン制御部
５６  表示制御部
６１  プリンタ言語情報
６２  ジョブ情報
６３  ページ情報
６４  １バンド目のバンドデータ（印刷画像情報）
６５  ２バンド目のバンドデータ（印刷画像情報）
【先行技術文献】
【特許文献】
【０１１９】
【特許文献１】特開２００６−２７８０３９号公報
【図１】
2018058331.tif 000003
【図２】
2018058331.tif 000004
【図３】
2018058331.tif 000005
【図４】
2018058331.tif 000006
【図５】
2018058331.tif 000007
【図６】
2018058331.tif 000008
【図７】
2018058331.tif 000009
【図８】
2018058331.tif 000010
【図９】
2018058331.tif 000011
【図１０】
2018058331.tif 000012
【図１１】
2018058331.tif 000013
【図１２】
2018058331.tif 000014
【図１３】
2018058331.tif 000015
【図１４】
2018058331.tif 000016
【図１５】
2018058331.tif 000017
【図１６】
2018058331.tif 000018
【図１７】
2018058331.tif 000019
【図１８】
2018058331.tif 000020
【図１９】
2018058331.tif 000021
【図２０】
2018058331.tif 000022
【図２１】
2018058331.tif 000023
【図２２】
2018058331.tif 000024