(57)【要約】【課題】印刷性能面におけるコスト低減と開発コスト面におけるコスト低減を図ることができるプリンタ装置を提供する。【解決手段】ホスト４からプリンタ記述言語を受信してその言語を解釈し、各ページ毎にフレームバッファへビットマップデータを形成して、印刷実行する機能を持つプリンタ装置において、受信したデータをフレームバッファへ展開する際に、そのページに描画されるべきビットマップが描画されたかどうかをＰＤＬコマンド解釈の時点で判断し、ページ上に描画されるべきビットマップイメージがないと判断された場合にそのページを出力しないようにする白紙印刷抑制機能を有する制御手段１１を備えた。【選択図】図１
2007130945.tif 000002
【特許請求の範囲】
【請求項１】
ホストからプリンタ記述言語を受信してその言語を解釈し、各ページ毎にフレームバッファへビットマップデータを形成して、印刷実行する機能を持つプリンタ装置において、受信したデータをフレームバッファへ展開する展開手段と、そのページに描画されるべきビットマップが描画されたか否かをＰＤＬコマンド解釈の時点で判断する判断手段と、制御手段と、を備え、
前記制御手段は、前記判断手段によりページ上に描画されるべきビットマップイメージがないと判断された場合には、そのページを出力しないように制御することを特徴とするプリンタ装置。
【請求項２】
請求項１記載のプリンタ装置において、前記制御手段は、前記ページを出力しないように制御するか否かの設定入力を受け付けることを特徴とするプリンタ装置。
【請求項３】
請求項１記載のプリンタ装置において、前記ページを出力しないように制御するか否かの設定は受信するデータ内のコマンドによってなされることを特徴とするプリンタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストからプリンタ記述言語(ＰＤＬ)を受信してその言語を解釈し、各ページ毎にフレームバッファへビットマップデータを形成して、印刷実行する機能を持つプリンタ装置に関する。
【背景技術】
【０００２】
上記のプリンタ装置において、従来は、ホストから送られてくるデータを忠実にページデータへと展開し、印刷データの要求に従って全てのページを印刷していた。しかし、アプリケーションで指定されるコマンドによっては不要なページデータ（白紙のページデータ）を印刷要求してくることがあった。この白紙ページを印刷することで、不要の用紙が消費されることになり課金コストがかかってしまうという不具合が生じていた。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ここで、このようなデータを白紙ページとして印刷しないように抑制するためには、全てのページに対して印刷ページデータ（ページフレーム）としてビットマップ展開されたかどうかを調査しなければならずコストがかかっていた（ここで言うコストとは、性能面のコストもあり、ハードウェアにてチェックするとした場合の ＡＳＩＣ 開発といったコストも挙げられる）。
本発明は、印刷性能面におけるコスト低減と開発コスト面におけるコスト低減を図ることができるプリンタ装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、請求項１記載の発明は、ホストからプリンタ記述言語を受信してその言語を解釈し、各ページ毎にフレームバッファへビットマップデータを形成して、印刷実行する機能を持つプリンタ装置において、受信したデータをフレームバッファへ展開する展開手段と、そのページに描画されるべきビットマップが描画されたか否かをＰＤＬコマンド解釈の時点で判断する判断手段と、制御手段と、を備え、前記制御手段は、前記判断手段によりページ上に描画されるべきビットマップイメージがないと判断された場合には、そのページを出力しないように制御することを特徴とする。
請求項２記載の発明は、請求項１記載のプリンタ装置において、請求項１記載のプリンタ装置において、前記制御手段は、前記ページを出力しないように制御するか否かの設定入力を受け付けることを特徴とする。
請求項３記載の発明は、請求項１記載のプリンタ装置において、前記ページを出力しないように制御するか否かの設定は受信するデータ内のコマンドによってなされることを特徴とする。
【発明の効果】
【０００５】
本発明では、フレームバッファ上にビットマップが展開されたかどうかを全てチェックするのではなく、ＰＤＬが作成する中間言語（Ｄｉｓｐｌａｙ Ｌｉｓｔ）レベルでページフレーム上にビットマップ描画するかどうかを判断するため、印刷性能面におけるコスト低減と開発コスト面におけるコスト低減を図ることができる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施形態を図面に従って説明する。
図１は本発明の実施形態に係るプリンタ装置において、プリンタコントローラを詳細に示すブロック図である。本プリンタ装置は、プリンタコントローラ１とプリンタパネル２とプリンタエンジン３とを備えている。
プリンタコントローラ１は、ＣＰＵ１１、ハードディスク１２、ホスト４に接続されるホストインターフェース１３、ＲＯＭ１４、ＲＡＭ１５、プリンタパネル２に接続されるパネルインターフェース１６、プリンタエンジン３に接続されるエンジンインターフェース１７を備える。
図２はプリンタパネルの構成図である。プリンタパネル２上には、メニュー表示ＬＣＤ２１と各種の設定ボタン２２が装備されており、メニュー表示ＬＣＤ２１上にて、以下の白紙印刷抑制機能の設定有無を決定できる。図２においては本発明の機能である白紙印刷抑制機能を、Ｂｌａｎｋ Ｐａｇｅｓの設定項目とし、設定選択肢としては、機能無効（白紙印刷抑制しない：設定値としてはＰｒｉｎｔ）、と機能有効（白紙印刷抑制する：設定値としてはＤｏ ｎｏｔ Ｐｒｉｎｔ）の設定選択肢を持つ。
【０００７】
図３はコマンドレベルで白紙印刷抑制機能の有効／無効の設定をする際のプリントデータコマンド構成を示す図である。プリントデータは３０１：ＰＪＬ Ｃｏｍｍａｎｄ、３０２：ＰＣＬ Ｃｏｍｍａｎｄ、３０３：ＰＪＬ Ｃｏｍｍａｎｄにて構成される。ＰＪＬ Ｃｏｍｍａｎｄにおいては ＪＯＢにまつわるコマンド指定が設定される（例えば、印刷給紙トレイ、排紙トレイ、印刷部数の指定、印刷解像度の設定、フィニッシング機能の設定等）。
ここで、３０４：@PJL WHITEPAPERSUPPRESS ONまたは、@PJL WHITEPAPERSUPPRESS OFFというＰＪＬ Ｃｏｍｍａｎｄを付加することで、本白紙印刷抑制機能の有効(@PJL WHITEPAPERSUPPRESS ON)、無効(@PJL WHITEPAPERSUPPRESS OFF)が指定できる。なお、３０２：ＰＣＬ Ｃｏｍｍａｎｄにてはページ描画にまつわるコマンドが指定される。以下に述べる デイスプレイリストへ展開されるコマンドデータがここで記述される。最後に３０３：ＰＪＬ Ｃｏｍｍａｎｄが付加されるがここでは、ＪＯＢ ＥＮＤ(ジョブの終了)を示すコマンドが付加される。
【０００８】
図４はＰＤＬ処理概要図である。図４の上部にて、プリンタコントローラが４０１：データ受信してから、４０５：ページフレームへ展開し、プリンタエンジン３へ印刷要求するまでの流れを図示している。４０１：データ受信したデータはＰＤＬによって４０２：コマンド解釈され、４０３：Ｄｉｓｐｌａｙ Ｌｉｓｔへ展開される。
ここでＤｉｓｐｌａｙ Ｌｉｓｔとは、テキスト、グラフィックス、イメージといった各描画オブジェクト毎の情報をオブジェクトタイプ毎に保持するものであり、ここで保持された各オブジェクトタイプ毎の情報は、各オブジェクト毎の描画モジュールによって、４０４：ビットマップ展開され、４０５：ページフレームへ展開される。
図４の下部にその概念を示す。４０６：ＰＤＬデータ受信すると、各コマンドを各ページ毎にＤｉｓｐｌａｙ Ｌｉｓｔというものに展開する。４０７：１ページ目のＤｉｓｐｌａｙ Ｌｉｓｔと、４０８：２ページ目のＤｉｓｐｌａｙ Ｌｉｓｔは描画内容によって当然Ｄｉｓｐｌａｙ Ｌｉｓｔの内容も個数も変わってくる。ここでＤｉｓｐｌａｙ Ｌｉｓｔ化された各オブジェクトタイプによって、各オブジェクトタイプ毎の描画モジュールがＤｉｓｐｌａｙ Ｌｉｓｔ情報を読み取って、４０９：ページフレーム上にビットマップ展開する。
ここでは、１ページ目のページとして描画データが存在し、２ページ目のページは描画データを含まないとした場合のケースについて述べる。図４の４０８：２ページ目のＤｉｓｐｌａｙ Ｌｉｓｔを各オブジェクトタイプ毎の各描画モジュールにてビットマップ展開し、ページフレーム２を生成する際に、各描画モジュールがＤｉｓｐｌａｙ Ｌｉｓｔ情報からのデータをビットマップ展開したかどうかの情報を保持しており、ビットマップ展開された際にその情報を立ててやることでページフレームにビットマップ描画があったかどうかを判断する。例えばビットマップ展開したかどうかの情報が立っていなければ、そのページフレームはビットマップ描画が存在しなかったという判定がなされ、白紙ページであるという判断がなされる。
【０００９】
図５はＰＤＬ処理概略フローチャート（白紙抑制印刷処理フローチャート）である。本発明におけるプリンタコントローラ１によるＰＤＬの処理としては、５０１：コマンド受信したデータを５０２：コマンド解釈し、５０３：Ｄｉｓｐｌａｙ Ｌｉｓｔ生成し、５０４：１ページ分の Ｄｉｓｐｌａｙ Ｌｉｓｔ生成したか？またはＥＯＦ(ファイルの終端)を検知したか？を判別し、本条件に合致した場合に、５０５：各Ｄｉｓｐｌａｙ Ｌｉｓｔを各描画モジュールにて描画する。
５０４の判別にて、条件に達していないと判別された場合は、次のＤｉｓｐｌａｙ Ｌｉｓｔ生成の処理５０３：Ｄｉｓｐｌａｙ Ｌｉｓｔ生成に戻る。また、５０５の処理実行後に、結果的に描画イメージが存在すると判断された場合は、５０６：そのページフレームを作成し、５０７：プリンタエンジン３へページフレームの印刷要求を実行する。それに対して５０５の処理実行後に、結果的に描画イメージが存在しないと判断された場合は、５０８：そのページフレームを破棄する。
なお、描画有無の判断については、Ｄｉｓｐｌａｙ Ｌｉｓｔ化された各オブジェクトを描画する各描画モジュール内にて、フレームバッファ上にビットマップを展開したかどうかによって、描画の有無を判断する。これは、白黒プリンタの場合は、Ｋプレーンのみのフレームバッファへ描画したかどうかのみで判断し、カラープリンタの場合は、Ｃ、Ｍ、Ｙ、Ｋ各プレーンのうち、どこかひとつのプレーンにビットマップ描画があればそこで描画されたこととして判断する。
その後、５０９：最終ページのＤｉｓｐｌａｙ Ｌｉｓｔ処理完了したか？どうかによって、処理完了していれば、５１０：終了となり、最終ページのＤｉｓｐｌａｙ Ｌｉｓｔ処理完了していなければ次の５０３：Ｄｉｓｐｌａｙ Ｌｉｓｔ生成処理を実行する。
【００１０】
図６は白紙抑制印刷機能を有効とした時の両面印刷時の出力結果イメージを示す図である。図６において、(１)の印刷結果イメージが、３ページ目が白紙と判定されたときにそのページを次のページで詰めずに印刷する方式の印刷結果イメージである。また(２)の印刷結果イメージが、３ページ目が白紙と判定された時にそのページを次のページで詰めて印刷する方式の印刷結果イメージである。
つまりこの時、白紙ページの印刷は抑制されて次のページによって詰められて印刷されることとなり、例えばユーザーが表面と意識して作成したページが裏面に印刷されるということが発生しうることもあるが、無駄な白紙ページの印刷を防ぐという本機能本来の目的を実現している。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係るプリンタ装置において、プリンタコントローラを詳細に示すブロック図である。
【図２】プリンタパネルの構成図である。
【図３】コマンドレベルで白紙抑制印刷機能の有効／無効の設定をする際のプリントデータコマンド構成を示す図である。
【図４】ＰＤＬ処理概要図である。
【図５】ＰＤＬ処理概略フローチャートである。
【図６】白紙抑制印刷機能を有効とした時の両面印刷時の出力結果イメージを示す図である。
【符号の説明】
【００１２】
１  プリンタコントローラ
２  プリンタパネル
３  プリンタエンジン
４  ホスト
１１  ＣＰＵ（制御手段）
【図１】
2007130945.tif 000003
【図２】
2007130945.tif 000004
【図３】
2007130945.tif 000005
【図４】
2007130945.tif 000006
【図５】
2007130945.tif 000007
【図６】
2007130945.tif 000008