(57)【特許請求の範囲】
【請求項１】
ホストコンピュータから入力されるページ記述言語で表現された画像データを主走査方向の直線ベクトルに展開して、直線ベクトルの始点及び終点を表わす２次元座標のアドレスと書き込む画像データの濃度値を発生する処理装置と、蓄積する画像の色ごとに独立に構成される２値又は多値の画像メモリと、前記処理装置により発生された前記各データに基づいて前記画像メモリに１ドットずつ画像データを書き込んで描画する画像描画装置とを有する画像処理装置において、
前記画像描画装置に、
前記処理装置から発生された２次元座標のアドレスを１次元のアドレスに変換するアドレス制御手段と、
スキャナから読み込んだ画像データと前記ホストコンピュータから入力された画像データとを切り替えて前記画像メモリに描画する描画手段とを備え、
該描画手段が、前記スキャナから読み込んだ画像データと、前記ホストコンピュータから入力された画像データの直線ベクトルを前記画像メモリに描画する際には、前記アドレス制御手段によって変換された１次元のアドレスに基づいて描画するようにしたことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置において、
前記画像メモリの有している階調数が前記スキャナで読み込んだ画像データの階調数より少ない構成にしたことを特徴とする画像処理装置。
【請求項３】
請求項２記載の画像処理装置において、
前記画像メモリは少なくとも３色分独立して持ち、該画像メモリの有している階調数が前記スキャナで読み込んだ画像データの階調数より少ない場合には、該スキャナで読み込む面積を該画像データの原稿サイズに比べて小さくする手段を設けたことを特徴とする画像処理装置。
【請求項４】
請求項２記載の画像処理装置において、
前記画像メモリは少なくとも３色分独立して持ち、該画像メモリの有している階調数が前記スキャナで読み込んだ画像データの階調数より少ない場合には、該スキャナで読み込んだ画像データにディザ処理を施す手段を設けたことを特徴とする画像処理装置。
【請求項５】
請求項１記載の画像処理装置において、
前記画像描画装置が、主走査方向のアドレスを発生する主走査方向カウンタと、副走査方向のアドレスを発生する副走査方向カウンタとを有し、
前記アドレス制御手段が、前記各カウンタによって発生された主走査及び副走査の２次元で表わされたアドレスを前記画像メモリに出力する１次元のアドレスに変換する手段であることを特徴とする画像処理装置。
【請求項６】
請求項５記載の画像処理装置において、
前記画像描画装置に、矩形領域を表わす主走査方向の開始座標を記憶しておく主走査方向開始レジスタと、該矩形領域を表わす主走査方向の終了座標を記憶しておく主走査方向終了レジスタと、該矩形領域を表わす副走査方向の開始座標を記憶しておく副走査方向開始レジスタと、該矩形領域を表わす副走査方向の終了座標を記憶しておく副走査方向終了レジスタと、前記主走査方向カウンタと前記主走査方向終了レジスタとを比較する主走査方向比較器と、前記副走査方向カウンタと前記副走査方向終了レジスタとを比較する副走査方向比較器とを設けたことを特徴とする画像処理装置。
【請求項７】
請求項６記載の画像処理装置において、
前記画像描画装置に、前記画像メモリのリードモディファイライトを制御し、且つ前記画像メモリに以前蓄えられていた画像データと前記スキャナから読み込んだ画像データとを重畳して、前記画像メモリに書き込む背景画像保持装置を設けたことを特徴とする画像処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は直線ベクトルのデータを描画できる画像処理装置に関し、特にホストコンピュータからのページ記述言語（ベクトル）で表現された画像データ（ベクトルデータ）とスキャナからの画像データとを描画するのに１つの画像メモリを共用する技術に関する。
【０００２】
【従来の技術】
直線ベクトルによる画像処理装置として、例えば特開平２−１８１８８６号公報にみられるようなものがあり、このような画像処理装置を有する情報システムの動作を図１４を参照して説明する。
この情報システムは、ホストコンピュータ１においてポストスクリプトに代表されるページ記述言語により作成した画像データを画像メモリ２に描画するものである。
【０００３】
その画像データ（ベクトルデータ）は全てベクトルで表現されており、記述されたベクトルをＣＰＵ３が全て主走査方向の直線ベクトルに展開し直し、その直線ベクトルの始点，終点の座標及び濃度の値を先入れ先出しメモリ（以下「ＦＩＦＯ」という）４に一時格納する。
【０００４】
ＦＩＦＯ４に格納された各データは、主走査方向開始アドレスレジスタ（以下「ＸＳレジスタ」という）５、主走査方向終了アドレスレジスタ（以下「ＸＥレジスタ」という）６、副走査方向開始アドレスレジスタ（以下「ＹＳレジスタ」という）７、濃度レジスタ（以下「ＲＧＢレジスタ」という）８にそれぞれラッチされる。
【０００５】
ＣＰＵ３から描画命令が出されると、メモリコントローラ９はライト信号を発生して、画像メモリ２上のＸＳレジスタ５とＹＳレジスタ７とによって指定されるアドレスにＲＧＢレジスタ８によって指定される濃度で書き込みを行なう。また、その書き込み動作開始と共に主走査方向アドレスカウンタ（以下「Ｘアドレスカウンタ」という）１０がカウント動作に入り、アドレス（ＸＳレジスタ５からのロード値）をインクリメント（＋１）していく。
【０００６】
その後、アドレスがＸＥレジスタ６の値と同じになると、主走査方向比較器であるＸコンパレータ１１が描画終了ドットまできたことをメモリコントローラ９に伝える。これにより、直線ベクトルの描画が行なえる。そして、以上の動作を繰り返すことにより、ホストコンピュータ１で作成した１ページ分の画像データを画像メモリ２に描画することができる。
【０００７】
【発明が解決しようとする課題】
しかしながら、上述のような従来の画像処理装置において、画像メモリに蓄えることができる画像データはホストコンピュータからＣＰＵが受け取った画像データだけであるため、スキャナで読み込んだ画像データを印字するためには上記のような画像メモリの他にスキャナ用の画像メモリを持たなくてはならず、コストが上がるという問題があった。
【０００８】
この発明は上記の点に鑑みてなされたものであり、ホストコンピュータからのページ記述言語で表現された画像データとスキャナからの画像データとを１つの画像メモリを共用して少ないメモリ容量で描画できるようにすることを目的とする。
【０００９】
【課題を解決するための手段】
この発明は上記の目的を達成するため、ホストコンピュータから入力されるページ記述言語で表現された画像データを主走査方向の直線ベクトルに展開して、直線ベクトルの始点及び終点を表わす２次元座標のアドレスと書き込む画像データの濃度値を発生する処理装置と、蓄積する画像の色ごとに独立に構成される２値又は多値の画像メモリと、処理装置により発生された各データに基づいて画像メモリに１ドットずつ画像データを書き込んで描画する画像描画装置とを有する画像処理装置において、画像描画装置に、処理装置から発生された２次元座標のアドレスを１次元のアドレスに変換するアドレス制御手段と、スキャナから読み込んだ画像データとホストコンピュータから入力された画像データとを切り替えて画像メモリに描画する描画手段とを備え、その描画手段が、スキャナから読み込んだ画像データと、ホストコンピュータから入力された画像データの直線ベクトルを画像メモリに描画する際には、アドレス制御手段によって変換された１次元のアドレスに基づいて描画するようにしたものである。
【００１０】
さらに、画像メモリの有している階調数がスキャナで読み込んだ画像データの階調数より少ない構成にしてもよい。
また、画像メモリは少なくとも３色分独立して持ち、その画像メモリの有している階調数がスキャナで読み込んだ画像データの階調数より少ない場合には、そのスキャナで読み込む面積をその画像データの原稿サイズに比べて小さくする手段を設けるとよい。
【００１１】
あるいは、画像メモリは少なくとも３色分独立して持ち、その画像メモリの有している階調数がスキャナで読み込んだ画像データの階調数より少ない場合には、そのスキャナで読み込んだ画像データにディザ処理を施す手段を設けてもよい。
さらに、画像描画装置に、主走査方向のアドレスを発生する主走査方向カウンタと、副走査方向のアドレスを発生する副走査方向カウンタとを備え、アドレス制御手段を、その各カウンタによって発生された主走査及び副走査の２次元で表わされたアドレスを画像メモリに出力する１次元のアドレスに変換する手段とすればよい。
【００１２】
この場合、画像描画装置に、矩形領域を表わす主走査方向の開始座標を記憶しておく主走査方向開始レジスタと、その矩形領域を表わす主走査方向の終了座標を記憶しておく主走査方向終了レジスタと、その矩形領域を表わす副走査方向の開始座標を記憶しておく副走査方向開始レジスタと、その矩形領域を表わす副走査方向の終了座標を記憶しておく副走査方向終了レジスタと、主走査方向カウンタと主走査方向終了レジスタとを比較する主走査方向比較器と、副走査方向カウンタと副走査方向終了レジスタとを比較する副走査方向比較器とを設けるとよい。
【００１３】
さらに、画像描画装置に、画像メモリのリードモディファイライトを制御し、且つ画像メモリに以前蓄えられていた画像データとスキャナから読み込んだ画像データとを重畳して、画像メモリに書き込む背景画像保持装置を設けるとよい。
【００１４】
【作用】
この発明の画像処理装置によれば、画像描画装置が、スキャナから読み込んだ画像データとホストコンピュータから入力された画像データとを切り替えて共通の画像メモリに描画するので、スキャナ用の画像メモリを持つ必要がなくなる。しかも、スキャナから読み込んだ画像データと、ホストコンピュータから入力された画像データの直線ベクトルを画像メモリに描画する際には、１次元のアドレスに基づいて描画するので、その画像メモリに少ないメモリ容量で描画できる。したがって、低コストを実現できる。
【００１５】
さらに、画像メモリの有している階調数がスキャナで読み込んだ画像データの階調数より少ない構成にすることにより、スキャナから読み込んだ画像データの階調が画像メモリの持つ階調数よりも大きい場合でも、そのスキャナからの画像データとホストコンピュータから入力された画像データを共通の画像メモリに蓄えることができる。
【００１６】
また、画像メモリは少なくとも３色分独立して持ち、その画像メモリの有している階調数がスキャナで読み込んだ画像データの階調数より少ない場合には、そのスキャナで読み込む面積をその画像データの原稿サイズに比べて小さくしたり、スキャナで読み込んだ画像データにディザ処理を施すようにすれば、画像品質も向上する。
【００１７】
さらにまた、上述した主走査方向カウンタ及び副走査方向カウンタからそれぞれ発生される主走査及び副走査の２次元で表わされたアドレスを画像メモリに出力する１次元のアドレスに変換するようにすれば、画像メモリに画像データを書き込む際のアドレスとスキャナから読み込んだ画像データのアドレスとが同じアドレス構成になるので、スキャナで読み込んだ画像データとホストコンピュータから出力された画像データとを合成して印字することもできるようになり、画像処理装置の機能が向上する。
【００１８】
また、上述した主走査方向開始レジスタ，主走査方向終了レジスタ，副走査方向開始レジスタ，副走査方向終了レジスタ，主走査方向比較器，及び副走査方向比較器を設けるようにすれば、スキャナから読み込んだ画像データを画像メモリの任意の矩形領域に書き込むこともできるので、その画像データをホストコンピュータから出力された画像データと合成して印字することができ、画像処理装置の機能がさらに向上する。
【００１９】
さらに、画像メモリのリードモディファイライトを制御し、且つ画像メモリに以前蓄えられていた画像データとスキャナから読み込んだ画像データとを重畳して画像メモリに書き込むことにより、画像データの合成処理を確実に行なえる。
【００２０】
【実施例】
以下、この発明の実施例を図面に基づいて具体的に説明する。
図１はこの発明を実施した画像処理装置を有する情報システムを機能的に示すブロック構成図、図２及び図３はこの画像描画装置２０の詳細を示すブロック構成図であり、図１４と対応する部分には同一符号を付している。
【００２１】
この情報システムは、ホストコンピュータ１と、画像メモリ２，ＣＰＵ３，及び画像描画装置２０からなる画像処理装置と、原稿の画像データを読み込むスキャナ１５とを備えている。
画像描画装置２０は、図１に示すようにＣＰＵ３からの各データを一時的に格納するＦＩＦＯ４の他に、この発明に係わるアドレス制御部２１，データ切替部２２，背景保持部２３を備えている。
【００２２】
具体的には図２に示すように、主走査方向の描画開始アドレス（開始座標）を格納しておくＸＳレジスタ５と、主走査方向の描画終了アドレス（終了座標）を格納しておくＸＥレジスタ６と、副走査方向の描画開始アドレスを格納しておくＹＳレジスタ７と、副走査方向の描画終了アドレスを格納しておく副走査方向終了アドレスレジスタ（以下「ＹＥレジスタ」という）３１と、色彩の濃度値を示すＣＭＹＫデータを格納しておくＣＭＹＫレジスタ３２とを備えている。
【００２３】
また、主走査方向の描画アドレスを発生（指定）するＸアドレスカウンタ１０と、副走査方向の描画アドレスを発生するＹアドレスカウンタ３３と、Ｘアドレスカウンタ１０及びＹアドレスカウンタ３３を制御するアドレスコントローラ３４と、乗数を格納する乗数レジスタ３５と、Ｙアドレスカウンタ３３のカウント値（副走査方向の描画アドレス）と乗数レジスタ３５の乗数とを乗算する乗算器３６と、Ｘアドレスカウンタ１０のカウント値（主走査方向の描画アドレス）と、乗算器３６の出力値とを加算する加算器３７と、主走査方向の描画終了を知らせるＸコンパレータ（主走査方向比較器）１１と、副走査方向の描画終了を知らせるＹコンパレータ（副走査方向比較器）３０とを備えている。
【００２４】
さらに、画像メモリ２のリードモディファイライト機能を制御する第１のラッチ回路３８，第２のラッチ回路３９，ＯＲゲート４０，セレクタ４１からなるメモリデータ制御装置と、図３に示すようにモード指定情報を格納するモードレジスタ４２と、スキャナ１５により読み込まれた画像データに変換処理を施すデータ変換回路４３と、スキャナ１５により読み込まれた画像データにディザ処理を施すディザ処理回路４４と、モードレジスタ４２内のモード指定情報によりＦＩＦＯ４，スキャナ１５，データ変換装置４３，ディザ処理回路４４からそれぞれ出力されるデータのいずれかを選択して出力するセレクタ４５とを備えている。
【００２５】
次に、このように構成した画像処理装置において、ページ記述言語で指定された画像データを画像メモリ２に描画する際の動作を説明する。
使用者は、ホストコンピュータ１でポストスクリプトに代表されるページ記述言語により印字したい１ページ分の画像データを作成した後、その画像データをＣＰＵ３に送出する。この画像データは円などの曲線も全てベクトルで表現されているため、ＣＰＵ３はそのベクトルデータを全て主走査方向の直線ベクトルに変換し直し、ソーティングして画像描画装置２０へ送られる。
【００２６】
画像描画装置２０に入力された画像データは、全てＦＩＦＯ４を通して各部に送られる。このＦＩＦＯ４に登録されたデータの一部には、図４に示すようなＴＡＧビットが付けられ、このＴＡＧビットがオペレーションコントローラ１３に送られる。オペレーションコントローラ１３は、ＴＡＧビットに続くデータビットが、座標のデータであるか濃度のデータであるか直線描画命令であるのかを振り分ける。
【００２７】
そして、ＴＡＧビットが主走査方向の描画開始点であった場合にはそれをＸＳレジスタ５に、主走査方向の描画終了点であった場合にはそれをＸＥレジスタ６に、副走査方向の描画開始点であった場合にはそれをＹＳレジスタ３１に、ＣＭＹＫの画像データであればそれをＣＭＹＫレジスタ３２にそれぞれラッチする。なお、この実施例ではＣＭＹＫで記述されているが、ＲＧＢでも構わない。
【００２８】
次に、図１のアドレス制御部２１について説明する。
ＴＡＧビットに直線描画オペレーションフラグ（ＧＡ）が立つと、図２のアドレスコントローラ３４はＸアドレスカウンタ１０にＸＳレジスタ５の値を、Ｙアドレスカウンタ３３にＹＳレジスタ７の値をそれぞれロードすると共に、Ｘアドレスカウンタ１０へカウントイネーブル信号ＸＥＮを出す。
【００２９】
Ｘアドレスカウンタ１０は、カウントイネーブル信号ＸＥＮがアサートされると、主走査方向のアドレスを画素クロックＣＬＫに同期してカウントアップする。乗算器３６は、ＣＰＵ３により予め乗数レジスタ３５に格納された乗算の値と、Ｙアドレスカウンタ３３のカウント値との乗数を計算する。但し、乗数レジスタ３５の値は、図５に示すように印字する紙の主走査方向の最大の値を格納する。加算器３７は、Ｘアドレスカウンタ１０のカウント値と乗算器３６の値との和をとり、画像メモリ２のアドレス信号を生成する。
【００３０】
これらの構成により、Ｘ，Ｙの２次元で表されていた座標が、画像メモリ２のアドレスをＡ，副走査方向のアドレスをＹ，印字する紙の主走査方向の幅をＬ，主走査方向のアドレスをＸとすると、Ａ＝Ｙ×Ｌ＋Ｘで示される１次元のアドレスに変換されたことになる。
【００３１】
その後、Ｘアドレスカウンタ１０のカウント値がＸＥレジスタ６の値までカウントアップされると、Ｘコンパレータ１１は信号ＸＥＮＤをアサートし、１回の直線ベクトルの描画が終了したことをアドレスコントローラ３４に伝える。それによって、アドレスコントローラ３４はカウントイネーブル信号ＸＥＮをネゲートしてＸアドレスカウンタ１０のカウントアップを終了させる。
以上により、画像メモリ２のアドレス制御が行なえる。
【００３２】
一方、ＣＭＹＫレジスタ３２の値は、第１のラッチ回路３８及びセレクタ４１を通してそのまま画像メモリ２に書き込まれる。それによって、ページ記述言語で指定された色の濃度値を描画できる。
【００３３】
次に、スキャナ１５から読み込んだ画像データを画像メモリ２に蓄える際の動作について説明する。
スキャナ１５からの画像データを取り込む際には、ＣＰＵ３よりモードレジスタ４２にスキャナモードの指定情報を登録する。ただし、ページ記述言語で書き込む際は、直線描画モード（ＧＡ）の指定情報を登録する。そして、モードレジスタ４２にスキャナモードの指定情報が登録された場合は、セレクタ４５がスキャナ１５からの画像データをＣＭＹＫレジスタ３２に送って書き込む。
【００３４】
スキャナ１５からは、１ページの読み込み中を表す信号ＦＧＡＴＥと、１ライン毎の同期信号である信号ＬＳＹＮＣと、読み込んだ画像データとしてのレッドデータＲＤＡＴＡ，グリーンデータＧＤＡＴＡ，ブルーデータＢＤＡＴＡが出力される。
それによって、ＣＭＹＫレジスタ３２に取り込まれた画像データが画像メモリ２に登録されるため、スキャナ１５から読み込んだ画像データが書き込める。
【００３５】
次に、画像メモリ２が持つ階調数よりスキャナ１５で読み込んだ画像データの階調数が多い場合の処理について説明する。なお、この実施例においては、画像メモリ２が有する階調数を２ビット（４階調）、スキャナ１５から読み込んだ画像データの階調数を８ビット（２５６階調）としている。
【００３６】
まず、スキャナ１５で読み込んだ画像データをディスプレイなどにおおまかに表示させる場合のように画像品質をあまり必要としない場合などには、読み込んだ８ビットの階調のうち上位の２ビットのみを画像メモリ２に蓄えればよいので、ＣＭＹＫレジスタ３２の値をそのまま画像メモリ２に格納する。
【００３７】
次に、スキャナ１５からの画像データを高品質で画像メモリ２に蓄える際には、スキャナ１５の階調数を変えずに登録する。その際には、ＣＰＵ３がモードレジスタ４２にデータ変換モードの指定情報を登録することにより、データ変換回路４３が画像データの変換処理を行なう。
図６は図３のデータ変換回路４３の詳細を示したものであり、４色に対応して４つのセレクタ４３ａ〜４３ｄを備えている。
【００３８】
スキャナ１５から入力されたレッドデータＲＤＡＴＡ，グリーンデータＧＤＡＴＡ，ブルーデータＢＤＡＴＡの各上位２ビットはセレクタ４３ａに、次の２ビットはセレクタ４３ｂに、その次の２ビットはセレクタ４３ｃに、下位２ビットはセレクタ４３ｄにそれぞれ入力され、現在書き込んでいるデータがレッドＲであればそれぞれレッドデータＲＤＡＴＡの２ビットを、グリーンＧであればそれぞれグリーンデータＧＤＡＴＡの２ビットを、ブルーＢであればそれぞれブルーデータＢＤＡＴＡの２ビットを出力する。
【００３９】
そして、セレクタ４３ａ〜４３ｄの出力データをそれぞれＣＭＹＫレジスタ３２におけるＣ，Ｍ，Ｙ，Ｋの各レジスタに登録して画像メモリ２に書き込むことにより，レッドデータＲＤＡＴＡ，グリーンデータＧＤＡＴＡ，ブルーデータＢＤＡＴＡの８ビットの階調データを失うことなく画像メモリ２に格納できる。
ただし、この構成をとった場合には画像メモリ２に書き込める面積に限りがあり、仮にこの例で画像メモリ２のメモリ容量がＡ３サイズ分用意されていた場合にはＡ５サイズまでのデータしか書き込めないので、ＣＰＵ３がスキャナ１５で読み込む面積を小さくする。
【００４０】
次に、スキャナ１５からの画像データを書き込み面積を落とさずに且つ高品質に近い状態で画像メモリ２に格納する場合は、ディザ処理回路４４を通して画像データを送る。その際には、ＣＰＵ３がモードレジスタ４２にディザモードの指定情報を登録することにより、ディザ処理回路４４が画像データにディザ処理を施す。すなわち、スキャナ１５から読み込んだレッドデータＲＤＡＴＡ，グリーンデータＧＤＡＴＡ，ブルーデータＢＤＡＴＡが送られてくると、８ビットの階調を４値ディザをかけて２ビットデータにする。
【００４１】
次に、ディザ処理回路４４によるディザ処理について詳細に説明する。
図７は、ディザ処理回路４４の構成例を示すブロック図である。但し、この例ではレッドデータＲＤＡＴＡに対応する回路のみを示しているが、それ以外の色のデータに対応する回路も同様であるため、それらの図示は省略する。
このディザ処理回路４４のレッドデータＲＤＡＴＡに対応する部分は、３つのラッチ回路４４ａ〜４４ｃ，３つのコンパレータ４４ｄ〜４４ｆ，及び４値決定回路４４ｇによって構成されている。
【００４２】
ここで、この実施例では４値ディザをかけるため、閾値を１つの画素に対して３個必要とする。そのため、その閾値を記憶するラッチ回路（ルックアップテーブル）を上述したように３個用意している。ただし、３個の閾値のうち、最大の閾値をラッチ回路４４ａに、最小の閾値をラッチ回路４４ｃにそれぞれ記憶しておく。
【００４３】
スキャナ１５から画像データが読み出されると、各ラッチ回路４４ａ〜４４ｃはそれぞれ読み出された画素に対応するアドレスで指定された閾値を出力する。そして、この出力された各閾値と濃度データであるレッドデータＲＤＡＴＡとをそれぞれ各コンパレータ４４ｄ〜４４ｆが比較して、その結果を４値決定回路４４ｇに送る。
【００４４】
４値決定回路４４ｇは、レッドデータＲＤＡＴＡが最大の閾値（Ｔ１）より大きい場合には２ビットの出力を最大値（１１）とし、レッドデータＲＤＡＴＡが最大の閾値（Ｔ１）と中間の閾値（Ｔ２）との間の場合には２ビットの出力を（１０）とし、レッドデータＲＤＡＴＡが中間の閾値（Ｔ２）と最小の閾値（Ｔ３）との間の場合には２ビットの出力を（０１）とし、レッドデータＲＤＡＴＡが最小の閾値（Ｔ１）より小さい場合には２ビットの出力を最小値（００）として出力する。
【００４５】
このような動作を図７と同様な回路によりグリーンデータＧＤＡＴＡとブルーデータＢＤＡＴＡに対しても行ない、その出力をＣＭＹＫレジスタ３２に登録する。したがって、このデータで画像メモリ２に書き込みを行なうことにより、スキャナ１５から読み込んだ画像データにディザ処理を施すことができる。
【００４６】
次に、スキャナ１５で読み込んだ画像データとページ記述言語で指定された画像データとを合成する際の動作について説明する。
その各画像データを合成させる際には、直線ベクトルを描画する際のアドレス線と同じように画像メモリ２のアドレスを指定すればよいが、スキャナ１５からの画像データはライン毎に送られてくるため、ライン同期信号ＬＳＹＮＣがアサートされたならば、アドレスコントローラ３４は信号ＹＥＮをアサートしてＹアドレスを１つインクリメントさせる。このようにアドレス信号を構成することにより、各画像データの合成が可能になる。なお、その合成処理については追って詳細に説明する。
【００４７】
次に、任意の領域にスキャナ１５で読み込んだ画像データを組み込む際の動作について説明する。
この場合には、スキャナ１５によって読み込んだ画像データを画像メモリ２の任意の矩形領域に組み込む際に、ＣＰＵ３からその矩形領域の主走査方向の開始点をＸＳレジスタ５に、その矩形領域の主走査方向の終了点をＸＥレジスタ６に、その矩形領域の副走査方向の開始点をＹＳレジスタ７に、その矩形領域の副走査方向の終了点をＹＥレジスタ３１にそれぞれ格納しておく。但し、この場合は直線ベクトルを描画する際のようにＦＩＦＯ４は通さず、ＣＰＵ３から直接書き込めるようにしてある。
【００４８】
そして、信号ＦＧＡＴＥがアサートされると、アドレスコントローラ３４が、Ｘアドレスカウンタ１０にＸＳレジスタ５の値を、Ｙアドレスカウンタ３３にＹＳレジスタ７の値を、Ｘコンパレータ１１にＸＥレジスタ６の値を、Ｙコンパレータ３０にＹＥレジスタ３１の値をそれぞれロードすると共に、Ｘアドレスカウンタ１０へカウントイネーブル信号ＸＥＮを出す。
【００４９】
カウントイネーブル信号ＸＥＮがアサートされると、Ｘアドレスカウンタ１０が主走査方向のアドレスを画素クロックＣＬＫに同期してカウントアップし、Ｘアドレスカウンタ１０でカウントアップしたアドレスとＸコンパレータ１１の値とが一致すると、そのＸコンパレータ１１が主走査方向の書き込み終了信号ＸＥＮＤを出し、１ラインの書き込みが終了したことをアドレスコントローラ３４に知らせる。
【００５０】
それによって、アドレスコントローラ３４がＹアドレスカウンタ３３に信号ＹＥＮを出してＹアドレスを１つインクリメントさせると同時に、Ｘアドレスカウンタ１０にＸＳレジスタ５の値を再ロードする。そして、次のラインの書き込みが信号ＬＳＹＮＣがアサートされた時点で開始されるように、Ｘアドレスカウンタ１０のカウントアップは信号ＬＳＹＮＣがアサートされるまでウェイトをかける。
【００５１】
以上の動作を繰り返し行ない、Ｙアドレスカウンタ３３の値がＹコンパレータ３０の値と一致すると、そのＹコンパレータ３０がスキャナ書き込み終了信号ＹＥＮＤを出力し、書き込みが終了したことをアドレスコントローラ３４に知らせ、アドレスコントローラ３４は次の信号ＬＳＹＮＣがきた時点でＣＰＵ３に画像メモリ２への書き込みが終了したことを知らせる。
以上により、任意の矩形領域にスキャナ１５で読み込んだ画像データを書き込むようにすれば、その画像データとページ記述言語で指定された画像データとの合成が可能になる。
【００５２】
次に、スキャナ１５で読み込んだ画像データを画像メモリ２に書き込む際に、以前画像メモリ２に蓄えられていた画像データ（背景画像）を残す場合の動作について説明する。
この場合には、ＣＰＵ３によりモードレジスタ４２にＯＲモードの指定情報を登録する。
【００５３】
ここで、画像メモリ２への書き込みを行なう際にはリードモディファイライト動作となるため、画像メモリ２の書き込むアドレスに以前書かれていたデータを第２のラッチ回路３９に蓄え、第１のラッチ回路３８の値と第２のラッチ回路３９の値とをＯＲゲート４０でＯＲをとる（重畳する）。
【００５４】
モードレジスタ４２によりＯＲモードが指定されると、セレクタ４１はＯＲゲート４０通過後の画像データを画像メモリ２のデータバスに送出する。
以上のようにＯＲゲート４０を通すことで、以前にページ記述言語あるいはスキャナ１５によって書き込まれた背景データを壊すことなく、スキャナ１５から読み込んだ画像データとの合成を行なえる。
【００５５】
次に、ＣＰＵ３によるこの発明に係わる処理、すなわち画像描画装置２０を上述したように動作させるための処理を図８〜１３によって説明する。
図８はＣＰＵ３によるこの発明に係わる処理のメインルーチンを示すフローチャートであり、まず画像描画装置２０に入力される画像データの種類を判断して、ページ記述言語のデータならばページ記述言語処理を行ない、スキャナ１５からのデータならばスキャナ処理を行なう。
【００５６】
図９は図８のページ記述言語処理のサブルーチンを示すフローチャートであり、直線描画モードに設定した後、画像データを直線ベクトルに変換してソーティングし、さらにそのデータをＦＩＦＯ４のフォーマットに変換してＦＩＦＯ４に登録する。
【００５７】
その後、直線描画オペレーションフラグをＦＩＦＯ４に登録してから、書き込むベクトルはまだあるかどうかを判断し、あれば最初のステップに戻って上述の処理を繰り返すが、なければ画像描画装置２０による画像メモリ２への画像データの書き込みも完了しているので、その画像データを図示しないプリンタに転送してプリントアウトさせ、メインルーチンにリターンする。
【００５８】
図１０は図８のスキャナ処理のサブルーチンを示すフローチャートであり、スキャナモードに設定した後、ホストコンピュータ１から指示されたモードに応じた処理を行なう。すなわち、データ変換モードならばデータ変換処理を、ディザモードならばディザ処理を、合成モードならば合成処理をそれぞれ行なって、メインルーチンへリターンする。
【００５９】
図１１は図１０のデータ変換処理のサブルーチンを示すフローチャートであり、データ変換モードに設定した後、スキャナ１５で読み込む色を設定してスキャナ１５を起動させ、他の色も読む場合はスキャナ１５で読み込む色の設定に戻って上述の処理を繰り返し、他の色を読まない場合は直ちにメインルーチンへリターンする。
【００６０】
図１２は図１０のディザ処理のサブルーチンを示すフローチャートであり、ディザモードに設定した後、図３に示したディザ処理回路４４内の各ラッチ回路に閾値を設定し、スキャナを起動してメインルーチンへリターンする。
【００６１】
図１３は図１０の合成処理のサブルーチンを示すフローチャートであり、ＦＩＦＯ４にＸＳ，ＸＥ，ＹＳ，ＹＥの各値を登録した後、ＯＲモードが指示されているかどうかをチェックし、ＯＲモードが指示されていなければそのまま、ＯＲモードが指示されていればＯＲモードに設定した後、スキャナを起動してメインルーチンへリターンする。
【００６２】
このように、この実施例の画像処理装置によれば、画像描画装置２０が、当該画像処理装置に入力される画像データがスキャナ１５から読み込まれる画像データの場合にはスキャナモードの指定情報を、ホストコンピュータ１から入力される画像データの場合には直線描画モードの指定情報をそれぞれモードレジスタ４２に登録し、そのモード指定情報に基づいて、スキャナ１５から読み込んだ画像データとホストコンピュータ１から入力された画像データとを切り替えて共通の画像メモリ２に描画するので、スキャナ１５用の画像メモリを持つ必要がなくなる。しかも、スキャナ１５から読み込んだ画像データと、ホストコンピュータ１から入力された画像データの直線ベクトルを画像メモリ２に描画する際には、１次元のアドレスに基づいて描画するので、画像メモリ２に少ないメモリ容量で描画できる。したがって、低コストを実現できる。
【００６３】
また、画像メモリ２の有している階調数がスキャナ１５で読み込んだ画像データの階調数より少ない構成にしたので、スキャナ１５から読み込んだ画像データの階調数が画像メモリ２の持つ階調数よりも大きい場合でも、そのスキャナ１５からの画像データとホストコンピュータ１から入力された画像データを共通の画像メモリ２に蓄えることができる。
【００６４】
さらに、画像メモリ２は４色分独立して持ち、その画像メモリ２の有している階調数がスキャナ１５で読み込んだ画像データの階調数より少ない場合には、そのスキャナ１５で読み込む面積をその画像データの原稿サイズに比べて小さくしたり、あるいはスキャナ１５で読み込んだ画像データにディザ処理を施すようにしたので、画像品質も向上する。
【００６５】
さらにまた、Ｘアドレスカウンタ（主走査方向カウンタ）１０及びＹアドレスカウンタ（副走査方向カウンタ）３３からそれぞれ発生される主走査及び副走査の２次元で表されたアドレスを画像メモリ２に出力する１次元のアドレスに変換するので、画像メモリ２に画像データを書き込む際のアドレスとスキャナ１５から読み込んだ画像データのアドレスとが同じアドレス構成になり、スキャナ１５で読み込んだ画像データとホストコンピュータ１から入力された画像データとを合成して印字することができる。
【００６６】
また、ＸＳレジスタ（主走査方向開始レジスタ）５，ＸＥレジスタ（主走査方向終了レジスタ）６，ＹＳレジスタ（副走査方向開始レジスタ）７，ＹＥレジスタ（副走査方向終了レジスタ）３１，Ｘコンパレータ（主走査方向比較器）１１，及びＹコンパレータ（副走査方向比較器）３０を設けたので、スキャナ１５から読み込んだ画像データを画像メモリ２の任意の矩形領域に書き込むこともでき、その画像データをホストコンピュータ１から入力された画像データと合成して印字することができる。
【００６７】
さらに、画像メモリ２のリードモディファイライトを制御し、且つ画像メモリ２に以前蓄えられていた画像データとスキャナ１５から読み込んだ画像データとを重畳して画像メモリ２に書き込むことができるので、画像データの合成処理を確実に行なえる。
【００６８】
【発明の効果】
以上説明してきたように、この発明の画像処理装置によれば、ホストコンピュータから入力された画像データとスキャナから読み込んだ画像データとを共通の画像メモリに蓄えることができる。しかも、スキャナから読み込んだ画像データと、ホストコンピュータから入力された画像データの直線ベクトルを画像メモリに描画する際には、１次元のアドレスに基づいて描画するので、その画像メモリに少ないメモリ容量で描画できる。したがって、コストが低減する。
【００６９】
請求項２の画像処理装置によれば、画像メモリの持つ階調にかかわらず、つまり画像品質にこだわらない場合などに、スキャナから読み込んだ画像データの階調が画像メモリの持つ階調よりも大きい場合でも、その画像データを共通の画像メモリに蓄えることができる。
【００７０】
請求項３の画像処理装置によれば、画像メモリをＲＧＢの３プレーンまたはＣＭＹＫの４プレーンの構成にし、スキャナから読み込んだ画像データをその画像メモリに蓄える場合には面積による拡張を行なうようにすれば、画像品質も向上する。
【００７１】
請求項４の画像処理装置によれば、画像メモリの持つ階調にかかわらず、スキャナから読み込んだ画像データの階調が画像メモリの持つ階調よりも大きい場合にはその画像データにディザ処理を施すことにより、上述と同様に画像品質を高めることができる。
【００７２】
請求項５の画像処理装置によれば、画像メモリに画像データを書き込む際のアドレスとスキャナから読み込んだ画像データのアドレスとが同じアドレス構成になるので、ホストコンピュータから入力された画像データとスキャナによって読み込んだ画像データとを合成して印字することもでき、画像処理装置の機能が向上する。
【００７３】
請求項６の画像処理装置によれば、スキャナから読み込んだ画像データを画像メモリの任意の矩形領域に書き込むことができるので、その画像データをホストコンピュータから入力された画像データと合成して印字することもでき、画像処理装置の機能がさらに向上する。
【００７４】
請求項７の画像処理装置によれば、画像メモリに画像データを書き込む際に、以前書き込まれていた画像データをそのまま保持することができるので、画像データの合成処理を確実に行なうことができる。
【図面の簡単な説明】
【図１】この発明を実施した画像処理装置を有する情報システムを機能的に示すブロック構成図である。
【図２】図１の画像描画装置の詳細の一部を示すブロック構成図である。
【図３】同じくその残りの部分を示すブロック構成図である。
【図４】図２のＦＩＦＯからオペレーションコントローラに取り込まれる各データの構成例を示す説明図である。
【図５】同じく乗数レジスタの値を説明するための説明図である。
【図６】図３のデータ変換回路の詳細を示すブロック構成図である。
【図７】同じくディザ処理回路の詳細を示すブロック構成図である。
【図８】図１のＣＰＵ３によるこの発明に係わる処理を示すフロー図である。
【図９】図８のページ記述言語処理のサブルーチンを示すフロー図である。
【図１０】同じくスキャナ処理のサブルーチンを示すフロー図である。
【図１１】図１０のデータ変換処理のサブルーチンを示すフロー図である。
【図１２】同じくディザ処理のサブルーチンを示すフロー図である。
【図１３】同じく合成処理のサブルーチンを示すフロー図である。
【図１４】従来の画像処理装置を有する情報システムを示すブロック構成図である。
【符号の説明】
１  ホストコンピュータ      ２  画像メモリ      ３  ＣＰＵ
４  ＦＩＦＯ      ５  ＸＳレジスタ      ６  ＸＥレジスタ
７  ＹＳレジスタ      １０  Ｘアドレスカウンタ
１１  Ｘコンパレータ      １３  オペレーションコントローラ
１５  スキャナ      ２０  画像描画装置      ２１  アドレス制御部
２２  データ切替部      ２３  背景保持部      ３０  Ｙコンパレータ
３１  ＹＥレジスタ      ３２  ＣＭＹＫレジスタ      ３３  Ｙアドレスカウンタ      ３４  アドレスコントローラ      ３５  乗数レジスタ
３６  乗算器      ３７  加算器      ３８  第１のラッチ回路
３９  第２のラッチ回路      ４０  ＯＲゲート
４１，４５，４３ａ〜４３ｄ  セレクタ      ４２  モードレジスタ
４３  データ変換回路      ４４  ディザ処理回路
４４ａ〜４４ｃ  ラッチ回路      ４４ｄ〜４４ｆ  コンパレータ
４４ｇ  ４値決定回路
【図１】
0003748272.tif 000002
【図２】
0003748272.tif 000003
【図３】
0003748272.tif 000004
【図４】
0003748272.tif 000005
【図５】
0003748272.tif 000006
【図６】
0003748272.tif 000007
【図７】
0003748272.tif 000008
【図８】
0003748272.tif 000009
【図９】
0003748272.tif 000010
【図１０】
0003748272.tif 000011
【図１１】
0003748272.tif 000012
【図１２】
0003748272.tif 000013
【図１３】
0003748272.tif 000014
【図１４】
0003748272.tif 000015