(57)【要約】【課題】中間データの変換とラスタライズとを並列処理しつつ、いずれの印刷（ＰＤＬ）データでエラーが生じたかを的確に表示することができる画像形成装置を提供すること。【解決手段】画像形成装置は、第１記憶手段に格納されたフォーマットの異なる複数の印刷データを共通フォーマットの中間データ（中間コード）に変換する変換処理を、フォーマット毎に行い、変換処理と並列に中間データからページデータを作成し、作成されたページデータによってインデックス印刷を行う。また、中間データからページデータを作成可能な、中間データにおける作成可能区切りを第２記憶手段（２３）に記憶し、変換処理中にエラーが発生した場合、エラーが発生した印刷データにおける、少なくとも作成可能区切り（「６００」）以降に位置する中間データを代替データに置換する。【選択図】図６
2010105388.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶手段に格納されたフォーマットの異なる複数の印刷データを共通フォーマットの中間データに変換する変換処理を、フォーマット毎に行う変換手段と、
前記変換処理と並列に、前記中間データからページデータを作成する作成手段と、
作成されたページデータによってインデックス印刷を行う印刷手段と、
前記作成手段が前記中間データから前記ページデータを作成可能な、前記中間データにおける作成可能区切りを記憶する第２記憶手段と、
前記変換処理中にエラーが発生した場合、エラーが発生した前記印刷データにおける、少なくとも前記作成可能区切り以降に位置する前記中間データを代替データに置換する置換手段と、
を備えた画像形成装置。
【請求項２】
請求項１に記載の画像形成装置において、
前記変換手段によって、前記印刷データが次の作成可能区切りまで前記中間データに変換されると、前記作成可能区切りを前記次の作成可能区切りに更新する更新手段をさらに備える、画像形成装置。
【請求項３】
請求項２に記載の画像形成装置において、
前記第２記憶手段は、更新されていく複数の作成可能区切りを順次記憶し、
前記作成手段は、前記複数の作成可能区切りに応じて順次、前記ページデータを作成し、かつ、作成された前記ページデータに対応する前記作成可能区切りを作成済み区切りとして前記第２記憶手段に記憶させ、
前記置換手段は、前記作成済み区切りに対応する前記作成可能区切りの次に記憶された前記作成可能区切り以降の前記中間データを、前記代替データに置換する、画像形成装置。
【請求項４】
請求項２に記載の画像形成装置において、
前記第２記憶手段は、更新されていく複数の作成可能区切りを順次記憶していき、
前記置換手段は、記憶された複数の前記作成可能区切りのうち最後に記憶された作成可能区切り以降の前記中間データを前記代替データに置換する、画像形成装置。
【請求項５】
請求項２に記載の画像形成装置において、
前記変換手段は、前記変換処理中にエラーが発生した場合、エラーフラグを前記第２記憶手段に記憶させ、
前記作成手段は、作成可能区切りまでの前記中間データから前記ページデータを作成し、
前記置換手段は、前記作成手段による作成可能区切りまでの処理が完了した後に前記エラーフラグの有無を判断し、前記エラーフラグが有りと判断した場合に前記置換処理を実行する、画像形成装置。
【請求項６】
請求項３に記載の画像形成装置において、
前記変換手段は、前記変換処理中にエラーが発生した場合、エラーフラグを前記第２記憶手段に記憶させ、
前記作成手段は、各作成可能区切りに応じて前記中間データから前記ページデータを作成し、
前記置換手段は、前記作成手段による各作成可能区切りに応じた前記ページデータの作成毎に、前記エラーフラグの有無を判断し、前記エラーフラグが有りと判断した場合に前記置換処理を実行する、画像形成装置。
【請求項７】
請求項１〜６のいずれか一項に記載の画像形成装置において、
前記代替データは、前記ページデータを視認可能とする透明データである、画像形成装置。
【請求項８】
請求項１〜３、５、６のいずれか一項に記載の画像形成装置において、
前記代替データは、エラーが発生した前記印刷データによるインデックス画像の印刷領域全体を上書きするデータである、画像形成装置。
【請求項９】
請求項１〜８のいずれか一項に記載の画像形成装置において、
前記代替データは、エラー発生を示すデータである、画像形成装置。
【請求項１０】
請求項１〜９のいずれか一項に記載の画像形成装置において、
前記作成処理済みの前記中間データを破棄する破棄手段を備える、画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像形成装置に関し、詳しくは、画像形成装置によるインデックス印刷の際のエラー処理に関する。
【背景技術】
【０００２】
例えば、特許文献１には、プリンタ装置（画像形成装置）の印刷処理において、印刷ファイル中に展開不能なデータがあった場合に、展開不能なデータを代替データに差替えて印刷処理を継続する技術が開示されている。
【０００３】
また、複数の印刷データを１つの出力画像として印刷するインデックス印刷において、フォーマットの異なる複数のＰＤＬ（Page Description Language：ページ記述言語）デ
ータをインデックス印刷する場合、各ＰＤＬフォーマットに対応したＰＤＬラスタライザを複数起動してページデータを作成できないので、各ＰＤＬデータをまとめて処理できる拡張ＰＤＬラスタライザを使用する方法があった。前記方法では、現在の拡張ＰＤＬラスタライザがサポートしていないＰＤＬフォーマットが増える度に拡張ＰＤＬラスタライザを更新する手間がかかる。そのため、各ＰＤＬフォーマットに対応する複数のＰＤＬラスタライザによって共通中間言語（中間データ）に変換し、中間データをラスタライズしてインデックス印刷する方法もあった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−３０２２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、中間データの変換途中でエラーが発生した場合、ラスタライズ処理を継続して行う方法を用いて、該当するＰＤＬデータに対するエラー表示を施すためには、変換途中の中間データを破棄して代替データに差替えてラスタライズすることとなり、その場合は中間データの変換とラスタライズとを並列処理することができなかった。
【０００６】
本発明は、上記のような事情に基づいて完成されたものであって、その目的は、中間データの変換とラスタライズとを並列処理しつつ、いずれの印刷（ＰＤＬ）データでエラーが生じたかを的確に表示することのできる画像形成装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための手段として、第１の発明に係る画像形成装置は、
第１記憶手段に格納されたフォーマットの異なる複数の印刷データを共通フォーマットの中間データに変換する変換処理を、フォーマット毎に行う変換手段と、前記変換処理と並列に、前記中間データからページデータを作成する作成手段と、作成されたページデータによってインデックス印刷を行う印刷手段と、前記作成手段が前記中間データから前記ページデータを作成可能な、前記中間データにおける作成可能区切りを記憶する第２記憶手段と、前記変換処理中にエラーが発生した場合、エラーが発生した前記印刷データにおける、少なくとも前記作成可能区切り以降に位置する前記中間データを代替データに置換する置換手段とを備える。
【０００８】
本構成によれば、変換処理と作成処理とを並列処理しつつ、エラーを生じた印刷データに対する縮小画像がインデックス印刷される部分に代替データによって印刷を行うことが
できる。少なくとも作成可能区切り以降の、エラーにより中途半端に変換された中間データを代替データに置換できるので、ページデータの作成処理でエラーになることがなく、インデックス印刷処理が中断されることを防止できる。したがって、中間データの変換とラスタライズとを並列処理しつつ、いずれの印刷（ＰＤＬ）データでエラーが生じたかを的確に表示することができる。
【０００９】
第２の発明は、第１の発明の画像形成装置において、前記変換手段によって、前記印刷データが次の作成可能区切りまで前記中間データに変換されると、前記作成可能区切りを、前記次の作成可能区切りに更新する更新手段をさらに備える。
【００１０】
本構成によれば、作成可能区切りの小まめな更新によって、代替データに置換される中間データが少なくなる。これによりエラー発生した印刷データに対して少しでも多くの中間データをページデータとして作成することができる。
【００１１】
第３の発明は、第２の発明の画像形成装置において、前記第２記憶手段は、更新されていく複数の作成可能区切りを順次記憶し、前記作成手段は、前記複数の作成可能区切りに応じて順次、前記ページデータを作成し、かつ、作成された前記ページデータに対応する前記作成可能区切りを作成済み区切りとして前記第２記憶手段に記憶させ、前記置換手段は、前記作成済み区切りに対応する前記作成可能区切りの次に記憶された前記作成可能区切り以降の前記中間データを、前記代替データに置換する。
【００１２】
本構成によれば、変換処理中にエラーが発生した場合において、処理すべき残りの中間データを減らすことでページデータの作成処理による負荷を低減でき、印字処理速度が向上する。
【００１３】
第４の発明は、第２の発明の画像形成装置において、前記第２記憶手段は、更新されていく複数の作成可能区切りを順次記憶していき、前記置換手段は、記憶された複数の前記作成可能区切りのうち最後に記憶された作成可能区切り以降の、前記中間データを前記代替データに置換する。
【００１４】
本構成によれば、複数の作成可能区切りを順次記憶する方式においても、エラー発生した印刷データに対して少しでも多くの中間データをページデータとして作成することができる。
【００１５】
第５の発明は、第２の発明の画像形成装置において、前記変換手段は、前記変換処理中にエラーが発生した場合、エラーフラグを前記第２記憶手段に記憶させ、前記作成手段は、作成可能区切りまでの前記中間データから前記ページデータを作成し、前記置換手段は、前記作成手段による作成可能区切りまでの処理が完了した後に前記エラーフラグの有無を判断し、前記エラーフラグが有りと判断した場合に前記置換処理を実行する。
【００１６】
本構成によれば、ページデータを作成する前記作成手段は、小まめにページデータの作成処理を行うことができ、また、エラーフラグに基づいて変換処理中にエラーが発生したことを認識できる。そのため、変換処理と作成処理との並列処理時間差が低減され、ひいては印字処理速度が向上する。さらに、複数の印刷データの代替データが共通である場合、エラーの発生以降、共通の代替データによってページデータを作成すればよく、エラー処理に係る制御を簡易化することができる。
【００１７】
第６の発明は、第３の発明の画像形成装置において、前記変換手段は、前記変換処理中にエラーが発生した場合、エラーフラグを前記第２記憶手段に記憶させ、前記作成手段は、各作成可能区切りに応じて前記中間データから前記ページデータを作成し、前記置換手
段は、前記作成手段による各作成可能区切りに応じた前記ページデータの作成毎に、前記エラーフラグの有無を判断し、前記エラーフラグが有りと判断した場合に前記置換処理を実行する。
本構成によれば、第５の発明と同様の効果に加えて、処理すべき中間データを減らすことで、ページデータ作成処理による負荷を軽減できる。
【００１８】
第７の発明は、第１〜第６の発明のいずれか一つの画像形成装置において、前記代替データは、前記ページデータを視認可能とする透明データである。
本構成によれば、代替データが透明データであるために、エラー発生前までに作成された中間データが代替データによって上書きされることなく、用紙等の被記録媒体上に表現できる。
【００１９】
第８の発明は、第１〜第３、第５、第６の発明のいずれか一つの画像形成装置において、前記代替データは、エラーが発生した前記印刷データによるインデックス画像の印刷領域全体を上書きするデータである。
本構成によれば、変換処理のエラー発生のタイミングに依存することなく、同じ出力結果を得ることが可能となる。
【００２０】
第９の発明は、第１〜第８の発明のいずれか一つの画像形成装置において、前記代替データは、エラー発生を示すデータである。
本構成によれば、印刷データ単位でエラー印字できるため、複数の印刷データが印刷される印刷物において、どの印刷データでエラーが発生したかを識別し易い。
【００２１】
第１０の発明は、第１〜第９の発明のいずれか一つの画像形成装置において、前記作成処理済みの前記中間データを破棄する破棄手段を備える。
本構成によれば、第２記憶手段の使用量を低減できる。
【発明の効果】
【００２２】
本発明の画像形成装置によれば、中間データの変換とページデータの作成（ラスタライズ）とを並列処理しつつ、いずれの印刷（ＰＤＬ）データでエラーが生じたかを的確に表示することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態に係るプリンタのハードウエア構成を示す概略的なブロック図
【図２】インデックス印刷の流れを示す説明図
【図３】内部メモリ内のデータ構成を示す説明図
【図４】インデックス印刷の全体的な流れを示すフローチャート
【図５】中間コード処理における各処理を示すフローチャート
【図６】中間コード処理においてエラーが発生した場合の内部メモリ内のデータ構成を示す説明図
【図７】ラスタライズ処理の各処理を示すフローチャート
【図８】インデックス印刷例を示す模式図
【図９】中間コード処理においてエラーが発生した場合の、別の内部メモリ内のデータ構成を示す説明図
【図１０】別のインデックス印刷例を示す模式図
【図１１】別のインデックス印刷例を示す模式図
【図１２】別のインデックス印刷例を示す模式図
【図１３】別のラスタライズ処理の各処理を示すフローチャート
【発明を実施するための形態】
【００２４】
本発明の実施形態を、図１〜図１２を参照しつつ説明する。
１．プリンタの全体構成
本実施形態のプリンタ１０（「画像形成装置」の一例）は、ホストコンピュータ（図示せず）などから印刷データを受信して印刷するＰＣプリント機能と、ＵＳＢメモリ１７（「第１記憶手段」の一例）などの外部メモリ内に格納された画像データを直接読み込んで印刷するダイレクトプリント機能とを備えている。
【００２５】
図１は、プリンタ１０のハードウエア構成を示す概略的なブロック図である。プリンタ１０は、用紙１９（図８等参照）への印刷動作を行う印刷部１１、表示部１２、ＵＳＢホストＩ／Ｆ１３、制御部１４、ユーザによる操作が行われる操作部１５、ホストＩ／Ｆ１６、および内部メモリ（「第２記憶手段」の一例）２０を備える。
【００２６】
内部メモリ２０は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成され、内部メモリ２０には、プリンタ１０全体の動作を制御するプログラムなどの他、後述する代替データが格納されている。また、内部メモリ２０は、印字配置情報２１、中間コード管理テーブル２２、ラスタライズ可能位置テーブル２３、中間コード領域２４、ページメモリ２５等を含む。
【００２７】
制御部１４は、ＣＰＵ（図示せず）を含み、内部メモリ２０に格納されたプログラムに基づいて印刷部１１や表示部１２の動作を制御する。また、プリンタ１０は、ホストＩ／Ｆ１６を介してホストコンピュータとのデータ通信が可能である。また、プリンタ１０には、ＵＳＢメモリ１７が着脱可能に装着され、ＵＳＢメモリ１７内の情報、例えば、フォーマットの異なる複数のＰＤＬデータ（「複数の印刷データ」に相当）がＵＳＢホストＩ／Ｆ１３を介して制御部１４に読み込まれる。なお、ホストＩ／Ｆ１６に代えてネットワークＩ／Ｆを備え、プリンタ１０とＬＡＮ回線およびインターネット回線とを接続するようにしてもよい。
【００２８】
ＵＳＢメモリ１７には、様々な形式のファイルが格納されており、中にはプリンタ１０では展開処理（ラスタライズ）ができない未対応フォーマットのデータ（例えば音声データ、動画データ、ＪＰＥＧ（Joint Photographic Experts Group）２０００形式のデータなど）を含むファイルも存在し得る。また、破損してプリンタ１０でラスタライズができないデータを含むファイルも存在し得る。
【００２９】
２．インデックス印刷処理
次に、本実施形態によるインデックス印刷処理について、図２〜図１２を参照して説明する。図２は、本実施形態において想定されるインデックス印刷の流れを示す説明図である。図３は、内部メモリ２０内のデータ構成を示す説明図である。
【００３０】
図２に示されるように、本実施形態では、１ページにインデックス印刷されるフォーマットの異なる複数の印刷データとして、ＰＤＦ(Portable Document Format) 形式のファ
イル（以下、単に「ＰＤＦファイル」）、ＸＰＳ(Xml Paper Specification) 形式のファイル（以下、単に「ＸＰＳファイル」）、ＴＩＦ(Tagged Image File) 形式のファイル（以下、単にＴＩＦファイル）、およびＪＰＧ形式のファイル（以下、単に「ＪＰＧファイル」）の４つのＰＤＬファイルが、便宜的に想定される。
【００３１】
これら４つのフォーマットの異なるＰＤＬファイルは、制御部（本発明における「変換手段」の一例）１４によって、まず、共通フォーマットの中間コード（「中間データ」の一例）に、ＰＤＬフォーマット毎に変換される。中間コードは、内部メモリ２０内の中間コード領域２４に格納される。なお、共通フォーマットの中間データは、特定のＰＤＬフ
ォーマットであってもよい。
次いで、各ＰＤＬファイルに対する中間コードが制御部（本発明における「作成手段」の一例）１４によってラスタライズされ、ラスタライズされたビットマップデータが内部メモリ２０内のベージメモリ２５に格納される。
【００３２】
また、図３に示されるように、中間コード管理テーブル２２には、「中間コードアドレス」、「ラスタライズ可能位置テーブルアドレス」、および「ラスタライズ済み位置」が、ＰＤＬファイル毎に格納される。
【００３３】
ここで、「中間コードアドレス」は、中間コード領域２４の先頭アドレスであり、ＰＤＦファイル用の中間コードアドレスは、例えば「１００」とされる。「ラスタライズ可能位置テーブルアドレス」は、ラスタライズが可能な中間コードの位置（アドレス）（本発明における「作成可能区切り」に相当）を格納するラスタライズ可能位置テーブル２３の先頭アドレスである。ここでは、ラスタライズ可能位置テーブルアドレス（ＰＤＦファイル用）は、例えば「５０」とされる。
【００３４】
図３のラスタライズ可能位置テーブル２３においては、ラスタライズ可能な中間コードのアドレスは、「２００」、「３００」、および「４００」として例示されている。すなわち、本実施形態においては、ＰＤＬファイルから中間コードへの変換は、１つのＰＤＬファイル内のコマンド単位で行われる。そして、それぞれのコマンド単位で中間データが作成された後、すなわち図６における文字Ａ，Ｂ，Ｃ，・・・の中間データがそれぞれ作成される度に、ラスタライズ可能アドレスがラスタライズ可能位置テーブル２３に格納される。なお、図３のラスタライズ可能位置テーブル２３には、更新された複数のラスタライズ可能アドレスを格納する例が示されているが、これに限定されない。１つのＰＤＬファイルに対して１つのラスタライズ可能アドレスが格納されるようにし、当該１つのラスタライズ可能アドレスが順次更新されていくようにしてもよい。この場合、ラスタライザは、ラスタライズ済み位置の情報を内部に保持している。ラスタライズ済み位置は、代替コードをどのタイミングで挿入するか細かく制御する必要がある場合には、どこまでラスタライズが完了しているかを中間コード作成処理が参照できるようにラスタライザ外部に公開されるべきだが、代替コードをどのタイミングで挿入するか細かく制御する必要がなければ、ラスタライザ外部への公開を必要としないためである。
【００３５】
また、「ラスタライズ済み位置」は、ラスタライズが終了した中間コード領域２４のアドレスであり、ラスタライズ可能位置テーブル２３に格納されたラスタライズ可能アドレスに対応したアドレス値を有する。すなわち、本実施形態においては、中間コードへの変換処理と並行して、中間コードのラスタライズは、各ラスタライズ可能アドレスによって区切られた所定量の中間コード毎に順次、行われる。図３においては、中間コードへの変換処理が中間コード領域２４のアドレス「４５０」まで終了し、そのとき、ラスタライズ処理が、同アドレス「３５０」まで終了している例が示される。このとき、「ラスタライズ済み位置」には、同アドレス「３００」が格納されている。
【００３６】
２−１．インデックス印刷の全体的な流れ
次に、図４のフローチャートを参照して、インデックス印刷処理の全体の流れを説明する。インデックス印刷の各処理は、例えば、内部メモリ２０のＲＯＭに格納されたプログラムにしたがって制御部（「変換手段」、「作成手段」、「置換手段」、「破棄手段」の一例）１４、詳しくは、そのＣＰＵによって実行される。プリンタ１０にＵＳＢメモリ１７を装着した状態で、操作部１５での所定の操作によってインデックス印刷機能が指定され、インデックス印刷に係る指定事項、例えば、インデックス印刷するファイル範囲等が入力されると、制御部１４は、図４に示す各処理を実行する。
【００３７】
図４のステップＳ１１０において、制御部１４は、まず、インデックス印刷に係る指定事項にしたがって、最初の１ページに配置する対応ＰＤＬリストを作成する。次いで、ステップＳ１２０において、同指定事項にしたがって、各ＰＤＬファイルの配置位置と大きさとを算出し、それらを印字配置情報２１として内部メモリ２０に格納する（図３参照）。
【００３８】
次いで、ステップＳ１３０において、制御部１４は、処理対象のＰＤＬファイルを選択する。ここでは、図３の４つのＰＤＬファイルの中から、最初に、例えばＰＤＦファイルを選択する。そして、ステップＳ１４０において、ＰＤＦファイルを共通の中間コードに変換するための変換処理モジュールを選択する。なお、ここでは、各ＰＤＬファイルに対応した変換処理モジュールが、処理プログラム（ソフトウェア）として内部メモリ２０に格納されているとする。
【００３９】
次いで、ステップＳ１５０において、制御部（「変換手段」、「作成手段」）１４は、選択された変換処理モジュールにしたがったＰＤＦファイルの中間コードへの変換処理（図５参照）と、ラスタライザ（ソフトウェア）にしたがった中間コードのラスタライズ処理（図７参照）とを並行して行う。ＰＤＦファイルに関する変換処理およびラスタライズ処理が終了すると、ステップＳ１３０に戻って次に処理するＰＤＬファイルを選択する（ステップＳ１６０において「ＮＯ」判定）。
【００４０】
そして、全てのＰＤＬファイルに関する変換処理およびラスタライズ処理が終了すると（ステップＳ１６０において「ＹＥＳ」判定）、ステップＳ１７０において、制御部１４は印刷部１１に印刷指示をして、最初の１ページを縮小画像によってインデックス印刷させる。
【００４１】
最初の１ページに関するインデックス印刷が終了すると、全ページのインデックス印刷が完了していない場合には（ステップＳ１８０において「ＮＯ」判定）、ステップＳ１１０に戻って次のページに関する上記処理を行う。そして、全てのページのインデックス印刷が終了すると（ステップＳ１８０において「ＹＥＳ」判定）、インデックス印刷の処理を終了する。
【００４２】
２−２．変換（中間コード）処理とエラー処理
次に、図５および図６を参照して、上記中間コード処理と、中間コード処理の際にエラーが発生した場合のエラー処理について詳述する。図５は中間コード処理の各処理を示すフローチャートであり、図６は、中間コード処理においてエラーが発生した場合の内部メモリ２０内のデータ構成を示す説明図である。なお、中間コード処理およびエラー処理は、図４のステップＳ１５０において、制御部（「変換手段」、「置換手段」）１４によって行われる。
【００４３】
図５のステップＳ２１０において、制御部１４は、コマンド解析を行い、次いで、ステップＳ２２０において、解析されたコマンドに対して共通フォーマットの中間コードが作成され、作成された中間コードは順次、中間コード領域２４に格納される。中間コード作成処理が正常に行われた場合には（ステップＳ２３０において「ＮＯ」判定）、ステップＳ２４０において、中間コード領域２４に格納された中間コードの最後の位置（中間コード領域のアドレス）がラスタライズ可能位置として、ラスタライズ可能位置テーブル２３に記憶される。例えば、中間コード領域２４のアドレス「２００」が記憶される（図６参照）。
【００４４】
そして、ＰＤＦファイルの全コマンドによる中間コードへの変換されていない場合には（ステップＳ２５０において「ＮＯ」判定）、ステップＳ２１０に戻って、次のコマンド
の中間データへの変換が行われ、データ変換中にエラーが発生しなかった場合には、ステップＳ２４０において、ラスタライズ可能位置として、中間コード領域のアドレス「３００」が、ラスタライズ可能位置テーブル２３に記憶される（図６参照）。このように、コマンド単位で中間コード処理が行われ、ラスタライズ可能アドレスが順次、ラスタライズ可能位置テーブル２３に格納される。
なお、ステップＳ２５０における「ＮＯ」判定時において、ステップＳ２１０に戻ってコマンド解析を行う必要がない場合、例えば、コマンドによる指定事項（例えば、フォントおよび色等）が同一である場合には、ステップＳ２２０に戻るようにしてもよい。
【００４５】
一方、中間コードへのデータ変換中に、例えばテータ破損等のエラーが検出された場合には、（ステップＳ２３０において「ＹＥＳ」判定）、ステップＳ２３５において、ＰＤＦファイルから変換された中間コード（データ）が代替データに置き換えられる。代替データは、例えば、内部メモリ２０のＲＯＭに格納されている。
【００４６】
例えば、図６に示すように、中間コード領域２４のアドレス「６００」まで正常にデータ変換が行われ、次のコマンドから中間データへの変換途中でエラーが発生したとする。このとき、例えば、中間コード領域２４のアドレス「６５０」まで中間コードが格納されるが、エラー発生により、エラー発生したコマンドに対するラスタライズ可能アドレスはラスタライズ可能位置テーブル２３に記憶されることはない。従って、ラスタライズ可能位置テーブル２３に記憶された複数のラスタライズ可能アドレス（作成可能区切り）のうち最後に記憶されたアドレスは、「６００」となる。
【００４７】
このとき、制御部１４は、中間コード領域２４のアドレス「６００」以降を、代替データとする。詳しくは、代替データの中間コードとする。すなわち、少なくとも、ラスタライズ可能アドレス（作成可能区切り）「６００」以降の、ＰＤＦファイルの中間コード（中間データ）は代替データに置換される。具体的には、中間コード領域２４のアドレス「６０１」からアドレス「６５０」までのＰＤＦファイルの中間コードは、代替データの中間コードに置換される。そして、ステップＳ２４５において、代替データの最終位置を示すアドレスとして、例えばアドレス「８００」を、ラスタライズ可能位置テーブル２３に記憶し、制御部１４は本処理を終了する。
【００４８】
２−３．ラスタライズ処理
次に、図７のフローチャートを参照して、中間コードをビットマットデータに展開するラスタライズ処理について詳述する。なお、ラスタライズ処理は、図４のステップＳ１５０において、制御部（「作成手段」、「破棄手段」の一例）１４によって、中間コード処理と並行して行われる。
【００４９】
図７のステップＳ３１０において、制御部１４は、まず、中間コード管理テーブル２２に中間コード位置（アドレス）が記憶されているかどうかを判定する（図６参照）。すなわち、いずれかのＰＤＬファイルの中間コード処理が要求され、中間コードが中間コード領域２４に記憶されたかどうかを判定する。中間コード処理が記憶されていない場合は（ステップＳ３１０において「ＮＯ」判定）、ラスタライズするデータがまだないため、一旦、ラスタライズ処理を終了する。
【００５０】
一方、中間コード処理が記憶されている場合には（ステップＳ３１０において「ＹＥＳ」判定）、ステップＳ３２０において、制御部１４は、ラスタライズ可能位置テーブル２３に、既にラスタライズ可能位置（アドレス）が記憶されているかどうかを判定する（図６参照）。まだラスタライズ可能位置が記憶されていない場合には（ステップＳ３２０において「ＮＯ」判定）、まだ中間コード処理が最初のコマンドに対する中間コード変換処理が終了していないため、一旦、ラスタライズ処理を終了する。
【００５１】
一方、ラスタライズ可能位置が記憶されている場合は（ステップＳ３２０において「ＹＥＳ」判定）、ステップＳ３３０の最初の処理においては、制御部１４は、ラスタライザ（ソフトウェア）を起動し、ラスタライザにしたがって最初のラスタライズ可能位置まで中間コードをラスタライズする。なお、二回目以降の処理においては、前回のラスタライズ済み位置から次のラスタライズ可能位置までラスタライズする。また、ラスタライズされたデータは、ページメモリ２５（図２参照）に格納される。すなわち、制御部（作成手段）１４は、各ラスタライズ可能位置（作成可能区切り）に応じて中間データからページデータを作成する。
【００５２】
また、制御部（破棄手段）１４は、ラスタライズ済み中間コード（中間データ）を中間コード領域２４から破棄する。すなわち、ラスタライズ済み中間データを中間コード領域２４から消去する。そのため、中間コード領域２４は、連続した領域である必要はない。これによって、内部メモリ２０内における中間コード領域２４を小さくでき、内部メモリ２０の容量を低減できる。なお、ラスタライズ済み中間コードの破棄処理は、省略されてもよい。
【００５３】
そして、ステップＳ３４０において、ラスタライズ済み位置（アドレス）を、今回処理したラスタライズ可能位置（アドレス）に更新する。すなわち、中間コード管理テーブル２２の「ラスタライズ済み位置」を更新する。
【００５４】
１つのＰＤＬファイル分、すなわち、最初のＰＤＬファイルであるＰＤＦファイルのラスタライズが終了していない場合には（ステップＳ３５０において「ＮＯ」判定）、ステップＳ３２０に戻る。そして、ＰＤＦファイルのラスタライズが終了するまで、ラスタライズ可能位置（作成可能区切り）単位のラスタライズを行う。ＰＤＦファイルのラスタライズが終了した場合には（ステップＳ３５０において「ＹＥＳ」判定）、ラスタライズ処理を一旦終了して、図４のステップＳ１６０に戻る。
【００５５】
２−３．中間コード処理とラスタライズ処理との並列処理
次に、図６および図８の例示を参照して、上記中間コード処理とラスタライズ処理との並列処理を説明する。なお、中間コード処理とラスタライズ処理とは並列処理されるが、タイミング的な同期は取られていない。図６においては、中間コード領域のアドレス「６５０」において中間コード処理（変換処理）に係るエラーが発生し、そのとき、ラスタライズ処理は中間コード領域のアドレス「３５０」まで終了していた場合が想定されている。このとき、中間コード管理テーブル２２の「ラスタライズ済み位置」は「３００」である。
【００５６】
また、図６に示されるように、ラスタライズ可能位置テーブル２３には、ラスタライズ可能位置（作成可能区切り）として中間コード領域２４のアドレス「２００」、「３００」、「４００」、「５００」、および「６００」が記憶されている。このとき、ラスタライズ処理は、引き続き中間コード領域アドレス「６００」まで行われ、アドレス「６００」までの区切りに対応して例示された印字用データ、「Ａ」、「Ｂ」、「Ｃ」、「Ｄ」、「Ｅ」が、印字用紙１９のＰＤＦファイルに対応したインデックス印刷場所に印字される（図８参照）。
【００５７】
また、ラスタライズ可能位置テーブル２３に記憶されたラスタライズ可能アドレスのうち最後に記憶されたアドレス「６００」以降の中間コードは、所定の代替コードに置換される。ここでは、所定の代替コードによる印字は、例えば、「エラー」とされる（図８参照）。
【００５８】
すなわち、図６および図８に示される例においては、中間コード処理とラスタライズ処理とが並列処理される場合において、中間コード処理中にエラーが発生した場合、制御部（置換手段）１４は、ラスタライズ可能位置テーブル２３に最後に記憶されたラスタライズ可能位置（作成可能区切り）以降の中間データ（中間コード）を代替データに置換する。そのため、エラー発生したＰＤＬファイルに対して少しでも多くの内容を印刷できる（図８参照）。
【００５９】
また、中間コード処理とラスタライズ処理とを並列処理しつつ、エラーを生じたＰＤＬファイル（印刷データ）に対する縮小画像がインデックス印刷される部分に代替データによってエラー表示を行うことができる。また、少なくともラスタライズ可能区切り（中間コード領域２４のアドレス「６００」）以降の中間データであって、エラーにより中途半端に変換された中間データを、代替データに置換できる。そのため、ページデータの作成処理（ラスタライズ処理）においてエラーになることがなく、インデックス印刷処理が中断されることを防止できる。
【００６０】
２−４．代替データへの他の置換態様
中間コード処理中にエラーが発生した場合の中間データの代替データへの置換態様は、図６および図８に示したものに限られない。
【００６１】
例えば、図９および図１０に示すように、エラーが発生した場合において、ラスタライズ済み位置（本発明における「作成済み区切り」に相当）の次に位置するラスタライズ可能位置以降の中間データを代替データに置換するようにしてもよい。例えば、図９に示されるように、中間コード領域２４のアドレス「６５０」においてエラーが発生した場合、ラスタライズ済みアドレスが「３５０」であったとすると、「ラスタライズ済み位置」の値は「３００」となる。
【００６２】
このとき、上記したように、「ラスタライズ済み位置（アドレス）」はラスタライズ可能位置（アドレス）に対応し、エラーが発生した場合において、「ラスタライズ済み位置」の次に位置するラスタライズ可能位置は、アドレス「４００」となる。そのため、この場合、図９に示されるように、ラスタライズ可能位置「４００」以降の中間コードが代替データに置換される。このとき、図１０に示されるように、印字用紙１９のＰＤＦファイルに対応したインデックス印刷場所には、「Ａ」、「Ｂ」、「Ｃ」および「エラー」が印字される。
【００６３】
この場合、変換処理中のエラー発生以降においては、エラー発生時に処理しているラスタライズ可能位置（アドレス「４００」）までしかラスタライズ処理は行われない。そのため、ラスタライズ処理すべき中間データ量を減らすことでページデータ作成処理による負荷を低減できる。
【００６４】
また、図１１に示すように、代替データは、エラー発生以前のページデータを視認可能とする透明データであるようにしてもよい。この場合、エラー発生に係るＰＤＬファイルにおける、エラー発生以前までのインデックス画像を視認可能に印刷できるとともに、代替データによって、例えば、「エラー」の表示を大きく印刷することができる。そのため、ユーザは、エラーが発生したファイルの内容を認識できるとともに、エラー認識が容易となる。
【００６５】
さらに、図１２に示すように、代替データは、エラーが発生したＰＤＬファイル（印刷データ）によるインデックス画像の印刷領域全体を上書きするデータであってもよい。この場合、中間コード処理（変換処理）のエラー発生のタイミングに依存することなく、同じ出力結果を得ることが可能となる。
【００６６】
なお、上記において代替データによって「エラー」表示を印字用紙１９に印字する例を示したが、代替データによって印字される表示は、「エラー」に限られない。例えば、「Unsupported Format」、「Error：01」等であってもよいし、その他、エラーを示す絵文
字であってもよい。また、上記代替データへの置換態様は、ＰＤＬファイルのフォーマット条件等に応じて適宜、選択されるようにすればよい。
【００６７】
３．本実施形態の効果
本実施形態によれば、中間コード処理（変換処理）とラスタライズ処理（作成処理）とを並列処理しつつ、エラーを生じたＰＤＬファイル（印刷データ）に対する縮小画像がインデックス印刷される部分に代替データによってエラー表示を行うことができる。また、少なくともラスタライズ可能位置（中間コード領域２４のアドレス）以降の中間データであって、エラーにより中途半端に変換された中間データを、代替データに置換できる。そのため、ページデータの作成処理（ラスタライズ処理）においてエラーになることがなく、インデックス印刷処理が中断されることを防止できる。すなわち、中間データの作成とページデータの作成（ラスタライズ）とを並列処理しつつ、いずれのＰＤＬデータでエラーを生じたかを的確に表示することができる。
【００６８】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【００６９】
（１）上記実施形態では、１つのＰＤＬファイル（印刷データ）において、ラスタライズ可能位置（作成可能区切り）の区切りとするためのデータ区切りが複数個設定され、１つのラスタライズ可能位置まで中間データに変換されると、ラスタライズ可能位置を、次のラスタライズ可能位置に更新する例を示したが、これに限られない。１つのＰＤＬファイルにおけるデータ区切りを一箇所設定し、ラスタライズ可能位置（作成可能区切り）を更新しないようにしてもよい。この場合、ラスタライズ可能位置は、１つのＰＤＬファイルにおける１つ目の中間データを作成した後に、ラスタライズ可能位置テーブル２３に記憶される。
【００７０】
この場合であっても、一箇所のラスタライズ可能位置（作成可能区切り）によって、中間コード処理とラスタライズ処理とを並列処理しつつ、中間コード処理においてエラーが生じた場合であっても、ページデータの作成処理（ラスタライズ処理）においてエラーになることがなく、インデックス印刷処理が中断されることを防止できる。
【００７１】
（２）上記実施形態では、中間コード処理においてエラーが発生した場合に、図５のステップＳ２３５に示されるように、中間コード処理において「代替データ置き換え」処理を行う例を示したが、図１３に示すように、ラスタライズ処理において「代替データ置き換え」処理を行うようにしてもよい。
【００７２】
この場合、制御部（変換手段）１４は、中間コード処理（変換処理）中にエラーが発生した場合、図５のステップＳ２３５において、代替データ置き換え処理を行わず、「エラーフラグ」を、例えば、中間コード管理テーブル２２に、「ラスタライズ済み位置」に代えて記憶させる処理を行うようにする。
【００７３】
そして、制御部（置換手段）１４は、図１３のステップＳ３２２において、各ラスタライズ可能位置（作成可能区切り）に応じたページデータの作成毎に、エラーフラグの有無を判断するようにする。エラーフラグが有りと判定した場合には（ステップＳ３２２において「ＹＥＳ」判定）、ステップＳ３３４において、代替データに置き換えられた中間デ
ータをラスタライズするのではなく、直接、代替データのラスタライズ処理を行うようにし、代替データのラスタライズ処理が完了すれば、図１３のラスタライズ処理を終了するようにすればよい。
【００７４】
なお、ステップＳ３２２においてエラーフラグが有りと判定した場合に、その後どのラスタライズ可能位置まで処理するかは、上記代替データへの置換態様に応じて適宜選択し、ファイルデータのラスタライズ後に代替データをラスタライズするようにすればよい。その際、中間コードを代替コード（代替データ）に変更することなく、所定の記憶場所にある代替コードを使用するようにすればよい。
【００７５】
この構成では、エラーフラグに基づいて、ページデータを作成するラスタライズ処理において中間コード処理中にエラーが発生したことを認識できる。そのため、変換処理と作成処理の並列処理時間差が低減され、ひいては印刷処理速度が向上する。さらに、複数の印刷データの代替データ（代替コード）が共通である場合、エラーの発生以降、別途記憶された共通の代替データによってページデータを作成すればよく、エラー処理に係る制御を簡易化することができる。また、処理すべき中間データを減らすことで、ページデータ作成処理による負荷を軽減できる。
【００７６】
（３）上記実施形態では、第１記憶手段としてＵＳＢメモリ１７を例に挙げて説明したが、これに限らず、コンパクトフラッシュ（登録商標）、スマートメディア（登録商標）、メモリスティック（商標）などのメモリカードであってもよい。また、このような外部メモリに限らず、プリンタ１０に内蔵された内部メモリ２０であってもよい。また、本発明の適用はダイレクトプリントに限られず、第１記憶手段は、プリンタ１０に接続されるホストコンピュータのハードディスク等であってもよい。
【符号の説明】
【００７７】
１０…プリンタ（画像形成装置）
１１…印刷部
１４…制御部（変換手段、作成手段、置換手段、破棄手段）
１７…ＵＳＢメモリ（第１記憶手段）
２０…内部メモリ（第２記憶手段）
【図１】
2010105388.tif 000003
【図２】
2010105388.tif 000004
【図３】
2010105388.tif 000005
【図４】
2010105388.tif 000006
【図５】
2010105388.tif 000007
【図６】
2010105388.tif 000008
【図７】
2010105388.tif 000009
【図８】
2010105388.tif 000010
【図９】
2010105388.tif 000011
【図１０】
2010105388.tif 000012
【図１１】
2010105388.tif 000013
【図１２】
2010105388.tif 000014
【図１３】
2010105388.tif 000015