(57)【特許請求の範囲】
【請求項１】
1回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ処理手段と、
前記生成した画像データを一時的に記憶しておく一次バッファと、
前記生成した複数の画像データを該一次バッファに格納し、必要に応じて該一次バッファから該画像データの一部を読み出して利用する制御手段とを有し、
前記複数の原画像ファイルデータを１枚の印刷用紙に主走査方向に並べて印刷を行う場合に、前記画像データ処理手段は１回の主走査で印刷する前記複数の原画像ファイルデータのそれぞれに前記所定の画像処理を施してビットイメージ形式の前記複数の画像データを生成して、当該それぞれの画像データを前記一次バッファに格納し、前記制御手段は１回の主走査に必要な前記各画像データの一部をそれぞれ前記一次バッファから読み出して出力することを特徴とするプリンタ。
【請求項２】
請求項１記載のプリンタにおいて、前記原画像ファイルデータは、ＪＰＥＧ圧縮されていることを特徴とするプリンタ。
【請求項３】
請求項１又は２記載のプリンタにおいて、前記画像データ処理手段は、更に、前記所定の画像処理として、印刷する際に原画像を回転させて画像の向きを所定角度だけ変える回転処理を実行可能な回転処理部と、原画像を拡大又は縮小するリサイズ処理を実行可能なリサイズ処理部を有することを特徴とするプリンタ。
【請求項４】
請求項３記載のプリンタにおいて、更に、原画像とは別個にタイトルを印刷可能に構成され、該タイトルを、少なくとも前記回転処理前用のタイトルと、該回転処理前用のタイトルを回転させたタイトルの２つ用意しておき、前記所定の画像処理として回転処理を実行するか否かに応じて、前記回転処理前用のタイトル又は前記回転させたタイトルのうち、いずれかを選択して印刷する手段を有することを特徴とするプリンタ。
【請求項５】
請求項３記載のプリンタにおいて、前記画像データ処理手段は、更に、前記所定の画像処理として、原画像に所定の補正処理を加える画像補正部を有し、前記リサイズ処理を実行した場合に、該画像補正部は、リサイズ前の画像とリサイズ後の画像のうち画素数のより少ない方を選択し、該選択した画像に対し前記所定の補正処理を加えることを特徴とするプリンタ。
【請求項６】
生成された画像データを一時的に記憶する所定の容量の記憶手段を備えるプリンタにおける画像データの処理方法であって、
前記プリンタの１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ生成ステップと、
前記画像データ生成ステップにおいて生成した複数のビットイメージ形式の画像データを前記所定の記憶手段に一時的に記憶するバッファリングステップと、
前記バッファリングステップにおいて記憶した前記各画像データの関連する部分を読み出して利用するステップとを有し、
前記画像データ生成ステップにおいて、前記複数の原画像ファイルデータを１枚の印刷用紙に主走査方向に並べて印刷を行う場合、１回の主走査で印刷する前記複数の原画像ファイルデータのそれぞれに前記所定の画像処理を施してビットイメージ形式の前記複数の画像データを生成し、
前記利用するステップにおいて、１回の主走査に必要な前記各画像データの一部をそれぞれ前記一次バッファから読み出して出力することを特徴とするプリンタにおける画像データの処理方法。
【請求項７】
１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ処理手段と、
前記生成した画像データを一時的に記憶しておく一次バッファと、
前記１回の主走査で印刷するイメージデータを提供する前記複数の原画像ファイルデータから、それぞれ前記画像データ処理手段によりビットイメージ形式の複数の画像データを生成した場合の総データ容量を求める総容量演算手段と、
前記総データ容量が前記一次バッファの容量を超えるかどうかを判断する判断手段と、
前記判断手段が前記総データ容量が前記一次バッファの容量を超えないと判断した場合は、前記生成した複数の画像データを該一次バッファに格納し、必要に応じて該一次バッファから該画像データの一部を読み出して１回の主走査で印刷するイメージデータとして利用し、前記判断手段が前記総データ容量が前記一次バッファの容量を超えると判断した場合は、前記生成した複数の画像データを該一次バッファに格納することなく、必要に応じて前記複数の原画像ファイルデータのそれぞれからその都度ビットイメージ形式の画像データを生成し、その一部を読み出して１回の主走査で印刷するイメージデータとして利用する制御手段とを有することを特徴とするプリンタ。
【請求項８】
生成された画像データを一時的に記憶する所定の容量の記憶手段を備えるプリンタにおける画像データの処理方法であって、
プリンタの１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ生成ステップと、
前記１回の主走査で印刷するイメージデータを提供する前記複数の原画像ファイルデータから、それぞれ前記画像データ生成ステップによりビットイメージ形式の複数の画像データを生成した場合の総データ容量を求める総容量演算ステップと、
前記総容量演算ステップにおいて求めた前記総データ容量が前記記憶手段の所定の容量を超えるかどうかを判断する判断ステップと、
前記判断ステップにおいて、前記総データ容量が前記記憶手段の所定の容量を超えないと判断した場合は、前記生成した複数の画像データを前記記憶手段に格納した上で、必要に応じて該記憶手段から該画像データの一部を読み出して１回の主走査で印刷するイメージデータとして利用し、前記判断ステップにおいて、前記総データ容量が前記記憶手段の所定の容量を超えると判断した場合は、前記生成した複数の画像データを前記記憶手段に格納することなく、必要に応じて前記複数の原画像ファイルデータのそれぞれからその都度ビットイメージ形式の画像データを生成し、その一部を読み出して１回の主走査で印刷するイメージデータとして利用するステップとを有することを特徴とするプリンタにおける画像データの処理方法。
【請求項９】
圧縮された原画像ファイルデータを直接処理して印刷可能なプリンタにおいて、該プリンタは、処理対象となる複数のビットイメージ形式の画像データを複数のバンドに分割してバンドデータを得て、該バンドデータを用いて印刷処理する方式である場合の該プリンタを制御するプログラムを記録した記録媒体であって、該プログラムは、１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された前記複数の原画像ファイルデータを読み込む処理と、
読み込んだ前記複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する処理と、
生成された画像データを一時的に記憶する第１の記憶処理と、
該一時的に記憶された複数の画像データから印刷処理を行う前記バンドデータを得て、一時的に記憶する第２の記憶処理と、
該第２の記憶処理で記憶されたバンドデータを用いて印刷を実行する印刷実行処理とを含み、前記第１の記憶処理で前記画像データが一時的に記憶されている場合には、以後、前記第２の記憶処理と前記印刷実行処理とを繰り返して行わせるものであることを特徴とするプログラムを記録した記録媒体。
【請求項１０】
圧縮された原画像ファイルデータを直接処理して印刷可能なプリンタにおいて、該プリンタは、処理対象となるビットイメージ形式の画像データを複数のバンドに分割してバンドデータを得て、該バンドデータを用いて印刷処理する方式であり、生成された前記画像データを一時的に記憶する所定の容量の記憶手段を備える場合の該プリンタを制御するプログラムを記録した記録媒体であって、該プログラムは、
前記プリンタの１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された前記複数の原画像ファイルデータを読み込む処理と、
読み込んだ前記複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施してビットイメージ形式の画像データを生成する処理と、
前記複数の原画像ファイルデータそれぞれのビットイメージ形式の画像データを生成した場合の総データ容量を求める総容量演算処理と、
前記総容量演算処理において求めた前記総データ容量が前記記憶手段の所定の容量を超えるかどうかを判断する判断処理と、
前記判断処理において、前記総データ容量が前記記憶手段の所定の容量を超えないと判断した場合は、複数の生成された前記画像データを一時的に記憶する第１の記憶処理と、該一時的に記憶された画像データから印刷処理を行うバンドデータを得て、一時的に記憶する第２の記憶処理と、該第２の記憶処理で記憶されたバンドデータを用いて印刷を実行する印刷実行処理とを行わせると共に、以後、印刷処理すべきバンドごとに、前記第２の記憶処理と前記印刷実行処理とを繰り返して行わせ、前記判断処理において、前記総データ容量が前記記憶手段の所定の容量を超えると判断した場合は、前記第１の記憶処理を行うこと無く、生成された前記画像データから印刷処理を行うバンドデータを得て、一時的に記憶する第２の記憶処理と、該第２の記憶処理で記憶されたバンドデータを用いて印刷を実行する印刷実行処理とを行わせると共に、以後、印刷処理すべきバンドごとに、前記複数の原画像ファイルデータそれぞれを読み込む処理と、前記読み込んだ原画像ファイルデータに対して復元を含む所定の画像処理を施してビットイメージ形式の画像データを生成する処理と、該生成された画像データの各バンドデータを記憶する処理と、前記印刷実行処理とを繰り返して行わせるものであることを特徴とするプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタルカメラ等で撮影しメモリカード等に格納された画像データを直接（ホストを介することなく）読み込んで印刷を行うプリンタに関し、特に、いわゆるインデクス印刷等を行う場合の当該プリンタにおける画像データの処理技術に関する。
【０００２】
【従来の技術】
近年、ディジタルカメラが、その性能の向上に伴って、普及してきている。従来、かかるディジタルカメラで撮影した画像データを印刷する場合には、ＰＣカード等に格納された画像データを一旦パーソナルコンピュータ（以下、パソコンと略称する）に読み込ませた後、そのパソコンに接続されたプリンタで印刷していた。
【０００３】
このようにディジタルカメラで撮影した画像データをパソコンを介してプリンタで印刷する場合には、従来からの銀塩写真に比べ、ユーザ自らより自由な編集が可能になるというメリットがあり、例えば、ユーザは、パソコン上の専用のアプリケーションソフトを用いれば、ディジタルカメラを用いて撮影した多数の画像のうち複数枚分の写真を１枚の印刷用紙（以下、単に用紙という）に印刷するインデクス印刷等を自由に行うことができる。
【０００４】
かかるインデクス印刷では、例えば、縦横（５×４）で２０枚分程の多数の画像を絵葉書サイズの用紙に、それぞれ縮小した形で印刷するので、パソコンに読み込んだ画像データに対し縮小・回転等特有の処理が必要であり、ワークメモリも大きな容量が必要となるので、上述したアプリケーションソフトでは、パソコン上、いわゆるスプールファイルを作成した上で、その都度必要な画像の一部を取得し、縮小・回転等の処理を行うようにしている。
【０００５】
以下、上記の如きパソコン上のアプリケーションソフトを用い、通常のインクジェットプリンタを介してインデクス印刷を行う場合を例にとって、図８及び図９を参照しつつ、具体的に説明する。尚、このインクジェットプリンタは、バンドバッファを備え、バンドごとにイメージデータを展開して印刷を行うものとする。
【０００６】
例示のインデクス印刷は、図８に示すように、絵葉書サイズの用紙１に、２０枚分のそれぞれの縮小画像Ａ１，Ａ２，Ａ３，・・・を、インクジェットプリンタにおける主走査方向Ｘを横方向、紙送り方向（副走査方向）Ｙを縦方向とした場合に、横方向に４枚、縦方向に５枚を印刷する場合である。しかも、このインデクス印刷は、用紙１を横向きに置いて見たときに正位置となるように画像配置して印刷する場合であり、同図に示すＡ，Ｂ，Ｃ，・・・，Ｔの記号で示す如く、元の画像をそれぞれ９０度回転させた状態で印刷されたものとなる。このように、多数の画像を１枚の用紙に印刷するインデクス印刷は、１つの画像を１枚の用紙に印刷する通常の印刷に比べて、スループットが著しく長くなり、しかも図８の場合のような回転処理が加わると、その分だけ更に多くの時間を要する。
【０００７】
図９を用いて、パソコン上のアプリケーションソフトによりインデクス印刷を行う場合のパソコン及びプリンタにおける処理のフローについて説明しておく。まず、ディジタルカメラで撮影され、ＪＰＥＧ方式等により圧縮されたファイル形式でＰＣカード等に格納された画像データのうち、上記インデクス印刷に必要なすべての画像データを伸長（圧縮されていない元の画像データに復元）し（Ｓ１）、復元した画像データのスプールファイルを作成し、ハードディスクに保存しておく（Ｓ２）。
【０００８】
そして、バンドごとに、当該バンドに必要な画像の一部を取得し（Ｓ３）た上で、縮小・回転等の処理を行う（Ｓ４）。その後、バンドバッファにコピー（展開）する（Ｓ５）。以上のＳ３〜Ｓ５の処理をすべての画像（図８の例では、Ａ１，Ａ２，Ａ３，Ａ４、即ちＡ，Ｆ，Ｋ，Ｐ）について行う（Ｓ６でＮｏ）。そして、当該バンドに必要な画像データがすべてそろった場合（Ｓ６でＹｅｓ）には、バンドバッファに展開したイメージデータの印刷を行う（Ｓ７）。そして、このインデクス印刷に必要な画像データのすべてのバンドについてＳ３〜Ｓ７の処理を繰り返し（Ｓ８でＮｏ）、すべてのバンドの処理が完了したら（Ｓ８でＹｅｓ）、インデクス印刷における１段目の複数画像の印刷が終了する。
【０００９】
インデクス印刷等、主走査方向に複数の画像を含む場合、パソコン上のアプリケーションソフトでは、以上のように印刷データを生成・処理し、プリンタに転送してその印刷を行っている。
【００１０】
【発明が解決しようとする課題】
最近では、パソコンと略同様の画像データ処理機能を備え、ディジタルカメラ等で撮影しメモリカード等に格納された画像データを直接（ホストを介することなく）読み込んで所定の画像処理を行った上で印刷を行うプリンタ（以下、フォトプリンタと呼ぶ）が実用化されている。
【００１１】
このようなフォトプリンタの構成は、大きく分けると、従来のプリンタと同様の動作を行う印刷処理部と、メモリカード等から読み込んだ画像データに対しパソコンと同様の画像データ処理を行うフォト画像処理部とから成り、このフォトプリンタを用いれば、パソコンを必要とすることなくディジタルカメラで撮影した画像データを印刷することが可能となるので、大変便利である。従って、かかるフォトプリンタを安価に提供し得るようになれば、ディジタルカメラの解像度の高画質化に伴って、両者の利用がより一層進むものと思われる。
【００１２】
しかしながら、かかるフォトプリンタは、上述したように、パソコンと同様の画像データ処理機能と通常のプリンタの機能とが一体となっているので、全体としてのコスト等を考えると、フォトプリンタに内臓されるＣＰＵの処理能力や速度、更には、ワークメモリとしてのＲＡＭの容量は、自ずから制約を受ける。即ち、パソコンと同様の画像データ処理を行うといっても、このようなフォトプリンタが備えるＣＰＵは、パソコンが備えるＣＰＵに比べると、処理能力や速度の点で制限があり、例えば、画像データを一時的に蓄積しておくバッファメモリの容量にも限界がある。特に、上述したインデクス印刷等、多数の画像データをメモリ等に一時的に蓄積した上で縮小・回転等の処理を行う必要がある場合には、バッファメモリ等の容量が間に合わない事態も考えられる。上述したパソコン上のアプリケーションソフトによりインデクス印刷を行う場合では、特に、最近のパソコンでは、大変高性能のＣＰＵを備え、ワークメモリとしてのＲＡＭの容量も十分であることが多く、また、スプールファイルの形式でハードディスクに保存しておくことも可能であるため、あまり問題にはならなかった。しかし、フォトプリンタでは、限られたメモリ資源の中で、処理のスループットも遅くしないで、インデクス印刷等多くの画像データ処理を伴う作業を行うというのは、難題である。
【００１３】
従来、フォトプリンタにおける構成及び画像データ処理の制御方法等の点から、このような問題を解決するための有効な提案は、ほとんどなされていなかった。
【００１４】
本発明の目的は、限られたＣＰＵの能力やメモリ容量の中でも、上述したインデクス印刷等、主走査方向に複数の画像を含む印刷データを効率よく処理することを可能とし、スループットを短縮し得るフォトプリンタ及びその画像データの処理方法を提供することにある。
【００１５】
【課題を解決するための手段】
上記目的達成のため、本発明では、例えば、上述したインデクス印刷等の場合に、１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを含む複数の原画像ファイルデータに対して、所定の画像処理を施して生成したビットイメージ形式の画像データを、一旦一次バッファに記憶しておき、以後、必要に応じて該一次バッファから該画像データの関連する部分を読み出して利用するようにした。これにより、各々の部分的イメージごとにその都度原画像ファイルデータにアクセスして所定の画像処理を施す必要が無くなり、処理の効率化を図れる。
【００１６】
即ち、本発明の第１の様相によれば、1回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ処理手段と、前記生成した画像データを一時的に記憶しておく一次バッファと、前記生成した複数の画像データを該一次バッファに格納し、必要に応じて該一次バッファから該画像データの一部を読み出して利用する制御手段とを有し、前記複数の原画像ファイルデータを１枚の印刷用紙に主走査方向に並べて印刷を行う場合に、前記画像データ処理手段は１回の主走査で印刷する前記複数の原画像ファイルデータのそれぞれに前記所定の画像処理を施してビットイメージ形式の前記複数の画像データを生成して、当該それぞれの画像データを前記一次バッファに格納し、前記制御手段は１回の主走査に必要な前記各画像データの一部をそれぞれ前記一次バッファから読み出して出力することを特徴とするプリンタを提供する。
【００１７】
上述したように、限られたメモリ容量の中では、原画像ファイルデータの内容や、非常に多くの枚数のインデクス印刷等、印刷の仕方によっては、前記生成した画像データをすべて一次バッファに記憶することができない場合も考えられる。そこで、本発明の第２の様相では、各部分的イメージにつき、それぞれ前記画像データ処理手段によりビットイメージ形式の複数の画像データを生成した場合の総データ容量を求め、その総データ容量が前記一次バッファの容量を超えない場合にのみ、複数の前記生成した画像データを該一次バッファに格納し、必要に応じて該一次バッファから該画像データの関連する部分を読み出して利用するようにした。即ち、請求項７記載のプリンタでは、１回の主走査で印刷するイメージデータに含まれる各々の部分的イメージを提供する圧縮された複数の原画像ファイルデータのそれぞれに対して、復元を含む所定の画像処理を施して複数のビットイメージ形式の画像データを生成する画像データ処理手段と、前記生成した画像データを一時的に記憶しておく一次バッファと、前記１回の主走査で印刷するイメージデータを提供する前記複数の原画像ファイルデータから、それぞれ前記画像データ処理手段によりビットイメージ形式の複数の画像データを生成した場合の総データ容量を求める総容量演算手段と、前記総データ容量が前記一次バッファの容量を超えるかどうかを判断する判断手段と、前記判断手段が前記総データ容量が前記一次バッファの容量を超えないと判断した場合は、前記生成した複数の画像データを該一次バッファに格納し、必要に応じて該一次バッファから該画像データの一部を読み出して１回の主走査で印刷するイメージデータとして利用し、前記判断手段が前記総データ容量が前記一次バッファの容量を超えると判断した場合は、前記生成した複数の画像データを該一次バッファに格納することなく、必要に応じて前記複数の原画像ファイルデータのそれぞれからその都度ビットイメージ形式の画像データを生成し、その一部を読み出して１回の主走査で印刷するイメージデータとして利用する制御手段とを有することを特徴とする。
【００１８】
【発明の実施形態】
以下、本発明の諸実施形態を図面を参照して説明する。まず、本発明の第１の実施形態について説明する。本実施形態に係るプリンタは、上述したように、ディジタルカメラ等で撮影しメモリカード等に格納された画像データを直接（ホストを介することなく）読み込んで所定の画像処理を行った上で印刷を行うフォトプリンタであり、シリアルのインクジェット方式のプリンタである。
【００１９】
図１は、本発明の第１の実施形態に係るプリンタの概略構成を示すブロック図である。本実施形態のプリンタは、大きく分けると、フォト画像処理部１１と、印刷処理部１３とから成る。
【００２０】
印刷処理部１３は、図示しないインクジェット方式の印字ヘッド、キャリッジ機構、紙送り機構等を含むプリントエンジン部や、プリントエンジン部の制御等を行う印刷制御部等を含んでおり、従来のプリンタと同様の動作を行う部分である。
【００２１】
フォト画像処理部１１は、例えば、メモリカード１０から読み込んだ原画像ファイルデータに対しパソコンと同様の画像データ処理を行う部分であり、画像データ処理部１１２と、一次バッファ１１４と、バンド（二次）バッファ１１６と、画像データ制御部１１８とを有する。
【００２２】
画像データ処理部１１２は、メモリカード１０から読み込んだ原画像ファイルデータに対して、復元を含む所定の画像処理を施してビットイメージ形式の画像データを生成する。即ち、画像データ処理部１１２は、ディジタルカメラ等で撮影された画像データを格納したメモリカード１０内の原画像ファイルデータを読み込む画像データ読み込み部１１２ａ、この画像データ読み込み部１１２ａで読み込まれた画像データを伸長（復元）する伸長処理部１１２ｂ、従来例との関連で図８に示したようなインデクス印刷等、画像データを回転させる必要のある場合に、回転処理を行う回転処理部１１２ｃ、画像データを縮小し又は拡大するリサイズ処理部１１２ｄを含んでいる。尚、メモリカード１０内に格納された原画像ファイルデータは、例えばＪＰＥＧ方式によって圧縮処理されたファイルデータである。従って、この圧縮された原画像ファイルデータを画像データ読み込み部１１２ａで読み込んだ後、伸長（復元）した上で他の所定の画像処理を施すために伸長処理部１１２ｂが設けられている。
【００２３】
本実施形態では、画像データ処理部１１２は、更に、画像補正部１１２ｅをも有している。画像補正部１１２ｅは、従来はパソコン側（例えば、プリンタドライバ設定の画像補正機能）で行っていたコントラスト調整、明度調整、カラーバランス補正、彩度調整、記憶色再現、シャープネス向上、ノイズ軽減、輪郭補正等を行うものであるが、本実施形態では、以上のような画像補正処理を、後述するように、上述したリサイズ処理部１１２ｄによるリサイズ処理後の画像がどのような大きさの画像となったかによって、リサイズ処理後の画像又はリサイズ処理前の画像のいずれかを用いて行うことができる。
【００２４】
一次バッファ１１４は、ＲＡＭ等から構成され、画像データ処理部１１２により各種の処理を施された後の画像データを一時的に記憶しておくものである。バンド（二次）バッファ１１６は、印刷に先立って１バンド分の画像データを保持するものである。尚、図１に示す例では、一次バッファ１１４とバンド（二次）バッファ１１６は、別個に構成されているが、これらは、１つの記憶手段（ＲＡＭ）で構成しても良い。
【００２５】
画像データ制御部１１８は、画像データ処理部１１２により生成されたビットイメージ形式の画像データを一次バッファ１１４に格納し、必要に応じて一次バッファ１１４から該画像データの関連する部分を読み出して利用するための制御を行う。
【００２６】
ところで、インデクス印刷を行う場合等に、ディジタルカメラで撮影した画像とは別の、図８に示すようなタイトル（この場合「ＩＮＤＥＸ  ＢＡＮＮＥＲ」）も同時に印刷することが多い。本実施形態のプリンタは、このような場合において、あらかじめ印刷するタイトル形式を複数用意しておき、いずれのタイトルを付すかを選択し得るタイトル選択部１２０も有している。タイトル選択部１２０の機能等の詳細については後述する。
【００２７】
図２は、本実施形態のプリンタの外観構成を示すものであり、同図に示すように、外観構成上は、従来のインクジェットプリンタ等と大きく異なるところはないが、メモリカード１０が差し込まれるカード挿入部２１が設けられている。その他、各種操作上の設定等を行う操作パネル部２３、用紙の給紙部２５と排出部２７等が設けられている。
【００２８】
以上の構成を有する本実施形態のプリンタの動作について、以下、図面を参照しつつ説明する。ここでは、従来例との関連で図８に示したようなインデクス印刷を行うものとし、そのため画像のリサイズ処理としての縮小処理と、元の画像の上下方向の向きを９０度回転させるための回転処理を必要とする場合について説明することとする。
【００２９】
さて、ユーザは、まず、図２に示した本実施形態のプリンタのカード挿入部２１にメモリカード１０を挿入すると共に、操作パネル部２３によって、印刷を行うための種々の指示設定を行う。尚、ここでは、図８に示した、Ａ４の用紙を横長に用いるようなインデクス印刷の設定もしたものとする。
【００３０】
これ以降の動作を、図３のフローチャートによって説明する。まず、画像データ制御部１１８は、処理すべき画像［画像Ａ１（図８参照）とする］の画像データが一次バッファ１１４に存在するか否かを判断する（ステップＳ１１）。尚、初期状態では、一次バッファ１１４には何のデータも格納されていないものとする。従って、画像データ読み込み部１１２ａがメモリカード１０内の複数の原画像ファイルデータからインデクス印刷すべき画像のうち、まず、画像Ａ１について、その原画像ファイルデータを読み込む（ステップＳ１２）。尚、メモリカード１０内に格納されている原画像ファイルデータは、ＪＰＥＧ等の方式による圧縮されたファイルデータであるので、それを伸長処理部１１２ｂが伸長処理し（ステップＳ１３）、次に、元の画像を９０度回転させるための回転処理を行い（ステップＳ１４）、更に、リサイズ処理として、この場合、縮小処理を行う（ステップＳ１５）。
【００３１】
尚、ステップＳ１３による伸長処理によって、圧縮されていた原画像ファイルデータは元の画像に伸長されるが、元の画像データ量が、例えば、１２８０（画素）×９６０（画素）×３（カラー画像であるのでＲＧＢの３要素）＝約３．５Ｍバイトであるとすれば、伸長後の画像データ量もこれと同じデータ量となる。
【００３２】
そして、この画像データを縮小（この揚合、縦横をそれぞれ１／４に縮小）することにより、縮小後の画像データ量は、３２０（画素）×２４０（画素）×３（ＲＧＢの３要素）＝約２２５Ｋバイトとなる。
【００３３】
このように縮小処理された画像データは、一次バッファ１１４に保持される（ステップＳ１６）。つまり、この時点では、１枚目の画像が回転処理され、且つ、縮小された状態で一次バッファ１１４に保持されることになる。
続いて、画像データ制御部１１８は、この一次バッファ１１４に保持された画像データから、１つのバンド（１番目のバンドとする）分のバンドデータをバンド（二次）バッファ１１６にコピーする（ステップＳ１７）。
【００３４】
次に、画像データ制御部１１８は、ある１つのバンド分（この場合、１番目のバンド分）のバンドデータを生成するに必要な全ての画像について処理が終了したか否かを判断し、（ステップＳ１８）、終了していなければ、ステップＳ１１に戻り、次の画像Ａ２（図８参照）について前述のステップＳ１１からＳ１７までの処理を行う。つまり、画像Ａ２について、その画像データが一次バッファ１１４に存在するか否かを判断する（ステップＳ１１）。この時点では、画像Ａ２の画像データは、未だ一次バッファ１１４に存在していないので、画像データ読み込み部１１２ａは、メモリカード１０内の複数の原画像ファイルデータから画像Ａ２の原画像ファイルデータを読み込む（ステップＳ１２）。そして、それを伸長処理部１１２ｂが伸長処理し（ステップＳ１３）、次に、上述したのと同様の回転処理を行い（ステップＳ１４）、更に、縮小処理を行う（ステップＳ１５）。
【００３５】
そして、その縮小処理された画像データは、一次バッファ１１４に保持される（ステップＳ１６）。つまり、この時点では、画像Ａ１とＡ２の２枚の画像が、回転処理され、且つ、縮小された状態で一次バッファ１１４に保持されることになる。続いて、画像データ制御部１１８は、この一次バッファ１１４に保持された画像Ａ２の画像データから、１番目のバンド分のバンドデータをバンド（二次）バッファ１１６にコピーする（ステップＳ１７）。
【００３６】
このようにして、１つのバンド分（この場合、１番目のバンド分）のバンドデータを生成するに必要な画像、つまり、この実施の形態では、図８のようなインデクス印刷を行うのであるから、まず、画像Ａ１〜Ａ４の４枚の画像について、ステップＳ１１からステップＳ１７までの処理を行う。これにより、バンド（二次）バッファ１１６には、印刷すべき１バンド分（１番目のバンド分）のバンドデータ（画像Ａ１〜Ａ４の画像データにおけるそれぞれ１番目のバンドデータ）が保持され、そのバンドデータを印刷処理部１３に送る（ステップＳ１９）。印刷処理部１３では、送られてきた１番目のバンドデータに基づいた印刷処理を行う。次に、画像データ制御部１１８は、全てのバンドの処理が終了したか否かを判断して（ステップＳ２０）、終了していなければ、ステップＳ１１に戻り、今度は、２番目のバンド処理に入る。
【００３７】
この２番目のバンド処理を行うに際して、まず、画像データ制御部１１８は、処理すべき画像データが一次バッファ１１４に存在するか否かを判断し（ステップＳ１１）、一次バッファ１１４に存在すれば、その一次バッファ１１４から２番目のバンドに相当する画像データを読み出してバンド（二次）バッファ１１６にコピーする。この場合、まず、画像Ａ１に対して２番目のバンドデータが一次バッファ１１４から読み出されてバンド（二次）バッファ１１６にコピーされ、続いて、画像Ａ２に対しての２番目のバンドデータが一次バッファ１１４から読み出されてバンド（二次）バッファ１１６にコピーされ、更に、画像Ａ２に対しての２番目のバンドデータが一次バッファ１１４から読み出されてバンド（二次）バッファ１１６にコピーされ、続いて、画像Ａ３に対しての２番目のバンドデータが一次バッファ１１４から読み出されてバンド（二次）バッファ１１６にコピーされ、更に、画像Ａ４に対しての２番目のバンドデータが一次バッファ１１４から読み出されてバンド（二次）バッファ１１６にコピーされるというように、１枚目から４枚目までのそれぞれの画像についての２番目のバンドデータがバンド（二次）バッファ１１６にコピーされる。
【００３８】
このように、４枚の画像Ａ１〜Ａ４のそれぞれ２番目のバンドデータがコピーされたバンド（二次）バッファ１１６のデータは、印刷処理部１３に送られて印刷処理される。以上の処理により、４枚の画像Ａ１〜Ａ４が図８の用紙１の最上段に示すように印刷処理されることになる。
【００３９】
図４を用いて、更に詳しく説明する。図４は、以上説明した処理において、一次バッファ１１４に保持された画像Ａ１からＡ４のそれぞれの画像データをバンド（二次）バッファ１１６にコピーする処理を説明する図であり、同図（ａ）のＤ１〜Ｄ４は一次バッファ１１４に保持された画像Ａ１〜Ａ４に対する縮小画像データを示すもので、それぞれの縮小画像データＤ１〜Ｄ４は、前述したように、それぞれ３２０画素×２４０画素×３（ＲＧＢ）＝２２５Ｋバイトのデータ量となっている。従って、このデータ量を有する画像データが４枚分保持されても、合計のデータ量は１メガバイト未満であり、一次バッファ１１４やバンド（二次）バッファ１１６として用いられるＲＡＭの容量（数メガバイト）に対して十分小さいデータ量であり、仮に、この４枚分の縮小画像データＤ１〜Ｄ４の他に、バンド（二次）バッファ１１６に１つのバンドデータを保持したとしても容量には十分余裕がある。
【００４０】
このような縮小画像データＤ１〜Ｄ４を、例えば、４つのバンド（これを１番目のバンドＢ１〜４番目のバンドＢ４という）に分割し、それぞれのバンドごとにバンド（二次）バッファ１１６にコピーする。
【００４１】
この手順は、図３のフローチャートで説明したように、まず、画像Ａ１についてその縮小（回転も含む）画像を生成し、その縮小画像データＤ１を一次バッファ１１４に格納し、その縮小画像データＤ１から１番目のバンドに相当する縮小画像データＤ１１をバンド（二次）バッファ１１６にコピーする。続いて、画像Ａ２についてその縮小（回転も含む）画像を生成し、その縮小画像データＤ２を一次バッファ１１４に格納し、その縮小画像データＤ２から１番目のバンドに相当する縮小画像データＤ２１をバンド（二次）バッファ１１６にコピーする。
【００４２】
このような処理を他の２枚分の画像Ａ３とＡ４についても順次同様に行う。これにより、バンド（二次）バッファ１１６には、図４（ｂ）に示すように、１番目のバンドＢ１に相当する画像データＤ１１、Ｄ２１、Ｄ３１、Ｄ４１がコピーされ、１番目のバンドＢ１のバンドデータが生成される。
【００４３】
そして、次の（２番目の）バンド処理を行う際は、始めに、処理対象となる画像が一次バッファ１１４に存在するか否かを見て（図３のステップＳ１１）、その結果に応じた処理を行う。この場合、まず、最初の処理対象画像Ａ１は、すでに一次バッファ１１４に存在するので、ステップＳ１２からＳ１６までの処理は行わずに、直接、ステップＳ１７の処理、つまり、一次バッファ１１４に保持されている画像データＤ１のうち、２番目のバンドに相当する画像データＤ１２をバンド（二次）バッファ１１６にコピーする。そして、次に処理対象画像となる２枚目の画像Ａ２も、すでに一次バッファ１１４に存在するので、同様に、直接、ステップＳ１７の処理、つまり、一次バッファ１１４に保持されている画像データＤ２のうち、２番目のバンドに相当する画像データＤ２２をバンド（二次）バッファ１１６にコピーする。続いて、画像Ａ３、Ａ４も、すでに一次バッファ１１４に存在するので、同様に、直接、ステップＳ１７の処理を行う。
【００４４】
これにより、バンド（二次）バッファ１１６には、図４（ｃ）に示すような２番目のバンド分の画像データがコピーされることになる。このような処理をバンドＢ３、Ｂ４についても行うことで、図４（ｄ）、（ｅ）のようなバンドデータが得られる。
【００４５】
そして、１段目の画像Ａ１〜Ａ４の印刷処理が終了すると、今度は、２段目の印刷処理に入るが、この場合、図３のフローチャートにおいて、ステップＳ１１を行うと、処理すべき画像（画像Ａ５〜Ａ８とする）に対するそれぞれの画像データは、まだ一次バッファ１１４に保持されていないので、再び、ステップＳ１２から順次処理を行う。
【００４６】
このようにして、処理対象画像について全てのバンド処理が終了するまで行うことにより、２段目、３段目、・・・というように印刷処理がなされ、最終的に前述した図８のようなインデクス印刷の印刷結果が得られる。
【００４７】
本実施形態は、このように、処理対象のそれぞれの画像について、一旦、縮小（回転を含む）画像を作成して、それを一次バッファ１１４に保持し、その一次バッファ１１４に保持された画像データから、それぞれのバンドに相当するバンドデータを読み出して、それをバンド（二次）バッファ１１６にコピーするようにしている。従って、バンドデータを生成する際に、各バンドごとに始めから、１画像ごとにメモリカード１０内の原画像ファイルデータにアクセスし、伸長処理、回転処理、縮小処理を、その都度繰り返して行う必要がなくなる。
【００４８】
このように、本実施形態では、始めにそれぞれの画像（本実施形態では４枚分の画像）について、伸長処理、回転処理、縮小処理を行って、その縮小処理された画像データをＲＡＭ（一次バッファ１１４）に格納しておき、２番目以降のバンドデータを作るときは、その都度、メモリカード１０内の原画像ファイルデータにアクセスし、伸長処理、回転処理、縮小処理という面倒な処理手順を経ることなく、一次バッファ１１４に保持されている縮小画像を読み出してバンドデータを生成・作成すれば足りる。
【００４９】
以上のように、インデクス印刷等の主走査方向に複数の画像を含む場合でも、処理を大幅に簡略化することができ、処理速度の短縮が図れる。よって、インデクス印刷等の場合でも、印刷のスループットを大幅に短縮可能である。特に、本実施形態のように、回転処理を伴う印刷であるときは、バンドデータを生成するたびに回転処理を行う必要がなくなるため、より一層、処理時間の短縮が図れる。
【００５０】
ところで、ディジタルカメラで撮影された画像を９０度回転処理する場合には、図８に示したようなタイトル（上述した「ＩＮＤＥＸ  ＢＡＮＮＥＲ」）にも同様の回転処理が施される。一方、例えば、図５に示すように、画像を回転させずに、元の状態のままでインデクス印刷する場合もある。この場合、用紙２の紙送り方向Ｙを縦方向としたとき、その用紙２を縦方向に置いて見ることで正位置となるように、用紙２の主走査方向Ｘに沿ってタイトルが印刷される。
【００５１】
これに対して、図８に示したように、元の画像を９０度回転させて印刷する場合は、タイトルも９０度回転させ、用紙１の紙送り方向Ｙを縦方向としたとき、その用紙１を横方向に置いて見ることで正位置となるように、用紙１の紙送り方向Ｙに沿ってタイトルが印刷される。
【００５２】
このように、画像を回転処理する場合は、それに合わせて、タイトルも回転させた状態で印刷する必要が生じる。本実施形態では、前述したように、タイトル選択部１２０を有し、このタイトル選択部１２０では、処理を効率化するために、回転処理前のタイトルと、そのタイトルを９０度回転させた状態のタイトルの両方を用意しておき、元の画像の印刷に関する回転処理の有無に応じて、回転処理前のタイトルと９０度回転させた状態のタイトルのいずれかを選択し、印刷処理部１３に送る。即ち、タイトル選択部１２０は、回転処理部１１２ｃによって回転処理がなされたか否かを示す情報を受け取って、それに応じたタイトルを選択し、その結果を印刷処理部１３に送る。
【００５３】
このように、２通りのタイトルを用意しておけば、回転処理する場合としない場合とで、それに対応したタイトルを選択すればよいので、画像を回転処理する場合でも、タイトルまで回転させる処理を行う必要がなくなり、処理が簡略化される。
【００５４】
更に、本実施形態では、画像補正部１１２ｅは、画像データに対して画像補正処理を施す場合、前述したように、リサイズ処理後の画像がどのような大きさの画像となったかによって、リサイズ処理後の画像又はリサイズ処理前の画像のいずれかを用いて画像補正処理を行う。つまり、画像補正処理の処理量を少なくするために、小さい方の画像、即ち、画素数の少ない方の画像を用いて行う。従って、元の画像を拡大処理して印刷する場合は、元の画像を用いて画像補正を施し、反対に元の画像を縮小処理して印刷する場合は、縮小後の画像に対して画像補正を施す。具体的には、画像補正部１１２ｅは、リサイズ処理部１１２ｄによるリサイズ処理情報を受け取って、拡大処理の場合は、リサイズ処理前の画像データを用いて画像補正処理を行い、縮小処理の場合は、リサイズ処理部１１２ｄによるリサイズ処理後の画像データを用いて画像補正処理を行う。このように、画素数の少ない画像を用いて画像補正を施すことにより、画像補正の場合のデータ処理量を少なくすることができる。
【００５５】
次に、本発明の第２の実施形態に係るプリンタについて、図６及び図７を参照しつつ述べる。上述したように、限られたメモリ容量の中では、メモリカード１０内に格納された原画像ファイルデータの内容や、非常に多くの枚数のインデクス印刷等、印刷の仕方によっては、画像データ処理部１１２が生成する画像データをすべて一次バッファ１１４に記憶することができない場合も考えられる。
【００５６】
即ち、かかるプリンタが、例えば、全部で８メガバイトのＲＡＭを備えていても、例えば、ＲＧＢフルカラーデータをＣＭＹＫ２値データに変換する等の処理（かかる処理を行う機能ブロックは図示しない）も行う必要があるので、ワークメモリのことも考慮すれば、バッファリングに割り当てられる部分のＲＡＭの容量は、１〜２メガバイトに限られることが多い。
【００５７】
そこで、本発明の第２の実施形態では、各部分的イメージにつき、それぞれ画像データ処理部１１２によりビットイメージ形式の画像データを生成した場合の総データ容量を求め、その総データ容量が一次バッファ１１４の容量を超えない場合にのみ、生成した画像データを一次バッファ１１４に格納し、必要に応じて一次バッファ１１４から該画像データの関連する部分を読み出して利用するようにした。
【００５８】
本実施形態のプリンタの基本構成は、上述した第１の実施形態のものと略同様であり、同様の部分には同様の参照符号を付して、その詳しい説明は省略する。即ち、本発明の第２の実施形態のプリンタは、図６に示すように、フォト画像処理部６１と、印刷処理部１３とから成る。印刷処理部１３は、上述した第１の実施形態のものと全く同様である。
【００５９】
フォト画像処理部６１は、第１の実施形態のフォト画像処理部１１と略同様に、例えば、メモリカード１０から読み込んだ原画像ファイルデータに対しパソコンと同様の画像データ処理を行う部分であり、画像データ処理部１１２と、一次バッファ１１４と、バンド（二次）バッファ１１６と、画像データ制御部１１８´と、インデクス選択部１２０とを有するが、本実施形態では、更に、総容量演算部６１５と、判断部６１７とを有している。
【００６０】
総容量演算部６１５は、例えば、インデクス印刷の場合、１回の主走査で印刷する複数の画像のそれぞれ一部について、画像データ処理部１１２によりビットイメージ形式の画像データを生成した場合の総データ容量を求め、また、判断部６１７は、総容量演算部６１５が算出した総データ容量が一次バッファ１１４の容量を超えるかどうかを判断するものである。また、本実施形態では、後述するように、画像データ制御部１１８´は、判断部６１７により総データ容量が一次バッファ１１４の容量を超えないと判断された場合は、画像データ処理部１１２が生成した画像データを一次バッファ１１４に格納し、必要に応じて一次バッファ１１４から該画像データの関連する部分を読み出して利用するが、判断部６１７により総データ容量が一次バッファ１１４の容量を超えると判断された場合は、画像データ処理部１１２が生成した画像データを一次バッファ１１４に格納することなく、必要に応じてメモリカード１０内の原画像ファイルデータからその都度画像データを生成し、関連する部分を読み出して利用するよう制御を行う。
【００６１】
尚、画像データ処理部１１２内の画像データ読み込み部１１２ａ、伸長処理部１１２ｂ、回転処理を行う回転処理部１１２ｃ、リサイズ処理部１１２ｄ、画像補正部１１２ｅは、上述した第１の実施形態のものと全く同様である。
【００６２】
一次バッファ１１４は、第１の実施形態と同様に、ＲＡＭ等から構成され、所定の、数メガバイトの記憶容量を持つが、本実施形態では、最大２メガバイトに限られるものとする。
【００６３】
さて、以上の構成を有する本実施形態のプリンタは、上述したところからも明らかなように、一次バッファ１１４の、数メガバイトという限られた記憶容量の中で、例えば、メモリカード１０内に格納された原画像ファイルデータの内容や、Ａ４用紙に８０枚のインデクス印刷を行う等、印刷の仕方によっては、画像データ処理部１１２が生成する画像データをすべて一次バッファ１１４に記憶することができない場合も考えられるので、１回の主走査で印刷する複数画像の各部分的イメージにつき、それぞれ画像データ処理部１１２によりビットイメージ形式の画像データを生成した場合の総データ容量を総容量演算部６１５により算出し、判断部６１７によりその総データ容量が一次バッファ１１４の容量を超えると判断された場合には、その都度メモリカード１０内の原画像ファイルデータにアクセスし、伸長・回転・リサイズ等の処理をしていく。
【００６４】
ここで、以上に述べた本実施形態のプリンタの特徴的な動作について説明しておく。
【００６５】
第１の実施形態でも説明したように、伸長処理によって、圧縮されていた画像データは元の画像に伸長されるが、元の画像データ量が、例えば、１２８０（画素）×９６０（画素）×３（カラー画像であるのでＲＧＢの３要素）＝約３．５Ｍバイトであるとすれば、伸長後の画像データ量もこれと同じデータ量となる。そして、この画像データを縮小（この揚合、縦横をそれぞれ１／４に縮小）することにより、縮小後の画像データ量は、３２０（画素）×２４０（画素）×３（ＲＧＢの３要素）＝約２２５Ｋバイトとなる。図４を用いて詳しく説明したように、図４（ａ）のＤ１〜Ｄ４は一次バッファ１１４に保持された画像Ａ１〜Ａ４に対する縮小画像データを示すもので、それぞれの縮小画像データＤ１〜Ｄ４は、前述したように、それぞれ３２０画素×２４０画素×３（ＲＧＢ）＝２２５Ｋバイトのデータ量となっていた。従って、このデータ量を有する画像データが４枚分保持されても、総データ容量は１メガバイト未満であり、一次バッファ１１４の容量（２メガバイト）を超えない。しかし、仮に、同様に縮小後の画像データ量が約２２５Ｋバイトとなる縮小画像データｘ１〜ｘ１０（図示せず）を一次バッファ１１４に保持するものとすれば、この場合の総データ容量は２．２５メガバイトとなり、一次バッファ１１４の容量（２メガバイト）を超えてしまう。従って、そのインデクス印刷が、１回の主走査で、同様のデータ量となるような画像を１０枚印刷する場合であれば、この総データ容量（２．２５メガバイト）を総容量演算部６１５により算出し、判断部６１７によりその総データ容量が一次バッファ１１４の容量（２メガバイト）を超えると判断される結果、一次バッファ１１４に格納しないで、メモリカード１０内の原画像ファイルデータ１０枚にその都度アクセスし、伸長・回転・リサイズ等の処理をしていく。
【００６６】
さて、ユーザは、まず、図２に示したカード挿入部２１にメモリカード１０を挿入すると共に、操作パネル部２３によって、印刷を行うための種々の指示設定を行う。ここで、上述した主走査方向に画像を１０枚印刷するようなインデクス印刷の設定もしたものとする。
【００６７】
これ以降の動作を、図７のフローチャートによって説明する。
【００６８】
まず、画像データ制御部１１８は、メモリカード１０内の複数の原画像ファイルデータから、処理対象となる１枚の画像（画像Ｘ１とする）についてその原画像ファイルデータを読み込む（ステップＳ７１）。尚、メモリカード１０に格納されている原画像ファイルデータはＪＰＥＧ等による圧縮されたファイルデータであるので、それを伸張処理し（ステップＳ７２）、次に画像を９０度回転させるための回転処理を行い（ステップＳ７３）、更に、画像のリサイズ処理としてこの場合縮小処理を施す（ステップＳ７４）。そして、総容量演算部６１５は、ステップＳ７４にて縮小処理された縮小画像データｘ１のデータ量（約２２５Ｋバイト）を算出し、一方、操作パネル部２３を介した指示設定によるインデクス印刷の仕方から主走査方向における画像の枚数（１０枚）が分かるので、このｘ１のデータ量（約２２５Ｋバイト）×１０（枚）の演算を行うことによって、形式的に、総データ容量（２．２５メガバイト）を算出する（ステップＳ７５）。この総データ容量（２．２５メガバイト）は、判断部６１７に入力され、判断部６１７では、総データ容量（２．２５メガバイト）と一次バッファ１１４の容量（２メガバイト）の大小を比較し、総データ容量が一次バッファ１１４の容量を越えるか否かを判断する（ステップＳ７６）。判断部６１７は、越える場合（ステップＳ７６でＹｅｓ）と越えない場合（ステップＳ７６でＮｏ）とで、それぞれ異なる所定の信号を画像データ制御部１１８に伝達する。総データ容量が一次バッファ１１４の容量を越える場合（ステップＳ７６でＹｅｓ）には、画像データ制御部１１８は、上記縮小処理された縮小画像データｘ１から１つのバンド（１番目のバンドとする）分の画像データを得て、そのバンドデータをバンド（二次）バッファ１１６にコピーする（ステップＳ７７）。次に、１つのバンド（この場合、１番目のバンド）を生成するために必要なすベての画像について処理が終了したか否かを判断し（ステップＳ７８）、終了していなければ（ステップＳ７８でＮｏ）、処理対象となる２枚目の画像（画像Ｘ２とする）についてその画像データを読み込み（ステップＳ７９）、以後、画像Ｘ１の場合と同様に、伸張（ステップＳ８０）、回転（ステップＳ８１）、縮小（ステップＳ８２）処理を施した後、そのバンドデータをバンド（二次）バッファ１１６にコピーする（ステップＳ７７）。このようにして、１つのバンド分（この場合、１番目のバンド分）のバンドデータを生成するに必要なすべての画像Ｘ１〜Ｘ１０について、画像データの読み込み（ステップＳ７９）、伸張（ステップＳ８０）、回転（ステップＳ８１）、縮小（ステップＳ８２）の処理とバンド（二次）バッファ１１６へのコピー（ステップＳ７７）を繰り返す。かかる処理が１つのバンド（１番目のバンドとする）について主走査方向のすべての画像Ｘ１〜Ｘ１０について終わったら（ステップＳ７８でＹｅｓ）、そのバンドデータを印刷処理部１３に送る（ステップＳ８３）。そして、全てのバンドについて処理が終了したか否かを判断し（ステップＳ８４）、終了していなければ（ステップＳ８４でＮｏ）、今度は、次の１つのバンド（この場合、２番目のバンド）を生成するために必要���すベての画像Ｘ１〜Ｘ１０について、処理対象となる画像（画像Ｘ１〜Ｘ１０）の原画像ファイルデータを読み込み（ステップＳ７９）、伸張（ステップＳ８０）、回転（ステップＳ８１）、縮小（ステップＳ８２）処理を施した後、そのバンドデータをバンド（二次）バッファ１１６にコピーする（ステップＳ７７）。同様の処理を、すべてのバンドについて行う。
【００６９】
以上と反対に、総データ容量が一次バッファ１１４の容量を越えない場合（ステップＳ７６でＮｏ）には、画像データ制御部１１８は、一次バッファ１１４を活用することとなる。換言すれば、以上のように、バンドごとに、その都度メモリカード１０内の原画像ファイルデータにアクセスしてその原画像ファイルデータを読み込むことはしない。この場合、第１の実施形態に関し図３で述べたのと同様の処理となるので、そのフローについての説明は省略する。
【００７０】
この第２の実施形態では、限られたメモリ容量を最大限有効に活用して、効率的な処理が行えるので、メモリ等のコストアップをせずに、処理の効率化、印刷のスループットの改善を図ることができる。
【００７１】
以上、本発明を第１及び第２の実施形態に関して述べたが、本発明は、これらに限られるものではなく、特許請求の範囲に記載した範囲内で、他の様々な実施形態についても適用可能である。
【００７２】
例えば、第１及び第２の実施形態では、回転処理を伴う例について説明したが、回転処理を行わない場合にも適用できることは勿論である。
【００７３】
また、第１及び第２の実施形態では、インデクス印刷を行う場合について説明したが、インデクス印刷でなくても、例えば、１枚の画像について処理を行う場合でも、２番目以降のバンドデータを得る場合に、一次バッファに保持された画像データを用いて２番目以降のバンドデータを作ることができるので、従来のように、バンドごとに、その都度、原画像ファイルデータにアクセスした上で、伸張、回転、縮小といった処理を行う必要がなくなり、処理の効率化が図れる。
【００７４】
また、以上説明した本発明の処理を行う処理プログラムは、フロッピーディスク、光ディスク、ハードディスクなどの記録媒体に記録させておくことができる。更に、ネットワークから処理プログラムを得るようにしてもよい。
【００７５】
尚、第２の実施形態では、一次バッファの記憶容量を最大２メガバイトとしたが、これに限られないのは勿論である。また、ｘ１のデータ量（約２２５Ｋバイト）×１０（枚）の演算を行うことによって、形式的に総データ容量（２．２５メガバイト）を算出したが、他の方法により総データ容量を求めても良い。
【００７６】
【発明の効果】
以上説明したように、本発明によれば、ディジタルカメラなどで撮影して得られた画像を、ホスト上のアプリケーションソフトを用いることなく、プリンタで直接、印刷できる上に、例えば主走査方向に複数枚並べて印刷するような場合でも、効率よい画像データの処理が可能となり、印刷のスループットも向上する。
【００７７】
従って、メモリ等の容量をいたずらに増やすこと無しに、多数枚のインデクス印刷等も可能となるので、使い勝手の良いプリンタをより安価に提供し得る。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るプリンタの概略構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るプリンタの外観構成を示す図である。
【図３】本発明の第１の実施形態に係るプリンタの動作を説明するためのフローチャートである。
【図４】図３のフローチャートで示した処理手順において、一次バッファに保持された縮小後の画像データからバンドデータを読み出してバンド（二次）バッファにコピーする処理を説明するための図である。
【図５】用紙を縦向きに置いた時に正位置となる、回転処理のないインデクス印刷を示す図である。
【図６】本発明の第２の実施形態に係るプリンタの概略構成を示すブロック図である。
【図７】本発明の第２の実施形態に係るプリンタの動作を説明するためのフローチャートである。
【図８】用紙を横向きに置いた時に正位置となる、回転処理を伴うインデクス印刷を示す図である。
【図９】従来のパソコン上のアプリケーションを用いて図８に示したインデクス印刷を行う場合の処理手順を示すフローチャートである。
【符号の説明】
１０      メモリカード
１１      フォト画像処理部
１３      印刷処理部
１１２    画像データ処理部
１１４    一次バッファ
１１６    バンド（二次）バッファ
１１８    画像データ制御部
１１２ａ  画像データ読み込み部
１１２ｂ  伸長処理部
１１２ｃ  回転処理部
１１２ｄ  リサイズ処理部
１１２ｅ  画像補正部
２１      カード挿入部
２３      操作パネル部
２５      用紙の給紙部
２７      用紙の排出部
６１      フォト画像処理部
１１８´  画像データ制御部
１２０  タイトル選択部
６１５  総容量演算部
６１７  判断部
【図１】
0003861964.tif 000002
【図２】
0003861964.tif 000003
【図３】
0003861964.tif 000004
【図４】
0003861964.tif 000005
【図５】
0003861964.tif 000006
【図６】
0003861964.tif 000007
【図７】
0003861964.tif 000008
【図８】
0003861964.tif 000009
【図９】
0003861964.tif 000010