(57)【要約】【課題】ディジタルカメラ等の周辺装置から直接プリンタに画像ファイルを送信して自動印刷させる場合に、印刷エラー後の再印刷をページ単位で行う。【解決手段】カメラ１０とプリンタ２０はＤＰＯＦ印刷に対応しており、カメラ１０からパーソナルコンピュータ等を介さずに画像ファイルの印刷をプリンタ２０に指示できるようになっている。プリンタ２０は、印刷状態を監視して、現在印刷中のオブジェクト（画像ファイル）について、ページ毎にジョブステータス情報を生成し、カメラ１０に通知する。カメラ１０は、ジョブステータス情報を上書きで保存し、最新のジョブステータス情報を保持する。紙詰まり等で印刷が中断した後で、印刷を再開する場合は、カメラ１０からジョブステータス情報とＤＰＯＦスクリプトファイルをプリンタ２０に送信する。プリンタ２０は、印刷が中断されたページから印刷を再開する。【選択図】　図１
2004086664.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトを含んでなる印刷ジョブデータを送信するホストコンピュータと、該ホストコンピュータからの印刷ジョブデータに基づいて印刷を行うプリンタとを備えた印刷システムにおいて、
前記プリンタで印刷させるための印刷ジョブデータを記憶する第１の記憶手段と、
前記プリンタによる前記印刷ジョブデータの印刷経過を示すジョブステータス情報を記憶する第２の記憶手段と、
前記プリンタによる前記印刷ジョブデータの印刷状態を監視し、前記第２の記憶手段に記憶させる前記ジョブステータス情報をページ単位で更新するジョブステータス監視手段と、
前記プリンタが前記印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復したか否かを判定する判定手段と、
前記プリンタが前記印刷可能状態に回復したと判定された場合は、前記第１の記憶手段に記憶された前記印刷ジョブデータと前記第２の記憶手段に記憶されたジョブステータス情報とに基づいて、ページ単位で印刷を再開させる印刷再開手段と、
を備えたことを特徴とする印刷システム。
【請求項２】
前記ジョブステータス監視手段は、各ページで最初に印刷されるオブジェクトの印刷が開始されると、前記第２の記憶手段に記憶される前記ジョブステータス情報を更新させる請求項１に記載の印刷システム。
【請求項３】
前記ジョブステータス監視手段は、各ページの最後に印刷されるオブジェクトの印刷が終了すると、前記第２の記憶手段に記憶される前記ジョブステータス情報を更新させる請求項１に記載の印刷システム。
【請求項４】
前記ジョブステータス情報には、印刷中のオブジェクトを特定するためのオブジェクト識別情報と該オブジェクトの既印刷数を示す情報とが含まれており、
前記印刷再開手段は、前記ジョブステータス情報及び前記印刷ジョブデータに基づいて、印刷が未完了のオブジェクトから印刷を再開する請求項２又は請求項３のいずれかに記載の印刷システム。
【請求項５】
前記第１及び第２の記憶手段は、前記ホストコンピュータが備える請求項４に記載の印刷システム。
【請求項６】
前記第１及び第２の記憶手段は、前記ホストコンピュータに着脱可能に設けられた書換可能な記録媒体上に実現されている請求項５に記載の印刷システム。
【請求項７】
前記印刷ジョブデータは、画像ファイルと該画像ファイルの印刷方法を指定する印刷指定ファイルとからなり、前記ジョブステータス情報は前記印刷指定ファイル中に記述されている請求項６に記載の印刷システム。
【請求項８】
前記印刷ジョブデータは、画像ファイルと該画像ファイルの印刷方法を指定する印刷指定ファイルとからなり、
前記印刷指定ファイルは、少なくとも、印刷ジョブを識別するためのジョブ識別情報と、印刷の種類を指定する情報と、印刷部数を指定する情報と、前記画像ファイルの格納先を示すパス情報とを含んでおり、
前記オブジェクト識別情報は、前記パス情報の一部から構成されている請求項５に記載の印刷システム。
【請求項９】
前記ホストコンピュータは、画像を撮影して記録する画像入力装置であり、前記第１の記憶手段は着脱可能に設けられた記録媒体であり、前記プリンタはシリアルプリンタである請求項５に記載の印刷システム。
【請求項１０】
生成した画像をプリンタに送信して印刷させる画像入力装置であって、
前記プリンタで印刷させるためのオブジェクトを含んでなる印刷ジョブデータを記憶する第１の記憶手段と、
前記プリンタによる前記印刷ジョブデータの印刷経過を示すジョブステータス情報をページ毎に更新して記憶する第２の記憶手段と、
前記プリンタが前記印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復したか否かを判定する判定手段と、
前記プリンタが前記印刷可能状態に回復したと判定された場合は、前記第１の記憶手段に記憶された前記印刷ジョブデータと前記第２の記憶手段に記憶されたジョブステータス情報とを前記プリンタに送信することにより、ページ単位で印刷を再開させる再開指示手段と、
を備えたことを特徴とする画像入力装置。
【請求項１１】
ホストコンピュータから複数のオブジェクトを含んでなる印刷ジョブデータを受信して印刷するプリンタであって、
前記プリンタによる前記印刷ジョブデータの印刷状態を監視することにより、印刷経過を示すジョブステータス情報をページ単位で生成して前記ホストコンピュータに送信するジョブステータス監視手段と、
前記印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復したか否かを判定する判定手段と、
前記印刷可能状態に回復したと判定された場合は、前記ホストコンピュータから前記印刷ジョブデータ及び前記ジョブステータス情報を受信して、ページ単位で印刷を再開する印刷再開手段と、
を備えたことを特徴とするプリンタ。
【請求項１２】
撮影した画像をプリンタに送信して印刷させる画像入力装置を制御するためのコンピュータプログラムであって、
前記プリンタで印刷させるための複数のオブジェクトを含んでなる印刷ジョブデータを第１の記憶手段に記憶させる機能と、
前記プリンタからページ単位で送信されるジョブステータス情報を第２の記憶手段に記憶させる機能と、
前記プリンタが前記印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復したか否かを判定する機能と、
前記プリンタが前記印刷可能状態に回復したと判定された場合は、前記第１の記憶手段に記憶された前記印刷ジョブデータと前記第２の記憶手段に記憶されたジョブステータス情報とを前記プリンタに送信することにより、ページ単位で印刷を再開させる機能と、
をコンピュータ上に実現させるためのプログラム。
【請求項１３】
ホストコンピュータから複数のオブジェクトを含んでなる印刷ジョブデータを受信して印刷するプリンタを制御するためのコンピュータプログラムであって、
前記プリンタによる前記印刷ジョブデータの印刷状態を監視することにより、ページ単位でジョブステータス情報を生成して前記ホストコンピュータに送信させる機能と、
前記印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復した場合には、前記ホストコンピュータから前記印刷ジョブデータ及び前記ジョブステータス情報を受信して、ページ単位で印刷を再開させる機能と、
をコンピュータ上に実現させるためのプログラム。
【請求項１４】
ホストコンピュータから受信した複数のオブジェクトを含んでなる印刷ジョブデータをプリンタで印刷中にエラー状態が発生した場合の印刷再開方法であって、
前記ホストコンピュータは、ページ単位での印刷状態の監視結果であるジョブステータス情報を、少なくとも前記印刷ジョブデータの印刷が完了するまで保持しており、
前記ホストコンピュータは、前記プリンタが前記エラー状態から回復した場合には、前記ジョブステータス情報及び前記印刷ジョブデータを前記プリンタに送信し、
前記プリンタは、前記ジョブステータス情報に含まれるオブジェクト識別情報に基づいて前記印刷ジョブデータを解釈することにより、印刷が未完了のページから印刷を再開する、ことを特徴とする印刷再開方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、ディジタルカメラ等のホストコンピュータから複数の画像ファイルをプリンタに送信して印刷させる印刷システムに関する。
【０００２】
【従来の技術】
ディジタル画像技術及びマイクロコンピュータシステムの発展に伴い、画像を撮影するディジタルカメラ等が広く普及している。ディジタルカメラで撮影した画像は、内蔵された又は外部に接続したモニタディスプレイで確認することができるが、印刷物として出力される場合も多い。ディジタルカメラで撮影した画像を印刷出力する場合は、ディジタルカメラの画像ファイルをパーソナルコンピュータにいったん転送し、パーソナルコンピュータからプリンタに送信することにより行われている。
【０００３】
しかし、パーソナルコンピュータを経由して印刷するのでは手間がかかり、ユーザの使い勝手が悪いため、ディジタルカメラからプリンタに画像ファイルを直接送信して印刷させるというダイレクト印刷が提案された。しかし、パーソナルコンピュータを介さず周辺機器間で画像ファイルをやり取りするため、従来のダイレクト印刷では、印刷すべき画像の指定や印刷枚数、画像の回転や拡大縮小等の諸設定が面倒であった。
【０００４】
そこで、近年では、ＤＣＦ（Ｄｅｓｉｇｎ　ｒｕｌｅ　ｆｏｒ　Ｃａｍｅｒａ　Ｆｉｌｅ　ｓｙｓｔｅｍ）やＤＰＯＦ（Ｄｉｇｉｔａｌ　Ｐｒｉｎｔ　Ｏｒｄｅｒ　Ｆｏｒｍａｔ）等の規格が定められ、ディジタルカメラの記録媒体（メモリカード等）内に、撮影した画像ファイルと画像ファイルの印刷指定情報とを予め記憶させておくことにより、一層簡単に自動ダイレクト印刷を行えるようになった。
【０００５】
【発明が解決しようとする課題】
ＤＰＯＦによれば、プリンタに印刷を要求するためのファイルが画像ファイルに関連づけられて記録媒体に記憶されているため、ディジタルカメラとプリンタとを直接接続して画像ファイル及び印刷指定ファイルをプリンタに送信するだけで、ユーザは所望の画像を指定した条件で印刷させることができる。
【０００６】
しかし、ディジタルカメラが印刷要求を出した後の印刷処理は、全てプリンタ側で行われるため、ディジタルカメラ側では、現在の印刷状態等を知ることができない。従って、例えば、プリンタに紙詰まりやインク切れが生じたり、又はプリンタの電源ケーブルやプリンタとディジタルカメラ間を結ぶデータ転送ケーブルが抜けたりして、印刷エラーが生じた場合でも、ディジタルカメラ側では、どこまでの印刷が正常に完了し、どの画像ファイルが印刷未完了であるか否かを知ることはできない。
【０００７】
このため、従来技術では、紙詰まり等の不具合が解消して印刷可能状態に復帰した後に、正常に印刷が終了した部分も含めて最初から全ての印刷を行うようになっている。従って、印刷用紙やインクを無駄に消費し、また最終印刷物を入手するまでの待ち時間も増大する。
【０００８】
本発明は、上記課題に鑑みてなされたもので、その目的は、複数のオブジェクトを含んだ印刷を行う場合、印刷エラー状態から回復後にページ単位で印刷を再開可能とすることで、印刷資源の無駄な消費を未然に防止し、使い勝手を改善できるようにした印刷システムを提供することにある。
【０００９】
【課題を解決するための手段】
上記課題を解決すべく、本発明に係る印刷システムでは、複数のオブジェクトを含んでなる印刷ジョブデータを送信するホストコンピュータと、ホストコンピュータからの印刷ジョブデータに基づいて印刷を行うプリンタとを備え、さらに、第１の記憶手段、第２の記憶手段、ジョブステータス監視手段、判定手段及び印刷再開手段を有する。
【００１０】
第１の記憶手段は、プリンタで印刷させるための印刷ジョブデータを記憶するものである。第２の記憶手段は、プリンタによる印刷ジョブデータの印刷経過を示すジョブステータス情報を記憶するものである。ジョブステータス監視手段は、プリンタによる印刷ジョブデータの印刷状態を監視することにより、第２の記憶手段に記憶されるジョブステータス情報をページ単位で更新させる。判定手段は、プリンタが印刷ジョブデータの印刷中に生じた印刷エラー状態から印刷可能状態に回復したか否かを判定する。印刷再開手段は、プリンタが印刷可能状態に回復したと判定された場合は、第１の記憶手段に記憶された印刷ジョブデータと第２の記憶手段に記憶されたジョブステータス情報とに基づいて、ページ単位で印刷を再開する。
【００１１】
ここで、「オブジェクト」とは、１ページあたりに割り付けられる画像数を意味し、例えば、あるページに２個の画像が割り付けられている場合、各画像がそれぞれ「オブジェクト」に該当する。但し、画像に限らず、文字データやグラフィックデータをオブジェクトとしてもよい。
【００１２】
ホストコンピュータとしては、例えば、パーソナルコンピュータ、携帯電話、携帯情報端末、デジタルカメラ、ディジタルビデオカメラ、スキャナ装置等を挙げることができる。また、一つの好ましい例として、ホストコンピュータは画像を撮影して記録する画像入力装置、第１の記憶手段は画像入力装置に着脱可能に設けられた記録媒体、プリンタはシリアルプリンタとして、それぞれ実現可能である。
【００１３】
印刷ジョブデータを印刷中に紙詰まり等が原因で印刷エラー状態を生じた場合は、印刷が中断される。そして、中断原因が取り除かれて印刷可能な状態に回復すると、印刷再開手段は、印刷ジョブデータとジョブステータス情報とを取得して、ページ単位で印刷を再開する。
【００１４】
即ち、印刷中断前に印刷済みのページについては印刷せず、指示された数の印刷が完了していないページから印刷が再開される。これにより、印刷用紙や色材（インクやトナー）の無駄な消耗を防止できる。
【００１５】
ここで、ジョブステータス監視手段は、少なくとも２種類のタイミングでジョブステータス情報を更新させることができる。１つは、各ページで最初に印刷されるオブジェクトの印刷が開始されるときであり、他の一つは、各ページの最後に印刷されるオブジェクトの印刷が終了したときである。
【００１６】
本発明の他の観点に従えば、ジョブステータス情報には、印刷中のオブジェクトを特定するためのオブジェクト識別情報と該オブジェクトの既印刷数を示す情報とが含まれており、印刷再開手段は、ジョブステータス情報及び印刷ジョブデータに基づいて、印刷が未完了のオブジェクトから印刷を再開する。
【００１７】
これにより、オブジェクト単位で印刷を再開させることもできる。
【００１８】
第１及び第２の記憶手段は、ホストコンピュータが備えることができる。
【００１９】
第１の記憶手段と第２の記憶手段は、それぞれ書換可能な記憶装置上に実現される。第１，第２の記憶手段は、それぞれ異なる記憶装置上に実現することもできるし、同一の記憶装置上に実現することもできる。
【００２０】
本発明の一態様では、第１及び第２の記憶手段は、ホストコンピュータに着脱可能に設けられた書換可能な記録媒体上に実現されている。
【００２１】
着脱可能な記録媒体としては、例えば、ＰＣカードやメモリ装置等を挙げることができる。第１，第２の記憶手段を同一の記録媒体上に実現することにより、ホストコンピュータに異常を生じた場合でも、他のホストコンピュータに記録媒体を装着し、この新たなホストコンピュータをプリンタに接続することにより、印刷未完了のオブジェクトから印刷を再開することができる。
【００２２】
第１，第２の記憶手段を同一の記録媒体上に実現する場合、ジョブステータス情報を印刷ジョブデータ中に含めることもできる。即ち、印刷ジョブデータは、画像ファイルと該画像ファイルの印刷方法を指定する印刷指定ファイルとからなり、ジョブステータス情報は印刷指定ファイル中に記述されている。
【００２３】
一方、本発明の一態様では、印刷ジョブデータは、画像ファイルと該画像ファイルの印刷方法を指定する印刷指定ファイルとからなり、印刷指定ファイルは、少なくとも、印刷ジョブを識別するためのジョブ識別情報と、印刷の種類を指定する情報と、印刷部数を指定する情報と、画像ファイルの格納先を示すパス情報とを含んでいる。そして、オブジェクト識別情報は、前記パス情報の一部から構成されている。
【００２４】
印刷再開手段は、印刷再開時にジョブステータス情報と印刷ジョブデータとを参照する。ここで、ジョブステータス情報にはオブジェクト識別情報が、印刷ジョブデータの印刷指定ファイルにはパス情報が含まれている。そして、オブジェクト識別情報は、パス情報の一部から構成される。従って、オブジェクト識別情報の生成規則が印刷再開手段にとって既知であれば、画像ファイルのパス情報とオブジェクト識別情報とを照合することにより、いずれの画像ファイルの印刷中に印刷が中断したか否か、換言すれば、どの画像ファイルから印刷を再開すべきか容易に判断することができる。そして、ジョブステータス情報はページ単位で更新されるため、印刷が未完了のページから印刷が再開されることになる。
【００２５】
本発明の一態様では、ホストコンピュータは、画像を撮影して記録する画像入力装置であり、第１の記憶手段は着脱可能に設けられた記録媒体であり、プリンタはシリアルプリンタである。
【００２６】
なお、本発明は、画像入力装置、プリンタ、印刷再開方法及びコンピュータプログラムとしても把握することができる。プログラムは、例えば、メモリ、ハードディスク（ＨＤ）、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ等の各種記録媒体に記録して配布することができるほか、通信ネットワークを介して配信することも可能である。
【００２７】
【発明の実施の形態】
以下、本発明の実施形態を図１〜図１１を参照しつつ詳細に説明する。
【００２８】
１．第１の実施の形態
【００２９】
まず、図１〜図９に基づいて、本発明の第１の実施の形態を説明する。図１は、本実施の形態に係る印刷システムの全体概要を示すブロック図である。
【００３０】
ディジタルカメラ（以下、「カメラ」と略記）１０は、後述のように、画像を撮影して電子データとして保持し、保持した画像データをプリンタ２０に送信して印刷させることができるようになっている。カメラ１０は、ＤＰＯＦ（Ｄｉｇｉｔａｌ　Ｐｒｉｎｔ　Ｏｒｄｅｒ　Ｆｏｒｍａｔ）規格に対応している。ＤＰＯＦでは、ユーザが選択した画像を特定する情報、印刷枚数、印刷方法等の印刷指定情報をテキストベースのファイル（ＤＰＯＦスクリプトファイル）に保存し、この印刷指定情報をユーザの所有するＤＰＯＦ対応プリンタやラボのプリンタに送信することにより、パーソナルコンピュータを介さずに自動印刷が行えるように規定されている。
【００３１】
カメラ１０は、撮像部１１，記録媒体１２，制御部１３，ユーザインターフェース１４，ＵＳＢデバイスコントローラ１５，記憶部１６を備えている。撮像部１１は、例えば、ＣＣＤ（Ｃｈａｒｇｅ−Ｃｏｕｐｌｅｄ　Ｄｅｖｉｃｅ）素子やレンズ及び前処理回路等からなり、被写体の画像を電子化して出力するようになっている。
【００３２】
記録媒体１２は、例えば、ＰＣカードやメモリ等の書換可能な記録媒体であって、カメラ１０のカードスロットに着脱可能に取り付けられている。記録媒体１２には、ユーザが撮影した画像ファイルＤ１と、印刷を指定するためのＤＰＯＦスクリプトファイルＤ２と、ジョブステータス情報Ｄ３とが記録されている。なお、ジョブステータス情報Ｄ３を、書換可能な不揮発性メモリ等からなる記憶部１６に記憶させる構成としてもよい。
【００３３】
制御部１３は、ＣＰＵやＲＡＭ、ＲＯＭ等からなるマイクロコンピュータシステムとして構成されており、種々のプログラムを実行する。ユーザインターフェース１４は、例えば、液晶ディスプレイや操作スイッチ類等からなり、撮影した画像や操作メニューを表示し、また、ユーザからの指示等を受け付ける。ＵＳＢデバイスコントローラ１５は、プリンタ２０とＵＳＢケーブルを介してデータ転送を行うためのものである。
【００３４】
このように、カメラ１０とプリンタ２０とはＵＳＢケーブルを介して接続されており、カメラ１０から画像ファイルＤ１，ＤＰＯＦスクリプトファイルＤ２，ジョブステータス情報Ｄ３がプリンタ２０に送信されることにより、印刷が行われるようになっている。
【００３５】
より詳しくは、カメラ１０の記録媒体１２は、例えば、ストレージクラスのＵＳＢデバイスとして機能し、後述するプリンタ２０のＵＳＢホストコントローラ２５により記憶内容がアクセスされるようになっている。カメラ１０のＵＳＢデバイスコントローラ１５とプリンタ２０のＵＳＢホストコントローラ２５との間には、コントロールパイプ、バルクパイプ及びインタラプトパイプの３種類の論理チャネルが設けられており、バルクパイプを介して画像ファイルがプリンタ２０に送信されるようになっている。なお、コントロールパイプは各種制御コマンドの伝送に用いられ、インタラプトパイプはプリンタ２０からカメラ１０へのリクエスト問い合わせコマンド（Ｉｎｔｅｒｒｕｐｔ　Ｉｎ）の伝送に用いられる。この構造を利用して、カメラ１０からプリンタ２０に印刷要求を出すことができる。例えば、プリンタ２０から比較的短い周期でリクエスト問い合わせコマンドをカメラ１０に繰り返し送信し、そのリクエスト問い合わせコマンドへの応答として、印刷要求をカメラ１０からプリンタ２０に返すことができる。あるいは、記録媒体１２の所定の場所に印刷要求を格納しておき、プリンタ２０が周期的に所定の格納場所をアクセスして印刷要求の有無を判断するように構成することもできる。
【００３６】
プリンタ２０の構成を説明する。プリンタ２０は、印刷部２１，記憶部２２，制御部２３，ユーザインターフェース２４及びＵＳＢホストコントローラ２５を備えており、ＤＰＯＦに対応したシリアルカラープリンタとして構成されている。
【００３７】
印刷部２１は、プリントエンジン及びエンジンコントローラを含んで構成されている。印刷部２１は、例えば、バンド単位で印刷用イメージデータを生成し、プリントヘッドを紙送り方向と直交する方向に走査させることにより、指定された設定で所定の印刷を行うようになっている。記憶部２３は、例えば、ハードディスク装置や半導体メモリ装置から構成されており、カメラ１０から取得した画像ファイル等を格納するようになっている。ユーザインターフェース２４は、例えば、液晶パネルや操作スイッチ類等からなり、ユーザからの指示を受け付けると共に印刷経過等を表示するようになっている。ＵＳＢホストコントローラ２５は、カメラ１０との間でＵＳＢを介したデータ通信を行うためのものである。
【００３８】
次に、カメラ１０に着脱可能に装着されている記録媒体１２の記憶構造について、図２を参照して説明する。
【００３９】
記録媒体１２のルートディレクトリ（Ｒｏｏｔ）下には、静止画像用のＤＣＦイメージディレクトリ（ＤＣＩＭ）と出力設定用ディレクトリ（ＭＩＳＣ）等が形成されており、ＤＣＦイメージディレクトリ下には、画像ファイルを格納するためのＤＣＦディレクトリ（１００ＥＰＳＯＮ，１０２ＥＰＳＯＮ等）が形成されている。ここで、ＤＣＦイメージディレクトリ下に複数のＤＣＦディレクトリを作成する場合、各ＤＣＦディレクトリのディレクトリ番号は重複しないように予め規定されている。
【００４０】
各ＤＣＦディレクトリ内には、撮影された画像ファイル（ＥＰＳＮ０００１．ＪＰＧ，ＥＰＳＮ０００２．ＪＰＧ等）が１つ又は複数格納されている。各ＤＣＦディレクトリ内に格納される画像ファイルのファイル名は、同一ＤＣＦディレクトリ内でファイル番号が重複しないように規定されている。なお、他のＤＣＦディレクトリ内の画像ファイルとファイル番号が重複しても構わない。
【００４１】
出力設定用ディレクトリ内には、自動プリントファイル（ＡＵＴＰＲＩＮＴ．ＭＲＫ）、ユニコード文字列記述ファイル（ＵＮＩＣＯＤＥ．ＭＲＫ）、自動送信ファイル（ＡＵＴＸＦＥＲ．ＭＲＫ）、自動再生ファイル（ＡＵＴＰＬＡＹｎ．ＭＲＫ）が格納されている。
【００４２】
自動プリントファイルは、ＤＰＯＦスクリプトファイルＤ２に該当し、カメラ１０からプリンタ２０に画像ファイルを送信して自動印刷を行わせるために必要な印刷指示をテキスト形式で記述してなるものである。なお、自動送信ファイルは、インターネット等のネットワークを介して画像を送信する際に用いられるものであり、自動再生ファイルは、例えばテレビジョンディスプレイやプロジェクター等でスライドショーを行う際に用いられるものである。また、ユニコード文字列記述ファイルは、多国語に対応すべくユニコードを使用可能とするためのものである。
【００４３】
次に、図３を参照して、ＤＰＯＦ印刷の指定及びＤＰＯＦスクリプトファイルＤ２の生成について説明する。
【００４４】
図３（ａ）は、カメラ１０のユーザインターフェース１４に表示された画面例であり、記録媒体１２に格納されている各画像ファイルが縮小されて一覧形式で表示されている。ＤＰＯＦ印刷を行う場合、ユーザは、どの画像ファイルを印刷するかを選択すると共に、どの画像ファイルを何枚印刷するか、どのように印刷するか等を指定する。図３（ａ）では、印刷が選択された画像ファイルに黒い四角形のマークを表示させている。また、印刷の種類としては、スタンダード印刷（ＳＴＤ）とインデックス印刷（ＩＤＸ）とが指定されている。印刷種類の横に並ぶ数値は印刷枚数を示す。
【００４５】
ユーザがＤＰＯＦ印刷の指定を完了すると、図３（ｂ）に示すように、ＤＰＯＦスクリプトファイルが生成される。ＤＰＯＦスクリプトファイルは、ヘッダ部Ｄ２１とジョブ記述部Ｄ２２とに大別される。ヘッダ部Ｄ２１には、対応するＤＰＯＦバージョン番号、カメラ１０の機種名、ＤＰＯＦスクリプトファイルの作成年月日のほか、ユーザ名やユーザ住所及び電話番号のユーザ情報が含まれている。ジョブ記述部Ｄ２２には、プリントプロダクトＩＤ、プリント種類（スタンダード印刷かインデックス印刷か等）、プリント部数、ファイルフォーマット、画像ファイルへのパス情報、印刷設定情報（日付を入れるか、回転させるか等）及びカメラメーカー各社が独自に定義可能なベンダー機能が含まれている。なお、上述した各項目は、必須の場合もあれば任意の場合もある。
【００４６】
図４は、ＤＰＯＦスクリプトファイルの具体例を示す説明図である。図４に示すように、ＤＰＯＦスクリプトファイルは、各印刷ジョブに作成されており、それぞれヘッダ部［ＨＤＲ］とジョブ記述部［ＪＯＢ］とからなる。各ジョブ記述部では、図３（ｂ）と共に既述したように、個々の印刷ジョブを特定するためのプリントプロダクトＩＤやプリント種類、プリント部数、印刷する画像ファイルへのパス情報等がテキストで記述されている。従って、プリンタ２０は、ＤＰＯＦスクリプトファイルに基づいて、印刷すべき画像ファイルをカメラ１０から取得すると共に、取得した画像ファイルを指定された方法で印刷することができる。なお、各印刷ジョブ毎にそれぞれＤＰＯＦスクリプトファイルを作成するのではなく、１つのＤＰＯＦスクリプトファイル内で複数の印刷ジョブを記述してもよい。
【００４７】
図５は、ＤＰＯＦ印刷が正常に行われた場合の様子を示す模式図である。図５に示す例では、以下の指定で印刷させる場合を示している。なお、スタンダード印刷を指定した場合、同一印刷用紙上に２個まで印刷できるものと仮定する。また、ここで、留意すべき点は、画像ファイルをどのようにページに割り付けるのか等の詳細な印刷レイアウトについては、プリンタに委ねられている点である。カメラ側では、印刷を要求する画像ファイルと印刷方法について指示するが、実際のページ構成については関知しない。
（１）「１００ＥＰＳＯＮ」ディレクトリに格納されている画像ファイル「ＥＰＳＮ０００３」をスタンダード印刷で２個印刷する、
（２）「ＥＰＳＮ０００１」〜「ＥＰＳＮ０００５」の５個の画像ファイルをインデックス印刷で３部印刷する、
（３）「ＥＰＳＮ０００４」の画像ファイルをスタンダード印刷で１個印刷する。
【００４８】
図５に示すように、第１ページには、画像ファイル「ＥＰＳＮ０００３」が２個並んで印刷され、第２〜第４ページには、画像ファイル「ＥＰＳＮ０００１」〜「ＥＰＳＮ０００５」のインデックスがそれぞれ印刷され、最後の第５ページには、画像ファイル「ＥＰＳＮ０００４」が１個印刷される。なお、図５及び後述の図９中では、画像ファイルのファイル番号を便宜上３桁で表示している。
【００４９】
複数毎の割付印刷の場合、ＤＰＯＦで指定された印刷がどのように印刷に反映されるかは、プリンタの設定に依存する。例えば、上記（１）では、プリンタ側の設定により同一紙上に２個の画像を割り付けることが指定されている。また、上記（３）でも（１）と同様に、プリンタ側の設定により同一紙上に２個の画像の割付が指定されているが、印刷対象として指定されている画像は１個であるため、印刷用紙の上半分のみに画像が割り付けられている。但し、印刷時のレイアウトをプリンタ側の設定に委ねる場合に限らず、ＤＰＯＦスクリプトファイル内に記述されたレイアウト指定情報やＤＰＯＦスクリプトファイルとは別個のレイアウト指定情報に基づいて、印刷レイアウトを設定する構成であってもよい。
【００５０】
プリンタ２０は、印刷部２１による印刷状態を常時監視しており、ページ単位でジョブステータス情報Ｄ３を更新し、カメラ１０に通知する。ジョブステータス情報の更新方法については、種々のものを採用できる。例えば、オブジェクト単位でジョブステータス情報を生成するが、ジョブステータス情報の更新はページ単位で行うことができる。あるいは、ページ単位でのみジョブステータス情報を生成して更新することもできる。ジョブステータス情報は、例えば、ファイルＩＤ及び既印刷数（ＣＯＰＹ　ＩＤ）を含んで構成されている。なお、プリントプロダクトＩＤ（ＰＲＴ　ＰＩＤ）をジョブステータス情報に含めてもよい。
【００５１】
ここで、ファイルＩＤは、現在印刷中の画像ファイルを特定するための情報であり、画像ファイルのパス情報から一意に定まるように生成されている。具体的には、画像ファイルが格納されているＤＣＦディレクトリのディレクトリ番号と画像ファイルのファイル番号とを連結することにより、ファイルＩＤを生成している。上述の通り、ＤＣＦディレクトリ番号は他のＤＣＦディレクトリと重複しないように予め設定されており、また、同一のＤＣＦディレクトリ内ではファイル番号が重複しないように予め設定されている。従って、ディレクトリ番号とファイル番号とを連結させてファイルＩＤを生成すれば、合計７桁の番号となってデータ量は７バイトで済み、少ない情報量で記録媒体１２に格納された画像ファイルを一意に特定することができる。
【００５２】
注目すべきは、ジョブステータス情報には「ページ数」という情報が含まれておらず、オブジェクトを識別するファイルＩＤが記述されている点である。上述の通り、カメラ側では実際のページレイアウトを把握しておらず、ファイルＩＤのみでは、どのページまで印刷されたのか知ることができない。しかし、プリンタ側では、印刷レイアウトを自ら決定するため、ファイルＩＤに基づいて、印刷を再開すべきページを特定することができる。
【００５３】
カメラ１０は、プリンタ２０から通知されたジョブステータス情報を記録媒体１２又は記憶部１６に上書きで保存することにより、常に最新の印刷経過を把握することができる。
【００５４】
ここで、用紙切れやインク切れ等の消耗品を補充すれば印刷を再開可能なエラーが発生した場合、プリンタ及びカメラは、用紙やインクの補充待機状態から補充完了状態に移行すると、自動的に印刷を開始するようになっている。この場合は、プリンタは印刷ジョブを保持しているため、カメラ１０からジョブステータス情報を送信することなく、印刷が続行される。しかし、例えば、電源ケーブルやＵＳＢケーブルが抜けたり、紙詰まりが発生したり、フェータルエラーが発生したりする等のように、そのままでは印刷続行が不可能なエラーが発生した場合は、プリンタの印刷ジョブは、キャンセル（プリンタ内から削除）されて、印刷が中止される。即ち、容易に印刷再開が可能な軽微なエラーの場合は、印刷可能状態に復帰した後でジョブステータス情報を送信することなく直ちに印刷を再開し、一方、直ちに印刷を再開できない重大なエラーの場合は、いったん印刷ジョブを取消し、その後にジョブステータス情報を送信することにより、印刷を再開するようになっている。このように、印刷中断事由の軽重に応じて、印刷再開のプロセスは異なる。
【００５５】
そして、もしも電源ケーブルやＵＳＢケーブルが抜けたり、紙詰まり等が生じて印刷が中断した場合は、カメラ１０からプリンタ２０に最新のジョブステータス情報を送信することにより、印刷中断時のオブジェクト（画像ファイル）から印刷を再開させることができるようになっている。
【００５６】
次に、図６〜図９の各フローチャートに基づいて、印刷システムの動作を説明する。以下、ステップを「Ｓ」と略記する。なお、図に示すフローチャートは、動作の概要を示すものであり、実際のプログラムとは相違する。
【００５７】
まず、図６は、カメラ１０側で実行されるＤＰＯＦ印刷指定処理を示す。ユーザは、ユーザインターフェース１４を介して、ＤＰＯＦ印刷を指定する（Ｓ１）。ＤＰＯＦ印刷がユーザにより指定されると（Ｓ１：ＹＥＳ）、ユーザは、印刷を行う画像、プリント部数、プリント種類、一緒に印刷する日付やメッセージ等の文字をそれぞれ指定する（Ｓ２）。ユーザにより指定された印刷方法等に基づいてＤＰＯＦスクリプトファイルが生成される（Ｓ３）。カメラ１０は、ＵＳＢケーブルを介してプリンタ２０にＤＰＯＦスクリプトファイルを送信する（Ｓ４）。
【００５８】
後述のように、プリンタ２０は、受信したＤＰＯＦスクリプトファイルに基づいて、カメラ１０から要求された印刷を開始し、印刷状態を監視してジョブステータス情報を生成し、カメラ１０に通知する。カメラ１０は、プリンタ２０からのジョブステータス情報の通知を待ち（Ｓ５）、ジョブステータス情報を受信した場合は、上書きで保存する（Ｓ６）。従って、カメラ１０は、常に最新のジョブステータス情報を１個だけ保持するようになっている。
【００５９】
また、カメラ１０は、プリンタ側で印刷エラーが発生したか否かを監視している（Ｓ７）。印刷エラーの有無は、例えば、プリンタ２０からの印刷エラー発生通知により知ることができる。また、例えば、所定時間が経過する前に、プリンタ２０から何らの応答も無い場合は、エラー発生と推定することができる。
【００６０】
印刷エラーが発生してない場合は（Ｓ７：ＮＯ）、ＤＰＯＦ印刷が完了したか否かを判定し（Ｓ１０）、印刷が全て完了するまでＳ７〜Ｓ１０の処理を繰り返す。一方、印刷エラーが発生したと判定された場合は（Ｓ７：ＹＥＳ）、プリンタ２０から印刷再開準備が完了したか否かの応答が来るまで待機し（Ｓ８）、印刷再開準備が完了した場合は（Ｓ８：ＹＥＳ）、保持しておいた最新のジョブステータス情報とＤＰＯＦスクリプトファイルとをプリンタ２０に送信し（Ｓ９）、印刷を再開させる。
【００６１】
次に、図７は、プリンタ２０側で実行されるＤＰＯＦ印刷処理を示す。プリンタ２０は、外部機器から印刷コマンドが入力されたか否かを監視しており（Ｓ２１）、印刷コマンドを受信した場合は（Ｓ２１：ＹＥＳ）、ＤＰＯＦ印刷の要求であるか否か、即ち、ＤＰＯＦスクリプトファイルを受信したか否かを判定する（Ｓ２２）。ＤＰＯＦ印刷以外のコマンドの場合は、コマンドに応じた通常の処理を行う（Ｓ２３）。例えば、パーソナルコンピュータからの印刷要求を受信した場合は通常の印刷処理を行う。
【００６２】
ＤＰＯＦ印刷が指示された場合は（Ｓ２２：ＹＥＳ）、ＤＰＯＦスクリプトファイルを解釈して印刷レイアウトを設定する（Ｓ２４）。次に、印刷エラーから回復後の印刷再開モードであるか否かを判定する（Ｓ２５）。印刷エラー発生前の正常印刷モードの場合は（Ｓ２５：ＮＯ）、ＤＰＯＦスクリプトファイルのジョブ記述部に指定されている画像ファイルを記録媒体１２から取得する（Ｓ２７）。そして、印刷用の画像イメージを生成し（Ｓ２８）、印刷を開始する（Ｓ２９）。画像ファイルの印刷を完了するまで（Ｓ３０）、Ｓ２８，Ｓ２９の処理を繰り返す。本実施の形態では、シリアルプリンタを用いるため、印刷用画像イメージはバンド毎に順次形成され、１パスずつ又は複数パスずつ印刷されていく。
【００６３】
指定された数だけその画像ファイルを印刷した場合は（Ｓ３０：ＹＥＳ）、次に印刷すべき画像ファイルに移り（Ｓ３１）、この新たな画像ファイルがページの最初に印刷されるべき画像ファイルであるか否か、即ち、新しいページの印刷開始であるか否かを判定する（Ｓ３２）。新しいページの印刷を開始する場合は（Ｓ３２：ＹＥＳ）、ジョブステータス情報を更新してカメラ１０に通知する（Ｓ３３）。
【００６４】
そして、全ての印刷ジョブを印刷したか否かを判定する（Ｓ３４）。全ての印刷ジョブを印刷するまで上述の処理を繰り返す。
【００６５】
従って、印刷されるページが新たになるたびに、ジョブステータス情報は更新されてカメラ１０に通知され、カメラ１０側で保持される。なお、画像ファイルの印刷を行うたびに、ジョブステータス情報を生成して更新し、ページが切り替わったときだけ、最新のジョブステータス情報をカメラ１０に通知して、カメラ側で保持されるジョブステータス情報をページ単位で更新させてもよい。
【００６６】
一方、印刷エラー発生後に印刷再開準備が整い、カメラ１０から再度ＤＰＯＦスクリプトとジョブステータス情報がプリンタ２０に送信された場合は、印刷再開モードであると判定される（Ｓ２５：ＹＥＳ）。印刷再開モードでは、ＤＰＯＦスクリプトを解釈し、カメラ１０から受信した最新のジョブステータス情報に示されているファイルＩＤと一致するファイルＩＤを有する画像ファイルの印刷ジョブまでＤＰＯＦスクリプトファイルを読み飛ばし、ファイルＩＤが一致する画像ファイルから印刷を再開する（Ｓ２６）。つまり、印刷エラーによって印刷が中断された画像ファイルから印刷を再開するようになっている。なお、ジョブステータス情報中のファイルＩＤで特定される画像ファイルは、ページの最初に印刷されるものであるから、結果的にページ単位で印刷が再開されることになる。
【００６７】
次に、図８は、プリンタ２０側のエラー処理を示す。プリンタ２０は、印刷部２１からの応答信号や入出力ポートの電圧変化等に基づいて、印刷エラーが発生したか否かを監視しており（Ｓ４１）、印刷エラーが発生した場合は、カメラ１０に通知する（Ｓ４２）。もっとも、予期せぬ電源遮断や通信路の切断等のようにプリンタ側で検出できないエラーの場合は、上述の通り、カメラ側でのタイムアウト処理等で印刷エラーの有無を判定する。紙詰まりやインク切れ等の中断原因が解消されて、印刷再開準備が完了した場合は（Ｓ４３）、印刷可能である旨をカメラ１０に通知する（Ｓ４４）。
【００６８】
図９は、印刷が再開された場合の印刷出力の様子を示す模式図である。２部目のインデックス印刷中に、画像ファイル「ＥＰＳＮ０００３」の印刷途中で印刷エラーが発生した場合を例に挙げる。印刷が中断された画像ファイルは、「ＥＰＳＯＮ１００」のＤＣＦディレクトリに保存されたファイル名「ＥＰＳＮ０００３」の画像ファイルであるが、ページの最初に印刷される画像ファイルは、同一ディレクトリ内の「ＥＰＳＮ０００１」である。従って、ジョブステータス情報に記述されるファイルＩＤは、ディレクトリ番号「１００」とファイル番号「０００１」を連結させてなる「１０００００１」となる。印刷を失敗した画像ファイルのファイルＩＤではなく、ページの最初に印刷されるファイルＩＤがジョブステータス情報に記述されている。
【００６９】
印刷再開に際して、カメラ１０から送信されるジョブステータス情報には、ファイルＩＤ「１０００００１」で特定される画像ファイルの１部目（ＣＯＰＹ　ＩＤ＝００１）を印刷中であった」旨が記述されている。従って、プリンタ２０は、図４（ｂ）中に黒三角印で示す行までＤＰＯＦスクリプトファイルを読み飛ばし（テキストコードの解釈は行うが、印刷用イメージの生成は行わない）、印刷が中断された画像ファイルから印刷を再開する。
【００７０】
図９（ａ）〜（ｂ）に示すように、プリンタ２０は、カメラ１０から取得したジョブステータス情報に基づいて、インデックス印刷の２部目に該当する第３ページの先頭から印刷を再開する。
【００７１】
このように構成される本実施の形態によれば、周辺機器からプリンタに直接画像データを送信して自動的に印刷させるＤＰＯＦ印刷においても、最新の印刷状態をカメラ側で把握することができる。従って、印刷が中断した場合でも、中断したページから印刷を再開させることができ、印刷用紙やインク等の無駄な消耗を防止することができる。また、既印刷分は印刷しないため、最終的な印刷結果をユーザが入手するまでの待ち時間を短縮することができる。
【００７２】
また、カメラ１０側でジョブステータス情報を保持するため、プリンタ２０の印刷エラー状態が長期化した場合でも、カメラ１０を同一の他のプリンタや同種のプリンタに接続し直すだけで、残りの印刷を再開することができる。従って、特に複数の同種プリンタを備える印刷ラボなどで効果を発揮する。
【００７３】
さらに、ジョブステータス情報は印刷再開に必要な最小限の情報から構成されており、また、画像ファイルへのパス情報の一部からファイルＩＤを生成してデータ量を低減しており、かつ、最新のジョブステータス情報のみを保持するため、カメラ側でのジョブステータス保持負担を少なくすることができる。
【００７４】
また、本実施の形態では、画像ファイル及びＤＰＯＦスクリプトに加えて、ジョブステータス情報も記録媒体１２に記憶させるため、仮に、印刷中断中にカメラ１０が故障した場合等でも、記録媒体１２を他の同種カメラに装着することにより、中断されたページから印刷を再開することができる。
【００７５】
また、印刷ジョブデータ（ＤＰＯＦスクリプトファイル）は、印刷すべきファイル（オブジェクト）の格納場所をテキストコードによって記述しており、さらに、印刷再開時にはファイル単位で指定できるようになっているので、プリンタは、ＵＳＢケーブルの脱落等で印刷ジョブをリセットした後でも、テキストコードを解釈するだけでオブジェクトの切れ目を容易に把握することができ、ページ単位で印刷を再開することができる。
【００７６】
これに対し、例えば、ページ記述言語で印刷ジョブデータが記述されている場合、ページの構成と印刷すべきオブジェクトのデータとが一体化しているため、プリンタは、印刷ジョブデータを解釈して１ページ分の印刷内容を把握しなければ、オブジェクトの切れ目を把握することができない。本発明では、指定された印刷再開位置までテキストコードを読み飛ばしてオブジェクトの切れ目を簡単に求めることができ、不要な処理を省くことができる。
【００７７】
２．第２の実施の形態
【００７８】
次に、図１０は、本発明の第２の実施の形態に係るプリンタ側のＤＰＯＦ印刷処理を示すフローチャートである。本実施の形態の特徴は、ページの最後に印刷される画像ファイルの印刷を完了した後で、カメラ１０側に保持されるジョブステータス情報を更新させる点にある。
【００７９】
即ち、ある画像ファイルの印刷を終えた後（Ｓ３０：ＹＥＳ）、そのページの印刷が完了したか否かを判定する（Ｓ５１）。ページの印刷が完了した場合は（Ｓ５１：ＹＥＳ）、カメラ１０側で保持されるジョブステータス情報を更新させ（Ｓ５２）、次に印刷すべき新たな画像ファイルに移る（Ｓ５３）。
【００８０】
３．第３の実施の形態
【００８１】
図１１は、第３の実施の形態に係るＤＰＯＦスクリプトファイルの例を示す。本実施の形態では、ＤＰＯＦスクリプトファイルの中に、「ＲＥ−ＰＲＩＮＴ」で示すようにジョブステータス情報を記述するようになっている。なお、通常印刷の場合は、ジョブステータス情報中の各パラメータの値に「０００」を設定することにより、通常の印刷であることを宣言することができる。
【００８２】
また、ジョブステータス情報とＤＰＯＦスクリプトファイルとをそれぞれ個別に作成して対応づける前記各実施の形態においても、通常印刷時にはジョブステータス情報のパラメータの値に特別なコード（０００等）を設定することにより、通常印刷である旨をプリンタに通知することができる。これにより、正常印刷モード及び印刷再開モードのいずれの場合も、カメラ１０からプリンタ２０に送信するデータの種類と構造を共通にすることができ、プログラム構造を簡素化することができる。
【００８３】
なお、上述した本発明の各実施の形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなく、他の様々な態様で本発明を実施できる。
【００８４】
例えば、カメラ１０とプリンタ２０とは、ＵＳＢ接続される必要はない。例えば、ＩＥＥＥ１３９４インターフェースや無線ＬＡＮあるいは赤外線等を介してデータ通信を行うものであってもよい。
【００８５】
また、印刷のたびにカメラの記録媒体から画像ファイルを取得するのではなく、プリンタの記憶部に印刷対象となっている全ての画像ファイルを先に保存させるようにしてもよい。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係る印刷システムの全体概要を示すブロック図である。
【図２】記録媒体の記憶構造を示す説明図である。
【図３】ＤＰＯＦ印刷の指定方法（ａ）及びそれにより作成されるＤＰＯＦスクリプトファイルの構造（ｂ）を示す説明図である。
【図４】ＤＰＯＦスクリプトファイルの具体例を示す説明図である。
【図５】ＤＰＯＦ印刷が正常に行われた場合の印刷結果を示す模式図である。
【図６】カメラ側で実行されるＤＰＯＦ印刷指示処理を示すフローチャートである。
【図７】プリンタ側で実行されるＤＰＯＦ印刷処理を示すフローチャートである。
【図８】プリンタ側で実行される印刷エラー監視処理を示すフローチャートである。
【図９】印刷再開モードでの印刷結果を示す模式図である。
【図１０】本発明の第２の実施の形態に係るＤＰＯＦ印刷処理のフローチャートである。
【図１１】本発明の第３の実施の形態に係るＤＰＯＦスクリプトファイルの具体例を示す説明図である。
【符号の説明】
１０　ディジタルカメラ
１１　撮像部
１２　記録媒体
１３　制御部
１４　ユーザインターフェース
１５　ＵＳＢデバイスコントローラ
１６　記憶部
２０　プリンタ
２１　印刷部
２２　記憶部
２３　制御部
２４　ユーザインターフェース
２５　ＵＳＢホストコントローラ
Ｄ１　画像ファイル
Ｄ２　ＤＰＯＦスクリプトファイル
Ｄ３　ジョブステータス情報
【図１】
2004086664.tif 000003
【図２】
2004086664.tif 000004
【図３】
2004086664.tif 000005
【図４】
2004086664.tif 000006
【図５】
2004086664.tif 000007
【図６】
2004086664.tif 000008
【図７】
2004086664.tif 000009
【図８】
2004086664.tif 000010
【図９】
2004086664.tif 000011
【図１０】
2004086664.tif 000012
【図１１】
2004086664.tif 000013