JP4010537B2 - 画像出力装置及び該装置の画像出力方法 - Google Patents
画像出力装置及び該装置の画像出力方法 Download PDFInfo
- Publication number
- JP4010537B2 JP4010537B2 JP2002045398A JP2002045398A JP4010537B2 JP 4010537 B2 JP4010537 B2 JP 4010537B2 JP 2002045398 A JP2002045398 A JP 2002045398A JP 2002045398 A JP2002045398 A JP 2002045398A JP 4010537 B2 JP4010537 B2 JP 4010537B2
- Authority
- JP
- Japan
- Prior art keywords
- mask pattern
- pattern
- memory
- word boundary
- word
- 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
Links
Images
Landscapes
- Image Generation (AREA)
- Record Information Processing For Printing (AREA)
Description
【発明の属する技術分野】
本発明は、画像出力装置及び該装置の画像出力方法に関し、特にマスクパターンを用いた描画処理のための画像出力装置及び該装置の画像出力方法に関する。
【0002】
【従来の技術】
従来、画像出力装置としては、例えば、特開平8−52905号公報に記載された印刷装置が知られていた。この装置は、描画処理部の負担を軽減し、かつ描画部の起動回数を減らすことにより、処理速度の向上を図っている。そして、この装置では、パターン変換と管理において、シフトした結果がキャッシュされる。
【0003】
また、特開平9−284532号公報には、描画データをラスタ順に処理する代わりに、適用されるパターンを各ラスタ毎にまとめて処理することにより、記憶手段からのパターン転送回数を削減して、描画処理に要する時間を短縮する画像形成装置および画像形成方法が記載されている。そして、この装置および方法では、パターンを用いた描画処理や転送単位が1バイトまたはそれ以外とされている(同公報段落番号0019など参照)。
【0004】
さらに、特開平10−031735号公報には、グレー・スケールの情報を基にビットマップデータへの展開を各オブジェクトの最初の演算時に一度だけ行い、ビットマップデータに展開したグレー・スケールデータを格納しておき、そのオブジェクトの描画演算が終了するまで、グレー・スケールデータを繰り返して使用して描画演算を行うことにより、グレー・スケールデータの展開を短縮する画像処理装置および画像処理方法が記載されている。そして、この装置および方法では、マスクパターンM、背景パターンP、グレー・スケールGの3つをキーとするキャッシュ方式が採用されている。なお、これらのマスクパターンM、背景パターンP、グレー・スケールGは、各々本発明の図5の中のM、D、Sに相当する。
【0005】
【発明が解決しようとする課題】
しかし、特開平8−52905号公報記載の印刷装置によると、キャッシュ可能な最小単位が1ドット/1bit単位となっているので、キャッシュの検索、初期化に時間がかかってしまうという問題があった。
【0006】
また、特開平9−284532号公報記載の画像形成装置および画像形成方法によると、ワード単位の繰り返しになるようなパターンが用いられない。図2に記載されたパターンをそのまま連続して用いると、第2バイトと第1バイトの境目の模様が不連続となる。よって、パターンのシフト演算が演算単位で毎回行われると思われ、その分、効率が悪くなるという問題があった(同公報段落番号0021など参照)。
【0007】
特開平10−031735号公報記載の画像処理装置および画像処理方法によれば、たしかに、単純なページであればキャッシュ効率が上がるケースがある。しかし、図形の上書きのように背景パターンが存在する場合には、キャッシュ効率が上がるとは限らないという問題がある。
【0008】
そこで、本発明は、任意の矩形状のマスクパターンを用いた描画処理を行う際に、ワード単位で高速にメモリにアクセスすることを可能とすることにより、ページメモリへの描画処理の高速化ができるような画像出力装置及び該装置の画像出力方法を提供することを目的とする。
【0009】
【課題を解決するための手段】
請求項1記載の発明によれば、画像データ及びマスクパターンを入力するデータ入力手段と、前記入力されたマスクパターンを、マスクパターン幅とワード内画素数との最小公倍数の幅で構成され、マスクパターン幅がワード内画素数の約数であれば、ワード境界マスクパターンは1ワード分の幅となり、そうでない場合は複数ワード分の幅となるワード単位の描画に適しているワード境界マスクパターンに変換し、ワード境界マスクパターンメモリに格納するマスクパターン変換手段と、図形の範囲を指定する命令と、範囲内を塗りつぶす色を指定する命令と、マスクパターンをパラメータにより一意に指定する命令とからなる図形描画命令を、描画属性命令の指定に従ってページメモリに書き込む図形描画命令書き込み手段と、前記指定された図形の範囲内の前記指定された色を表わすパターンと、前記マスクパターンをパラメータにより一意に指定する命令により指定されたマスクパターンと、描画演算処理前の前記ページメモリにあるパターンと、の3つのパターンを用いて演算を行い、該演算結果を前記ページメモリに書き込む描画演算手段と、前記ページメモリに書き込まれた前記ページメモリを出力装置に渡すデータ出力手段と、を具備し、前記描画演算手段が用いる前記指定されたマスクパターンは、前記ワード境界マスクパターンメモリに格納された前記ワード境界マスクパターンである画像出力装置としたことを特徴とするものである。
【0010】
請求項2記載の発明によれば、画像出力装置は、マスクパターンを、マスクパターンの幅方向(主走査方向)の繰り返しをワード単位で描画演算する際に、マスクパターンに対するビットシフト演算が不要となるように、あらかじめワード単位での繰り返しとなるようなパターンデータに変換する手段をさらに有することを特徴とするものである。
【0011】
請求項3記載の発明によれば、画像出力装置は、マスクパターンの高さ方向のパターンすべてに請求項2記載の変換を行い、得られた結果を1つの連続したメモリ上に配置し、作成する手段をさらに有することを特徴とするものである。
【0012】
請求項4記載の発明によれば、画像出力装置は、描画範囲内の色を表わすソースパターンと、描画範囲に対応するページメモリに存在するデスティネーションパターンと、ワード境界マスクパターンメモリ内にあるマスクパターンの3つのパターンに対して、AND,OR,EOR,NOTの論理演算を組み合わせた演算を行う手段と、演算結果をデスティネーションパターンと同位置のページメモリに格納する手段とをさらに有することを特徴とするものである。
【0013】
請求項5記載の発明によれば、画像出力装置は、前記3つのパターンに対する論理演算をCPUのワード長のメモリ単位で行う手段をさらに有することを特徴とするものである。
【0014】
請求項6記載の発明によれば、画像出力装置は、描画位置座標から、その座標を含むワード長デスティネーションパターンのメモリ位置を計算する手段と、描画位置座標に対応する座標を含むワード長ソースパターンを取得する手段と、描画位置座標に対応する座標を含むワード境界マスクパターンのメモリ位置を計算する手段とをさらに有することを特徴とするものである。
【0015】
請求項7記載の発明によれば、画像出力装置の描画演算手段は、描画範囲内は演算結果となり、描画範囲外はデスティネーションパターンのままとなることを特徴とするものである。
【0016】
請求項8記載の発明によれば、画像出力装置は、マスクパターンのビットONの部分をソースパターンに、ビットOFFの部分をデスティネーションパターンになる演算手段をさらに有することを特徴とするものである。
【0017】
請求項9記載の発明によれば、画像出力装置は、マスクパターンのビットONの部分を第1のソースパターンに、ビットOFFの部分を第2のソースパターンになる演算手段をさらに有することを特徴とするものである。
【0018】
請求項10記載の発明によれば、画像出力装置は、マスクパターンIDを入力する手段と、マスクパターンデータとマスクパターンIDとの組み合わせでワード境界マスクパターンメモリに格納する手段と、組み合わせを複数格納する手段と、マスクパターンIDから前記ワード境界マスクパターンメモリを検索する手段とをさらに有することを特徴とするものである。
【0019】
請求項11記載の発明によれば、画像出力装置は、マスクパターンIDを入力する手段と、マスクパターンデータをマスクパターンメモリに格納する手段と、マスクパターンデータとマスクパターンIDとの組み合わせでワード境界マスクパターンメモリに格納する手段と、マスクパターンIDからワード境界マスクパターンメモリを検索する手段と、描画演算にてマスクパターンIDを検索した結果、ワード境界マスクパターンメモリに存在しなかった場合、マスクパターンIDに対応するマスクパターンをマスクパターンメモリから検索する手段と、検索により得られたマスクパターンをワード境界マスクパターンに変換する手段と、変換されたワード境界マスクパターンをワード境界マスクパターンメモリの未使用メモリ領域に格納する手段と、未使用メモリ領域が不足した場合、既存のワード境界マスクパターンを破棄する手段とをさらに有することを特徴とするものである。
【0020】
請求項12記載の発明によれば、画像出力装置は、ワード境界マスクパターンメモリの未使用メモリ領域が不足した場合の既存メモリの破棄には、LRU(Least Recently Used )を用いる手段をさらに有することを特徴とするものである。
【0021】
請求項13記載の発明によれば、画像出力装置は、マスクパターンIDの検索において、IDの頻度情報テーブルを管理する手段と、ワード境界マスクパターンメモリの未使用メモリ領域が不足した場合の既存メモリの破棄には、頻度情報テーブルを用いて最も頻度の低いメモリを破棄する手段とをさらに有することを特徴とするものである。
【0022】
請求項14記載の発明によれば、画像出力装置は、ソースパターンが色濃度の擬似階調を表現するディザのパターンであることを特徴とするものである。
【0023】
請求項15記載の発明によれば、画像出力装置は、マスクパターンをディザパターンに、マスクパターンIDをディザパターンそれぞれに付加されるID(色濃度など)をデータとして入力する手段と、検索部にディザパターンIDを入力とし、ワード境界ソースパターンを出力とし、演算処理部にてソースパターンを使用する際にワード境界ソースパターンを使用する手段とをさらに有することを特徴とするものである。
【0024】
請求項16記載の発明によれば、画像出力装置は、出力装置がレーザプリンタであることを特徴とするものである。
【0025】
請求項17記載の発明によれば、画像出力装置は、出力装置がインクジェットプリンタであることを特徴とするものである。
【0026】
請求項18記載の発明によれば、画像出力装置は、各種演算処理をグラフィック アクセラレータ等の専用ASICで行われることを特徴とするものである。
【0027】
請求項19記載の発明によれば、データ入力手段が、画像データ及びマスクパターンを入力するデータ入力工程と、前記データ入力工程により入力されたマスクパターンを、マスクパターン変換手段が、マスクパターン幅とワード内画素数との最小公倍数の幅で構成され、マスクパターン幅がワード内画素数の約数であれば、ワード境界マスクパターンは1ワード分の幅となり、そうでない場合は複数ワード分の幅となるワード単位の描画に適しているワード境界マスクパターンに変換し、ワード境界マスクパターンメモリに格納するマスクパターン変換工程と、図形描画命令書き込み手段が、図形の範囲を指定する命令と、範囲内を塗りつぶす色を指定する命令と、マスクパターンをパラメータにより一意に指定する命令とからなる図形描画命令を、描画属性命令の指定に従ってページメモリに書き込む図形描画命令書き込み工程と、前記指定された図形の範囲内の前記指定された色を表わすパターンと、前記マスクパターンをパラメータにより一意に指定する命令により指定されたマスクパターンと、描画演算処理前の前記ページメモリにあるパターンと、の3つのパターンを用いて演算を行い、該演算結果を前記ページメモリに書き込む描画演算工程と、前記描画演算工程により前記ページメモリに書き込まれた前記ページメモリを、データ出力手段により出力装置に渡すデータ出力工程と、を有し、前記描画演算工程において用いられる前記指定されたマスクパターンは、前記ワード境界マスクパターンメモリに格納された前記ワード境界マスクパターンである画像出力装置の画像出力方法としたことを特徴とするものである。
【0028】
【発明の実施の形態】
添付図面を参照して、本発明による画像出力装置の実施の形態を以下詳細に説明する。
【0029】
まず、本発明による画像出力装置の一実施形態たる第1実施例について以下説明する。
【0030】
図1に、第1実施例の構成図が示されている。画像出力装置1は、描画データ入力部2と、描画演算部3と、ページメモリ4と、出力装置5と、マスクパターンデータ入力部10と、マスクパターン変換部11と、ワード境界マスクパターンメモリ12とで構成される。
【0031】
画像出力装置1の画像データは、描画データ入力部2に入力され、形状や色情報などを含む描画用データに解釈される。そして、描画データ入力部2に入力、解釈された描画範囲とその中を塗りつぶす色情報を指定するパラメータが、ソースパターンとして、描画演算部3に渡される。
【0032】
他方、この描画に使用されるマスクパターンが、あらかじめマスクパターンデータ入力部10に入力される。入力されたマスクパターンは、マスクパターン変換部11によって,ワード単位の描画に適しているワード境界マスクパターンに変換される。ページメモリのような大量のメモリ操作を伴う演算の場合、画素毎ではなく、CPUのワード単位で演算を行うと、メモリアクセスが最小限となり、高速化が可能となるからである。また、そのように最小単位をCPUのワード単位とすることにより、検索、初期化も簡単になる。
【0033】
このように変換されたワード境界マスクパターンは、ワード境界マスクパターンメモリ12に格納される。前述した描画演算部の描画データが、マスクパターンを使用する場合、ワード境界マスクパターンメモリ12からマスクパターンを得る。また、描画演算部3は、描画位置に対応するページメモリ4から描画対象となるデスティネーションパターンを得る。
【0034】
こうして、描画演算部3は、前述のようにして渡されたソースパターンと、デスティネーションパターンと、マスクパターンとの3つのパターンを用いて演算を行う。各種演算処理をグラフィックアクセラレーター等の専用ASICで行ってもよい。
【0035】
描画演算部3により演算されたパターンが、ページメモリ4に格納される。このようにして格納されたパターンは、描画命令終了または出力装置への出力命令により、出力装置5に出力される。出力装置5は、レーザプリンタであってもよく、また、インクジェットプリンタであってもよい。
【0036】
図2には、本発明による画像出力装置の一実施形態の説明のために用いられるマスクパターンと描画範囲が示されている。描画範囲として、(X,Y)=(3,3)- (11,7)を左上右下とする矩形範囲である描画範囲Aを用いる(図2(b)参照)。また、マスクパターンとして、幅と高さが6×6の×印に描かれたマスクパターンMを用いる(図2(a)参照)。さらに、CPUのワード長を32bitとし、1bitを1画素とし、マスクパターンをページメモリ上に敷き詰める際の起点座標を(X,Y)=(0,0)とする。以上を前提として、以下、図3、図4を用いて、マスクパターンMのワード境界マスクパターンメモリ12への登録について説明する。
【0037】
前述した通り、ページメモリのような大量のメモリ操作を伴う演算の場合、画素毎ではなく、CPUのワード単位で演算を行うと、メモリアクセスが最小限となり、高速化が可能となる。そこで、本発明では、入力されたマスクパターンを、マスクパターン変換部11によって、ワード単位の描画に適しているワード境界マスクパターンへ変換することとしている。
【0038】
ワード境界マスクパターンは、ワード内のパターンをシフト演算なしにそのまま用い、かつ、単独または複数ワードを循環させて繰り返し用いるものである。よって、ワード境界マスクパターンは、マスクパターン幅とワード内画素数との最小公倍数の幅で構成される。マスクパターン幅がワード内画素数の約数であれば、ワード境界マスクパターンは1ワード分の幅となり、そうでない場合は複数ワード分の幅となる。
【0039】
図3には、本実施例で用いられるマスクパターンMの幅である6画素と、1ワード32画素との最小公倍数である96画素、つまり3ワード分の配置が示されている。これはマスクパターンの高さ分繰り返される。
【0040】
図4には、本発明による画像出力装置の一実施形態におけるワード境界マスクパターンの作成処理フローを説明するフローチャートが示されている。
【0041】
まず、ステップ1において、マスクパターン座標の高さ方向yを0に初期化する。また、ステップ2において、マスクパターン座標の幅方向のワード位置を示すxを0に初期化する。
【0042】
次に、ステップ3において、ワード境界マスクパターン用メモリM[x]に、マスクパターン座標yに相当するマスクパターンを、シフト演算を用いながら1ワード分敷き詰める。これは図3の各ワードを用意することに相当する。
【0043】
さらに、ステップ4において、ステップ3で敷き詰めた際にマスクパターンに余りが出て、M[x]からはみ出たかどうかを判断する。そして、マスクパターンがはみ出た場合にはステップ5において、はみ出た分を次のM[x]にシフトして代入してステップ3へ戻る。はみ出なかった場合はワード単位の繰り返しが終了したのでステップ6へ進む。
【0044】
ステップ6において、ワードパターンの高さ分が終了したか否かを判断する。終了していなければステップ2へ戻る。終了していればワード境界マスクパターンの作成を完了する。
【0045】
仮に、ワード境界マスクパターンを使用しないで描画演算を行う場合、マスクパターンは描画位置によって変換されるため、各ワード単位の描画処理毎に、上記処理フローにあるような座標位置計算やビットマップのシフト演算が発生することになる。よって、この場合、処理速度のボトルネックとなる可能性が大きい。
【0046】
次に、得られたワード境界マスクパターンを用いて、描画演算部3により演算を行う。ここでは、以下の3つのビットマップデータに対する演算を行う。
ソースパターンS: 指定された濃度に対するビットマップ デスティネーションパターンD:描画対象となるページメモリのビットマップマスクパターンM: マスク用ビットマップ
【0047】
このようなビットマップの演算にはROP演算を用いるのが一般的である。ROP演算はS,D,Mと画像演算(OR,AND,EOR,NOT,COPY)を用いる演算である。また、マスクパターンの描画方法にも2通りあり、透過モード(ビットマップのON部分に指定された色を、OFFの部分はなにもしない)と不透過モード(ビットマップON・OFFそれぞれに指定された色を塗る)とがある。
【0048】
これらの演算は、前述したように、画素毎ではなく、CPUのワード単位で行われるので、描画位置(x,y)を含むワード単位のビットマップデータを用意する。
【0049】
ソースパターンSは、描画データ入力部2に入力された濃度値を表現するための擬似階調ビットマップである。この擬似階調ビットマップとしては、例えば、ディザパターンが代表的である。ソースパターンが色濃度の擬似階調を表現するディザパターンであれば、タイル状に敷き詰めるように描画するので、本発明が適用可能である。なお、写真画のような微小領域が異なるパターンで描画される集合であるイメージデータの場合にも本発明は適用可能である。ただし、ここでは描画位置を含むワード単位のソースパターンSを用意する方法は問わない。
【0050】
デスティネーションパターンDは、描画位置xを1ワード画素数で割った整数部分がページメモリのyライン目の先頭からのワード位置となるので、その位置の1ワード分のメモリ内容をDに読み込む。
【0051】
マスクパターンMは、描画位置(x,y)に対応したワード境界マスクパターンメモリを含むワード位置を計算する。まず、描画位置yをマスクパターンの高さで割った余りを計算し、マスクパターンのライン位置を決定する。次に、描画位置xを1ワード画素数で割り、ページメモリのyライン目の先頭からのワード位置を求める。さらに、そのワード位置を、マスクパターン1ラインに含まれるワード数で割った余りが、マスクパターンのyライン目の先頭からのワード位置となるので、その位置の1ワード分のメモリ内容をMに読み込む。
【0052】
このようにして得られたS,D,Mのビットマップパターンの演算例を、図5を用いて以下に説明する。
【0053】
本例では、ROP演算として最も単純なCOPY(上書き)を用い、また、マスクパターンの描画方法として、透過モードを用いて説明する。描画位置は図2の描画範囲Aの先頭ライン(y=3)、マスクパターンは図2の6×6のマスクパターンMを用いる。Sには全画素ON(濃度値100%)を、Dには低濃度(画素ONがまばらにある)のパターンを用いる。演算結果パターンをRとする。各画素をSx,Dxのようにxの添え字で表わす。
【0054】
MのON部分、例えば、M2およびM3(図5の矢印1に相当)とSがCOPY演算され、その結果、R2およびR3がONとなる。また、MのOFF部分、例えば、M4、M5、M6、およびM7(図5の矢印2に相当)は透過モードなのでそのままDが残り、その結果、R4はON,R5、R6およびR7はOFFとなる。この演算を式で表わすと以下のようになる。
R=(M and S)or((not M)and D)
【0055】
図2(b) の描画範囲Aのy=3のラインのx範囲は(3,11)なので、この範囲内の画素は演算結果のRを、範囲外の画素はそのままとするマスク処理(図5のM’)を行い、最終的にページメモリのデスティネーションパターンDを読み込んだ場所に格納する1ワードのビットマップパターンD’を得る。
【0056】
マスクパターンのビットONの部分をソースパターンに、ビットOFFの部分をデスティネーションパターンにする演算手段を用いてもよい。また、マスクパターンのビットONの部分を第1のソースパターンに、ビットOFFの部分を第2のソースパターンになる演算手段を用いてもよい。
【0057】
なお、前述した特開平10−031735号公報記載の装置および方法では、マスクパターンM、背景パターンP、グレー・スケールGの3つをキーとするキャッシュ方式が採用されているが、Mは本発明の図5の中のMに、Pは本発明の図5の中のDに、Gは本発明の図5の中のSにそれぞれ相当する。そして、本発明では特開平10−031735号公報記載のM、G、Pの演算にあたる部分を、図1の描画演算部3で行っている。しかし、本発明では、特開平10−031735号公報記載の装置および方法とは異なり、演算結果のキャッシュはしていない。
【0058】
以上のようにして、ワード境界マスクパターンを作成することで、任意の描画位置に対応するマスクパターンのワードデータの位置計算が簡素化され、高速な処理が可能となる。
【0059】
なお、第一実施例は、1bit/1Dotで説明されているが、2bit/1Dot、4bit/1Dotや8bit/1Dotであっても同様である。また、同実施例は、32bit/1ワードで説明されているが16bit/1ワードや64bit/1ワードであっても同様である。さらに、同実施例は、マスクパターンを敷き詰める際の起点座標を(X,Y)=(0,0)として説明されているが、任意の座標を指定し、そこを起点とすることも可能である。
【0060】
次に、本発明による画像出力装置の一実施形態たる第2実施例について以下説明する。
【0061】
図6には、第2実施例の構成図が示されている。画像出力装置1は、描画データ入力部2と、描画演算部3と、ページメモリ4と、出力装置5と、マスクパターン入力部10と、マスクパターン変換部11と、ワード境界マスクパターンメモリ12と、マスクパターン検索部13とで構成される。マスクパターン検索部13以外は第1実施例の構成と同じである。
【0062】
マスクパターンデータ入力部10にマスクパターンとそのID(マスクパターンID)が入力され、マスクパターン変換部11によってワード単位の描画に適したワード境界マスクパターンに変換される。そして、この変換されたマスクパターンは、そのIDと共にワード境界マスクパターンメモリ12に格納される。このようにして、複数のマスクパターンの登録が可能である。
【0063】
前述した描画演算部の描画データがマスクパターンを使用する場合、指定されたマスクパターンIDを用いて、マスクパターン検索部13により検索し、ワード境界マスクパターンメモリ12からマスクパターンを得る。
【0064】
マスクパターン検索部による検索方法としては、例えば、図7に示されているようなIDとマスクパターンメモリへのアドレスの組のテーブルを用いた順次検索が考えられる。もちろん、より高度な検索アルゴリズムを用いてもよい。
【0065】
検索用テーブルは、マスクパターン変換部11により作成される。ワード境界マスクパターンメモリへの登録が終了した時点で、IDとアドレスが検索用テーブルに追加される。また、検索用テーブルはマスクパターン検索部13により使用される。描画データ入力部2に入力された描画命令に含まれるマスクパターンIDを入力として、ワード境界マスクパターンへのアドレスを得る。
【0066】
なお、マスクパターンをディザパターンとし、マスクパターンIDをディザパターンのそれぞれに付加されるID(色濃度など)として入力し(ディザパターンID)、マスクパターン検索部にディザパターンIDを入力し、ワード境界マスクパターンを出力し、描画演算部にてソースパターンを使用する際にワード境界マスクパターンを使用するという構成も考えられる。
【0067】
次に、本発明による画像出力装置の一実施形態たる第3実施例について以下説明する。
【0068】
図8には、本発明による画像出力装置の第3実施例の構成図が示されている。画像出力装置1は、描画データ入力部2と、描画演算部3と、ページメモリ4と、出力装置5と、マスクパターン入力部10と、マスクパターン変換部11と、ワード境界マスクパターンメモリ12と、マスクパターン検索部13と、マスクパターンメモリ14とで構成される。マスクパターンメモリ14以外は第2実施例の構成と同じである。
【0069】
マスクパターンデータ入力部10にはマスクパターンとそのID(マスクパターンID)が入力され、そのままマスクパターンメモリ14に格納される。このようにして、複数のマスクパターンの登録が可能である。
【0070】
前述した描画演算部の描画データがマスクパターンを使用する場合、指定されたマスクパターンIDを用いて、マスクパターン検索部13により検索する。
【0071】
もし、必要なマスクパターンのIDに対応するワード境界マスクパターンがワード境界マスクパターンメモリ12に存在しない場合には、マスクパターン変換部11が、マスクパターンメモリ14に登録されている指定されたIDに対応したマスクパターンを用いて、ワード境界マスクパターンを作成する。作成されたワード境界マスクパターンは、ワード境界マスクパターンメモリ12に登録され、マスクパターン検索部13を通して、描画演算部3に渡される。
【0072】
ワード境界マスクパターンメモリはキャッシュメモリの役割をする。一定のメモリ量に達するまで、複数のワード境界マスクパターンを保持し、LRUや頻度情報などを用いて、ワード境界マスクパターンの登録、破棄などのキャッシュ操作を行うことで、マスクパターン変換部11での処理量を最小限に抑えることが可能となる。なお、キャッシュ操作はLRUや頻度情報以外の他の高度な方法を用いてもよい。
【0073】
なお、マスクパターンをディザパターンとし、マスクパターンIDをディザパターンそれぞれに付加されるID(色濃度など)として入力し(ディザパターンID)、マスクパターン検索部にディザパターンIDを入力し、ワード境界マスクパターンを出力し、描画演算部にてソースパターンを使用する際にワード境界マスクパターンを使用するという構成も考えられる。
【0074】
【発明の効果】
請求項1又は19に記載の発明によれば、任意の範囲のあるY座標の1ラインの描画処理において、マスクパターンで描画演算する際に、X座標描画位置によってマスクパターンをシフトしながら演算するのではなく、ワード単位で単一ワードまたは複数ワードを繰り返し参照することが可能となり、シフト演算が不要であり、かつ、メモリアクセス数も減少する。よって、描画処理の高速化ができる。
【0075】
請求項2または3記載の発明によれば、ワード境界マスクパターンをライン毎に連続したメモリ内に配置することで、次ラインへのアドレス移動がワード境界マスクパターンのワード幅分を移動するように定数を加算するだけとなる。よって、描画処理の高速化ができる。
【0076】
請求項4から7のいずれか1項に記載の発明によれば、ソースパターン、デスティネーションパターン、マスクパターンがすべてワード長なので、3つのパタンの指定された論理演算1回で、ワード内の画素(例えば、1bit/1画素であれば32画素)分の処理を行うことができ、かつ、メモリアクセス回数も最小となる。よって、描画処理の高速化ができる。
【0077】
請求項8または9記載の発明によれば、描画処理の高速化を図りながら、マスクパターンのビットONの個所に塗りたい色を指定することで、マスクパターン内で表現可能なパターンによる網掛けや、半透明表現、またビットONとビットOFFの個所それぞれに塗りたい色を指定でき、背景色を指定した網掛け表現等のグラフィック修飾表現が可能となる。
【0078】
請求項10記載の発明によれば、複数のマスクパターンを交互に使用し、頻繁にマスクパターンを変化させるような描画の場合、マスクパターンにIDを付加することにより、複数のマスクパターンを登録することが可能となり、描画命令としてマスクパターンIDの変更のみを付加するだけとなるので、データ転送量が減る。よって、1つのマスクパターンのみが登録される請求項1の構成のようにマスクパターンの変更毎にマスクパターンのダウンロードが必要となるのと比べて、描画処理をより高速化できる。
【0079】
請求項11から13のいずれか1項に記載の発明によれば、マスクパターンを保持し、ワード境界マスクパターンをキャッシュしておくことで、ワード境界マスクパターン変換処理を省く機会が増える。よって、描画処理をより高速化できる。なお、キャッシュ方法はLRUや頻度情報以外の他の高度なキャッシュ方法を用いてもよい。
【0080】
請求項14または15記載の発明によれば、ディザパターンは一般的に色濃度別のマスクパターンの繰り返しであるので、本発明をディザパターンの画像処理部に適用することで、高速化となる。また、写真画のような微小領域が異なるパターンで描画される集合であるイメージデータの場合にも適用可能であり、同様に高速化となる。
【0081】
請求項16記載の発明によれば、レーザプリンタのようにページメモリの生成をプリンタ側で行う場合、各描画命令からページメモリを生成するプリンタ側の処理に本発明が適用され、その処理が高速となる。
【0082】
請求項17記載の発明によれば、インクジェットプリンタのようにページメモリの生成をホストコンピュータ側で行う場合、各描画命令からページメモリを生成するホストコンピュータ側の処理に本発明が適用され、その処理が高速となる。
【0083】
請求項18記載の発明によれば、ページメモリの生成をプリンタ側のCPUを用いたソフトウェア処理ではなく、グラフィックアクセラレータ等の専用ASICで行うので、各描画命令からページメモリを生成するASIC内の処理に本発明が適用され、その処理が高速となる。
【図面の簡単な説明】
【図1】 本発明による画像出力装置の第1実施例の構成図である。
【図2】 本発明による画像出力装置の第1実施例の説明図である。
【図3】 本発明による画像出力装置の第1実施例の説明図である。
【図4】 本発明による画像出力装置の第1実施例のフローチャートである。
【図5】 本発明による画像出力装置の第1実施例の説明図である。
【図6】 本発明による画像出力装置の第2実施例の構成図である。
【図7】 本発明による画像出力装置の第2実施例の説明図である。
【図8】 本発明による画像出力装置の第3実施例の構成図である。
【符号の説明】
1 画像出力装置
2 描画データ入力部
3 描画演算部
4 ページメモリ
5 出力装置
10 マスクパターンデータ入力部
11 マスクパターン変換部
12 ワード境界マスクパターンメモリ
13 マスクパターン検索部
14 マスクパターンメモリ
Claims (19)
- 画像データ及びマスクパターンを入力するデータ入力手段と、
前記入力されたマスクパターンを、マスクパターン幅とワード内画素数との最小公倍数の幅で構成され、マスクパターン幅がワード内画素数の約数であれば、ワード境界マスクパターンは1ワード分の幅となり、そうでない場合は複数ワード分の幅となるワード単位の描画に適しているワード境界マスクパターンに変換し、ワード境界マスクパターンメモリに格納するマスクパターン変換手段と、
図形の範囲を指定する命令と、範囲内を塗りつぶす色を指定する命令と、マスクパターンをパラメータにより一意に指定する命令とからなる図形描画命令を、描画属性命令の指定に従ってページメモリに書き込む図形描画命令書き込み手段と、
前記指定された図形の範囲内の前記指定された色を表わすパターンと、前記マスクパターンをパラメータにより一意に指定する命令により指定されたマスクパターンと、描画演算処理前の前記ページメモリにあるパターンと、の3つのパターンを用いて演算を行い、該演算結果を前記ページメモリに書き込む描画演算手段と、
前記ページメモリに書き込まれた前記ページメモリを出力装置に渡すデータ出力手段と、
を具備し、
前記描画演算手段が用いる前記指定されたマスクパターンは、前記ワード境界マスクパターンメモリに格納された前記ワード境界マスクパターンであることを特徴とする画像出力装置。 - 前記マスクパターンを、前記マスクパターンの幅方向(主走査方向)の繰り返しをワード単位で描画演算する際に、前記マスクパターンに対するビットシフト演算が不要となるように、あらかじめワード単位での繰り返しとなるようなパターンデータに変換する手段をさらに有することを特徴とする請求項1記載の画像出力装置。
- 前記マスクパターンの高さ方向のパターンすべてに請求項2記載の変換を行い、得られた結果を1つの連続したメモリ上に配置し、作成する手段をさらに有することを特徴とする請求項2記載の画像出力装置。
- 前記描画範囲内の色を表わすソースパターンと、前記描画範囲に対応する前記ページメモリに存在するデスティネーションパターンと、前記ワード境界マスクパターンメモリ内にある前記マスクパターンの3つのパターンに対して、
AND,OR,EOR,NOTの論理演算を組み合わせた演算を行う手段と、
前記演算結果を前記デスティネーションパターンと同位置の前記ページメモリに格納する手段とをさらに有することを特徴とする請求項1記載の画像出力装置。 - 前記3つのパターンに対する論理演算をCPUのワード長のメモリ単位で行う手段をさらに有することを特徴とする請求項4記載の画像出力装置。
- 描画位置座標から、その座標を含むワード長デスティネーションパターンのメモリ位置を計算する手段と、
前記描画位置座標に対応する座標を含むワード長ソースパターンを取得する手段と、
前記描画位置座標に対応する座標を含むワード境界マスクパターンのメモリ位置を計算する手段とをさらに有することを特徴とする請求項5記載の画像出力装置。 - 前記描画演算手段は、前記描画範囲内は演算結果となり、前記描画範囲外は前記デスティネーションパターンのままとなることを特徴とする請求項5記載の画像出力装置。
- 前記マスクパターンのビットONの部分を前記ソースパターンに、ビットOFFの部分を前記デスティネーションパターンになる演算手段をさらに有することを特徴とする請求項4記載の画像出力装置。
- 前記マスクパターンのビットONの部分を第1のソースパターンにし、ビットOFFの部分を第2のソースパターンにする演算手段をさらに有することを特徴とする請求項4記載の画像出力装置。
- マスクパターンIDを入力する手段と、
前記マスクパターンデータと前記マスクパターンIDとの組み合わせで前記ワード境界マスクパターンメモリに格納する手段と、
前記組み合わせを複数格納する手段と、
前記マスクパターンIDから前記ワード境界マスクパターンメモリを検索する手段とをさらに有することを特徴とする請求項1記載の画像出力装置。 - 前記マスクパターンIDを入力する手段と、
前記マスクパターンデータを前記マスクパターンメモリに格納する手段と、
前記マスクパターンデータと前記マスクパターンIDとの組み合わせで前記ワード境界マスクパターンメモリに格納する手段と、
前記マスクパターンIDから前記ワード境界マスクパターンメモリを検索する手段と、
描画演算にて前記マスクパターンIDを検索した結果、前記ワード境界マスクパターンメモリに存在しなかった場合、前記マスクパターンIDに対応するマスクパターンを前記マスクパターンメモリから検索する手段と、
検索により得られた前記マスクパターンを前記ワード境界マスクパターンに変換する手段と、
変換された前記ワード境界マスクパターンを前記ワード境界マスクパターンメモリの未使用メモリ領域に格納する手段と、
前記未使用メモリ領域が不足した場合、既存のワード境界マスクパターンを破棄する手段とをさらに有することを特徴とする請求項1記載の画像出力装置。 - 前記ワード境界マスクパターンメモリの未使用メモリ領域が不足した場合の既存メモリの破棄には、LRU(Least Recently Used )を用いる手段をさらに有することを特徴とする請求項11記載の画像出力装置。
- 前記マスクパターンIDの検索において、IDの頻度情報テーブルを管理する手段と、
前記ワード境界マスクパターンメモリの未使用メモリ領域が不足した場合の既存メモリの破棄には、前記頻度情報テーブルを用いて最も頻度の低いメモリを破棄する手段とをさらに有することを特徴とする請求項11記載の画像出力装置。 - 前記ソースパターンが色濃度の擬似階調を表現するディザのパターンであることを特徴とする請求項1、10または11のいずれか1項に記載の画像出力装置。
- 前記マスクパターンをディザパターンに、前記マスクパターンIDをディザパターンそれぞれに付加されるID(色濃度など)をデータとして入力する手段と、
前記検索手段にディザパターンIDを入力とし、ワード境界ソースパターンを出力とし、前記演算処理手段にてソースパターンを使用する際にワード境界ソースパターンを使用する手段とをさらに有することを特徴とする請求項11または14記載の画像出力装置。 - 前記出力装置がレーザプリンタであることを特徴とする請求項1、10または11のいずれか1項に記載の画像出力装置。
- 前記出力装置がインクジェットプリンタであることを特徴とする請求項1、10または11のいずれか1項に記載の画像出力装置。
- 前記各種演算処理をグラフィック アクセラレータ等の専用ASICで行われることを特徴とする請求項1、10または11のいずれか1項に記載の画像出力装置。
- データ入力手段が、画像データ及びマスクパターンを入力するデータ入力工程と、
前記データ入力工程により入力されたマスクパターンを、マスクパターン変換手段が、マスクパターン幅とワード内画素数との最小公倍数の幅で構成され、マスクパターン幅がワード内画素数の約数であれば、ワード境界マスクパターンは1ワード分の幅となり、そうでない場合は複数ワード分の幅となるワード単位の描画に適しているワード境界マスクパターンに変換し、ワード境界マスクパターンメモリに格納するマスクパターン変換工程と、
図形描画命令書き込み手段が、図形の範囲を指定する命令と、範囲内を塗りつぶす色を指定する命令と、マスクパターンをパラメータにより一意に指定する命令とからなる図形描画命令を、描画属性命令の指定に従ってページメモリに書き込む図形描画命令書き込み工程と、
前記指定された図形の範囲内の前記指定された色を表わすパターンと、前記マスクパターンをパラメータにより一意に指定する命令により指定されたマスクパターンと、描画演算処理前の前記ページメモリにあるパターンと、の3つのパターンを用いて演算を行い、該演算結果を前記ページメモリに書き込む描画演算工程と、
前記描画演算工程により前記ページメモリに書き込まれた前記ページメモリを、データ出力手段により出力装置に渡すデータ出力工程と、を有し、
前記描画演算工程において用いられる前記指定されたマスクパターンは、前記ワード境界マスクパターンメモリに格納された前記ワード境界マスクパターンであることを特徴とする画像出力装置の画像出力方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002045398A JP4010537B2 (ja) | 2002-02-21 | 2002-02-21 | 画像出力装置及び該装置の画像出力方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002045398A JP4010537B2 (ja) | 2002-02-21 | 2002-02-21 | 画像出力装置及び該装置の画像出力方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003248834A JP2003248834A (ja) | 2003-09-05 |
JP2003248834A5 JP2003248834A5 (ja) | 2005-07-14 |
JP4010537B2 true JP4010537B2 (ja) | 2007-11-21 |
Family
ID=28659291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002045398A Expired - Fee Related JP4010537B2 (ja) | 2002-02-21 | 2002-02-21 | 画像出力装置及び該装置の画像出力方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4010537B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5079341B2 (ja) | 2006-06-01 | 2012-11-21 | 株式会社リコー | 印刷データ処理装置 |
JP6110685B2 (ja) | 2013-02-18 | 2017-04-05 | 株式会社ニューフレアテクノロジー | 荷電粒子ビーム描画装置、及びバッファメモリのデータ格納方法 |
JP5840174B2 (ja) * | 2013-06-21 | 2016-01-06 | キヤノン株式会社 | 情報処理装置、その装置の制御方法、プログラム |
-
2002
- 2002-02-21 JP JP2002045398A patent/JP4010537B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003248834A (ja) | 2003-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4280270B2 (ja) | 幾何プリミティブのインデックスを外す方法、ラスタ化装置、コンピュータ可読媒体 | |
JPH06309466A (ja) | グラフィカル・イメージの表示装置及び方法 | |
Arabnia et al. | A transputer network for fast operations on digitised images | |
JP6379516B2 (ja) | 上塗りコーティング処理のための機構 | |
JP4010537B2 (ja) | 画像出力装置及び該装置の画像出力方法 | |
US7965411B2 (en) | Image forming apparatus and method for faster rendering of monochromatic scan lines | |
US5920324A (en) | Character pattern producing apparatus capable of producing character pattern having connected character elements | |
JP5079341B2 (ja) | 印刷データ処理装置 | |
JP3922568B2 (ja) | 画像処理装置、描画処理方法及び該方法を実行するためのプログラム | |
JPH1035055A (ja) | 印刷方法 | |
JP4380947B2 (ja) | 画像出力装置 | |
JP4159756B2 (ja) | 画像処理装置 | |
JPH02270019A (ja) | 高品質文字パターン発生方式 | |
JP2007219019A (ja) | 文字生成処理方法 | |
JP2762856B2 (ja) | 図形パターン格納装置 | |
JP3800280B2 (ja) | 破線生成装置 | |
JP3964704B2 (ja) | 画像処理装置、画像形成装置、画像出力システム及び画像処理方法 | |
JP3211591B2 (ja) | イメージ処理装置 | |
JPH0573693A (ja) | 輪郭塗り潰し方式 | |
JP2710131B2 (ja) | 文字処理装置及び方法 | |
JPH08194458A (ja) | 文字処理装置 | |
JP2008018577A (ja) | 画像形成装置、画像形成方法及びプログラム | |
JPS6350714B2 (ja) | ||
Arabnia et al. | A Transputer Network for Fast Operations on Digitised Images zyxwvutsrqponm | |
JPH03144867A (ja) | 直線描画方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041110 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041110 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20041110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070802 |
|
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: 20070828 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070903 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110914 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130914 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |