(57)【要約】 【課題】高速な描画処理を実現可能な画像処理装置および画像処理方法を提供する。【解決手段】本発明の画像処理装置は、色画像記憶手段と半透明画像記憶手段と分解手段と描画処理手段とを備える。色画像記憶手段は色画像を記憶する。半透明画像記憶手段は半透明画像を記憶する。分解手段は、ページ記述言語で記述されたデータの解析により得られた描画コマンドを、ライン単位の描画パラメータを示す水平ラインパラメータに分解する。描画処理手段は、半透明画像記憶手段から、水平ラインパラメータに対応する複数の画素分の半透明値を読み出し、その読み出した全ての半透明値が透明であることを示す場合は、水平ラインパラメータに対応する複数の画素分の色値を色画像記憶手段から読み込まずに、水平ラインパラメータで指定された色値を、水平ラインパラメータに対応する複数の画素の各々の色値として色画像記憶手段に直接書き込む。【選択図】図１
2017054470.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素ごとに色値を保持する色画像を記憶する色画像記憶手段と、
複数の画素ごとに、該画素に対応する色値の透過割合を示す半透明値を保持する半透明画像を記憶する半透明画像記憶手段と、
ページ記述言語で記述されたデータの解析により得られた描画コマンドを、ライン単位の描画パラメータを示す水平ラインパラメータに分解する分解手段と、
前記半透明画像記憶手段から、前記水平ラインパラメータに対応する複数の画素分の前記半透明値を読み出し、その読み出した全ての前記半透明値が透明であることを示す場合は、前記水平ラインパラメータに対応する前記複数の画素分の色値を前記色画像記憶手段から読み込まずに、前記水平ラインパラメータで指定された色値を、前記水平ラインパラメータに対応する前記複数の画素の各々の色値として前記色画像記憶手段に直接書き込む描画処理手段と、を備える、
画像処理装置。
【請求項２】
前記描画処理手段は、
前記半透明画像記憶手段から読み出した前記半透明値の中に、半透明であることを示す前記半透明値が含まれている場合は、
前記水平ラインパラメータに対応する前記複数の画素分の色値を前記色画像記憶手段から読み出し、
前記水平ラインパラメータに対応する前記複数の画素ごとに、
前記半透明画像記憶手段から読み出した前記半透明値と、前記水平ラインパラメータで指定された前記半透明値とに基づく半透明演算を行って半透明演算後の前記半透明値を求めるとともに、該読み出した前記半透明値と、該半透明演算後の前記半透明値と、前記水平ラインパラメータで指定された前記半透明値と、前記色画像記憶手段から読み出した色値とに基づく半透明演算を行って半透明演算後の色値を求め、該半透明演算後の色値を、該画素の色値として前記色画像記憶手段に直接書き込む、
請求項１に記載の画像処理装置。
【請求項３】
前記半透明画像記憶手段から読み出した前記水平ラインパラメータに対応する前記複数の画素分の前記半透明値を記憶する入力情報記憶手段と、
前記水平ラインパラメータに対応する前記複数の画素分の半透明演算後の前記半透明値を記憶する出力情報記憶手段と、を備え、
前記描画処理手段は、前記出力情報記憶手段に記憶された、前記水平ラインパラメータに対応する前記複数の画素の各々の前記半透明値を、該画素の前記半透明値として前記半透明画像記憶手段に書き込む、
請求項２に記載の画像処理装置。
【請求項４】
前記色画像記憶手段のメモリフォーマットは、画素ごとに並べられた点順次のメモリフォーマットであり、
前記半透明画像記憶手段のメモリフォーマットは、マトリクス状に配列された画素の集合を示すプレーンの行ごとに並べられた面順次のメモリフォーマットである、
請求項１乃至３のうちの何れか１項に記載の画像処理装置。
【請求項５】
前記水平ラインパラメータは、描画対象の高さ方向の座標、水平方向の始点座標および終点座標、描画する色値、描画する前記半透明値を少なくとも含む、
請求項１乃至４のうちの何れか１項に記載の画像処理装置。
【請求項６】
ページ記述言語の解析により得られた描画コマンドを、ライン単位の描画パラメータを示す水平ラインパラメータに分解する分解ステップと、
複数の画素ごとに、該画素に対応する色値の透過割合を示す半透明値が設定された半透明画像を記憶する半透明画像記憶手段から、前記水平ラインパラメータに対応する画素分の前記半透明値を読み出し、その読み出した全ての半透明値が透明であることを示す場合は、前記水平ラインパラメータに対応する前記複数の画素分の色値を、複数の画素ごとに色値が設定された色画像を記憶する色画像記憶手段から読み込まずに、前記水平ラインパラメータで指定された色値を、前記水平ラインパラメータに対応する前記複数の画素の各々の色値として前記色画像記憶手段に直接書き込む描画処理ステップと、を含む、
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
従来のカラープリンタでは、ページ記述言語で記述されたＰＤＬ（Page  Description  Language）データを印刷する際に、ＰＤＬを解析し、多値のバンド画像をメモリ上に描画し、描画したバンド画像に対して、色変換処理や階調処理を行い、階調処理後の画像を印刷する。また、上記ＰＤＬの１つであるＰＤＦ（Portable  Document  Format）、ＸＰＳ（XML（Extensible  Markup  Language)では、従来のＰＤＬにはない半透明描画処理が新たに追加されている。半透明描画処理は、半透明で画像を重ね合わせる処理であり、設定された処理パラメータ（半透明値）に従って処理される。具体的には、重ね合わせる各画像の半透明値を１以下とし、通常、重ね合わせたときに全体が１となるように、処理パラメータが描画オブジェクトごとに設定される。
【０００３】
例えば特許文献１には、データ転送量の低減と演算処理の軽減を目的として、前景画像と背景画像の合成後の画素値を算出する場合に、前景画像の画素値が透明（半透明値＝０）または不透明（半透明値＝１）の場合は、合成後の画素値として背景画像の画素値を設定する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された技術では、画素単位で処理を行うために描画処理の高速化を図ることが困難であるという問題がある。
【０００５】
本発明は、上記に鑑みてなされたものであって、高速な描画処理を実現可能な画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、複数の画素ごとに色値を保持する色画像を記憶する色画像記憶手段と、複数の画素ごとに、該画素に対応する色値の透過割合を示す半透明値を保持する半透明画像を記憶する半透明画像記憶手段と、ページ記述言語で記述されたデータの解析により得られた描画コマンドを、ライン単位の描画パラメータを示す水平ラインパラメータに分解する分解手段と、前記半透明画像記憶手段から、前記水平ラインパラメータに対応する複数の画素分の前記半透明値を読み出し、その読み出した全ての前記半透明値が透明であることを示す場合は、前記水平ラインパラメータに対応する前記複数の画素分の色値を前記色画像記憶手段から読み込まずに、前記水平ラインパラメータで指定された色値を、前記水平ラインパラメータに対応する前記複数の画素の各々の色値として前記色画像記憶手段に直接書き込む描画処理手段と、を備える、画像処理装置である。
【発明の効果】
【０００７】
本発明によれば、高速な描画処理を実現可能な画像処理装置および画像処理方法を提供できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、画像形成装置の構成の一例を示す図である。
【図２】図２は、色画像記憶部に記憶された色画像の１画素分のデータの一例を示す図である。
【図３】図３は、半透明画像記憶部に記憶された半透明画像の１行分のデータの一例を示す図である。
【図４】図４は、少値画像記憶部のフォーマット例を示す図である。
【図５】図５は、実施形態に係る印刷時の処理手順の一例を示すフローチャートである。
【図６】図６は、描画コマンドの一例を示す図である。
【図７】図７は、バンド画像の一例を示す図である。
【図８】図８は、コマンドのフォーマット例を示す図である。
【図９】図９は、描画コマンドで描画された四角形の一例を示す図である。
【図１０】図１０は、描画コマンドで描画された三角形の一例を示す図である。
【図１１】図１１は、描画処理部による描画処理の概要を示す図である。
【図１２】図１２は、描画処理部の具体的な構成の一例を示す図である。
【図１３】図１３は、描画処理部による処理の一例を示すフローチャートである。
【図１４】図１４は、描画処理部が実行する描画処理の具体的な内容を示すフローチャートである。
【図１５】図１５は、描画処理の具体例を説明するための図である。
【図１６】図１６は、本実施形態の描画処理のタイミングチャートを示す図である。
【図１７】図１７は、対比例の描画処理のタイミングチャートを示す図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照しながら、本発明に係る画像処理装置および画像処理方法の実施形態を詳細に説明する。
【００１０】
図１は、本実施形態の画像形成装置１００の構成の一例を示す図である。図１に示すように、画像形成装置１００は、コントローラボード２２と、プリンタエンジン２３とを有する。これらのうち、コントローラボード２２は、ＲＯＭ（Read  Only  Memory）１８と、メインメモリ１６と、画像メモリ２０と、コントローラ１５と、従来のＣＰＵで行なわれる処理の一部をハードウェア化したＡＳＩＣ（Application  Specific  Integrated  Circuit）１９とを有する。例えば、コントローラボード２２は、プリンタコントローラボードであり、１つの基板上に形成される。かかるコントローラボード２２は、「画像処理装置」の一例である。
【００１１】
コントローラ１５とＡＳＩＣ１９とは、バス１７を介して接続される。また、ＰＣ２１は、ユーザ操作に応じてページ記述言語（PDL：Page  Description  Language）で記述されたデータ（以下の説明では「ＰＤＬデータ」と称する場合がある）を生成する。例えば、ＰＣ２１は、ＰＤＦ、ＸＰＳ等のＰＤＬデータを生成し、画像形成装置１００に対して送信する。以下では、一例として、ＰＣ２１は、ユーザ操作に応じてＰＤＦデータを生成し、画像形成装置１００に対して送信することを前提として説明する。
【００１２】
コントローラ１５は、ＣＰＵ１と、ＣＰＵインタフェース２と、メモリアービタ３と、メモリコントローラ４と、ＤＭＡ（Direct  Memory  Access  Controller）５と、バスコントローラ６と、通信コントローラ７とを有する。コントローラ１５には、ＲＯＭ１８と、メインメモリ１６とが接続される。ＲＯＭ１８は、コントローラボード２２を制御するための各種プログラムや、文字のフォント情報等を記憶する。メインメモリ１６は、描画コマンドが格納される描画コマンド領域３０、ＰＤＦデータが格納されるＰＤＦ領域３１、画像処理パラメータが格納される画像処理パラメータ領域３２等の予め定められた複数の領域を有する。また、メインメモリ１６は、ＣＰＵ１が実行するプログラム等を格納している。
【００１３】
ＣＰＵ１は、ＲＯＭ１８等に記憶されたプログラムに従って、コントローラボード２２全体の動作を制御する。また、ＣＰＵ１は、ＰＣ２１から送られてきたＰＤＦデータを解析し、描画コマンドを生成する。ＣＰＵ１は、ＣＰＵインタフェース２やメモリアービタ３を介して、各種メモリや各種コントローラと接続されている。メモリアービタ３は、メインメモリ１６と各種コントローラとの間の調停を行なう。メモリコントローラ４は、メインメモリ１６に対するアクセス（データの読み出しや書き込み）を制御し、メモリアービタ３を介して、メモリや各種のコントローラと接続されている。
【００１４】
ＤＭＡ５は、メモリコントローラ４と、バス１７を介して接続されたＡＳＩＣ１９内のエンジンコントローラ１４間のダイレクトメモリアクセスを行う。バスコントローラ６は、バス１７と繋がる各周辺コントローラとバス１７との調停を行う。通信コントローラ７は、ＰＣ２１等の外部装置との通信を制御する。図１の例では、通信コントローラ７はネットワークに接続されており、ネットワークから各種のデータやコマンドなどを受け取ることができる。また、通信コントローラ７は、メモリアービタ３を介して各種のコントローラに接続されている。
【００１５】
画像メモリ２０は、描画コマンド領域４０、色画像記憶部（色画像記憶領域）４１、半透明画像記憶部（半透明画像記憶領域）４２、少値画像記憶部（少値画像記憶領域）４３と、を有する。描画コマンド領域４０は、ＰＤＦデータの解析により得られた描画コマンドを記憶する。
【００１６】
色画像記憶部４１は、「色画像記憶手段」の一例であり、複数の画素ごとに色値を保持する色画像を記憶する。この例では、色画像記憶部４１は、多値の色画像を示す多値色画像を記憶する。より具体的には、色画像記憶部４１は、ＰＤＦデータの解析結果に基づき描画された、Ａ（属性）と、Ｒ、Ｇ、Ｂの各色成分の色値とを保持する。ここでは、色画像記憶部４１のメモリフォーマットは、画素ごとに並べられた点順次のメモリフォーマット（ピクセル画像メモリフォーマット）である。色画像記憶部４１に記憶された色画像は、１画素ごとにアクセス可能であると考えることもできる。図２は、本実施形態の色画像記憶部４１に記憶された色画像の１画素分のデータの一例を示す図である。図２に示すように、色画像記憶部４１に記憶された色画像の１画素分のデータは、Ａ（属性）と、Ｒ，Ｇ，Ｂの各色成分とで構成され、属性と各色成分の画素とに対して、それぞれ８ビットが割り当てられる。すなわち、色画像記憶部４１に保持される色画像の１画素分のデータは、属性と各色成分の画素とがそれぞれ８ビットのビット深度を有する３２ビットのデータである。なお、Ａ値は、画素の属性として描画オブジェクトを関連付ける値を示す属性値（画素の属性値）を保持するために作成される画素属性プレーンに相当する。
【００１７】
図１の説明を続ける。半透明画像記憶部４２は、「半透明画像記憶手段」の一例であり、複数の画素ごとに、該画素に対応する色値の透過割合を示す半透明値を保持する半透明画像を記憶する。この例では、半透明画像記憶部４２は、ＰＤＦデータ等のＰＤＬ解析結果に基づき描画された、半透明描画処理に用いる半透明値を保持（画素ごとに保持）するプレーンデータ（半透明画像）を記憶する。ここでは、半透明画像記憶部４２のメモリフォーマットは、マトリクス状に配列された画素の集合を示すプレーンの行ごとに並べられた面順次のメモリフォーマット（プレーン画像メモリフォーマット）である。半透明画像記憶部４２に記憶された半透明画像は、１行ごとにアクセス可能であると考えることもできる。図３は、本実施形態の半透明画像記憶部４２に記憶された半透明画像の１行分のデータの一例を示す図である。図３の例では、４つの画素で１行が構成されているが、これに限られるものではない。図３に示すように、プレーンの１行分のデータは、４つの画素の半透明値（♯１〜♯４）で構成され、各画素の半透明値は、該画素のＲＧＢの各色成分に対応する８ビットの情報である。すなわち、半透明画像記憶部４２に保持される半透明画像の１行分のデータは、４つの画素の各々が８ビットのビット深度を有する３２ビットのデータである。
【００１８】
図１の説明を続ける。少値画像記憶部４３は、少値画像を記憶する。本実施形態における少値画像とは、ＲＧＢの多値画像をＣＭＹＫの多値画像へ色変換した後に階調処理を行って、各画素の画素値を１ｂｉｔや２ｂｉｔ等の少ないｂｉｔ数に変換した画像である。ＲＧＢの各色成分は８ｂｉｔであり、ＲＧＢ全体で２４ｂｉｔとなる。また、ＣＭＹＫの各色成分は８ｂｉｔであり、ＣＭＹＫ全体で３２ｂｉｔとなる。少値画像は、プリンタではＣ版、Ｍ版、Ｙ版、Ｋ版ごとに紙等の記録媒体に印字するので、プレーン画像であることが多い。図４は、本実施形態の少値画像記憶部４３のフォーマット例を示す図である。図４に示すように、少値画像記憶部４３のフォーマットは、Ｃ版、Ｍ版、Ｙ版、Ｋ版それぞれにおいて、プレーンの画素に対して２ビットが割り当てられる。すなわち、少値画像は、プレーンの画素がそれぞれ２ビットのビット深度を有する３２ビットのデータ（画像データ）である。
【００１９】
図１の説明を続ける。ＡＳＩＣ１９は、バスインタフェース８と、ＤＭＡ処理部９と、画像処理部１０と、描画処理部１１と、メモリ制御部１２と、少値画像読み込み部１３と、エンジンコントローラ１４とを有する。ＡＳＩＣ１９は、バス１７を介して、メインメモリ１６に記憶された描画コマンド等を読み込んで画像メモリ２０へ転送し、画像メモリ２０から該描画コマンドを読み込み、解析して描画処理を実行する。また、ＡＳＩＣ１９は、プリンタエンジン２３を制御し、描画した画像の印刷を実行させる。
【００２０】
バスインタフェース８は、バス１７に対するインタフェースである。ＤＭＡ処理部９は、メインメモリ１６の描画コマンド領域３０から描画コマンドを読み込み、画像メモリ２０の描画コマンド領域４０へ転送する。描画処理部１１は、画像メモリ２０の描画コマンド領域４０から描画コマンドを読み込み、描画処理を実行する。画像処理部１０は、画像メモリ２０の色画像記憶部４１から色画像を読み込み、画像処理（少値画像に変換するための画像処理）を行って得られた少値画像を少値画像記憶部４３へ転送する。少値画像読み込み部１３は、画像メモリ２０の少値画像記憶部４３から少値画像を読み込み、エンジンコントローラ１４へ転送する。エンジンコントローラ１４は、プリンタエンジン２３を制御し、少値画像に基づく印刷を実行させる。メモリ制御部１２は、ＤＭＡ処理部９、画像処理部１０、描画処理部１１、少値画像読み込み部１３からのメモリアクセスの要求に応じて、画像メモリ２０へのメモリアクセスを制御する。
【００２１】
図５は、本実施形態に係る印刷時の処理手順の一例を示すフローチャートである。まず、ＰＣ２１は、ユーザ操作に応じてＰＤＦデータを生成し、画像形成装置１００に対して送信する。通信コントローラ７は、ＰＣ２１からのＰＤＦデータを受け取り、メモリアービタ３を介して、メインメモリ１６のＰＤＦ領域３１に記憶する（ステップＳ１）。
【００２２】
ＣＰＵ１は、メインメモリ１６のＰＤＦ領域３１からＰＤＦデータを読み込み、ＰＤＦデータを解析する（ステップＳ２）。ＣＰＵ１は、解析により得られた描画コマンドを、メインメモリ１６の描画コマンド領域３０に格納する。また、ＣＰＵ１は、ＤＭＡ処理部９を起動する。起動したＤＭＡ処理部９は、メインメモリ１６の描画コマンド領域３０から描画コマンドを読み込み、画像メモリ２０の描画コマンド領域４０へ転送する。
【００２３】
描画処理部１１は、画像メモリ２０の描画コマンド領域４０から描画コマンドを読み込み、描画処理を実行し（ステップＳ３）、描画処理により得られる色画像を色画像記憶部４１に記憶し、描画処理により得られる半透明画像を半透明画像記憶部４２に記憶する。描画処理の具体的な内容については後述する。
【００２４】
次に、画像処理部１０は、画像メモリ２０の色画像記憶部４１から色画像を読み込み、画像処理を行う（ステップＳ４）。この例では、画像処理部１０は、色変換処理と階調処理を行って得られる少値画像を少値画像記憶部４３に記憶する。
【００２５】
少値画像読み込み部１３は、プリンタエンジン２３に同期して、少値画像記憶部４３から少値画像を読み込み、エンジンコントローラ１４へ転送する。エンジンコントローラ１４は、転送された少値画像に基づく印刷を実行するよう、プリンタエンジン２３を制御する（ステップＳ５）。
【００２６】
図６は、描画コマンドの一例を示す図であり、図７は図６の描画コマンドで描画されたバンド画像の一例を示す図である。図７の各バンド画像に付された番号は、図６の描画コマンドの番号に対応している。
【００２７】
図８は、コマンドのフォーマット例を示す図である。図８の（Ａ）は、描画するバンドのサイズを設定するパラメータ設定コマンドの一例である。描画するバンドのサイズは、バンド情報設定コマンドヘッダに続く情報（バンド先頭アドレス、バンド高さ、バンド幅）により定義される。
【００２８】
図８の（Ｂ）は、描画コマンドの終了を示す終了コマンドの一例である。図８の（Ｃ）は、四角形を描画する四角形描画コマンドの一例である。四角形描画コマンドは、四角形描画コマンドヘッダに続いて、描画を行う四角形のＲＧＢ各色の色値（以下では、ソース色値Ｒｓ、Ｇｓ、Ｂｓと称する場合がある）および半透明値（以下では、ソース半透明値Ａｓと称する場合がある）と、四角形の左上のＸ座標およびＹ座標と、右下のＸ座標およびＹ座標とを指示する。図９は、四角形描画コマンドで描画された四角形の一例を示す図である。後述するように、水平方向（横方向）のライン単位で描画パラメータ（水平ラインパラメータ）が生成される（四角形描画コマンドは、ライン単位の描画パラメータに分解される）。
【００２９】
図８の（Ｄ）は、三角形を描画する三角形描画コマンドの一例を示す図である。三角形描画コマンドは、三角形描画コマンドヘッダに続いて、描画を行う四角形のＲＧＢ各色のソース色値（Ｒｓ、Ｇｓ、Ｂｓ）およびソース半透明値（Ａｓ）、３つの頂点の各々のＸ座標（Ｘ１、Ｘ２、Ｘ３）およびＹ座標（Ｙ１、Ｙ２、Ｙ３）を指示する。図１０は、三角形描画コマンドで描画された三角形の一例を示す図である。後述するように、水平方向（横方向）のライン単位で描画パラメータ（水平ラインパラメータ）が生成される（三角形描画コマンドは、ライン単位の描画パラメータに分解される）。
【００３０】
次に、描画処理を実行する描画処理部１１の構成を説明する。図１１は、描画処理部１１による描画処理の概要を示す図である。描画処理部１１は、色画像記憶部４１から読み出した半透明演算前のＲＧＢ各色の色値（Ｒｂ、Ｇｂ、Ｂｂ）と、半透明画像記憶部４２から読み出した半透明演算前の半透明値（Ａｂ）と、ＲＧＢ各色のソース色値（Ｒｓ、Ｇｓ、Ｂｓ）と、ソース半透明値（Ａｓ）とに基づく半透明演算を行い、半透明演算後のＲＧＢ各色の色値（Ｒｄ、Ｇｄ，Ｂｄ）を色画像記憶部４１に書き込むとともに半透明演算後の半透明値（Ａｄ）を半透明画像記憶部４２に書き込む。具体的な内容については後述する。
【００３１】
図１２は、描画処理部１１の具体的な構成の一例を示す図である。図１２に示すように、描画処理部１１は、コマンド解析装置１１１と、水平ラインパラメータ生成装置１１２と、水平ライン半透明画像処理装置１１３と、入力用半透明ラインメモリ１１４と、出力用半透明ラインメモリ１１５と、メモリ制御Ｉ／Ｆ１１６とを備える。
【００３２】
コマンド解析装置１１１は、画像メモリ２０の描画コマンド領域４０から描画コマンドを読み込み、読み込んだ描画コマンドを水平ラインパラメータ生成装置１１２へ転送し、その後、起動信号を水平ラインパラメータ生成装置１１２へ転送する。その後、水平ラインパラメータ生成装置１１２から終了信号を受け取ると、次の描画コマンドを読み込む。終了コマンドを読み込んだ場合は処理を終了する。また、この例では、コマンド解析装置１１１は、メモリ制御Ｉ／Ｆ１１６に対して、描画コマンドアドレスを送信し、その応答として描画コマンドを受け取ることができる。
【００３３】
水平ラインパラメータ生成装置１１２は、「分解手段」の一例であり、ページ記述言語で記述されたデータ（この例ではＰＤＦデータ）の解析により得られた描画コマンドを、ライン単位の描画パラメータを示す水平ラインパラメータに分解する。描画コマンドで定義される描画対象（四角形や三角形等）を分割する複数のライン（図９、図１０参照）と１対１に対応する複数の水平ラインパラメータの各々は、ライン単位の描画対象の高さ方向の座標ＩＹ、水平方向の始点座標Ｘｓおよび終点座標Ｘｅ、描画する色値（ＲＧＢ各色のソース色値Ｒｓ、Ｇｓ、Ｂｓ）、描画する半透明値(ソース半透明値Ａｓ)を少なくとも含む。水平ラインパラメータ生成装置１１２は、水平ラインパラメータを生成するたびに、生成した水平ラインパラメータを水平ライン半透明画像処理装置１１３へ転送する。全ての水平ラインパラメータの生成が完了すると、コマンド解析装置１１１に対して終了信号を転送する。
【００３４】
水平ライン半透明画像処理装置１１３は、水平ラインパラメータ生成装置１１２から受け取った水平ラインパラメータと、色画像記憶部４１から読み出したＲＧＢ各色の色値（Ｒｂ、Ｇｂ、Ｂｂ）と、半透明画像記憶部４２から読み出した半透明値（Ａｂ）とに基づく半透明描画処理を行い、半透明演算後の色値（Ｒｄ、Ｇｄ、Ｂｄ）を色画像記憶部４１に再度書き込み、半透明演算後の半透明値（Ａｄ）を半透明画像記憶部４２に再度書き込む。この例では、水平ライン半透明画像処理装置１１３は、水平ラインパラメータに従い、半透明演算前の色画像のアドレス(色バンドアドレス)をメモリ制御Ｉ／Ｆ１１６に送信し、その応答として、画像メモリ２０の色画像記憶部４１から読み出されたＲＧＢ各色の色値（Ｒｂ、Ｇｂ、Ｂｂ）を受け取ることができる。また、水平ライン半透明画像処理装置１１３は、水平ラインパラメータに従い、半透明演算前の半透明画像のアドレス(半透明バンドアドレス)をメモリ制御Ｉ／Ｆ１１６に送信し、その応答として、画像メモリ２０の半透明画像記憶部４２から読み出された半透明値（Ａｂ）を受け取ることができる。また、水平ライン半透明画像処理装置１１３は、メモリ制御Ｉ／Ｆ１１６に対して、半透明演算後の色値（Ｒｄ、Ｇｄ、Ｂｄ）および半透明演算後の半透明値（Ａｄ）を転送することで、画像メモリ２０の色画像記憶部４１および半透明画像記憶部４２への書き込みを行うことができる。
【００３５】
水平ライン半透明画像処理装置１１３は、「描画処理手段」の一例であり、半透明画像記憶部４２から、水平ラインパラメータに対応する複数の画素分の半透明値を読み出し、その読み出した全ての半透明値が透明であることを示す場合は、水平ラインパラメータに対応する複数の画素分の色値を色画像記憶部４１から読み込まずに、水平ラインパラメータで指定された色値を、水平ラインパラメータに対応する複数の画素の各々の色値として色画像記憶部４１に直接書き込む。この例では、水平ラインパラメータに対応する複数の画素とは、水平ラインパラメータに対応する１ラインを構成する全ての画素（水平ラインパラメータで指定された座標（Ｘｓ、ＩＹ）から座標（Ｘｅ、ＩＹ）までの範囲に対応する複数の画素）であるが、これに限らず、例えば水平ラインパラメータに対応する１ラインを構成する複数の画素を、それぞれが２以上の画素を含む複数のグループに分け、各グループに含まれる２以上の画素が、「水平ラインパラメータに対応する複数の画素」であってもよい。
【００３６】
また、水平ライン半透明画像処理装置１１３は、半透明画像記憶部４２から読み出した半透明値の中に、半透明であることを示す半透明値（この例では「０」を示す半透明値）が含まれている場合は、水平ラインパラメータに対応する複数の画素分の色値を色画像記憶部４１から読み出す。そして、水平ラインパラメータに対応する複数の画素ごとに、半透明画像記憶部４２から読み出した半透明値と、水平ラインパラメータで指定された半透明値とに基づく半透明演算を行って半透明演算後の半透明値を求めるとともに、該読み出した半透明値と、該半透明演算後の半透明値と、水平ラインパラメータで指定された半透明値と、色画像記憶部４１から読み出した色値とに基づく半透明演算を行って半透明演算後の色値を求め、該半透明演算後の色値を、該画素の色値として色画像記憶部４１に直接書き込む。水平ライン半透明画像処理装置１１３による描画処理の具体的な内容については後述する。
【００３７】
入力用半透明ラインメモリ１１４は、水平ライン半透明画像処理装置１１３により制御され、半透明演算前の１ライン分の半透明値を記憶する。入力用半透明ラインメモリ１１４は、「入力情報記憶手段」の一例であり、半透明画像記憶部４２から読み出した、水平ラインパラメータに対応する複数の画素分（この例では水平ラインパラメータに対応する１ラインを構成する複数の画素）の半透明値を記憶する。
【００３８】
出力用半透明ラインメモリ１１５は、水平ライン半透明画像処理装置１１３により制御され、半透明演算後の１ライン分の半透明値を記憶する。出力用半透明ラインメモリ１１５は、「出力情報記憶手段」の一例であり、水平ラインパラメータに対応する複数の画素分の半透明演算後の半透明値を記憶する。水平ライン半透明画像処理装置１１３は、出力用半透明ラインメモリ１１５に記憶された、水平ラインパラメータに対応する複数の画素の各々の半透明値を、該画素の半透明値として半透明画像記憶部４２に書き込む。具体的な内容については後述する。
【００３９】
メモリ制御Ｉ／Ｆ１１６は、メモリ制御部１２とのインタフェースであり、メモリ制御部１２に対して、例えばデータの読み出しを要求するためのメモリリクエストおよびメモリアドレスを送信する。これにより、画像メモリ２０から各種データを読み出すことができる。メモリアックは、メモリリクエストに対するメモリ制御部１２からの応答である。
【００４０】
全体コントローラ１１７は、描画処理部１１全体の動作を統括的に制御する。
【００４１】
図１３は、描画処理部１１による処理の一例を示すフローチャートである。図１３に示すように、まず描画処理部１１は、描画コマンドの読み込み処理を行う（ステップＳ１１）。読み込んだコマンドが描画コマンドであれば（ステップＳ１２：Ｙｅｓ）、描画処理部１１は、描画コマンドを、水平ラインパラメータに分解する（ステップＳ１３）。そして、水平ラインパラメータに基づく描画処理を実行する（ステップＳ１４）。全ての水平ラインパラメータに基づく描画処理が完了した場合（ステップＳ１５：Ｙｅｓ）、ステップＳ１１以降の処理を繰り返し、描画処理を実施していない水平ラインパラメータが残っている場合（ステップＳ１５：Ｎｏ）、ステップＳ１４以降の処理を繰り返す。
【００４２】
また、ステップＳ１１で読み込んだコマンドが描画コマンドでない場合（ステップＳ１２：Ｎｏ）、描画処理部１１は、読み込んだコマンドが終了コマンドであるか否かを確認する（ステップＳ１６）。読み込んだコマンドが終了コマンドである場合（ステップＳ１６：Ｙｅｓ）、処理は終了する。一方、読み込んだコマンドが終了コマンドではなく、パラメータ設定コマンドである場合（ステップＳ１６：Ｎｏ）、描画処理部１１はパラメータ設定処理を実行し（ステップＳ１７）、ステップＳ１１以降の処理を繰り返す。
【００４３】
図１４は、図１３のステップＳ１４において描画処理部１１が実行する描画処理の具体的な内容を示すフローチャートである。まず、水平ライン半透明画像処理装置１１３は、水平ラインパラメータ生成装置１１２から水平ラインパラメータを取得する（ステップＳ２１）。水平ライン半透明画像処理装置１１３は、水平ラインパラメータで指定されたソース半透明値Ａｓが、不透明であることを示す値（この例では「２５５」）であるか否かを確認する（ステップＳ２２）。ステップＳ２２の結果が肯定の場合（ステップＳ２２：Ｙｅｓ）、処理は後述のステップＳ３２に移行する。ステップＳ２２の結果が否定の場合（ステップＳ２２：Ｎｏ）、水平ライン半透明画像処理装置１１３は、半透明ＦＬＧ（フラグ）を「０」にセットする（ステップＳ２３）。そして、水平ライン半透明画像処理装置１１３は、処理対象の画素のＸ座標ＩＸとして、水平ラインパラメータで指定された水平方向の始点座標Ｘｓを設定する（ステップＳ２４）。なお、処理対象の画素のＹ座標としては、水平ラインパラメータで指定された高さ方向の座標ＩＹを設定する。
【００４４】
次に、水平ライン半透明画像処理装置１１３は、半透明画像記憶部４２に記憶された半透明画像のうち、ＩＸ、ＩＹに対応する画素（ＩＸ、ＩＹが示す位置の画素）の半透明値をＡｂ（ディスティネーション半透明値Ａｂ）として読み込む（ステップＳ２５）。そして、水平ライン半透明画像処理装置１１３は、ステップＳ２５で読み込んだ半透明値Ａｂが、透明であることを示す値（この例では「０」）であるか否かを確認する（ステップＳ２６）。ステップＳ２６の結果が否定の場合（ステップＳ２６：Ｎｏ）、水平ライン半透明画像処理装置１１３は、半透明ＦＬＧを「１」にセットし（ステップＳ２７）、処理はステップＳ２８に移行する。ステップＳ２６の結果が肯定の場合（ステップＳ２６：Ｙｅｓ）、処理はそのままステップＳ２８に移行する。
【００４５】
次に、水平ライン半透明画像処理装置１１３は、入力用半透明ラインメモリ１１４のうちＩＸに対応する位置に半透明値Ａｂを書き込み（ステップＳ２８）、処理対象の画素のＸ座標ＩＸを１画素分だけシフト（ＩＸ＝ＩＸ＋１）する（ステップＳ２９）。そして、水平ライン半透明画像処理装置１１３は、ＩＸが、水平ラインパラメータで指定された水平方向の終点座標Ｘｅ以下であるか否かを確認する（ステップＳ３０）。ステップＳ３０の結果が肯定の場合（ステップＳ３０：Ｙｅｓ）、ステップＳ２５以降の処理を繰り返し、ステップＳ３０の結果が否定の場合（ステップＳ３０：Ｎｏ）、処理はステップＳ３１に移行する。
【００４６】
ステップＳ３１において、水平ライン半透明画像処理装置１１３は、半透明ＦＬＧが「０」にセットされているか否かを確認する（ステップＳ３１）。つまり、水平ラインパラメータに対応する１ライン分の画素の半透明値が全て透明を示す値（この例では「０」）であったかどうかを確認する。以下、ステップＳ３１の結果が肯定の場合と否定の場合とに分けて説明する。
【００４７】
まず、ステップＳ３１の結果が肯定の場合（ステップＳ３１：Ｙｅｓ）について説明する。この場合、水平ライン半透明画像処理装置１１３は、処理対象の画素のＸ座標ＩＸとして、水平ラインパラメータで指定された水平方向の始点座標Ｘｓを設定する（ステップＳ３２）。次に、水平ライン半透明画像処理装置１１３は、水平ラインパラメータが指定するソース色値Ｒｓ、Ｇｓ、Ｂｓを、色画像記憶部４１に記憶された色画像のうちＩＸ、ＩＹに対応する画素のＲＧＢ各色の色値Ｒｄ、Ｇｄ、Ｂｄ（描画後のディスティネーション色値）として書き込み（ステップＳ３３）、処理対象の画素のＸ座標ＩＸを１画素分だけシフトする（ステップＳ３４）。そして、水平ライン半透明画像処理装置１１３は、ＩＸが、水平ラインパラメータで指定された水平方向の終点座標Ｘｅ以下であるか否かを確認する（ステップＳ３５）。ステップＳ３５の結果が肯定の場合（ステップＳ３５：Ｙｅｓ）、ステップＳ３３以降の処理を繰り返し、ステップＳ３５の結果が否定の場合（ステップＳ３５：Ｎｏ）、処理対象の画素のＸ座標ＩＸとして、水平ラインパラメータで指定された水平方向の始点座標Ｘｓを設定する（ステップＳ３６）。
【００４８】
ステップＳ３５の後、水平ライン半透明画像処理装置１１３は、水平ラインパラメータが指定するソース半透明値Ａｓを、半透明画像記憶部４２に記憶された半透明画像のうちＩＸ、ＩＹに対応する画素の半透明値Ａｄ（描画後のディスティネーション半透明値）として書き込み（ステップＳ３７）、処理対象の画素のＸ座標ＩＸを１画素分だけシフトする（ステップＳ３８）。そして、水平ライン半透明画像処理装置１１３は、ＩＸが、水平ラインパラメータで指定された水平方向の終点座標Ｘｅ以下であるか否かを確認する（ステップＳ３９）。ステップＳ３９の結果が肯定の場合（ステップＳ３９：Ｙｅｓ）、ステップＳ３７以降の処理を繰り返し、ステップＳ３９の結果が否定の場合（ステップＳ３９：Ｎｏ）、処理を終了する。
【００４９】
次に、上述のステップＳ３１の結果が否定の場合（ステップＳ３１：Ｎｏ）について説明する。この場合、水平ライン半透明画像処理装置１１３は、処理対象の画素のＸ座標ＩＸとして、水平ラインパラメータで指定された水平方向の始点座標Ｘｓを設定する（ステップＳ４０）。次に、水平ライン半透明画像処理装置１１３は、８画素分のＲＧＢ各色の色値を格納する色バッファーのうち、画素単位の色値の読み出し位置を示すＩＷの値を、８画素分の色値のうち先頭の色値の読み出し位置を示す「０」にセットする（ステップＳ４１）。なお、この例では、色バッファーは描画処理部１１の内部に設けられている。
【００５０】
次に、水平ライン半透明画像処理装置１１３は、色画像記憶部４１に記憶された色画像のうちＩＸ、ＩＹに対応する画素から８画素分のＲＧＢ各色の色値を順次に読み込んで色バッファーに格納する（ステップＳ４２）。なお、この例では、色画像記憶部４１に記憶された色画像の１画素分のデータは３２ビットのデータであり、１バーストのメモリアクセスで３２ビットのデータを読み出すことができる。つまり、１画素が１メモリワードとなっている。ここでは、ＯＣＰバスでのアクセスはＭａｘ８バーストと設定しているので、８画素分の色値を連続して読み出すことができる。なお、ＯＣＰ（Open  Core  Protocol）とは、特定のＣＰＵやバスのプロトコルに依存しないオンチップ・バスの規格である。
【００５１】
水平ライン半透明画像処理装置１１３は、色バッファーのうちＩＷが示す位置のＲＧＢ各色の色値を、Ｒｂ、Ｇｂ、Ｂｂ（ディスティネーション色値Ｒｂ、Ｇｂ、Ｂｂ）として読み込む（ステップＳ４３）。次に、水平ライン半透明画像処理装置１１３は、入力用半透明ラインメモリ１１４のうちＩＸに対応する位置の半透明値を、Ａｂ（ディスティネーション半透明値）として読み込む（ステップＳ４４）。
【００５２】
次に、水平ライン半透明画像処理装置１１３は、ステップＳ４３で読み込んだディスティネーション色値Ｒｂ、Ｇｂ、Ｂｂ、ステップＳ４４で読み込んだディスティネーション半透明値Ａｂ、水平ラインパラメータで指定されたソース色値Ｒｓ、Ｇｓ、Ｂｓ、および、ソース半透明値Ａｓを用いて半透明演算を行う（ステップＳ４５）。半透明演算後の半透明値（描画後のディスティネーション半透明値）Ａｄは、以下の式１で求めることができる。
【数１】
2017054470.tif 000003
【００５３】
また、半透明演算後のＲＧＢ各色の色値（描画後のディスティネーション色値）Ｒｄ、Ｇｄ、Ｂｄは、以下の式２で求めることができる。
【数２】
2017054470.tif 000004
【００５４】
次に、水平ライン半透明画像処理装置１１３は、出力用半透明ラインメモリ１１５のうちＩＸに対応する位置にＡｄ（半透明演算後の半透明値Ａｄ）を書き込む（ステップＳ４６）。次に、水平ライン半透明画像処理装置１１３は、色画像記憶部４１に記憶された色画像のうちＩＸに対応する画素のＲＧＢ各色の色値として、Ｒｄ、Ｇｄ、Ｂｄ（半透明演算後の色値Ｒｄ、Ｇｄ、Ｂｄ）を書き込む（ステップＳ４７）。次に、水平ライン半透明画像処理装置１１３は、ＩＷを１画素分だけシフト（ＩＷ＝ＩＷ＋１）し（ステップＳ４８）、処理対象の画素のＸ座標ＩＸを１画素分だけシフトする（ステップＳ４９）。
【００５５】
そして、水平ライン半透明画像処理装置１１３は、ＩＸが、水平ラインパラメータで指定された水平方向の終点座標Ｘｅ以下であるか否かを確認する（ステップＳ５０）。ステップＳ５０の結果が肯定の場合（ステップＳ５０：Ｙｅｓ）、水平ライン半透明画像処理装置１１３は、ＩＷの値が８以下であるか否かを確認する（ステップＳ５１）。つまり、読み出し位置が、色バッファーに格納される８画素分の色値のうち末尾の色値の読み出し位置を超えていないかどうかを確認する。ステップＳ５１の結果が肯定の場合（ステップＳ５１：Ｙｅｓ）、ステップＳ４３以降の処理を繰り返し、ステップＳ５１の結果が否定の場合（ステップＳ５１：Ｎｏ）、ステップＳ４１以降の処理を繰り返す。
【００５６】
上述のステップＳ５０の結果が否定の場合（ステップＳ５０：Ｎｏ）、水平ライン半透明画像処理装置１１３は、処理対象の画素のＸ座標ＩＸとして、水平ラインパラメータで指定された水平方向の始点座標Ｘｓを設定する（ステップＳ５２）。次に、水平ライン半透明画像処理装置１１３は、出力用半透明ラインメモリ１１５のうちＩＸに対応する位置の半透明値Ａｄを読み込み、半透明画像記憶部４２に記憶された半透明画像のうちＩＸ、ＩＹに対応する画素の半透明値としてＡｄを書き込む（ステップＳ５３）。次に、水平ライン半透明画像処理装置１１３は、処理対象の画素のＸ座標ＩＸを１画素分だけシフトする（ステップＳ５４）。そして、水平ライン半透明画像処理装置１１３は、ＩＸが、水平ラインパラメータで指定された水平方向の終点座標Ｘｅ以下であるか否かを確認する（ステップＳ５５）。ステップＳ５５の結果が肯定の場合（ステップＳ５５：Ｙｅｓ）、ステップＳ５３以降の処理を繰り返し、ステップＳ５５の結果が否定の場合（ステップＳ５５：Ｎｏ）、処理を終了する。
【００５７】
ここで、図１５に示すように、水平ラインパラメータに対応する１ライン分の画素として、第５番目の画素〜第１７番目の画素を描画する場合を想定する。ここでは、上述したように、ＯＣＰバスでのアクセスはＭａｘ８バーストに設定され、１バーストのメモリアクセスで３２ビットのデータを読み出すことができる。上述したように、色画像記憶部４１に記憶された色画像の１画素分のデータは３２ビットのデータであるので、１画素がメモリワードとなっている。一方、半透明画像記憶部４２に記憶された半透明画像の１画素分のデータは８ビットのデータであり、１行分のデータは、４つの画素の各々が８ビットのビット深度を有する３２ビットのデータであるので、プレーンの１行を構成する４つの画素が１メモリワードとなっている。
【００５８】
図１６は、この場合の本実施形態における描画処理のタイミングチャートを示す図である。図１６において、リードリクエスト出力は、描画処理部１１がリードリクエストを出力するタイミングである。リードアドレス出力は、描画処理部１１の出力であり、リード対象の先頭アドレスである。リードワード数出力は、描画処理部１１の出力であり、リード対象の先頭アドレスから連なるワード数（リード対象のワード数）である。リード応答入力は、メモリ制御部１２の出力であり、リードアドレスおよびリードワード数を受け取ったことを意味する。リードデータ入力は、メモリ制御部１２の出力であり、描画処理部１１から受け取った先頭アドレスからリードワード数分の画像メモリ２０のリードデータである。
【００５９】
図１６に示すように、描画処理部１１は、まず水平パラメータに対応する１ライン分の画素（第５番目の画素〜第１７番目の画素）の半透明値を読み込む。この例では、半透明画像記憶部４２に記憶された半透明画像の第２行目〜第５行目の４行分のデータ（図１５の（Ｂ）参照）を読み込むことになる（半透明４ワードリード）。次に、色画像記憶部４１に記憶された色画像の第５番目の画素〜第１２番目の画素の８ワード分のデータを読み込み（色８ワードリード）、上述の半透明演算を行い、半透明演算後の色値を色画像記憶部４１に書き込む（色８ワードライト）。このとき、半透明演算後の半透明値は出力用半透明ラインメモリ１１５に書き込んでおく。次に、色画像記憶部４１に記憶された色画像の第１３番目の画素〜第１７番目の画素の５ワード分のデータを読み込み（色５ワードリード）、上述の半透明演算を行い、半透明演算後の色値を色画像記憶部４１に書き込む（色５ワードライト）。このとき、半透明演算後の半透明値は出力用半透明ラインメモリ１１５に書き込んでおく。そして、出力用半透明ラインメモリ１１５に格納された１ライン分の半透明演算後の半透明値を半透明画像記憶部４２に書き込む（半透明４ワードライト）。
【００６０】
ここで、対比例として、Ｍａｘ８バーストの色値の読み込みが行われるたびに、対応する画素の半透明値の読み込みを行う構成を想定する。図１７は、対比例における描画処理のタイミングチャートを示す図である。図１７に示すように、まず、描画処理部１１は、色画像記憶部４１に記憶された色画像の第５番目の画素〜第１２番目の画素の８ワード分のデータを読み込み（色８ワードリード）、次に対応する画素の半透明値を読み込む。この例では、半透明画像記憶部４２に記憶された半透明画像の第２行目〜第４行目の３行分のデータ（図１５の（Ｂ）参照）を読み込むことになる（半透明３ワードリード）。そして、上述の半透明演算を行い、半透明演算後の色値を色画像記憶部４１に書き込み（色８ワードライト）、半透明演算後の半透明値を半透明画像記憶部４２に書き込む（半透明３ワードライト）。次に、描画処理部１１は、色画像記憶部４１に記憶された色画像の第１３番目の画素〜第１７番目の画素の５ワード分のデータを読み込み（色５ワードリード）、次に対応する画素の半透明値を読み込む。この例では、半透明画像記憶部４２に記憶された半透明画像の第４行目〜第５行目の２行分のデータ（図１５の（Ｂ）参照）を読み込むことになる（半透明２ワードリード）。そして、上述の半透明演算を行い、半透明演算後の色値を色画像記憶部４１に書き込み（色５ワードライト）、半透明演算後の半透明値を半透明画像記憶部４２に書き込む（半透明２ワードライト）。
【００６１】
以上の対比例においては、色値は効率よく８ワードごとに読み込むことができるが、半透明値は、半透明画像記憶部４２のメモリフォーマットがプレーンフォーマットであるために細かなメモリアクセスが発生し、かつ重複した部分（上述の例では第４行目）の読み込みや書き込みが発生して効率が悪い。特に、メモリリード時のリード応答時間が多く発生して描画時間が長くなるという問題がある。
【００６２】
これに対して、本実施形態では、半透明値を細かくリードせずに、水平ラインパラメータに対応する１ライン分の画素の半透明値を読み込むので効率よく半透明値を読み込むことができ、半透明値を細かくライトせずに１ライン単位で半透明値を書き込むために効率よく半透明値を書き込むことができる。
【００６３】
以上に説明したように、本実施形態では、描画コマンドを分解して得られる上述の水平ラインパラメータに基づく描画処理において、半透明画像記憶部４２から該水平ラインパラメータに対応する複数の画素分の半透明値を一斉に読み出し、その読み出した全ての半透明値が透明であることを示す場合は、該水平ラインパラメータに対応する複数の画素分の色値を色画像記憶部４１から読み込まずに、該水平ラインパラメータで指定された色値を、該水平ラインパラメータに対応する複数の画素の各々の色値として色画像記憶部４１に直接書き込む。これにより、従来に比べて高速な描画処理を実現できる。
【００６４】
以上、本発明に係る実施形態について説明したが、本発明は、上述の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【００６５】
また、上述した実施形態の画像形成装置１００で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよいし、インターネット等のネットワーク経由で提供または配布するように構成してもよい。また、各種プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【符号の説明】
【００６６】
１      ＣＰＵ
２      ＣＰＵインタフェース
３      メモリアービタ
４      メモリコントローラ
５      ＤＭＡ
６      バスコントローラ
７      通信コントローラ
８      バスインタフェース
９      ＤＭＡ処理部
１０    画像処理部
１１    描画処理部
１２    メモリ制御部
１３    少値画像読み込み部
１４    エンジンコントローラ
１６    メインメモリ
１８    ＲＯＭ
１９    ＡＳＩＣ
２０    画像メモリ
２１    ＰＣ
２２    コントローラボード
２３    プリンタエンジン
３０    描画コマンド領域
３１    ＰＤＦ領域
３２    画像処理パラメータ
４０    描画コマンド領域
４１    色画像記憶部
４２    半透明画像記憶部
４３    少値画像記憶部
１００  画像形成装置
【先行技術文献】
【特許文献】
【００６７】
【特許文献１】特開平０７−２８９８６号公報
【図１】
2017054470.tif 000005
【図２】
2017054470.tif 000006
【図３】
2017054470.tif 000007
【図４】
2017054470.tif 000008
【図５】
2017054470.tif 000009
【図６】
2017054470.tif 000010
【図７】
2017054470.tif 000011
【図８】
2017054470.tif 000012
【図９】
2017054470.tif 000013
【図１０】
2017054470.tif 000014
【図１１】
2017054470.tif 000015
【図１２】
2017054470.tif 000016
【図１３】
2017054470.tif 000017
【図１４】
2017054470.tif 000018
【図１５】
2017054470.tif 000019
【図１６】
2017054470.tif 000020
【図１７】
2017054470.tif 000021