(57)【要約】【課題】水平ラインを９０度回転させた後に複数の垂直ラインを水平ラインへ変換し、水平ラインとして描画処理を行なうことにより、垂直ラインを高速に描画すること。【解決手段】印刷処理中に画像の向きを変更して画像データを生成し出力する画像処理装置において、垂直ラインの開始点および終点の値を含む垂直ライン描画情報１３０を入力し、水平ラインへ変換する垂直ライン→水平ライン変換装置１２１と、垂直ライン→水平ライン変換装置１２１により変換された水平ラインを描画する諧調処理装置１２２と、を備える。【選択図】        図７
2005262627.tif 000002
【特許請求の範囲】
【請求項１】
印刷処理中に画像の向きを変更して画像データを生成し出力する画像処理装置において、
垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力し、水平ラインへ変換する水平ライン変換手段と、
前記水平ライン変換手段により変換された水平ラインを描画する水平ライン描画手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記水平ライン変換手段は、複数の垂直ラインの開始点および終点値を記憶する垂直ラインデータ記憶手段と備えたこと特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記水平ライン変換手段は、垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値のＭＩｎのＹ値とＭａｘのＹ値を求める垂直方向Ｍｉｎ，Ｍａｘ値演算手段を備えたことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記水平ライン変換手段は、前記垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値と前記垂直方向Ｍｉｎ，Ｍａｘ値演算手段により求めたＭｉｎのＹ値からＭａｘのＹ値からＭｉｎのＹ値からＭａｘのＹ値までの水平ラインの開始Ｘ値と終点Ｘ値を求める水平パラメータ演算手段を備えたことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
印刷処理中に画像の向きを変更して画像データを生成し出力する画像処理方法において、
垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力し、水平ラインへ変換する水平ライン変換工程と、
前記水平ライン変換工程により変換された水平ラインを描画する水平ライン描画工程と、
を含むことを特徴とする画像処理方法。
【請求項６】
前記請求項５に記載の画像処理方法を、コンピュータに実行させるプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル複写機、プリンタなどに搭載される画像処理装置および画像処理方法、並びに画像処理方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【０００２】
従来、図２０に示すようにプリンタは、ＰＣからのＰＤＬ（ページ記述言語）を受け取り、ＰＤＬのグラフィックスや、文字画像は水平ラインの開始Ｘ値、終点Ｘ値の描画単位に分解されバンドメモリへ描画処理されることが知られている。
【０００３】
さて、図２１に示すようにプリンタが印刷中に使用中の給紙トレイの記録紙がなくなり、別給紙トレイの方向の異なる記録紙に印刷するとき、９０度回転させて印刷する必要がある。そして９０度回転した場合、水平ラインは図２２に示すように垂直ラインへ変換されることになる。
【０００４】
また、図２３〜図２５に示すように垂直ラインの集まりを描画する場合、通常のバンドメモリはこの例では１６ＢＩＴを１ワードとしてアクセスされるが、同じワードを何度も繰り返しリードし、ＯＲ処理を行ない何度も、繰り返し書き込んでいることがわかる。
【０００５】
このような技術として、Ｎ×Ｎの水平方向のライト後に垂直方向にリードすることが可能な特殊なメモリを使用し、回転なしの状態で描画した後に、Ｎ×Ｎのサイズごと切り出して特殊なメモリへライトし、９０度回転した画像を読み込むことにより、９０度回転処理を実現している（たとえば、特許文献１参照）。また、垂直ラインの描画時においても、効率よく描画処理を行なうために四角形で領域にマッピングすることにより、垂直ライン描画時においても、ある程度、高速にアクセスできるようにしている（たとえば、特許文献２参照）。
【０００６】
【特許文献１】特開平５−１００６５５号公報
【特許文献２】特開２００３−５４０４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記に示されるような、特許文献１の方式は１度回転なしの状態で描画しなければならないために余分なワークメモリを必要とする。また、描画後、再度回転して別領域へコピーするために、処理速度が遅いという問題点があった。また、特許文献２の方式は、通常は、水平ラインの描画処理が大半であるために、従来のメモリフォーマットで水平ラインの高速描画処理を考えなければならないが、この方式では通常の水平ラインの描画処理が遅くなってしまうという問題点があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、水平ラインを９０度回転させた後に複数の垂直ラインを水平ラインへ変換し、水平ラインとして描画処理を行なうことにより、垂直ラインを高速に描画することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、印刷処理中に画像の向きを変更して画像データを生成し出力する画像処理装置において、垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力し、水平ラインへ変換する水平ライン変換手段と、前記水平ライン変換手段により変換された水平ラインを描画する水平ライン描画手段と、を備えたことを特徴とする。
【００１０】
この請求項１にかかる発明によれば、水平ライン変換手段によって垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力して水平ラインへ変換し、水平ライン描画手段により水平ライン変換手段で変換された水平ラインを描画することにより、垂直ラインを高速に描画することが可能になる。
【００１１】
また、請求項２にかかる発明は、前記水平ライン変換手段は、複数の垂直ラインの開始点および終点値を記憶する垂直ラインデータ記憶手段と備えたこと特徴とする。
【００１２】
この請求項２にかかる発明によれば、請求項１において、垂直ラインデータ記憶手段に複数の垂直ラインの開始点および終点値を記憶することにより、その記憶情報を一括して読み込むことで垂直ラインから水平ラインへに変換、描画の高速処理が可能になる。
【００１３】
また、請求項３にかかる発明は、前記水平ライン変換手段は、垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値のＭＩｎのＹ値とＭａｘのＹ値を求める垂直方向Ｍｉｎ，Ｍａｘ値演算手段を備えたことを特徴とする。
【００１４】
この請求項３にかかる発明によれば、請求項２において、垂直方向Ｍｉｎ，Ｍａｘ値演算手段が垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値のＭＩｎのＹ値とＭａｘのＹ値を求めることにより、複数の垂直ラインの情報を簡単に記憶することが可能になる。
【００１５】
また、請求項４にかかる発明は、前記水平ライン変換手段は、前記垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値と前記垂直方向Ｍｉｎ，Ｍａｘ値演算手段により求めたＭｉｎのＹ値からＭａｘのＹ値からＭｉｎのＹ値からＭａｘのＹ値までの水平ラインの開始Ｘ値と終点Ｘ値を求める水平パラメータ演算手段を備えたことを特徴とする。
【００１６】
この請求項４にかかる発明によれば、請求項３において、水平パラメータ演算手段が垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値と前記垂直方向Ｍｉｎ，Ｍａｘ値演算手段により求めたＭｉｎのＹ値からＭａｘのＹ値からＭｉｎのＹ値からＭａｘのＹ値までの水平ラインの開始Ｘ値と終点Ｘ値を求めることにより、複数の垂直ラインの情報を簡単に演算することが可能になる。
【００１７】
また、請求項５にかかる発明は、印刷処理中に画像の向きを変更して画像データを生成し出力する画像処理方法において、垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力し、水平ラインへ変換する水平ライン変換工程と、前記水平ライン変換工程により変換された水平ラインを描画する水平ライン描画工程と、を含むことを特徴とする。
【００１８】
この請求項５にかかる発明によれば、水平ライン変換工程によって垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力して水平ラインへ変換し、水平ライン描画工程により水平ライン変換工程で変換された水平ラインを描画することにより、垂直ラインを高速に描画することが可能になる。
【００１９】
また、請求項６にかかる発明は、前記請求項５に記載の画像処理方法を、コンピュータに実行させるプログラムを記録したことを特徴とする。
【００２０】
この請求項６にかかる発明によれば、請求項５に記載の画像処理方法を、コンピュータに実行させるプログラムをコンピュータ読み取り可能な記録媒体に記録したことにより、請求項５に記載の画像処理をコンピュータ上で実行することが可能になる。
【発明の効果】
【００２１】
本発明（請求項１）にかかる画像処理装置は、水平ライン変換手段によって垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力して水平ラインへ変換し、水平ライン描画手段により水平ライン変換手段で変換された水平ラインを描画することにより、垂直ラインを高速に描画することが可能になるため、描画途中で画像の書き込み方向が変更になった場合に高速に描画処理を行なうことができるという効果を奏する。
【００２２】
また、本発明（請求項２）にかかる画像処理装置は、請求項１において、垂直ラインデータ記憶手段に複数の垂直ラインの開始点および終点値を記憶することにより、その記憶情報を一括して読み込むことで垂直ラインから水平ラインへに変換、描画の高速処理ができるという効果を奏する。
【００２３】
また、本発明（請求項３）にかかる画像処理装置は、請求項２において、垂直方向Ｍｉｎ，Ｍａｘ値演算手段が垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値のＭＩｎのＹ値とＭａｘのＹ値を求めることにより、複数の垂直ラインの情報を簡単に記憶することができるという効果を奏する。
【００２４】
また、本発明（請求項４）にかかる画像処理装置は、請求項３において、水平パラメータ演算手段が垂直ラインデータ記憶手段により記憶された複数の垂直ラインの開始点および終点値と前記垂直方向Ｍｉｎ，Ｍａｘ値演算手段により求めたＭｉｎのＹ値からＭａｘのＹ値からＭｉｎのＹ値からＭａｘのＹ値までの水平ラインの開始Ｘ値と終点Ｘ値を求めることにより、複数の垂直ラインの情報を簡単に演算することができるという効果を奏する。
【００２５】
また、本発明（請求項５）にかかる画像処理方法は、水平ライン変換工程によって垂直ラインの開始点および終点の値を含む垂直ライン描画情報を入力して水平ラインへ変換し、水平ライン描画工程により水平ライン変換工程で変換された水平ラインを描画することにより、垂直ラインを高速に描画することが可能になるため、描画途中で画像の書き込み方向が変更になった場合に高速に描画処理を行なうことができるという効果を奏する。
【００２６】
また、本発明（請求項６）にかかるコンピュータ読み取り可能な記録媒体は、請求項５に記載の画像処理方法を、コンピュータに実行させるプログラムをコンピュータ読み取り可能な記録媒体に記録したことにより、請求項５に記載の画像処理をコンピュータ上で実行することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２７】
以下に添付図面を参照して、この発明にかかる画像処理装置および画像処理方法、並びに画像処理方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の最良な実施の形態を詳細に説明する。
【００２８】
本発明は、デジタル複写機、プリンタなどにおいて、印刷途中で画像データを回転させて印刷を行なう場合、画像の水平ラインを９０度回転させた後に複数の垂直ラインを水平ラインへ変換し、水平ラインとして描画処理を行なうことにより、垂直ラインを高速に描画するものである。以下、具体的に説明する。
【００２９】
（実施の形態）
まず、本発明による画像処理装置が搭載される画像形成装置（プリンタ）の構成および動作について説明する。図１は、本発明の実施の形態にかかる画像形成装置の機構部の構成例を示す説明図である。以下、図１の画像形成装置をカラープリンタと記述する。なお、この実施の形態ではレーザーカラープリンタを例にとるが、インクジェットプリンタなど他のカラープリンタであってもよい。
【００３０】
図１に示すカラープリンタ１００は、レーザー光書込みおよび電子写真プロセスにしたがい、４色（Ｙ（イエロー）、Ｍ（マゼンタ）、Ｃ（シアン）、Ｋ（ブラック））の画像をそれぞれ独立に配置された作像系１Ｙ、１Ｍ、１Ｃ、１Ｋで形成し、この４色の画像を記録紙に順次重ね合わせて転写し合成する４ドラムタンデムエンジンタイプの画像形成装置である。
【００３１】
各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋは、像担持体としての感光体、たとえば小径のＯＰＣ（有機感光体）ドラム２Ｙ、２Ｍ、２Ｃ、２Ｋを有し、このＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋを取り囲むように作像の上流側から帯電手段としての帯電ローラ３Ｙ、３Ｍ、３Ｃ、３Ｋと、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上の静電潜像をそれぞれ現像剤で現像してＹ、Ｍ、Ｃ、Ｋ各色のトナー像とする現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋと、クリーニング装置５Ｙ、５Ｍ、５Ｃ、５Ｋと、除電装置６Ｙ、６Ｍ、６Ｃ、６Ｋなどが配置されている。
【００３２】
各現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋの脇には、Ｙトナー、Ｍトナー、Ｃトナー、Ｋトナーをそれぞれ現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋへ所定の色のトナーを補給するトナーボトルユニット７Ｙ、７Ｍ、７Ｃ、７Ｋが配置されている。また、各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋはそれぞれ独立に配置されたレーザーによる光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋが配置され、この光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋはレーザー光源としてのレーザーダイオード（ＬＤ）光源９Ｙ、９Ｍ、９Ｃ、９Ｋや、コリメートレンズ１０Ｙ、１０Ｍ、１０Ｃ、１０Ｋ、ｆθレンズ１１Ｙ、１１Ｍ、１１Ｃ、１１Ｋ、といった光学部品、偏向走査手段としてのポリゴンミラー１２Ｙ、１２Ｍ、１２Ｃ、１２Ｋ、折り返しミラー１３Ｙ、１３Ｍ、１３Ｃ、１３Ｋ、１４Ｙ、１４Ｍ、１４Ｃ、１４Ｋなどを有する。
【００３３】
各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋは垂直に配列され、その右側には転写ベルトユニット１５がＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋに接する形で配置される。転写ベルトユニット１５は、転写ベルト１６がローラ１７〜２０に張架されて駆動源（不図示）により回転駆動される。装置下側には転写材としての記録紙が収納された給紙トレイ２１が配置され、装置上部に熱定着ローラと加圧ローラを有する定着装置２２、排紙ローラ２３および排紙トレイ２４が配設されている。
【００３４】
作像時には、各作像系１Ｙ、１Ｍ、１Ｃ、１Ｋにおいて、それぞれ、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋが駆動源(不図示)により回転駆動され、帯電ローラ３Ｙ、３Ｍ、３Ｃ、３ＫによりＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋが一様に帯電されて光書き込み装置８Ｙ、８Ｍ、８Ｃ、８Ｋが各色の画像データに基づきレーザーダイオードを変調し、そのレーザー光を偏向走査してＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋに光書込みを行なうことによって、ＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上に静電潜像が形成される。
【００３５】
このＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上の静電潜像はそれぞれ現像装置４Ｙ、４Ｍ、４Ｃ、４Ｋにより現像されてＹ、Ｍ、Ｃ、Ｋ各色のトナー像となり、一方、給紙トレイ２１から給紙ローラ２５により転写紙が水平方向に給紙されて搬送系により作像系１Ｙ、１Ｍ、１Ｃ、１Ｋ方向へ垂直に搬送される。この記録紙は、転写ベルト１６に静電的に吸着保持されて転写ベルト１６により搬送され、転写バイアス印加手段（不図示）により転写バイアスが印加されてＯＰＣドラム２Ｙ、２Ｍ、２Ｃ、２Ｋ上のＹ、Ｍ、Ｃ、Ｋ各色のトナー像を順次に重ねて合わせて記録紙に転写することでフルカラー画像が記録紙上に形成される。このフルカラー画像が形成された記録紙は、定着装置２２によりフルカラーのトナー画像が熱および圧力の作用によって定着されて排紙ローラ２３により排紙トレイ２４へ排出される。
【００３６】
つぎに、以上のように構成されたカラープリンタにおける画像処理装置の構成および動作について説明する。図２は、図１における画像形成装置の電装・制御系の構成を示すブロック図である。この電装・制御系は、カラープリンタ１００全体の制御を行なうＣＰＵ１０１、メモリコントローラ１０３に接続されＣＰＵ１０１とメモリコントローラ１０３間のインターフェイス制御を実行するＣＰＵＩ／Ｆ１０２、メインメモリ１０４を制御しＣＰＵ１０１のローカルバス、復号化装置、画像処理装置、符号化装置とメインメモリとの転送を制御するメモリコントローラ１０３を備えている。
【００３７】
また、ＣＰＵ１０１からの描画コマンドを受け取りメインメモリ１０４のバンドを描画する垂直ライン描画装置１０５、メインメモリ１０４の２値バンドデータを符号化し、メインメモリ１０４へ符号を転送する符号化装置１０６、符号化装置１０６により符号化された符号を受け取り、各版を復号化し、Ｃ（シアン），Ｍ（マゼンタ），Ｙ（イエロー）、Ｋ（ブラック）版のエンジンコントローラへ転送する復号化装置１０７、復号化装置１０７から画像データを受け取って各版のプリンタエンジン１０９に転送するエンジンコントローラ１０８、Ｃ，Ｍ，Ｙ，Ｋ各版の画像を形成するプリンタエンジン１０９(図１参照)を備えている。
【００３８】
また、ネットワークに接続されネットワークから各種データやコマンドなどを受け取ってメモリコントローラ１０３を介して各種のコントローラに接続されている通信コントローラ１１０、プリント出力する画像やＣＰＵ１０１の制御プログラムや各種データなどを格納するメインメモリ１０４、ＲＯＭ１１２、パネルコントローラ１１３などと、ＣＰＵ１０１、メインメモリ１０４とのインターフェイス制御を実行するローカルＩ／Ｆ１１１、文字などのフォント情報やＣＰＵ１０１の制御プログラムなどを格納するＲＯＭ１１２、オペレーションパネル１１４を制御するパネルコントローラ１１３、ユーザーの入力操作をプリンタへ知らせるオペレーションパネル１１４を備えている。
【００３９】
図３は、本発明の実施の形態にかかる画像処理の流れを示すブロック図である。図におて、ＣＰＵ１０１は、垂直ライン描画装置１０５へバンドの描画コマンドを送る。垂直ライン描画装置１０５は、ＣＰＵ１０５からのコマンドにしたがってメインメモリ１０４のバンドメモリ領域１０４ａへ垂直ラインを描画する。メインメモリ１０４は、垂直ライン描画装置１０５により描画されたバンドデータを記憶する。符号化装置１０６は、メインメモリ１０４のバンドメモリ領域１０４ａのバンドデータを読み込んで符号化し、メインメモリ１０４の符号ページメモリ領域１０４ａへ符号を送る。メインメモリ１０４は、符号化装置１０６から符号を受け取り記憶する。復号化装置１０７は、メインメモリ１０４に記憶された各バンドごと符号からなる１ページ分の符号を読み込んで復号し、エンジンコントローラへ転送する。エンジンコントローラからの画像データをプリンタエンジンでプリント出力する。
【００４０】
図４は、本発明の実施の形態にかかる画像処理の概念を示すブロック図である。まず、ＣＰＵ１０１により、バンドの描画コマンドを生成し、垂直ライン描画時に垂直ライン描画装置１０５へ転送する。垂直ライン描画装置１０５によりメインメモリ１０４のバンドメモリ領域１０４ａへ垂直ラインを描画する。符号化装置１０６により、メインメモリ１０４のバンドメモリ領域１０４ａへバンドを読み込んで符号化し、メインメモリ１０４の符号ページメモリ領域１０４ｂへ符号を書き込む。メインメモリ１０４は、バンドの画像データ、符号化装置１０６からの符号を１ページ分を記憶する。復号化装置１０７により、プリンタエンジン１０９に同期してメインメモリ１０４の符号ページメモリ領域１０４ｂの符号を復号し エンジンコントローラ１０８へ転送する。エンジンコントローラ１０８は、復号化装置１０７から受け取った階調処理後の画像データをプリンタエンジン１０９へ転送する。プリンタエンジン１０９によって画像データが記録紙に印字出力される。
【００４１】
図５は、図２におけるメインメモリ１０４のフォーマット例を示す説明図である。バンドメモリ領域１０４ａは、バンドデータを格納する。符号ページメモリ領域１０４ｂは、符号化された１ページ分のバンドの符号データを複数ページ分格納する。プログラム領域１０４ｐは、各種のＣＰＵ１０１のプログラムを格納する領域である。ワーク領域１０４は、処理途中のデータなどを格納する。
【００４２】
図６は、図２における画像処理の全体の流れを示すブロック図である。図において、ＣＰＵ１０１はメインメモリ１０の垂直ライン描画情報格納領域に垂直ライン描画情報を書き込む。垂直ライン描画装置１０５は、メインメモリ１０４の垂直ライン描画情報納領域の垂直ライン描画情報を読み込む。垂直ライン描画装置１０５は、メインメモリ１０４のバンドメモリ領域１０４ａへ垂直ライン描画を行なう。符号化装置１０６は、完成したバンドデータをメインメモリ１０４から読み込み符号化を行ない、その符号化したバンドデータをメインメモリ１０４の符号ページメモリ領域１０４ｂへ送る。復号化装置１０７は、完成されたページ符号データをメインメモリ１０４から読み込んで復号し、その復号したページデータをエンジンコントローラ１０８へ送る。エンジンコントローラ１０８は、プリンタエンジン１０９を制御しプリント出力を行なう。
【００４３】
図７は、図２における垂直ライン描画装置１０５の構成および処理例を示すブロック図である。ここでは、垂直ライン描画装置１０５として、垂直ライン→水平ライン変換装置１２１、階調処理装置１２２について示しており、他の構成は図９で後述する。
【００４４】
垂直ライン→水平ライン変換装置１２１は、ＣＰＵ１０１からの垂直ライン描画情報１３０を受け取り、水平方向に垂直→水平変換画素数分ごとの垂直ラインを受け取って複数の水平ラインへ変換し、階調処理装置１２１へ転送する。このとき、垂直ライン描画情報１３０は、図示するように描画開始点Ｘ,Ｙ情報と複数の垂直ラインの開始Ｙ値と終点Ｙ値からなる。階調処理装置１２２は、垂直ライン→水平ライン変換装置１２１からの水平ラインの開始Ｘ値と終点Ｘ値の情報から階調処理を行ない、バンドメモリ領域１０４ａへ描画していく。バンドメモリ領域１０４ａは、階調処理後の画像データを記憶する。この垂直ライン→水平ライン変換装置１２１による変換処理の様子を図８に示す。
【００４５】
図９は、図２における垂直ライン描画装置１０５の詳細構成を示すブロック図である。図に示すように、この垂直ライン描画装置１０５は、メモリコントローラＩ／Ｆ１２０、垂直ライン→水平ライン変換装置１２１、階調処理層津１２２、読み込みアドレス生成装置１２３、書き込みアドレス生成装置１２５、パラメータ記憶装置１２６を備えている。
【００４６】
垂直ライン→水平ライン変換装置１２１は、ＣＰＵ１０１から垂直ライン描画情報１３０を受け取り、図８に示すように水平方向に垂直→水平変換画素数分ごとの垂直ラインを受け取り複数の水平ラインへ変換し、階調処理装置１２２へ転送する。読み込みアドレス生成装置１２３は、垂直ライン→水平ライン変換装置１２１が処理する垂直ライン描画情報１３０をメインメモリ１０４の垂直ライン描画情報格納領域の垂直ライン描画情報のアドレスを生成する。階調処理装置１２２は、垂直ライン→水平ライン変換装置１２１から、水平ラインの開始Ｘ値と終点Ｘ値とパラメータ記憶装置１２６から色情報を受け取り、Ｃ，Ｍ，Ｙ，Ｋ版のデイザ処理を行ない、メモリコントローラＩ／Ｆ１０３をかいしてメインメモリ１０４のバンドメモリ領域１０４ａへ描画処理を行なう。書き込みアドレス生成装置１２５は、階調処理装置１２２のＣ，Ｍ，Ｙ，Ｋ版のデータに同期してメインメモリ１０４のバンドメモリ領域１０４ａのメモリアドレスを生成する。パラメータ記憶装置で１２６は、垂直ライン描画装置が必要なパラメータをＣＰＵ１０１から設定され、記憶している。コントローラ１２７は、この垂直ライン描画装置１０５の全体を制御する。
【００４７】
図１０は、図９における垂直ライン→水平ライン変換装置１２１の詳細構成を示すブロック図である。図に示すように、この垂直ライン→水平ライン変換装置１２１は、垂直ライン描画情報読み込み装置１３１、垂直ラインデータ格納装置１３２、垂直方向Ｍｉｎ，Ｍａｘ値演算装置１３３、水平ラインパラメータ演算装置１３４を備えている。
【００４８】
垂直ライン描画情報読み込み装置１３１は、垂直ライン描画情報１３０を受け取り複数の垂直ラインの開始Ｙ値と終点Ｙ値を垂直ラインデータ格納装置１３２へ転送する。垂直ラインデータ格納装置１３２は、"垂直→水平変換画素数”分の垂直ラインデータを格納し垂直方向Ｍｉｎ，Ｍａｘ値演算装置１３３へ転送する。垂直方向Ｍｉｎ，Ｍａｘ値演算装置１３３は、垂直ラインデータ格納装置１３２の"垂直→水平変換画素数”の垂直ラインデータをＭｉｎＹ値とＭａｘＹ値を求め、水平ラインパラメータ演算装置１３４へ転送する。水平ラインパラメータ演算装置１３４は、垂直ライン描画情報読み込み装置１３１から描画開始Ｘ値と描画開始Ｙ値を受け取り、水平ラインごと先頭アドレス演算を行ない、垂直ラインデータ格納装置１３２から"垂直→水平変換画素数”分の垂直ラインデータ受け取り、垂直方向Ｍｉｎ，Ｍａｘ値演算装置１３３からＭｉｎＹ値とＭａｘＹ値を受け取り、ＭｉｎＹ値から、ＭａｘＹ値までの水平ラインの開始Ｘ値と終点Ｘ値を求める。
【００４９】
図１１は、図１０における垂直ラインデータ格納装置１３２の詳細構成を示すブロック図である。図示するように、この垂直ラインデータ格納装置１３２は、垂直開始Ｙ値それぞれを格納するメモリ１３５〜１３８、垂直終点Ｙ値それぞれを格納するメモリ１３９〜１４２を備えている。
【００５０】
図１２は、図１０における垂直方向Ｍin，Ｍaｘ値演算装置１３３の詳細構成を示すブロック図である。図示するように、この垂直方向Ｍin，Ｍaｘ値演算装置１３３は、垂直開始Ｙ値それぞれを入力し垂直方向Ｍｉｎ値を出力する垂直方向Ｍｉｎ演算装置１４５、垂直終点Ｙ値それぞれを入力し垂直方向Ｍａｘ値を出力する垂直方向Ｍａｘ演算装置１４６を備えている。
【００５１】
図１３は、図１０における水平ラインパラメータ演算装置１３４の処理動作を示すフローチャートである。ここで、ＩＹは現在求める水平ラインのＹ値であり、ＩＸＳは水平ラインの開始Ｘ値であり、１ＸＥは終点Ｘ値である。まず、ＩＸＳを垂直→水平画素数、ＩＸＥを０とし（ステップＳ１）、ＩＹをＭｉｎＹ値とする（ステップＳ２）。続いて、IＸＳを求めるために、垂直ラインの０番目〜"垂直→水平変換画素数"まで調べるが、０番目が左端であるために、０番目、垂直ラインがＩＹに含まれるかを判断し、含まれた点がＩＸＳ（最も左端のＸ値）となる（ステップＳ３〜Ｓ１０）。続いて、ＩＸＥを求めるために、垂直ラインの"垂直→水平変換画素数”〜０番目まで調べるが、"垂直→水平変換画素数”番目が右端であるために、垂直ラインがＩＹに含まれるかを判断し、含まれた点がＩＸE（最も右端のＸ値）となる（ステップＳ１１〜Ｓ１６）。続いて、水平ラインの幅（ＲＵＮＬＥＮＧ値）を求め（ステップＳ１７）、その先頭アドレスを求める（ステップＳ１８）。そして、このＲＵＮＬＥＮＧ値および先頭アドレス値を階調処理装置１２２へ転送する（ステップＳ１９）。この後、ＩＹを１つ進め（ステップＳ２０）、上記処理をＭaｘＹ値まで繰り返し実行する（ステップＳ２１）。
【００５２】
図１４は、図９における階調処理装置１２２の詳細構成を示すブロック図である。図示するように、この階調処理装置１２２は、しきい値マトリックス記憶装置１５１、しきい値マトリックス記憶装置１５２、データ分配装置１５３、比較装置１５４〜１５７、各色の固定長データ生成装置１５８〜１６１、各色のＦＩＦＯ１６２〜１６５、ＭＵＸ（マルチプレクサ）１６６、ＣＭＹＫアドレス生成装置１６７、ＭＵＸ（マルチプレクサ）１６８、コントローラ１６９を備えている。
【００５３】
しきい値マトリックス記憶装置アドレス生成装置１５１は、しきい値のサイズを受け取ってしきい値マトリックス記憶装置１５２のアドレスを生成する。しきい値マトリックス記憶装置１５２は、各種のしきい値マトリックスを格納する。データ分配装置１５３は、しきい値マトリックス記憶装置１５２からＣ，Ｍ，Ｙ，Ｋ版のしきい値を受け取り、各版の比較装置１５４〜１５７へ値を分配する。
【００５４】
比較装置１５４は、データ分配装置１５３からのＣ版のしきい値とパラメータ記憶装置１２６（図９参照）からのＣ版の画素データを受け取って比較し、Ｃ版の階調処理後のデータを作成する。比較装置１５５は、データ分配装置１５３からのＭ版のしきい値とパラメータ記憶装置１２６（図９参照）からのＭ版の画素データを受け取って比較し、Ｍ版の階調処理後のデータを作成する。比較装置１５６は、データ分配装置１５３からのＹ版のしきい値とパラメータ記憶装置１２６（図９参照）からのＹ版の画素データを受け取って比較し、Ｙ版の階調処理後のデータを作成する。比較装置１５‘は、データ分配装置１５３からのＫ版のしきい値とパラメータ記憶装置１２６（図９参照）からのＫ版の画素データを受け取って比較し、Ｋ版の階調処理後のデータを作成する。
【００５５】
Ｃ固定長データ生成装置１５８は、比較装置１５４からのＣ版の階調処理後のデータを順次受け取り、固定長データへ変換する。Ｍ固定長データ生成装置１５９は、比較装置１５５からのＭ版の階調処理後のデータを順次受け取り、固定長データへ変換する。Ｙ固定長データ生成装置１６０は、比較装置１５６からのＹ版の階調処理後のデータを順次受け取り、固定長データへ変換する。Ｋ固定長データ生成装置１６１は、比較装置１５７からのＫ版の階調処理後のデータを順次受け取り、固定長データへ変換する。
【００５６】
Ｃ−ＦＩＦＯ１６２は、Ｃ固定長データ生成装置１５８からのデータを受け取り一時格納する。Ｍ−ＦＩＦＯ１６３は、Ｍ固定長データ生成装置１５９からのデータを受け取り一時格納する。Ｙ−ＦＩＦＯ１６４は、Ｙ固定長データ生成装置１６０からのデータを受け取り一時格納する。Ｋ−ＦＩＦＯ１６５は、Ｋ固定長データ生成装置１６１からのデータを受け取り一時格納する。ＭＵＸ１６６は、各版のＦＩＦＯからのデータを受け取り、順次選択してメモリコントローラＩ／Ｆ１２０へ転送する。ＣＭＹＫアドレス生成装置で１６７は、垂直ライン→水平ライン変換装置１２１からの物理アドレスである先頭アドレスに各版の原点アドレスを加算し、各版の先頭アドレスを求め、ＭＵＸ１６６へ転送する。ＭＵＸ１６６は、各版の先頭アドレスからメインメモリに書き込む階調処理後の画像データの先頭アドレスを選択し、書き込みアドレス生成装置１２５へ転送する。コントローラで１６９は、この階調処理装置１１２の全体を制御する。
【００５７】
図１５は、図１４にように構成された階調処理装置１２２の処理動作を示すフローチャートである。この処理動作はコントローラ１６９によって実行される。図において、ＷＲＵＮを０にし（ステップＳ３１）、データ分配装置１５３からのしきい値（Ｃ，Ｍ，Ｙ，Ｋ）データとＣ，Ｍ，Ｙ，Ｋデータを比較装置１５４〜１５７で比較し、２値化する（ステップＳ３２）。続いて、２値化（Ｃ，Ｍ，Ｙ，Ｋ）データを固定長データに追加し（ステップＳ３３）、固定長まで成長したか否かを判断する（ステップＳ３４）。ここで固定長まで成長したならば、Ｃ，Ｍ，Ｙ，Ｋの固定長データをＦＩＦＯで書込む（ステップＳ３５）。
【００５８】
続いて、ディザのアドレスを水平方向にカウントアップし（ステップＳ３６）、ディザの水平方向のアドレスが水平方向のサイズを超えたか否かを判断する（ステップＳ３７）。ここでディザの水平方向のアドレスが水平方向のサイズを超えたと判断した場合、ディザのアドレスの水平方向のアドレスをクリアする（ステップＳ３８）。さらにＷＲＵＮ＜ＲＵＮであるかを判断し（ステップＳ３９）、ＷＲＵＮ＜ＲＵＮでなければＷＲＵＮを１つ進め（ステップＳ４０）、ステップＳ３２に戻る。
【００５９】
一方、ＷＲＵＮ＜ＲＵＮである場合には、Ｃ，Ｍ，Ｙ，ＫのＦＩＦＯ中の階調処理後のデータを先頭アドレスの示すメインメモリのバンドメモリ領域へ順次書き込む（ステップＳ４１）。続いて、固定長まで達していないデータがあるか否かを判断し（ステップＳ４２）、固定長まで達していないデータがある場合には、固定長まで達していない階調処理後のデータをメインメモリのバンドメモリ領域へ書き込む（ステップＳ４３）。
【００６０】
図１６は、図１４における各色の固定長データ生成装置１５８〜１６１の詳細構成を示すブロック図である。図示するように、固定長データ生成装置１５８〜１６１は、シフタ１７０、ＯＲ装置１７２、レジスタ１７３、レジスタ１７４、加算器１７５、レジスタ１７６を備えている。
【００６１】
シフタ１７０は、比較装置１５４〜１５７からの２値データを受け取り、シフト値レジスタの値だけシフトしＯＲ装置１７２へ転送する。ＯＲ装置１７２は、シフトした２値データをＯＲ処理し、レジスタ１７３，１７４へ送る。レジスタ１７３は、ＯＲ装置でＯＲ処理され、追加された２値データを格納する。レジスタ１７４は、固定長に達したデータを格納する。加算器１７５は、比較装置１５４〜１５７から２値データを受けるごと"１"を加算していく。レジスタ１７６は、シフト値を格納する。
【００６２】
この実施の形態による画像処理例を図１７に示す。この図１７に示すように水平ラインを９０度回転させた後に、複数の垂直ラインを水平ラインへ変換し、水平ラインとして描画処理を行なうために垂直ラインを高速に描画することが可能である。
【００６３】
ところで、これまで説明してきた画像処理方法（動作）を、プログラム化し、コンピュータ読み取り可能な記録媒体に記録し、コンピュータ上で実行することもできる。また、画像処理方法の一部をネットワーク上に有し、通信回線を通して実現することもできる。
【００６４】
すなわち、この実施の形態で説明した画像処理方法は、図１８に示すように、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータ（ＣＰＵ３０）で実行することにより実現される。このプログラムは、キーボード３５の操作などにより、メモリ３１、ハードディスク３４、フレキシブルディスク３７、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ−Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３６、ＭＯ（Ｍａｇｎｅｔｏ  Ｏｐｔｉｃａｌ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータ（ＣＰＵ３０）によって記録媒体から読み出し、必要に応じて表示装置３３に表示することによって実行される。また、必要に応じてこの画像処理方法のデータを通信装置３２から外部装置に送受信することも可能である。
【００６５】
また、このプログラムは、図１９に示すように、上記記録媒体を介して、インターネット３０などのネットワークによってパーソナルコンピュータなどの装置４１〜４３に配布することができる。
【００６６】
すなわち、このプログラムは、たとえばコンピュータに内蔵されている記録媒体としてのハードディスクに、あらかじめインストールした状態で提供することができる。プログラムは記録媒体に一時的あるいは永続的に格納し、コンピュータにユニットとして組み込んだり、あるいは着脱式の記録媒体として利用することで、パッケージソフトウェアとして提供することができる。
【００６７】
記録媒体としては、たとえば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤ、磁気ディスク、半導体メモリなどが利用できる。
【００６８】
プログラムは、ダウンロードサイトから、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネットといったネットワークを介して、有線または無線でコンピュータに転送し、そのコンピュータにおいて、内蔵するハードディスクなどの記憶装置にダウンロードさせるようにすることができる。
【産業上の利用可能性】
【００６９】
以上のように、本発明にかかる画像処理装置および画像処理方法、並びに画像処理方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体は、たとえばデジタル複写機、プリンタなどに有用であり、特に、印刷途中で画像データを回転させる場合、水平ラインを９０度回転させた後に複数の垂直ラインを水平ラインへ変換し、水平ラインとして描画処理を行なうことにより、垂直ラインを高速に描画するシステムなどに適している。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施の形態にかかる画像形成装置の機構部の構成例を示す説明図である。
【図２】図２は、図１における画像形成装置の電装・制御系の構成を示すブロック図である。
【図３】本発明の実施の形態にかかる画像処理の流れを示すブロック図である。
【図４】本発明の実施の形態にかかる画像処理の概念を示すブロック図である。
【図５】図２におけるメインメモリのフォーマット例を示す説明図である。
【図６】図２における画像処理の全体の流れを示すブロック図である。
【図７】図２における垂直ライン描画装置の構成および処理例を示すブロック図である。
【図８】図２の垂直ライン描画装置による複数の水平ライン変換の様子を示す説明図である。
【図９】図２における垂直ライン描画装置の詳細構成を示すブロック図である。
【図１０】図９における垂直ライン→水平ライン変換装置の詳細構成を示すブロック図である。
【図１１】図１０における垂直ラインデータ格納装置の詳細構成を示すブロック図である。
【図１２】図１０における垂直方向Ｍin，Ｍaｘ値演算装置の詳細構成を示すブロック図である。
【図１３】図１０における水平ラインパラメータ演算装置の処理動作を示すフローチャートである。
【図１４】図９における階調処理装置の詳細構成を示すブロック図である。
【図１５】図１４にように構成された階調処理装置の処理動作を示すフローチャートである。
【図１６】図１４における各色の固定長データ生成装置の詳細構成を示すブロック図である。
【図１７】本発明の実施の形態にかかる画像処理の手順を示す説明図である。
【図１８】本発明の実施の形態にかかる画像処理方法をコンピュータに実行させる例を示すブロック図である。
【図１９】本発明の実施の形態にかかる画像処理方法をネットワーク上からダウンロードして実行させる例を示すブロック図である。
【図２０】従来におけるネットワークプリンタの構成例を示す説明図である。
【図２１】従来におけるプリンタの画像出力時に記録紙の向きが変更になった場合のプリント処理を示す説明図である。
【図２２】図２１の記録紙の向きを変更する場合の画像回転処理を示す説明図である。
【図２３】図２１の記録紙の向きを変更する場合の画像回転処理における垂直ラインの１ライン目の処理を示す説明図である。
【図２４】図２１の記録紙の向きを変更する場合の画像回転処理における垂直ラインの２ライン目の処理を示す説明図である。
【図２５】図２１の記録紙の向きを変更する場合の画像回転処理における垂直ラインの６ライン目の処理を示す説明図である。
【符号の説明】
【００７１】
１００  カラープリンタ
１０１  ＣＰＵ
１０３  メモリコントローラ
１０４  メインメモリ
１０４ａ  バンドメモリ領域
１０４ｂ  符号ページメモリ領域
１０５  垂直ライン描画装置
１２１  垂直ライン→水平ライン変換装置
１２２  階調処理装置
１３０  垂直ライン描画情報
１３２  垂直ラインデータ格納装置
１３３  垂直方向Ｍin，Ｍaｘ値演算装置
１３４  水平ラインパラメータ演算装置
【図１】
2005262627.tif 000003
【図２】
2005262627.tif 000004
【図３】
2005262627.tif 000005
【図４】
2005262627.tif 000006
【図５】
2005262627.tif 000007
【図６】
2005262627.tif 000008
【図７】
2005262627.tif 000009
【図８】
2005262627.tif 000010
【図９】
2005262627.tif 000011
【図１０】
2005262627.tif 000012
【図１１】
2005262627.tif 000013
【図１２】
2005262627.tif 000014
【図１３】
2005262627.tif 000015
【図１４】
2005262627.tif 000016
【図１５】
2005262627.tif 000017
【図１６】
2005262627.tif 000018
【図１７】
2005262627.tif 000019
【図１８】
2005262627.tif 000020
【図１９】
2005262627.tif 000021
【図２０】
2005262627.tif 000022
【図２１】
2005262627.tif 000023
【図２２】
2005262627.tif 000024
【図２３】
2005262627.tif 000025
【図２４】
2005262627.tif 000026
【図２５】
2005262627.tif 000027