画像形成装置及び画像形成方法
【課題】地紋パターンや電子透かし、アノトパターン等の特殊パターンを含むPDLデータで非可逆圧縮を伴う、フォールバック処理が発生すると、圧縮による画像劣化により、特殊パターンの性能を十分に発揮できない。また、特殊パターンの性能を十分に発揮できる画質とするには、大容量のメモリが必要でありコストがかかる。
【解決手段】他の装置から文書情報、付加情報を順に受信し、その文書情報をビットマップ化するための前準備処理を開始し、前記受信手段で付加情報を受信したことに伴い、前記文書情報に対する前準備処理により得られた情報(ディスプレイリスト)を用いてビットマップを生成する。生成されたビットマップを圧縮し、圧縮されたビットマップと、前記付加情報に対する前準備処理により得られた情報とを関連付ける。
【解決手段】他の装置から文書情報、付加情報を順に受信し、その文書情報をビットマップ化するための前準備処理を開始し、前記受信手段で付加情報を受信したことに伴い、前記文書情報に対する前準備処理により得られた情報(ディスプレイリスト)を用いてビットマップを生成する。生成されたビットマップを圧縮し、圧縮されたビットマップと、前記付加情報に対する前準備処理により得られた情報とを関連付ける。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷データ上に付加データの埋め込まれた画像を出力する画像形成装置及び画像形成方法に関する。
【背景技術】
【0002】
近年、地紋、電子透かし、及びアノト(登録商標)パターンのように、印刷出力に特殊パターンを付加することで、印刷出力そのものの価値を向上させる技術が開発され、画像形成装置に搭載されてきている。
【0003】
地紋は、複写時に浮き出て出力される潜像部を構成する潜像パターンと、複写時にドットが消える背景部を構成する背景パターンで構成される。これらのパターンを組み合わせたものを、印刷したい画像の上側または下側に重ね合わせた印刷出力(印刷物)を生成(作成)することにより、該印刷出力を複写しようとしたときに、潜像パターンが浮き上がる。
【0004】
電子透かしは、意味のある情報を埋めこんだパターンを、印刷したい画像に付加して印刷出力を生成する。該印刷出力をスキャンする時に、パターンを解析することにより、埋め込まれた情報を抽出し、電子情報として利用することができる。
【0005】
また、アノトパターンはスウェーデンのAnoto社が開発した電子透かしの一種であり、用紙上の位置情報を埋め込んだパターンとなっている。
【0006】
これらの特殊パターンが印刷データと共に、PDLデータとしてホストからプリンタに送られた場合の処理について説明する。
【0007】
プリンタは、まずそのPDLデータから中間データを生成し、中間データを中間データ格納バッファに格納する。全ての中間データが格納されると、今度は、中間データをラスタライズして画像を生成し、印刷する(即ち、印刷物を作成する)。
【0008】
しかしながら、中間データのデータ量が多く、中間データ格納バッファが一杯になることがある。このような場合、従来技術では、フォールバック処理が行われていた。
【0009】
フォールバック処理とは、中間データの生成及びバッファへの格納の処理の途中で、中間データ格納バッファに格納されている中間データを一旦レンダリングしてJPEG圧縮する処理である。もちろん、この処理が行われると、その途中までの中間データはバッファから削除されることになる。
【0010】
こうすることにより、中間データ格納バッファに空きを作り、引き続いて生成される中間データを中間データ格納バッファに格納できるようになる。良いことずくめのようにも見えるが、問題もある。JPEG圧縮だ。
【0011】
前記特殊パターンは、周期性のない、オン/オフが頻繁に繰り返されるパターンである。このようなパターンの画像は、通常の自然画やグラフィック画像に比べ、高周波成分が多いためJPEG圧縮により圧縮をかけたとしてもそれ程データ量は削減されない。もちろん、データ量を削減するために圧縮率を高めて圧縮するのも一手ではあるが、そのようなことをすると画像劣化が激しくなり、地紋や電子透かし、アノトパターンとしての機能が劣化もしくは全く働かなくなってしまう。
【0012】
このような問題を回避するため、特許文献1では、前記特殊パターンを含む印刷データには、JPEG圧縮のような非可逆圧縮ではなく、可逆圧縮を適用する方法が開示されている。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特開2002−127409号公報
【発明の概要】
【発明が解決しようとする課題】
【0014】
一方で、前記特許文献1のように、特殊パターンを含む画像を可逆圧縮すると、圧縮画像のサイズが大きくなる。その結果、圧縮画像を格納するためにJPEG圧縮をする場合よりも大きなメモリを用意する必要がある。
【0015】
本発明は、上記問題に鑑みてなされたものである。その課題は、フォールバック処理による画像劣化を低減させることが可能な画像形成装置及び画像形成方法を提供することである。
【課題を解決するための手段】
【0016】
本発明の画像形成装置は、文書情報及び付加情報を受信する受信手段と、前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成手段と、前記生成された中間データを順次格納する第1のバッファと、第2のバッファと、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮手段とを備えることを特徴とする。
【発明の効果】
【0017】
以上、本発明によれば、フォールバック処理による画像劣化を低減させることが可能な画像形成装置及び画像形成方法を提供することができる。
【図面の簡単な説明】
【0018】
【図1】本発明の一実施形態における、コントローラソフトウェアの構成を示すブロック図である。
【図2】本発明の実施例2における、カラーSFPのPDL印刷処理を示すフローチャートである。
【図3】本発明の実施例1及び2における、PDLデータの概念図である。
【図4】本発明の実施例2における、PDL解析処理を示すフローチャートである。
【図5】本発明の実施例2における、フォールバック処理を示すフローチャートである。
【図6】本発明の実施例2における、フォールバック処理前後のDL格納バッファの模式図である。
【図7】本発明の実施例3における、下書き地紋を含むPDLデータの概念図である。
【図8】本発明の実施例3における、PDL解析処理を示すフローチャートである。
【図9】本発明の実施例3における、フォールバック処理を示すフローチャートである。
【図10】本発明の実施例3における、DL分離処理を説明するDL格納バッファの模式図である。
【発明を実施するための形態】
【0019】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらに限定する趣旨のものではない。
【実施例1】
【0020】
(コントローラソフトウェア構成)
図1は、本実施形態に係る画像形成装置の一例として、カラーSFP(Single Function Printer)1の構成を示すブロック図である。
符号201から207はソフトウェアモジュールである。これらは、カラーSFP1内部のCPUがROM内部のプログラムを適宜RAMに読み出し、実行することにより実現されるモジュールとなっている。
【0021】
また、各ソフトウェアモジュールは、RAM内のDL(ディスプレイリスト)格納バッファ210及びフォールバック(FB)バッファ211と自由にアクセス可能な構成となっている。
【0022】
図1に示すジョブコントロール処理部201は、カラーSFP1内で発生するあらゆるジョブの制御を行う。
【0023】
ネットワーク処理部202は、LAN102を通じて外部の機器との通信制御を行う。例えば、ネットワーク処理部202はLAN102を介して各機器からの制御コマンドやデータを受信すると、その内容を、ジョブコントロール処理部201へ通知する。また、ジョブコントロール処理部201からの指示に基づき、LAN102を介して各機器へ制御コマンドやデータの送信を行う。
【0024】
UI処理部203は、主に操作部108に係る制御をおこなう。操作部108は、操作者が操作部108を操作した内容を、ジョブコントロール処理部201へ通知すると共に、ジョブコントロール処理部201からの指示に基づいて、操作部108上の表示画面の表示内容を制御する。
【0025】
PDL解析処理部204は、ジョブコントロール処理部201の指示に基づいて、ネットワーク処理部202が受信したPDLデータを解析し、RIP処理部206で処理可能なディスプレイリスト(DL、即ち、中間データ)を生成する。このPDL解析処理部204は、生成したDLをRAM104上のDL格納バッファ210に格納し、DLを格納した領域を示すアドレスを、ジョブコントロール処理部201へ通知する。
【0026】
RIP処理部206は、DL格納バッファ210に格納されているDLのレンダリングをRIP113に行わせる。このレンダリングにより、バンド単位でラスタイメージ(画像)がメモリ上に生成される。その上で、RIP処理部206は、メモリ上の各バンドの格納アドレスをジョブコントロール処理部201へ通知する。
【0027】
画像格納処理部205は、ジョブコントロール処理部201の指示を受け、画像編集用画像処理部116に、指示された画像に対する圧縮処理を行わせ、圧縮後の画像をRAM104上の指定バッファに格納させる。ジョブコントロール処理部201による指示は、格納アドレスを画像格納処理部116に通知することにより行われる。画像格納処理部205は、さらに、バッファにおける格納アドレスをジョブコントロール処理部201に通知する。
【0028】
プリント処理部207は、ジョブコントロール処理部201の指示に基づいて、画像編集用画像処理部116、プリンタ画像処理115およびプリンタエンジン101を制御し、画像の印刷処理を行う。
【0029】
なお、ジョブコントロール処理部201の指示は、印刷対象となっている圧縮後の画像の格納アドレス、画像関連情報(画像のサイズ、カラーモード、解像度)、レイアウト情報(オフセット、拡大縮小、面つけ)および出力用紙情報(サイズ、印字方向)を含む。
【0030】
これらの指示を受けて、画像編集用画像処理部116およびプリンタ画像処理115は、画像に対して適切な画像処理を施し、プリンタエンジン101を制御して指定用紙への印刷を行う。当該画像処理には、解凍処理、拡大縮小処理、色変換処理、解像度変換処理、面付け処理、回転処理などが含まれる。
【0031】
(PDLデータ)
図3は、ホストコンピュータが生成する、PDLデータの概念図である。図3(a)は、上書きの地紋パターンの付加された印刷出力を得るためのPDLデータである。図3(b)は、電子透かしの付加された印刷出力を得るためのPDLデータである。図3(c)は、アノトパターンの付加された印刷出力を得るためのPDLデータである。それぞれのPDLデータは、文書情報である描画命令群(401、403、405)及び付加情報(402、404、406、407)を有する。それぞれのPDLデータは、ホストコンピュータ上で、図の上側から生成され、順次カラーSFP1に通知される。すなわち、カラーSFP1は、ネットワーク処理部202を介して文書情報、付加情報の順で文書情報及び付加情報を受信する。
【0032】
例えば図3(a)のPDLデータでは、ホストコンピュータ上で描画命令郡(401)が先に生成され、カラーSFP1に通知される。続いて、地紋パターンを描画する2値ビットマップ描画命令(402)が付加情報として生成されカラーSFP1に通知される。すなわち、カラーSFP1は、描画命令郡(401)、2値ビットマップ描画命令(402)の順でPDLデータを受信する。同様に、図3(b)のPDLデータは、描画命令郡(403)、電子透かしを描画する2値ビットマップ命令(404)の順で生成され、同じ順序でPDL内のデータがカラーSFP1へ通知される。図3(c)のPDLデータは、描画命令郡(405)、アノトパターン描画用のコマンドであることを示すタグ(406)、アノトパターン描画用の描画命令郡(407)の順で生成され、同じ順序でPDL内のデータがカラーSFP1へ通知される。
【0033】
ここで、アノトパターン描画用の描画命令群は、ダウンロード文字の登録と該ダウンロード文字の描画命令により構成されている。本実施例では、地紋パターンを描画する2値ビットマップ描画命令、電子透かしを描画する2値ビットマップ描画命令、及び以降のデータがアノトパターン描画用コマンドであることを示すタグのことを特殊パターン描画命令と記載する。
【0034】
(PDL印刷処理)
次に、カラーSFP1において、受信したPDLデータからDLを生成し、ラスタイメージを生成する処理を説明する。
【0035】
ステップ1.まず、カラーSFP1のネットワーク処理部202は、図3に示すようなPDLデータを受信するために、このPDLデータの細切れを図の上の部分から順次受信する。
【0036】
ステップ2.PDL解析処理部204は、描画命令群(文書情報)の受信が終了し、受信中のPDLデータの細切れが、特殊パターン(付加情報)に切り替わったか否か判断する。
【0037】
PDLデータの細切れが特殊パターンであるかの判断処理は、PDLデータの解析の結果、2値ビットマップ描画命令に含まれるタグ情報や、アノトパターン開始のタグ情報が検知されるか否かによって行う。検知された場合、特殊パターンと判断する。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンであるかを判断しているが、これに限定されず、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの検知を行ってもよい。
【0038】
ステップ2の判断の結果、受信したPDLデータの細切れが、前回のステップ1の処理で受信したものと同様に描画命令群であった場合、又は前回のステップ1の処理で受信したものと同様に特殊パターンであった場合、ステップ3へ進む。また、判断の結果、PDLデータの細切れが描画命令群から特殊パターンに切り替わったと判断された場合、後述するステップAへ進む。
【0039】
ステップ3.PDL解析処理部204は、受信したPDLデータの細切れを解釈してDLを生成し(中間データ生成)、DL格納バッファ210(第1のバッファ)に格納する。このステップでは、DLが順次生成され、生成されたDLがDL格納バッファ210に順次格納される。
【0040】
ステップ4.まだ受信していないPDLデータの細切れがある場合はステップ1へ進み、受信が終了した場合はステップ5へ進む。
【0041】
ステップ5.RIP処理部206は、DL格納バッファ210(第1のバッファ内)に格納されているDLを全てレンダリングし、ラスタイメージを生成する。後述するステップBの処理で圧縮画像の格納アドレスがDL格納バッファ210に格納されている場合は、この圧縮画像を解凍する。生成されたラスタイメージ及び解凍された画像はプリント処理部207へ出力され、処理は終了する。
【0042】
ステップA.ステップ2で特殊パターンに切り替わったと判断された場合、DL格納バッファ210に格納されているDLを全てレンダリングし、ラスタイメージを生成する。その後、レンダリングされたDLをDL格納バッファ210から削除し、ステップBへ進む。
【0043】
ステップB.ステップAで生成されたラスタイメージを圧縮してFBバッファ211(第2のバッファ)に格納する。FBバッファ211に格納された圧縮後のデータの格納アドレスをDL格納バッファ210に格納する。処理はステップ3へ進む。
【0044】
以上のように本実施例によれば、描画命令群(文書情報)のDL生成処理が終了し、DL生成の対象が特殊パターンに切り替わる際に、DL格納バッファ210内のDLからラスタイメージを生成して圧縮し、DL格納バッファ210内のDLを削除する。従って、DL格納バッファ210に十分に空き容量がある状態で特殊パターンに対するDL生成処理を開始するため、特殊パターンに対するDL生成処理の途中でフォールバック処理が発生する可能性を抑えることができる。その結果、フォールバック処理における不可逆圧縮による特殊パターンの画像劣化を低減することができる。
【0045】
なお、本実施例において、ステップ2の判断の結果、PDLデータの細切れが描画命令群から特殊パターンに切り替わったと判断された場合、ステップA及びBの処理を行うこととしたが、変形例として次のような処理を行っても良い。
【0046】
すなわち、ステップAの処理を行う前に、DL格納バッファ210の空き容量と生成される特殊パターンの全体のDLの容量とを比較し、空き容量の方が大きい場合はステップ3へ進み、そうでない場合はステップAへ進む。なお、DLの容量は、特殊パターンが地紋データ及び電子透かしの場合は、PDLの2値ビットマップ描画命令に含まれている2値ビットマップのサイズ情報より見積もることができる。また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と用紙サイズとからDLの容量を見積もることができる。見積方法の詳細は実施例2で説明する。
【0047】
このようにDLの空き容量が少ない場合にのみステップA及びBの処理を行うため、PDLデータの印刷処理速度の低下を抑えることができる。
【実施例2】
【0048】
以下、実施例2について説明する。本実施例は、実施例1で説明したカラーSFP1による処理と他の追加の処理とを含むPDL印刷処理の詳細について説明する。本実施例におけるカラーSFPのコントロールユニットの構成、コントローラソフトウェアの構成及びPDLデータの構成は、実施例1で説明した図1及び図3と同様であるため、説明を割愛する。
【0049】
(PDL印刷処理)
本実施例に係る画像形成装置の一例であるカラーSFP1がLAN102上のホストコンピュータから、PDLデータを受信し用紙上へ印刷するまでの、PDL印刷処理を図2のフローチャートを参照して説明する。
【0050】
ネットワーク処理部202は、外部ネットワークLAN102からPDLデータを受信すると、そのPDLデータをジョブコントロール処理部201へ通知する。すると、ジョブコントロール処理部201は、通知されたPDLデータを解析するため、PDL解析処理部204を起動しPDLデータを通知する。
【0051】
S301で、PDL解析処理部204は、通知されたPDLデータを解析することで、DLを生成する。PDL解析処理部204はさらに、生成したDLをDL格納バッファ210へ格納し、格納したDLのアドレスをジョブコントロール処理部201へ通知する。このPDL解析処理部204の動作については、後程詳述する。ジョブコントロール処理部201は、PDL解析処理部204よりDLの格納アドレスの通知を受けると、RIP処理部206及画像格納処理部205を起動する。
【0052】
S302で、RIP処理部206は、DL格納バッファ210に格納されているDLのレンダリングをRIP113に行わせる。このレンダリングにより、バンド単位でラスタイメージ(例、2値画像)がRAM104上の画像バッファに生成される。その上で、RIP処理部206は、各バンドの格納アドレスをジョブコントロール処理部201へ通知する。すると、ジョブコントロール処理部201は、その各バンドの格納アドレスを画像格納処理部205に通知する。
【0053】
S303で、画像格納処理部205は、その格納アドレスに格納された画像に対する可逆圧縮処理を行い、圧縮後の画像をRAM104上の指定バッファに格納する。また、圧縮後の画像の格納アドレスをジョブコントロール処理部201に通知する。
【0054】
なお、このレンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われ、全バンドのレンダリング及び圧縮格納処理が終了すると、S304へ進む。以後、ジョブコントロール処理部201は、全バンドの圧縮済みラスタデータを一纏めにし、画像データとして管理する。なお、この圧縮は、例えば、JBIG圧縮となっている。
【0055】
S304で、ジョブコントロール処理部201は、プリント処理部207を起動し、画像の印刷処理を行う。この時の具体的な処理は、プリント処理部207の説明で前述したとおりである。
【0056】
(PDL解析処理)
ここで、図4のフローチャートを参照して、図2のS301にて行われるPDL解析処理部204による処理ついて説明する。
【0057】
PDL解析処理部204は、図3に例示されるPDLデータが通知されると、順次PDLデータの解析を行い(S501)、現在設定されている状態(モード)及び解析の結果に応じて処理の分岐を行う(S502、S503)。
【0058】
すなわち、現在設定されているモードが特殊パターンモードである場合、処理はS508へ進む。また、現在設定されているモードが特殊パターンモードではなく、かつ、PDLの解析結果が特殊パターンである場合、処理はS504へ進む。現在設定されているモードが特殊パターンモードではなく、かつ、解析結果が特殊パターンでない場合、処理はS508へ進む。
【0059】
ここで、現在設定されているモードとは、現在処理中のPDLデータが特殊パターンであるか否かを示すものである。図4に示す処理が開始する際の初期モードは、通常モード(特殊パターンモードではないモード)となっている。そのため、最初、処理は、S501の後、S502からS503へと流れていくことになる。その後、S503で特殊パターン描画を示す描画命令を検知したか判定しているが、検知されなかった場合はS508へと流れていくことになる。一方、ひとたび検知されるとS504へと流れ、特殊パターンモードが設定される。
【0060】
以上S502とS503の処理をまとめると、次のとおりである。すなわち、特殊パターンが初めて検出されるまでは処理は全てS503からS508へと流れる。ひとたび特殊パターンが検出されるとその時だけはS504からS507の処理を行うが、その処理が終わると、S502からS508へと流れる系が出来ることになる。すなわち、S503の処理によれば、全ての描画命令群(文書情報)のDL(中間データ)が生成され、DL格納バッファ210への格納が終了したことにより、2値ビットマップ描画命令(付加情報)から特殊パターンが検知されたか否かが判断される。特殊パターンが検知された場合、S504からS507の処理が行われる。
【0061】
なお、S503の特殊パターン判定処理では、PDLデータの解析の結果、2値ビットマップ描画命令に含まれるタグ情報や、アノトパターン開始のタグ情報が検知された場合、特殊パターンが検知されたと判定している。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンがあるか検知しているが、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの検知を行ってもよい。
【0062】
S504で現在のモードを特殊パターンモードに設定した後、S505では、特殊パターンを描画するために生成されるDLの容量の見積もりを行う。DL容量の見積もりにおいて、特殊パターンが、地紋データ及び電子透かしの場合は、2値ビットマップ描画命令に含まれている2値ビットマップのサイズ情報を用いてDLの容量を見積もることができる。なお、2値ビットマップのサイズ情報は、2値ビットマップ描画命令の先頭部分に含まれている。
【0063】
例えば、2値ビットマップ描画命令に含まれる2値ビットマップのサイズが、4960×7000であった場合、2値ビットマップの容量は、4960×7000÷8=約4.139Mバイトとなる。2値ビットマップを描画するDLの容量は、2値ビットマップの容量+2値ビットマップを描画するための制御命令(60バイト)である。従って、2値ビットマップを描画するDLの容量は、4.14Mバイトと見積もっておけばよい。
【0064】
また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と、出力用紙サイズより見積もることができる。例えば、アノトパターンは約120種類のダウンロード文字の組み合わせで構成されるが、各文字のビットマップの平均サイズは約30ピクセルである。このダウンロード文字1文字あたりの登録に要するDL中の容量は約8バイトであるため、ダウンロード文字の登録に120*8=960バイト消費する。また、用紙サイズがA4であるとすると、描画領域のサイズは、4960*7000ピクセルであるため、4960*7000/30=約1157000文字で、アノトパターンを構成することができる。一方で、ダウンロード文字を1文字描画するためのDL中のコマンド容量は、約10バイトであるので、1157000*10=約11.04Mバイトとなる。これにより、A4サイズの用紙に対しては、ダウンロード文字の登録分も含め、使用するDLサイズの容量を11.1Mバイトに見積もっておけば十分であることがわかる。
【0065】
以上のようにS505の処理によれば、2値ビットマップ描画命令(付加情報)から特殊パターンが検知された場合、特殊パターンのDLの容量が算出される。
【0066】
S506では、S505で見積もった特殊パターンの描画のためのDLの容量と、RAM104上のDL格納バッファ210の残容量を比較し、残容量の方が多ければ、S508のDL生成処理へ進み、残容量が少なければ、S507のフォールバック処理へ進む。すなわちS506では、DL格納バッファの残容量が、算出された特殊パターンのDLの容量より少ないか否かを判断する。
【0067】
S507では、既に生成済みのDLを一度レンダリングし、FBバッファ211に圧縮格納することで、DL格納バッファ210に空き領域を確保するフォールバック処理を行う。すなわち、S506で、DL格納バッファ210の残容量が、算出された特殊パターンのDLの容量より少ないと判断された場合、DL格納バッファ210内のDLからラスタイメージを生成して圧縮し、圧縮したラスタイメージをFBバッファ211に格納する。その後、DL格納バッファ210内の中間データを削除する。処理はその後、S508へ進む。フォールバック処理については後ほど詳述する。
【0068】
S508では、S501のPDLデータの解析結果に基づいて、DLの生成処理を行い、S509へ進む。なお、S507のフォールバック処理に続いてS508でDL生成処理が行われる場合、特殊パターンのDL生成の処理が開始される。S507のフォールアック処理は、全ての描画命令群についてのDLが生成された後、S503にて2値ビットマップ描画命令から特殊パターンが検知された場合に行われる処理だからである。また、この場合、S508の処理の開始時点において、DL格納バッファ210から(後述するように少なくとも一部の)DLは削除されている。S507のフォールバック処理でDL格納バッファ210に格納されたDLが削除された後にS508でDL生成処理が行われるためである。
【0069】
このように、特殊パターンのDLの生成を開始する際に、DL格納バッファ210からDLが削除されている。そのため、特殊パターンのDLの生成処理の途中でDL格納バッファ210の残容量がなくなることに起因して行われる、後述するS510のフォールバック処理を行う可能性を低減することができる。その結果、特殊パターンに対してフォールバック処理を行い、JPEGなどの不可逆圧縮をすることによる特殊パターンの画像の劣化を低減することができる。
【0070】
S509では、S508で生成したDLの容量と、DL格納バッファ210の残容量を比較し、残容量の方が多ければ、S511へ進み、残容量が少なければ、S510でフォールバック処理をおこなう。なおS507とS510のフォールバック処理は同一の処理である。
【0071】
S511では、S508で生成したDLをDL格納バッファ210へ追加すると共に、残容量から追加したDLのサイズ分減じた後、S512へ進む。
【0072】
S512では未処理のPDLデータの有無を確認し、未処理のPDLデータがあればS501へ戻って、PDLの解析処理を継続し、PDLデータの解析処理がすべて済みであれば、S513へ進む。
【0073】
S513では、RIP113でDLの解析ができるように、生成したDLのクローズ処理を行い、クローズしたDLのアドレスをジョブコントロール処理部201へ通知して、PDL解析処理を終了する。S513の、DLのクローズ処理では、DLヘッダ部に、生成したDL全体のサイズ及び、DLに含まれるオブジェクト数を記載するとともに、DLの終端部にDLの終端であることの情報を書き込む。
【0074】
(フォールバック処理)
続いて図5のフローチャート及び図6を参照してS507およびS510のフォールバック処理を説明する。フォールバック処理はジョブコントロール処理部201の制御の下、PDL解析処理部204、RIP処理部206及び画像格納処理部205の連携により実行される。
【0075】
フォールバック処理を開始すると、S601で、PDL解析処理部204が、DL格納バッファ210上に格納されているDLのクローズ処理を行う。PDL解析処理部204は、さらにクローズしたDLのアドレスと、フォールバックにより生成されたDLであることの情報を付加してジョブコントロール処理部201へ通知する。
【0076】
ジョブコントロール処理部201は、PDL解析処理部204より、DL及びフォールバックの通知を受けると、RIP処理部206及び画像格納処理部205を起動する。RIP処理部206は、通知されたDLのレンダリングを行う(S602)。画像格納処理部205は、DLをレンダリングしたラスタイメージを圧縮し、FBバッファ211へ格納する(S603)。レンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われる。全バンドのレンダリング及び圧縮格納処理が終了すると、S604へ進む。
【0077】
詳細には、S602で、RIP処理部206は、ジョブコントロール処理部201よりDLの通知を受けると、バンド単位でレンダリングを行う。RIP処理部206は、レンダリングで生成されたラスタイメージをジョブコントロール処理部201を介して、画像格納処理部205へ通知する。本フォールバック処理で、RIP処理部206の生成するラスタイメージは、フォールバック後に生成されるDLと合成を必要があるため、多値画像である。
【0078】
S603で、画像格納処理部205は、ジョブコントロール処理部201より、ラスタイメージ、フォールバックバッファ211及び圧縮パラメータの指定を受ける。画像格納処理部205は、該ラスタイメージに対し、画像編集用画像処理部116のJPEG圧縮モジュールを利用してJPEG圧縮を施すこと等により、不可逆圧縮画像を生成する。画像格納処理部205はさらに、フォールバックバッファ211への該圧縮画像の格納を試み、フォールバックバッファ211に納まったか否かの圧縮結果を、ジョブコントロール処理部201へ通知する。
【0079】
S604で、ジョブコントロール処理部201は、画像格納処理部205から通知を受けた、圧縮結果を参照し、フォールバックバッファ211にラスタイメージが格納されたか否かを判断する。圧縮結果がフォールバックバッファ211に収まらず格納されていなければ、S602へ戻り、RIP処理及び圧縮格納処理を繰り返す。
【0080】
再度実行されるS603では、ジョブコントロール処理部201はラスタイメージがより高い圧縮率で圧縮されるような圧縮パラメータを画像格納処理部205に通知することで、圧縮画像がフォールバックバッファ211に格納されるように動作する。圧縮パラメータとして、具体的にはQレートが通知される。
【0081】
S604で、ジョブコントロール処理部201が、フォールバックバッファ211にラスタイメージが格納されたと判断すると、S605へ進む。
【0082】
S605で、ジョブコントロール処理部201はPDL解析処理部204へ、全バンドの圧縮されたラスタイメージのアドレスを通知する。圧縮されたラスタイメージのアドレスの通知を受けたPDL解析処理部204は、該圧縮されたラスタイメージを背景イメージとしたDLの生成を行い、フォールバック処理を終了する。ここで生成されるDLは、JPEG圧縮されたラスタイメージを描画するための制御命令であり、FBバッファ211内の圧縮されたラスタイメージへのリンク情報を含む。この制御命令のサイズは数百バイト程度であり、DL全体からすると非常に小さいものになる。
【0083】
以上のように図5に示したフォールバック処理によれば、この処理の開始時点までに生成されているDLをすべてレンダリングしてラスタイメージを生成し、そのラスタイメージをJPEG圧縮してFBバッファ211に格納する。このJPEG圧縮したラスタイメージとフォールバック処理後に引き続き生成されるDLをレンダリング時に合成することで、最終的なラスタイメージを生成することができる。具体的には、この合成処理は、フォールバック処理によって生成されたラスタイメージを背景として、DLを展開することによって生成される描画オブジェクトを上書きする形で行われる。
【0084】
図6は、フォールバック処理におけるRAM104上のDL格納バッファ210及びフォールバクバッファ211の模式図である。図6(a)はフォールバック開始時の、各バッファの状態を表している。DL格納バッファ210には図4のPDL解析処理で生成したDLが格納され、フォールバックバッファ211には図5のフォールバック処理で画像格納処理部205が圧縮したラスタ画像が格納される。
【0085】
図6(a)の符号703はPDL解析処理部204が生成したDLである。このDLがフォールバック処理において、RIP処理部206でラスタライズされ、画像格納処理部205で圧縮されてフォールバックバッファ211へ格納される。
【0086】
図7(b)はフォールバック処理終了時の各バッファの状態を表しており、フォールバックバッファ211には、画像格納処理部205により、JPEG圧縮されたラスタ画像が格納されている。DL格納バッファ210には、前記S605で生成される、前記圧縮されたラスタ画像を背景画像として合成するためのDLが格納されている。また、該背景画像として合成するためのDLは、JPEG圧縮されたラスタイメージを描画するための制御命令であり、フォールバックバッファ内の圧縮された画像へのリンク情報を含む。
【0087】
以上、本実施例によれば、地紋データや電子透かし、アノトデータ等の特殊パターンを含むPDLデータを受信したときに、当該特殊パターンからDLを生成するのに先立ってフォールバックを発生させる。これにより、特殊パターンを含まないDLをレンダリングし圧縮することで、DL格納バッファ210に空きを作り、特殊パターンのDLが格納されることを保証する。これにより、特殊パターンのDL生成中にフォールバックが発生する可能性を低減させ、特殊パターンに非可逆圧縮であるJPEG圧縮がかかることによる特殊パターンの画質劣化を低減させることができる。
【0088】
さらに、本実施例によれば、特殊パターンを受信した場合に、DL格納バッファ210に特殊パターンを描画するDLを格納できる、十分な空きがあればフォールバック処理を行わない。これにより、無駄なフォールバック処理による、画質劣化や処理速度の低下を招くことがない。
【実施例3】
【0089】
以下、実施例3について説明する。本実施例におけるカラーSFPの、コントローユニットの構成、コントローラソフトウェアの構成及び、PDL印刷処理の基本的な動作は、実施例1及び2で説明した図1及び図2で示すものと同一であるため、説明を割愛する。
【0090】
以下、本実施例における、PDL解析処理部204について、図7から図12を参照して説明する。本実施例におけるカラーSFPでは、図3に例示されるPDLデータに加え、図7に例示するPDLデータの印刷をおこなう。
【0091】
(PDLデータ)
図7は、画像データの描画オブジェクトが無い部分だけに地紋パターンが描画されるパターンである下書き地紋パターンを付加した画像出力を得るためのPDLデータである。ホストコンピュータ上では図の上側からデータを生成し、順次カラーSFPへ通知される。すなわち、地紋パターンを描画する2値ビットマップ描画命令(801)が初めに生成され、カラーSFPへ通知され、続いて、地紋パターンを付加する前の画像を描画するための描画命令群(802)が生成され、通知される。なお、2値ビットマップ描画命令には、下書き地紋を描画するための命令であることを示すタグ情報が付加されており、該命令の解析時に、上書き地紋や電子透かし用の命令と区別して、下書き地紋用であることを特定することを容易に行うことができる。
【0092】
(PDL解析処理)
ここで、本実施例のPDL解析処理部204による処理について図8のフローチャートを参照して説明する。
【0093】
PDL解析処理部204は、図3及び図7に例示されるPDLデータが通知されると、順次データの解析を行い(S901)、解析の結果及び現在の状態に応じて処理の分岐を行う(S902、S904、S905)。
【0094】
S901のPDL解析結果が、下書き地紋である場合、S903へ進み、下書き地紋用のDLを生成する。下書き地紋用DLは、RIP113で描画に使用する情報部分については、他の2値ビットマップを描画するDLコマンドと変わりはないが、RIP113では読み飛ばされる領域に、下書き地紋用DLであることを示す情報が埋め込まれる。また、下書き地紋用のDLのサイズは、FB発生時に別途追加の必要な、フォールバック用背景描画DLのサイズも含めておき、S913でのDL追加処理で利用する。
【0095】
S903で下書き地紋用DLを生成したのち、S911へ進む。
一方、S901でPDL解析結果が、下書き地紋の描画命令出なかった場合は、S904、S905へ進み、PDLデータの解析の結果及び現在の状態に応じて処理の分岐を行う。
【0096】
現在の状態が、特殊パターンモードである場合(S904;Yes)、又は特殊パターンを示す描画命令ではない場合(S905;Yes)、S910のDL生成処理へ進む。ここで、前記現在の状態は、PDL解析処理の起動時には、通常モードに初期化されており、S905で、初めて特殊パターン描画を示す描画命令を検知したときに、S906で特殊パターンモードに設定される。S905の特殊パターンモードの判定処理により、一度特殊パターン描画を示す描画命令を検知したのちは、特殊パターン描画命令の検知を省略し高速処理を行うことができる。
【0097】
S905の特殊パターン判定処理では、PDLデータの解析の結果、2値ビットマップに含まれるタグ情報や、アノトパターン開始のタグ情報により、特殊パターンか否かの判定を行う。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンの判定を行うとしているが、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの判定を行ってもよい。
【0098】
S906で特殊パターンモードの設定を行った後、S907では、特殊パターンを描画するために生成されるDLの容量の見積もりを行う。DL容量の見積もりにおいて、特殊パターンが、地紋データ及び電子透かしの場合は、2値ビットマップのサイズとDL中で2値ビットマップを描画するコマンドのサイズより見積もることができる。また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と、用紙サイズより見積もることができる。
【0099】
S908では、S907で見積もった特殊パターンの描画のためのDLの容量と、RAM104上のDL格納バッファ210の残容量を比較する。残容量の方が多ければ、S910のDL生成処理へ進み、残容量の方が少なければ、S909のフォールバック処理へ進む。
【0100】
S909のフォールバック処理では、DL格納バッファ210内の空き領域を確保するために現在生成済みのDLを一度レンダリングし、圧縮格納する。その後処理は、S910へ進む。本実施例のフォールバック処理については後ほど詳述する。
【0101】
S910では、S901のPDLデータの解析結果に基づいて、DLの生成処理を行い、S911へ進む。
【0102】
S911では、S910で生成したDLの容量と、DL格納バッファ210の残容量を比較する。すなわち、この時点で文書情報(描画命令群802)及び付加情報(2値ビットマップ描画命令801)から生成されている中間データ(DL)の容量と、DL格納バッファ210の残容量とを比較する。残容量の方が多ければ、S913へ進み、残容量が少なければ、S912でフォールバック処理をおこなう。なおS909とS912のフォールバック処理は同一の処理である。
【0103】
S913では、S910で生成したDLをDL格納バッファ210へ追加すると共に、残容量から追加したDLのサイズ分減じた後、S914へ進む。
【0104】
S914では未処理のPDLデータの有無を確認する。未処理のPDLデータがあればS901へ戻って、PDLの解析処理を継続し、PDLデータをすべて処理済みであれば、S915へ進む。
【0105】
S915では、RIP113でDLの解析ができるように、生成したDLのクローズ処理を行い、クローズしたDLのアドレスをジョブコントロール処理部201へ通知して、PDL解析処理を終了する。S915のDLのクローズ処理では、DLヘッダ部に、生成したDL全体のサイズ、及びDLに含まれるオブジェクト数を記載するとともに、DLの終端部にDLの終端であることの情報を書き込む。
【0106】
(フォールバック処理)
続いて図9のフローチャート及び図10を参照してS909およびS912のフォールバック処理を説明する。フォールバック処理はジョブコントロール処理部201の制御の下、PDL解析処理部204、RIP処理部206及び画像格納処理部205の連携により実行される。
【0107】
フォールバック処理を開始すると、S1001で、PDL解析処理部204は、DL格納バッファ210上に格納されているDLのクローズ処理を行い、S1002へ進む。
【0108】
S1002で、PDL解析処理部204は、クローズしたDL中に下書き地紋のDLオブジェクトが含まれるか判断し、含まれている場合はS1003へ進む。下書き地紋が含まれていない場合は、前記クローズしたDLが、フォールバックにより生成されたDLであることの情報を付加してクローズしたDLのアドレスを、ジョブコントロール処理部201へ通知する。
【0109】
S1003では、PDL解析処理部204は、一度クローズしたDLの分離処理を行う。DLの分離処理は、フォールバックのレンダリング対象から、画像描画用のDLと下書き地紋のDLとを分離し、DLの再構成を行う処理である。DLを分離し、画像描画用のDLに対してのみ、フォールバックにおけるレンダリング及び圧縮処理を行うことで、下書き地紋のパターンが圧縮による劣化をうけないようにする。PDL解析処理部204は、分離処理で再構成したDLを、ジョブコントロール処理部201へ通知する。DL分離処理の詳細については図10を参照して後述する。
【0110】
ジョブコントロール処理部201は、PDL解析処理部204より、DL及びフォールバックの通知を受けると、RIP処理部206及び画像格納処理部205を起動し、通知されたDLのレンダリング及び圧縮格納処理を行う(S1104、S1105)。レンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われ、全バンドのレンダリング及び圧縮格納処理が終了すると、S1006へ進む。
【0111】
S1004で、RIP処理部206は、ジョブコントロール処理部201よりDLの通知を受けると、S1003で分離された画像描画用のDLを含むDL(下書き地紋のDLを含まないDL)に対してバンド単位でレンダリングを行う。レンダリングの対象となるDLについては図10を参照して後述する。レンダリングで生成されたラスタイメージをジョブコントロール処理部201を介して、画像格納処理部205へ通知する。本フォールバック処理で、RIP処理部206の生成するラスタイメージは、フォールバック後に生成されるDLと合成を必要があるため、多値画像である。
【0112】
S1105で、画像格納処理部205は、ジョブコントロール処理部201より、S1004で生成されたラスタイメージ、フォールバックバッファ211及び圧縮パラメータの指定を受ける。画像格納処理部205は、該ラスタイメージに対し、画像編集用画像処理部116のJPEG圧縮モジュールを利用してJPEG圧縮を施し、圧縮画像を生成する。画像格納処理部205はさらに、フォールバックバッファ211への該圧縮画像の格納を試み、フォールバックバッファ211に納まったか否かの圧縮結果を、ジョブコントロール処理部201へ通知する。
【0113】
S1006で、ジョブコントロール処理部201は画像格納処理部205から通知を受けた、圧縮結果を参照し、フォールバックバッファ211にラスタイメージが格納されたか否かを判断する。圧縮結果がフォールバックバッファ211に収まらず格納されていなければ、S1104へ戻り、RIP処理及び圧縮格納処理を繰り返す。
【0114】
再度実行されるS1005では、ジョブコントロール処理部201はラスタイメージがより高い圧縮率で圧縮されるような圧縮パラメータを画像格納処理部205に通知することで、圧縮画像がフォールバックバッファ211に格納されるように動作する。圧縮パラメータとして、具体的にはQレートが通知される。
【0115】
S1006で、ジョブコントロール処理部201が、フォールバックバッファ211に全バンドのラスタイメージが格納されたと判断すると、S1007へ進む。
【0116】
S1007で、ジョブコントロール処理部201はPDL解析処理部204へ、全バンドの圧縮されたラスタイメージのアドレスを通知する。圧縮されたラスタイメージのアドレスの通知を受けたPDL解析処理部204は、該ラスタイメージを背景イメージとしたDLの生成を行い、フォールバック処理を終了する。
【0117】
ここで、S1003のDL分離処理の内容を、図10を参照して説明する。図10は、DL分離処理の前後の、RAM104上のDL格納バッファ210及び該バッファに含まれるDLの模式図である。図10(a)は、DL分離処理を実行する前のDL格納バッファ210の一例であり、図10(b)は、図10(a)にDL分離処理適用した後のDL格納バッファ210の状態を表している。
【0118】
符号1102は、白塗り等の背景を描画する背景描画DLである。符号1103は、下書き地紋を2値ビットマップとして描画するDLである。符号1104は、地紋が付加される本来の画像を描画するためのDL群である。
【0119】
DLクローズ直後の図10(a)では、DLが、DL格納バッファ210の先頭(図の下側)から、背景描画DL1102、下書き地紋用DL1103、画像描画用DL1104の順で格納されている。また、図10の符号1106は、クローズされたDLの先頭を表しており、図10の符号1107はクローズされたDLの終端を表している。
【0120】
S1003のDL分離処理は、画像描画用DL1104のみをレンダリング処理するために、一度クローズしたDLから、画像描画用DL1104のみを抜き出し、DLの再構成を行う。DL格納バッファ210上の画像描画用DL1104の格納されている領域と、空き領域を利用して、下書き地紋フォールバック背景描画用DL1105と画像描画用DL1104からなるDLを再構成する。なお、下書き地紋フォールバック背景描画用DL1105は、画像描画用DL1104で描画されない部分が透明度100%を持つような背景を描画するためのDLである。S1003のDL分離処理を開始する際には、DL格納バッファ210に下書き地紋フォールバック背景描画用DL1105を格納できるサイズの空きがあることが必要である。なお、下書き地紋フォールバック背景描画用DL1105のサイズは、30バイト程度のものであり、非常に小さいサイズである。
【0121】
S1003のDL分離処理の結果、図10(b)に示すように、下書き地紋フォールバック背景描画用DL1105と画像描画用DL1104からなるDLが、メモリ上に順に配置されたDLが再構築され、ジョブコントロール処理部201へ通知される。
【0122】
RIP113は、DLの先頭1105から順次DLの解析を行いながら、ラスタライズを行うため、メモリ上に、描画順でDLを配置しておく必要がある。本DL分離処理により、下書き地紋DL1103を除いたDLを再構成することで、下書き地紋を除いた部分のみのフォールバック処理が可能となる。すなわち、画像描画用DL1104及び下書き地紋フォールバック背景描画用DL1105についてDLを再構成し、当該再構成したDLに対してフォールバック処理を行う。
【0123】
以上、本実施例によれば、下書き地紋パターンを含むPDLデータを受信した場合に、DL分離処理により、DLを再構成することで、下書き地紋パターンをフォールバックのレンダリング対処から外す。これにより、地紋パターンの描画用DLオブジェクトがDLの途中に生成される下書き地紋であっても、地紋パターンをファールバックのレンダリング及び圧縮の対象外することができる。結果、下書き地紋パターンに対しては、フォールバックによる非可逆圧縮が行われないため、最終的な出力画像において劣化の無い下書き地紋パターンが描画される。
【0124】
また、上書き地紋、電子透かし、アノトデータなどの特殊パターンを含むPDLデータは、実施例1と同様に、必要に応じて特殊パターンのDL生成処理に先立ってフォールバックを発生させるため、特殊パターンの画質劣化は発生しない。さらに、上書き地紋、電子透かし、アノトデータを含むPDLデータでは、DL分離処理の実施の必要が無いため、より高速な処理が可能である。
【0125】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0126】
113 RIP
104 RAM
201 ジョブコントロール処理部
204 PDL解析処理部
206 RIP処理部
【技術分野】
【0001】
本発明は、印刷データ上に付加データの埋め込まれた画像を出力する画像形成装置及び画像形成方法に関する。
【背景技術】
【0002】
近年、地紋、電子透かし、及びアノト(登録商標)パターンのように、印刷出力に特殊パターンを付加することで、印刷出力そのものの価値を向上させる技術が開発され、画像形成装置に搭載されてきている。
【0003】
地紋は、複写時に浮き出て出力される潜像部を構成する潜像パターンと、複写時にドットが消える背景部を構成する背景パターンで構成される。これらのパターンを組み合わせたものを、印刷したい画像の上側または下側に重ね合わせた印刷出力(印刷物)を生成(作成)することにより、該印刷出力を複写しようとしたときに、潜像パターンが浮き上がる。
【0004】
電子透かしは、意味のある情報を埋めこんだパターンを、印刷したい画像に付加して印刷出力を生成する。該印刷出力をスキャンする時に、パターンを解析することにより、埋め込まれた情報を抽出し、電子情報として利用することができる。
【0005】
また、アノトパターンはスウェーデンのAnoto社が開発した電子透かしの一種であり、用紙上の位置情報を埋め込んだパターンとなっている。
【0006】
これらの特殊パターンが印刷データと共に、PDLデータとしてホストからプリンタに送られた場合の処理について説明する。
【0007】
プリンタは、まずそのPDLデータから中間データを生成し、中間データを中間データ格納バッファに格納する。全ての中間データが格納されると、今度は、中間データをラスタライズして画像を生成し、印刷する(即ち、印刷物を作成する)。
【0008】
しかしながら、中間データのデータ量が多く、中間データ格納バッファが一杯になることがある。このような場合、従来技術では、フォールバック処理が行われていた。
【0009】
フォールバック処理とは、中間データの生成及びバッファへの格納の処理の途中で、中間データ格納バッファに格納されている中間データを一旦レンダリングしてJPEG圧縮する処理である。もちろん、この処理が行われると、その途中までの中間データはバッファから削除されることになる。
【0010】
こうすることにより、中間データ格納バッファに空きを作り、引き続いて生成される中間データを中間データ格納バッファに格納できるようになる。良いことずくめのようにも見えるが、問題もある。JPEG圧縮だ。
【0011】
前記特殊パターンは、周期性のない、オン/オフが頻繁に繰り返されるパターンである。このようなパターンの画像は、通常の自然画やグラフィック画像に比べ、高周波成分が多いためJPEG圧縮により圧縮をかけたとしてもそれ程データ量は削減されない。もちろん、データ量を削減するために圧縮率を高めて圧縮するのも一手ではあるが、そのようなことをすると画像劣化が激しくなり、地紋や電子透かし、アノトパターンとしての機能が劣化もしくは全く働かなくなってしまう。
【0012】
このような問題を回避するため、特許文献1では、前記特殊パターンを含む印刷データには、JPEG圧縮のような非可逆圧縮ではなく、可逆圧縮を適用する方法が開示されている。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特開2002−127409号公報
【発明の概要】
【発明が解決しようとする課題】
【0014】
一方で、前記特許文献1のように、特殊パターンを含む画像を可逆圧縮すると、圧縮画像のサイズが大きくなる。その結果、圧縮画像を格納するためにJPEG圧縮をする場合よりも大きなメモリを用意する必要がある。
【0015】
本発明は、上記問題に鑑みてなされたものである。その課題は、フォールバック処理による画像劣化を低減させることが可能な画像形成装置及び画像形成方法を提供することである。
【課題を解決するための手段】
【0016】
本発明の画像形成装置は、文書情報及び付加情報を受信する受信手段と、前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成手段と、前記生成された中間データを順次格納する第1のバッファと、第2のバッファと、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮手段とを備えることを特徴とする。
【発明の効果】
【0017】
以上、本発明によれば、フォールバック処理による画像劣化を低減させることが可能な画像形成装置及び画像形成方法を提供することができる。
【図面の簡単な説明】
【0018】
【図1】本発明の一実施形態における、コントローラソフトウェアの構成を示すブロック図である。
【図2】本発明の実施例2における、カラーSFPのPDL印刷処理を示すフローチャートである。
【図3】本発明の実施例1及び2における、PDLデータの概念図である。
【図4】本発明の実施例2における、PDL解析処理を示すフローチャートである。
【図5】本発明の実施例2における、フォールバック処理を示すフローチャートである。
【図6】本発明の実施例2における、フォールバック処理前後のDL格納バッファの模式図である。
【図7】本発明の実施例3における、下書き地紋を含むPDLデータの概念図である。
【図8】本発明の実施例3における、PDL解析処理を示すフローチャートである。
【図9】本発明の実施例3における、フォールバック処理を示すフローチャートである。
【図10】本発明の実施例3における、DL分離処理を説明するDL格納バッファの模式図である。
【発明を実施するための形態】
【0019】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらに限定する趣旨のものではない。
【実施例1】
【0020】
(コントローラソフトウェア構成)
図1は、本実施形態に係る画像形成装置の一例として、カラーSFP(Single Function Printer)1の構成を示すブロック図である。
符号201から207はソフトウェアモジュールである。これらは、カラーSFP1内部のCPUがROM内部のプログラムを適宜RAMに読み出し、実行することにより実現されるモジュールとなっている。
【0021】
また、各ソフトウェアモジュールは、RAM内のDL(ディスプレイリスト)格納バッファ210及びフォールバック(FB)バッファ211と自由にアクセス可能な構成となっている。
【0022】
図1に示すジョブコントロール処理部201は、カラーSFP1内で発生するあらゆるジョブの制御を行う。
【0023】
ネットワーク処理部202は、LAN102を通じて外部の機器との通信制御を行う。例えば、ネットワーク処理部202はLAN102を介して各機器からの制御コマンドやデータを受信すると、その内容を、ジョブコントロール処理部201へ通知する。また、ジョブコントロール処理部201からの指示に基づき、LAN102を介して各機器へ制御コマンドやデータの送信を行う。
【0024】
UI処理部203は、主に操作部108に係る制御をおこなう。操作部108は、操作者が操作部108を操作した内容を、ジョブコントロール処理部201へ通知すると共に、ジョブコントロール処理部201からの指示に基づいて、操作部108上の表示画面の表示内容を制御する。
【0025】
PDL解析処理部204は、ジョブコントロール処理部201の指示に基づいて、ネットワーク処理部202が受信したPDLデータを解析し、RIP処理部206で処理可能なディスプレイリスト(DL、即ち、中間データ)を生成する。このPDL解析処理部204は、生成したDLをRAM104上のDL格納バッファ210に格納し、DLを格納した領域を示すアドレスを、ジョブコントロール処理部201へ通知する。
【0026】
RIP処理部206は、DL格納バッファ210に格納されているDLのレンダリングをRIP113に行わせる。このレンダリングにより、バンド単位でラスタイメージ(画像)がメモリ上に生成される。その上で、RIP処理部206は、メモリ上の各バンドの格納アドレスをジョブコントロール処理部201へ通知する。
【0027】
画像格納処理部205は、ジョブコントロール処理部201の指示を受け、画像編集用画像処理部116に、指示された画像に対する圧縮処理を行わせ、圧縮後の画像をRAM104上の指定バッファに格納させる。ジョブコントロール処理部201による指示は、格納アドレスを画像格納処理部116に通知することにより行われる。画像格納処理部205は、さらに、バッファにおける格納アドレスをジョブコントロール処理部201に通知する。
【0028】
プリント処理部207は、ジョブコントロール処理部201の指示に基づいて、画像編集用画像処理部116、プリンタ画像処理115およびプリンタエンジン101を制御し、画像の印刷処理を行う。
【0029】
なお、ジョブコントロール処理部201の指示は、印刷対象となっている圧縮後の画像の格納アドレス、画像関連情報(画像のサイズ、カラーモード、解像度)、レイアウト情報(オフセット、拡大縮小、面つけ)および出力用紙情報(サイズ、印字方向)を含む。
【0030】
これらの指示を受けて、画像編集用画像処理部116およびプリンタ画像処理115は、画像に対して適切な画像処理を施し、プリンタエンジン101を制御して指定用紙への印刷を行う。当該画像処理には、解凍処理、拡大縮小処理、色変換処理、解像度変換処理、面付け処理、回転処理などが含まれる。
【0031】
(PDLデータ)
図3は、ホストコンピュータが生成する、PDLデータの概念図である。図3(a)は、上書きの地紋パターンの付加された印刷出力を得るためのPDLデータである。図3(b)は、電子透かしの付加された印刷出力を得るためのPDLデータである。図3(c)は、アノトパターンの付加された印刷出力を得るためのPDLデータである。それぞれのPDLデータは、文書情報である描画命令群(401、403、405)及び付加情報(402、404、406、407)を有する。それぞれのPDLデータは、ホストコンピュータ上で、図の上側から生成され、順次カラーSFP1に通知される。すなわち、カラーSFP1は、ネットワーク処理部202を介して文書情報、付加情報の順で文書情報及び付加情報を受信する。
【0032】
例えば図3(a)のPDLデータでは、ホストコンピュータ上で描画命令郡(401)が先に生成され、カラーSFP1に通知される。続いて、地紋パターンを描画する2値ビットマップ描画命令(402)が付加情報として生成されカラーSFP1に通知される。すなわち、カラーSFP1は、描画命令郡(401)、2値ビットマップ描画命令(402)の順でPDLデータを受信する。同様に、図3(b)のPDLデータは、描画命令郡(403)、電子透かしを描画する2値ビットマップ命令(404)の順で生成され、同じ順序でPDL内のデータがカラーSFP1へ通知される。図3(c)のPDLデータは、描画命令郡(405)、アノトパターン描画用のコマンドであることを示すタグ(406)、アノトパターン描画用の描画命令郡(407)の順で生成され、同じ順序でPDL内のデータがカラーSFP1へ通知される。
【0033】
ここで、アノトパターン描画用の描画命令群は、ダウンロード文字の登録と該ダウンロード文字の描画命令により構成されている。本実施例では、地紋パターンを描画する2値ビットマップ描画命令、電子透かしを描画する2値ビットマップ描画命令、及び以降のデータがアノトパターン描画用コマンドであることを示すタグのことを特殊パターン描画命令と記載する。
【0034】
(PDL印刷処理)
次に、カラーSFP1において、受信したPDLデータからDLを生成し、ラスタイメージを生成する処理を説明する。
【0035】
ステップ1.まず、カラーSFP1のネットワーク処理部202は、図3に示すようなPDLデータを受信するために、このPDLデータの細切れを図の上の部分から順次受信する。
【0036】
ステップ2.PDL解析処理部204は、描画命令群(文書情報)の受信が終了し、受信中のPDLデータの細切れが、特殊パターン(付加情報)に切り替わったか否か判断する。
【0037】
PDLデータの細切れが特殊パターンであるかの判断処理は、PDLデータの解析の結果、2値ビットマップ描画命令に含まれるタグ情報や、アノトパターン開始のタグ情報が検知されるか否かによって行う。検知された場合、特殊パターンと判断する。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンであるかを判断しているが、これに限定されず、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの検知を行ってもよい。
【0038】
ステップ2の判断の結果、受信したPDLデータの細切れが、前回のステップ1の処理で受信したものと同様に描画命令群であった場合、又は前回のステップ1の処理で受信したものと同様に特殊パターンであった場合、ステップ3へ進む。また、判断の結果、PDLデータの細切れが描画命令群から特殊パターンに切り替わったと判断された場合、後述するステップAへ進む。
【0039】
ステップ3.PDL解析処理部204は、受信したPDLデータの細切れを解釈してDLを生成し(中間データ生成)、DL格納バッファ210(第1のバッファ)に格納する。このステップでは、DLが順次生成され、生成されたDLがDL格納バッファ210に順次格納される。
【0040】
ステップ4.まだ受信していないPDLデータの細切れがある場合はステップ1へ進み、受信が終了した場合はステップ5へ進む。
【0041】
ステップ5.RIP処理部206は、DL格納バッファ210(第1のバッファ内)に格納されているDLを全てレンダリングし、ラスタイメージを生成する。後述するステップBの処理で圧縮画像の格納アドレスがDL格納バッファ210に格納されている場合は、この圧縮画像を解凍する。生成されたラスタイメージ及び解凍された画像はプリント処理部207へ出力され、処理は終了する。
【0042】
ステップA.ステップ2で特殊パターンに切り替わったと判断された場合、DL格納バッファ210に格納されているDLを全てレンダリングし、ラスタイメージを生成する。その後、レンダリングされたDLをDL格納バッファ210から削除し、ステップBへ進む。
【0043】
ステップB.ステップAで生成されたラスタイメージを圧縮してFBバッファ211(第2のバッファ)に格納する。FBバッファ211に格納された圧縮後のデータの格納アドレスをDL格納バッファ210に格納する。処理はステップ3へ進む。
【0044】
以上のように本実施例によれば、描画命令群(文書情報)のDL生成処理が終了し、DL生成の対象が特殊パターンに切り替わる際に、DL格納バッファ210内のDLからラスタイメージを生成して圧縮し、DL格納バッファ210内のDLを削除する。従って、DL格納バッファ210に十分に空き容量がある状態で特殊パターンに対するDL生成処理を開始するため、特殊パターンに対するDL生成処理の途中でフォールバック処理が発生する可能性を抑えることができる。その結果、フォールバック処理における不可逆圧縮による特殊パターンの画像劣化を低減することができる。
【0045】
なお、本実施例において、ステップ2の判断の結果、PDLデータの細切れが描画命令群から特殊パターンに切り替わったと判断された場合、ステップA及びBの処理を行うこととしたが、変形例として次のような処理を行っても良い。
【0046】
すなわち、ステップAの処理を行う前に、DL格納バッファ210の空き容量と生成される特殊パターンの全体のDLの容量とを比較し、空き容量の方が大きい場合はステップ3へ進み、そうでない場合はステップAへ進む。なお、DLの容量は、特殊パターンが地紋データ及び電子透かしの場合は、PDLの2値ビットマップ描画命令に含まれている2値ビットマップのサイズ情報より見積もることができる。また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と用紙サイズとからDLの容量を見積もることができる。見積方法の詳細は実施例2で説明する。
【0047】
このようにDLの空き容量が少ない場合にのみステップA及びBの処理を行うため、PDLデータの印刷処理速度の低下を抑えることができる。
【実施例2】
【0048】
以下、実施例2について説明する。本実施例は、実施例1で説明したカラーSFP1による処理と他の追加の処理とを含むPDL印刷処理の詳細について説明する。本実施例におけるカラーSFPのコントロールユニットの構成、コントローラソフトウェアの構成及びPDLデータの構成は、実施例1で説明した図1及び図3と同様であるため、説明を割愛する。
【0049】
(PDL印刷処理)
本実施例に係る画像形成装置の一例であるカラーSFP1がLAN102上のホストコンピュータから、PDLデータを受信し用紙上へ印刷するまでの、PDL印刷処理を図2のフローチャートを参照して説明する。
【0050】
ネットワーク処理部202は、外部ネットワークLAN102からPDLデータを受信すると、そのPDLデータをジョブコントロール処理部201へ通知する。すると、ジョブコントロール処理部201は、通知されたPDLデータを解析するため、PDL解析処理部204を起動しPDLデータを通知する。
【0051】
S301で、PDL解析処理部204は、通知されたPDLデータを解析することで、DLを生成する。PDL解析処理部204はさらに、生成したDLをDL格納バッファ210へ格納し、格納したDLのアドレスをジョブコントロール処理部201へ通知する。このPDL解析処理部204の動作については、後程詳述する。ジョブコントロール処理部201は、PDL解析処理部204よりDLの格納アドレスの通知を受けると、RIP処理部206及画像格納処理部205を起動する。
【0052】
S302で、RIP処理部206は、DL格納バッファ210に格納されているDLのレンダリングをRIP113に行わせる。このレンダリングにより、バンド単位でラスタイメージ(例、2値画像)がRAM104上の画像バッファに生成される。その上で、RIP処理部206は、各バンドの格納アドレスをジョブコントロール処理部201へ通知する。すると、ジョブコントロール処理部201は、その各バンドの格納アドレスを画像格納処理部205に通知する。
【0053】
S303で、画像格納処理部205は、その格納アドレスに格納された画像に対する可逆圧縮処理を行い、圧縮後の画像をRAM104上の指定バッファに格納する。また、圧縮後の画像の格納アドレスをジョブコントロール処理部201に通知する。
【0054】
なお、このレンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われ、全バンドのレンダリング及び圧縮格納処理が終了すると、S304へ進む。以後、ジョブコントロール処理部201は、全バンドの圧縮済みラスタデータを一纏めにし、画像データとして管理する。なお、この圧縮は、例えば、JBIG圧縮となっている。
【0055】
S304で、ジョブコントロール処理部201は、プリント処理部207を起動し、画像の印刷処理を行う。この時の具体的な処理は、プリント処理部207の説明で前述したとおりである。
【0056】
(PDL解析処理)
ここで、図4のフローチャートを参照して、図2のS301にて行われるPDL解析処理部204による処理ついて説明する。
【0057】
PDL解析処理部204は、図3に例示されるPDLデータが通知されると、順次PDLデータの解析を行い(S501)、現在設定されている状態(モード)及び解析の結果に応じて処理の分岐を行う(S502、S503)。
【0058】
すなわち、現在設定されているモードが特殊パターンモードである場合、処理はS508へ進む。また、現在設定されているモードが特殊パターンモードではなく、かつ、PDLの解析結果が特殊パターンである場合、処理はS504へ進む。現在設定されているモードが特殊パターンモードではなく、かつ、解析結果が特殊パターンでない場合、処理はS508へ進む。
【0059】
ここで、現在設定されているモードとは、現在処理中のPDLデータが特殊パターンであるか否かを示すものである。図4に示す処理が開始する際の初期モードは、通常モード(特殊パターンモードではないモード)となっている。そのため、最初、処理は、S501の後、S502からS503へと流れていくことになる。その後、S503で特殊パターン描画を示す描画命令を検知したか判定しているが、検知されなかった場合はS508へと流れていくことになる。一方、ひとたび検知されるとS504へと流れ、特殊パターンモードが設定される。
【0060】
以上S502とS503の処理をまとめると、次のとおりである。すなわち、特殊パターンが初めて検出されるまでは処理は全てS503からS508へと流れる。ひとたび特殊パターンが検出されるとその時だけはS504からS507の処理を行うが、その処理が終わると、S502からS508へと流れる系が出来ることになる。すなわち、S503の処理によれば、全ての描画命令群(文書情報)のDL(中間データ)が生成され、DL格納バッファ210への格納が終了したことにより、2値ビットマップ描画命令(付加情報)から特殊パターンが検知されたか否かが判断される。特殊パターンが検知された場合、S504からS507の処理が行われる。
【0061】
なお、S503の特殊パターン判定処理では、PDLデータの解析の結果、2値ビットマップ描画命令に含まれるタグ情報や、アノトパターン開始のタグ情報が検知された場合、特殊パターンが検知されたと判定している。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンがあるか検知しているが、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの検知を行ってもよい。
【0062】
S504で現在のモードを特殊パターンモードに設定した後、S505では、特殊パターンを描画するために生成されるDLの容量の見積もりを行う。DL容量の見積もりにおいて、特殊パターンが、地紋データ及び電子透かしの場合は、2値ビットマップ描画命令に含まれている2値ビットマップのサイズ情報を用いてDLの容量を見積もることができる。なお、2値ビットマップのサイズ情報は、2値ビットマップ描画命令の先頭部分に含まれている。
【0063】
例えば、2値ビットマップ描画命令に含まれる2値ビットマップのサイズが、4960×7000であった場合、2値ビットマップの容量は、4960×7000÷8=約4.139Mバイトとなる。2値ビットマップを描画するDLの容量は、2値ビットマップの容量+2値ビットマップを描画するための制御命令(60バイト)である。従って、2値ビットマップを描画するDLの容量は、4.14Mバイトと見積もっておけばよい。
【0064】
また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と、出力用紙サイズより見積もることができる。例えば、アノトパターンは約120種類のダウンロード文字の組み合わせで構成されるが、各文字のビットマップの平均サイズは約30ピクセルである。このダウンロード文字1文字あたりの登録に要するDL中の容量は約8バイトであるため、ダウンロード文字の登録に120*8=960バイト消費する。また、用紙サイズがA4であるとすると、描画領域のサイズは、4960*7000ピクセルであるため、4960*7000/30=約1157000文字で、アノトパターンを構成することができる。一方で、ダウンロード文字を1文字描画するためのDL中のコマンド容量は、約10バイトであるので、1157000*10=約11.04Mバイトとなる。これにより、A4サイズの用紙に対しては、ダウンロード文字の登録分も含め、使用するDLサイズの容量を11.1Mバイトに見積もっておけば十分であることがわかる。
【0065】
以上のようにS505の処理によれば、2値ビットマップ描画命令(付加情報)から特殊パターンが検知された場合、特殊パターンのDLの容量が算出される。
【0066】
S506では、S505で見積もった特殊パターンの描画のためのDLの容量と、RAM104上のDL格納バッファ210の残容量を比較し、残容量の方が多ければ、S508のDL生成処理へ進み、残容量が少なければ、S507のフォールバック処理へ進む。すなわちS506では、DL格納バッファの残容量が、算出された特殊パターンのDLの容量より少ないか否かを判断する。
【0067】
S507では、既に生成済みのDLを一度レンダリングし、FBバッファ211に圧縮格納することで、DL格納バッファ210に空き領域を確保するフォールバック処理を行う。すなわち、S506で、DL格納バッファ210の残容量が、算出された特殊パターンのDLの容量より少ないと判断された場合、DL格納バッファ210内のDLからラスタイメージを生成して圧縮し、圧縮したラスタイメージをFBバッファ211に格納する。その後、DL格納バッファ210内の中間データを削除する。処理はその後、S508へ進む。フォールバック処理については後ほど詳述する。
【0068】
S508では、S501のPDLデータの解析結果に基づいて、DLの生成処理を行い、S509へ進む。なお、S507のフォールバック処理に続いてS508でDL生成処理が行われる場合、特殊パターンのDL生成の処理が開始される。S507のフォールアック処理は、全ての描画命令群についてのDLが生成された後、S503にて2値ビットマップ描画命令から特殊パターンが検知された場合に行われる処理だからである。また、この場合、S508の処理の開始時点において、DL格納バッファ210から(後述するように少なくとも一部の)DLは削除されている。S507のフォールバック処理でDL格納バッファ210に格納されたDLが削除された後にS508でDL生成処理が行われるためである。
【0069】
このように、特殊パターンのDLの生成を開始する際に、DL格納バッファ210からDLが削除されている。そのため、特殊パターンのDLの生成処理の途中でDL格納バッファ210の残容量がなくなることに起因して行われる、後述するS510のフォールバック処理を行う可能性を低減することができる。その結果、特殊パターンに対してフォールバック処理を行い、JPEGなどの不可逆圧縮をすることによる特殊パターンの画像の劣化を低減することができる。
【0070】
S509では、S508で生成したDLの容量と、DL格納バッファ210の残容量を比較し、残容量の方が多ければ、S511へ進み、残容量が少なければ、S510でフォールバック処理をおこなう。なおS507とS510のフォールバック処理は同一の処理である。
【0071】
S511では、S508で生成したDLをDL格納バッファ210へ追加すると共に、残容量から追加したDLのサイズ分減じた後、S512へ進む。
【0072】
S512では未処理のPDLデータの有無を確認し、未処理のPDLデータがあればS501へ戻って、PDLの解析処理を継続し、PDLデータの解析処理がすべて済みであれば、S513へ進む。
【0073】
S513では、RIP113でDLの解析ができるように、生成したDLのクローズ処理を行い、クローズしたDLのアドレスをジョブコントロール処理部201へ通知して、PDL解析処理を終了する。S513の、DLのクローズ処理では、DLヘッダ部に、生成したDL全体のサイズ及び、DLに含まれるオブジェクト数を記載するとともに、DLの終端部にDLの終端であることの情報を書き込む。
【0074】
(フォールバック処理)
続いて図5のフローチャート及び図6を参照してS507およびS510のフォールバック処理を説明する。フォールバック処理はジョブコントロール処理部201の制御の下、PDL解析処理部204、RIP処理部206及び画像格納処理部205の連携により実行される。
【0075】
フォールバック処理を開始すると、S601で、PDL解析処理部204が、DL格納バッファ210上に格納されているDLのクローズ処理を行う。PDL解析処理部204は、さらにクローズしたDLのアドレスと、フォールバックにより生成されたDLであることの情報を付加してジョブコントロール処理部201へ通知する。
【0076】
ジョブコントロール処理部201は、PDL解析処理部204より、DL及びフォールバックの通知を受けると、RIP処理部206及び画像格納処理部205を起動する。RIP処理部206は、通知されたDLのレンダリングを行う(S602)。画像格納処理部205は、DLをレンダリングしたラスタイメージを圧縮し、FBバッファ211へ格納する(S603)。レンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われる。全バンドのレンダリング及び圧縮格納処理が終了すると、S604へ進む。
【0077】
詳細には、S602で、RIP処理部206は、ジョブコントロール処理部201よりDLの通知を受けると、バンド単位でレンダリングを行う。RIP処理部206は、レンダリングで生成されたラスタイメージをジョブコントロール処理部201を介して、画像格納処理部205へ通知する。本フォールバック処理で、RIP処理部206の生成するラスタイメージは、フォールバック後に生成されるDLと合成を必要があるため、多値画像である。
【0078】
S603で、画像格納処理部205は、ジョブコントロール処理部201より、ラスタイメージ、フォールバックバッファ211及び圧縮パラメータの指定を受ける。画像格納処理部205は、該ラスタイメージに対し、画像編集用画像処理部116のJPEG圧縮モジュールを利用してJPEG圧縮を施すこと等により、不可逆圧縮画像を生成する。画像格納処理部205はさらに、フォールバックバッファ211への該圧縮画像の格納を試み、フォールバックバッファ211に納まったか否かの圧縮結果を、ジョブコントロール処理部201へ通知する。
【0079】
S604で、ジョブコントロール処理部201は、画像格納処理部205から通知を受けた、圧縮結果を参照し、フォールバックバッファ211にラスタイメージが格納されたか否かを判断する。圧縮結果がフォールバックバッファ211に収まらず格納されていなければ、S602へ戻り、RIP処理及び圧縮格納処理を繰り返す。
【0080】
再度実行されるS603では、ジョブコントロール処理部201はラスタイメージがより高い圧縮率で圧縮されるような圧縮パラメータを画像格納処理部205に通知することで、圧縮画像がフォールバックバッファ211に格納されるように動作する。圧縮パラメータとして、具体的にはQレートが通知される。
【0081】
S604で、ジョブコントロール処理部201が、フォールバックバッファ211にラスタイメージが格納されたと判断すると、S605へ進む。
【0082】
S605で、ジョブコントロール処理部201はPDL解析処理部204へ、全バンドの圧縮されたラスタイメージのアドレスを通知する。圧縮されたラスタイメージのアドレスの通知を受けたPDL解析処理部204は、該圧縮されたラスタイメージを背景イメージとしたDLの生成を行い、フォールバック処理を終了する。ここで生成されるDLは、JPEG圧縮されたラスタイメージを描画するための制御命令であり、FBバッファ211内の圧縮されたラスタイメージへのリンク情報を含む。この制御命令のサイズは数百バイト程度であり、DL全体からすると非常に小さいものになる。
【0083】
以上のように図5に示したフォールバック処理によれば、この処理の開始時点までに生成されているDLをすべてレンダリングしてラスタイメージを生成し、そのラスタイメージをJPEG圧縮してFBバッファ211に格納する。このJPEG圧縮したラスタイメージとフォールバック処理後に引き続き生成されるDLをレンダリング時に合成することで、最終的なラスタイメージを生成することができる。具体的には、この合成処理は、フォールバック処理によって生成されたラスタイメージを背景として、DLを展開することによって生成される描画オブジェクトを上書きする形で行われる。
【0084】
図6は、フォールバック処理におけるRAM104上のDL格納バッファ210及びフォールバクバッファ211の模式図である。図6(a)はフォールバック開始時の、各バッファの状態を表している。DL格納バッファ210には図4のPDL解析処理で生成したDLが格納され、フォールバックバッファ211には図5のフォールバック処理で画像格納処理部205が圧縮したラスタ画像が格納される。
【0085】
図6(a)の符号703はPDL解析処理部204が生成したDLである。このDLがフォールバック処理において、RIP処理部206でラスタライズされ、画像格納処理部205で圧縮されてフォールバックバッファ211へ格納される。
【0086】
図7(b)はフォールバック処理終了時の各バッファの状態を表しており、フォールバックバッファ211には、画像格納処理部205により、JPEG圧縮されたラスタ画像が格納されている。DL格納バッファ210には、前記S605で生成される、前記圧縮されたラスタ画像を背景画像として合成するためのDLが格納されている。また、該背景画像として合成するためのDLは、JPEG圧縮されたラスタイメージを描画するための制御命令であり、フォールバックバッファ内の圧縮された画像へのリンク情報を含む。
【0087】
以上、本実施例によれば、地紋データや電子透かし、アノトデータ等の特殊パターンを含むPDLデータを受信したときに、当該特殊パターンからDLを生成するのに先立ってフォールバックを発生させる。これにより、特殊パターンを含まないDLをレンダリングし圧縮することで、DL格納バッファ210に空きを作り、特殊パターンのDLが格納されることを保証する。これにより、特殊パターンのDL生成中にフォールバックが発生する可能性を低減させ、特殊パターンに非可逆圧縮であるJPEG圧縮がかかることによる特殊パターンの画質劣化を低減させることができる。
【0088】
さらに、本実施例によれば、特殊パターンを受信した場合に、DL格納バッファ210に特殊パターンを描画するDLを格納できる、十分な空きがあればフォールバック処理を行わない。これにより、無駄なフォールバック処理による、画質劣化や処理速度の低下を招くことがない。
【実施例3】
【0089】
以下、実施例3について説明する。本実施例におけるカラーSFPの、コントローユニットの構成、コントローラソフトウェアの構成及び、PDL印刷処理の基本的な動作は、実施例1及び2で説明した図1及び図2で示すものと同一であるため、説明を割愛する。
【0090】
以下、本実施例における、PDL解析処理部204について、図7から図12を参照して説明する。本実施例におけるカラーSFPでは、図3に例示されるPDLデータに加え、図7に例示するPDLデータの印刷をおこなう。
【0091】
(PDLデータ)
図7は、画像データの描画オブジェクトが無い部分だけに地紋パターンが描画されるパターンである下書き地紋パターンを付加した画像出力を得るためのPDLデータである。ホストコンピュータ上では図の上側からデータを生成し、順次カラーSFPへ通知される。すなわち、地紋パターンを描画する2値ビットマップ描画命令(801)が初めに生成され、カラーSFPへ通知され、続いて、地紋パターンを付加する前の画像を描画するための描画命令群(802)が生成され、通知される。なお、2値ビットマップ描画命令には、下書き地紋を描画するための命令であることを示すタグ情報が付加されており、該命令の解析時に、上書き地紋や電子透かし用の命令と区別して、下書き地紋用であることを特定することを容易に行うことができる。
【0092】
(PDL解析処理)
ここで、本実施例のPDL解析処理部204による処理について図8のフローチャートを参照して説明する。
【0093】
PDL解析処理部204は、図3及び図7に例示されるPDLデータが通知されると、順次データの解析を行い(S901)、解析の結果及び現在の状態に応じて処理の分岐を行う(S902、S904、S905)。
【0094】
S901のPDL解析結果が、下書き地紋である場合、S903へ進み、下書き地紋用のDLを生成する。下書き地紋用DLは、RIP113で描画に使用する情報部分については、他の2値ビットマップを描画するDLコマンドと変わりはないが、RIP113では読み飛ばされる領域に、下書き地紋用DLであることを示す情報が埋め込まれる。また、下書き地紋用のDLのサイズは、FB発生時に別途追加の必要な、フォールバック用背景描画DLのサイズも含めておき、S913でのDL追加処理で利用する。
【0095】
S903で下書き地紋用DLを生成したのち、S911へ進む。
一方、S901でPDL解析結果が、下書き地紋の描画命令出なかった場合は、S904、S905へ進み、PDLデータの解析の結果及び現在の状態に応じて処理の分岐を行う。
【0096】
現在の状態が、特殊パターンモードである場合(S904;Yes)、又は特殊パターンを示す描画命令ではない場合(S905;Yes)、S910のDL生成処理へ進む。ここで、前記現在の状態は、PDL解析処理の起動時には、通常モードに初期化されており、S905で、初めて特殊パターン描画を示す描画命令を検知したときに、S906で特殊パターンモードに設定される。S905の特殊パターンモードの判定処理により、一度特殊パターン描画を示す描画命令を検知したのちは、特殊パターン描画命令の検知を省略し高速処理を行うことができる。
【0097】
S905の特殊パターン判定処理では、PDLデータの解析の結果、2値ビットマップに含まれるタグ情報や、アノトパターン開始のタグ情報により、特殊パターンか否かの判定を行う。なお、本実施例ではPDLデータに含まれる各種タグ情報を利用して、特殊パターンの判定を行うとしているが、描画命令の組み合わせや、ビットマップ画像やダウンロード文字のパターン認識を用いて、特殊パターンの判定を行ってもよい。
【0098】
S906で特殊パターンモードの設定を行った後、S907では、特殊パターンを描画するために生成されるDLの容量の見積もりを行う。DL容量の見積もりにおいて、特殊パターンが、地紋データ及び電子透かしの場合は、2値ビットマップのサイズとDL中で2値ビットマップを描画するコマンドのサイズより見積もることができる。また、特殊パターンがアノトパターンの場合は、ダウンロード文字の容量と、用紙サイズより見積もることができる。
【0099】
S908では、S907で見積もった特殊パターンの描画のためのDLの容量と、RAM104上のDL格納バッファ210の残容量を比較する。残容量の方が多ければ、S910のDL生成処理へ進み、残容量の方が少なければ、S909のフォールバック処理へ進む。
【0100】
S909のフォールバック処理では、DL格納バッファ210内の空き領域を確保するために現在生成済みのDLを一度レンダリングし、圧縮格納する。その後処理は、S910へ進む。本実施例のフォールバック処理については後ほど詳述する。
【0101】
S910では、S901のPDLデータの解析結果に基づいて、DLの生成処理を行い、S911へ進む。
【0102】
S911では、S910で生成したDLの容量と、DL格納バッファ210の残容量を比較する。すなわち、この時点で文書情報(描画命令群802)及び付加情報(2値ビットマップ描画命令801)から生成されている中間データ(DL)の容量と、DL格納バッファ210の残容量とを比較する。残容量の方が多ければ、S913へ進み、残容量が少なければ、S912でフォールバック処理をおこなう。なおS909とS912のフォールバック処理は同一の処理である。
【0103】
S913では、S910で生成したDLをDL格納バッファ210へ追加すると共に、残容量から追加したDLのサイズ分減じた後、S914へ進む。
【0104】
S914では未処理のPDLデータの有無を確認する。未処理のPDLデータがあればS901へ戻って、PDLの解析処理を継続し、PDLデータをすべて処理済みであれば、S915へ進む。
【0105】
S915では、RIP113でDLの解析ができるように、生成したDLのクローズ処理を行い、クローズしたDLのアドレスをジョブコントロール処理部201へ通知して、PDL解析処理を終了する。S915のDLのクローズ処理では、DLヘッダ部に、生成したDL全体のサイズ、及びDLに含まれるオブジェクト数を記載するとともに、DLの終端部にDLの終端であることの情報を書き込む。
【0106】
(フォールバック処理)
続いて図9のフローチャート及び図10を参照してS909およびS912のフォールバック処理を説明する。フォールバック処理はジョブコントロール処理部201の制御の下、PDL解析処理部204、RIP処理部206及び画像格納処理部205の連携により実行される。
【0107】
フォールバック処理を開始すると、S1001で、PDL解析処理部204は、DL格納バッファ210上に格納されているDLのクローズ処理を行い、S1002へ進む。
【0108】
S1002で、PDL解析処理部204は、クローズしたDL中に下書き地紋のDLオブジェクトが含まれるか判断し、含まれている場合はS1003へ進む。下書き地紋が含まれていない場合は、前記クローズしたDLが、フォールバックにより生成されたDLであることの情報を付加してクローズしたDLのアドレスを、ジョブコントロール処理部201へ通知する。
【0109】
S1003では、PDL解析処理部204は、一度クローズしたDLの分離処理を行う。DLの分離処理は、フォールバックのレンダリング対象から、画像描画用のDLと下書き地紋のDLとを分離し、DLの再構成を行う処理である。DLを分離し、画像描画用のDLに対してのみ、フォールバックにおけるレンダリング及び圧縮処理を行うことで、下書き地紋のパターンが圧縮による劣化をうけないようにする。PDL解析処理部204は、分離処理で再構成したDLを、ジョブコントロール処理部201へ通知する。DL分離処理の詳細については図10を参照して後述する。
【0110】
ジョブコントロール処理部201は、PDL解析処理部204より、DL及びフォールバックの通知を受けると、RIP処理部206及び画像格納処理部205を起動し、通知されたDLのレンダリング及び圧縮格納処理を行う(S1104、S1105)。レンダリング及び圧縮格納処理は、ページを複数の部位に分割したバンド単位で行われ、全バンドのレンダリング及び圧縮格納処理が終了すると、S1006へ進む。
【0111】
S1004で、RIP処理部206は、ジョブコントロール処理部201よりDLの通知を受けると、S1003で分離された画像描画用のDLを含むDL(下書き地紋のDLを含まないDL)に対してバンド単位でレンダリングを行う。レンダリングの対象となるDLについては図10を参照して後述する。レンダリングで生成されたラスタイメージをジョブコントロール処理部201を介して、画像格納処理部205へ通知する。本フォールバック処理で、RIP処理部206の生成するラスタイメージは、フォールバック後に生成されるDLと合成を必要があるため、多値画像である。
【0112】
S1105で、画像格納処理部205は、ジョブコントロール処理部201より、S1004で生成されたラスタイメージ、フォールバックバッファ211及び圧縮パラメータの指定を受ける。画像格納処理部205は、該ラスタイメージに対し、画像編集用画像処理部116のJPEG圧縮モジュールを利用してJPEG圧縮を施し、圧縮画像を生成する。画像格納処理部205はさらに、フォールバックバッファ211への該圧縮画像の格納を試み、フォールバックバッファ211に納まったか否かの圧縮結果を、ジョブコントロール処理部201へ通知する。
【0113】
S1006で、ジョブコントロール処理部201は画像格納処理部205から通知を受けた、圧縮結果を参照し、フォールバックバッファ211にラスタイメージが格納されたか否かを判断する。圧縮結果がフォールバックバッファ211に収まらず格納されていなければ、S1104へ戻り、RIP処理及び圧縮格納処理を繰り返す。
【0114】
再度実行されるS1005では、ジョブコントロール処理部201はラスタイメージがより高い圧縮率で圧縮されるような圧縮パラメータを画像格納処理部205に通知することで、圧縮画像がフォールバックバッファ211に格納されるように動作する。圧縮パラメータとして、具体的にはQレートが通知される。
【0115】
S1006で、ジョブコントロール処理部201が、フォールバックバッファ211に全バンドのラスタイメージが格納されたと判断すると、S1007へ進む。
【0116】
S1007で、ジョブコントロール処理部201はPDL解析処理部204へ、全バンドの圧縮されたラスタイメージのアドレスを通知する。圧縮されたラスタイメージのアドレスの通知を受けたPDL解析処理部204は、該ラスタイメージを背景イメージとしたDLの生成を行い、フォールバック処理を終了する。
【0117】
ここで、S1003のDL分離処理の内容を、図10を参照して説明する。図10は、DL分離処理の前後の、RAM104上のDL格納バッファ210及び該バッファに含まれるDLの模式図である。図10(a)は、DL分離処理を実行する前のDL格納バッファ210の一例であり、図10(b)は、図10(a)にDL分離処理適用した後のDL格納バッファ210の状態を表している。
【0118】
符号1102は、白塗り等の背景を描画する背景描画DLである。符号1103は、下書き地紋を2値ビットマップとして描画するDLである。符号1104は、地紋が付加される本来の画像を描画するためのDL群である。
【0119】
DLクローズ直後の図10(a)では、DLが、DL格納バッファ210の先頭(図の下側)から、背景描画DL1102、下書き地紋用DL1103、画像描画用DL1104の順で格納されている。また、図10の符号1106は、クローズされたDLの先頭を表しており、図10の符号1107はクローズされたDLの終端を表している。
【0120】
S1003のDL分離処理は、画像描画用DL1104のみをレンダリング処理するために、一度クローズしたDLから、画像描画用DL1104のみを抜き出し、DLの再構成を行う。DL格納バッファ210上の画像描画用DL1104の格納されている領域と、空き領域を利用して、下書き地紋フォールバック背景描画用DL1105と画像描画用DL1104からなるDLを再構成する。なお、下書き地紋フォールバック背景描画用DL1105は、画像描画用DL1104で描画されない部分が透明度100%を持つような背景を描画するためのDLである。S1003のDL分離処理を開始する際には、DL格納バッファ210に下書き地紋フォールバック背景描画用DL1105を格納できるサイズの空きがあることが必要である。なお、下書き地紋フォールバック背景描画用DL1105のサイズは、30バイト程度のものであり、非常に小さいサイズである。
【0121】
S1003のDL分離処理の結果、図10(b)に示すように、下書き地紋フォールバック背景描画用DL1105と画像描画用DL1104からなるDLが、メモリ上に順に配置されたDLが再構築され、ジョブコントロール処理部201へ通知される。
【0122】
RIP113は、DLの先頭1105から順次DLの解析を行いながら、ラスタライズを行うため、メモリ上に、描画順でDLを配置しておく必要がある。本DL分離処理により、下書き地紋DL1103を除いたDLを再構成することで、下書き地紋を除いた部分のみのフォールバック処理が可能となる。すなわち、画像描画用DL1104及び下書き地紋フォールバック背景描画用DL1105についてDLを再構成し、当該再構成したDLに対してフォールバック処理を行う。
【0123】
以上、本実施例によれば、下書き地紋パターンを含むPDLデータを受信した場合に、DL分離処理により、DLを再構成することで、下書き地紋パターンをフォールバックのレンダリング対処から外す。これにより、地紋パターンの描画用DLオブジェクトがDLの途中に生成される下書き地紋であっても、地紋パターンをファールバックのレンダリング及び圧縮の対象外することができる。結果、下書き地紋パターンに対しては、フォールバックによる非可逆圧縮が行われないため、最終的な出力画像において劣化の無い下書き地紋パターンが描画される。
【0124】
また、上書き地紋、電子透かし、アノトデータなどの特殊パターンを含むPDLデータは、実施例1と同様に、必要に応じて特殊パターンのDL生成処理に先立ってフォールバックを発生させるため、特殊パターンの画質劣化は発生しない。さらに、上書き地紋、電子透かし、アノトデータを含むPDLデータでは、DL分離処理の実施の必要が無いため、より高速な処理が可能である。
【0125】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0126】
113 RIP
104 RAM
201 ジョブコントロール処理部
204 PDL解析処理部
206 RIP処理部
【特許請求の範囲】
【請求項1】
文書情報及び付加情報を受信する受信手段と、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成手段と、
前記生成された中間データを順次格納する第1のバッファと、
第2のバッファと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮手段と
を備えることを特徴とする画像形成装置。
【請求項2】
前記受信手段が前記情報を文書情報、付加情報の順で受信し、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記圧縮手段は、前記受信した文書情報の全ての前記中間データが前記第1のバッファへ格納された際に、前記第1のバッファ内の中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の中間データを削除することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記受信した付加情報が特殊パターンの描画命令を含む場合、当該特殊パターンの前記中間データの容量を見積もる見積り手段と、
前記見積もられた特殊パターンの中間データの容量と、前記受信した文書情報の全ての中間データが前記第1のバッファへ格納されたときの前記第1のバッファの残容量とを比較する手段と
を備え、
前記圧縮手段は、前記比較の結果、前記第1のバッファの残容量の方が少ないと判断された場合に、前記圧縮したラスタイメージの生成及び前記中間データの削除を行なうことを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記見積り手段は、前記受信した付加情報に含まれているサイズ情報を用いて特殊パターンの中間データの容量を見積もることを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記見積り手段は、特殊パターンがアノトパターンの場合、ダウンロード文字の容量及び出力用紙サイズを用いて特殊パターンの中間データの容量を見積もることを特徴とする請求項3に記載の画像形成装置。
【請求項6】
前記受信手段が前記情報を付加情報、文書情報の順で受信し、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の中間データから前記特殊パターンの前記中間データを分離して前記中間データを再構成する再構成手段を備え、
前記圧縮手段は、前記再構成された前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の中間データを削除することを特徴とする請求項1又は2に記載の画像形成装置。
【請求項7】
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記受信した文書情報及び付加情報の前記中間データの容量と、前記第1のバッファの残容量とを比較する手段を備え、
前記圧縮手段は、前記比較の結果、前記第1のバッファの残容量の方が少ないと判断された場合に、前記圧縮したラスタイメージの生成及び前記中間データの削除を行なうことを特徴とする請求項6に記載の画像形成装置。
【請求項8】
文書情報及び付加情報を受信する受信ステップと、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成ステップと、
前記生成された中間データを第1のバッファに順次格納するステップと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮ステップと
を備えることを特徴とする画像形成方法。
【請求項9】
コンピュータに、
文書情報及び付加情報を受信する受信ステップと、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成ステップと、
前記生成された中間データを第1のバッファに順次格納するステップと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮ステップと
を実行させるためのプログラム。
【請求項1】
文書情報及び付加情報を受信する受信手段と、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成手段と、
前記生成された中間データを順次格納する第1のバッファと、
第2のバッファと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮手段と
を備えることを特徴とする画像形成装置。
【請求項2】
前記受信手段が前記情報を文書情報、付加情報の順で受信し、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記圧縮手段は、前記受信した文書情報の全ての前記中間データが前記第1のバッファへ格納された際に、前記第1のバッファ内の中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の中間データを削除することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記受信した付加情報が特殊パターンの描画命令を含む場合、当該特殊パターンの前記中間データの容量を見積もる見積り手段と、
前記見積もられた特殊パターンの中間データの容量と、前記受信した文書情報の全ての中間データが前記第1のバッファへ格納されたときの前記第1のバッファの残容量とを比較する手段と
を備え、
前記圧縮手段は、前記比較の結果、前記第1のバッファの残容量の方が少ないと判断された場合に、前記圧縮したラスタイメージの生成及び前記中間データの削除を行なうことを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記見積り手段は、前記受信した付加情報に含まれているサイズ情報を用いて特殊パターンの中間データの容量を見積もることを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記見積り手段は、特殊パターンがアノトパターンの場合、ダウンロード文字の容量及び出力用紙サイズを用いて特殊パターンの中間データの容量を見積もることを特徴とする請求項3に記載の画像形成装置。
【請求項6】
前記受信手段が前記情報を付加情報、文書情報の順で受信し、前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の中間データから前記特殊パターンの前記中間データを分離して前記中間データを再構成する再構成手段を備え、
前記圧縮手段は、前記再構成された前記文書情報の前記中間データから圧縮したラスタイメージを生成して前記第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の中間データを削除することを特徴とする請求項1又は2に記載の画像形成装置。
【請求項7】
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記受信した文書情報及び付加情報の前記中間データの容量と、前記第1のバッファの残容量とを比較する手段を備え、
前記圧縮手段は、前記比較の結果、前記第1のバッファの残容量の方が少ないと判断された場合に、前記圧縮したラスタイメージの生成及び前記中間データの削除を行なうことを特徴とする請求項6に記載の画像形成装置。
【請求項8】
文書情報及び付加情報を受信する受信ステップと、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成ステップと、
前記生成された中間データを第1のバッファに順次格納するステップと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮ステップと
を備えることを特徴とする画像形成方法。
【請求項9】
コンピュータに、
文書情報及び付加情報を受信する受信ステップと、
前記受信した情報からラスタイメージを生成するための中間データを順次生成する中間データ生成ステップと、
前記生成された中間データを第1のバッファに順次格納するステップと、
前記受信した付加情報が特殊パターンの描画命令を含む場合、前記第1のバッファ内の前記文書情報の前記中間データから圧縮したラスタイメージを生成して第2のバッファへ格納し、前記第1のバッファ内の前記文書情報の前記中間データを削除する圧縮ステップと
を実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−218317(P2012−218317A)
【公開日】平成24年11月12日(2012.11.12)
【国際特許分類】
【出願番号】特願2011−87221(P2011−87221)
【出願日】平成23年4月11日(2011.4.11)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年11月12日(2012.11.12)
【国際特許分類】
【出願日】平成23年4月11日(2011.4.11)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]