(57)【要約】【課題】  状況に応じて、透明度機能の処理動作を制御して、迅速に印刷結果を得ることができる画像形成装置を提供する。【解決手段】  複数のオブジェクトの重なりを検出し、オブジェクトが重なっている数が異なる領域毎に領域分割して、該領域毎に色合成を行うことにより透明度処理を実行する透明度処理手段と、透明度処理手段による透明度処理の実行中に発生したメモリオーバフローを検出する検出手段と、検出手段によりメモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理する制御手段とを備える。【選択図】    図１
2007076292.tif 000002
【特許請求の範囲】
【請求項１】
複数のオブジェクトの重なりを検出し、オブジェクトが重なっている数が異なる領域毎に領域分割して、該領域毎に色合成を行うことにより透明度処理を実行する透明度処理手段と、
前記透明度処理手段による透明度処理の実行中に発生したメモリオーバフローを検出する検出手段と、
前記検出手段によりメモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理する制御手段と
を備えたことを特徴とする画像形成装置。
【請求項２】
複数のオブジェクトの重なりを検出し、オブジェクトが重なっている数が異なる領域毎に領域分割して、該領域毎に色合成を行うことにより透明度処理を実行する透明度処理手段を備えた画像形成装置において動作を制御する制御プログラムであって、
前記透明度処理手段による透明度処理の実行中に発生したメモリオーバフローを検出する検出処理と、
前記検出処理によりメモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理する制御処理と
をコンピュータに行わせることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、重ね合わせた図形の描画において、透明度処理の実行を制御する画像形成装置及び制御プログラムに関する。
【背景技術】
【０００２】
従来の印刷処理では、２つの印刷対象のオブジェクト（印刷対象の図形等）が重なり合っている場合、データの定義上において下側に定義されているオブジェクトは、上側に定義されているオブジェクトに上書きされてしまうため、下側のオブジェクトは隠れてた状態で印刷されるのが一般的であった。しかし、近年では、印刷物における表現力を向上させるために、オブジェクトに透明度というファクタを持たせることにより、下側のオブジェクトが上側のオブジェクトを透過して見えるようにした印刷が行われるようになっている。透明度とは、描画オブジェクトが持つファクタの一つであり、０〜１００％の値を持つ。透明度０％のオブジェクトは、従来のオブジェクトと同等であり、下側にオブジェクトがある場合に隠れてしまうものである。また、透明度１００％のオブジェクトは無色透明のオブジェクトであり、他オブジェクトと重なりを持っても他オブジェクトの色には影響を与えないものである。一方、透明度１％〜９９％のオブジェクトの場合、他オブジェクトとの重なり部分は重なった２つのオブジェクト両方の色と透明度の値から重なり部分の色は決定されるものである。また透明度は重なる複数のオブジェクトの色に一意に影響を与えるものでなく影響の与え方を複数持っており、二つのオブジェクトの色を加算する場合もあれば減算する場合もある。
なお、透明成分を含む画像形成を高品質にかつ迅速に行うことができる画像形成方法としては、例えば特許文献１に掲げるようなものが知られている。
【特許文献１】特開２００５−１０９９８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、近年の画像形成装置は、文書作成アプリケーション等を使用せずに、電子文書フォーマット（例えば、ＰＤＦ；Portable Document Format）の文書データを直接印刷することができる機能を有している。しかしながら、透明度機能が使用された印刷対象の文書データを展開してビットマップデータに変換する画像処理は、多大な処理時間を要する場合があるため、データの内容を忠実に再現する必要がなく、単に文書データの内容を確認したいのみのユーザにとっては迅速に印刷結果を得ることができないという問題がある。また、文書作成アプリケーション等を使用せずに、電子文書フォーマット（例えば、ＰＤＦ；Portable Document Format）の文書データを直接印刷するような場合には、透明度機能を使用したオブジェクトを削除するなどして文書データを編集することができないため、印刷対象の文書データ中に多大な処理時間を要するオブジェクトが定義されているような場合は、迅速に印刷する方法がないという問題もある。
【０００４】
本発明は、このような事情に鑑みてなされたもので、状況に応じて、透明度機能の処理動作を制御して、迅速に印刷結果を得ることができる画像形成装置及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、複数のオブジェクトの重なりを検出し、オブジェクトが重なっている数が異なる領域毎に領域分割して、該領域毎に色合成を行うことにより透明度処理を実行する透明度処理手段と、前記透明度処理手段による透明度処理の実行中に発生したメモリオーバフローを検出する検出手段と、前記検出手段によりメモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理する制御手段とを備えたことを特徴とする。
【０００６】
本発明は、複数のオブジェクトの重なりを検出し、オブジェクトが重なっている数が異なる領域毎に領域分割して、該領域毎に色合成を行うことにより透明度処理を実行する透明度処理手段を備えた画像形成装置において動作を制御する制御プログラムであって、前記透明度処理手段による透明度処理の実行中に発生したメモリオーバフローを検出する検出処理と、前記検出処理によりメモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理する制御処理とをコンピュータに行わせることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、透明度処理の実行中に発生したメモリオーバフローを検出し、メモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理するようにしたため、状況に応じて、透明度機能の処理動作を制御して、迅速に印刷結果を得ることができるという効果が得られる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の一実施形態による画像形成装置を図面を参照して説明する。図１は同実施形態の構成を示すブロック図である。この図において、符号１は、画像形成装置７の処理動作を統括して制御する制御部である。符号２は、ネットワークＮに接続されたパソコン８等から印刷するべき画像の画像データを受信する通信部である。符号３は、通信部２において受信した画像データを一時的に記憶するバッファである。符号４は、バッファ３に記憶されている画像データを読み出し、画像処理を施すことによりビットマップデータへ変換する画像処理部である。符号５は、画像処理部４において得られたビットマップデータを記憶する画像メモリである。符号６は、画像メモリ５に記憶されているビットマップデータを読み出して、このビットマップデータに基づく画像を印刷媒体へ転写する印刷部である。
【０００９】
ここで、図４を参照して、透明度機能を使用した描画（印刷）について説明する。図４は、通常の描画（図４（ａ））と透明度機能を使用した描画（図４（ｂ））を比較した図である。通常の描画処理におけるオブジェクト（塗りつぶし、ストローク、テキスト、画像）は、不透明の状態（透明度０％）で、オブジェクトが配置された順番に描画されるため、重なっている部分は一番上に配置されたオブジェクトのみが描画されることになる。図４（ａ）に示すように、オブジェクトＢ（例えば、描画色が青）とオブジェクトＧ（例えば、描画色が緑）が重なっている部分のオブジェクトＲ（例えば、描画色が赤）は、実際には描画されない。また、オブジェクトＧ（例えば、描画色が緑）が重なっている部分のオブジェクトＢについても実際には描画されない。
【００１０】
一方、図４（ａ）に示す３つのオブジェクトＲ、Ｇ、Ｂそれぞれに透明度（例えば、５０％）を設定した場合、オブジェクトＲにオブジェクトＢのみが重なっている領域ＲＢは、オブジェクトＲとオブジェクトＢの描画色（赤と青）を混ぜ合わせた色で描画されることになる。また、オブジェクトＢにオブジェクトＧのみが重なっている領域ＧＢは、オブジェクトＢとオブジェクトＧの描画色（青と緑）を混ぜ合わせた色で描画されることになる。また、オブジェクトＲにオブジェクトＧのみが重なっている領域ＲＧは、オブジェクトＲとオブジェクトＧの描画色（赤と緑）を混ぜ合わせた色で描画されることになる。さらに、オブジェクトＲにオブジェクトＢが重なり、その上にオブジェクトＧが重なっている領域ＲＧＢは、オブジェクトＲ、オブジェクトＧ及びオブジェクトＢの描画色（赤と後と緑）を混ぜ合わせた色で描画されることになる。
【００１１】
次に、図２を参照して、図１に示す画像処理部４が透明度オブジェクトの処理を行う動作を説明する。図２は、図１に示す画像処理部４が透明度オブジェクトの処理を行う動作を示すフローチャートである。
まず、通信部２は、パソコン８から送信された電子文書フォーマットで記述された印刷対象の文書データ（以下、印刷データと称する）を受信し、受信した印刷データをバッファ３に記憶する。通信部２は、印刷データを受信した時点で、制御部１に対して、印刷データを受信したことを通知する。これを受けて、制御部１は、画像処理部４に対して、画像の展開処理を実行するように指示を出す。これを受けて、画像処理部４は、バッファ３から１ページ分の印刷データを読み出して、印刷データの解析を行う（ステップＳ１）。そして、画像処理部４は、読み出した印刷データ中に透明度機能を使用したデータが含まれるか否かを判定する（ステップＳ２）。この判定の結果、透明度機能が使用されていなければ、画像処理部４は、通常処理を実行し（ステップＳ１５）、処理の結果得られるビットマップデータを画像メモリ５へ格納していき、１ページ分の処理が終了した時点で、ビットマップデータを印刷部６に対して吐き出し、ページ排出処理が実行される（ステップＳ１３）ことによって、印刷部６において印刷処理が実行される。
【００１２】
次に、印刷データ中に透明度機能を使用したデータが含まれる場合、画像処理部４は、読み込んだ印刷データに記述されているデータを順に解釈し、描画オペレータ（描画命令）であるか否かを判定する（ステップＳ３）。この判定の結果、描画オペレータであった場合、画像処理部４は、印刷データを解釈した結果に基づいてオブジェクトを生成する（ステップＳ４）。画像処理部４は、ここで生成したオブジェクトと、既に画像メモリ５内のテーブルに格納されているオブジェクトと重なりを調査し（ステップＳ５）、重なりがあるか否かを判定する（ステップＳ６）。この判定の結果、重なりがなければ、次の切り出し処理を実行せずに次の処理へ移行する。一方、重なりがある場合、オブジェクト同士の重なり部分毎に分割して、重なり領域の切り出しを行う（ステップＳ７）。
【００１３】
ここで、図４、５を参照して、重なり領域の切り出し動作（ステップＳ７）について説明する。図４（ａ）に示す３つのオブジェクトＲ、Ｇ、Ｂが重なっている場合を例にして説明する。まず、３つのオブジェクトＲ、Ｇ、Ｂそれぞれの外形を示す境界線に基づいて、互いに重なっている領域（領域ＲＢとＲＧとＧＢとＲＧＢとからなる領域）を求める。そして、求めた重なり領域をそれぞれ分割して、領域Ｒ、Ｇ、Ｂ、ＲＢ、ＲＧ、ＧＢ、ＲＧＢを切り出す（図５参照）。この切り出しのとき、１つの領域内において、重なっているオブジェクトの数が同じになるように切り出しを行う。例えば、領域ＲＢに領域ＲＧＢを加えたり領域は、オブジェクトＲにオブジェクトＢが重なっている領域であるが、この領域には、重なりの数が「１」である領域ＲＢと重なりの数が「３」である領域ＲＧＢが混在していることになるため、領域ＲＢと領域ＲＧＢをそれぞれを切り出して異なる領域とする。このようにすることにより、３つのオブジェクトが重なっている状態から７つの領域に分割されて、それぞれの領域が新たなオブジェクトとなり、元のオブジェクト（オブジェクトＲ、Ｇ、Ｂ）は削除される。
【００１４】
次に、画像処理部４は、それぞれのオブジェクトに対して、色合成を行う（ステップＳ８）。この色合成は、オブジェクトが重なっていなければ、オブジェクトが持つ色情報に基づいて色合成処理（実際は、合成する色はないため、単色の色変換処理となる）を行う。オブジェクトが重なっている状態から切り出されたオブジェクトは、重なっている複数の色情報に基づいて色合成処理（混ぜ合わせた色の生成）を行う（ステップＳ８）。そして、画像処理部４は、色合成を行ったオブジェクトを画像メモリ５内のテーブルに格納する（ステップＳ９）。
【００１５】
次に、画像処理部４は、読み込んだ印刷データに記述されているデータを解釈し、描画オペレータでない場合、ページ排出オペレータ（ページ排出命令）であるか否かを判定する（ステップＳ１０）。この判定の結果、ページ排出オペレータでない（描画オペレータでもページ排出オペレータでもない）場合、画像処理部４は、通常処理を行う（ステップＳ１１）。一方、ページ排出オペレータである場合、画像処理部４は、画像メモリ５のテーブルに格納されているビットマップデータを印刷部６に対して吐き出し、ページ排出処理が実行される（ステップＳ１３）ことによって、印刷部６において印刷処理が実行される。この処理を最終ページになるまで繰り返し実行する（ステップＳ１４）ことにより透明度機能を使用した描画処理が行われることになる。
【００１６】
次に、図３を参照して、図２に示す透明度オブジェクト処理の実行を制御する動作を説明する。まず通信部２は、パソコン８から送信された電子文書フォーマットで記述された印刷対象の文書データ（以下、印刷データと称する）を受信し、受信した印刷データをバッファ３に記憶する。通信部２は、印刷データを受信した時点で、制御部１に対して、印刷データを受信したことを通知する。これを受けて、制御部１は、画像処理部４に対して、画像の展開処理を実行するように指示を出す。このとき、制御部１は、事前にユーザによって設定されている透明度機能を使用するか否かの設定値を参照して、この設定値を画像処理部４に対して通知する。
【００１７】
これを受けて、画像処理部４は、バッファ３に記憶されている印刷データを読み出し、解析する（ステップＳ２１）。そして、画像処理部４は、制御部１から通知された透明度機能を使用するか否かの設定値に基づいて、透明度機能を使用するか否かを判定する（ステップＳ２２）。この判定の結果、透明度機能を使用しないのであれば、画像処理部４は、通常処理に置き換えて、描画処理を実行し（ステップＳ３２）、処理の結果得られるビットマップデータを画像メモリ５へ格納していき、１ページ分の処理が終了した時点で、ビットマップデータを印刷部６に対して吐き出し、ページ排出処理が実行されることによって、印刷部６において印刷処理が実行される。これにより、印刷データに透明度機能が使用されていたとしても、重なり領域における色合成処理が実行されず、オブジェクトが配置された順に上書きされる結果が得られることになる。
【００１８】
次に、透明度機能を使用する設定がされていた場合、画像処理部４は、印刷データ中に透明度機能を使用したデータがあるか否かを判定する（ステップＳ２３）。この判定の結果、透明度機能を使用したデータがなければ通常処理を実行し（ステップＳ３２）、処理の結果得られるビットマップデータを画像メモリ５へ格納していき、１ページ分の処理が終了した時点で、ビットマップデータを印刷部６に対して吐き出し、ページ排出処理が実行されることによって、印刷部６において印刷処理が実行される。
【００１９】
一方、透明度機能を使用する設定であり、かつ印刷データに透明度機能を使用したデータがある場合、画像処理部４は、画像メモリ５においてメモリオーバフローが発生したか否かを検出しながら（ステップＳ２４）、透明度オブジェクト処理（オブジェクトの切り出し、色合成）を実行する（ステップＳ２５）。そして、透明度機能の処理が終了したか否かを判定しながら透明度オブジェクト処理を続行し（ステップＳ２６）、処理が終了した時点で、ビットマップデータを印刷部６に対して吐き出し（ステップＳ２７）、ページ排出処理が実行されることによって、印刷部６において印刷処理が実行される。
【００２０】
透明度オブジェクト処理中にメモリオーバフローが発生した場合、画像処理部４は、この時点までに処理した処理済みのオブジェクトを画像メモリ５から消去する（ステップＳ２８）。そして、画像処理部４は、制御部１に対してメモリオーバフローが発生したことを通知する。これを受けて、制御部１は、図示しない表示部にメモリオーバフローが発生したことを表示する（ステップＳ２９）とともに、ユーザに対して、透明度機能を落として処理を再開するか否かを問い合わせるメッセージを表示する。このメッセージに対して、ユーザは、再開するか否かを入力部（図示せず）を操作して回答する。制御部１は、この回答の内容を読み取り、機能を落として再開するか否かを判定する（ステップＳ３０）。この判定の結果、再開しないのであれば、制御部１は、画像処理部４に対して処理の中止を指示する。これを受けて、画像処理部４は、処理を中止して終了する。一方、透明度機能を落として処理を再開するのであれば、制御部１は、画像処理部４に対して初期化して処理を再開する指示を出力する。これを受けて、画像処理部４は、透明度機能を行わない設定を行うとともに、印刷データを読み出し、解析する処理を初期化し（ステップＳ３１）、改めてバッファ３から印刷データを読み出して解析する処理から始める（ステップＳ２１）。
【００２１】
このように、透明度処理の実行中に発生したメモリオーバフローを検出し、メモリオーバフローが検出された場合に、透明度処理を通常処理に置き換えて処理するようにしたため、状況に応じて、透明度機能の処理動作を制御して、迅速に印刷結果を得ることができる。
【００２２】
なお、図１における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより透明度機能の処理動作制御を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００２３】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施形態の構成を示すブロック図である。
【図２】図１に画像形成装置７の動作を示すフローチャートである。
【図３】図１に画像形成装置７の動作を示すフローチャートである。
【図４】通常の描画と透明度機能を使用した描画を比較するための説明図である。
【図５】オブジェクト分割の状態を示す説明図である。
【符号の説明】
【００２５】
１・・・制御部、２・・・通信部、３・・・バッファ、４・・・画像処理部、５・・・画像メモリ、６・・・印刷部、７・・・画像形成装置、８・・・パソコン、Ｎ・・・ネットワーク
【図１】
2007076292.tif 000003
【図２】
2007076292.tif 000004
【図３】
2007076292.tif 000005
【図４】
2007076292.tif 000006
【図５】
2007076292.tif 000007