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