JP2006272723A - 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 - Google Patents
画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 Download PDFInfo
- Publication number
- JP2006272723A JP2006272723A JP2005094792A JP2005094792A JP2006272723A JP 2006272723 A JP2006272723 A JP 2006272723A JP 2005094792 A JP2005094792 A JP 2005094792A JP 2005094792 A JP2005094792 A JP 2005094792A JP 2006272723 A JP2006272723 A JP 2006272723A
- Authority
- JP
- Japan
- Prior art keywords
- image
- image data
- data
- buffer
- image buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Storing Facsimile Image Data (AREA)
Abstract
【課題】 複数の画像バッファに記憶されている画像データを速やかに提供すること。
【解決手段】 画像データキャッシュ装置の画像バッファメモリ43は、複数の画像バッファ61を有し、印刷対象の画像データのうちの一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に対応付けられた画像バッファ61に記憶する。選択手段44は、画像データの要求において指定された画像データのオフセット位置に対応付けられた1つの画像バッファ61を、複数の画像バッファ61の中から選択する。供給手段44は、選択された画像バッファ61から、要求に係る画像データを読み込んで画像データの要求元40へ供給する。
【選択図】 図1
【解決手段】 画像データキャッシュ装置の画像バッファメモリ43は、複数の画像バッファ61を有し、印刷対象の画像データのうちの一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に対応付けられた画像バッファ61に記憶する。選択手段44は、画像データの要求において指定された画像データのオフセット位置に対応付けられた1つの画像バッファ61を、複数の画像バッファ61の中から選択する。供給手段44は、選択された画像バッファ61から、要求に係る画像データを読み込んで画像データの要求元40へ供給する。
【選択図】 図1
Description
本発明は、画像データキャッシュ装置、印刷装置および画像データキャッシュ方法に関する。
特許文献1および特許文献2には、印刷システムが開示されている。これらの従来の印刷システムでは、デジタルカメラとプリンタとが、USB(Universal Serial Bus)ケーブルで接続される。そして、この従来の印刷システムでは、カメラは、そのボタンへの操作に応じてプリンタに対する印刷要求を生成し、プリンタは、この要求に基づいて印刷処理に必要となる画像データをカメラから読み込み、その画像データに基づいて画像を印刷する。
これらの従来の印刷システムにおいて、プリンタは、印刷対象の画像の画像データをカメラから読み込み、印刷をする。この画像データの読み込みには、USBケーブルが使用される。このような機器間のデータ通信の速度は、一般的に、同一機器内でのデータ授受の速度より遅い。
そこで、たとえばプリンタに画像バッファの配列を設け、画像データをその画像バッファに適宜記憶し、その後には、この画像バッファから、印刷のために必要な画像のデータを供給することで、画像データが必要になってからその画像データを取得するまでの時間を短縮し、その結果として、印刷時間を短縮することが考えられる。
しかしながら、このような複数の画像バッファを設けたことによる印刷時間の短縮の効果を十分に得ることができない場合がある。たとえば、印刷のために画像データが必要となったとき、プリンタは、画像バッファの配列の先頭から順番にその画像データが記憶されているか否かを判断する。この場合において、その画像データが最後の画像バッファに記憶されているとき、プリンタは、複数の画像バッファを先頭から最後まで調べなければ、そのデータが画像バッファに記憶されていると判断することができない。その結果、画像バッファ内に画像データがあるにも拘らず、画像データが必要になってからその画像データを得るまでに時間がかかり、印刷時間が効果的に短縮されなくなってしまう。
本発明は、複数の画像バッファに記憶されている画像データを速やかに提供することができる画像データキャッシュ装置、印刷装置および画像データ代理取得方法を得ることを目的とする。
本発明に係る画像データキャッシュ装置は、複数の画像バッファを有し、印刷対象の画像データのうちの一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に対応付けられた画像バッファに記憶する画像バッファメモリと、画像データの要求において指定された画像データのオフセット位置に対応付けられた1つの画像バッファを、複数の画像バッファの中から選択する選択手段と、選択手段により選択された画像バッファから、要求に係る画像データを読み込んで画像データの要求元へ供給する供給手段と、を有するものである。
この構成を採用すれば、複数の画像バッファについて1つずつ順番に、要求に係る画像データを格納しているか否かを検索することなく、複数の画像バッファから、要求に係る画像データを速やかに読み込んで提供することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の構成に加えて、複数の画像バッファについて、各画像バッファに画像データが記憶されているか否かを示す有無情報を記憶する有無記憶手段を有し、供給手段が、選択手段により選択された画像バッファについての有無情報が有りである場合、その画像バッファから画像データを読み込んで供給するものである。
この構成を採用すれば、画像データの要求において選択した画像バッファに、画像データが記憶されている場合に、その画像データを読み込んで供給することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、選択手段により選択された画像バッファに、画像データが格納されていない場合に画像データを取得し、選択手段により選択された画像バッファに保存する取得手段を有するものである。
この構成を採用すれば、印刷する画像データが、その要求前に予め取得されていなくとも、その画像データを取得して供給することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、画像バッファメモリは、配列された複数の画像バッファを有し、取得手段が、要求された画像データのオフセット位置を画像バッファのサイズで除算し、演算結果の整数部で指定される画像バッファに、画像データを保存し、選択手段が、要求された画像データのオフセット位置を画像バッファのサイズで除算し、演算結果の整数部で指定される画像バッファを選択するものである。
この構成を採用すれば、取得手段は、複数の画像バッファに対して、画像データを重複させることなく、且つ、印刷対象の画像データ内でのそれぞれの画像データのオフセット位置に対応付けて保存することができる。また、供給手段は、選択手段による要求に係るオフセット位置を用いた演算により選択された画像バッファから、その要求に係る画像データを読み込んで供給することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、画像バッファメモリが、印刷対象の画像データのサイズが画像バッファメモリのサイズ以下である場合、印刷対象の画像データのうちの取得した一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に一対一で対応付けられた画像バッファに記憶し、印刷対象の画像データのサイズが画像バッファメモリのサイズより大きい場合、印刷対象の画像データのうちの取得した一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に複数対一で対応付けられた画像バッファに記憶するものである。
この構成を採用すれば、印刷する画像データのデータ量が複数の画像バッファの記憶容量以下である場合には、取得した画像データは、印刷対象の画像データ内でのその画像データのオフセット位置に一対一で対応付けられた画像バッファに記憶され、その対応関係に基づいて、要求に係る画像データを速やかに読み込んで提供することができる。しかも、印刷する画像データのデータ量が複数の画像バッファの記憶容量より多い場合であっても、取得した画像データを複数対一で対応する画像バッファに記憶し、その画像バッファから、要求に係る画像データを提供することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、印刷対象の画像データのサイズが画像バッファメモリのサイズより大きい場合、1つの画像バッファに対応付けられた複数の一部の画像データのうちのいずれの一部の画像データであるかを示す判別情報を格納する判別情報記憶手段を有し、供給手段が、選択手段により選択された画像バッファについての判別情報に基づいて、その画像バッファに保存されている画像データが、要求された画像データを有するか否かを判断し、その画像バッファに保存されている画像データが、要求された画像データを有する場合には、その画像バッファから画像データを読み込んで要求元へ供給するものである。
この構成を採用すれば、複数対一で対応する画像バッファに、要求に係る画像データが保存されている場合には、その画像バッファから画像データを読み込んで要求元へ供給することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、取得手段が、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータから、印刷に使用する画像データを取得するものである。
この構成を採用すれば、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータに保存されている画像データの画像を効率よく印刷することができる。
本発明に係る印刷装置は、要求された画像データをその要求元へ供給する上述した発明の各構成に係る画像データキャッシュ装置と、画像データキャッシュ装置に対して印刷する画像の画像データを要求し、それに応じて供給された画像データを用いて印刷制御データを生成する画像処理手段と、印刷制御データに基づく印刷を実行する印刷手段と、を有するものである。
この構成を採用すれば、複数の画像バッファから、取得要求に係る画像データを速やかに読み込んで、効率よく印刷することができる。
本発明に係る画像データ代理取得方法は、画像データの要求において指定される画像データのオフセット位置に対応付けられた画像バッファを、画像バッファメモリの複数の画像バッファから選択するステップと、選択された画像バッファから、要求に係る画像データを読み込んで画像データの要求元へ供給するステップと、を有するものである。
この方法を採用すれば、複数の画像バッファについて1つずつ順番に、要求に係る画像データを格納しているか否かを検索することなく、複数の画像バッファから、要求に係る画像データを速やかに読み込んで提供することができる。
以下、本発明の実施の形態に係る画像データキャッシュ装置、印刷装置および画像データ代理取得方法を、図面に基づいて説明する。印刷装置は、デジタルスチルカメラ(DSC:Digital Still Camera)から、印刷に使用する画像データを取得するプリンタを例として説明する。画像データキャッシュ装置は、プリンタの一部として説明する。画像データ代理取得方法は、プリンタの動作の一部として説明する。
図1は、本発明の実施の形態に係る印刷装置としてのプリンタ1と、プリンタ1に接続される画像データの取得先としてのDSC2を示す図である。DSC2とプリンタ1とは、USBケーブル3にて接続される。このようにDSC2とプリンタ1とを直接に接続するシステムは、ダイレクト印刷システムの一種である。なお、DSC2とプリンタ1とは、USBケーブル3以外のたとえばプリンタ専用ケーブルなどの他のケーブルや、無線通信回線などにより接続されてもよい。
図2は、DSC2が撮像モードで動作している場合の構成を示すブロック図である。DSC2は、撮像データを出力するCCD(Charge Coupled Device)カメラ51と、画像などを表示する液晶モニタ11と、図示外の撮像ボタンや選択ボタンなどを有する入力デバイス12と、画像データ生成部52と、保存処理部53と、半導体メモリ13と、を有する。半導体メモリ13は、たとえばフラッシュメモリなどのカード形状に形成されたものであり、DSC2の図示外の筐体と着脱可能である。
画像データ生成部52は、入力デバイス12の撮像ボタンが操作されたときのCCDカメラ51から出力される撮像データを用いて、EXIF画像データを生成する。
図3は、画像データ生成部52によるEXIF画像データの生成処理を説明するための説明図である。図3(A)は、CCDカメラ51から出力される撮像データによる画像である。撮像データによる画像は、横長の画像であり、一軒の家が撮像されている。
画像データ生成部52は、図3(A)に示す画像の撮像データを、図中の点線で区切られたブロック単位で符号化し、図3(B)に示すように、その符号化したデータをエンコード順に並べた中間データを生成する。1つのブロックは、図3(A)に示すように、8×8ピクセルである。図3の画像では、画像データ生成部52は、撮像データによる画像を縦6行、横10列の60個のブロックに分けて、そのブロック毎に符号化している。
ブロック単位で符号化した後、画像データ生成部52は、その符号化後の中間データを、所定の圧縮率で圧縮する。具体的には、画像データ生成部52は、圧縮前の図3(B)の中間データにおけるデータ量を基準として、圧縮後の総データ量が所定の圧縮率のデータ量となるように、画質への影響が少ない成分のデータを間引いたりして、中間データを圧縮する。
中間データを圧縮した後、画像データ生成部52は、図3(C)に示すように、その圧縮された画像データを含むEXIF画像データを生成する。EXIF画像データは、ヘッダデータと、圧縮された中間データによる画像データと、EOF(End Of File)データと、を有する。ヘッダデータには、たとえば、画像データのサイズ(図3(A)の画像の縦方向のピクセル数および横方向のピクセル数)などの情報が必要に応じて情報化される。EXIF画像データは、JPEG(Joint Photographic Coding Experts Group)方式で圧縮された画像データを有する。
なお、図3(B)の中間データおよび図3(C)のEXIF画像データにおいて、各四角形のサイズは、それぞれのブロックのデータ量を示している。図3(B)において各ブロックの四角形のサイズが等しいように、中間データにおいては、各ブロックのデータ量は、等しい。これに対して、図3(C)においてブロック3の四角形のサイズとブロック4の四角形のサイズとが異なるように、JPEG方式で圧縮をすると、各ブロックのデータ量は、ブロック毎に異なる。
図2に戻り、画像データ生成部52は、生成したEXIF画像データを保存処理部53に供給する。保存処理部53は、供給されたEXIF画像データをEXIF画像ファイル21として、半導体メモリ13に保存する。
半導体メモリ13は、EXIF画像ファイル21などのデータを記憶するデータ記憶領域22と、メモリ管理領域23と、を有する。半導体メモリ13は、たとえばFAT(File Allocation Table)16やFAT32などのファイルシステムにより、記憶データを管理する。メモリ管理領域23には、データ記憶領域22に記憶されるファイルのファイル名、ファイルサイズ、データ記憶領域22内の保存位置情報などが保存される。
画像データ生成部52は、データ記憶領域22に、EXIF画像ファイル21を保存する。また、保存処理部53は、メモリ管理領域23に、保存したEXIF画像ファイル21のファイル名、ファイルサイズ、データ記憶領域22内の保存位置情報を保存する。これにより、半導体メモリ13には、DSC2により撮像された画像の画像データを有するEXIF画像ファイル21が保存される。
図1に戻り、ダイレクト印刷時には、DSC2は、液晶モニタ11、入力デバイス12および半導体メモリ13の他に、USB通信I/F(InterFace)14およびUSBマスストレージクラス15を有する通信I/F16と、印刷指示部17と、画像データ送信部18と、を有する。半導体メモリ13には、複数のEXIF画像ファイル21が記憶される。なお、USBマスストレージクラス15、印刷指示部17および画像データ送信部18は、DSC2の図示外のCPU(Central Processing Unit)が、図示外のDSC2の記憶デバイスに記憶されたUSBマスストレージクラスプログラム、印刷指示プログラムおよび画像データ送信プログラムを実行することで、実現される。
USB通信I/F14は、図示外のUSBコネクタを有する。USBコネクタには、USBケーブル3が接続される。USB通信I/F14は、USBコネクタから信号が入力されるとその信号からデータを抽出する。また、USB通信I/F14は、送信するデータに基づいて信号を生成し、この信号をUSBコネクタへ出力する。
USBマスストレージクラス15は、USB通信I/F14を用いて、ホストとデバイスとの間でデータを送受する通信処理部である。USBマスストレージクラス15は、そのサブクラスとして、SCSI(Small Computer System Interface)サブクラスを使用する。
USB通信I/F14とUSBマスストレージクラス15とを有するDSC2の通信I/F16は、印刷指示部17や画像データ送信部18から供給されたデータを、USBケーブル3を介してプリンタ1へ送信する。DSC2の通信I/F16は、USBケーブル3を介してプリンタ1から受信したデータを、印刷指示部17や画像データ送信部18へ供給する。
印刷指示部17は、印刷する画像を選択し、その画像をプリンタ1に印刷させるための印刷指示を生成し、DSC2の通信I/F16へ供給する。
画像データ送信部18は、半導体メモリ13から、送信を要求された画像データを読み込み、DSC2の通信I/F16へ供給する。
プリンタ1は、紙媒体30などに対して印刷するための印刷機構として、媒体30を送る送りローラ31と、送りローラ31などを回転駆動する送りモータ32と、キャリッジ33と、キャリッジ33を送りローラ31の軸方向に沿って往復運動させるキャリッジモータ34と、を有する。キャリッジ33は、イエロー、マゼンタ、シアン、ブラックなどといった所定色数のカートリッジが脱着可能に取り付けられる。キャリッジ33の図示せぬプラテン側の部位には、図示外のインク吐出用ヘッドが形成される。インク吐出用ヘッドには、図示外の多数のインクジェットノズルが開設される。各インクジェットノズルの内側には、図示外のピエゾ素子が配設される。ピエゾ素子は、それに印加される電圧に応じて変形する素子である。ピエゾ素子が電圧により変形することで、その変形量に応じた量のインクがインクジェットノズルから吐出される。
プリンタ1は、この他にも、USB通信I/F36およびUSBマスストレージクラス37を有する通信I/F38と、印刷指示解釈部39と、画像処理手段としての画像処理部40と、画像処理メモリ41と、印刷手段としての制御部42と、画像バッファメモリ43と、選択手段、供給手段および取得手段としての画像バッファ管理部44と、画像データの有無を記憶する有無記憶手段としての画像バッファ管理メモリ45と、を有する。
プリンタ1の通信I/F38は、USBケーブル3を介してDSC2の通信I/F16から受信したデータを、印刷指示解釈部39または画像バッファ管理部44へ供給する。プリンタ1の通信I/F38は、印刷指示解釈部39または画像バッファ管理部44から供給されたデータを、USBケーブル3を介してDSC2の通信I/F16へ送信する。
印刷指示解釈部39は、印刷指示を解釈し、その解釈に基づいて内部指示を生成し、画像処理部40へ供給する。印刷指示解釈部39は、画像バッファ管理部44に、印刷開始を指示する。
画像処理部40は、内部指示に基づいて、印刷する画像の画像データを取得し、取得した画像データを用いて印刷制御データを生成する。画像処理部40は、その処理中に発生するたとえば画像処理用のパラメータなどを画像処理メモリ41に一時的に保存し、印刷制御データの生成の際に利用する。画像処理部40は、生成した印刷制御データを制御部42へ供給する。
制御部42は、印刷制御データに基づいて、送りモータ32およびキャリッジモータ34へ制御信号を出力し、キャリッジ33の複数のピエゾ素子に電圧を印加する。これにより、制御部42は、印刷制御データに基づいて、印刷を実行する。
図4は、画像バッファメモリ43および画像バッファ管理メモリ45のメモリ構造を示す図である。
画像バッファメモリ43は、たとえば数〜数十メガバイト程度の記憶容量を有するメモリであり、所定の記憶容量の画像バッファ61をn本(nは、1以上の整数)有する。各画像バッファ61の記憶容量は、たとえば数〜数十キロバイト程度であり、DSC2から取得された画像データが格納される。画像バッファ61の記憶容量は、後述するように、画像処理部40が画像バッファ管理部44に要求する1回のデータ量より大きい。たとえば、5メガバイトの画像バッファメモリ43に、3キロバイトの画像バッファ61を設ける場合、画像バッファ61の本数は、約1666(=n)本になる。
以下、複数の画像バッファ61を互いに区別する場合には、図4の一番上に図示する先頭の画像バッファメモリ43から順番に、第一画像バッファ61、第二画像バッファ61、・・・、第n画像バッファ61と記載する。複数の画像バッファ61には、図4の上から順番に、0番から(n−1)番までのインデックス番号が対応付けられる。
画像バッファ管理メモリ45は、数メガバイトの記憶容量を有するメモリであり、画像バッファ61の本数(n本)と同数の管理データ62を有する。以下、複数の管理データ62を互いに区別する場合には、図4の一番上に図示する先頭の画像バッファ管理メモリ45から順番に、第一管理データ62、第二管理データ62、・・・、第n管理データ62と記載する。複数の管理データ62には、図4の上から順番に、0番から(n−1)番までのインデックス番号が対応付けられる。
各管理データ62は、同じインデックス番号が対応付けらける各画像バッファ61と対で利用される。各管理データ62には、画像バッファ管理部44の後述する動作モードに応じたデータが格納される。画像バッファ管理部44の動作モードには、フラグモードとと、オフセットモードとがある。
フラグモードにおいては、各管理データ62には、同じインデックス番号が対応付けられる画像バッファ61に、画像データが格納されているか否かを示す、すなわち画像データの有無を示すフラグ値が格納される。たとえば、画像データが格納されている場合、フラグ値は「1」となり、画像データが格納されていない場合、フラグ値は「0」となる。
画像バッファ管理部44は、複数の画像バッファ61および複数の管理データ62を管理し、要求された画像データを、画像バッファ61から読み出して、画像データの要求元へ供給する。画像バッファ管理部44は、また、複数の画像バッファ61に格納されていない画像データを、DSC2から取得し、要求元に供給するとともに、画像バッファ61に記憶させる。
オフセットモードにおいては、各管理データ62には、同じインデックス番号が対応付けられる画像バッファ61に格納されている画像データのオフセット値と格納時刻データとが格納される。オフセット値は、印刷対象内での画像データの位置情報であって、画像バッファ61に格納されている画像データの先頭データの、印刷対象内での画像データ先頭からの位置を示す情報である。
次に、以上のような構成を有するダイレクト印刷システムの動作を説明する。
DSC2とプリンタ1がUSBケーブル3で接続されると、DSC2のUSBマスストレージクラス15とプリンタ1のUSBマスストレージクラス37とが通信する。これにより、USBマスストレージクラス15,37がデータをバルク転送するために使用するエンドポイントなどを生成し、DSC2とプリンタ1とは互いにデータを送受可能になる。
DSC2の印刷指示部17は、半導体メモリ13に記憶されているEXIF画像ファイル21の中から、印刷する画像のファイルを選択する。具体的には、印刷指示部17は、半導体メモリ13から、EXIF画像ファイル21のファイル名などのデータを読み込み、そのファイル名などを液晶モニタ11に表示させる。印刷指示部17は、ユーザの操作に対応して入力デバイス12が出力する入力データに基づいて、印刷対象のEXIF画像ファイル21を選択する。
印刷する画像のファイルを選択した後、印刷指示部17は、印刷条件を選択する。具体的には、印刷指示部17は、印刷条件の選択画面を液晶モニタ11に表示させる。印刷条件には、たとえばA4、L版などの印刷をする媒体30のサイズや、普通紙、光沢紙などの媒体30の種類、1up、2upなどの1枚の媒体30に印刷する画像のレイアウトなどがある。印刷指示部17は、ユーザの操作に対応して入力デバイス12が出力する入力データに基づいて、印刷条件を選択する。
その後、印刷指示部17は、その画像をその印刷条件で印刷するための印刷指示を生成し、DSC2の通信I/F16に供給する。たとえば、画像を1upにてL版の光沢紙に印刷する場合、この印刷指示には、その印刷する画像のファイル名やファイルサイズ、媒体30としてL版の光沢紙を指定する印刷条件、その媒体30の全面に1つの画像を印刷する印刷条件などか含まれる。なお、印刷指示において、ファイル名に替えて、半導体メモリ13に記憶されるEXIF画像ファイル21毎に、1対1対応にて発行されるファイルID(identification)などを使用してもよい。
DSC2の通信I/F16は、供給された印刷指示を、USBケーブル3を介してプリンタ1の通信I/F38へ送信する。通信I/F38は、受信した印刷指示を印刷指示解釈部39へ供給する。
USBの仕様では、USBケーブル3で接続される複数の機器の中の1つは、USBのホストとして機能し、その他はUSBデバイスとして機能する。DSC2は、USBケーブル3により、USBホストして機能するコンピュータと接続することを前提として製造されているので、一般的にUSBデバイスとして機能する。このようなDSC2と直接に接続されるプリンタ1は、USBホストとして機能する。この場合、DSC2の通信I/F16は、たとえば、プリンタ1の通信I/F38による周期的な印刷指示の取得処理に基づいて、供給された印刷指示を、プリンタ1の通信I/F38へ送信するようにすればよい。
印刷指示解釈部39は、供給された印刷指示を解釈し、その印刷指示にて指定された印刷を実行するための内部指示を生成し、画像処理部40へ供給する。たとえば、印刷指示において、印刷する画像のファイル名と、L版の光沢紙を指定する印刷条件と、その媒体30の全面に1つの画像を印刷する印刷条件とが含まれている場合、印刷指示解釈部39は、そのファイル名の画像データに対して画像補正の一種であるAPF(Auto Photo Fine)処理をした後、L版の光沢紙に高品質にて全面に印刷する内部指示を生成し、画像処理部40へ供給する。
印刷の内部指示が供給されると、画像処理部40は、その内部指示に従って印刷制御データの生成を開始する。画像処理部40は、画像データを、画像バッファ管理部44に要求する。この画像データの要求において、画像処理部40は、たとえば、印刷する画像データのファイル名と、要求する画像データの範囲とを指定する。要求する画像データの範囲は、たとえば、その範囲の先頭データのオフセット値(たとえば先頭からのキロバイト数)と、要求するデータ量とで指定する。データ量は、たとえば512バイトである。
また、印刷指示解釈部39は、画像処理部40へ内部指示を供給するとともに、画像バッファ管理部44へ印刷開始を指示し、印刷する画像ファイルのファイルサイズを印刷する画像データの総データ量として通知する。
なお、印刷指示解釈部39は、供給された印刷指示において、印刷する画像ファイルのファイルサイズが含まれていない場合には、別途、DSC2にそのデータの取得を要求し、その要求に応じて受信したファイルサイズを通知するようにしてもよい。また、印刷指示解釈部39により印刷開始が指示された画像バッファ管理部44が、DSC2から印刷する画像のファイルのサイズを取得するようにしてもよい。
図5は、画像バッファ管理部44の印刷開始時の動作を示すフローチャートである。図6は、画像バッファ管理部44のフラグモードでの動作を示すフローチャートである。図7は、画像バッファ管理部44のオフセットモードでの動作を示すフローチャートである。
画像バッファ管理部44は、印刷開始が指示される(ステップST1)と、印刷する画像データの総データ量と、複数の画像バッファ61の既知の総記憶容量とを比較する(ステップST2)。ここでは、印刷する画像データの総データ量として、画像ファイルのファイルサイズを使用する。なお、印刷する画像データの総データ量には、画像ファイル内の画像データのデータ量を使用してもよい。
印刷する画像データの総データ量が複数の画像バッファの既知の総記憶容量以下である場合、画像バッファ管理部44は、図6に示すように、フラグモードによる動作を開始する(ステップST3)。
フラグモードでは、複数の画像バッファ61には、画像データが、その総データ量を画像バッファ61の1本の記憶容量で分割した単位で、画像バッファの番号順に格納される。たとえば、画像バッファ61の1本の記憶容量が2キロバイトである場合、第一の画像バッファ61には、画像データの先頭から、2キロバイト目までの画像データが格納され、第二の画像バッファ61には、画像データの2キロバイト目の次のデータから、4キロバイト目の1つ前までの画像データが格納される。また、対応する管理データ62には、画像データが格納されているか否かを示すフラグ値が格納される。
図6に示すフラグモードにおいて、画像バッファ管理部44は、まず、画像バッファ管理メモリ45の複数の管理データ62を、フラグ配列として初期化する。各管理データ62には、初期値として、画像データ無しを意味する値「0」が書き込まれる(ステップST11)。その後、画像バッファ管理部44は、画像データの要求待ち状態になる(ステップST12)。
上述したように画像処理部40が、印刷する画像データのファイル名と要求する画像データの範囲とを指定して画像データを要求すると、画像バッファ管理部44は、まず、その要求された範囲の先頭データのオフセット値を、画像バッファ61の1本の記憶容量で除算する(ステップST13)。そして、画像バッファ管理部44は、その商から1を減算した値のインデックス番号の画像バッファ61を特定する(ステップST14)。
インデックス番号により画像バッファ61を特定した後、画像バッファ管理部44は、そのインデックス番号に対応する管理データ62のフラグ値を読み込み、そのフラグ値が、画像データ有りに対応する値「1」であるか否かを判断する(ステップST15)。
画像処理部40により取得要求された画像データがそのインデックス番号の画像バッファ61に格納されておらず、読み込んだフラグ値が画像データ無しの値である場合、画像バッファ管理部44は、DSC2から画像データを取得する(ステップST16)。
具体的には、画像バッファ管理部44は、DSC2の半導体メモリ13に記憶されている画像データを、DSC2に送信させる送信指示を生成する。画像バッファ管理部44は、画像データの総データ量を、画像バッファ61の1本の記憶容量で分割した単位で取得する送信指示であって、画像処理部40により要求された画像データを含む画像データの送信を指示する送信指示を生成する。
図8は、フラグモードにおいて、画像処理部40が画像バッファ管理部44に要求する画像データと、画像バッファ管理部44がDSC2から取得する画像データとの関係を示す図である。図8に示すように、画像処理部40が、画像データの3ブロック目の途中のデータを先頭データとするオフセット値を指定し、そこから4ブロック目の途中までの画像データを要求した場合、画像バッファ管理部44は、その要求かかる画像データを含み、画像データをその先頭データから画像バッファ61の1本分の記憶容量に相当するデータ量毎にくぎった範囲(図8では2つ目の範囲)の画像データの送信を要求する。
この実施の形態では、USBマスストレージクラス37,15を用いているため、DSC2の半導体メモリ13は、プリンタ1側から見て、1つのストレージとして認識される。そのため、プリンタ1の画像バッファ管理部44は、まず、DSC2の画像データ送信部18から、DSC2の半導体メモリ13のメモリ管理領域23の情報を取得し、送信を指示する画像データの、半導体メモリ13のデータ記憶領域22内の保存場所を特定する。次に、画像バッファ管理部44は、特定した保存場所に保存されている画像データの送信指示を生成する。
画像バッファ管理部44は、生成した画像データの送信指示を、プリンタ1の通信I/F38へ供給する。プリンタ1の通信I/F38は、供給された画像データの送信指示を、DSC2の通信I/F16へ送信する。DSC2の通信I/F16は、受信した画像データの送信指示を、画像データ送信部18へ供給する。画像データ送信部18は、半導体メモリ13から、送信を指示された画像データを読み込み、DSC2の通信I/F16に供給する。DSC2の通信I/F16は、供給された画像データを、プリンタ1の通信I/F38へ送信する。プリンタ1の通信I/F38は、受信した画像データを、画像バッファ管理部44へ供給する。これにより、画像バッファ管理部44は、送信を指示した画像データを取得する。
画像バッファ管理部44は、送信を指示した画像データを取得すると、そのDSC2から取得した画像データを、特定した画像バッファ61に保存する(ステップST17)。
DSC2から取得した画像データを特定した画像バッファ61に格納した後、画像バッファ管理部44は、そのDSC2から取得した画像データから、画像処理部40により要求された画像データを抽出し、画像処理部40へ供給する(ステップST18)。
また、画像バッファ管理部44は、DSC2から取得した画像データを保存した画像バッファ61に対応する管理データ62に格納されているフラグの値を、画像データ有りを示す「1」へ更新する。(ステップST19)その後、画像バッファ管理部44は、画像データの要求待ちの状態に戻る(ステップST12)。
一方、特定した画像バッファ61に画像データが保存されている場合、画像バッファ管理部44は、ステップST15において、その特定した画像バッファ61のインデックス番号に対応する管理データ62のフラグ値が「1」であると判断する。
そして、画像バッファ管理部44は、その特定した画像バッファ61から画像データを読み込む(ステップST20)。画像バッファ管理部44は、画像バッファ61から読み込んだ画像データの中から、画像処理部40により要求された範囲の画像データを抽出し、画像処理部40へ供給する(ステップST21)。その後、画像バッファ管理部44は、画像データの要求待ちの状態に戻る(ステップST12)。
図5に戻り、印刷する画像データの総データ量が複数の画像バッファの既知の総記憶容量より大きい場合、画像バッファ管理部44は、図7に示すように、オフセットモードによる動作を開始する(ステップST4)。
オフセットモードでは、複数の画像バッファ61には、画像データは、取得が要求された画像データが、画像バッファ61の1本の記憶容量毎に格納される。たとえば、画像データの1キロバイト目から2キロバイト目の取得要求に基づいて画像データが取得された場合、その画像データを格納する画像バッファ61には、画像データの1キロバイト目から、画像バッファ61の1本の記憶容量のデータが格納される。また、取得した画像データは、そのときに空いている画像バッファ61に格納される。また、対応する管理データ62には、画像バッファ61に格納した画像データの、先頭データのオフセット値と、格納時刻データとが格納される。
図7に示すオフセットモードにおいて、画像バッファ管理部44は、まず、画像バッファ管理メモリ45の複数の管理データ62を、オフセット配列として初期化し(ステップST31)、制御ポインタ変数に初期値「0」を代入する(ステップST32)。その後、画像バッファ管理部44は、画像データの要求待ち状態になる(ステップST33)。
上述したように画像処理部40が、印刷する画像データのファイル名と、要求する画像データの範囲とを指定する画像データを要求すると、画像バッファ管理部44は、まず、要求された画像データが画像バッファメモリ43に記憶されているか否かを判断する。
画像バッファ管理部44は、そのときに保持している制御ポインタ変数の値に等しいインデックス番号の管理データ62から、オフセット値を読み込む(ステップST34)。画像バッファ管理部44は、読み込んだオフセット値と、制御バッファの記憶容量とに基づいて、オフセット値を読み込んだ管理データ62と同じインデックス番号の画像バッファ61に、画像処理部40により要求された画像データが格納されているか否かを判断する(ステップST35)。
たとえば、管理データ62から読み込んだオフセット値が「0」であり、各画像バッファ61の記憶容量が3キロバイトであり、且つ、画像処理部40が1キロバイト目から2キロバイト目までのオフセットの画像データを要求した場合、画像バッファ管理部44は、要求された画像データが画像バッファ61に格納されていると判断する。同様の状況下で、画像処理部40が4キロバイト目から5キロバイト目までのオフセットの画像データを要求した場合、画像バッファ管理部44は、画像バッファ61には、要求された画像データが格納されていないと判断する。
制御ポインタ変数の値に等しいインデックス番号の画像バッファ61に、画像処理部40により要求された画像データが格納されていない場合、画像バッファ管理部44は、さらに、すべての画像バッファ61について、画像処理部40により要求された画像データが格納されていないと判断したか否かを判断する(ステップST36)。
そして、すべての画像バッファ61について、ステップST35の判断を行っていない場合、画像バッファ管理部44は、制御ポインタ変数の値を、画像データを格納する画像バッファ61の中の、次のインデックス番号に更新する(ステップST37)。
図4に示すようにn本の画像バッファ61がある場合において、制御ポインタ変数の値が「n−1」(最後のインデックス番号)であるときには、画像バッファ管理部44は、制御ポインタ変数の値を「0」(最初のインデックス番号)に更新する。制御ポインタ変数の値が「n−1」以外の値であるときには、画像バッファ管理部44は、制御ポインタ変数の値を「1」増加する。
制御ポインタ変数の値を更新した後、画像バッファ管理部44は、更新した制御ポインタ変数の値に等しいインデックス番号の管理データ62の読込処理(ステップST34)と、その読み込んだオフセット値を用いた画像データの有無の判断処理(ステップST35)とを実行する。
このステップST34からST37までの検索処理を繰り返すことで、画像バッファ管理部44は、画像処理部40により要求された画像データが複数の画像バッファ61に格納されているか否かを、画像バッファ61ごとに1つずつ順番に判断する。
この画像バッファ管理部44による検索処理は、要求に係る画像データを格納する画像バッファ61が発見されるまで、あるいは、すべての画像バッファ61についての検索が終了するまで繰り返される。
画像処理部40により要求された画像データが複数の画像バッファ61に格納されておらず、すべての画像バッファ61についての検索が終了したと判断すると(ステップST36)、画像バッファ管理部44は、DSC2から画像データを取得する処理を開始する。
具体的には、画像バッファ管理部44は、DSC2の半導体メモリ13に記憶されている画像データを、DSC2に送信させる送信指示を生成する(ステップST38)。この送信指示において、画像バッファ管理部44は、取得する画像データの先頭データとして、画像処理部40により要求された画像データの先頭データを指定し、取得する画像データのデータ量として、1つの画像バッファ61の記憶容量を指定する。画像バッファ管理部44は、生成した画像データの送信指示を、プリンタ1の通信I/F38へ供給する。
図9は、オフセットモードにおいて、画像処理部40が画像バッファ管理部44に要求する画像データと、画像バッファ管理部44がDSC1から取得する画像データとの関係を示す図である。図9に示すように、画像処理部40が、画像データの3ブロック目の途中のデータを先頭データとするオフセット値を指定し、そこから4ブロック目の途中までの画像データの取得を要求した場合、画像バッファ管理部44は、その先頭データから画像バッファ61の1本分の記憶容量に相当するデータ量の画像データの送信を要求する。
プリンタ1の通信I/F38は、供給された画像データの送信指示を、DSC2の通信I/F16へ送信する。DSC2の通信I/F16は、受信した画像データの送信指示を、画像データ送信部18へ供給する。画像データ送信部18は、半導体メモリ13から、送信を指示された画像データを読み込み、DSC2の通信I/F16に供給する。DSC2の通信I/F16は、供給された画像データを、プリンタ1の通信I/F38へ送信する。プリンタ1の通信I/F38は、受信した画像データを、画像バッファ管理部44へ供給する。
画像バッファ管理部44は、通信I/F38から、送信を指示した画像データを取得すると、そのDSC2から取得した画像データを、画像データを格納していない空き画像バッファ61に保存する。空いている画像バッファ61が無い場合には、画像バッファ管理部44は、画像バッファ管理メモリ45において格納時刻が最も古い管理データ62に対応する画像バッファ61に、DSC2から取得した画像データを格納する(ステップST39)。
また、画像バッファ管理部44は、DSC2から取得した画像データを保存した画像バッファ61に対応する管理データ62に、DSC2から取得した画像データの先頭データのオフセット値を保存し、その管理データ62に対応する格納時刻データ63の時刻を、現時刻に更新する。
DSC2から取得した画像データを画像バッファ61に格納した後、画像バッファ管理部44は、そのDSC2から取得した画像データの先頭から、画像処理部40により取得要求されたデータ量の画像データを抽出し、画像処理部40へ供給する(ステップST40)。
その後、画像バッファ管理部44は、制御ポインタ変数の値を、更新した管理データ62のインデックス番号に更新し(ステップST41)、画像データの要求待ちの状態に戻る(ステップST33)。
一方、画像処理部40により要求された画像データがいずれかの画像バッファ61に格納されている場合、画像バッファ管理部44は、その画像バッファ61に対応する管理データ62についての判断(ステップST35)において、画像処理部40により要求された画像データが格納されていると判断する。
そして、画像バッファ管理部44は、その判断したときの制御ポインタ変数の値に等しいインデックス番号の画像バッファ61から画像データを読み込み(ステップST42)画像処理部40により要求された範囲の画像データを抽出して、画像処理部40へ供給する(ステップST43)。その後、画像バッファ管理部44は、画像データが格納されていると判断したときのインデックス番号を保持し(ステップST44)、画像データの要求待ちの状態に戻る(ステップST33)。
画像処理部40は、以上のように動作する画像バッファ管理部44に対して、画像データが必要になると、その必要な画像データを要求し、それに応じて画像バッファ管理部44から取得した画像データを用いて印刷制御データの生成処理を実行する。
具体的には、画像を90度回転して媒体30に印刷する場合(たとえば、図3(A)の画像の左端の列から順番に媒体30に印刷する場合)、画像処理部40は、印刷イメージを生成する前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、画像ファイルにおける各行の先頭データ(図3(A)の画像の左端のブロックの先頭データ)のオフセット値を特定する。画像処理部40は、特定した各行の先頭データのオフセット値を、画像処理メモリ41に記憶させる。
特に、印刷する画像データがJPEG形式の画像データである場合、その画像データにおいて、各ブロックのデータ量は一定しない。画像処理部40は、印刷イメージを生成する前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、画像ファイルにおける各行の先頭データのオフセット値を特定する。画像処理部40は、特定した各行の先頭データのオフセット値を、画像処理メモリ41に記憶させる。
また、画像処理部40は、印刷指示解釈部39の内部指示によりAPF処理などの画像処理が指定されている場合、画像に対してその処理をする前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、その画像処理に使用するパラメータを生成する。画像処理部40は、演算したパラメータを画像処理メモリ41に記憶させる。
また、画像処理部40は、印刷イメージを生成するために、印刷が指定されたファイル名の画像データを、たとえばキャリッジ33の走査により媒体30へ印刷する順番で所定データ量ずつ取得し、印刷イメージを生成する。画像処理部40は、APF処理などの画像処理のためのパラメータを演算している場合、取得した画像データに対してそのパラメータを用いた画像補正処理を実行し、その補正後の画像データを使用して印刷イメージを生成する。画像処理部40は、生成した印刷イメージを画像処理メモリ41に記憶させる。
このように、画像処理部40は、印刷の内部指示に応じた回数にわたって、印刷する画像データを何度も利用する。そのとき、画像処理部40は、個々の処理に応じて、画像データを、画像ファイルにおける画像データの格納順にて要求したり、その格納順とは異なる順番にて要求したりする。画像処理部40は、画像データを、その全体からすれば任意の順番にて要求し、微視的には連続した順番にて要求する。
印刷イメージを生成すると、画像処理部40は、生成した印刷イメージの色成分を、プリンタ1のインク色成分へ変換する色変換処理と、各インク色のイメージを、印刷するドット単位の印刷有無データへ変換するハーフトーン処理と、ドット単位の印刷有無データを、キャリッジ33からのインク吐出順に並べ替えるなどのインターレース処理とを実行し、印刷制御データを生成する。画像処理部40は、生成した印刷制御データを、制御部42へ供給する。
印刷制御データが供給されると、制御部42は、その印刷制御データに基づく印刷を開始する。制御部42は、まず、供給された印刷制御データに基づいて、送りモータ32を駆動し、プリンタ1にセットされている媒体30を、所定の方向からキャリッジ33に対向する位置へ供給する。制御部42は、キャリッジモータ34を駆動しながら、印刷制御データに基づいて、キャリッジ33の複数のピエゾ素子に電圧を印加する。これにより、媒体30のキャリッジ33で走査された部位には、画像の一部が印刷される。また、制御部42は、送りモータ32を駆動して媒体30を所定量ずつ送る制御と、印刷制御データに従って媒体30のキャリッジ33で走査する部位に画像を印刷する制御とを、繰り返し実行する。これにより、媒体30には、DSC2において指定された画像が、DSC2において指定された印刷条件にて印刷される。
図10は、図6のフラグモードにおいて、画像バッファ管理部44がDSC2から順番に要求する画像データを示すリストである。画像バッファ管理部44は、最初に、画像データの0キロバイト目から2キロバイト目までの画像データを要求し、次に、画像データの15キロバイト目から17キロバイト目までの画像データを要求する。以下、同様に図10に示す順番で、画像データを要求する。
図11は、図10の5番目までの画像データの送信要求をした場合の、画像バッファメモリ43の記憶状態および画像バッファ管理メモリ45の記憶状態を示す図である。このタイミングでは、画像バッファメモリ43の第一画像バッファ(インデックス番号「0」の画像バッファ)61には、0〜2キロバイト目までの画像データが格納され、第三画像バッファ61には、6〜8キロバイト目までの画像データが格納され、第四画像バッファ61には、9〜11キロバイト目までの画像データが格納され、第六画像バッファ61には、15〜17キロバイト目までの画像データが格納され、第八画像バッファ61には、21〜23キロバイト目までの画像データが格納される。また、これら5つの画像バッファ61に対応する管理データ62には、画像データ有りのフラグ値「1」が格納され、残りの管理データ62には、画像データ無しのフラグ値「0」が格納される。
図12は、図10の6番目までの画像データの送信要求をした場合の、画像バッファメモリ43の記憶状態および画像バッファ管理メモリ45の記憶状態を示す図である。このタイミングでは、図11の場合に加えて、第二画像バッファ61に、3〜5キロバイト目までの画像データが格納され、第二管理データ62のフラグ値が、画像データ無しのフラグ値「0」から、画像データ有りのフラグ値「1」へ変更される。
以上のように、この実施の形態では、プリンタ1に画像バッファメモリ43を設け、画像バッファ管理部44は、画像処理部40から要求された画像データがこの画像バッファメモリ43に格納されている場合には、画像バッファメモリ43からその要求に係る画像データを読み出して、画像処理部40へ供給する。したがって、画像処理部40が、画像データを要求してから、その要求に係る画像データを取得するまでの平均的な時間が短縮され、その結果として、印刷時間は短縮される。
また、この実施の形態では、印刷する画像の画像データの総データ量が、複数の画像バッファ61の総記憶容量以下である場合には、各画像バッファ61を、画像データの取得先における保存位置と対応付け、且つ、画像バッファ管理部44は、画像処理部40による要求に含まれるオフセット値からその要求に係る画像データを格納する画像バッファ61を特定し、その画像バッファ61から取得要求に係る画像データを読み出して供給する。したがって、画像バッファ管理部44は、図7のオフセットモードの場合のように複数の画像バッファ61について1つずつ順番に要求に係る画像データを格納しているか否かを検索することなく、複数の画像バッファ61から、要求に係る画像データを速やかに読み込んで提供することができる。画像バッファ管理部44は、その要求に係る画像データを格納する画像バッファ61の、画像バッファメモリ43内の位置にかかわらず、要求に係る画像データを速やかに読み込んで提供することができる。
また、この実施の形態では、画像バッファ管理部44は、特定した画像バッファ61に画像データが記憶されているか否かをフラグの値に基づいて判断し、記憶されていない場合には、その画像バッファ61に割り当てられている画像データを取得し、その画像データから要求に係る画像データを提供する。したがって、画像処理部40により要求された画像データが所定の画像バッファ61に予め格納されていなくとも、画像データを取得して供給することができる。また、複数の画像バッファ61には、画像データが重複されることなく、印刷のために取得する画像データが保存される。
また、この実施の形態では、印刷する画像の画像データの総データ量が、複数の画像バッファ61の総記憶容量より大きく、複数の画像バッファ61を、画像データの取得先における保存位置と1対1に対応付けることができない場合には、画像バッファ管理部44は、オフセットモードで動作する。画像バッファ管理部44は、複数の画像バッファ61に記憶されてない画像データを、取得要求に係る画像データが送信指示する画像データの先頭部分となるように取得し、画像バッファ61に保存する。したがって、複数の画像バッファ61の総記憶容量より、印刷する画像データのデータ量が多く、複数の画像バッファ61を画像データと1対1に対応付けることができない場合であっても、その複数の画像バッファ61を用いて、要求に係る画像データを取得して供給することができる。
以上の実施の形態は、本発明の好適な実施の形態の例であるが、本発明は、これに限定されるものではなく、発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
たとえば、上記実施の形態では、画像バッファ管理メモリ45と画像バッファメモリ43とが別々に設けられている。この他にもたとえば、複数の管理データ62を、画像バッファメモリ43内に設けるなどして、これらを1つのメモリ内に記憶するようにしてもよい。この場合において、画像バッファ管理部44がフラグモードで動作する場合、各管理データ62にはフラグ値のみが格納されればよい。その結果、画像バッファメモリ43内において、複数の画像バッファ61の管理のために使用するデータ量を削減し、その分、画像バッファメモリ43の記憶領域を、画像データを格納するために有効に利用することができる。
上記実施の形態では、フラグモードにおいて各管理データ62に格納するフラグは、0あるいは1の1ビットのデータである。この他にもたとえば、フラグモードにおいて各管理データ62に複数ビットからなるフラグを格納するようにしてもよい。この場合、そのフラグの値の分だけ印刷する画像データの総データ量を増やすことができる。
すなわち、たとえば、複数の画像バッファ61に一度に記憶することができる総記憶容量をAバイトとした場合、画像データの0バイト目からAバイト目までの画像データを格納している画像バッファ61に対応する管理データのフラグ値を「1(=01)」とし、画像データのAバイト目から2Aバイト目までの画像データを格納している画像バッファ61に対応する管理データのフラグ値を「2(=10)」とし、画像データの2Aバイト目から3Aバイト目までの画像データを格納している画像バッファ61に対応する管理データのフラグ値を「3(=11)」とすれば、複数の画像バッファ61に一度に記憶することができる総記憶容量の3倍の総データ量を有する画像データについて、フラグモードにて処理することができる。
つまり、画像バッファ管理メモリ45は、印刷対象の画像データのサイズが画像バッファメモリ43のサイズより大きい場合、1つの画像バッファに対応付けられた複数の画像データ(つまり、印刷対象の画像データのうちの一部の画像データ)のうちのいずれの画像データであるかを示す判別情報(上述の「1」〜「3」といったフラグ値)を格納する判別情報記憶手段として機能する。そして、画像バッファ管理部44は、選択した画像バッファについての判別情報に基づいて、その画像バッファに保存されている画像データが、要求された画像データを有するか否かを判断し、その画像バッファ61に保存されている画像データが、要求された画像データを有する場合には、その画像バッファ61から画像データを読み込んで要求元へ供給する。
したがって、たとえば、プリンタ1が印刷する画像データの最大の総データ量を規定し、その総データ量に対応するビット数のフラグ値を使用することで、画像バッファ管理部44は、印刷する画像データの総データ量に基づくモード判定処理をすることなく、フラグモードだけで、画像処理部40から要求される画像データを、画像処理部40へ提供することができる。
上記実施の形態では、DSC2の印刷指示部17は、印刷する画像の画像データを有するEXIF画像ファイル21のファイル名を指定した印刷指示を、プリンタ1の印刷指示解釈部39へ送信している。この他にもたとえば、印刷指示部17は、ファイル名と1対1に対応して発行される、ピクトブリッジ(PictBridge)などで使用されるファィルIDを指定した印刷指示を、プリンタ1の印刷指示解釈部39へ送信するようにしてもよい。なお、ピクトブリッジでは、画像データをDSC2からプリンタ1へ送信するために、PTP(Picture Transfer Protocol)を使用する。
上記実施の形態では、画像バッファ管理部44は、DSC2に接続されるプリンタ1に設けられ、このDSC2の半導体メモリ13に保存されているEXIF画像ファイル21のデータを読み込んでいる。この他にもたとえば、画像バッファ管理部44は、デジタルムービーカメラ、カードリーダ、半導体メモリ、携帯端末コンピュータなどに接続されるプリンタ1に設けられ、これらに保存されている画像データを読み込ものであってもよい。
本発明は、たとえばデジタルカメラが接続され、そのデジタルカメラに記憶されている画像ファイルに基づく画像を印刷するプリンタなどに利用することができる。
1 プリンタ(印刷装置)、2 DSC(画像データの取得先)、40 画像処理部(画像処理手段)、42 制御部(印刷手段)、43 画像バッファメモリ、44 画像バッファ管理部(選択手段、供給手段、取得手段)、45 画像バッファ管理メモリ(有無記憶手段、判別情報記憶手段)、61 画像バッファ
Claims (9)
- 複数の画像バッファを有し、印刷対象の画像データのうちの一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に対応付けられた上記画像バッファに記憶する画像バッファメモリと、
画像データの要求において指定された画像データのオフセット位置に対応付けられた1つの画像バッファを、上記複数の画像バッファの中から選択する選択手段と、
上記選択手段により選択された画像バッファから、上記要求に係る画像データを読み込んで画像データの要求元へ供給する供給手段と、
を有することを特徴とする画像データキャッシュ装置。 - 前記複数の画像バッファについて、各画像バッファに画像データが記憶されているか否かを示す有無情報を記憶する有無記憶手段を有し、
前記供給手段は、前記選択手段により選択された画像バッファについての上記有無情報が有りである場合、その画像バッファから画像データを読み込んで供給すること、
を特徴とする請求項1記載の画像データキャッシュ装置。 - 前記選択手段により選択された前記画像バッファに、画像データが格納されていない場合に画像データを取得し、前記選択手段により選択された前記画像バッファに保存する取得手段を有することを特徴とする請求項1または2記載の画像データキャッシュ装置。
- 前記画像バッファメモリは、配列された複数の画像バッファを有し、
前記取得手段は、要求された画像データのオフセット位置を前記画像バッファのサイズで除算し、演算結果の整数部で指定される前記画像バッファに、画像データを保存し、
前記選択手段は、要求された画像データのオフセット位置を前記画像バッファのサイズで除算し、演算結果の整数部で指定される前記画像バッファを選択すること、
を特徴とする請求項3記載の画像データキャッシュ装置。 - 前記画像バッファメモリは、印刷対象の画像データのサイズが前記画像バッファメモリのサイズ以下である場合、印刷対象の画像データのうちの取得した一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に一対一で対応付けられた前記画像バッファに記憶し、印刷対象の画像データのサイズが前記画像バッファメモリのサイズより大きい場合、印刷対象の画像データのうちの取得した一部の画像データを、印刷対象の画像データ内でのその画像データのオフセット位置に複数対一で対応付けられた前記画像バッファに記憶することを特徴とする請求項1記載の画像データキャッシュ装置。
- 印刷対象の画像データのサイズが前記画像バッファメモリのサイズより大きい場合、1つの画像バッファに対応付けられた複数の前記一部の画像データのうちのいずれの前記一部の画像データであるかを示す判別情報を格納する判別情報記憶手段を有し、
前記供給手段は、前記選択手段により選択された画像バッファについての上記判別情報に基づいて、その画像バッファに保存されている画像データが、要求された画像データを有するか否かを判断し、その画像バッファに保存されている画像データが、要求された画像データを有する場合には、その画像バッファから画像データを読み込んで要求元へ供給すること、
を特徴とする請求項5記載の画像データキャッシュ装置。 - 前記取得手段は、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータから、印刷に使用する画像データを取得することを特徴とする請求項1から6の中のいずれか1項記載の画像データキャッシュ装置。
- 要求された画像データをその要求元へ供給する請求項1から7の中のいずれか1項記載の画像データキャッシュ装置と、
上記画像データキャッシュ装置に対して印刷する画像の画像データを要求し、それに応じて供給された画像データを用いて印刷制御データを生成する画像処理手段と、
上記印刷制御データに基づく印刷を実行する印刷手段と、
を有することを特徴とする印刷装置。 - 画像データの要求において指定される画像データのオフセット位置に対応付けられた画像バッファを、画像バッファメモリの複数の画像バッファから選択するステップと、
選択された画像バッファから、上記要求に係る画像データを読み込んで画像データの要求元へ供給するステップと、
を有することを特徴とする画像データ代理取得方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005094792A JP2006272723A (ja) | 2005-03-29 | 2005-03-29 | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005094792A JP2006272723A (ja) | 2005-03-29 | 2005-03-29 | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006272723A true JP2006272723A (ja) | 2006-10-12 |
Family
ID=37207932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005094792A Withdrawn JP2006272723A (ja) | 2005-03-29 | 2005-03-29 | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006272723A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8284436B2 (en) | 2007-08-03 | 2012-10-09 | Seiko Epson Corporation | Image data processing apparatus and method |
-
2005
- 2005-03-29 JP JP2005094792A patent/JP2006272723A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8284436B2 (en) | 2007-08-03 | 2012-10-09 | Seiko Epson Corporation | Image data processing apparatus and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100738493B1 (ko) | 화상공급 디바이스 및 그 제어방법과, 인쇄시스템 | |
KR20030030897A (ko) | 기록 장치 및 그 제어 방법, 및 기록 매체 | |
WO2006043667A1 (ja) | 画像供給装置及び該装置の制御方法及び印刷システム | |
US7274478B2 (en) | Image printing apparatus and image printing control method | |
JP4468120B2 (ja) | 画像供給デバイス及び該デバイスの制御方法とそのプログラムと記憶媒体 | |
US20100238504A1 (en) | Printing system | |
JP2006272723A (ja) | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 | |
JP4604795B2 (ja) | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 | |
US7057762B1 (en) | Image processing method, image processing apparatus and image processing system | |
JP2006277267A (ja) | 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 | |
JP5528209B2 (ja) | 画像処理装置および画像処理方法 | |
JPH0937010A (ja) | 画像出力装置及びその制御方法 | |
JP2006343922A (ja) | 画像データ取得装置、印刷装置および画像データ取得方法 | |
JP4529501B2 (ja) | プリンタ、画像印刷システムおよび印刷方法 | |
JP2006264274A (ja) | 圧縮データ解凍回路、圧縮データ解凍方法及び印刷装置 | |
US7492489B2 (en) | Two-directions scanning method | |
JP2006035611A (ja) | 画像の印刷 | |
JP4461954B2 (ja) | 画像出力装置および画像出力方法 | |
JP4709246B2 (ja) | 画像供給デバイス及び該デバイスの制御方法及び印刷システム | |
JP2006277272A (ja) | 印刷指示生成装置、印刷装置および印刷指示生成方法 | |
JP4612822B2 (ja) | 画像供給デバイス及び該デバイスの制御方法及び印刷システム | |
JP3213093B2 (ja) | ファクシミリ装置 | |
JP2005111941A (ja) | 印刷装置、印刷方法及び印刷実行プログラム | |
JP2006277273A (ja) | 印刷指示生成装置、印刷装置および印刷指示生成方法 | |
JP2008273214A (ja) | シリアルプリンタ及びプログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20070404 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080603 |