JP4877331B2 - 画像処理装置、プログラム及びデータ処理方法 - Google Patents

画像処理装置、プログラム及びデータ処理方法 Download PDF

Info

Publication number
JP4877331B2
JP4877331B2 JP2009011704A JP2009011704A JP4877331B2 JP 4877331 B2 JP4877331 B2 JP 4877331B2 JP 2009011704 A JP2009011704 A JP 2009011704A JP 2009011704 A JP2009011704 A JP 2009011704A JP 4877331 B2 JP4877331 B2 JP 4877331B2
Authority
JP
Japan
Prior art keywords
transparency
processing
image
memory control
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009011704A
Other languages
English (en)
Other versions
JP2010171682A (ja
Inventor
昌裕 小澤
文人 秋山
純 黒木
博司 野川
泰史 青山
邦和 佐藤
康貴 下原
貴久 松永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Business Technologies Inc
Original Assignee
Konica Minolta Business Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Business Technologies Inc filed Critical Konica Minolta Business Technologies Inc
Priority to JP2009011704A priority Critical patent/JP4877331B2/ja
Publication of JP2010171682A publication Critical patent/JP2010171682A/ja
Application granted granted Critical
Publication of JP4877331B2 publication Critical patent/JP4877331B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Storing Facsimile Image Data (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、画像処理装置、プログラム及びデータ処理方法に関する。
PC(Personal Computer)等の外部装置で作成されたPS(Post Script:ポストスクリプト(登録商標))データやPDF(Portable Document Format)データ等の印刷データを、LAN等のネットワークを介して受信し、受信したデータを一旦中間形式のデータ(中間データ)に変換し、この中間データをラスタライズしてビットマップデータを生成し、印刷を行うプリンタ、MFP(Multi Function Peripheral)等の画像処理装置が普及している。
また近年、PSデータ、PDFデータ等のバージョンアップや、XPS(XML Paper Specification)データ等の新規フォーマットのサポートにより、画像処理装置におけるインタプリタの処理に必要なメモリ容量は増加している。更に、PDFデータやXPSデータ等の印刷データは、複数の画像データを透過させて重ね合わせて1つの画像を表示するトランスペアレンシー機能(透過機能)を有しており、トランスペアレンシー処理(トランスペアレンシー機能による処理)は多くのメモリ容量を必要とする。
一方で、プリンタ等の画像処理装置の価格競争の激化により、画像処理装置に搭載するメモリ容量の削減等によるコストダウンが求められている。
そのため、限られたメモリ容量を効率良く使う為の様々な工夫が為されている。
例えば、イメージデータバッファのバッファ容量が不足する場合に、メモリに展開済みの圧縮印字イメージデータを、解像度を切り下げた圧縮印字イメージデータに変更してイメージデータバッファに書き換える技術が開示されている(特許文献1参照)。
また、描画メモリのメモリ容量不足が発生する場合に、どの程度の不足量かを調べ、不足量が多い場合、主走査、副走査の両方向の解像度を落としてロッシー圧縮処理を行い、不足量が中くらいの場合、主走査、副走査のどちらかの方向の解像度を落としてロッシー圧縮処理を行い、不足量が少ない場合、階調を2ビットから1ビットに落としてロッシー圧縮処理を行う技術が開示されている(特許文献2参照)。
特開平8−282020号公報 特開平10−822号公報
しかし、特許文献1、2の技術では、ラスタライズ後のビットマップデータ全体の画質が劣化してしまう。そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、トランスペアレンシー処理の一部を省略すればメモリ容量不足(記憶容量不足)が回避できる場合でも、ビットマップデータ全体の画質を劣化させてしまう。よって、ユーザは、意図しない処理結果(印刷結果)を得てしまう恐れがある。
本発明は、上述したような課題に鑑みて為されたものであり、その目的とするところは、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことである。
上記の課題を解決するために、請求項1に記載の発明は、
印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行う画像処理装置であって、
前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部と、
前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断手段と、
前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御手段と、
を備える。
請求項2に記載の発明は、請求項1に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行う。
請求項3に記載の発明は、請求項1に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行う。
請求項4に記載の発明は、請求項1に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行う。
請求項に記載の発明は、請求項1に記載の発明において、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、前記メモリ制御を行う前記所定の記憶領域を検出するための複数のモードを持ち、
前記メモリ制御手段は、
前記複数のモードのうち、ユーザにより選択されたモードに基づいて検出される前記所定の記憶領域に対して前記メモリ制御を行う。
請求項に記載の発明は、請求項に記載の発明において、
前記複数のモードは、
前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行うモードを含む。
請求項に記載の発明は、請求項5又は6に記載の発明において、
前記複数のモードは、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行うモードを含む。
請求項に記載の発明は、請求項5〜7の何れか一項に記載の発明において、
前記複数のモードは、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行うモードを含む。
請求項に記載の発明は、請求項4又は8に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する。
請求項10に記載の発明は、請求項に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する。
請求項11に記載の発明は、請求項1〜10の何れか一項に記載の発明において、
前記メモリ制御手段は、
前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する。
請求項12に記載のプログラムは、
印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行うコンピュータを、
前記画像処理の実行中に、前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断手段、
前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御手段、
として機能させる。
請求項13に記載の発明は、請求項12に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行う。
請求項14に記載の発明は、請求項12に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行う。
請求項15に記載の発明は、請求項12に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行う。
請求項16に記載の発明は、請求項12に記載の発明において、
前記メモリ制御手段は、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、前記メモリ制御を行う前記所定の記憶領域を検出するための複数のモードを持ち、
前記メモリ制御手段は、
前記複数のモードのうち、ユーザにより選択されたモードに基づいて検出される前記所定の記憶領域に対して前記メモリ制御を行う。
請求項17に記載の発明は、請求項15に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する。
請求項18に記載の発明は、請求項17に記載の発明において、
前記メモリ制御手段は、
前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する。
請求項19に記載の発明は、請求項12〜18の何れか一項に記載の発明において、
前記メモリ制御手段は、
前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する。
請求項20に記載の発明は、
印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行うデータ処理方法であって、
前記画像処理の実行中に、前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断ステップと、
前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御ステップと、
を含む。
請求項21に記載の発明は、請求項20に記載の発明において、
前記メモリ制御ステップでは、
前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する。
請求項1、12、20に記載の発明によれば、画像処理の実行中に記憶部の記憶容量が不足した際、記憶部に、トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された所定の記憶領域を開放する。
そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことができる。
請求項2、6、13に記載の発明によれば、画像処理の処理速度を優先した、記憶容量の不足の回避方法を提供することができる。
請求項3、7、14に記載の発明によれば、画像処理の処理速度と、トランスペアレンシー処理による画像の画質とのバランスがとれた、記憶容量の不足の回避方法を提供することができる。
請求項4、8、15に記載の発明によれば、トランスペアレンシー処理による画像の画質を優先した、記憶容量の不足の回避方法を提供することができる。
請求項9、17に記載の発明によれば、トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域を検出することができる。
請求項10、18に記載の発明によれば、トランスペアレンシー処理を実行するための記憶領域の確保状況に拘らず、トランスペアレンシー処理における画像データの重ね合わせ数を算出することができる。
画像形成システムのシステム構成図である。 クライアント端末のブロック図である。 画像処理装置のブロック図である。 画像形成処理の処理フローを示す図である。 トランスペアレンシー処理の処理イメージ図である。 トランスペアレンシー処理実行時に確保されるメモリ領域のイメージ図である。 画像形成処理を示すフローチャートである。 印刷データ解析処理を示すフローチャートである。 ラスタライズ処理を示すフローチャートである。 ビットマップデータ出力処理を示すフローチャートである。 メモリ不足防止処理を示すフローチャートである。 影響少バッファ検出処理を示すフローチャートである。 サイズ大バッファ検出処理を示すフローチャートである。 第2の実施の形態における印刷データ解析処理を示すフローチャートである。 第2の実施の形態における影響少バッファ検出処理である。
[第1の実施の形態]
以下、図面を参照して、本発明に係る画像処理装置の第1の実施の形態について説明する。
[画像形成システムのシステム構成]
図1に、画像形成システム100のシステム構成を示す。図1に示すように、画像形成システム100は、画像処理装置10とクライアント端末20とから構成されており、各装置はLAN(Local Area Network)等の通信ネットワークNを介して、データ通信可能に接続されている。
画像処理装置10は、コピー機能、画像読取機能、プリンタ機能を備えた、所謂MFP(Multi-Function Peripheral)であり、クライアント端末20から送信されるプリントジョブ(プリント指令)や、画像処理装置10に備えられているスキャナ等の画像読取部から読み込んだ画像データ等に基づき、用紙に画像を形成する。
クライアント端末20は、所謂パーソナルコンピュータであり、画像処理装置10にプリントジョブを送信する機能を有する。クライアント端末20には、プリンタドライバプログラム(以下、単にプリンタドライバと称することがある。)がインストールされており、このプリンタドライバの機能を用いて画像形成時に適用されるプリント条件のデータ(印刷要求データ)、画像データ(印刷データ)等を含んだプリントジョブデータを生成し画像処理装置10に送信する。
[クライアント端末の機能的構成]
図2に、クライアント端末20の構成を示す。図2に示すように、クライアント端末20は、CPU21、操作部22、表示部23、通信部24、RAM(Random Access Memory)25、HDD26を備えて構成されている。
CPU21は、操作部22から入力される操作信号(指示信号)又は通信部24により受信される指示信号に応じて、HDD26に記憶されている各種処理プログラムを読み出し、RAM25内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。
操作部22は、カーソルキー、数字入力キー、及び各種機能キー等を備えたキーボードと、マウスなどのポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された指示信号をCPU21に出力する。
表示部23は、LCD(Liquid Crystal Display)により構成され、CPU21から入力される表示信号の指示に従って、操作部22からの入力指示やデータ等を表示する。
通信部24は、LANアダプタ、ルータ、TA等を備え、通信ネットワークNを介して接続された画像処理装置10等の外部機器との間でデータの送受信を行う。
RAM25は、CPU21により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。
HDD26は、記憶装置であり、各種プログラム、設定データ、画像データ等を記憶する。また、HDD26は、プリンタドライバプログラム261を記憶している。
CPU21は、当該プリンタドライバプログラム261をHDD26から読み出してRAM25に展開し、当該プログラムとの協働により画像処理装置10に、印刷要求データ及び印刷データを送信する。印刷データは、PDL(Page Description Language)データ、PDFデータ、XPSデータ等である。
[画像処理装置の機能的構成]
図3に、画像処理装置10の構成を示す。図3に示すように、画像処理装置10は、CPU11、操作部12、表示部13、画像読取部14、画像形成部15、通信部16、RAM17、ROM(Read Only Memory)18、HDD19を備えて構成されている。
CPU11は、操作部12から入力される操作信号(指示信号)又は通信部16により受信される指示信号に応じて、ROM18に記憶されている各種処理プログラムを読み出し、RAM17内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。例えば、CPU11は画像形成に関する一連の処理(画像形成処理)を行う。以下、CPU11とRAM17とを合わせて制御部30と称す場合がある。
操作部12は、数字キーやスタートキー、リセットキー等の各種キーを有し、押下されたキーの押下信号をCPU11に出力する。また、操作部12は、表示部13と一体的に形成されたタッチパネルを備えており、ユーザの指先やタッチペン等により当接されたタッチパネル上の位置を検出して、位置信号をCPU11に出力する。
画像読取部14は、原稿画像を読み取って画像データを生成する所謂スキャナであり、原稿を載置するプラテンガラス、プラテンガラス上の原稿画像を走査し、これをCCDイメージセンサ上に結像する走査光学系を備えている。画像読取部14は、CCDイメージセンサで読み取った原稿画像に基づいて生成された画像信号をA/D変換して画像信号を生成する。
画像形成部15は、電子写真方式、静電記録方式、熱転写方式等の作像プロセスを利用して画像を形成するために必要な構成要素を含む機能部である。例えば、画像形成部15は、感光体、転写ベルト、定着器、各種搬送ベルト、電子回路、給紙部、排紙部等を備える。画像形成部15は、CPU11の指示に従い、画像読取部14により生成された画像データ又は通信部16により受信された印刷データ等に基づいて、給紙部から供給された用紙に画像を形成し、排紙部に搬送する。また、給紙部は給紙トレイを、排紙部は排紙トレイを備える。
通信部16は、LANアダプタ、ルータ、TA(Terminal Adapter)等を備え、通信ネットワークNを介して接続されたクライアント端末20等の外部機器との間でデータの送受信を行う。例えば、通信部16は、クライアント端末20からプリントジョブデータ(印刷要求データ及び印刷データ)を受信する。
RAM17は、CPU11により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。
ROM18は、CPU11で実行される各種処理プログラム、各種データ等を記憶する。これらの各種プログラムは、読み取り可能なプログラムコードの形態で格納され、CPU11は、当該プログラムコードに従った動作を逐次実行する。また、ROM18は、プリンタコントローラプログラム181を記憶している。
HDD19は、記憶装置であり、画像読取部14により読み取られた画像データ、通信部16によりクライアント端末20から受信された印刷データ(PDLデータ、PDFデータ、XPSデータ)等を記憶する。
制御部30は、プリンタコントローラプログラム181をROM18から読み出してRAM17に展開し、このプログラムとの協働により、次のように機能する。即ち、制御部30は、通信部16によりクライアント端末20から受信された印刷データを解析して、中間言語データを生成する。そして、制御部30は、中間言語データに対してラスタライズ処理を行ってビットマップデータを生成する。そして、制御部30は、生成したビットマップデータを画像形成部15に出力する。また、印刷データにトランスペアレンシー処理の実行命令が含まれる場合、制御部30は、ラスタライズ処理内において後述するトランスペアレンシー処理を行う。
[画像形成処理の処理フロー]
図4を用いて、画像処理装置10の制御部30が行う画像形成処理の処理フローについて説明する。本説明では、制御部30が取得するデータとして、印刷データにのみ着目している。
制御部30は、クライアント端末20から送信された印刷データを通信部16を介して取得する。制御部30は、取得した印刷データをスプールデータとしてRAM17のスプールバッファに一時的に記憶させる(スプールする)。制御部30は、スプールデータ、即ち印刷データをRAM17のスプールバッファから読み出す。そして、制御部30は、読み出した印刷データに対して印刷データ解析処理を行い、この印刷データに基づいてディスプレイリスト(中間言語データ)を生成し、RAM17に保存する。制御部30は、1ページ分のディスプレイリストが完成した時点で、RAM17からディスプレイリストを読み出す。
制御部30は、読み出したディスプレイリストに対してラスタライズ処理を行い、バンド単位に分割したビットマップデータを生成し、RAM17に保存する。即ち、制御部30は、ラスタライズ処理をバンド単位で行う。
ここで、制御部30は、印刷データ解析処理において、トランスペアレンシー処理の実行命令が含まれていると判定したとすると、ラスタライズ処理内において、トランスペアレンシー処理を行う。制御部30は、トランスペアレンシー処理を行う場合、RAM17にトランスペアレンシー用の作業バッファ(トランスペアレンシー処理用バッファ)を確保する。そして、制御部30は、この作業バッファに画像データ(中間言語データから生成した作業用ビットマップデータ)を一時的に記憶させ、トランスペアレンシー処理を行う。
制御部30は、1ページ分のビットマップデータが完成した時点で、RAM17からビットマップデータを読み出し、画像形成部15に出力する。画像形成部15は、出力されたビットマップデータに基づいて、用紙に画像を形成する。
[トランスペアレンシー処理]
次に、制御部30が行うトランスペアレンシー処理について図5、図6を用いて説明する。
図5は、トランスペアレンシー処理の実行命令(コマンドA、コマンドB、コマンドC)によって実行されるトランスペアレンシー処理の処理イメージ図である。前述の通り、トランスペアレンシー処理の実行命令は印刷データに含まれる。
コマンドAは、透過率0パーセントの画像データd1を背景として、当該画像データd1に透過率50パーセントの画像データd2を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドAによるトランスペアレンシー処理によって、画像データd5が生成される。
また、コマンドBは、透過率70パーセントの画像データd3を背景として、当該画像データd3に透過率0パーセントの画像データd4を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドBによるトランスペアレンシー処理によって、画像データd6が生成される。
また、コマンドCは、透過率0パーセントの画像データd5を背景として、当該画像データd5に透過率50パーセントの画像データd6を重ね合わせるトランスペアレンシー処理の実行命令である。このコマンドCによるトランスペアレンシー処理によって、画像データd7が生成される。
図6は、制御部30が、コマンドA、B、Cによるトランスペアレンシー処理を行う際にRAM17に確保する記憶領域(作業バッファ(トランスペアレンシー処理用バッファ))のイメージ図である。このイメージ図(図6)は、1バンド分の記憶領域を表している。尚、当該記憶領域は、RAM17に確保されるとしたが、RAM17と共にHDD19に確保される構成としてもよい。
制御部30は、コマンドAによるトランスペアレンシー処理を行うために第1作業バッファm1、第3作業バッファm3、第4作業バッファm4を確保する。ここで、第3作業バッファm3は、画像データd1(図5参照)に対する処理に使用される。また、第4作業バッファm4は、画像データd2(図5参照)に対する処理に使用される。そして、第1作業バッファm1には、画像データd5(図5参照)が格納される。
また、制御部30は、コマンドBによるトランスペアレンシー処理を行うために第2作業バッファm2、第5作業バッファm5、第6作業バッファm6を確保する。ここで、第5作業バッファm5は、画像データd3(図5参照)に対する処理に使用される。また、第6作業バッファm6は、画像データd4(図5参照)に対する処理に使用される。そして、第2作業バッファm2には、画像データd6(図5参照)が格納される。
また、制御部30は、コマンドCによるトランスペアレンシー処理を行うために、第1作業バッファm1、第2作業バッファm2の他に、バンドバッファm7を確保する。ここで、第1作業バッファm1は、画像データd5に対する処理に使用される。また、第2作業バッファm2は、画像データd6に対する処理に使用される。そして、バンドバッファm7には、画像データd7(図5参照)が格納される。
制御部30は、全てのコマンド(コマンドA、B、C)によるトランスペアレンシー処理に必要な記憶領域(作業バッファ)を確保してから、トランスペアレンシー処理を実行する。即ち、制御部30は、バンドバッファm7、第1作業バッファm1〜第6作業バッファm6を確保してから、コマンドA、B、Cによるトランスペアレンシー処理を実行する。
[画像形成処理]
次に、画像処理装置10の制御部30が行う画像形成処理の具体的な処理内容について図7を用いて説明する。
図7は、画像形成処理を示すフローチャートである。本フローチャートでは、画像処理装置10がクライアント端末20から受信するデータとして、印刷データにのみ着目している。また、この印刷データは、PDLデータ、PDFデータ、XPSデータ等である。
まず、制御部30は、通信部16によりクライアント端末20から印刷データを受信し、RAM17にスプールする(ステップS1)。そして、制御部30は、スプールした印刷データを読み出し、印刷データ解析処理を行う(ステップS2)。印刷データ解析処理とは、印刷データに含まれるオブジェクトを解析し、ディスプレイリスト(中間言語データ)を生成しRAM17に一時保存する処理である。
そして、制御部30は、1ページ分のディスプレイリストが完成した時点で、このディスプレイリストをRAM17から読み出し、ラスタライズ処理を行う(ステップS3)。ラスタライズ処理とは、ディスプレイリストに含まれるオブジェクトを解析し、ビットマップデータを生成しRAM17に一時保存する処理である。
そして、制御部30は、1ページ分のビットマップデータが完成した時点で、このビットマップデータをRAM17から読み出し、ビットマップデータ出力処理を行う(ステップS4)。ビットマップデータ出力処理とは、画像形成部15にビットマップデータを出力する処理である。
画像形成部15は、出力されたビットマップデータに基づいて、用紙に画像を形成する。
[印刷データ解析処理]
次に、印刷データ解析処理(図7のステップS2)の具体的な処理内容について図8を用いて説明する。図8は、印刷データ解析処理を示すフローチャートである。
図8に示すように、制御部30は、RAM17から読み出した印刷データに含まれるオブジェクトを解析してディスプレイリスト(中間言語データ)を生成する(ステップS101)。制御部30は、生成したディスプレイリストをRAM17に一時保存する。
そして、制御部30は、1ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する(ステップS102)。制御部30は、全てのオブジェクトの解析が完了したと判定すると(ステップS102;YES)、印刷データ解析処理を終了する。一方、制御部30は、全てのオブジェクトの解析が完了していないと判定すると(ステップS102;NO)、1ページ分の印刷データに含まれる次のオブジェクトを解析してディスプレイリストを生成する(ステップS101)。
[ラスタライズ処理]
次に、ラスタライズ処理(図7のステップS3)の具体的な処理内容について図9を用いて説明する。図9は、ラスタライズ処理を示すフローチャートである。
図9に示すように、制御部30は、1ページを等分割したバンド単位でラスタライズ処理を行う(ループL1、L2)。
まず、制御部30は、RAM17から読み出したディスプレイリストに含まれるオブジェクトに対してラスタライズを行い、ビットマップデータを生成する(ステップS201)。制御部30は、生成したビットマップデータをRAM17に一時保存する。制御部30は、ラスタライズを行う際に、トランスペアレンシー処理の実行命令が含まれている場合は、トランスペアレンシー処理を実行する。
そして、制御部30は、1バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行ったか否かを判定する(ステップS202;NO、ステップS203)。
1バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行っていない場合(ステップS203;NO)、制御部30は、1バンド分のディスプレイリストに含まれる次のオブジェクトに対してラスタライズを行う(ステップS201)。
一方、1バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行った場合(ステップS203;YES)、次のバンドのオブジェクトに対して、同様にラスタライズ処理を実行する(ループL1、L2)。
そして、制御部30は、1ページ分のビットマップデータを作成するまでバンド単位でラスタライズ処理を繰り返す。制御部30は、1ページ分のビットマップデータを生成すると、RAM17から1ページ分のディスプレイリストを消去する。そして、制御部30は、このディスプレイリストを保存していたRAM17の記憶領域を開放する(ステップS206)。以上でラスタライズ処理が終了する。
ところで、ステップS201において制御部30がラスタライズを行う際、RAM17のメモリ不足が発生したとする(ステップS202;YES)。すると、制御部30はメモリ不足防止処理を行う(ステップS204)。メモリ不足防止処理とは、メモリ不足が発生してしまった場合に、このメモリ不足を回避するための処理である。
このメモリ不足防止処理においてメモリ不足が回避できた場合、即ち、エラー検出しなかった場合(ステップS205;NO)、制御部30は、オブジェクトに対してラスタライズを再開する。制御部30は、このオブジェクトに対するラスタライズが完了すると、1バンド分のディスプレイリストに含まれる全てのオブジェクトに対してラスタライズを行ったか否かを判定する(ステップS203)。
一方、このメモリ不足防止処理においてメモリ不足が回避できなかった場合、即ち、エラーを検出した場合(ステップS205;Yes)、制御部30は、ラスタライズ処理を強制的に終了する。そして、制御部30は、生成途中のディスプレイリストを保存していたRAM17の記憶領域を開放する(ステップS206)。以上でラスタライズ処理がエラー終了する。更に、制御部30は、その後のビットマップデータ出力処理(図7のステップS4)を行わず、画像形成処理をエラー終了する。
[ビットマップデータ出力処理]
次に、ビットマップデータ出力処理(図7のステップS4)の具体的な処理内容について、図10を用いて説明する。図10は、ビットマップデータ出力処理を示すフローチャートである。
図10に示すように、制御部30は、RAM17からビットマップデータを読み出し、画像形成部15に出力する(ステップS301)。
そして、制御部30は、印刷が完了したか否かを判定する(ステップS302)。具体的に、制御部30は、画像形成部15に出力していないビットマップデータがRAM17に記憶されておらず、且つ画像形成部15から印刷完了信号が入力された場合に、印刷が完了したと判定する。
印刷が完了したと判定した場合(ステップS302;YES)、制御部30は、RAM17上に記憶されているビットマップデータを削除し、このビットマップデータが記憶されていた記憶領域を開放する(ステップS303)。
一方、印刷が完了していないと判定した場合(ステップS302;NO)、制御部30は、RAM17からビットマップデータを読み出し、画像形成部15に出力する(ステップS301)。
[メモリ不足防止処理]
次に、メモリ不足防止処理(図9のステップS204)の具体的な処理内容について、図11を用いて説明する。図11は、メモリ不足防止処理を示すフローチャートである。
図11に示すように、制御部30は、RAM17に、トランスペアレンシー処理に必要な記憶領域(作業バッファ)、即ち、トランスペアレンシー処理用バッファが確保されているか否かを判定する(ステップS401)。ここで、制御部30は、少なくとも1つの作業バッファが確保されていれば、トランスペアレンシー処理用バッファは確保されていると判定する。つまり、制御部30は、トランスペアレンシー処理用バッファを確保している途中でメモリ不足が発生した場合でも、トランスペアレンシー処理用バッファは確保されていると判定する。一方、制御部30は、トランスペアレンシー処理の実行命令が含まれていない印刷データに基づいて画像形成処理を行う場合、トラスペアレンシー処理用バッファは確保されていないと判定する。
トランスペアレンシー処理用バッファがRAM17に確保されていないと判定すると(ステップS401;NO)、制御部30は、エラー処理を行う(ステップS406)。具体的に、制御部30は、メモリが不足している旨を示す画面を表示部13に表示させたり、エラーを検出したりする。以上で、メモリ不足防止処理がエラー終了する。
一方、トランスペアレンシー処理用バッファがRAM17に確保されていると判定すると(ステップS401;YES)、操作部12は、ユーザ操作によるメモリ不足モードの選択入力を受け付け、メモリ不足モードの選択に関する指示信号として制御部30に出力する。制御部30は、この指示信号に基づいて、実行するメモリ不足防止モードを設定する。ここで、操作部12におけるメモリ不足モードの選択入力の受け付けと、制御部30による実行するメモリ不足防止モードの設定とは、制御部30が画像形成処理を実行する前に予め行われていてもよい。そして、制御部30は、設定されているメモリ不足防止モードを検知する(ステップS402)。メモリ不足防止モードには、「通常モード」「速度優先モード」「画質優先モード」「中間モード」がある。
通常モードとは、印刷データにおける実行命令通りに、トランスペアレンシー処理を行うモードである。そのため、通常モードでは、制御部30は、トランスペアレンシー処理用の作業バッファを削除しない。
速度優先モードとは、画像形成処理の処理速度を優先して、メモリ不足に対応するモードである。具体的に、制御部30は、メモリ不足が発生した時点で確保している全てのトランスペアレンシー処理用バッファ(作業バッファ)に対して強制合成処理を行い、合成して必要の無くなった作業バッファを削除し、空き記憶領域を確保する。強制合成処理とは、処理対象となる作業バッファに対応する画像データを、この作業バッファに格納し、強制的に(その時点で保持している作業バッファの画像データに透過処理を施すことで)画像を重ね合わせる(合成する)処理である。このように、制御部30は、メモリ不足が発生した時点で確保している全てのトランスペアレンシー処理用バッファに対して強制合成処理を行うことにより、最大限に空き記憶領域を確保することができる。そのため、再びメモリ不足が発生する可能性を低くすることができる。一方、トランスペアレンシー処理により生成される画像が、ユーザの意図したものと異なってしまう可能性が高い。
画質優先モードとは、印刷結果としての画像の画質への影響を最小限にし、メモリ不足に対応するモードである。具体的に、制御部30は、メモリ不足が発生した時点で確保しているトランスペアレンシー処理用バッファの中から、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。制御部30は、検出したトランスペアレンシー処理用バッファに対して強制合成処理を行い、合成して必要の無くなったトランスペアレンシー処理用バッファを削除し、空き記憶領域を確保する。この処理により、印刷結果としての画像の画質への影響を最小限にすることができる、一方、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理に時間がかかり、画像形成処理の処理速度が低下する可能性がある。更に、制御部30は、再度メモリ不足防止処理を行う可能性が高く、画像形成処理の処理速度が低下する可能性がある。一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理については後述する。
中間モードとは、制御部30が、メモリ不足が発生した時点で保持しているトランスペアレンシー処理用バッファの中から、最もメモリサイズの大きいバッファを検出し、このバッファに対して強制合成処理を行い、合成して必要の無くなったトランスペアレンシー処理用バッファを削除し、空き記憶領域を確保するモードである。このように、できるだけ大きな空きメモリサイズを確保することで、メモリフルの再発を抑えることができる。また、強制合成処理の対象となるトランスペアレンシー処理用バッファの検出をメモリサイズのみで判定することで、画像形成処理の処理速度への影響も低減することができる。更に、画質への影響を1画像にとどめることができる。
図11のフローチャートに戻り、制御部30は、設定されているメモリ不足防止モードが「通常モード」であることを検知すると(ステップS402;通常モード)、トランスペアレンシー処理用バッファを削除することなく、エラー処理を行う(ステップS406)。以上で、メモリ不足防止処理がエラー終了する。
制御部30は、設定されているメモリ不足防止モードが「速度優先モード」であることを検知すると(ステップS402;速度優先モード)、メモリ不足が発生した時点(図9のステップS202;YES)で確保している全てのトランスペアレンシー処理用バッファを検出する(ステップS405)。そして、制御部30は、検出したバッファに対して強制合成処理を行い(ステップS407)、合成したバッファを削除する(ステップS408)。以上で、メモリ不足防止処理が終了する。
制御部30は、設定されているメモリ不足防止モードが「画質優先モード」であることを検知すると(ステップS402;画質優先モード)、影響少バッファ検出処理を行う(ステップS404)。影響少バッファ検出処理とは、メモリ不足が発生した時点(図9のステップS202;YES)で確保しているトランスペアレンシー処理用バッファの中から、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する処理である。制御部30は、影響少バッファ検出処理において検出した作業バッファに対して強制合成処理を行い(ステップS407)、合成したバッファを削除する(ステップS408)。以上で、メモリ不足防止処理が終了する。
制御部30は、設定されているメモリ不足防止モードが「中間モード」であることを検知すると(ステップS402;中間モード)、制御部30は、サイズ大バッファ検出処理を行う(ステップS403)。サイズ大バッファ検出処理とは、メモリ不足が発生した時点(図9のステップS202;YES)で確保しているトランスペアレンシー処理用バッファの中から、最もメモリサイズの大きい作業バッファを検出する処理である。制御部30は、サイズ大バッファ検出処理において検出した作業バッファに対して強制合成処理を行い(ステップS407)、合成したバッファを削除する(ステップS408)。以上で、メモリ不足防止処理が終了する。
[影響少バッファ検出処理]
次に、影響少バッファ検出処理(図11のステップS404)の具体的な処理内容について、図12を用いて説明する。図12は、影響少バッファ検出処理を示すフローチャートである。
図12に示すように、制御部30は、トランスペアレンシー処理用バッファに格納される画像データに対するトランスペアレンシー処理のブレンドモードを判定する(ステップS501)。ここで、ブレンドモードとは、画像を合成する合成方法の種類である。強制合成処理を行ったとしても画質に一番影響が少ないブレンドモードは、「Normal」である。ブレンドモード「Normal」は、背景の画像に、ソース画像を透過率0パーセントで重ね合わせるので、強制合成処理を行っても画質への影響は少ない。
ステップS501の判定の結果、ブレンドモードが「Normal」以外である場合(ステップS501;その他)、制御部30は、このトランスペアレンシー用バッファの重ね合わせ数をカウントする(ステップS503)。
ここで、トランスペアレンシー用バッファの重ね合わせ数とは、その作業バッファに格納されるべき画像データを生成するのに必要な重ね合わせの回数である。具体例を、図6を用いて説明する。第3作業バッファm3〜第6作業バッファm6の重ね合わせ数は、「0」である。第1作業バッファm1、第2作業バッファm2の重ね合わせ数は、「1」である。バンドバッファm7の重ね合わせ数は、「3」である。
また、制御部30は、メモリ不足が発生した時点で確保している作業バッファに対して重ね合わせ数をカウントする。具体的に、制御部30がバンドバッファm7、第1作業バッファm1、第2作業バッファm2、第5作業バッファm5、第6作業バッファm6のみを確保している場合、第1作業バッファm1、第5作業バッファm5、第6作業バッファm6の重ね合わせ数は「0」、第2作業バッファm2の重ね合わせ数は「1」、バンドバッファm7の重ね合わせ数は「2」となる。
図12に戻り、ステップS501の判定の結果、ブレンドモードが「Normal」である場合、制御部30は、このトランスペアレンシー用バッファを強制合成処理(強制重ね合わせ)の処理対象の候補とする(ステップS502)。そして、制御部30は、トランスペアレンシー用バッファの重ね合わせ数をカウントする(ステップS503)。
次に、制御部30は、全てのトランスペアレンシー処理用バッファの検索(解析)が完了したか否かを判定する(ステップS504)。判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了していない場合(ステップS504;NO)、制御部30は、残りの作業バッファに対して、同様の処理(ステップS501〜ステップS503)を行う。
ステップS504の判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了すると(ステップS504;YES)、制御部30は、ブレンドモードが「Normal」である画像データを格納する作業バッファを検出したか否かを判定する(ステップS505)。
ブレンドモードが「Normal」である画像データを格納するバッファを検出していない場合(ステップS505;NO)、制御部30は、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする(ステップS506)。以上で、影響少バッファ検出処理が終了する。
一方、ブレンドモードが「Normal」である画像データを格納するバッファを検出している場合(ステップS505;YES)、制御部30は、ブレンドモードが「Normal」の中で、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする(ステップS507)。以上で、影響少バッファ検出処理が終了する。
[サイズ大バッファ検出処理]
次に、サイズ大バッファ検出処理(図11のステップS403)の具体的な処理内容について、図13を用いて説明する。図13は、サイズ大バッファ検出処理を示すフローチャートである。
図13に示すように、制御部30は、RAM17に確保されているトランスペアレンシー処理用バッファの各メモリサイズを検出する(ステップS601)。制御部30は、RAM17に確保されている全てのトランスペアレンシー処理用バッファのメモリサイズの検出が完了すると(ステップS602;YES)、検出した各メモリサイズに基づいて、
最もメモリサイズの大きいトランスペアレンシー処理用バッファを決定(検出)する(ステップS603)。
以上、第1の実施の形態によれば、画像処理装置10の制御部30は、ラスタライズ実行時にRAM17のメモリ不足が発生した際、トランスペアレンシー処理を実行するために確保されている記憶領域(作業バッファ)に対して強制合成処理を行う。そして、制御部30は、合成して必要の無くなった作業バッファを削除し、空き記憶領域を確保する。即ち、制御部30は、作業バッファを開放する。
そのため、制御部30は、ラスタライズ実行時にRAM17のメモリ不足が発生した際、トランスペアレンシー処理に関する画像の画質のみを劣化させ、ビットマップデータ全体の画質を劣化させることはない。よって、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることを防ぐことができる。
また、操作部12は、ユーザ操作によるメモリ不足モードの選択入力を受け付け、メモリ不足モードの選択に関する指示信号として制御部30に出力する。制御部30は、この指示信号に基づいて、実行するメモリ不足防止モードを設定する。そして、制御部30は、設定されているメモリ不足防止モードを検知する。
そのため、トランスペアレンシー処理の実行命令を含む印刷データに基づいて行われる画像形成処理において、記憶容量が不足した場合に、ユーザの意図しない処理結果を得ることをより一層防ぐことができる。
また、メモリ不足防止モードには、「速度優先モード」「画質優先モード」「中間モード」等がある。制御部30は、速度優先モードでメモリ不足防止処理を行うことにより、画像形成処理の処理速度を優先して、記憶容量の不足を回避することができる。制御部30は、画質優先モードでメモリ不足防止処理を行うことにより、トランスペアレンシー処理による画像の画質を優先して、記憶容量の不足を回避することができる。制御部30は、中間モードでメモリ不足処理を行うことにより、画像形成処理の処理速度と、トランスペアレンシー処理による画像の画質とのバランスがとれた処理を行うことができる。
[第2の実施の形態]
次に、本発明に係る画像処理装置の第2の実施の形態について説明する。ここでは、第1の実施の形態における画像処理装置と異なる点を中心に説明する。
第1の実施の形態における画像処理装置と異なる主な点は、予め印刷データ解析処理において、トランスペアレンシー用バッファの重ね合わせ数を計算しておき、画質優先モードにおける影響少バッファ検出処理において、予め計算しておいた重ね合わせ数を用いて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する点である。
また、第2の実施の形態では、画像形成処理を実行する前に、予め、操作部12は、ユーザ操作によるメモリ不足モードの選択入力を受け付けて、メモリ不足モードの選択に関する指示信号として制御部30に出力しているとする。そして、制御部30は、画像形成処理を実行する前に、予め、この指示信号に基づいて、実行するメモリ不足防止モードを設定しているとする。
[影響少バッファ検出処理]
まず、第2の実施の形態における印刷データ解析処理(図7のステップS2)の具体的な処理内容について、図14を用いて説明する。図14は、第2の実施の形態における印刷データ解析処理を示すフローチャートである。
図14に示すように、制御部30は、RAM17から読み出した印刷データに含まれるオブジェクトを解析してディスプレイリスト(中間言語データ)を生成する(ステップS701)。制御部30は、生成したディスプレイリストをRAM17に一時保存する。
また、制御部30は、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれているか否か、設定されているメモリ不足防止モードが「画質優先モード」であるか否かを判定する(ステップS702)。
ステップS702における判定の結果、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれていない場合、又は設定されているメモリ不足防止モードが「画質優先モード」でない場合(ステップS702;NO)、制御部30は、1ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する(ステップS704)。
一方、ステップS702における判定の結果、解析対象のオブジェクトにトランスペアレンシー処理の命令が含まれており、且つ設定されているメモリ不足防止モードが「画質優先モード」である場合(ステップS702;YES)、制御部30は、解析対象のオブジェクトに対応する作業バッファの重ね合わせ数を算出し、この重ね合わせ数とブレンドモードとをRAM17に一時記憶する(ステップS703)。そして、制御部30は、1ページ分の印刷データに含まれる全てのオブジェクトの解析が完了したか否かを判定する(ステップS704)。
制御部30は、全てのオブジェクトの解析が完了したと判定すると(ステップS704;Yes)、印刷データ解析処理を終了する。一方、制御部30は、全てのオブジェクトの解析が完了していないと判定すると(ステップS704;No)、1ページ分の印刷データに含まれる次のオブジェクトを解析してディスプレイリストを生成する(ステップS701)。
ここで、ステップS703において、制御部30は、印刷データのコマンドを解析して、作業バッファにおける重ね合わせ数を算出する。そのため、RAM17に全ての作業バッファが確保された場合の重ね合わせ数が算出される。具体的に、図6において、バンドバッファm7、第1作業バッファm1〜第6作業バッファm6の全てが確保された場合の重ね合わせ数が算出される。即ち、第3作業バッファm3〜第6作業バッファm6の重ね合わせ数は、「0」である。第1作業バッファm1、第2作業バッファm2の重ね合わせ数は、「1」である。バンドバッファm7の重ね合わせ数は、「3」である。
[影響少バッファ検出処理]
次に、第2の実施の形態における影響少バッファ検出処理(図11のステップS404)の具体的な処理内容について、図15を用いて説明する。図15は、第2の実施の形態における影響少バッファ検出処理を示すフローチャートである。
図15に示すように、制御部30は、トランスペアレンシー処理用バッファに格納される画像データに対するトランスペアレンシー処理のブレンドモードを判定する(ステップS801)。具体的に、制御部30は、RAM17に一時記憶されている(図14のステップS703)解析対象のオブジェクトのブレンドモードの値を読み出す。
ステップS801の判定の結果、ブレンドモードが「Normal」以外である場合(ステップS801;その他)、制御部30は、全てのトランスペアレンシー処理用バッファの検索(解析)が完了したか否かを判定する(ステップS803)。
一方、ステップS801の判定の結果、ブレンドモードが「Normal」である場合(ステップS801;Normal)、制御部30は、このトランスペアレンシー処理用バッファを強制合成処理(強制重ね合わせ)の処理対象の候補とする(ステップS802)。そして、制御部30は、全てのトランスペアレンシー処理用バッファの検索(解析)が完了したか否かを判定する(ステップS803)。
判定の結果、全てのトランスペアレンシー処理用バッファの検索(解析)が完了していない場合(ステップS803;NO)、制御部30は、残りのトランスペアレンシー処理用バッファに対して、同様の処理(ステップS801〜S802)を行う。
ステップS803の判定の結果、全てのトランスペアレンシー処理用バッファの検索が完了すると(ステップS803;YES)、制御部30は、ブレンドモードが「Normal」である画像データを格納する作業バッファを検出したか否かを判定する(ステップS804)。
ブレンドモードが「Normal」である画像データを格納するバッファを検出していない場合(ステップS804;NO)、制御部30は、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする(ステップS805)。ここで、制御部30は、RAM17に一時記憶されている(図14のステップS703)解析対象のオブジェクトに対応する作業バッファの重ね合わせ数を読み出して参照している。以上で、影響少バッファ検出処理が終了する。
一方、ブレンドモードが「Normal」である画像データを格納するバッファを検出している場合(ステップS804;YES)、制御部30は、ブレンドモードが「Normal」の中で、最も重ね合わせ数の少ない画像データを格納するトランスペアレンシー処理用バッファを、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファとする(ステップS806)。以上で、影響少バッファ検出処理が終了する。
以上、第2の実施の形態によれば、画像処理装置10の制御部30は、予め印刷データ解析処理において、トランスペアレンシー用バッファの重ね合わせ数を計算しておき、画質優先モードにおける影響少バッファ検出処理において、予め計算しておいた重ね合わせ数を用いて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。
即ち、制御部30が、全てのトランスペアレンシー処理用バッファを確保できていないときにメモリ不足が発生してしまった場合でも、メモリ不足が発生している時点で確保しているトランスペアレンシー処理用バッファのうち、全ての作業バッファを確保した場合の重ね合わせ数に基づいて、一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出する。
そのため、より正確に一番画質に影響の少ない画像データを格納するトランスペアレンシー処理用バッファを検出することができる。
尚、上記各実施の形態における記述は、本発明に係る画像処理装置の一例であり、これに限定されるものではない。画像処理装置を構成する各機能部の細部構成及び細部動作に関しても適宜変更可能である。例えば、上記実施の形態においては、トランスペアレンシー用バッファの重ね合わせ数として、その作業バッファに格納されるべき画像データを生成するのに必要な重ね合わせの回数を採用したが、これに代えてその作業バッファより下位の階層数を重ね合わせ数として扱っても良い。即ち、この場合、先の図6の具体例で言えば第3作業バッファm3〜第6作業バッファm6の重ね合わせ数は「0」となり、第1作業バッファm1、第2作業バッファm2の重ね合わせ数は「1」となり、バンドバッファm7の重ね合わせ数は「2」となる。
また、上述した各実施の形態では、プログラムを格納したコンピュータ読み取り可能な媒体としてROMやHDDを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、CD−ROM等の可搬型記録媒体を適用することが可能である。また、プログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も適用可能である。
10 画像処理装置
11 CPU
12 操作部
13 表示部
14 画像読取部
15 画像形成部
16 通信部
17 RAM
18 ROM
19 HDD
20 クライアント端末
21 CPU
22 操作部
23 表示部
24 通信部
25 RAM
26 HDD
30 制御部
100 画像形成システム
181 プリンタコントローラプログラム
261 プリンタドライバプログラム
N 通信ネットワーク

Claims (21)

  1. 印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行う画像処理装置であって、
    前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部と、
    前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断手段と、
    前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御手段と、
    を備える画像処理装置。
  2. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行う、
    請求項1に記載の画像処理装置。
  3. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行う、
    請求項1に記載の画像処理装置。
  4. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行う、
    請求項1に記載の画像処理装置。
  5. 前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、前記メモリ制御を行う前記所定の記憶領域を検出するための複数のモードを持ち、
    前記メモリ制御手段は、
    前記複数のモードのうち、ユーザにより選択されたモードに基づいて検出される前記所定の記憶領域に対して前記メモリ制御を行う、
    請求項1に記載の画像処理装置。
  6. 前記複数のモードは、
    前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行うモードを含む、
    請求項に記載の画像処理装置。
  7. 前記複数のモードは、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行うモードを含む、
    請求項5又は6に記載の画像処理装置。
  8. 前記複数のモードは、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行うモードを含む、
    請求項5〜7の何れか一項に記載の画像処理装置。
  9. 前記メモリ制御手段は、
    前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する、
    請求項4又は8に記載の画像処理装置。
  10. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する、
    請求項に記載の画像処理装置。
  11. 前記メモリ制御手段は、
    前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する、
    請求項1〜10の何れか一項に記載の画像処理装置。
  12. 印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行うコンピュータを、
    前記画像処理の実行中に、前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断手段、
    前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御手段、
    として機能させるためのプログラム。
  13. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている全ての記憶領域について前記メモリ制御を行う、
    請求項12に記載のプログラム。
  14. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、記憶容量が最も大きい記憶領域について前記メモリ制御を行う、
    請求項12に記載のプログラム。
  15. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、画質に最も影響の少ない画像データを格納する記憶領域について前記メモリ制御を行う、
    請求項12に記載のプログラム。
  16. 前記メモリ制御手段は、前記トランスペアレンシー処理を実行するために確保されている記憶領域のうち、前記メモリ制御を行う前記所定の記憶領域を検出するための複数のモードを持ち、
    前記メモリ制御手段は、
    前記複数のモードのうち、ユーザにより選択されたモードに基づいて検出される前記所定の記憶領域に対して前記メモリ制御を行う、
    請求項12に記載のプログラム。
  17. 前記メモリ制御手段は、
    前記トランスペアレンシー処理のブレンドモード、及び前記トランスペアレンシー処理における画像データの重ね合わせ数に基づいて、前記画質に最も影響の少ない画像データを格納する記憶領域を検出する、
    請求項15に記載のプログラム。
  18. 前記メモリ制御手段は、
    前記トランスペアレンシー処理を実行するための記憶領域を確保する前に、前記印刷データを解析して、前記トランスペアレンシー処理における画像データの重ね合わせ数を算出する、
    請求項17に記載のプログラム。
  19. 前記メモリ制御手段は、
    前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する、
    請求項12〜18の何れか一項に記載のプログラム。
  20. 印刷データから中間言語データを生成し、当該中間言語データに対してラスタライズ処理を行い画像形成に用いられるビットマップデータを生成する画像処理を行うデータ処理方法であって、
    前記画像処理の実行中に、前記中間言語データ及び前記ビットマップデータが保存される記憶部であって、前記印刷データがトランスペアレンシー処理の実行命令を含む場合に当該トランスペアレンシー処理を実行するための記憶領域が確保される記憶部の記憶容量が不足した際、前記記憶部に、前記トランスペアレンシー処理を実行するための記憶領域が確保されているか否かを判断する判断ステップと、
    前記トランスペアレンシー処理を実行するための記憶領域が確保されている場合に、当該トランスペアレンシー処理を実行するために確保されている記憶領域のうち、所定の記憶領域に記憶された画像を合成する合成処理を行い当該合成済みの画像が記憶された前記所定の記憶領域を開放するメモリ制御を行うメモリ制御ステップと、
    を含むデータ処理方法。
  21. 前記メモリ制御ステップでは、
    前記画像処理の実行中に前記記憶部の記憶容量が不足した際、前記トランスペアレンシー処理を実行するための記憶領域が確保されていない場合は、前記画像処理をエラー終了する、
    請求項20に記載のデータ処理方法。
JP2009011704A 2009-01-22 2009-01-22 画像処理装置、プログラム及びデータ処理方法 Expired - Fee Related JP4877331B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009011704A JP4877331B2 (ja) 2009-01-22 2009-01-22 画像処理装置、プログラム及びデータ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009011704A JP4877331B2 (ja) 2009-01-22 2009-01-22 画像処理装置、プログラム及びデータ処理方法

Publications (2)

Publication Number Publication Date
JP2010171682A JP2010171682A (ja) 2010-08-05
JP4877331B2 true JP4877331B2 (ja) 2012-02-15

Family

ID=42703380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009011704A Expired - Fee Related JP4877331B2 (ja) 2009-01-22 2009-01-22 画像処理装置、プログラム及びデータ処理方法

Country Status (1)

Country Link
JP (1) JP4877331B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7383990B2 (ja) 2019-11-15 2023-11-21 ブラザー工業株式会社 データ生成装置、および、コンピュータプログラム
JP7417461B2 (ja) 2020-04-17 2024-01-18 キヤノン株式会社 画像処理装置、画像処理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007076292A (ja) * 2005-09-16 2007-03-29 Kyocera Mita Corp 画像形成装置及び制御プログラム
JP4306698B2 (ja) * 2006-06-26 2009-08-05 ブラザー工業株式会社 印刷装置
JP2008183780A (ja) * 2007-01-29 2008-08-14 Ricoh Co Ltd 画像形成装置、印刷処理方法、及び印刷処理プログラム
JP4561883B2 (ja) * 2008-06-19 2010-10-13 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、プログラム及び画像形成処理方法

Also Published As

Publication number Publication date
JP2010171682A (ja) 2010-08-05

Similar Documents

Publication Publication Date Title
US9195414B2 (en) Image processing apparatus functioning as a print server changing print settings of saved job on demand from an external terminal
US8411949B2 (en) Image rasterization processing apparatus using intermediate language form data, computer-readable recording medium storing program and image processing method
US20130188211A1 (en) Image processing system, image forming apparatus, image processing program, and image processing method
US9317234B2 (en) Computer readable information recording medium storing preview display program, preview display apparatus and preview display method
US8294914B2 (en) Image forming apparatus and method for changing number of lines in band buffer based on memory size to be required
US20140376017A1 (en) Display device, image forming apparatus, and computer-readable recording medium storing display control program
JP4561883B2 (ja) 画像形成装置、プログラム及び画像形成処理方法
WO2013129039A1 (ja) 印刷装置、印刷方法、プログラムおよびその記録媒体
US8767247B2 (en) Print data generation device, print data generation method and computer-readable medium for controlling rasterization processing
US8279482B2 (en) Method of printing multiple magnifications of pages per sheet in N-up printing
JP4371128B2 (ja) 画像形成装置、画像形成方法及びプログラム
JP6658599B2 (ja) 画像形成装置及び画像形成方法
US9720634B2 (en) Print control device
US20130155455A1 (en) Printing system, printing apparatus, image processing apparatus, and data conversion method
JP4877331B2 (ja) 画像処理装置、プログラム及びデータ処理方法
JP4609488B2 (ja) 画像形成装置、プログラム及びデータ処理方法
JP2006263969A (ja) 画像処理装置及び印刷ジョブ生成装置ならびに画像処理システム
JP2019098580A (ja) 画像形成装置
JP2011143576A (ja) 印刷データ生成装置、画像形成装置及びプログラム
US9239973B1 (en) Image forming apparatus and non-transitory computer readable medium storing program
JP5966805B2 (ja) 印刷のための制御装置
JP6201631B2 (ja) 画像処理装置
JP2018122463A (ja) 画像形成装置、画像形成方法及び画像形成装置のプログラム
JP2007130945A (ja) プリンタ装置
JP2019093660A (ja) 画像形成システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110628

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110818

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110818

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111101

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111114

R150 Certificate of patent or registration of utility model

Ref document number: 4877331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees