(57)【要約】【課題】  フォームオーバレイでは、ユーザがあらかじめフォームを作成して画像形成装置に登録するため、手間のかかる作業が必要である。さらに、画像形成装置の内部に、フォーム登録用の記憶領域を設ける必要があり、フォームオーバレイ以外に使用可能な記憶領域の減少により印刷処理速度の低下を招いていた。【解決手段】  ページ間でＰＤＬデータの解析結果が同一であるバンドでは、レンダリングは一度のみ行なってビットマップを保存しておき、二度目以降は保存しておいたビットマップを読み出すことにより、高速に印刷を行なう。【選択図】  図５
2007301893.tif 000002
【特許請求の範囲】
【請求項１】
記録用紙上に画像を形成して印刷を行なう画像形成装置において、
印刷する情報を入力する入力手段と、
前記入力手段により入力した情報を解析する解析手段と、
前記解析手段により解析した解析結果を、ページを複数に分割したバンド単位で保存するための第１の保存領域と、
前記解析手段により解析した結果をバンド単位で画像情報に展開する展開手段と、
前記展開手段により展開した画像情報をバンド単位で保存するための第２の保存領域と、
前記解析手段により解析した解析結果と同一の解析結果が前記第１の保存領域に保存されているかどうかを判別する判別手段とを備え、
前記判別手段により保存されていないと判別した場合、解析結果を前記第１の保存領域の空き領域に保存するとともに前記展開手段により画像情報に展開し、画像情報を前記第２の保存領域の空き領域に保存するとともに印刷を行ない、
前記判別手段により保存されていると判別した場合、前記第２の保存領域から解析結果に対応する画像情報を読み出して印刷を行なうようにしたことを特徴とする画像形成装置。
【請求項２】
記録用紙上に画像を形成して印刷を行なう画像形成装置において、
印刷する情報を入力する入力手段と、
前記入力手段により入力した情報を解析する解析手段と、
前記解析手段により解析した解析結果を、ページを複数に分割したバンド単位で保存するための第１の保存領域と、
前記解析手段により解析した結果をバンド単位で画像情報に展開する展開手段と、
前記展開手段により展開した画像情報をバンド単位で保存するための第２の保存領域と、
前記第１の保存領域が空かどうかを判別する判別手段と、
前記解析手段により解析した解析結果を、前記第１の保存領域に保存されている同一バンドの解析結果と比較する比較手段とを備え、
前記判別手段により前記第１の保存領域が空であると判別した場合、前記解析手段により解析した結果を前記第１の保存領域に保存し、
前記判別手段により前記第１の保存領域が空でないと判別した場合で、前期比較手段により比較結果が一致していない場合は、解析結果を前記第１の保存領域の同一バンドの保存領域に上書き保存するとともに前記展開手段により画像情報に展開し、画像情報を前記第２の保存領域の同一バンドの保存領域に上書き保存するとともに印刷を行ない、
前記判別手段により前記第１の保存領域が空でないと判別した場合で、前期比較手段により比較結果が一致している場合は、前記第２の保存領域から解析結果に対応する画像情報を読み出して印刷を行なうようにしたことを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像形成装置に関し、例えばホストコンピュータからインターフェース回路を通して転送された情報を画像情報に展開し、電子写真方式やインクジェット方式を用いて記録用紙に印刷を行なう画像形成装置に関する。
【背景技術】
【０００２】
従来、電子写真方式やインクジェット方式を用いて記録用紙に印刷を行なう画像形成装置では、外部からのデータ入力部、入力したデータを画像に展開する画像展開部、記録用紙に印刷を行なう印刷部などから構成される。外部から入力されるデータとしては、外部接続されたホストコンピュータ、デジタルカメラなどから送信された印刷データや、メモリカードなどの記録媒体に記録された文書、画像ファイルなどがある。画像展開部では、電子写真方式やインクジェット方式で印刷可能な形式に画像展開される。
【０００３】
このような画像形成装置では、コントローラ部とエンジン部から構成されるのが一般的である。外部から入力される情報の形式としては、文字やイメージなどの配置や表現方法などを記述した言語形式で入力され、コントローラ部では、言語を解析してビットマップ形式に展開を行なう。エンジン部では、コントローラ部から印刷データを受け取り、記録用紙を搬送して、感光ドラムやインクジェットヘッドなどの記録部材を用いて実際に印刷を行なう。
【０００４】
コントローラ部におけるビットマップ展開にあたっては、まず入力した言語を解析してディスプレイリスト（以下ＤＬと表記）と呼ばれる中間処理形式に変換される。このＤＬは言語種別によらない形式であり、画像形成装置が複数種類の言語をサポートしている場合でも、その違いを吸収してレンダラーがレンダリング可能な形式に変換される。またＤＬは文字やイメージ、グラフィックなどのオブジェクト単位で生成される。次に生成されたＤＬはレンダラーによりオブジェクト単位でレンダリングされ、ビットマップに展開される。レンダリング処理後、展開されたビットマップはエンジン部に転送されて印字されるが、レンダリングの処理単位（バンドの高さ）は使用メモリ容量や処理速度が最も効率よくなるように、エンジン部の印刷処理単位（ライン数）に合わせて設定される。
【０００５】
このＤＬの生成やレンダリングは、レンダリング方式にもよるが、たとえオブジェクト同志が重なり合っていても全てのオブジェクトに対して行なわれる。従って、各バンドに存在するオブジェクトの数やオブジェクト間の重なり具合により、バンドによってレンダリング処理時間が変化する。
【０００６】
次に、エンジン部における記録用紙の搬送と印刷に関しては、記録部材としてインクジェットヘッドを用いる場合、まず給紙カセットや給紙トレイに収容されている記録用紙の先端が、インクジェットヘッドで印刷を行なう位置まで搬送される（以下給紙と表記）。給紙完了後インクジェットヘッドによる印刷と記録用紙の搬送を繰り返しながら記録用紙１枚分の印刷を行ない、印刷完了後排紙口に記録用紙を排出する。複数ページの印刷を行なう場合は、ページ数分給紙、印刷、排出を繰り返して行なう。
【０００７】
ところで、画像形成装置には帳票印刷（売上票、明細票など）を効率よく行なうための機能として、フォームオーバレイと呼ばれる機能を持つものがある。フォームオーバレイでは、ページ間で共通な内容、たとえば表の罫線や項目名などのデータをフォームオーバレイデータとしてあらかじめ画像形成装置に送信して登録しておく。続いて各ページに固有なデータを送信して、登録しておいたフォームオーバレイデータと重ね合わせて各ページの画像を形成する。このようにすることにより、画像形成装置への送信データ量を削減することができ、印刷完了までの時間を短縮することが可能である。また、フォームオーバレイデータの内容によっては、各ページのデータと重ね合わせるよりもビットマップ印刷用のビットマップに直接描画した方が早い場合がある。これを解決する方法として、あらかじめ定めた条件により重ね合わせ処理を行なうか直接描画するかを切り替えるようにしたものがある（例えば、特許文献参照。）。
【特許文献１】特開２００２−６７４２３公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した画像形成装置では以下の欠点がある。ユーザがフォームオーバレイの機能を使用するには、あらかじめフォームオーバレイデータを作成して、画像形成装置への登録という操作をしなければならず、使い勝手の点でユーザに煩雑な操作を強いることになる。さらに、画像形成装置に登録されたフォームオーバレイデータは、意図的に削除しない限り、画像形成装置のメモリ上に記憶された状態のままとなる。そのため、フォームオーバレイの機能を使用せずに印刷する場合に使用可能なメモリ容量が少なくなり、処理速度の低下を招くという欠点がある。
【０００９】
本発明は、以上のような局面に鑑みてなされたもので、それぞれ下記各項の各課題を解決するための各手段の提供を目的としている。すなわち、
１） その第１の目的は、複数ページのＰＤＬデータで、各ページの内容が少しだけ違うようなデータを高速に、かつ特別な操作を必要とせず簡単に印刷できるようにすることを目的とする。
【００１０】
２） 第２の目的は、メモリ容量の少ないシステムにおいても第１の目的を達成することを目的とする。
【課題を解決するための手段】
【００１１】
このため、本発明は、上記の各目的に対してそれぞれ下記の対応項（１）から（２）に示す構成の画像形成装置の提供によりそれぞれ前記の各目的を達成しようとするものである。
【００１２】
（１）記録用紙上に画像を形成して印刷を行なう画像形成装置において、印刷する情報を入力する入力手段と、前記入力手段により入力した情報を解析する解析手段と、前記解析手段により解析した解析結果を、ページを複数に分割したバンド単位で保存するための第１の保存領域と、前記解析手段により解析した結果をバンド単位で画像情報に展開する展開手段と、前記展開手段により展開した画像情報をバンド単位で保存するための第２の保存領域と、前記解析手段により解析した解析結果と同一の解析結果が前記第１の保存領域に保存されているかどうかを判別する判別手段とを備え、前記判別手段により保存されていないと判別した場合、解析結果を前記第１の保存領域の空き領域に保存するとともに前記展開手段により画像情報に展開し、画像情報を前記第２の保存領域の空き領域に保存するとともに印刷を行ない、前記判別手段により保存されていると判別した場合、前記第２の保存領域から解析結果に対応する画像情報を読み出して印刷を行なうようにしたことを特徴とする画像形成装置。
【００１３】
（２）記録用紙上に画像を形成して印刷を行なう画像形成装置において、印刷する情報を入力する入力手段と、前記入力手段により入力した情報を解析する解析手段と、前記解析手段により解析した解析結果を、ページを複数に分割したバンド単位で保存するための第１の保存領域と、前記解析手段により解析した結果をバンド単位で画像情報に展開する展開手段と、前記展開手段により展開した画像情報をバンド単位で保存するための第２の保存領域と、前記第１の保存領域が空かどうかを判別する判別手段と、前記解析手段により解析した解析結果を、前記第１の保存領域に保存されている同一バンドの解析結果と比較する比較手段とを備え、前記判別手段により前記第１の保存領域が空であると判別した場合、前記解析手段により解析した結果を前記第１の保存領域に保存し、前記判別手段により前記第１の保存領域が空でないと判別した場合で、前期比較手段により比較結果が一致していない場合は、解析結果を前記第１の保存領域の同一バンドの保存領域に上書き保存するとともに前記展開手段により画像情報に展開し、画像情報を前記第２の保存領域の同一バンドの保存領域に上書き保存するとともに印刷を行ない、前記判別手段により前記第１の保存領域が空でないと判別した場合で、前期比較手段により比較結果が一致している場合は、前記第２の保存領域から解析結果に対応する画像情報を読み出して印刷を行なうようにしたことを特徴とする画像形成装置。
【発明の効果】
【００１４】
本発明によれば、複数ページのＰＤＬデータを印刷する場合、ページ間でＤＬが同じであるバンドに対しては、レンダリングを一度しか行なわないため、印刷処理時間を短縮することができる。さらに、ページ間で印刷内容が同じかどうかは画像形成装置で自動的に判断するため、フォームオーバレイのようにユーザに煩雑な操作を強いることはなく、使い勝手の良い画像形成装置を提供することができるという効果がある。
【発明を実施するための最良の形態】
【００１５】
以下に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１６】
（第１の実施例）
図１は、本発明実施例の画像形成装置の構成を示す斜視図である。同図において、１は画像形成装置であり、外部から入力した情報や、あらかじめ内部に保持している情報を元に印刷用紙に印刷を行なう。２はホストコンピュータ（以下ホストと表記）で、画像形成装置１とはケーブル３を介して接続され、画像形成装置１に印刷データや画像形成装置１を制御するための情報（以下印刷情報と表記）を転送する。４はデジタルカメラで、画像形成装置１とはケーブル５を介して接続され、画像形成装置１に印刷情報を転送する。６はメモリカード挿入口で、メモリカード７を挿入し、画像形成装置１はメモリカード７内に記憶された印刷情報を入力する。８は給紙カセットで、印刷用紙を所定量セットしておくことができる。同図では給紙カセットが２段構成となっていて、サイズや種類の異なる２種類の用紙をセットできるようになっている。９は排紙口で、印刷された用紙が排紙される。１０は操作キーで、画像形成装置１の動作に関するさまざまな設定を行なったり、画像形成装置１を単独で使用する場合に操作を行なうための部材である。１１は表示パネルで、画像形成装置１の状態表示や、操作キー１０を用いて画像形成装置１の動作設定を行なう場合の設定内容の表示などを行なう。印刷する用紙種別や印刷画質なども操作キー１０及び表示パネル１１で設定することができる。１２は電源スイッチで、画像形成装置１の電源を投入／切断するためのスイッチである。
【００１７】
図２は、画像形成装置１の構成の概要を示した図である。同図において、画像形成装置１はコントローラ部１３とエンジン部１４から構成される。コントローラ部１３はホスト２、デジタルカメラ４、メモリカード７から印刷情報を入力し、印刷情報の解析などの処理を行なって、エンジン部１４で印刷可能な形式の印刷データを生成する。また、操作キー１０の入力を受け付け、画像形成装置１の動作環境の設定などを行なうとともに、表示パネル１１に画像形成装置１の状態表示やユーザに対して操作キー１０による操作を促すための表示などを行なう。エンジン部１４は、用紙の給紙を行ない、コントローラ部１３で生成された印刷データを印刷して排紙する。エンジン部１４で用紙詰まりや用紙切れなどの異常が発生した場合はコントローラ部１３に通知され、コントローラ部１３は表示パネル１１に異常が発生したことを表示したり、ホスト２やデジタルカメラ４への通知処理などを行なう。
【００１８】
図３はコントローラ部１３の内部構成を示すブロック図である。同図において、２１はコントローラマイコン、２２はシステムメモリ、２３はインターフェース回路（以下Ｉ／Ｆ回路と表記）、２４は受信バッファ、２５はＤＬメモリ、２６はレンダラー、２７はコントローラメモリ、２８は解像度・階調変換回路である。
【００１９】
次に、図３のブロック図における動作について説明する。外部から入力された印刷情報の解析、画像処理、ビットマップへの変換処理などの全ての制御はコントローラマイコン２１が司る。印刷データの流れは次のようになる。ホスト２、デジタルカメラ４、メモリカード７から入力した印刷情報はＩ／Ｆ回路２３を介して受信バッファ２４に格納され、印刷情報を受信したことがＩ／Ｆ回路２３からコントローラマイコン２１に通知される。印刷情報には、印刷用紙上に文字やイメージをどのように配置、表現するかをページ単位で記述したページ記述言語（以下ＰＤＬと表記）が含まれる。コントローラマイコン２１は受信した印刷情報を解析し、ディスプレイリスト（以下ＤＬと表記）の形式に変換してＤＬメモリ２５に格納する。ＤＬはレンダラー２６によりレンダリング処理され、所定の階調と解像度を持つビットマップに変換されてコントローラメモリ２７に格納される。ビットマップは解像度・階調変換回路２８によりエンジン部１４で印刷可能な解像度と階調に変換され、エンジン部１４へ送出される。
【００２０】
コントローラマイコン２１には操作キー１０の操作内容が入力され、入力された内容に応じて適切な処理を行なう。また、エンジン部１４からは印刷の状況やエラーが発生した場合にはその内容がコントローラマイコン２１に通知され、表示パネル１１に表示したり、ホスト２やデジタルカメラ４に通知される。
【００２１】
図４はエンジン部１４の内部構成を示す図であり、画像形成装置１を横から見た場合のイメージを示している。同図において、４１はエンジンマイコン、４２はエンジンメモリ、４３はキャリッジ、４４はキャリッジモータ、４５は印字ヘッド、４６はヘッドドライバ、４７はローラ、４８はＬＦモータ、４９は印刷用紙、５０は給紙センサ、５１は排紙センサ、５２はプログラムメモリである。
【００２２】
次に、図４のブロック図における動作について説明する。印刷用紙４９の給紙と排紙、印字ヘッドの制御などの全ての制御はエンジンマイコン４１が司る。コントローラ部１３から送出されたビットマップはエンジンメモリ４２に格納される。印刷用紙４９の給紙と排紙は、ＬＦモータ４８を駆動してローラ４７を回転させることにより行なう。給紙と排紙が正常に動作しているかどうかは、給紙センサ５０と排紙センサ５１により印刷用紙４９の有無を検知することにより判別する。印字ヘッド４５はキャリッジ４３と一体になっており、ヘッドドライバ４６によりドライブされる。キャリッジ４３はキャリッジモータ４４により紙面及び印刷用紙の搬送方向に垂直な方向に往復運動を行なって、印字ヘッド４５により印刷用紙４９上に印字を行なう。給紙センサ５０と排紙センサ５１により印刷用紙４９が詰まったことを検知した場合は印字を中止し、コントローラ部１３に通知する。
【００２３】
図５は本発明の実施例の動作を示すフローチャートである。このフローチャートは、図３のシステムメモリ２２及び図４のプログラムメモリ５２に内蔵され、コントローラマイコン２１及びエンジンマイコン４１で処理されるプログラムフローを示すプログラム図である。コントローラマイコン２１及びエンジンマイコン４１は協調して該プログラムフローに従って制御動作を実行する。
【００２４】
同図のフローでは、２ページ以上の印刷ジョブを受信したときの１ページ目の処理を示している。２ページ目以降の処理については図８のフローで後述する。
【００２５】
以下に、フローの各ステップに沿って説明する。
【００２６】
ステップ１０１（図ではＳ１０１と記す、以下同様）：ホスト２、デジタルカメラ４、メモリカード７から印刷ジョブを受信するまで待つ。受信するとＩ／Ｆ回路２３からコントローラマイコン２１に通知され、受信バッファ２４に格納される。
【００２７】
ステップ１０２：受信した印刷ジョブ中のＰＤＬデータを解析し、１ページ目のＤＬを生成する。ＤＬはレンダラー２６によりレンダリング処理を行なせるために必要な形式のデータである。
【００２８】
ステップ１０３：１ページ分のＤＬをバンド単位でメモリに保存する。メモリの保存イメージを図６に示す。同図のように、１ページをｎ個のバンドで分割し、用紙の上方から順にバンド番号を振って、バンド番号とＤＬを対にして保存する。
【００２９】
ステップ１０４：ステップ１０２で生成されたＤＬをレンダラー２６に入力して１ページ目のレンダリング処理を行なう。レンダリング処理された結果はコントローラメモリ２７に格納される。
【００３０】
ステップ１０５：コントローラメモリ２７から１ページ目のレンダリング結果を読み出し、解像度・階調変換回路２８により解像度と階調がエンジンが印刷可能なビットマップ形式に変換される。
【００３１】
ステップ１０６：ステップ１０５で生成されたビットマップをバンド単位でメモリに保存する。メモリの保存イメージを図７に示す。ＤＬの保存イメージと同様に、１ページをｎ個のバンドで分割し、用紙の上方から順にバンド番号を振って、バンド番号とビットマップを対にして保存する。
【００３２】
ステップ１０７：ステップ１０５で変換された１ページ分のビットマップのうち、１バンド分をエンジン部１４に送出する。送出されたビットマップはエンジンメモリ４２に格納される。
【００３３】
ステップ１０８：エンジン部１４は、エンジンメモリ４２に格納された１バンド分のビットマップの印刷を適切なタイミングで行なう。具体的には、印刷用紙４９をＬＦモータ４８及びローラ４７により搬送し、キャリッジ４３をキャリッジモータ４４により往復移動させながら印字ヘッド４５により印刷用紙４９上に印刷を行なう。印刷用紙４９の印刷位置の制御は、搬送方向はＬＦモータ４８の駆動量及び給紙センサ５０と排紙センサ５１の検出結果に基づいて行ない、キャリッジ４３の移動方向はキャリッジモータ４４の駆動量に基づいて行なう。
【００３４】
ステップ１０９：最終バンドまで印刷が終了していない場合はステップ１０７に戻り、次のバンドの処理を続ける。最終バンドまで印刷が終了した場合は、１ページ目の処理を終了する。
【００３５】
上記の動作フローでは、ステップ１０１で印刷ジョブを受信し、ステップ１０２とステップ１０３でＤＬの生成と保存、ステップ１０４からステップ１０６でレンダリング及びその結果の保存、ステップ１０７からステップ１０９で１ページの全バンドのビットマップの印刷を行なっている。保存したＤＬ及びビットマップは、２ページ目以降の処理で使用されるが、これについては後述する。
【００３６】
続いて２ページ目以降の処理について図８のフローを用いて説明する。
【００３７】
以下に、フローの各ステップに沿って説明する。
【００３８】
ステップ２０１：受信した印刷ジョブ中のＰＤＬデータを解析し、１ページ分のＤＬを生成する。
【００３９】
ステップ２０２：バンドごとに、ステップ２０１で生成したＤＬと保存してあるＤＬを比較する。比較は同一バンド番号同士で行なう。ＤＬの内容が一致している場合はステップ２０３に進み、一致していない場合はステップ２０４に進む。３ページ目以降では、同一バンド番号に対して複数個のＤＬが保存されている可能性がある（ステップ２０４で説明する）が、その場合は一致しているＤＬが１つでもあればステップ２０３に進み、一致しているＤＬが１つもなければステップ２０４に進む。
【００４０】
ステップ２０３：一致したＤＬに対応する、保存してあるビットマップを１バンド分読み出す。読み出し後、ステップ２０８に進む。
【００４１】
ステップ２０４：ステップ２０１で生成したＤＬを１バンド分保存する。保存は、すでに保存されているＤＬとは別の領域に行なう。従って、同一バンド番号に対するＤＬが複数個存在することになる。メモリの保存イメージを図９に示す。１ページ目のＤＬは全バンド分が保存されているが、２ページ目以降のＤＬは、以前のページのＤＬと異なる場合のみ、別のメモリ領域に保存される。
【００４２】
ステップ２０５：ステップ２０４で保存したＤＬをレンダラー２６に入力して１バンド分のレンダリング処理を行なう。レンダリング処理された結果はコントローラメモリ２７に格納される。
【００４３】
ステップ２０６：コントローラメモリ２７から１バンド分のレンダリング結果を読み出し、解像度・階調変換回路２８により解像度と階調がエンジンが印刷可能なビットマップ形式に変換される。
【００４４】
ステップ２０７：ステップ２０６で生成されたビットマップをメモリに保存する。保存はバンド番号とビットマップを対にして行ない、すでに保存されているビットマップとは別の領域に行なう。従って、同一バンド番号に対するビットマップが複数個存在することになる。メモリの保存イメージを図１０に示す。１ページ目のビットマップは全バンド分が保存されているが、２ページ目以降のビットマップは、ステップ２０４で保存したＤＬに対応するビットマップのみ、別のメモリ領域に保存される。
【００４５】
ステップ２０８：１バンド分のビットマップをエンジン部１４に送出する。ステップ２０３から進んだ場合はステップ２０３で読み出したビットマップを、ステップ２０７から進んだ場合はステップ２０６で生成されたビットマップをエンジン部１４に送出する。送出されたビットマップはエンジンメモリ４２に格納される。
【００４６】
ステップ２０９：エンジン部１４は、エンジンメモリ４２に格納された１バンド分のビットマップの印刷を適切なタイミングで行なう。
【００４７】
ステップ２１０：最終バンドまで印刷が終了していない場合はステップ２０２に戻り、次のバンドの処理を続ける。最終バンドまで印刷が終了した場合は、そのページの処理を終了する。次のページがある場合は、引き続きステップ２０１から処理を繰り返す。
【００４８】
上記の動作フローでは、ステップ２０１でＤＬを生成し、ステップ２０２で以前のページで生成したＤＬと現在処理中のページのＤＬの内容を比較している。以前のページで生成したＤＬの中で内容が一致するものがあれば、ステップ２０３でそのＤＬに対応するビットマップを保存領域から読み出している。内容の一致するＤＬがない場合はステップ２０４からステップ２０７で現在処理中のページのＤＬの新規保存、レンダリング、レンダリング結果（ビットマップ）の新規保存を行なっている。ステップ２０８からステップ２０９ではビットマップの印刷を行ない、ステップ２０２からステップ２１０で１ページのバンド数分の処理を繰り返す。
【００４９】
このようにすることにより、ＤＬの内容が以前のページと同じ場合はレンダリングせず、保存してあったビットマップを読み出して印刷を行なうため、レンダリングの処理時間を節約することができ、高速に印刷を行なうことができる。特に、オブジェクトの数が多い場合や複雑な描画命令で構成されている場合には、レンダリングに時間がかかるため、レンダリング処理を省略することは高速化に有効である。レンダリングするかどうかはバンドごとに判別するため、ページの内容が一部のみ異なる場合には異なる部分が含まれるバンドのみレンダリングが行なわれる。よって、異なる部分が少ないほどより高速に印刷することができる。
【００５０】
（第２の実施例）
図１１は本発明実施例の動作を示すフローチャートである。図１１のフローチャートは、図３のシステムメモリ２２及び図４のプログラムメモリ５２に内蔵され、コントローラマイコン２１及びエンジンマイコン４１で処理されるプログラムフローを示すプログラム図である。コントローラマイコン２１及びエンジンマイコン４１は協調して該プログラムフローに従って制御動作を実行する。
【００５１】
同図のフローは、第１の実施例で示した構成よりも搭載メモリの少ないシステムに適した処理のうち２ページ目以降の処理を示している。１ページ目の処理は第１の実施例と同様（図５のフロー）のため、説明は省略する。
【００５２】
以下に、フローの各ステップに沿って説明する。
【００５３】
ステップ３０１：受信した印刷ジョブ中のＰＤＬデータを解析し、１ページ分のＤＬを生成する。
【００５４】
ステップ３０２：バンドごとに、ステップ３０１で生成したＤＬと保存してあるＤＬを比較する。比較は同一バンド番号同士で行なう。ＤＬの内容が一致している場合はステップ３０３に進み、一致していない場合はステップ３０４に進む。
【００５５】
ステップ３０３：一致したＤＬに対応する、保存してあるビットマップを１バンド分読み出す。読み出し後、ステップ３０８に進む。
【００５６】
ステップ３０４：ステップ３０１で生成したＤＬを１バンド分保存する。保存は、すでに保存されているＤＬの領域に上書き保存する。従って、あるバンド番号に対するＤＬは１個のみ存在することになる。
【００５７】
ステップ３０５：ステップ３０４で保存したＤＬをレンダラー２６に入力して１バンド分のレンダリング処理を行なう。レンダリング処理された結果はコントローラメモリ２７に格納される。
【００５８】
ステップ３０６：コントローラメモリ２７から１バンド分のレンダリング結果を読み出し、解像度・階調変換回路２８により解像度と階調がエンジンが印刷可能なビットマップ形式に変換される。
【００５９】
ステップ３０７：ステップ３０６で生成されたビットマップをメモリに保存する。保存は、すでに保存されているビットマップの領域に上書き保存する。従って、あるバンド番号に対するビットマップは１個のみ存在することになる。
【００６０】
ステップ３０８：１バンド分のビットマップをエンジン部１４に送出する。ステップ３０３から進んだ場合はステップ３０３で読み出したビットマップを、ステップ３０７から進んだ場合はステップ３０６で生成されたビットマップをエンジン部１４に送出する。送出されたビットマップはエンジンメモリ４２に格納される。
【００６１】
ステップ３０９：エンジン部１４は、エンジンメモリ４２に格納された１バンド分のビットマップの印刷を適切なタイミングで行なう。
【００６２】
ステップ３１０：最終バンドまで印刷が終了していない場合はステップ３０２に戻り、次のバンドの処理を続ける。最終バンドまで印刷が終了した場合は、そのページの処理を終了する。次のページがある場合は、引き続きステップ３０１から処理を繰り返す。
【００６３】
上記の動作フローでは、第１の実施例とは異なり、以前のページのＤＬと異なる場合はＤＬとビットマップを上書き保存するようにしている。第１の実施例と比較してレンダリング処理を行なう度合いは若干増加するが、ＤＬとビットマップの保存のために必要なメモリ容量は常に一定（各１ページ分）になる。従って、特に省メモリが要求されるシステムに最適である。
【図面の簡単な説明】
【００６４】
【図１】第１〜２実施例の画像形成装置の構成を示す斜視図
【図２】第１〜２実施例の画像形成装置の構成の概要を示した図
【図３】第１〜２実施例の画像形成装置の構成の概要を示した図
【図４】第１〜２実施例の画像形成装置の構成の概要を示した図
【図５】第１〜２実施例の動作を示すフローチャート
【図６】第１実施例のＤＬの保存イメージを示した図
【図７】第１実施例のビットマップの保存イメージを示した図
【図８】第１実施例の動作を示すフローチャート
【図９】第１実施例のＤＬの保存イメージを示した図
【図１０】第１実施例のビットマップの保存イメージを示した図
【図１１】第２実施例の動作を示すフローチャート
【符号の説明】
【００６５】
１  画像形成装置
２  ホスト
３  ケーブル
４  デジタルカメラ
５  ケーブル
６  メモリカード挿入口
７  メモリカード
８  給紙カセット
９  排紙口
１０  操作キー
１１  表示パネル
１２  電源スイッチ
１３  コントローラ部
１４  エンジン部
２１  コントローラマイコン
２２  システムメモリ
２３  Ｉ／Ｆ回路
２４  受信バッファ
２５  ＤＬメモリ
２６  レンダラー
２７  コントローラメモリ
２８  解像度・階調変換回路
４１  エンジンマイコン
４２  エンジンメモリ
４３  キャリッジ
４４  キャリッジモータ
４５  印字ヘッド
４６  ヘッドドライバ
４７  ローラ
４８  ＬＦモータ
４９  印刷用紙
５０  給紙センサ
５１  排紙センサ
５２  プログラムメモリ
【図１】
2007301893.tif 000003
【図２】
2007301893.tif 000004
【図３】
2007301893.tif 000005
【図４】
2007301893.tif 000006
【図５】
2007301893.tif 000007
【図６】
2007301893.tif 000008
【図７】
2007301893.tif 000009
【図８】
2007301893.tif 000010
【図９】
2007301893.tif 000011
【図１０】
2007301893.tif 000012
【図１１】
2007301893.tif 000013