(57)【要約】 【課題】トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐ。【解決手段】画像処理装置１０の制御部３０は、ラスタライズ実行時にＲＡＭ１７のメモリ不足が発生した際、トランスペアレンシー処理を実行するために確保されている記憶領域（作業バッファ）に対して強制合成処理を行う。そして、制御部３０は、合成して必要の無くなった作業バッファを削除し、空き記憶領域を確保する。【選択図】図３
2010171682.tif 000002
【特許請求の範囲】
【請求項１】
トランスペアレンシー処理の実行命令を含む印刷データに基づいて画像形成処理を行う画像処理装置であって、
前記トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部と、
前記記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放する制御部と、
を備える画像処理装置。
【請求項２】
前記合成対象となる記憶領域の指定方法の選択に関する指示信号を出力する出力部を更に備え、
前記制御部は、複数種類の指定方法で前記合成対象となる記憶領域を指定可能で、前記出力部からの指示信号に基づいて前記指定方法を選択し、当該選択した指定方法で前記合成対象となる記憶領域を指定する、
請求項１に記載の画像処理装置。
【請求項３】
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域を指定する、
請求項２に記載の画像処理装置。
【請求項４】
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域を指定する、
請求項２又は３に記載の画像処理装置。
【請求項５】
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域を指定する、
請求項２〜４の何れか一項に記載の画像処理装置。
【請求項６】
前記制御部は、
前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する、
請求項５に記載の画像処理装置。
【請求項７】
前記制御部は、
前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する、
請求項６に記載の画像処理装置。
【請求項８】
トランスペアレンシー処理の実行命令を含む印刷データに基づいて画像形成処理を行うコンピュータを、
前記トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部、
前記記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放する制御部、
として機能させるためのプログラム。
【請求項９】
制御部が、トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放するステップ、
から構成されるデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、プログラム及びデータ処理方法に関する。
【背景技術】
【０００２】
ＰＣ（Personal Computer）等の外部装置で作成されたＰＳ（Post Script：ポストスクリプト（登録商標））データやＰＤＦ（Portable Document Format）データ等の印刷データを、ＬＡＮ等のネットワークを介して受信し、受信したデータを一旦中間形式のデータ（中間データ）に変換し、この中間データをラスタライズしてビットマップデータを生成し、印刷を行うプリンタ、ＭＦＰ（Multi Function Peripheral）等の画像処理装置が普及している。
【０００３】
また近年、ＰＳデータ、ＰＤＦデータ等のバージョンアップや、ＸＰＳ（XML Paper Specification）データ等の新規フォーマットのサポートにより、画像処理装置におけるインタプリタの処理に必要なメモリ容量は増加している。更に、ＰＤＦデータやＸＰＳデータ等の印刷データは、複数の画像データを透過させて重ね合わせて１つの画像を表示するトランスペアレンシー機能（透過機能）を有しており、トランスペアレンシー処理（トランスペアレンシー機能による処理）は多くのメモリ容量を必要とする。
【０００４】
一方で、プリンタ等の画像処理装置の価格競争の激化により、画像処理装置に搭載するメモリ容量の削減等によるコストダウンが求められている。
【０００５】
そのため、限られたメモリ容量を効率良く使う為の様々な工夫が為されている。
【０００６】
例えば、イメージデータバッファのバッファ容量が不足する場合に、メモリに展開済みの圧縮印字イメージデータを、解像度を切り下げた圧縮印字イメージデータに変更してイメージデータバッファに書き換える技術が開示されている（特許文献１参照）。
【０００７】
また、描画メモリのメモリ容量不足が発生する場合に、どの程度の不足量かを調べ、不足量が多い場合、主走査、副走査の両方向の解像度を落としてロッシー圧縮処理を行い、不足量が中くらいの場合、主走査、副走査のどちらかの方向の解像度を落としてロッシー圧縮処理を行い、不足量が少ない場合、階調を２ビットから１ビットに落としてロッシー圧縮処理を行う技術が開示されている（特許文献２参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平８−２８２０２０号公報
【特許文献２】特開平１０−８２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献１、２の技術では、ラスタライズ後のビットマップデータ全体の画質が劣化してしまう。そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、トランスペアレンシー処理の一部を省略すればメモリ容量不足（記憶容量不足）が回避できる場合でも、ビットマップデータ全体の画質を劣化させてしまう。よって、ユーザは、意図しない処理結果（印刷結果）を得てしまう恐れがある。
【００１０】
本発明は、上述したような課題に鑑みて為されたものであり、その目的とするところは、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことである。
【課題を解決するための手段】
【００１１】
上記の課題を解決するために、請求項１に記載の発明は、
トランスペアレンシー処理の実行命令を含む印刷データに基づいて画像形成処理を行う画像処理装置であって、
前記トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部と、
前記記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放する制御部と、
を備える。
【００１２】
請求項２に記載の発明は、請求項１に記載の発明において、
前記合成対象となる記憶領域の指定方法の選択に関する指示信号を出力する出力部を更に備え、
前記制御部は、複数種類の指定方法で前記合成対象となる記憶領域を指定可能で、前記出力部からの指示信号に基づいて前記指定方法を選択し、当該選択した指定方法で前記合成対象となる記憶領域を指定する。
【００１３】
請求項３に記載の発明は、請求項２に記載の発明において、
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域を指定する。
【００１４】
請求項４に記載の発明は、請求項２又は３に記載の発明において、
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域を指定する。
【００１５】
請求項５に記載の発明は、請求項２〜４の何れか一項に記載の発明において、
前記指定方法の一つは、
前記制御部が、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域を指定する。
【００１６】
請求項６に記載の発明は、請求項５に記載の発明において、
前記制御部は、
前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する。
【００１７】
請求項７に記載の発明は、請求項６に記載の発明において、
前記制御部は、
前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する。
【００１８】
請求項８に記載のプログラムは、
トランスペアレンシー処理の実行命令を含む印刷データに基づいて画像形成処理を行うコンピュータを、
前記トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部、
前記記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放する制御部、
として機能させる。
【００１９】
請求項９に記載のデータ処理方法は、
制御部が、トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放するステップ、
から構成される。
【発明の効果】
【００２０】
請求項１、８及び９に記載の発明によれば、制御部が、トランスペアレンシー処理を含む画像形成処理を実行する際に使用される記憶部の記憶容量が前記画像形成処理の実行中に不足した際、前記トランスペアレンシー処理を実行するために確保されている記憶領域を合成して、当該記憶領域を開放する。
【００２１】
そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことができる。
【００２２】
請求項２に記載の発明によれば、ユーザは、合成対象となる記憶領域の指定方法を選択することができる。そのため、ユーザの意図しない処理結果を得ることをより防ぐことができる。
【００２３】
請求項３に記載の発明によれば、画像形成処理の処理速度を優先した、記憶容量の不足の回避方法を提供することができる。
【００２４】
請求項４に記載の発明によれば、画像形成処理の処理速度と、トランスペアレンシー処理による画像の画質とのバランスがとれた、記憶容量の不足の回避方法を提供することができる。
【００２５】
請求項５に記載の発明によれば、トランスペアレンシー処理による画像の画質を優先した、記憶容量の不足の回避方法を提供することができる。
【００２６】
請求項６に記載の発明によれば、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域を検出することができる。
【００２７】
請求項７に記載の発明によれば、前記トランスペアレンシー処理を実行するための記憶領域の確保状況に拘らず、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出することができる。
【図面の簡単な説明】
【００２８】
【図１】画像形成システムのシステム構成図である。
【図２】クライアント端末のブロック図である。
【図３】画像処理装置のブロック図である。
【図４】画像形成処理の処理フローを示す図である。
【図５】トランスペアレンシー処理の処理イメージ図である。
【図６】トランスペアレンシー処理実行時に確保されるメモリ領域のイメージ図である。
【図７】画像形成処理を示すフローチャートである。
【図８】印刷データ解析処理を示すフローチャートである。
【図９】ラスタライズ処理を示すフローチャートである。
【図１０】ビットマップデータ出力処理を示すフローチャートである。
【図１１】メモリ不足防止処理を示すフローチャートである。
【図１２】影響少バッファ検出処理を示すフローチャートである。
【図１３】サイズ大バッファ検出処理を示すフローチャートである。
【図１４】第２の実施の形態における印刷データ解析処理を示すフローチャートである。
【図１５】第２の実施の形態における影響少バッファ検出処理である。
【発明を実施するための形態】
【００２９】
[第１の実施の形態]
以下、図面を参照して、本発明に係る画像処理装置の第１の実施の形態について説明する。
【００３０】
[画像形成システムのシステム構成]
図１に、画像形成システム１００のシステム構成を示す。図１に示すように、画像形成システム１００は、画像処理装置１０とクライアント端末２０とから構成されており、各装置はＬＡＮ（Local Area Network）等の通信ネットワークＮを介して、データ通信可能に接続されている。
【００３１】
画像処理装置１０は、コピー機能、画像読取機能、プリンタ機能を備えた、所謂ＭＦＰ（Multi-Function Peripheral）であり、クライアント端末２０から送信されるプリントジョブ（プリント指令）や、画像処理装置１０に備えられているスキャナ等の画像読取部から読み込んだ画像データ等に基づき、用紙に画像を形成する。
【００３２】
クライアント端末２０は、所謂パーソナルコンピュータであり、画像処理装置１０にプリントジョブを送信する機能を有する。クライアント端末２０には、プリンタドライバプログラム（以下、単にプリンタドライバと称することがある。）がインストールされており、このプリンタドライバの機能を用いて画像形成時に適用されるプリント条件のデータ（印刷要求データ）、画像データ（印刷データ）等を含んだプリントジョブデータを生成し画像処理装置１０に送信する。
【００３３】
[クライアント端末の機能的構成]
図２に、クライアント端末２０の構成を示す。図２に示すように、クライアント端末２０は、ＣＰＵ２１、操作部２２、表示部２３、通信部２４、ＲＡＭ（Random Access Memory）２５、ＨＤＤ２６を備えて構成されている。
【００３４】
ＣＰＵ２１は、操作部２２から入力される操作信号（指示信号）又は通信部２４により受信される指示信号に応じて、ＨＤＤ２６に記憶されている各種処理プログラムを読み出し、ＲＡＭ２５内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。
【００３５】
操作部２２は、カーソルキー、数字入力キー、及び各種機能キー等を備えたキーボードと、マウスなどのポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された指示信号をＣＰＵ２１に出力する。
【００３６】
表示部２３は、ＬＣＤ（Liquid Crystal Display）により構成され、ＣＰＵ２１から入力される表示信号の指示に従って、操作部２２からの入力指示やデータ等を表示する。
【００３７】
通信部２４は、ＬＡＮアダプタ、ルータ、ＴＡ等を備え、通信ネットワークＮを介して接続された画像処理装置１０等の外部機器との間でデータの送受信を行う。
【００３８】
ＲＡＭ２５は、ＣＰＵ２１により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。
【００３９】
ＨＤＤ２６は、記憶装置であり、各種プログラム、設定データ、画像データ等を記憶する。また、ＨＤＤ２６は、プリンタドライバプログラム２６１を記憶している。
【００４０】
ＣＰＵ２１は、当該プリンタドライバプログラム２６１をＨＤＤ２６から読み出してＲＡＭ２５に展開し、当該プログラムとの協働により画像処理装置１０に、印刷要求データ及び印刷データを送信する。印刷データは、ＰＤＬ（Page Description Language）データ、ＰＤＦデータ、ＸＰＳデータ等である。
【００４１】
[画像処理装置の機能的構成]
図３に、画像処理装置１０の構成を示す。図３に示すように、画像処理装置１０は、ＣＰＵ１１、操作部１２、表示部１３、画像読取部１４、画像形成部１５、通信部１６、ＲＡＭ１７、ＲＯＭ（Read Only Memory）１８、ＨＤＤ１９を備えて構成されている。
【００４２】
ＣＰＵ１１は、操作部１２から入力される操作信号（指示信号）又は通信部１６により受信される指示信号に応じて、ＲＯＭ１８に記憶されている各種処理プログラムを読み出し、ＲＡＭ１７内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。例えば、ＣＰＵ１１は画像形成に関する一連の処理（画像形成処理）を行う。以下、ＣＰＵ１１とＲＡＭ１７とを合わせて制御部３０と称す場合がある。
【００４３】
操作部１２は、数字キーやスタートキー、リセットキー等の各種キーを有し、押下されたキーの押下信号をＣＰＵ１１に出力する。また、操作部１２は、表示部１３と一体的に形成されたタッチパネルを備えており、ユーザの指先やタッチペン等により当接されたタッチパネル上の位置を検出して、位置信号をＣＰＵ１１に出力する。
【００４４】
画像読取部１４は、原稿画像を読み取って画像データを生成する所謂スキャナであり、原稿を載置するプラテンガラス、プラテンガラス上の原稿画像を走査し、これをＣＣＤイメージセンサ上に結像する走査光学系を備えている。画像読取部１４は、ＣＣＤイメージセンサで読み取った原稿画像に基づいて生成された画像信号をＡ／Ｄ変換して画像信号を生成する。
【００４５】
画像形成部１５は、電子写真方式、静電記録方式、熱転写方式等の作像プロセスを利用して画像を形成するために必要な構成要素を含む機能部である。例えば、画像形成部１５は、感光体、転写ベルト、定着器、各種搬送ベルト、電子回路、給紙部、排紙部等を備える。画像形成部１５は、ＣＰＵ１１の指示に従い、画像読取部１４により生成された画像データ又は通信部１６により受信された印刷データ等に基づいて、給紙部から供給された用紙に画像を形成し、排紙部に搬送する。また、給紙部は給紙トレイを、排紙部は排紙トレイを備える。
【００４６】
通信部１６は、ＬＡＮアダプタ、ルータ、ＴＡ（Terminal Adapter）等を備え、通信ネットワークＮを介して接続されたクライアント端末２０等の外部機器との間でデータの送受信を行う。例えば、通信部１６は、クライアント端末２０からプリントジョブデータ（印刷要求データ及び印刷データ）を受信する。
【００４７】
ＲＡＭ１７は、ＣＰＵ１１により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。
【００４８】
ＲＯＭ１８は、ＣＰＵ１１で実行される各種処理プログラム、各種データ等を記憶する。これらの各種プログラムは、読み取り可能なプログラムコードの形態で格納され、ＣＰＵ１１は、当該プログラムコードに従った動作を逐次実行する。また、ＲＯＭ１８は、プリンタコントローラプログラム１８１を記憶している。
【００４９】
ＨＤＤ１９は、記憶装置であり、画像読取部１４により読み取られた画像データ、通信部１６によりクライアント端末２０から受信された印刷データ（ＰＤＬデータ、ＰＤＦデータ、ＸＰＳデータ）等を記憶する。
【００５０】
制御部３０は、プリンタコントローラプログラム１８１をＲＯＭ１８から読み出してＲＡＭ１７に展開し、このプログラムとの協働により、次のように機能する。即ち、制御部３０は、通信部１６によりクライアント端末２０から受信された印刷データを解析して、中間言語データを生成する。そして、制御部３０は、中間言語データに対してラスタライズ処理を行ってビットマップデータを生成する。そして、制御部３０は、生成したビットマップデータを画像形成部１５に出力する。また、印刷データにトランスペアレンシー処理の実行命令が含まれる場合、制御部３０は、ラスタライズ処理内において後述するトランスペアレンシー処理を行う。
【００５１】
[画像形成処理の処理フロー]
図４を用いて、画像処理装置１０の制御部３０が行う画像形成処理の処理フローについて説明する。本説明では、制御部３０が取得するデータとして、印刷データにのみ着目している。
【００５２】
制御部３０は、クライアント端末２０から送信された印刷データを通信部１６を介して取得する。制御部３０は、取得した印刷データをスプールデータとしてＲＡＭ１７のスプールバッファに一時的に記憶させる（スプールする）。制御部３０は、スプールデータ、即ち印刷データをＲＡＭ１７のスプールバッファから読み出す。そして、制御部３０は、読み出した印刷データに対して印刷データ解析処理を行い、この印刷データに基づいてディスプレイリスト（中間言語データ）を生成し、ＲＡＭ１７に保存する。制御部３０は、１ページ分のディスプレイリストが完成した時点で、ＲＡＭ１７からディスプレイリストを読み出す。
【００５３】
制御部３０は、読み出したディスプレイリストに対してラスタライズ処理を行い、バンド単位に分割したビットマップデータを生成し、ＲＡＭ１７に保存する。即ち、制御部３０は、ラスタライズ処理をバンド単位で行う。
【００５４】
ここで、制御部３０は、印刷データ解析処理において、トランスペアレンシー処理の実行命令が含まれていると判定したとすると、ラスタライズ処理内において、トランスペアレンシー処理を行う。制御部３０は、トランスペアレンシー処理を行う場合、ＲＡＭ１７にトランスペアレンシー用の作業バッファ（トランスペアレンシー処理用バッファ）を確保する。そして、制御部３０は、この作業バッファに画像データ（中間言語データから生成した作業用ビットマップデータ）を一時的に記憶させ、トランスペアレンシー処理を行う。
【００５５】
制御部３０は、１ページ分のビットマップデータが完成した時点で、ＲＡＭ１７からビットマップデータを読み出し、画像形成部１５に出力する。画像形成部１５は、出力されたビットマップデータに基づいて、用紙に画像を形成する。
【００５６】
[トランスペアレンシー処理]
次に、制御部３０が行うトランスペアレンシー処理について図５、図６を用いて説明する。
【００５７】
図５は、トランスペアレンシー処理の実行命令（コマンドＡ、コマンドＢ、コマンドＣ）によって実行されるトランスペアレンシー処理の処理イメージ図である。前述の通り、トランスペアレンシー処理の実行命令は印刷データに含まれる。
【００５８】
コマンドＡは、透過率０パーセントの画像データｄ１を背景として、当該画像データｄ１に透過率５０パーセントの画像データｄ２を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドＡによるトランスペアレンシー処理によって、画像データｄ５が生成される。
【００５９】
また、コマンドＢは、透過率７０パーセントの画像データｄ３を背景として、当該画像データｄ３に透過率０パーセントの画像データｄ４を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドＢによるトランスペアレンシー処理によって、画像データｄ６が生成される。
【００６０】
また、コマンドＣは、透過率０パーセントの画像データｄ５を背景として、当該画像データｄ５に透過率５０パーセントの画像データｄ６を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドＣによるトランスペアレンシー処理によって、画像データｄ７が生成される。
【００６１】
図６は、制御部３０が、コマンドＡ、Ｂ、Ｃによるトランスペアレンシー処理を行う際にＲＡＭ１７に確保する記憶領域（作業バッファ（トランスペアレンシー処理用バッファ））のイメージ図である。このイメージ図（図６）は、１バンド分の記憶領域を表している。尚、当該記憶領域は、ＲＡＭ１７に確保されるとしたが、ＲＡＭ１７と共にＨＤＤ１９に確保される構成としてもよい。
【００６２】
制御部３０は、コマンドＡによるトランスペアレンシー処理を行うために第１作業バッファｍ１、第３作業バッファｍ３、第４作業バッファｍ４を確保する。ここで、第３作業バッファｍ３は、画像データｄ１（図５参照）に対する処理に使用される。また、第４作業バッファｍ４は、画像データｄ２（図５参照）に対する処理に使用される。そして、第１作業バッファｍ１には、画像データｄ５（図５参照）が格納される。
【００６３】
また、制御部３０は、コマンドＢによるトランスペアレンシー処理を行うために第２作業バッファｍ２、第５作業バッファｍ５、第６作業バッファｍ６を確保する。ここで、第５作業バッファｍ５は、画像データｄ３（図５参照）に対する処理に使用される。また、第６作業バッファｍ６は、画像データｄ４（図５参照）に対する処理に使用される。そして、第２作業バッファｍ２には、画像データｄ６（図５参照）が格納される。
【００６４】
また、制御部３０は、コマンドＣによるトランスペアレンシー処理を行うために、第１作業バッファｍ１、第２作業バッファｍ２の他に、バンドバッファｍ７を確保する。ここで、第１作業バッファｍ１は、画像データｄ５に対する処理に使用される。また、第２作業バッファｍ２は、画像データｄ６に対する処理に使用される。そして、バンドバッファｍ７には、画像データｄ７（図５参照）が格納される。
【００６５】
制御部３０は、全てのコマンド（コマンドＡ、Ｂ、Ｃ）によるトランスペアレンシー処理に必要な記憶領域（作業バッファ）を確保してから、トランスペアレンシー処理を実行する。即ち、制御部３０は、バンドバッファｍ７、第１作業バッファｍ１〜第６作業バッファｍ６を確保してから、コマンドＡ、Ｂ、Ｃによるトランスペアレンシー処理を実行する。
【００６６】
[画像形成処理]
次に、画像処理装置１０の制御部３０が行う画像形成処理の具体的な処理内容について図７を用いて説明する。
【００６７】
図７は、画像形成処理を示すフローチャートである。本フローチャートでは、画像処理装置１０がクライアント端末２０から受信するデータとして、印刷データにのみ着目している。また、この印刷データは、ＰＤＬデータ、ＰＤＦデータ、ＸＰＳデータ等である。
【００６８】
まず、制御部３０は、通信部１６によりクライアント端末２０から印刷データを受信し、ＲＡＭ１７にスプールする（ステップＳ１）。そして、制御部３０は、スプールした印刷データを読み出し、印刷データ解析処理を行う（ステップＳ２）。印刷データ解析処理とは、印刷データに含まれるオブジェクトを解析し、ディスプレイリスト（中間言語データ）を生成しＲＡＭ１７に一時保存する処理である。
【００６９】
そして、制御部３０は、１ページ分のディスプレイリストが完成した時点で、このディスプレイリストをＲＡＭ１７から読み出し、ラスタライズ処理を行う（ステップＳ３）。ラスタライズ処理とは、ディスプレイリストに含まれるオブジェクトを解析し、ビットマップデータを生成しＲＡＭ１７に一時保存する処理である。
【００７０】
そして、制御部３０は、１ページ分のビットマップデータが完成した時点で、このビットマップデータをＲＡＭ１７から読み出し、ビットマップデータ出力処理を行う（ステップＳ４）。ビットマップデータ出力処理とは、画像形成部１５にビットマップデータを出力する処理である。
【００７１】
画像形成部１５は、出力されたビットマップデータに基づいて、用紙に画像を形成する。
【００７２】
[印刷データ解析処理]
次に、印刷データ解析処理（図７のステップＳ２）の具体的な処理内容について図８を用いて説明する。図８は、印刷データ解析処理を示すフローチャートである。
【００７３】
図８に示すように、制御部３０は、ＲＡＭ１７から読み出した印刷データに含まれるオブジェクトを解析してディスプレイリスト（中間言語データ）を生成する（ステップＳ１０１）。制御部３０は、生成したディスプレイリストをＲＡＭ１７に一時保存する。
【００７４】
そして、制御部３０は、１ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する（ステップＳ１０２）。制御部３０は、全てのオブジェクトの解析が完了したと判定すると（ステップＳ１０２；ＹＥＳ）、印刷データ解析処理を終了する。一方、制御部３０は、全てのオブジェクトの解析が完了していないと判定すると（ステップＳ１０２；ＮＯ）、１ページ分の印刷データに含まれる次のオブジェクトを解析してディスプレイリストを生成する（ステップＳ１０１）。
【００７５】
[ラスタライズ処理]
次に、ラスタライズ処理（図７のステップＳ３）の具体的な処理内容について図９を用いて説明する。図９は、ラスタライズ処理を示すフローチャートである。
【００７６】
図９に示すように、制御部３０は、１ページを等分割したバンド単位でラスタライズ処理を行う（ループＬ１、Ｌ２）。
【００７７】
まず、制御部３０は、ＲＡＭ１７から読み出したディスプレイリストに含まれるオブジェクトに対してラスタライズを行い、ビットマップデータを生成する（ステップＳ２０１）。制御部３０は、生成したビットマップデータをＲＡＭ１７に一時保存する。制御部３０は、ラスタライズを行う際に、トランスペアレンシー処理の実行命令が含まれている場合は、トランスペアレンシー処理を実行する。
【００７８】
そして、制御部３０は、１バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行ったか否かを判定する（ステップＳ２０２；ＮＯ、ステップＳ２０３）。
【００７９】
１バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行っていない場合（ステップＳ２０３；ＮＯ）、制御部３０は、１バンド分のディスプレイリストに含まれる次のオブジェクトに対してラスタライズを行う（ステップＳ２０１）。
【００８０】
一方、１バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行った場合（ステップＳ２０３；ＹＥＳ）、次のバンドのオブジェクトに対して、同様にラスタライズ処理を実行する（ループＬ１、Ｌ２）。
【００８１】
そして、制御部３０は、１ページ分のビットマップデータを作成するまでバンド単位でラスタライズ処理を繰り返す。制御部３０は、１ページ分のビットマップデータを生成すると、ＲＡＭ１７から１ページ分のディスプレイリストを消去する。そして、制御部３０は、このディスプレイリストを保存していたＲＡＭ１７の記憶領域を開放する（ステップＳ２０６）。以上でラスタライズ処理が終了する。
【００８２】
ところで、ステップＳ２０１において制御部３０がラスタライズを行う際、ＲＡＭ１７のメモリ不足が発生したとする（ステップＳ２０２；ＹＥＳ）。すると、制御部３０はメモリ不足防止処理を行う（ステップＳ２０４）。メモリ不足防止処理とは、メモリ不足が発生してしまった場合に、このメモリ不足を回避するための処理である。
【００８３】
このメモリ不足防止処理においてメモリ不足が回避できた場合、即ち、エラー検出しなかった場合（ステップＳ２０５；ＮＯ）、制御部３０は、オブジェクトに対してラスタライズを再開する。制御部３０は、このオブジェクトに対するラスタライズが完了すると、１バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行ったか否かを判定する（ステップＳ２０３）。
【００８４】
一方、このメモリ不足防止処理においてメモリ不足が回避できなかった場合、即ち、エラーを検出した場合（ステップＳ２０５；Ｙｅｓ）、制御部３０は、ラスタライズ処理を強制的に終了する。そして、制御部３０は、生成途中のディスプレイリストを保存していたＲＡＭ１７の記憶領域を開放する（ステップＳ２０６）。以上でラスタライズ処理がエラー終了する。更に、制御部３０は、その後のビットマップデータ出力処理（図７のステップＳ４）を行わず、画像形成処理をエラー終了する。
【００８５】
[ビットマップデータ出力処理]
次に、ビットマップデータ出力処理（図７のステップＳ４）の具体的な処理内容について、図１０を用いて説明する。図１０は、ビットマップデータ出力処理を示すフローチャートである。
【００８６】
図１０に示すように、制御部３０は、ＲＡＭ１７からビットマップデータを読み出し、画像形成部１５に出力する（ステップＳ３０１）。
【００８７】
そして、制御部３０は、印刷が完了したか否かを判定する（ステップＳ３０２）。具体的に、制御部３０は、画像形成部１５に出力していないビットマップデータがＲＡＭ１７に記憶されておらず、且つ画像形成部１５から印刷完了信号が入力された場合に、印刷が完了したと判定する。
【００８８】
印刷が完了したと判定した場合（ステップＳ３０２；ＹＥＳ）、制御部３０は、ＲＡＭ１７上に記憶されているビットマップデータを削除し、このビットマップデータが記憶されていた記憶領域を開放する（ステップＳ３０３）。
【００８９】
一方、印刷が完了していないと判定した場合（ステップＳ３０２；ＮＯ）、制御部３０は、ＲＡＭ１７からビットマップデータを読み出し、画像形成部１５に出力する（ステップＳ３０１）。
【００９０】
[メモリ不足防止処理]
次に、メモリ不足防止処理（図９のステップＳ２０４）の具体的な処理内容について、図１１を用いて説明する。図１１は、メモリ不足防止処理を示すフローチャートである。
【００９１】
図１１に示すように、制御部３０は、ＲＡＭ１７に、トランスペアレンシー処理に必要な記憶領域（作業バッファ）、即ち、トランスペアレンシー処理用バッファが確保されているか否かを判定する（ステップＳ４０１）。ここで、制御部３０は、少なくとも１つの作業バッファが確保されていれば、トランスペアレンシー処理用バッファは確保されていると判定する。つまり、制御部３０は、トランスペアレンシー処理用バッファを確保している途中でメモリ不足が発生した場合でも、トランスペアレンシー処理用バッファは確保されていると判定する。一方、制御部３０は、トランスペアレンシー処理の実行命令が含まれていない印刷データに基づいて画像形成処理を行う場合、トラスペアレンシー処理用バッファは確保されていないと判定する。
【００９２】
トランスペアレンシー処理用バッファがＲＡＭ１７に確保されていないと判定すると（ステップＳ４０１；ＮＯ）、制御部３０は、エラー処理を行う（ステップＳ４０６）。具体的に、制御部３０は、メモリが不足している旨を示す画面を表示部１３に表示させたり、エラーを検出したりする。以上で、メモリ不足防止処理がエラー終了する。
【００９３】
一方、トランスペアレンシー処理用バッファがＲＡＭ１７に確保されていると判定すると（ステップＳ４０１；ＹＥＳ）、操作部１２は、ユーザ操作によるメモリ不足モードの選択入力を受け付け、メモリ不足モードの選択に関する指示信号として制御部３０に出力する。制御部３０は、この指示信号に基づいて、実行するメモリ不足防止モードを設定する。ここで、操作部１２におけるメモリ不足モードの選択入力の受け付けと、制御部３０による実行するメモリ不足防止モードの設定とは、制御部３０が画像形成処理を実行する前に予め行われていてもよい。そして、制御部３０は、設定されているメモリ不足防止モードを検知する（ステップＳ４０２）。メモリ不足防止モードには、「通常モード」「速度優先モード」「画質優先モード」「中間モード」がある。
【００９４】
通常モードとは、印刷データにおける実行命令通りに、トランスペアレンシー処理を行うモードである。そのため、通常モードでは、制御部３０は、トランスペアレンシー処理用の作業バッファを削除しない。
【００９５】
速度優先モードとは、画像形成処理の処理速度を優先して、メモリ不足に対応するモードである。具体的に、制御部３０は、メモリ不足が発生した時点で確保している全てのトランスペアレンシー処理用バッファ（作業バッファ）に対して強制合成処理を行い、合成して必要の無くなった作業バッファを削除し、空き記憶領域を確保する。強制合成処理とは、処理対象となる作業バッファに対応する画像データを、この作業バッファに格納し、強制的に（その時点で保持している作業バッファの画像データに透過処理を施すことで）画像を重ね合わせる（合成する）処理である。このように、制御部３０は、メモリ不足が発生した時点で確保している全てのトランスペアレンシー処理用バッファに対して強制合成処理を行うことにより、最大限に空き記憶領域を確保することができる。そのため、再びメモリ不足が発生する可能性を低くすることができる。一方、トランスペアレンシー処理により生成される画像が、ユーザの意図したものと異なってしまう可能性が高い。
【００９６】
画質優先モードとは、印刷結果としての画像の画質への影響を最小限にし、メモリ不足に対応するモードである。具体的に、制御部３０は、メモリ不足が発生した時点で確保しているトランスペアレンシー処理用バッファの中から、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。制御部３０は、検出したトランスペアレンシー処理用バッファに対して強制合成処理を行い、合成して必要の無くなったトランスペアレンシー処理用バッファを削除し、空き記憶領域を確保する。この処理により、印刷結果としての画像の画質への影響を最小限にすることができる、一方、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理に時間がかかり、画像形成処理の処理速度が低下する可能性がある。更に、制御部３０は、再度メモリ不足防止処理を行う可能性が高く、画像形成処理の処理速度が低下する可能性がある。一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理については後述する。
【００９７】
中間モードとは、制御部３０が、メモリ不足が発生した時点で保持しているトランスペアレンシー処理用バッファの中から、最もメモリサイズの大きいバッファを検出し、このバッファに対して強制合成処理を行い、合成して必要の無くなったトランスペアレンシー処理用バッファを削除し、空き記憶領域を確保するモードである。このように、できるだけ大きな空きメモリサイズを確保することで、メモリフルの再発を抑えることができる。また、強制合成処理の対象となるトランスペアレンシー処理用バッファの検出をメモリサイズのみで判定することで、画像形成処理の処理速度への影響も低減することができる。更に、画質への影響を１画像にとどめることができる。
【００９８】
図１１のフローチャートに戻り、制御部３０は、設定されているメモリ不足防止モードが「通常モード」であることを検知すると（ステップＳ４０２；通常モード）、トランスペアレンシー処理用バッファを削除することなく、エラー処理を行う（ステップＳ４０６）。以上で、メモリ不足防止処理がエラー終了する。
【００９９】
制御部３０は、設定されているメモリ不足防止モードが「速度優先モード」であることを検知すると（ステップＳ４０２；速度優先モード）、メモリ不足が発生した時点（図９のステップＳ２０２；ＹＥＳ）で確保している全てのトランスペアレンシー処理用バッファを検出する（ステップＳ４０５）。そして、制御部３０は、検出したバッファに対して強制合成処理を行い（ステップＳ４０７）、合成したバッファを削除する（ステップＳ４０８）。以上で、メモリ不足防止処理が終了する。
【０１００】
制御部３０は、設定されているメモリ不足防止モードが「画質優先モード」であることを検知すると（ステップＳ４０２；画質優先モード）、影響少バッファ検出処理を行う（ステップＳ４０４）。影響少バッファ検出処理とは、メモリ不足が発生した時点（図９のステップＳ２０２；ＹＥＳ）で確保しているトランスペアレンシー処理用バッファの中から、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理である。制御部３０は、影響少バッファ検出処理において検出した作業バッファに対して強制合成処理を行い（ステップＳ４０７）、合成したバッファを削除する（ステップＳ４０８）。以上で、メモリ不足防止処理が終了する。
【０１０１】
制御部３０は、設定されているメモリ不足防止モードが「中間モード」であることを検知すると（ステップＳ４０２；中間モード）、制御部３０は、サイズ大バッファ検出処理を行う（ステップＳ４０３）。サイズ大バッファ検出処理とは、メモリ不足が発生した時点（図９のステップＳ２０２；ＹＥＳ）で確保しているトランスペアレンシー処理用バッファの中から、最もメモリサイズの大きい作業バッファを検出する処理である。制御部３０は、サイズ大バッファ検出処理において検出した作業バッファに対して強制合成処理を行い（ステップＳ４０７）、合成したバッファを削除する（ステップＳ４０８）。以上で、メモリ不足防止処理が終了する。
【０１０２】
[影響少バッファ検出処理]
次に、影響少バッファ検出処理（図１１のステップＳ４０４）の具体的な処理内容について、図１２を用いて説明する。図１２は、影響少バッファ検出処理を示すフローチャートである。
【０１０３】
図１２に示すように、制御部３０は、トランスペアレンシー処理用バッファに格納される画像データに対するトランスペアレンシー処理のブレンドモードを判定する（ステップＳ５０１）。ここで、ブレンドモードとは、画像を合成する合成方法の種類である。強制合成処理を行ったとしても画質に一番影響が少ないブレンドモードは、「Ｎｏｒｍａｌ」である。ブレンドモード「Ｎｏｒｍａｌ」は、背景の画像に、ソース画像を透過率０パーセントで重ね合わせるので、強制合成処理を行っても画質への影響は少ない。
【０１０４】
ステップＳ５０１の判定の結果、ブレンドモードが「Ｎｏｒｍａｌ」以外である場合（ステップＳ５０１；その他）、制御部３０は、このトランスペアレンシー用バッファの重ね合わせ数をカウントする（ステップＳ５０３）。
【０１０５】
ここで、トランスペアレンシー用バッファの重ね合わせ数とは、その作業バッファに格納されるべき画像データを生成するのに必要な重ね合わせの回数である。具体例を、図６を用いて説明する。第３作業バッファｍ３〜第６作業バッファｍ６の重ね合わせ数は、「０」である。第１作業バッファｍ１、第２作業バッファｍ２の重ね合わせ数は、「１」である。バンドバッファｍ７の重ね合わせ数は、「３」である。
【０１０６】
また、制御部３０は、メモリ不足が発生した時点で確保している作業バッファに対して重ね合わせ数をカウントする。具体的に、制御部３０がバンドバッファｍ７、第１作業バッファｍ１、第２作業バッファｍ２、第５作業バッファｍ５、第６作業バッファｍ６のみを確保している場合、第１作業バッファｍ１、第５作業バッファｍ５、第６作業バッファｍ６の重ね合わせ数は「０」、第２作業バッファｍ２の重ね合わせ数は「１」、バンドバッファｍ７の重ね合わせ数は「２」となる。
【０１０７】
図１２に戻り、ステップＳ５０１の判定の結果、ブレンドモードが「Ｎｏｒｍａｌ」である場合、制御部３０は、このトランスペアレンシー用バッファを強制合成処理（強制重ね合わせ）の処理対象の候補とする（ステップＳ５０２）。そして、制御部３０は、トランスペアレンシー用バッファの重ね合わせ数をカウントする（ステップＳ５０３）。
【０１０８】
次に、制御部３０は、全てのトランスペアレンシー処理用バッファの検索（解析）が完了したか否かを判定する（ステップＳ５０４）。判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了していない場合（ステップＳ５０４；ＮＯ）、制御部３０は、残りの作業バッファに対して、同様の処理（ステップＳ５０１〜ステップＳ５０３）を行う。
【０１０９】
ステップＳ５０４の判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了すると（ステップＳ５０４；ＹＥＳ）、制御部３０は、ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納する作業バッファを検出したか否かを判定する（ステップＳ５０５）。
【０１１０】
ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納するバッファを検出していない場合（ステップＳ５０５；ＮＯ）、制御部３０は、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする（ステップＳ５０６）。以上で、影響少バッファ検出処理が終了する。
【０１１１】
一方、ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納するバッファを検出している場合（ステップＳ５０５；ＹＥＳ）、制御部３０は、ブレンドモードが「Ｎｏｒｍａｌ」の中で、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする（ステップＳ５０７）。以上で、影響少バッファ検出処理が終了する。
【０１１２】
[サイズ大バッファ検出処理]
次に、サイズ大バッファ検出処理（図１１のステップＳ４０３）の具体的な処理内容について、図１３を用いて説明する。図１３は、サイズ大バッファ検出処理を示すフローチャートである。
【０１１３】
図１３に示すように、制御部３０は、ＲＡＭ１７に確保されているトランスペアレンシー処理用バッファの各メモリサイズを検出する（ステップＳ６０１）。制御部３０は、ＲＡＭ１７に確保されている全てのトランスペアレンシー処理用バッファのメモリサイズの検出が完了すると（ステップＳ６０２；ＹＥＳ）、検出した各メモリサイズに基づいて、
最もメモリサイズの大きいトランスペアレンシー処理用バッファを決定（検出）する（ステップＳ６０３）。
【０１１４】
以上、第１の実施の形態によれば、画像処理装置１０の制御部３０は、ラスタライズ実行時にＲＡＭ１７のメモリ不足が発生した際、トランスペアレンシー処理を実行するために確保されている記憶領域（作業バッファ）に対して強制合成処理を行う。そして、制御部３０は、合成して必要の無くなった作業バッファを削除し、空き記憶領域を確保する。即ち、制御部３０は、作業バッファを開放する。
【０１１５】
そのため、制御部３０は、ラスタライズ実行時にＲＡＭ１７のメモリ不足が発生した際、トランスペアレンシー処理に関する画像の画質のみを劣化させ、ビットマップデータ全体の画質を劣化させることはない。よって、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことができる。
【０１１６】
また、操作部１２は、ユーザ操作によるメモリ不足モードの選択入力を受け付け、メモリ不足モードの選択に関する指示信号として制御部３０に出力する。制御部３０は、この指示信号に基づいて、実行するメモリ不足防止モードを設定する。そして、制御部３０は、設定されているメモリ不足防止モードを検知する。
【０１１７】
そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることをより一層防ぐことができる。
【０１１８】
また、メモリ不足防止モードには、「速度優先モード」「画質優先モード」「中間モード」等がある。制御部３０は、速度優先モードでメモリ不足防止処理を行うことにより、画像形成処理の処理速度を優先して、記憶容量の不足を回避することができる。制御部３０は、画質優先モードでメモリ不足防止処理を行うことにより、トランスペアレンシー処理による画像の画質を優先して、記憶容量の不足を回避することができる。制御部３０は、中間モードでメモリ不足処理を行うことにより、画像形成処理の処理速度と、トランスペアレンシー処理による画像の画質とのバランスがとれた処理を行うことができる。
【０１１９】
[第２の実施の形態]
次に、本発明に係る画像処理装置の第２の実施の形態について説明する。ここでは、第１の実施の形態における画像処理装置と異なる点を中心に説明する。
【０１２０】
第１の実施の形態における画像処理装置と異なる主な点は、予め印刷データ解析処理において、トランスペアレンシー用バッファの重ね合わせ数を計算しておき、画質優先モードにおける影響少バッファ検出処理において、予め計算しておいた重ね合わせ数を用いて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する点である。
【０１２１】
また、第２の実施の形態では、画像形成処理を実行する前に、予め、操作部１２は、ユーザ操作によるメモリ不足モードの選択入力を受け付けて、メモリ不足モードの選択に関する指示信号として制御部３０に出力しているとする。そして、制御部３０は、画像形成処理を実行する前に、予め、この指示信号に基づいて、実行するメモリ不足防止モードを設定しているとする。
【０１２２】
[影響少バッファ検出処理]
まず、第２の実施の形態における印刷データ解析処理（図７のステップＳ２）の具体的な処理内容について、図１４を用いて説明する。図１４は、第２の実施の形態における印刷データ解析処理を示すフローチャートである。
【０１２３】
図１４に示すように、制御部３０は、ＲＡＭ１７から読み出した印刷データに含まれるオブジェクトを解析してディスプレイリスト（中間言語データ）を生成する（ステップＳ７０１）。制御部３０は、生成したディスプレイリストをＲＡＭ１７に一時保存する。
【０１２４】
また、制御部３０は、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれているか否か、設定されているメモリ不足防止モードが「画質優先モード」であるか否かを判定する（ステップＳ７０２）。
【０１２５】
ステップＳ７０２における判定の結果、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれていない場合、又は設定されているメモリ不足防止モードが「画質優先モード」でない場合（ステップＳ７０２；ＮＯ）、制御部３０は、１ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する（ステップＳ７０４）。
【０１２６】
一方、ステップＳ７０２における判定の結果、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれており、且つ設定されているメモリ不足防止モードが「画質優先モード」である場合（ステップＳ７０２；ＹＥＳ）、制御部３０は、解析対象のオブジェクトに対応する作業バッファの重ね合わせ数を算出し、この重ね合わせ数とブレンドモードとをＲＡＭ１７に一時記憶する（ステップＳ７０３）。そして、制御部３０は、１ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する（ステップＳ７０４）。
【０１２７】
制御部３０は、全てのオブジェクトの解析が完了したと判定すると（ステップＳ７０４；Ｙｅｓ）、印刷データ解析処理を終了する。一方、制御部３０は、全てのオブジェクトの解析が完了していないと判定すると（ステップＳ７０４；Ｎｏ）、１ページ分の印刷データに含まれる次のオブジェクトを解析してディスプレイリストを生成する（ステップＳ７０１）。
【０１２８】
ここで、ステップＳ７０３において、制御部３０は、印刷データのコマンドを解析して、作業バッファにおける重ね合わせ数を算出する。そのため、ＲＡＭ１７に全ての作業バッファが確保された場合の重ね合わせ数が算出される。具体的に、図６において、バンドバッファｍ７、第１作業バッファｍ１〜第６作業バッファｍ６の全てが確保された場合の重ね合わせ数が算出される。即ち、第３作業バッファｍ３〜第６作業バッファｍ６の重ね合わせ数は、「０」である。第１作業バッファｍ１、第２作業バッファｍ２の重ね合わせ数は、「１」である。バンドバッファｍ７の重ね合わせ数は、「３」である。
【０１２９】
[影響少バッファ検出処理]
次に、第２の実施の形態における影響少バッファ検出処理（図１１のステップＳ４０４）の具体的な処理内容について、図１５を用いて説明する。図１５は、第２の実施の形態における影響少バッファ検出処理を示すフローチャートである。
【０１３０】
図１５に示すように、制御部３０は、トランスペアレンシー処理用バッファに格納される画像データに対するトランスペアレンシー処理のブレンドモードを判定する（ステップＳ８０１）。具体的に、制御部３０は、ＲＡＭ１７に一時記憶されている（図１４のステップＳ７０３）解析対象のオブジェクトのブレンドモードの値を読み出す。
【０１３１】
ステップＳ８０１の判定の結果、ブレンドモードが「Ｎｏｒｍａｌ」以外である場合（ステップＳ８０１；その他）、制御部３０は、全てのトランスペアレンシー処理用バッファの検索（解析）が完了したか否かを判定する（ステップＳ８０３）。
【０１３２】
一方、ステップＳ８０１の判定の結果、ブレンドモードが「Ｎｏｒｍａｌ」である場合（ステップＳ８０１；Ｎｏｒｍａｌ）、制御部３０は、このトランスペアレンシー処理用バッファを強制合成処理（強制重ね合わせ）の処理対象の候補とする（ステップＳ８０２）。そして、制御部３０は、全てのトランスペアレンシー処理用バッファの検索（解析）が完了したか否かを判定する（ステップＳ８０３）。
【０１３３】
判定の結果、全てのトランスペアレンシー処理用バッファの検索（解析）が完了していない場合（ステップＳ８０３；ＮＯ）、制御部３０は、残りのトランスペアレンシー処理用バッファに対して、同様の処理（ステップＳ８０１〜Ｓ８０２）を行う。
【０１３４】
ステップＳ８０３の判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了すると（ステップＳ８０３；ＹＥＳ）、制御部３０は、ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納する作業バッファを検出したか否かを判定する（ステップＳ８０４）。
【０１３５】
ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納するバッファを検出していない場合（ステップＳ８０４；ＮＯ）、制御部３０は、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする（ステップＳ８０５）。ここで、制御部３０は、ＲＡＭ１７に一時記憶されている（図１４のステップＳ７０３）解析対象のオブジェクトに対応する作業バッファの重ね合わせ数を読み出して参照している。以上で、影響少バッファ検出処理が終了する。
【０１３６】
一方、ブレンドモードが「Ｎｏｒｍａｌ」である画像データを格納するバッファを検出している場合（ステップＳ８０４；ＹＥＳ）、制御部３０は、ブレンドモードが「Ｎｏｒｍａｌ」の中で、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする（ステップＳ８０６）。以上で、影響少バッファ検出処理が終了する。
【０１３７】
以上、第２の実施の形態によれば、画像処理装置１０の制御部３０は、予め印刷データ解析処理において、トランスペアレンシー用バッファの重ね合わせ数を計算しておき、画質優先モードにおける影響少バッファ検出処理において、予め計算しておいた重ね合わせ数を用いて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。
【０１３８】
即ち、制御部３０が、全てのトランスペアレンシー処理用バッファを確保できていないときにメモリ不足が発生してしまった場合でも、メモリ不足が発生している時点で確保しているトランスペアレンシー処理用バッファのうち、全ての作業バッファを確保した場合の重ね合わせ数に基づいて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。
【０１３９】
そのため、より正確に一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出することができる。
【０１４０】
尚、上記各実施の形態における記述は、本発明に係る画像処理装置の一例であり、これに限定されるものではない。画像処理装置を構成する各機能部の細部構成及び細部動作に関しても適宜変更可能である。例えば、上記実施の形態においては、トランスペアレンシー用バッファの重ね合わせ数として、その作業バッファに格納されるべき画像データを生成するのに必要な重ね合わせの回数を採用したが、これに代えてその作業バッファより下位の階層数を重ね合わせ数として扱っても良い。即ち、この場合、先の図６の具体例で言えば第３作業バッファｍ３〜第６作業バッファｍ６の重ね合わせ数は「０」となり、第１作業バッファｍ１、第２作業バッファｍ２の重ね合わせ数は「１」となり、バンドバッファｍ７の重ね合わせ数は「２」となる。
【０１４１】
また、上述した各実施の形態では、プログラムを格納したコンピュータ読み取り可能な媒体としてＲＯＭやＨＤＤを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬型記録媒体を適用することが可能である。また、プログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ（搬送波）も適用可能である。
【符号の説明】
【０１４２】
１０      画像処理装置
１１      ＣＰＵ
１２      操作部
１３      表示部
１４      画像読取部
１５      画像形成部
１６      通信部
１７      ＲＡＭ
１８      ＲＯＭ
１９      ＨＤＤ
２０      クライアント端末
２１      ＣＰＵ
２２      操作部
２３      表示部
２４      通信部
２５      ＲＡＭ
２６      ＨＤＤ
３０      制御部
１００    画像形成システム
１８１    プリンタコントローラプログラム
２６１    プリンタドライバプログラム
Ｎ        通信ネットワーク
【図１】
2010171682.tif 000003
【図２】
2010171682.tif 000004
【図３】
2010171682.tif 000005
【図４】
2010171682.tif 000006
【図５】
2010171682.tif 000007
【図６】
2010171682.tif 000008
【図７】
2010171682.tif 000009
【図８】
2010171682.tif 000010
【図９】
2010171682.tif 000011
【図１０】
2010171682.tif 000012
【図１１】
2010171682.tif 000013
【図１２】
2010171682.tif 000014
【図１３】
2010171682.tif 000015
【図１４】
2010171682.tif 000016
【図１５】
2010171682.tif 000017