"主走査方向に連長圧縮された主走査方向連長データと、同一の主走査方向画像データが副走査方向に連続する数で表現される副走査方向連長データとを有する画像データを受け付ける受付手段と、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記受付手段によって受け付けられた画像データを処理する処理手段と、前記受付手段によって受け付けられた副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理手段によって処理される画像データの副走査方向連長データを算出する算出手段と、前記算出手段による算出結果を、前記処理手段によって処理された画像データに付加する付加手段とを有する画像処理装置。前記処理手段によってなされる処理は、ウィンドウ処理である請求項1に記載の画像処理装置。前記処理手段は、前記受付手段によって受け付けられた画像データを行ごとに処理し、前記算出手段は、前記処理手段によって処理される画像データが先頭行、最終行及びこれらの行以外のいずれであるか並びに前記受付手段によって受け付けられた副走査方向連長データが前記処理手段の処理領域の副走査幅より大きいか否かに応じて、前記処理手段によって処理される画像データの副走査方向連長データを算出する請求項1に記載の画像処理装置。前記算出手段によって算出された副走査方向連長データに応じて、前記受付手段によって受け付けられた画像データを記憶する記憶手段をさらに有し、前記処理手段は、前記記憶手段に記憶された画像データを処理する請求項1に記載の画像処理装置。画像データを、この画像データを主走査方向に連長圧縮した主走査方向画像データと、同一の主走査方向画像データを副走査方向に連長圧縮した副走査方向画像データとを有する画像データに圧縮する圧縮手段と、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記圧縮手段によって圧縮された画像データを処理する処理手段と、前記圧縮手段によって圧縮された副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理手段によって処理される画像データの副走査方向連長データを算出する算出手段と、前記算出手段による算出結果を、前記処理手段によって処理された画像データに付加する付加手段とを有する画像処理装置。前記付加手段が前記算出手段による算出結果を付加した、前記処理手段によって処理された画像データを復号する復号手段をさらに有する請求項5に記載の画像処理装置。コンピュータを備える画像処理装置において、主走査方向に連長圧縮された主走査方向連長データと、同一の主走査方向画像データが副走査方向に連続する数で表現される副走査方向連長データとを有する画像データを受け付けるステップと、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記受け付けられた画像データを処理するステップと、前記受け付けられた副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理される画像データの副走査方向連長データを算出するステップと、前記算出された結果を、前記処理された画像データに付加するステップとを前記コンピュータに実行させるプログラム。本発明の目的は、画像データに対する処理を高速化することができる画像処理装置及びプログラムを提供することである。画像処理装置上記目的を達成するために、本発明に係る画像処理装置は、主走査方向に連長圧縮された主走査方向連長データと、同一の主走査方向画像データが副走査方向に連続する数で表現される副走査方向連長データとを有する画像データを受け付ける受付手段と、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記受付手段によって受け付けられた画像データを処理する処理手段と、前記受付手段によって受け付けられた副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理手段によって処理される画像データの副走査方向連長データを算出する算出手段と、前記算出手段による算出結果を、前記処理手段によって処理された画像データに付加する付加手段とを有する。好適には、前記処理手段によってなされる処理は、ウィンドウ処理である。好適には、前記処理手段は、前記受付手段によって受け付けられた画像データを行ごとに処理し、前記算出手段は、前記処理手段によって処理される画像データが先頭行、最終行及びこれらの行以外のいずれであるか並びに前記受付手段によって受け付けられた副走査方向連長データが前記処理手段の処理領域の副走査幅より大きいか否かに応じて、前記処理手段によって処理される画像データの副走査方向連長データを算出する。好適には、前記算出手段によって算出された副走査方向連長データに応じて、前記受付手段によって受け付けられた画像データを記憶する記憶手段をさらに有し、前記処理手段は、前記記憶手段に記憶された画像データを処理する。上記目的を達成するために、本発明に係る画像処理装置は、画像データを、この画像データを主走査方向に連長圧縮した主走査方向画像データと、同一の主走査方向画像データを副走査方向に連長圧縮した副走査方向画像データとを有する画像データに圧縮する圧縮手段と、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記圧縮手段によって圧縮された画像データを処理する処理手段と、前記圧縮手段によって圧縮された副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理手段によって処理される画像データの副走査方向連長データを算出する算出手段と、前記算出手段による算出結果を、前記処理手段によって処理された画像データに付加する付加手段とを有する。好適には、前記付加手段が前記算出手段により算出された算出結果を付加した、前記処理手段によって処理された画像データを復号する復号手段をさらに有する。プログラムまた、本発明に係るプログラムは、コンピュータを備える画像処理装置において、主走査方向に連長圧縮された主走査方向連長データと、同一の主走査方向画像データが副走査方向に連続する数で表現される副走査方向連長データとを有する画像データを受け付けるステップと、主走査方向及び副走査方向にそれぞれ予め定められた画素幅を有する処理領域に基づいて、前記受け付けられた画像データを処理するステップと、前記受け付けられた副走査方向連長データ及び前記処理手段の処理領域の副走査幅に基づいて、前記処理される画像データの副走査方向連長データを算出するステップと、前記算出された結果を、前記処理された画像データに付加するステップとを前記コンピュータに実行させる。請求項1に係る本発明によれば、本構成を有しない場合に比べ、画像データに対する処理を高速化することができる画像処理装置を提供することができる。請求項2に係る本発明によれば、請求項1に係る本発明による効果に加え、本構成を有しない場合に比べ、画像データに対するウィンドウ処理を高速化することができる画像処理装置を提供することができる。請求項3に係る本発明によれば、請求項1に係る本発明による効果に加え、本構成を有しない場合に比べ、簡易な方法によって画像データの副走査方向連長データを算出することができる画像処理装置を提供することができる。請求項4に係る本発明によれば、請求項1に係る本発明による効果に加え、本構成を有しない場合に比べ、画像データに対する処理の前処理を高速化することができる画像処理装置を提供することができる。請求項5に係る本発明によれば、本構成を有しない場合に比べ、画像データに対する処理を高速化することができる画像処理装置を提供することができる。請求項6に係る本発明によれば、請求項5に係る本発明による効果に加え、本構成を有しない場合に比べ、復号された画像データを利用することができる画像処理装置を提供することができる。請求項7に係る本発明によれば、本構成を有しない場合に比べ、画像データに対する処理を高速化することができるプログラムを提供することができる。以下、本発明の実施形態を説明する。なお、以下の説明は本発明を実施するのにあたっての一例に過ぎず、本発明が以下に説明される事項に限定されるわけではなく、必要に応じて適宜変更可能である。例えば、以下、画像処理は、ウィンドウ処理であるとして説明しているが、ウィンドウバッファを利用する他の処理であってもかまわない。例えば、フィルタ処理及び検知処理であってもかまわない。図1は、本発明の第1の実施形態に係る画像処理装置1を示す図である。図1に示すように、本発明の実施形態に係る画像処理装置1は、画像処理部100及びマーキングエンジン102を有する。このような構成により、画像処理装置1は、入力された画像データに所定の処理を施し、記録用紙上にプリントする。画像処理部100は、例えば、CPU及びメモリなどの記憶装置ともに不図示を備える制御基板である。画像処理部100は、ケーブルなどにより通信可能に接続されたクライアントPC2から画像データを受け取り、予め定められた画像処理を施す。さらに、画像処理部100は、予め定められた画像処理が施された画像データが記録用紙にプリントされるよう、マーキングエンジン102を制御する。マーキングエンジン102は、例えば、直接転写方式のデジタルカラープリンタであり、露光装置104、画像形成ユニット106、用紙搬送ベルト108及び定着器110を備える。露光装置104は、帯電した感光体ドラム112の表面に向けてLEDを照射して、感光体ドラム20の表面に静電潜像を形成する。画像形成ユニット106は、静電潜像を形成してトナー像を担持させる像担持体である感光体ドラム112、感光体ドラム112の表面を一様に帯電する帯電器114、カラー画像を構成する色ごとに設けられた現像ロール116YYellow;イエロー、116MMagenta;マゼンタ、116CCyan;シアン及び116KblacK;ブラック、及び、感光体ドラム112の表面に形成されたトナー像を記録用紙に転写させる転写ロール118を備える。画像形成ユニット106は、現像ロール116Y、116M、116C及び116Kから、出力画像に応じたトナーを感光体ドラム112に供給し、感光体ドラム112の表面の静電潜像からトナー像を作像し、記録用紙上に、順次、転写する。用紙搬送ベルト108は、感光体ドラム112及び転写ロール118によって形成される転写位置に対して、記録用紙を搬送する。定着器110は、記録用紙上に転写されたトナー像を定着させる。次に、図1の画像処理部100をさらに説明する。図2は、画像処理部100で動作する画像処理プログラム120の構成を示す図である。画像処理部100は、CPUに対し、メモリに記憶された画像処理プログラム120を読み出して実行させる。図2に示すように、画像処理プログラム120は、受付部122、算出部124、生成部126、記憶部128、ウィンドウ処理部130及び付加部138から構成される。ウィンドウ処理部130は、さらに、乗算部132、シフト部134及び加算部136から構成される。なお、画像処理プログラム120は、メモリに記憶されるものとして説明したが、ROMReadOnlyMemory、RAMRandomAccessMemory及びHDDHardDiskDriveなどの記憶装置に記憶されていてもよいし、フロッピーディスク登録商標などの外部記録媒体に記憶されていてもよい。また、ネットワークを介して図1の画像処理装置1に接続されるサーバなどの他の装置に記憶されていてもよい。画像処理プログラム120による画像処理は、画像処理装置1内で実行されるものとして説明したが、複数の装置例えば、画像処理装置1及びネットワークを介して接続されるサーバ内で実行されてもよい。また、FPGAFieldProgrammableGateArrayなどのハードウェアによって実現されてもよい。受付部受付部122は、図1のクライアントPC2から、ランレングス変換済み画像データを受け付ける。ここで、ランレングス変換済み画像データとは、主走査方向及び副走査方向のランレングス変換が施された画像データである。ランレングス変換済み画像データは、例えば、ビットマップ画像データ例えば、図3Aに示す8ビットの画像データに対して主走査方向のランレングス変換を施した画像データ例えば、図3Bに示す画像データに対し、さらに、副走査方向のランレングス変換を施した画像データであり、例えば、図3Cに示す画像データである。図3Aは、主走査方向及び副走査方向のランレングス変換前の画像データ以下、ランレングス変換前の画像データである。ランレングス変換前の画像データは、例えば、同一の画素値によって構成される同色の画像データと、複数の画素値によって構成されるグラデーションの画像データとからなる。ここでは、同色の画像データは、主走査方向に16つ並んだ画素値86の画素からなる行が副走査方向に9つ連続しているものとする。また、グラデーションの画像データは、画素値255の画素、画素値230の画素、画素値215の画素、画素値200の画素、、画素値0の画素からなる行が副走査方向に7つ連続しているものとする。図3Bに示す画像データは、図3Aのランレングス変換前の画像データに対し、主走査方向のランレングス変換が施されてできる。図3Bに示すように、主走査方向のランレングス変換が施された画像データ以下、ランレングス変換主走査方向済み画像データは、主走査方向ラン長及び画素値からなるランデータを少なくとも1つ含む行によって構成される。図3Cに示す画像データは、図3Bのランレングス変換主走査方向済み画像データに対し、副走査方向のランレングス変換が施されてできる。図3Cに示すように、ランレングス変換済み画像データは、副走査方向ラン長及び少なくとも1つのランデータ主走査方向ラン長及び画素値を含む行によって構成される。ランレングス変換済み画像データの1行目は、ランレングス変換主走査方向済み画像データの1~9行目に対応し、ランレングス変換済み画像データの2行目は、ランレングス変換主走査方向済み画像データの10~17行目に対応する。なお、図4Aに示すように、画像処理プログラム120は、受付部122のない構成であってもかまわない。この場合、クライアントPC2からのランレングス変換済み画像データは、メモリなどにいったん記憶され、算出部124に出力されるとともに、記憶部128に適宜格納される。また、図4Bに示すように、画像処理プログラム120は、受付部122の代わりに変換部140を設ける構成であってもかまわない。この場合、クライアントPC2からはランレングス変換前の画像データが送信され、クライアントPC2からのランレングス変換前の画像データはメモリなどにいったん記憶され、変換部140によって主走査方向及び副走査方向のランレングス変換が施される。主走査方向及び副走査方向のランレングス変換が施された画像データは、算出部124に出力されるとともに、記憶部128に適宜格納される。また、図4Cに示すように、画像処理プログラム120は、受付部122の後段に変換部140を設ける構成であってもかまわない。この場合、受付部122は、クライアント2からランレングス変換前の画像データを受け付け、変換部140は、受付部122によって受け付けられたランレングス変換前の画像データに対して主走査方向及び副走査方向のランレングス変換を施す。主走査方向及び副走査方向のランレングス変換が施された画像データは、算出部124に出力されるとともに、記憶部128に適宜格納される。また、図4Dに示すように、画像処理プログラム120は、付加部138の後段に逆変換部142を設ける構成であってもかまわない。この場合、逆変換部142は、付加部138から出力される画像データ後述するように、ランレングス変換済み画像データにウィンドウ処理が施された画像データに対し、主走査方向及び副走査方向のランレングス逆変換を施す。算出部算出部124は、図2の受付部122によって受け付けられたランレングス変換済み画像データの元になる画像データつまり、ランレングス変換前の画像データ及びランレングス変換主走査方向済み画像データにおいて、同じウィンドウ処理が可能である行以下、同一ウィンドウ処理行を算出する。ここで、同じウィンドウ処理が可能であるとは、ウィンドウ処理の対象が同じであり、ウィンドウ処理の結果が同じになることを意味する。ウィンドウ処理には、例えば、図5に示すウィンドウが用いられる。図5に示すように、ウィンドウは、3×3の9画素によって構成され、各画素には重み付け係数Ki,jが予め設定される。網掛けされた画素は注目画素である。ランレングス変換前の画像データにウィンドウ処理が施される場合、ウィンドウを構成する画素の少なくとも一部がランレングス変換前の画像データを構成する画素に重なるよう、ウィンドウが走査される。後述するように、1~N行Nは1以上の整数。以下、Nが常に同じものを指し、同じ値であるとは限らないからなるランレングス変換主走査方向済み画像データにウィンドウ処理を施す場合、実際には存在しない0行目は1行目と同じランデータからなるものとし、実際に存在しないN1行目はN行目と同じランデータからなるものとするので、2行目は1行目と同じウィンドウ処理が可能となり、N行目はN-1行目と同じウィンドウ処理が可能となる。1~N行からなるランレングス変換前の画像データにウィンドウ処理を施す場合もこれと同様である。つまり、実際には存在しない0行目は1行目と同じ画素からなるものとし、実際に存在しないN1行目はN行目と同じ画素からなるものとするので、2行目は1行目と同じウィンドウ処理が可能となり、N行目はN-1行目と同じウィンドウ処理が可能となる。例えば、図5に示すウィンドウが図3Aに示すランレングス変換前の画像データを走査する場合、2行目は1行目と同じウィンドウ処理が可能であり、3~8行目は2行目と同じウィンドウ処理が可能であるので、1~8行目は同じウィンドウ処理が可能である。9~10行目は8行目と同じウィンドウ処理はできない。12~16行目は11行目と同じウィンドウ処理が可能であり、17行目は16行目と同じウィンドウ処理が可能であるので、11~17行目は同じウィンドウ処理が可能である。つまり、図3Aに示すランレングス変換前の画像データのうち同色の画像データは、同一ウィンドウ処理可能な部分1~8行目及び同一ウィンドウ処理ができない部分9行目からなる。また、図3Aに示すランレングス変換前の画像データのうちグラデーションの画像データは、同一ウィンドウ処理ができない部分10行目及び同一ウィンドウ処理可能である部分11~17行目からなる。同一ウィンドウ処理ができない部分は、同一ウィンドウ処理可能な部分の境界にあたる。以下、このように同一ウィンドウ処理ができず、同一ウィンドウ処理可能な部分の境界にある行を境界行と記載する。ウィンドウ幅が3の場合、境界行の数は2であり、ウィンドウ幅が5の場合、境界行の数は4である。つまり、ウィンドウ幅から1を減じることにより、境界行の数を求めることができる。図6は、図2の算出部124が同一ウィンドウ処理行を算出する手順を示すフローである。算出部124がこの手順によって算出した同一ウィンドウ処理行は、図2の生成部126及び付加部138に出力される。図6に示すように、算出部124は、図2の受付部122によって受け付けられたランレングス変換済み画像データを構成する1~N行それぞれについて、ステップ102~124の処理を実行する。なお、境界行の数は、予め0に設定されているものとする。ステップ100S100において、iに1を設定する。ステップ102S102において、i行目の副走査ラン長を取得する。ステップ104S104において、境界行の数が0であるか否かを判定する。境界行の数が0である場合には、ステップ106の処理に進み、境界行の数が0でない場合には、ステップ122の処理に進む。ステップ106S106において、ステップ102において取得した副走査ラン長がウィンドウ幅以上であるか否かを判定する。副走査ラン長がウィンドウ幅以上である場合には、ステップ108の処理に進み、副走査ラン長がウィンドウ幅より小さい場合には、ステップ124の処理に進む。なお、このように処理行に含まれる副走査方向ラン長がウィンドウ幅以上であるか否かを判定するのは、処理行に含まれる副走査方向ラン長がウィンドウ幅以上である場合には、ウィンドウ処理の結果を利用することにより、ウィンドウ処理全体を高速化することができるからである。ステップ108S108において、iが1の場合、ステップ110の処理に進み、1<i<Nの場合、ステップ112の処理に進み、iがNの場合、ステップ118の処理に進む。ステップ110S110において、ステップ102において取得した副走査ラン長からウィンドウ幅-1/2を減じた値を同一ウィンドウ処理行に設定し、ステップ114の処理に進む。iが1の場合、副走査ラン長から境界行を2で除した値を減じた値が同一ウィンドウ処理行となる。ステップ112S112において、ステップ102において取得した副走査ラン長からウィンドウ幅-1を減じた値を同一ウィンドウ処理行に設定し、ステップ114の処理に進む。1<i<Nの場合、副走査ラン長から境界行を減じた値が同一ウィンドウ処理行となる。ステップ114S114において、ウィンドウ幅から1を減じた値を境界行の数に設定し、ステップ116の処理に進む。ステップ116S116において、iをインクリメントして、ステップ102の処理に戻る。ステップ118S118において、ステップ102において取得した副走査ラン長からウィンドウ幅-1/2を減じた値を同一ウィンドウ処理行に設定し、ステップ120の処理に進む。iがNの場合、iが1の場合と同様、副走査ラン長から境界行を2で除した値を減じた値が同一ウィンドウ処理行となる。ステップ120S120において、境界行の数を0に設定する。ステップ122S122において、境界行の数をデクリメントし、ステップ124の処理に進む。ステップ124S124において、同一ウィンドウ処理行を1に設定し、ステップ104の処理に戻る。ここで、算出部124が図3Cに示すランレングス変換済み画像データについて同一ウィンドウ処理行を算出する場合を考える。図3Cに示すランレングス変換済み画像データを構成する1行目及び2行目それぞれについて、ステップ102~124の処理を実行する。1行目の処理ステップ100S100において、iに1を設定する。ステップ102S102において、1行目の副走査ラン長である9を取得する。ステップ104S104において、境界行の数が0なので、ステップ106の処理に進む。ステップ106S106において、副走査ラン長である9はウィンドウ幅である3以上なので、ステップ108の処理に進む。ステップ108S108において、iは1なので、ステップ110の処理に進む。ステップ110S110において、副走査ラン長からウィンドウ幅-1/2を減じた値9-3-1/2=8を同一ウィンドウ処理行に設定し、ステップ114の処理に進む。ステップ114S114において、ウィンドウ幅である3から1を減じた値=2を境界行の数に設定し、ステップ116の処理に進む。ステップ116S116において、iである1に1を加え、ステップ102の処理に戻る。2行目の処理ステップ102S102において、2行目の副走査ラン長である8を取得する。ステップ104S104において、境界行の数が2なので、ステップ122の処理に進む。ステップ122S122において、境界行の数である2から1を減じて、ステップ124の処理に進む。ステップ124S124において、同一ウィンドウ処理行を1に設定し、ステップ104の処理に戻る。ステップ104S104において、境界行の数が1なので、ステップ122の処理に進む。ステップ122S122において、境界行の数である1から1を減じて、ステップ124の処理に進む。ステップ124S124において、同一ウィンドウ処理行を1に設定し、ステップ104の処理に戻る。ステップ104S104において、境界行の数が0なので、ステップ106の処理に進む。ステップ106S106において、副走査ラン長である8はウィンドウ幅である3以上なので、ステップ108の処理に進む。ステップ108S108において、iが2なので、ステップ118の処理に進む。ステップ110S110において、副走査ラン長からウィンドウ幅-1/2を減じた値8-3-1/2=7を同一ウィンドウ処理行に設定し、ステップ120の処理に進む。ステップ120S120において、境界行の数を0に設定する。このように、図3Cに示すランレングス変換済み画像データの1行目について、同一ウィンドウ処理行8が設定され、同画像データの2行目について、同一ウィンドウ処理行1,1,7が設定される。生成部,記憶部図2に戻り、生成部126は、算出部124が図6の手順によって算出した同一ウィンドウ処理行に基づいて、後段のウィンドウ処理部130に用いられる画像データが記憶部128に格納される際の制御信号を生成する。記憶部128は、例えば、ラインバッファであり、ランレングス変換主走査方向済み画像データを行ごとに一時的に格納する。具体的には、生成部126は、同一ウィンドウ処理行が1である場合には、同一ウィンドウ処理行が算出されたランレングス変換済み画像データに対応するランレングス変換主走査方向済み画像データが記憶部128に格納されるよう、制御信号を生成する。生成部126は、同一ウィンドウ処理行が1より大きい場合には、同一ウィンドウ処理行が算出されたランレングス変換済み画像データの行に対応するランレングス変換主走査方向済み画像データの行のうち、先頭行が同一ウィンドウ処理行だけコピーされて記憶部128に格納されるよう、制御信号を生成する。なお、記憶部128に画像データが格納されていないときには、同一ウィンドウ処理行が算出されたランレングス変換済み画像データの行に対応するランレングス変換主走査方向済み画像データの行のうち、先頭行が同一ウィンドウ処理行だけ一斉に記憶部128に格納されるよう、制御信号を生成する。このように、同一ウィンドウ処理行によっては、行ごとにランレングス変換主走査方向済み画像データを格納するのではなく、同一ウィンドウ処理行だけランレングス変換主走査方向済み画像データをコピーして格納又は一斉に格納することにより、すべての行ごとにランレングス変換主走査方向済み画像データを格納する場合に比べて、ウィンドウ処理の前処理を高速化することができるので、ウィンドウ処理全体を高速化することができる。さらに、生成部126は、同一ウィンドウ処理行だけ画像データをコピーして格納又は一斉に格納する場合には、このことを示すフラグ等を対応付けて格納する。ウィンドウ処理部ウィンドウ処理部130は、記憶部128に格納されたランレングス変換主走査方向済み画像データに対して行ごとにウィンドウ処理を施す。なお、同一ウィンドウ処理行が1より大きく、画像データが同一ウィンドウ処理行だけコピーして格納又は一斉に格納されたことを示すフラグ等が対応付けられている場合には、ウィンドウ処理部130は、このように格納された画像データのうち先頭行に対応する画像データにのみ、ウィンドウ処理を施し、残りの行に対応する画像データについては、先頭行に対応する画像データのウィンドウ処理結果を利用する。このように、同一ウィンドウ処理行が1より大きい場合には、ウィンドウ処理結果を利用することにより、すべての行ごとにウィンドウ処理を施す場合に比べて、ウィンドウ処理を高速化することができる。ウィンドウ処理部130は、上述したように、乗算部132、シフト部134及び加算部136から構成される。乗算部132は、記憶部128に格納された画像データを行ごとに読み出し、画素値に重み付け係数を乗算する。シフト部134は、記憶部128に格納された画像データを行ごとに読み出し、右又は左にn画素シフトする。加算部136は、記憶部128に格納された画像データの複数行を読み出し、加算する。図7は、ウィンドウ処理部130によるウィンドウ処理の手順を示すフローチャートである。以下、図2の記憶部128には、n-1行目のランレングス変換主走査方向済み画像データ以下Dn-1、n行目のランレングス変換主走査方向済み画像データ以下Dn、及び、n1行目のランレングス変換主走査方向済み画像データ以下Dn1が格納されており、これらの画像データを記憶部128から読み出し、図4に示したウィンドウを用いてウィンドウ処理を実行するものとする。なお、nのとりうる値は1~NNはランレングス変換主走査方向済み画像データを構成する行の数であり、nのとりうる値ごとに、ステップ200~218の処理を実行する。ただし、n=1の場合、実際には存在しない0行目のランレングス変換主走査済み画像データD0にウィンドウ処理を実行することになり、n=Nの場合、実際には存在しないN1行目のランレングス変換主走査済み画像データDN1にウィンドウ処理を実行することになる。このため、D0を記憶部128から読み出す際には、D1を記憶部128から読み出し、DN1を記憶部128から読み出す際には、DNを記憶部128から読み出す。つまり、D0はD1であるものとしてウィンドウ処理を実行し、DN1はDNであるものとしてウィンドウ処理を実行する。ステップ200~204S200~204において、Dn1への乗算及びシフトがなされる。ステップ200S200に示すように、図2の乗算部132は、Dn1に重み付け係数K-1,1=K1,1=0.05を乗算する。乗算部132による乗算の詳細は後述する。ステップ202S202において、図2のシフト部134は、ステップ200において乗算されたDn1を左右に1画素シフトする。シフト部134によるシフトの詳細は後述する。なお、以下、乗算及びシフトされた画像データは、乗じた値及びシフトした画素数右にシフトした画素数は正の数。左にシフトした画素数は負の数を付加して記載する。例えば、Dn1に0.05を乗じて右に1画素シフトした場合には、Dn10.05,1と記載する。ステップ204S204において、乗算部132は、Dn1に重み付け係数K0,1=0.1を乗算する。ステップ206~210S206~210において、Dnへの乗算及びシフトがなされる。ステップ206S206において、乗算部132は、Dnに重み付け係数K-1,0=K1,0=0.1を乗算する。ステップ208S208において、シフト部134は、ステップ206において乗算されたDnを左右に1画素シフトする。ステップ210S210において、乗算部132は、Dnに重み付け係数K0,0=0.4を乗算する。ステップ212~216S212~216において、Dn1への乗算及びシフトがなされる。ステップ212S212において、乗算部132は、Dn-1に重み付け係数K-1,-1=K1,-1=0.05を乗算する。ステップ214S214において、シフト部134は、ステップ212において乗算されたDn-1を左右に1画素シフトする。ステップ216S216において、乗算部132は、Dn-1に重み付け係数K0,-1=0.1を乗算する。ステップ218S218において、加算部136は、ステップ200~216において求められた画像データを加算する。加算部136は、Dn10.05,-1、Dn10.1,0、Dn10.05,1、Dn0.1,-1、Dn0.4,0、Dn0.1,1、Dn-10.05,-1、Dn-10.1,0、Dn-10.05,1を加算した結果を付加部138に出力する。加算部136による加算の詳細は後述する。図8は、図2の乗算部132による乗算の手順を示すフローチャートである。ステップ300S300において、乗算部132は、処理対象の行に含まれるランデータのうち、先頭のランデータの画素値を取り出す。ステップ302S302において、乗算部132は、ステップ300又はステップ306において取り出した画素値に重み付け係数を乗算する。ステップ304S304において、乗算部132は、処理対象の行に含まれるランデータすべてについて、画素値に重み付け係数を乗算したか否かを判定する。処理対象の行に含まれるランデータすべてについて、画素値に重み付け係数を乗算した場合には、処理を終了し、そうでない場合には、ステップ306の処理に進む。ステップ306S306において、乗算部132は、処理対象の行に含まれるランデータのうち、ステップ302において画素値が乗算されたランデータより後方にあるランデータから画素値を取り出し、ステップ302の処理に戻る。図9は、図2のシフト部134によるシフトの手順を示すフローチャートである。ここでは、処理対象の行を右方向にシフトする場合を説明するが、左方向にシフトする場合には、先頭のランデータに対する処理と最後尾のランデータに対する処理とを逆にすればよい。ステップ400S400において、シフト部134は、処理対象の行に含まれるランデータのうち、先頭のランデータの主走査方向ラン長を取り出す。ステップ402S402において、シフト部134は、ステップ400において取り出した主走査方向ラン長にシフト量NNは非ゼロの整数を加算する。ステップ404S404において、シフト部134は、処理対象の行に含まれるランデータのうち、最後尾のランデータの主走査方向ラン長を取り出す。ステップ406S406において、シフト部134は、ステップ404において取り出した主走査方向ラン長と、ステップ402におけるシフト量Nとの大小関係を判定する。主走査方向ラン長がシフト量Nよりも小さい場合には、ステップ408の処理に進み、主走査方向ラン長がシフト量Nと等しい場合には、ステップ412の処理に進み、主走査方向ラン長がシフト量Nよりも大きい場合には、ステップ414の処理に進む。ステップ408S408において、シフト部134は、シフト量Nからステップ404において取り出した主走査方向ラン長を減じた値をシフト量Nに設定する。ステップ410S410において、シフト部134は、ステップ404において主走査方向ラン長が取り出されたランデータそのものを削除し、ステップ404の処理に戻る。ステップ412S412において、シフト部134は、ステップ404において主走査方向ラン長が取り出されたランデータそのものを削除し、処理を終了する。ステップ414S414において、シフト部134は、ステップ404において取り出された主走査方向ラン長からシフト量Nを減じ、処理を終了する。図10は、図2の加算部136による加算の手順を示すフローチャートである。加算部136は、図2の乗算部132及びシフト部134によって乗算及びシフトされた画像データDn10.05,-1、Dn10.1,0、Dn10.05,1、Dn0.1,-1、Dn0.4,0、Dn0.1,1、Dn-10.05,-1、Dn-10.1,0、Dn-10.05,1から2つずつ選んで加算することを繰り返す。以下、Dn10.05,-1及びDn10.1,0のうち2つが選ばれる場合について説明するが、これ以外の2つが選ばれた場合についても同様の手順で加算する。ステップ500S500において、加算部136は、Dn10.05,-1に含まれるランデータのうち、先頭のランデータの主走査方向ラン長をL1とし、先頭のランデータの画素値をV1とする。また、Dn10.1,0に含まれるランデータのうち、先頭のランデータの主走査方向ラン長をL2とし、先頭のランデータの画素値をV2とする。ステップ502S502において、加算部136は、L1及びL2のいずれか小さい値をL0とし、V1及びV2のいずれか小さい値をV0とする。ステップ504S504において、加算部136は、L0が主走査方向ラン長であって、V0が画素値であるランデータを出力する。ステップ506S506において、加算部136は、L1からL0を減じた値をL1に設定し、L2からL0を減じた値をL2に設定する。ステップ508S508において、加算部136は、L1が0より大きいか否かを判定する。L1が0である場合には、ステップ510の処理に進み、L1が0より大きい場合には、ステップ514の処理に進む。ステップ510S510において、加算部136は、Dn10.05,-1に次のランデータがあるか否かを判定する。次のランデータがある場合には、ステップ512の処理に進み、次のランデータがない場合には、処理を終了する。ステップ512S512において、加算部136は、Dn10.05,-1に含まれる次のランデータについて、このランデータの主走査方向ラン長をL1とし、先頭のランデータの画素値をV1とし、ステップ514の処理に進む。ステップ514S514において、加算部136は、L2が0より大きいか否かを判定する。L2が0である場合には、ステップ516の処理に進み、L2が0より大きい場合には、ステップ502の処理に戻る。ステップ516S516において、加算部136は、Dn10.1,0に次のランデータがあるか否かを判定する。次のランデータがある場合には、ステップ518の処理に進み、次のランデータがない場合には、処理を終了する。ステップ518S518において、加算部136は、Dn10.1,0に含まれる次のランデータについて、このランデータの主走査方向ラン長をL2とし、先頭のランデータの画素値をV2とし、ステップ502の処理に戻る。付加部図2に戻り、付加部138は、算出部124が図6の手順によって求めた同一ウィンドウ処理行を、ウィンドウ処理部130が図7~10の手順によって求めた画像データに付加する。同一ウィンドウ処理行が、ランレングス変換済み画像データの行ごとに求められるのに対し、ウィンドウ処理部130は、ランレングス変換主走査方向済み画像データにウィンドウ処理を施しており、画像データの種別が異なる。そこで、ウィンドウ処理部130によって求められた画像データランレングス変換主走査方向済み画像データに対し、副走査方向のランレングス変換を施し、ランレングス変換済み画像データとした後、同一ウィンドウ処理行を付加する。"