(57)【要約】【課題】  ＰＤＬ種別の指定がない印刷データのＰＤＬ種別を誤判定したことを出力前に簡便に判別可能とすること。また、ＰＤＬの誤判定による不要な印刷を避け用紙の消費を抑制すると共に、PDL種別が指定された印刷データや正しく判定できた場合は一時停止することなく出力することを課題とする。【解決手段】  印刷データが何れのＰＤＬインタプリタで解析可能であるかを判定し、少なくとも２段階以上のレベルを持つ解析可能性を出力するＰＤＬ判定手段（４０３）と、前記判定結果に基づいてＰＤＬ種別を決定するＰＤＬ選択手段（４０７）と、前記印刷データを解析してプレビュー画像を生成するページ画像生成手段（４０５）と、前記プレビュー画像を操作部（１０４）に表示するプレビュー手段（４０６）を備え、前記解析可能性のレベルに応じて、プレビュー表示を行うか否かを切り替えるよう構成する。【選択図】  図４
2013119162.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２以上のページ記述言語解析部（ＰＤＬインタプリタ：４０４）を備え、前記ＰＤＬインタプリタのうちのいずれか１つを用いて外部装置（１０１）より受信した印刷データを解析し、ページ画像を生成する画像処理装置（１０２）において、
前記印刷データが前記ＰＤＬインタプリタの何れかで解析可能であるかを判定し、少なくとも２段階以上のレベルを持つ解析可能性を出力するＰＤＬ判定手段（４０３）と、
前記ＰＤＬ判定手段の判定結果に基づいて、前記印刷データを処理すべきＰＤＬインタプリタを決定するＰＤＬ選択手段（４０７）と、
前記印刷データを解析してプレビュー画像およびページ画像を生成するページ画像生成手段（４０５）と、
前記プレビュー画像を操作部（１０４）の表示部に表示するプレビュー手段（４０６）を備え、
前記ＰＤＬ選択手段は、前記解析可能性のレベルに応じて、プレビュー表示を行うか否かを切り替えることを特徴とする画像処理装置。
【請求項２】
前記ＰＤＬ判定手段は、前記印刷データにおいてＰＤＬ種別の指定が含まれていない場合に、少なくとも２以上の判定レベル毎に定められた判定基準に基づいて前記解析可能性を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ＰＤＬ選択手段は、前記解析可能性のレベルが所定レベル以下であった場合に、前記プレビュー手段に対してプレビュー画像の表示を指示する手段を備える一方、
前記解析可能性のレベルが所定レベルより大きい場合は、プレビュー手段に対してプレビュー画像の表示を指示せずに印刷処理を続行することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記プレビュー手段は、印刷を続行するか否かをユーザに選択させるための選択指示手段（３０１）と、
前記選択指示手段によって印刷キャンセルが選択された場合は、当該印刷データをキャンセルすることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記画像処理装置は、プレビュー処理を行うべき前記解析可能性のレベルを、外部より指定可能な判定レベル指定手段（１０４）を備えることを特徴とする請求項１に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置より受信した印刷データを解析して画像データを生成する画像処理装置に関する。特に、異なる複数の種類のページ記述言語（以下、ＰＤＬと記す）によって記述された印刷データをそれぞれ解釈して処理可能な画像処理装置に関する。
【背景技術】
【０００２】
ＰＤＬ種別が異なる複数の印刷データに対応したＰＤＬインタプリタを備えた従来の画像処理装置は、ＰＪＬ等のジョブ制御言語によって前記ＰＤＬ種別を特定し、印刷データとは異なる種類のＰＤＬインタプリタが意図せず誤って処理してしまうことを防いでいた。
【０００３】
加えて、前記ジョブ制御言語を含まない印刷データに対して、前記印刷データの内容を解析して、ＰＤＬインタプリタを自動判別するＰＤＬ種別判定手段をも備えているのが一般的である。この機能によって、ジョブ制御言語をサポートしていない旧来のホスト処理システムが生成した印刷データも問題なく処理することができる。
【０００４】
一方、プレビュー結果に応じて後続の画像処理を切り替える先行技術としては、原稿を読込んで蓄積された画像データを操作部上の画像確認画面に表示し、異常が認められた際はスキャナユニットからの再読込みを制御する従来例がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２２２２４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述したＰＤＬ種別判定手段は、外部装置から受信した印刷データ内の一部データを各ＰＤＬインタプリタに解析させた結果を基に、最も確からしいＰＤＬ種別を特定する。そのため、印刷データのデータ内容に依存してＰＤＬ種別を誤判定してしまい、前記印刷データのＰＤＬ種別とは異なるＰＤＬインタプリタが処理することで無駄な印刷を行ってしまう場合があった。
【０００７】
具体的には、オプション構成であるＰＤＬインタプリタが無効状態である画像処理装置（印刷デバイス）に対して、前記ＰＤＬ種別の印刷データを投入した場合や、印刷データ受信経路途中の何らかの障害によってデータ欠損が発生した場合などが想定できる。
【０００８】
一方、前述の先行技術においては、プレビューによって画像蓄積時のスキャン画像に関する異常確認は行っているが、外部より入力された印刷データのＰＤＬ種別判定に連動したプレビュー制御は行っていなかった。
【０００９】
そのため、ユーザは、前記ＰＤＬ種別判定手段がＰＤＬ種別を誤判定したことを出力よりも前に簡便な方法によって判別することができなかった。
【００１０】
また、ＰＤＬ種別を誤判定したまま出力を行ってしまうため、印刷用紙を無駄に消費するといった問題があった。
【００１１】
一方、印刷開始前に必ずプレビュー表示を行う構成としてしまうと、ジョブ制御言語にてPDL種別を指定した印刷データや、正しくPDL種別を判定できた印刷データに対しても一旦出力を停止することになり、利便性が低下するという問題もあった。
【課題を解決するための手段】
【００１２】
少なくとも２以上のページ記述言語解析部（ＰＤＬインタプリタ：４０４）を備え、前記ＰＤＬインタプリタのうちのいずれか１つを用いて外部装置（１０１）より受信した印刷データを解析し、ページ画像を生成する画像処理装置（１０２）において、
前記印刷データが前記ＰＤＬインタプリタの何れかで解析可能であるかを判定し、少なくとも２段階以上のレベルを持つ解析可能性を出力するＰＤＬ判定手段（４０３）と、前記ＰＤＬ判定手段の判定結果に基づいて、前記印刷データを処理すべきＰＤＬインタプリタを決定するＰＤＬ選択手段（４０７）と、前記印刷データを解析してプレビュー画像およびページ画像を生成するページ画像生成手段（４０５）と、前記プレビュー画像を操作部（１０４）の表示部に表示するプレビュー手段（４０６）を備え、前記ＰＤＬ選択手段は、前記解析可能性のレベルに応じて、プレビュー表示を行うか否かを切り替えるよう構成する。
【発明の効果】
【００１３】
ユーザは、前記ＰＤＬ種別判定手段がＰＤＬ種別を誤判定したことを、出力の前に簡便な方法によって判別することができるようになる。
【００１４】
また、ＰＤＬの自動判別処理の誤判定による不要な印刷を避けることができるため、無駄な用紙の消費を抑制できる。
【００１５】
さらに、ジョブ制御言語にてPDL種別を指定した印刷データや、正しくPDL種別を判定できた印刷データは一時停止することなく出力できるため、利便性の低下を防ぐことができる。
【図面の簡単な説明】
【００１６】
【図１】本実施例を適用可能な画像処理装置のブロック構成図
【図２】本実施例における、ＰＤＬ選択手順を示したフローチャート
【図３】本実施例における、プレビューの表示例
【図４】本実施例におけるコントローラの構成図
【発明を実施するための形態】
【００１７】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１８】
＜第１の実施例＞
図１は、本発明の実施形態における画像処理装置１０２（以下、プリンタ）、および印刷データを生成・送信するパーソナルコンピュータ１０１（以下、PC）とから構成される画像処理システムの全体構成を説明するブロック図である。
【００１９】
同図のプリンタ１０２において、ＣＰＵ１２１はプリンタ制御ユニット（コントローラ）１０３内のシステムバス１２０に接続される各デバイスを総括的に制御する。また、ＣＰＵ１２１は、ＲＯＭ１２２に含まれるプログラムＲＯＭ１２２ａに記憶された制御プログラムに基づいてページ画像を生成し、印刷部Ｉ／Ｆ・１２５を介して接続される印刷部（プリンタエンジン）１０５に前記ページ画像に応じたビデオ信号を出力する。
【００２０】
さらに、ＣＰＵ１２１は、後述のPDL版選択結果に応じてプレビュー画像を生成し、操作部１０４に備えられたパネル上に前記プレビュー画像を表示する。
【００２１】
ここで、前記プログラムＲＯＭ１２２ａには、少なくとも２種以上のＰＤＬインタプリタを実現するプログラムを含む。そして、前記ＣＰＵ１２１はＲＡＭ１２３にロードされた前記ＰＤＬインタプリタを実行することで、前記印刷データを解釈し、印刷部１０５が印刷可能なビットマップデータ（ページ画像）を生成する。
【００２２】
さらに、前記ＲＯＭ１２２は、フォントデータ（フォントＲＯＭ１２２ｃ）や、各種画像処理用テーブル等を含むデータＲＯＭ１２２ｃからも構成されている。
【００２３】
また、１２３はＣＰＵ１２１が実行する前記制御プログラムをロードするプログラム領域の他、描画処理のための各種データを保持するワークメモリとして機能するＲＡＭである。すなわち、ＰＣから受信した印刷データを一時的に保持する受信バッファ（１２３ａ）、前記印刷データの解析結果を中間オブジェクト形式で保持する描画オブジェクトメモリ（１２３ｂ）、ページ画像を保持するページスプールメモリ（１２３ｃ）、描画処理用の一時データを格納するワークメモリ（１２３ｄ）等から構成されている。
【００２４】
続いて、１２８はハードディスク等の不揮発性記憶装置であって、前記プレビュー画像を保存しておくための記憶領域として使用される。
【００２５】
また、１０４は操作部であり、プリンタ１０２に対する各種メニュー設定やリセット等の各種操作を行うための操作パネル、各種ステータスや前記プレビュー画像を表示するＬＥＤ表示器等から構成されている。
【００２６】
１０５はプリンタエンジン部であって、前記ビデオ信号に従って感光ドラムに潜像を形成し、用紙に熱定着させることによって印字を行う。
【００２７】
なお、本実施形態に適用するプリンタエンジン１０５には、レーザビームプリンタ（以下、ＬＢＰ）あるいはインクジェットプリンタ等の各種印刷方式を適用可能であり、さらにプリンタ単機能機（ＳＦＰ）、あるいは複合機（ＭＦＰ）として構成しても構わない。
【００２８】
続いて、本実施例におけるＰＤＬ選択の手順について、図４のプログラム構成図、および図２のフローチャートを用いて以下に説明する。
【００２９】
なお、フローチャートに示す各手順は、コントローラ１０３を構成するプログラムＲＯＭ１２２ａにプログラムコードとして記憶されており、ＲＡＭ１２３にロードされた上でＣＰＵ１２１によって実行される。
【００３０】
まず図４を用いて、本実施例の各手段を実現するためのプログラムの構成、および印刷データ／ページ画像／プレビュー画像から成るデータの流れについて、以下に説明する。
【００３１】
ここで同図において、破線の矢印は前記各手段間の制御・指示を示しており、太実線の矢印は各手段が参照あるいは生成するデータの流れを示している。
【００３２】
４０２はＰＣより送られた印刷データを受信する印刷データ受信部であって、ホストＩ／Ｆ部１２４に相当する。印刷データ受信部４０２は、所定のプロトコルに従ってＰＣとデータ受信制御を行い、印刷データを受信バッファ１２３ａにスプールすると共に、ＰＤＬ判定部４０３に対して印刷データの受信を通知する。
【００３３】
印刷データを受信したＰＤＬ判定部４０３は、ジョブ制御言語によるＰＤＬ種別指定の有無を調べ、ＰＤＬ種別の指定がない場合は、少なくとも２種以上のＰＤＬインタプリタ４０４のそれぞれに対して、前記印刷データの解析可能性を問い合わせる。
【００３４】
ここで、前記ＰＤＬ判定部４０３は、少なくとも２段階以上の複数の判定レベル毎に、予めプログラムにて決定されている優先順位に従って各ＰＤＬインタプリタを順次呼び出し、処理すべきＰＤＬ種別と解析可能性を決定する。
【００３５】
すなわち、ＰＤＬ種別の判定処理においては、前記ＰＤＬ判定部４０３は、下記３段階の判定レベル毎に、各ＰＤＬインタプリタに解析可能性の判断を依頼する。
（１）判定レベル１：確からしさ＝高
（２）判定レベル２：確からしさ＝中
（３）判定レベル３：確からしさ＝低
そして、各ＰＤＬインタプリタは、判定レベル毎に前記印刷データの内容の解析し、解析可能と判断した場合はＹｅｓ（解析可能性＝有り）を、解析不可能と判断した場合はＮｏ（解析可能性＝無し）を返答する。本実施例においては、解析可能性の判断基準は下記の通りである。
（１）判定レベル１：印刷データが確実に解析可能なコマンドのみを含む場合にＹｅｓ
（２）判定レベル２：ＰＤＬの言語仕様の特徴を示す所定コマンドのシンタックス（文法）が適正であるか、所定のコマンドを一定数以上含む場合にＹｅｓ
（３）判定レベル３：ＰＤＬの言語仕様の特徴を示す所定コマンドのシンタックス（文法）が適正ならＹｅｓ
すなわち、判定レベル１の段階でＰＤＬインタプリタＡがＹｅｓを返答した場合、ＰＤＬ判定部４０３は、ＰＤＬインタプリタＡの解析可能性のレベルを１と決定し、ＰＤＬ選択部４０７に通知した上で、ＰＤＬ判定処理を終了する。
【００３６】
一方、判定レベル１の段階で全てのＰＤＬインタプリタがＮｏを返答した場合は、判定レベル２で再び各ＰＤＬインタプリタに解析可能性を問い合わせる。ここで、ＰＤＬインタプリタＢがＹｅｓを返答した場合、ＰＤＬ判定部４０３は、ＰＤＬインタプリタＢの解析可能性のレベルを２と決定し、ＰＤＬ選択部４０７に通知した上で、ＰＤＬ判定処理を終了する。
【００３７】
なお、各ＰＤＬインタプリタ４０４は、受信バッファ１２８に格納された印刷データの先頭５１２バイトを参照して、解析可能性を判断するものとする。
【００３８】
上記のようにＰＤＬ判定部４０３は、各ＰＤＬインタプリタ４０４を順次呼び出し、何れかのＰＤＬインタプリタがＹｅｓを返答した時点で解析可能性のレベルを決定しＰＤＬ選択部４０７に通知する。
【００３９】
一方、全ての判定レベルにおいて、何れのＰＤＬインタプリタもＹｅｓと応答しなかった場合は、ＰＤＬ判定部４０３は解析可能性のレベルを４とし、解析可能なＰＤＬインタプリタが存在しない旨をＰＤＬ選択部４０７に通知する。この時、ＰＤＬ選択部４０７はメニューの「優先エミュレーション」項目に選択されているＰＤＬ種別を選択するものとする。
【００４０】
ＰＤＬ選択部４０７は、前記ＰＤＬ選択処理において前記解析可能性のレベルが１以外であった場合、選択されたＰＤＬインタプリタ４０４に対してプレビュー画像の生成を指示すると共に、プレビュー処理部４０６に対して前記プレビュー画像の表示指示を行う。
【００４１】
この時ＰＤＬインタプリタ４０４は、印刷データを解析し、ページ画像生成部４０５に対してプレビュー画像の生成を指示する（ページ画像生成部に対して、例えば動作解像度＝７２ｄｐｉを設定する）。一方、プレビュー処理部４０６は、ページ画像生成部４０５からプレビュー画像生成完了通知を受け取ると、ＨＤＤ１２８に格納されたプレビュー画像を読み出し、操作部１０４のパネル上にプレビュー画像を表示した上で、ユーザによる出力可否の選択結果の入力を待つ（図３）。
【００４２】
図３は、操作部１０４のパネル上に表示されたプレビュー画面の例を示しており、ＰＤＬ選択部４０７によって選択されたＰＤＬ種別と、判定レベルとが画面領域３０２に表示されている。
【００４３】
ここで、図３（ａ）は、判定レベル＝２にてＰＤＬ種別がＬＩＰＳと決定されたケース（解析可能性レベル＝２）を、図３（ｂ）は、全ての判定レベルでＰＤＬ種別が決定されなかったケース（解析可能性レベル＝４）を示している。
【００４４】
プレビュー処理部４０６は、ユーザのパネル操作結果に応じて、ＯＫボタンが選択された場合は印刷処理を続行する一方、キャンセルボタンが選択された場合は印刷処理を中断する。
【００４５】
以下、図４のフローチャートを用いて、ＰＤＬ選択手順の詳細を説明する。
【００４６】
なお、本フローチャートに示した処理は、コントローラ１０３を構成するＣＰＵ１２１において実行される。
【００４７】
まず、ステップＳ２０１において、印刷データ受信部４０２は印刷データを受信すると共に、ＰＤＬ判定部４０３は、PDL種別の“判定レベル”を３に、続くＳ２０２にて判定処理のために呼び出すべきＰＤＬインタプリタの数“ＰＤＬ数”をｎにセットする。ここでｎは、簡単のためプリンタ１０２に搭載されているＰＤＬインタプリタの数とする。
【００４８】
以下、Ｓ２０３〜Ｓ２０８の各ステップにおいて、各“判定レベル”につきｎ種類のＰＤＬインタプリタが印刷データの先頭箇所を解析する（Ｓ２０４）。そして、解析可能性＝有りと判定するか（Ｓ２０５でＹｅｓ）、“判定レベル”が０になるまで（Ｓ２０３でＮｏ）処理をループする。
【００４９】
そして、ＰＤＬ判定処理を終了した後に、ＰＤＬ選択部４０７は、“判定レベル”が２よりも小さいか否か（解析可能性のレベルが２よりも大きいか否か）を判断する（Ｓ２０９）。ここで判断結果がＮｏであれば（すなわち解析可能性のレベルが１なら）、確からしさ＝高であるためプレビュー処理を行わずにＰＤＬ種別を確定し（Ｓ２１３）、処理を終了する。
【００５０】
一方、Ｓ２０９で“判定レベル”が２未満である場合は、ＰＤＬ選択部４０７は、前記ＰＤＬ選択処理において解析可能性のレベルが２以上であると判定する。そして、選択されたＰＤＬインタプリタ４０４に対してプレビュー画像の生成を指示し（Ｓ２１０）、プレビュー処理部４０６に対して前記プレビュー画像の表示指示を行う。
【００５１】
前記表示指示を受けたプレビュー処理部４０６は、ユーザにＰＤＬ種別の選択を促すために、プレビュー画像および判定結果をＰＤＬ選択画面３０２として操作部１０４に表示し（Ｓ２１１）、ユーザによる出力可否の選択結果の入力を待つ（Ｓ２１２）。ユーザが操作パネルよりＯＫボタンを選択した場合（Ｓ２１２でＹｅｓ）、ＰＤＬ選択部４０７はＰＤＬ種別を確定して印刷処理を続行する。一方、キャンセルボタンが選択された場合は（Ｓ２１２でＮｏ）、スプール途中の印刷データおよび生成済みのプレビュー画像を消去した上で印刷処理を中断する（Ｓ２１４）。
【００５２】
＜第２の実施例＞
第１の実施例においては、プレビュー表示を行う判定レベルを固定としたが、パネルのメニュー項目において、下記４つあるいはそれ以下の選択肢から選択できるようにしても良い。
（１）判定レベル１／（２）判定レベル２／（３）判定レベル３
（４）全てのＰＤＬがNoと判定した場合（優先エミュレーションで処理する場合）
上記のように構成することで、印刷データの傾向や誤判定の頻度等の状況に応じて、適宜プレビューを行うか否かを切り替えることが可能となる。
【００５３】
＜第３の実施例＞
また、前実施例ではページ全体をプレビュー対象としたが、パネルのメニュー項目から、プレビュー範囲を選択できるよう構成することもできる。
【００５４】
すなわち、（１）先頭ページのみ／（２）所定のコマンド数まで
このように構成することで、プレビュー画像の生成に要する時間を削減し、プレビュー表示を高速化することができる。
【符号の説明】
【００５５】
１０４  操作部
４０３  ＰＤＬ判定部
４０４  ＰＤＬインタプリタ
４０５  ページ画像生成部
４０６  プレビュー処理部
４０７  ＰＤＬ選択部
【図１】
2013119162.tif 000003
【図２】
2013119162.tif 000004
【図３】
2013119162.tif 000005
【図４】
2013119162.tif 000006