JP3876163B2 - Image output device - Google Patents

Image output device Download PDF

Info

Publication number
JP3876163B2
JP3876163B2 JP2002006359A JP2002006359A JP3876163B2 JP 3876163 B2 JP3876163 B2 JP 3876163B2 JP 2002006359 A JP2002006359 A JP 2002006359A JP 2002006359 A JP2002006359 A JP 2002006359A JP 3876163 B2 JP3876163 B2 JP 3876163B2
Authority
JP
Japan
Prior art keywords
pattern
mask
mask pattern
density
command
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
Application number
JP2002006359A
Other languages
Japanese (ja)
Other versions
JP2003209679A (en
Inventor
博史 石原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002006359A priority Critical patent/JP3876163B2/en
Publication of JP2003209679A publication Critical patent/JP2003209679A/en
Application granted granted Critical
Publication of JP3876163B2 publication Critical patent/JP3876163B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、画像出力装置に関し、特に任意の図形形状にマスクパターンを描画する場合に、ユーザの意図どおりにマスクパターン描画が可能な画像出力装置に関する。
【0002】
【従来の技術】
グラフィック用アプリケーションやDTPアプリケーションでは、ユーザが指定した任意の図形の範囲内をマスクパターンで描画する方法を用意していることが多い。例えば、マスクのビットONの画素には指定された色を、マスクのビットOFFの画素には背景を残すことで半透明となるような図形を作成する方法である。また、階調表現能力の低い印刷装置では、ディザパターン等を用いて指定された色濃度を一定の面積を用いて疑似階調表現する手法が多く用いられる。この場合、マスク上に指定された色を表現するためにはマスクとディザパターンのAND演算を行うことになる(従来技術1)。
この従来技術1としては、例えば特開2000-203010号公報, 特開2000-270214号公報「インクジェットプリンタにおけるドット削減方法」の提案がある。
この提案は、色濃度に応じて間引き率(とそれに対応したマスクパターン)を変化させている。
【0003】
また、プリンタではトナーやインク等の印刷色材を節約するための機能を用意していることが多い。それには一定のマスクパターンでページ全体の描画ドットの削減を行う方式が一般的である(従来技術2)。
この従来技術2としては例えば、特開平09-245150号公報「画像形成方法とその装置」の提案がある。
この提案は、削減用パターンを複数用意し、過度な削減結果とならないように利用者にパターンを選択させる方法である。例えば、第1の実施例における図3,段落番号0031で、B1のパターンを用いると斜めラインのパターンB2が全く残らないが、そのような場合にはA1を選択させることで問題を回避している。
【0004】
【発明が解決しようとする課題】
しかしながら、従来技術1では、前述の演算により疑似階調表現に必要なビットマップパターンが得られず、指定された濃度より低い濃度で印刷される場合がある。これは双方の繰り返し周波数が近いほどその誤差が拡大し、周波数が一致、つまり同じ幅高さを持つ状態で誤差最大となる可能性が大きくなる。マスクとディザパターンによっては全く印刷されない(濃度0)場合もある。前記特開2000-203010号公報, 特開2000-270214号公報の場合には、ユーザアプリケーションが指定するパターンのようにパターンが限定されている場合は回避が不可能である。
【0005】
また従来技術2では、描画図形によってはドットの削減量が多く、場合によっては全く印刷されない等、オリジナルの図形から大きくかけ離れてしまう場合がある。前記特開平09-245150号公報の場合には、パターン自体が選択可能であることが完全消失問題を回避する手段となっているが、ユーザアプリケーションが指定するパターンのようにパターンが限定されている場合は回避が不可能である。
【0006】
そこで本発明の課題は、任意の図形形状にマスクパターンを描画する場合に、ユーザの意図どおりにマスクパターン描画が可能な画像出力装置を提供することである。
【0007】
【課題を解決するための手段】
前記課題を解決するために請求項1の発明は、当該画像出力装置に適用する画像データの図形描画命令は、ページメモリ上の任意の図形範囲を指定する命令と、階調濃度を指定する命令と、前記指定された範囲内を前記指定された階調濃度で塗りつぶす命令と、マスクパターンを指定する命令と、前記指定された範囲内をマスクパターンによりマスク演算する命令からなり、前記図形描画命令を解釈する図形描画命令解釈手段と、前記図形描画命令を描画属性命令の指定に従ってページメモリに描画を行う図形描画手段と、該図形描画手段によって得られたページメモリ描画を出力手段に渡すページメモリ描画移転手段と、前記指定された階調濃度に対応するビットマップパターンを取得するビットマップパターン取得手段と、前記指定された範囲内を、前記指定された諧調濃度に対応するビットマップパターンを敷き詰めて描画する敷き詰め描画手段と、前記指定された範囲内を、前記指定されたマスクパターンを用いてマスク演算する第1マスク演算手段と、マスクパターンを指定するマスクパターン指定手段と、該マスクパターン指定手段で指定したマスクパターンと前記ビットマップパターンとでマスク演算( AND 演算)を行う第2マスク演算手段と、前記マスクパターン指定手段が指定したマスクパターンの開始位置を計算するマスクパターン開始位置計算手段と、ビットマップパターンとマスクパターンをマスク演算した結果のビット ON 画素数が、最大になるマスクパターンの開始位置を計算する最大マスクパターン開始位置計算手段とを備えたことを特徴とする。
【0008】
このようにすれば、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの最高濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。また、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの理論濃度値に最も近い濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度や高濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
【0010】
また、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの最高濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。また、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの理論濃度値に最も近い濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度や高濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
【0011】
また、ビットマップパターンとマスクパターンをマスク演算した結果のビットON画素数が、最大になるマスクパターンの開始位置を計算する最大マスクパターン開始位置計算手段を備えていて、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの最高濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
【0012】
請求項2記載の画像出力装置は、上記装置の最大マスクパターン開始位置計算手段に換えて、ビットマップパターンとマスクパターンをマスク演算した結果のパターンで表現される濃度と、描画命令で指定された濃度との差分が最小になるマスクパターンの開始位置を計算する最小マスクパターン開始位置計算手段を備えたことを特徴とする。このようにすれば、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの理論濃度値に最も近い濃度となるマスクパターン開始位置を計算しているので、出力結果が理論濃度より低濃度や高濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
【0013】
また、請求項3では、請求項1または2のいずれか記載の画像出力装置において、指定される階調濃度が8ビットで表現可能な0〜255の整数の濃度値、ビットマップパターンが疑似階調を表現するディザパターンであることを特徴とする。このようにすれば、ディザパターンは1画素での階調表現能力の低い画像出力装置において、ドットの集合パターンを使うことで疑似階調を表現するために用いられる。通常、ディザパターンは指定可能な濃度種類数(通常8ビットで表現可能な0〜255の256通り)分のビットマップであり、それをタイル状に敷き詰めることで描画される。本発明のビットマップパターンに前記ディザパターンが適用可能であり、適用すれば請求項1または2のいずれかの発明による効果が見込めるため同等の効果が得られる。
【0014】
また、請求項4では、請求項3記載の画像出力装置において、描画対象となる図形の種類(文字、グラフィック、イメージ等)毎にディザパターンを有し、複数のディザパターンを描画命令毎に切り替えるディザパターン切替手段を備えたことを特徴とする。このようにすれば、描画対象となる図形の種類(文字、グラフィック、イメージ等)毎にディザパターンの切り替えが可能な複数のディザパターンを有する画像印刷装置でも、ディザパターンそれぞれに請求項3の描画方法を適用することで、同様の効果が得られる。
【0015】
また、請求項5では、請求項3記載の画像出力装置において、指定されるパラメータがカラー印刷に用いられるCMYK色用の色濃度、ビットマップパターンが疑似階調を表現するCMYKそれぞれのディザパターンであることを特徴とする。このようにすれば、ディザパターンはCMYKを色材とするカラーの印刷装置にも一般的に使用される。各色材毎にディザパターンを有し、各色材毎にページメモリを生成し、出力時にそれらを重ねあわせて印刷する。各色材毎のディザパターンそれぞれに請求項1,2を適用してしまうと、各色材毎のマスクパターン開始位置が異なってしまい、それらを重ねあわせると期待結果と異なってしまう。そこで、マスクパターン開始位置計算時に全色材に対するビットON画素数を計算することで、全色材共通のマスクパターン開始位置を得られることができるので、請求項1,2と同様の効果が得られる。
【0016】
また、請求項6では、請求項3,4,5のいずれか記載の画像出力装置において、閾値(オーダ)テーブルからディザパターンを作成するディザパターン作成手段を備えたことを特徴とする。このようにすれば、ディザパターンは各濃度値毎に1つ必要となりデータ量が大きくなるため、ディザパターンのビットがOFFからONに変化する濃度値の閾値を幅高さ分有する閾値(オーダ)テーブルから作成されるのが一般的である。閾値テーブルを用いてディザパターンを得る装置においても、請求項3の描画方法を適用することで、同様の効果が得られる。
【0017】
また、請求項7では、請求項3,4,5のいずれか記載の画像出力装置において、マスクパターンが印刷色材を節約するためのパターンであることを特徴とする。このようにすれば、マスクパターンはトナーやインク等の印刷色材を節約するために用いられることがある。この場合、ページ全体にマスクパターンが適用されるので、この節約用マスクパターンを用いた通常の図形描画処理で本発明が適用可能である。
【0018】
また、請求項8では、請求項1または2記載の画像出力装置において、ビットマップパターンの1画素が多値で表現されることを特徴とする。このようにすれば、ビットマップパターンの1画素がビットON/OFFの2値ではなく、複数ビットによる多値で表現される場合、ビットON画素数を対象とするのではなく、ビットONとなるビット数を対象とすることで本発明が適用可能である。
【0019】
また、請求項9では、請求項1または2記載の画像出力装置において、出力手段がレーザプリンタであることを特徴とする。このようにすれば、レーザプリンタのようにページメモリの生成をプリンタ側で行う場合、各描画命令からページメモリを生成するプリンタ側の処理に本発明が適用可能である。
【0020】
また、請求項10では、請求項1または2記載の画像出力装置において、出力手段がインクジェットプリンタであることを特徴とする。このようにすれば、インクジェットプリンタのようにページメモリの生成をホストコンピュータ側で行う場合、各描画命令からページメモリを生成するホストコンピュータ側の処理に本発明が適用可能である。
【0021】
また、請求項11では、請求項1または2記載の画像出力装置において、ページメモリ生成までの演算処理をグラフィックアクセラレータ等の専用ASICで行うことを特徴とする。このようにすれば、ページメモリの生成をプリンタ側のCPUを用いたソフトウェア処理ではなく、グラフィックアクセラレータ等の専用ASICで行う場合、各描画命令からページメモリを生成するASIC内の処理に本発明が適用可能である。
【0022】
また、請求項12では、請求項1または2記載の画像出力装置において、ページメモリ生成までの演算処理をホストコンピュータ側で行うことを特徴とする。このようにすれば、出力装置に関係なく、ページメモリの生成をホストコンピュータ側で行う場合、各描画命令からページメモリを生成するホストコンピュータ側の処理に本発明が適用可能である。
【0023】
【発明の実施の形態】
以下、本発明を図示の実施の形態に基づいて説明する。
(1)第1の実施の形態…請求項1に対応
図1は第1の実施の形態および次に説明する第2の実施の形態を適用する画像出力装置システムGSの構成図である。図1に示すように、画像出力装置システムGSは、データ入力装置10と、画像出力装置20と、「出力手段」である出力装置30とからなる。データ入力装置10は、画像出力装置20に描画データを入力する。画像出力装置20は、「図形描画命令解釈手段」であるインタプリタ21,「マスクパターン開始位置計算手段,最大マスクパターン開始位置計算手段,最小マスクパターン開始位置計算手段」であるマスク座標計算処理22,「図形描画手段,ページメモリ描画移転手段,ビットマップパターン取得手段」である図形描画処理23,「マスクパターン指定手段,第1マスク演算手段,第2マスク演算手段,敷き詰め描画手段」であるマスク描画処理24,CPU25,中間データメモリ26,マスクパターンメモリ27,ビットマップパターンメモリ28,ページメモリ29で構成され、出力装置30に出力する。
【0024】
画像出力装置20に入力された描画データはインタプリタ21に入力され、その後の描画処理に適した中間データに解釈され、中間データメモリ26に蓄積される。計算処理はCPU25が行う。中間データは描画範囲指定命令,描画色指定命令等で構成され、その中にマスクパターン指定命令を含む。マスクパターン指定命令はマスクパターンメモリ27にデータを格納する。
図形描画処理23は、中間データメモリ26の内容に従ってそこに含まれた図形を描画する。指定色に対応したビットマップパターンをビットマップパターンメモリ28から取得し、ページメモリ29に描画する。マスクパターンを用いた図形の場合、マスク描画処理24がマスクパターンメモリ27に格納されたマスクパターンと指定された描画範囲,描画色で描画処理を行う。その際、マスク座標計算処理22を用いてマスクパターンの開始座標の計算を行う。1ページ分の描画命令が終了したら、ページメモリ29の内容を出力装置30に出力する。
【0025】
図2にて、図1のマスク描画処理24で行われるマスク演算の簡単な例を説明する。まず、図1のビットマップパターンメモリ28から演算元となるソースパターンS(図2(a))を得る。これは、描画色指定命令で指定された描画色に対応したビットマップである。大きさは 8×8の64画素である。白部分をビットOFF、黒部分をビットONとする。また、マスクパターンメモリ27からマスクパターンM(図2(b))を得る。これは、マスクパターン指定命令に対応したビットマップである。簡単のためソースパターンSと同じ大きさとする。ソースパターンSとマスクパターンMの同位置をAND演算した結果が、結果パターンD(図2(c))である。これをページメモリ29上の指定された範囲に、指定されたページメモリとの演算方法(例えば上書きならSET演算)を用いて描画する。実際の描画では、描画範囲に合わせて、ソースパターンSを縦横にタイル状に敷き詰めたパターン集合と、同じくマスクパターンMを縦横に敷き詰めたパターン集合との演算を行う。
【0026】
本実施の形態では、結果パターンDが最大濃度(ビットONが最大個数)になるようにマスクパターンMの開始位置座標を移動する。マスクパターンは縦横繰り返して用いられるので、開始位置座標を移動してもパターン自体は変わらない。
【0027】
図3に、図1におけるマスク座標計算処理で計算される開始位置座標の処理フローを示す。
Step1にて、ビットON最大画素数Dmax,最大画素数となる座標(Dx,Dy)を0に初期化する。これらはStep5で用いられる。
Step2にて、マスクパターン開始Y座標であるyを0に初期化する。
Step3にて、マスクパターン開始X座標であるxを0に初期化する。
【0028】
Step4にて、マスクパターンの原点を (x,y) 分(右下に)ずらす。マスクパターンは縦横繰り返して用いられるので、ずらしたことではみ出た部分は循環する。例えば、1画素分縦にずらす(y=1)のであれば、全画素を1画素分縦にずらした後、はみ出た最終行が1行目に移動する。また、2画素分横にずらす(x=1)のであれば、全画素を2画素分横にずらした後、はみ出た右から2画素分が、そのまま左から2画素分に移動する。できたマスクパターンとソースパターンSでマスク演算(AND)を行い、ビットONの画素数をカウントし、それを変数Dnumに設定する。
Step5にて、Step4でカウントされたDnumと、今までのビットON最大画素数Dmaxと比較し、Dnumのほうが大きければStep6へ、以下だったらStep7へ進む。
【0029】
Step6にて、Step5でDnum>Dmaxと判定されたので、Dnum, x, y をそれぞれ Dmax, Dx, Dy に保存する。これが現時点でのビットON画素最大となる数と位置となる。
Step7にて、xを1つ増やし、同一ライン (y) での右方向へのずらしが全パターン終了したらStep8に進み、途中であればStep4に戻る。
Step8にて、yを1つ増やし、下方向へのずらしが全パターン終了したら処理終了、途中であればStep3に戻る。
処理終了した時点の (Dx, Dy) が、ビットON画素が最大となるマスクパターンMのずらし量、つまり、マスクパターンMの開始座標点となる。
【0030】
図4に本実施の形態の適用例を示す。まず、図4(a)のソースパターンSと図4(b)のマスクパターンMを入力として図3のフローを用いて計算すると (Dx, Dy) = (3, 3) という結果が得られる。マスクパターンMを(3,3)ずらした結果が図4(c)のマスクパターンM’である。これとソースパターンSでマスク演算を行うと、図4(d)の結果パターンが得られる。これは、マスクパターンMの左上にある2x2のビットON画素(図4(b)の2)がマスクパターンM’の図4(c)の3の位置に移動し、これとソースパターンSの中央にある2x2のビットON画素(図4(a)の1)が重なり、結果パターンDでビットON画素が4画素となる位置である。
【0031】
本実施の形態の作用効果
このように、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常にそのマスクパターンでの最高濃度となるマスクパターン開始位置を計算することで、出力結果が理論濃度より低濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。例えば、図2(b)のマスクパターンMが横に2画素ずれたパターンとソースパターンSでマスク演算すると全画素ビットOFFとなり、この組み合わせを用いた図形描画では何も描画されないことになるが、本実施の形態を用いれば図4(d)にあるように4画素分、濃度にして 4/64 にて描画される。
【0032】
本実施の形態では結果パターン濃度が最高濃度となるように計算しているので、理論的な濃度値との差分が生じることになる。理論濃度はソースパターンSに対応する濃度LsとマスクパターンMの濃度Lmを乗じた値 Ls × Lm とする。この差分は濃度の高いほう(濃いほう)への差分となるので、理論濃度より濃いパターンで描画されることがある。例えば、図4では、Ls = 8/64, Lm=8/64 であるので理論濃度は 1/64 となり、理論的には 64画素で1画素がビットONになれば良いのだが、本実施の形態を用いると図4(d)の4画素がビットONとなり、その差3画素分濃く出ることになる。
【0033】
マスクパターンを用いた図形の出力濃度の正確性を求められる用途には不向きだが、一般的なビジネス文書に見られるような図表やグラフなどの塗りつぶしに用いるマスクパターンでは、多少濃度差があっても何も出力されないような濃度0での出力は回避されること、マスクパターンが異なってもマスクパターン濃度Lmが同一であれば任意のソースパターンに対応する指定濃度Ls、任意の位置で、同一濃度で出力されることが要求される。このような用途に本例を適用すると要求事項が満たされる。
なお、本例ではソースパターン1画素が表現しうる階調数を2値 (1bit) としたが、2bit, 4bit, 8bit 等の多値でも同様に適用可能である。
【0034】
(2)第2の実施の形態…請求項2に対応
前記第1の実施の形態では、結果パターンDが最大濃度(ビットONが最大個数)になるようにマスクパターンMの開始位置座標を計算したが、本実施の形態では、ソースパターンSに対応する濃度LsとマスクパターンMの濃度Lmから、結果パターンDの濃度Ldが理論濃度 Ls × Lm に最も近い濃度となるようなマスクパターンMの開始位置座標を計算する。画像出力装置システムGSの構成図は、図1と同様である。
【0035】
図5に、図1におけるマスク座標計算処理で計算される開始位置座標の処理フローを示す。
Step0にて、理論濃度 Ls × Lm に最も近いパターンのビットON画素数Dtを計算する。Lsを入力濃度値(0.0〜1.0)、Lmを指定されたマスクパターンMのビットON画素割合 (ビットON画素数÷全画素数)、Dw,DhをそれぞれマスクパターンMの幅高さとすると、以下の計算式からDtを計算する。
Dt = (Ls × Lm) × (Dw × Dh) (式1)
Dt は小数なので切り上げ、切り捨て、四捨五入により整数に丸める(方法は任意)。
これに最も近いビットON画素数となる開始位置座標を以下のStepで検索することになる。
【0036】
Step1にて、最も近いビットON画素数Daveを (Dw×Dh) に、座標(Dx,Dy)をそれぞれ0に初期化する。これらはStep5で用いられる。
Step2にて、マスクパターン開始Y座標であるyを0に初期化する。
Step3にて、マスクパターン開始X座標であるxを0に初期化する。
Step4にて、マスクパターンの原点を (x,y) 分(右下に)ずらす。マスクパターンは縦横繰り返して用いられるので、ずらしたことではみ出た部分は循環する。例えば、1画素分縦にずらす(y=1)のであれば全画素を1画素分縦にずらした後、はみ出た最終行が1行目に移動する。また、2画素分横にずらす(x=1)のであれば、全画素を2画素分横にずらした後、はみ出た右から2画素分が、そのまま左から2画素分に移動する。できたマスクパターンとソースパターンSでマスク演算(AND)を行い、ビットON画素数をカウントし、それを変数Dnumに設定する。
【0037】
Step5にて、Step4でカウントされたDnumと、今までDtに最も近いビットON最大画素数Daveとの差分の絶対値とを比較し、Daveのほうが大きければStep6へ、以下だったらStep7へ進む。
Step6にて、Step5でDaveがDtに最も近いと判定されたので、Dnum, x, y をそれぞれ Dave, Dx, Dy に保存する。これが現時点でDtに最も近いビットON画素数とその位置となる。
Step7にて、xを1つ増やし、同一ライン (y) での右方向へのずらしが全パターン終了したらStep8に進み、途中であればStep4に戻る。
Step8にて、yを1つ増やし、下方向へのずらしが全パターン終了したら処理終了、途中であればStep3に戻る。
処理終了した時点の (Dx, Dy) が理論濃度に最も近いビットON画素数となるマスクパターンMとなるずらし量、つまり、マスクパターンMの開始座標点となる。
【0038】
図6に本実施の形態の適用例を示す。ここでは、Ls=8/64 の入力データから図6(a)のソースパターンSがビットマップパターンメモリから得られたとする。また、図6(b)のマスクパターンMの濃度は Lm=8/64 である。また、Dw=Dh=8である。これらの値を図5のStep0の式1に当てはめると、Dt=1となる。以降図5のフローを用いて計算すると (Dx, Dy) = (3,1) という結果が得られる。マスクパターンMを(3,1)ずらした結果が図6(c)のマスクパターンM’である。これとソースパターンSでマスク演算を行うと、図6(d)の結果パターンが得られる。これは、マスクパターンMの左上にある2×2のビットON画素(図6(b)の2)がマスクパターンM’の図6(c)の3の位置に移動し、これとソースパターンSの一番上のビットON画素(図6(a)の1)が重なり、結果パターンDでビットON画素が1画素となる位置である。
【0039】
本実施の形態の作用効果
このように、ソースパターンとマスクパターンの組み合わせで得られる結果パターンの濃度が、常に理論濃度に近い値となるマスクパターン開始位置を計算することで、出力結果が理論濃度とは異なる濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。例えば、図4または図6のソースパターンSの濃度はLs = 8/64, マスクパターンの濃度は Lm=8/64 であるので、理論濃度は 1/64 である。本例を用いないと、得られる結果パターンDの濃度は図2(c) にあるようにビットON画素が2画素となる 2/64 となり、また、第1の実施の形態を用いると 4/64 となり、双方理論濃度と実際に得られる出力濃度との間に差が生じる。
【0040】
マスクパターンを用いた図形の出力濃度の正確性を求められる用途に本例を適用すると要求事項が満たされる。
なお、本例ではソースパターン1画素が表現しうる階調数を2値 (1bit) としたが、2bit, 4bit, 8bit 当の多値でも同様に適用可能である。
【0041】
なお、前記各実施の形態では矩形の場合を説明したが、例えば円形,楕円形等の任意形状の図形の場合にも、本発明を適用可能であるのは勿論である。
【0042】
【発明の効果】
以上説明したように本発明によれば、以下の効果を発揮することができる。
(1)請求項1によれば、出力結果が理論濃度より低濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
(2)請求項2によれば、出力結果が理論濃度より低濃度や高濃度となる不具合や、最悪完全に描画されない(濃度0)不具合を回避することが可能となる。
【0043】
(3)請求項3によれば、ディザパターンは1画素での階調表現能力の低い画像出力装置において、ドットの集合パターンを使うことで疑似階調を表現するために用いられる。通常、ディザパターンは指定可能な濃度種類数(通常8ビットで表現可能な0〜255の256通り)分のビットマップであり、それをタイル状に敷き詰めることで描画される。本発明のビットマップパターンに前記ディザパターンが適用可能であり、適用すれば請求項1,2の効果が見込めるため同等の効果が得られる。
【0044】
(4)請求項4によれば、描画対象となる図形の種類毎にディザパターンの切り替えが可能な複数のディザパターンを有する画像印刷装置でも、ディザパターンそれぞれに請求項3の描画方法を適用することで、同様の効果が得られる。
(5)請求項5によれば、マスクパターン開始位置計算時に全色材に対するビットON画素数を計算することで、全色材共通のマスクパターン開始位置を得られることができるので、請求項3,4と同様の効果が得られる。
【0045】
(6)請求項6によれば、閾値テーブルを用いてディザパターンを得る装置においても、請求項3の描画方法を適用することで、同様の効果が得られる。
(7)請求項7によれば、マスクパターンはトナーやインク等の印刷色材を節約するために用いられる場合に、ページ全体にマスクパターンが適用されるので、この節約用マスクパターンを用いた通常の図形描画処理で本発明が適用可能である。
(8)請求項8によれば、ビットマップパターンの1画素がビットON/OFFの2値ではなく、複数ビットによる多値で表現される場合に、ビットON画素数を対象とするのではなく、ビットONとなるビット数を対象とすることで本発明が適用可能である。
【0046】
(9)請求項9によれば、レーザプリンタのようにページメモリの生成をプリンタ側で行う場合に、各描画命令からページメモリを生成するプリンタ側の処理に本発明が適用可能である。
(10)請求項10によれば、インクジェットプリンタのようにページメモリの生成をホストコンピュータ側で行う場合に、各描画命令からページメモリを生成するホストコンピュータ側の処理に本発明が適用可能である。
(11)請求項11によれば、ページメモリの生成をプリンタ側のCPUを用いたソフトウェア処理ではなく、グラフィックアクセラレータ等の専用ASICで行う場合に、各描画命令からページメモリを生成するASIC内の処理に本発明が適用可能である。
(12)請求項12によれば、出力装置に関係なく、ページメモリの生成をホストコンピュータ側で行う場合に、各描画命令からページメモリを生成するホストコンピュータ側の処理に本発明が適用可能である。
【図面の簡単な説明】
【図1】本発明の第1,第2の実施の形態を適用する画像出力装置システムの構成図である。
【図2】画像出力装置システムにおけるマスク描画処理で行われるマスク演算の簡単な例の説明図であって、(a)はソースパターン、(b)はマスクパターン、(c)は結果パターンである。
【図3】第1の実施の形態におけるマスク座標計算処理で計算される開始位置座標の処理フローである。
【図4】第1の実施の形態の適用例を示す図であって、(a)はソースパターン、(b)はマスクパターン、 (c)はずらしたマスクパターン、 (d)は結果パターンである。
【図5】第2の実施の形態におけるマスク座標計算処理で計算される開始位置座標の処理フローである。
【図6】第1の実施の形態の適用例を示す図であって、(a)はソースパターン、(b)はマスクパターン、 (c)はずらしたマスクパターン、 (d)は結果パターンである。
【符号の説明】
GS…画像出力装置システム
S …ソースパターン
M …マスクパターン
M’…ずらしたマスクパターン
D …結果パターン
1…ソースパターンの一番上のビットON画素の位置
2…マスクパターンの左上にある2x2のビットON画素の位置
3…移動後のマスクパターンの左上にある2x2のビットON画素の位置
10…データ入力装置
20…画像出力装置
21…インタープリタ
22…マスク座標計算処理
23…図形描画処理
24…マスク描画処理
25…CPU
26…中間データメモリ
27…マスクパターンメモリ
28…ビットマップパターンメモリ
29…ページメモリ
30…出力装置
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image output apparatus, and more particularly to an image output apparatus capable of drawing a mask pattern as intended by a user when drawing a mask pattern in an arbitrary graphic shape.
[0002]
[Prior art]
In many graphic applications and DTP applications, a method of drawing a mask pattern within an arbitrary figure specified by the user is prepared. For example, it is a method of creating a figure that becomes translucent by leaving a specified color for pixels with bits ON in the mask and a background for pixels with bits OFF in the mask. Also, in a printing apparatus having a low gradation expression capability, a technique of expressing a pseudo gradation using a certain area for a color density designated using a dither pattern or the like is often used. In this case, in order to express the designated color on the mask, an AND operation of the mask and the dither pattern is performed (Prior Art 1).
As this prior art 1, there is a proposal of “dot reduction method in an ink jet printer”, for example, Japanese Patent Laid-Open Nos. 2000-203010 and 2000-270214.
This proposal changes the thinning rate (and the corresponding mask pattern) according to the color density.
[0003]
Also, printers often provide a function for saving printing color materials such as toner and ink. For this purpose, a method of reducing the number of drawn dots on the entire page with a certain mask pattern is generally used (Prior Art 2).
As this prior art 2, for example, there is a proposal of “Image forming method and apparatus” in Japanese Patent Application Laid-Open No. 09-245150.
This proposal is a method of preparing a plurality of reduction patterns and allowing the user to select a pattern so as not to obtain an excessive reduction result. For example, in FIG. 3, paragraph number 0031 in the first embodiment, if the pattern B1 is used, the diagonal line pattern B2 does not remain at all. In such a case, the problem can be avoided by selecting A1. Yes.
[0004]
[Problems to be solved by the invention]
However, in the prior art 1, a bitmap pattern necessary for pseudo gradation expression cannot be obtained by the above-described calculation, and printing may be performed at a density lower than a designated density. The closer the both repetition frequencies, the larger the error, and the greater the possibility that the error will be the maximum when the frequencies match, that is, have the same width and height. Depending on the mask and dither pattern, printing may not be performed at all (density 0). In the case of the above-mentioned JP-A-2000-203010 and JP-A-2000-270214, it is impossible to avoid when the pattern is limited like the pattern specified by the user application.
[0005]
Further, in the prior art 2, there are cases where the amount of dots to be reduced is large depending on the drawing graphic, and in some cases it is far from the original graphic, such as not being printed at all. In the case of the above-mentioned Japanese Patent Application Laid-Open No. 09-245150, being able to select the pattern itself is a means for avoiding the complete disappearance problem, but the pattern is limited to a pattern specified by the user application. The case is impossible to avoid.
[0006]
Accordingly, an object of the present invention is to provide an image output apparatus capable of drawing a mask pattern as intended by a user when drawing a mask pattern in an arbitrary graphic shape.
[0007]
[Means for Solving the Problems]
  In order to solve the above-mentioned problem, the invention of claim 1 is directed to a graphic drawing command for image data applied to the image output apparatus, a command for specifying an arbitrary graphic range on a page memory, and a command for specifying a gradation density. And a graphic drawing command comprising: an instruction for filling the specified range with the specified gradation density; an instruction for specifying a mask pattern; and an instruction for performing a mask operation on the specified range with a mask pattern. Graphic drawing command interpreting means for interpreting the graphic drawing means, graphic drawing means for drawing the graphic drawing command in the page memory in accordance with the designation of the drawing attribute command, and page memory for passing the page memory drawing obtained by the graphic drawing means to the output means A drawing transfer means; a bitmap pattern acquisition means for acquiring a bitmap pattern corresponding to the specified gradation density; and the specified A spread drawing means for drawing a bitmap pattern corresponding to the specified gradation density in a range, and a first mask calculation for masking the specified range using the specified mask pattern Means and, A mask pattern designating unit for designating a mask pattern, and a mask operation using the mask pattern designated by the mask pattern designating unit and the bitmap pattern ( AND Second mask calculation means for performing calculation), mask pattern start position calculation means for calculating the start position of the mask pattern designated by the mask pattern designation means, and bits resulting from mask calculation of the bitmap pattern and the mask pattern ON Maximum mask pattern start position calculating means for calculating the start position of the mask pattern having the maximum number of pixels;It is provided with.
[0008]
  In this way, since the density of the result pattern obtained by the combination of the source pattern and the mask pattern always calculates the mask pattern start position where the maximum density of the mask pattern is obtained, the output result is lower than the theoretical density. It is possible to avoid the problem of density and the problem of worst-case rendering (density 0). In addition, since the density of the result pattern obtained by the combination of the source pattern and the mask pattern always calculates the mask pattern start position where the density closest to the theoretical density value in the mask pattern is calculated, the output result is higher than the theoretical density. It is possible to avoid problems such as low density and high density, and problems that are not completely drawn (density 0).
[0010]
  Also,Since the density of the result pattern obtained by the combination of the source pattern and the mask pattern always calculates the mask pattern start position where the highest density in the mask pattern is calculated, the problem that the output result is lower than the theoretical density, It is possible to avoid a problem that the worst drawing is not complete (density 0). In addition, since the density of the result pattern obtained by the combination of the source pattern and the mask pattern always calculates the mask pattern start position where the density closest to the theoretical density value in the mask pattern is calculated, the output result is higher than the theoretical density. It is possible to avoid problems such as low density and high density, and problems that are not completely drawn (density 0).
[0011]
  Also,Maximum mask pattern start position calculation means for calculating the start position of the mask pattern that maximizes the number of bit ON pixels as a result of masking the bitmap pattern and mask patternAndBecause the density of the result pattern obtained by the combination of the source pattern and the mask pattern always calculates the mask pattern start position where the maximum density in the mask pattern is calculated, there is a problem that the output result is lower than the theoretical density Thus, it is possible to avoid a problem that the worst drawing is not complete (density 0).
[0012]
  The image output apparatus according to claim 2, instead of the maximum mask pattern start position calculation unit of the apparatus,A minimum mask pattern start position calculating means for calculating a mask pattern start position that minimizes a difference between a density expressed by a mask calculation result of a bitmap pattern and a mask pattern and a density specified by a drawing command; It is characterized by having. In this way, the mask pattern start position at which the density of the result pattern obtained by the combination of the source pattern and the mask pattern is always the closest to the theoretical density value in the mask pattern is calculated. However, it is possible to avoid the problem that the density becomes lower or higher than the theoretical density, or the problem that the worst case is not drawn (density 0).
[0013]
  Also,Claim 3Then, claim 1Or 2The image output apparatus according to any one of the above, wherein the specified gradation density is an integer density value from 0 to 255 that can be expressed by 8 bits, and the bitmap pattern is a dither pattern that represents a pseudo gradation. To do. In this way, the dither pattern is used to express the pseudo gradation by using the dot aggregation pattern in the image output apparatus having a low gradation expression capability with one pixel. Normally, the dither pattern is a bitmap for the number of density types that can be specified (256 patterns of 0 to 255 that can be expressed normally by 8 bits), and is drawn by laying it out in a tile shape. The dither pattern is applicable to the bitmap pattern of the present invention, and if applied, the claim 1.Or 2Since the effect of any of the inventions can be expected, an equivalent effect can be obtained.
[0014]
  Also,In Claim 4, Claim 3 is describedThe image output apparatus according to claim 1, further comprising a dither pattern switching unit that has a dither pattern for each type of graphic (character, graphic, image, etc.) to be drawn and switches a plurality of dither patterns for each drawing command. To do. In this way, even in an image printing apparatus having a plurality of dither patterns capable of switching dither patterns for each type of graphic (character, graphic, image, etc.) to be drawn, each dither patternClaim 3The same effect can be obtained by applying the drawing method.
[0015]
  Also,In Claim 5, Claim 3 is describedIn this image output apparatus, the specified parameters are CMYK color densities used for color printing, and the bitmap pattern is a CMYK dither pattern representing a pseudo gradation. In this way, the dither pattern is generally used in a color printing apparatus using CMYK as a color material. Each color material has a dither pattern, a page memory is generated for each color material, and they are printed by overlapping them at the time of output. For each dither pattern for each colorantClaims 1 and 2If applied, the mask pattern start position for each color material will be different, and if they are superimposed, the expected result will be different. Therefore, by calculating the number of bits ON pixels for all color materials at the time of mask pattern start position calculation, a mask pattern start position common to all color materials can be obtained.Claims 1, 2The same effect can be obtained.
[0016]
  Also,In claim 6, claims 3, 4, and 5Any one of the image output apparatuses described above includes a dither pattern creating unit that creates a dither pattern from a threshold (order) table. In this way, one dither pattern is required for each density value, and the amount of data increases. Therefore, a threshold value (order) having a threshold value for the density value at which the bit of the dither pattern changes from OFF to ON. Typically created from a table. Even in an apparatus for obtaining a dither pattern using a threshold table,Claim 3The same effect can be obtained by applying the drawing method.
[0017]
  Also,In claim 7, claims 3, 4 and 5In any one of the image output apparatuses described above, the mask pattern is a pattern for saving printing color material. In this way, the mask pattern may be used to save printing color materials such as toner and ink. In this case, since the mask pattern is applied to the entire page, the present invention is applicable to normal graphic drawing processing using the saving mask pattern.
[0018]
  Also,In claim 8, Claim 1Or 2In the described image output apparatus, one pixel of the bitmap pattern is expressed by multiple values. In this way, if one pixel of the bitmap pattern is expressed by multiple values with multiple bits instead of the binary value of bit ON / OFF, the bit ON is used instead of the number of bit ON pixels. The present invention can be applied by targeting the number of bits.
[0019]
  Also,In claim 9, Claim 1Or 2The image output apparatus described above is characterized in that the output means is a laser printer. In this way, when the page memory is generated on the printer side as in a laser printer, the present invention can be applied to processing on the printer side that generates the page memory from each drawing command.
[0020]
  Also,In claim 10, Claim 1Or 2The image output apparatus described above is characterized in that the output means is an ink jet printer. In this way, when the page memory is generated on the host computer side as in the case of the ink jet printer, the present invention can be applied to processing on the host computer side that generates the page memory from each drawing command.
[0021]
  Also,In claim 11, Claim 1Or 2The described image output apparatus is characterized in that arithmetic processing up to page memory generation is performed by a dedicated ASIC such as a graphic accelerator. In this way, when the page memory is generated not by software processing using the CPU on the printer side but by a dedicated ASIC such as a graphic accelerator, the present invention is applied to processing in the ASIC that generates page memory from each drawing command. Applicable.
[0022]
  Also,In claim 12, Claim 1Or 2In the described image output apparatus, the host computer side performs arithmetic processing up to page memory generation. In this way, regardless of the output device, when the page memory is generated on the host computer side, the present invention can be applied to the processing on the host computer side that generates the page memory from each drawing command.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
  Hereinafter, the present invention will be described based on the illustrated embodiments.
  (1) First embodimentClaim 1Correspondence
  FIG. 1 is a configuration diagram of an image output apparatus system GS to which a first embodiment and a second embodiment described below are applied. As shown in FIG. 1, the image output device system GS includes a data input device 10, an image output device 20, and an output device 30 that is an “output unit”. The data input device 10 inputs drawing data to the image output device 20. The image output device 20 includes an interpreter 21 that is a “graphic drawing command interpretation unit”, a mask coordinate calculation process 22 that is a “mask pattern start position calculation unit, a maximum mask pattern start position calculation unit, and a minimum mask pattern start position calculation unit”. A figure drawing process 23 which is “figure drawing means, page memory drawing transfer means, bitmap pattern acquisition means”, a mask drawing which is “mask pattern designation means, first mask calculation means, second mask calculation means, spread drawing means” The processing 24, CPU 25, intermediate data memory 26, mask pattern memory 27, bitmap pattern memory 28, and page memory 29 are configured to output to the output device 30.
[0024]
The drawing data input to the image output device 20 is input to the interpreter 21, interpreted as intermediate data suitable for subsequent drawing processing, and stored in the intermediate data memory 26. The CPU 25 performs the calculation process. The intermediate data includes a drawing range designation command, a drawing color designation command, and the like, and includes a mask pattern designation command. The mask pattern designation command stores data in the mask pattern memory 27.
The graphic drawing process 23 draws the graphic contained therein according to the contents of the intermediate data memory 26. A bitmap pattern corresponding to the designated color is acquired from the bitmap pattern memory 28 and drawn in the page memory 29. In the case of a figure using a mask pattern, the mask drawing process 24 performs a drawing process using the mask pattern stored in the mask pattern memory 27, the specified drawing range, and drawing color. At this time, the start coordinate of the mask pattern is calculated using the mask coordinate calculation process 22. When the drawing command for one page is completed, the contents of the page memory 29 are output to the output device 30.
[0025]
A simple example of the mask calculation performed in the mask drawing process 24 of FIG. 1 will be described with reference to FIG. First, a source pattern S (FIG. 2 (a)) as an operation source is obtained from the bitmap pattern memory 28 of FIG. This is a bitmap corresponding to the drawing color designated by the drawing color designation command. The size is 64 pixels of 8x8. Set the white part to bit OFF and the black part to bit ON. Further, a mask pattern M (FIG. 2B) is obtained from the mask pattern memory 27. This is a bitmap corresponding to the mask pattern designation command. For simplicity, it is the same size as the source pattern S. The result of ANDing the same position of the source pattern S and the mask pattern M is a result pattern D (FIG. 2C). This is drawn in a specified range on the page memory 29 using a calculation method with the specified page memory (for example, SET calculation if overwriting). In actual drawing, calculation is performed on a pattern set in which source patterns S are tiled vertically and horizontally and a pattern set in which mask patterns M are vertically and horizontally arranged in accordance with the drawing range.
[0026]
  In the present embodiment, the start position coordinates of the mask pattern M are moved so that the result pattern D has the maximum density (the number of bits ON is the maximum number). Since the mask pattern is used repeatedly vertically and horizontally, the pattern itself does not change even if the start position coordinates are moved.does not change.
[0027]
FIG. 3 shows a process flow of the start position coordinates calculated by the mask coordinate calculation process in FIG.
In Step 1, the bit ON maximum pixel number Dmax and the coordinates (Dx, Dy) for the maximum pixel number are initialized to zero. These are used in Step5.
In Step 2, initialize y which is Y coordinate of mask pattern to 0.
In Step 3, initialize x which is the X coordinate of the mask pattern to 0.
[0028]
In Step4, shift the origin of the mask pattern by (x, y) (lower right). Since the mask pattern is used repeatedly in the vertical and horizontal directions, the protruding portion circulates by shifting. For example, when shifting vertically by one pixel (y = 1), after shifting all pixels vertically by one pixel, the protruding last line moves to the first line. If the pixel is shifted horizontally by two pixels (x = 1), after shifting all the pixels horizontally by two pixels, the two pixels from the right that protrude are moved from the left to the two pixels as they are. Mask operation (AND) is performed with the generated mask pattern and source pattern S, the number of pixels with bit ON is counted, and it is set to the variable Dnum.
In Step 5, the Dnum counted in Step 4 is compared with the bit ON maximum pixel count Dmax so far. If Dnum is larger, go to Step 6, and if it is below, go to Step 7.
[0029]
In Step 6, since it was determined that Dnum> Dmax in Step 5, Dnum, x, and y are stored in Dmax, Dx, and Dy, respectively. This is the number and position where the bit-on pixel is the maximum at the present time.
In Step 7, x is incremented by one, and when the rightward shift on the same line (y) is completed for all patterns, the process proceeds to Step 8, and in the middle, returns to Step 4.
In step 8, y is incremented by one. When all patterns are shifted downward, the process ends.
The (Dx, Dy) at the end of the processing is the shift amount of the mask pattern M that maximizes the bit ON pixel, that is, the start coordinate point of the mask pattern M.
[0030]
FIG. 4 shows an application example of this embodiment. First, when the source pattern S of FIG. 4A and the mask pattern M of FIG. 4B are used as inputs and calculated using the flow of FIG. 3, a result of (Dx, Dy) = (3, 3) is obtained. The result of shifting the mask pattern M by (3, 3) is the mask pattern M ′ in FIG. When the mask operation is performed with this and the source pattern S, the result pattern of FIG. 4D is obtained. This is because the 2 × 2 bit ON pixel (2 in FIG. 4 (b)) at the upper left of the mask pattern M moves to the position 3 in FIG. 4 (c) of the mask pattern M ′, and the center of the source pattern S 2 × 2 bit ON pixels (1 in FIG. 4A) overlap each other, and in the result pattern D, the bit ON pixels become 4 pixels.
[0031]
Effects of this embodiment
In this way, by calculating the mask pattern start position where the density of the result pattern obtained by the combination of the source pattern and the mask pattern is always the highest density in the mask pattern, the output result is lower than the theoretical density. It is possible to avoid problems and problems that are not completely drawn (density 0). For example, if the mask pattern M in FIG. 2B is mask-calculated with a pattern shifted by 2 pixels horizontally and the source pattern S, all pixel bits are turned OFF, and nothing is drawn in the figure drawing using this combination. If this embodiment is used, as shown in FIG. 4 (d), the image is drawn at a density of 4/64 for 4 pixels.
[0032]
In the present embodiment, the calculation is performed so that the resulting pattern density becomes the maximum density, so that a difference from the theoretical density value occurs. The theoretical density is a value Ls × Lm obtained by multiplying the density Ls corresponding to the source pattern S and the density Lm of the mask pattern M. Since this difference is a difference to the higher density (the darker one), the pattern may be drawn with a pattern darker than the theoretical density. For example, in Fig. 4, Ls = 8/64 and Lm = 8/64, so the theoretical density is 1/64. Theoretically, 64 pixels and 1 pixel should be bit ON. If the form is used, the four pixels in FIG. 4 (d) are turned on, and the difference of three pixels is darkened.
[0033]
Although it is unsuitable for applications that require accuracy in the output density of figures using mask patterns, mask patterns used for painting charts and graphs as found in general business documents may have slight density differences. Output at density 0, where nothing is output, is avoided, and even if the mask pattern is different, if the mask pattern density Lm is the same, the specified density Ls corresponding to any source pattern, the same density at any position Is required to be output. Applying this example to such applications satisfies the requirements.
In this example, the number of gradations that can be expressed by one pixel of the source pattern is binary (1 bit), but multi-values such as 2 bits, 4 bits, 8 bits, etc. can be similarly applied.
[0034]
  (2) Second embodiment ...Claim 2Correspondence
  In the first embodiment, the start position coordinates of the mask pattern M are calculated so that the result pattern D has the maximum density (the maximum number of bits ON). However, in the present embodiment, it corresponds to the source pattern S. From the density Ls and the density Lm of the mask pattern M, the start position coordinates of the mask pattern M are calculated such that the density Ld of the result pattern D is the density closest to the theoretical density Ls × Lm. The configuration diagram of the image output device system GS is the same as FIG.
[0035]
FIG. 5 shows a process flow of the start position coordinates calculated by the mask coordinate calculation process in FIG.
In Step 0, the number of bit ON pixels Dt of the pattern closest to the theoretical density Ls × Lm is calculated. When Ls is the input density value (0.0 to 1.0), Lm is the bit ON pixel ratio of the specified mask pattern M (bit ON pixel number ÷ total number of pixels), and Dw and Dh are the width and height of the mask pattern M, respectively, Calculate Dt from the following formula.
Dt = (Ls × Lm) × (Dw × Dh) (Formula 1)
Since Dt is a decimal, it is rounded up to the nearest whole number by rounding up, rounding down, or rounding (the method is arbitrary).
The start position coordinates that are the closest number of bit ON pixels are searched in the following steps.
[0036]
In Step 1, the nearest bit ON pixel count Dave is initialized to (Dw × Dh) and the coordinates (Dx, Dy) are initialized to 0, respectively. These are used in Step5.
In Step 2, initialize y which is Y coordinate of mask pattern to 0.
In Step 3, initialize x which is the X coordinate of the mask pattern to 0.
In Step4, shift the origin of the mask pattern by (x, y) (lower right). Since the mask pattern is used repeatedly in the vertical and horizontal directions, the protruding portion circulates by shifting. For example, if shifting vertically by one pixel (y = 1), after shifting all pixels vertically by one pixel, the last protruding line moves to the first line. If the pixel is shifted horizontally by two pixels (x = 1), after shifting all the pixels horizontally by two pixels, the two pixels from the right that protrude are moved from the left to the two pixels as they are. Mask operation (AND) is performed with the generated mask pattern and source pattern S, the number of bit ON pixels is counted, and it is set to the variable Dnum.
[0037]
In Step 5, the Dnum counted in Step 4 is compared with the absolute value of the difference between the bit ON maximum pixel number Dave closest to Dt so far. If Dave is larger, the process proceeds to Step 6, and if it is smaller, the process proceeds to Step 7.
In Step 6, since it is determined in Step 5 that Dave is closest to Dt, Dnum, x, and y are stored in Dave, Dx, and Dy, respectively. This is the number and position of the bit ON pixels closest to Dt at the present time.
In Step 7, x is incremented by one, and when the rightward shift on the same line (y) is completed for all patterns, the process proceeds to Step 8, and in the middle, returns to Step 4.
In step 8, y is incremented by one. When all patterns are shifted downward, the process ends.
(Dx, Dy) at the end of the processing is the shift amount that becomes the mask pattern M having the number of bit ON pixels closest to the theoretical density, that is, the start coordinate point of the mask pattern M.
[0038]
FIG. 6 shows an application example of this embodiment. Here, it is assumed that the source pattern S of FIG. 6A is obtained from the bitmap pattern memory from the input data of Ls = 8/64. Further, the density of the mask pattern M in FIG. 6B is Lm = 8/64. Further, Dw = Dh = 8. When these values are applied to Equation 1 of Step 0 in FIG. 5, Dt = 1. If calculation is performed using the flow shown in FIG. 5, the result (Dx, Dy) = (3, 1) is obtained. The result of shifting the mask pattern M by (3, 1) is the mask pattern M ′ in FIG. When the mask operation is performed with this and the source pattern S, the result pattern of FIG. 6D is obtained. This is because the 2 × 2 bit ON pixel (2 in FIG. 6B) at the upper left of the mask pattern M moves to the position 3 in FIG. 6C of the mask pattern M ′, and the source pattern S The top bit ON pixel (1 in FIG. 6A) overlaps, and the result pattern D is a position where the bit ON pixel becomes one pixel.
[0039]
Effects of this embodiment
In this way, by calculating the mask pattern start position where the density of the result pattern obtained by the combination of the source pattern and mask pattern is always close to the theoretical density, the output result will be different from the theoretical density. In addition, it is possible to avoid a problem that is not completely rendered completely (density 0). For example, the density of the source pattern S in FIG. 4 or 6 is Ls = 8/64, and the density of the mask pattern is Lm = 8/64, so the theoretical density is 1/64. If this example is not used, the density of the resulting pattern D will be 2/64 as shown in FIG. 2 (c), where the bit ON pixels will be 2 pixels, and if the first embodiment is used, 4 / 64, and there is a difference between the theoretical density and the actual output density.
[0040]
Applying this example to applications that require accuracy in the output density of a figure using a mask pattern will satisfy the requirements.
In this example, the number of gradations that can be expressed by one pixel of the source pattern is binary (1 bit). However, multi-values such as 2 bits, 4 bits, and 8 bits can be similarly applied.
[0041]
In each of the above embodiments, the case of a rectangle has been described. However, the present invention can be applied to a figure having an arbitrary shape such as a circle or an ellipse.
[0042]
【The invention's effect】
  As described above, according to the present invention, the following effects can be exhibited.
(1)According to claim 1Thus, it is possible to avoid the problem that the output result is lower than the theoretical density and the problem that the worst rendering is not complete (density 0).
(2)According to claim 2Therefore, it is possible to avoid the problem that the output result is a density lower or higher than the theoretical density, or the problem that the worst case is not drawn (density 0).
[0043]
  (3)Claim 3According to this, the dither pattern is used to express a pseudo gradation by using an aggregate pattern of dots in an image output apparatus having a low gradation expression capability with one pixel. Normally, the dither pattern is a bitmap for the number of density types that can be specified (256 patterns of 0 to 255 that can be expressed normally by 8 bits), and is drawn by laying it out in a tile shape. The dither pattern is applicable to the bitmap pattern of the present invention, and if applied, the claim.1, 2Since the effect can be expected, the same effect can be obtained.
[0044]
  (4)Claim 4Therefore, even in an image printing apparatus having a plurality of dither patterns capable of switching the dither pattern for each type of figure to be drawn, each dither patternClaim 3The same effect can be obtained by applying the drawing method.
(5)Claim 5According to this, since the mask pattern start position common to all the color materials can be obtained by calculating the number of bit ON pixels for all the color materials at the time of calculating the mask pattern start position, the same effect as in claims 3 and 4 can be obtained. can get.
[0045]
  (6)Claim 6Therefore, even in an apparatus for obtaining a dither pattern using a threshold table,Claim 3The same effect can be obtained by applying the drawing method.
(7)Claim 7According to this, when the mask pattern is used for saving printing color materials such as toner and ink, the mask pattern is applied to the entire page. The invention is applicable.
(8)Claim 8According to this, when one pixel of the bitmap pattern is expressed by multiple values of multiple bits instead of binary of bit ON / OFF, the number of bits that are turned on rather than the number of bits turned on The present invention is applicable by targeting.
[0046]
  (9)Claim 9Accordingly, when the page memory is generated on the printer side as in the case of a laser printer, the present invention is applicable to processing on the printer side that generates the page memory from each drawing command.
(10)Claim 10Therefore, when the page memory is generated on the host computer side as in an ink jet printer, the present invention can be applied to the processing on the host computer side that generates the page memory from each drawing command.
(11)Claim 11According to the present invention, the present invention can be applied to the processing in the ASIC that generates the page memory from each drawing command when the generation of the page memory is not performed by software processing using the CPU on the printer side but by a dedicated ASIC such as a graphic accelerator. It is.
(12)Claim 12Accordingly, when the page memory is generated on the host computer side regardless of the output device, the present invention can be applied to the processing on the host computer side that generates the page memory from each drawing command.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an image output apparatus system to which first and second embodiments of the present invention are applied.
FIGS. 2A and 2B are explanatory diagrams of a simple example of mask calculation performed in mask drawing processing in the image output apparatus system, where FIG. 2A is a source pattern, FIG. 2B is a mask pattern, and FIG. 2C is a result pattern; .
FIG. 3 is a processing flow of start position coordinates calculated by mask coordinate calculation processing in the first embodiment;
FIG. 4 is a diagram showing an application example of the first embodiment, where (a) is a source pattern, (b) is a mask pattern, (c) is a shifted mask pattern, and (d) is a result pattern. is there.
FIG. 5 is a processing flow of start position coordinates calculated by mask coordinate calculation processing in the second embodiment.
6 is a diagram showing an application example of the first embodiment, where (a) is a source pattern, (b) is a mask pattern, (c) is a shifted mask pattern, and (d) is a result pattern. is there.
[Explanation of symbols]
GS: Image output device system
S: Source pattern
M ... Mask pattern
M ’… shifted mask pattern
D ... Result pattern
1 ... Position of the bit ON pixel at the top of the source pattern
2: Position of 2x2 bit ON pixel at the upper left of the mask pattern
3. Position of the 2x2 bit ON pixel at the upper left of the mask pattern after movement
10. Data input device
20. Image output device
21 ... Interpreter
22 ... Mask coordinate calculation processing
23. Drawing process
24. Mask drawing process
25 ... CPU
26: Intermediate data memory
27 ... Mask pattern memory
28 ... Bitmap pattern memory
29 ... Page memory
30 ... Output device

Claims (12)

当該画像出力装置に適用する画像データの図形描画命令は、ページメモリ上の任意の図形範囲を指定する命令と、階調濃度を指定する命令と、前記指定された範囲内を前記指定された階調濃度で塗りつぶす命令と、マスクパターンを指定する命令と、前記指定された範囲内をマスクパターンによりマスク演算する命令からなり、
前記図形描画命令を解釈する図形描画命令解釈手段と、
前記図形描画命令を描画属性命令の指定に従ってページメモリに描画を行う図形描画手段と、
該図形描画手段によって得られたページメモリ描画を出力手段に渡すページメモリ描画移転手段と、
前記指定された階調濃度に対応するビットマップパターンを取得するビットマップパターン取得手段と、
前記指定された範囲内を、前記指定された濃度に対応するビットマップパターンを敷き詰めて描画する敷き詰め描画手段と、
前記指定された範囲内を、前記指定されたマスクパターンを用いてマスク演算する第1マスク演算手段と
マスクパターンを指定するマスクパターン指定手段と、該マスクパターン指定手段で指定したマスクパターンと前記ビットマップパターンとでマスク演算( AND 演算)を行う第2マスク演算手段と、前記マスクパターン指定手段が指定したマスクパターンの開始位置を計算するマスクパターン開始位置計算手段と、
ビットマップパターンとマスクパターンをマスク演算した結果のビット ON 画素数が、最大になるマスクパターンの開始位置を計算する最大マスクパターン開始位置計算手段とを備えたことを特徴とする画像出力装置。
The graphic drawing command for image data applied to the image output apparatus includes a command for designating an arbitrary graphic range on a page memory, a command for designating gradation density, and the designated floor within the designated range. It consists of a command to paint with tonal density, a command to specify a mask pattern, and a command to perform a mask operation with the mask pattern within the specified range,
Graphic drawing command interpreting means for interpreting the graphic drawing command;
Graphic drawing means for drawing the graphic drawing command in a page memory in accordance with a designation of a drawing attribute command;
Page memory drawing transfer means for passing page memory drawing obtained by the figure drawing means to output means;
Bitmap pattern acquisition means for acquiring a bitmap pattern corresponding to the specified gradation density;
A spread drawing means for drawing a bitmap pattern corresponding to the specified density within the specified range;
First mask calculation means for performing mask calculation within the specified range using the specified mask pattern ;
A mask pattern designating unit for designating a mask pattern , a second mask computing unit for performing a mask operation ( AND operation) between the mask pattern designated by the mask pattern designating unit and the bitmap pattern, and the mask pattern designating unit Mask pattern start position calculating means for calculating the start position of the mask pattern,
An image output apparatus comprising: a maximum mask pattern start position calculating unit that calculates a start position of a mask pattern that maximizes the number of bit ON pixels as a result of performing a mask operation on a bitmap pattern and a mask pattern .
当該画像出力装置に適用する画像データの図形描画命令は、ページメモリ上の任意の図形範囲を指定する命令と、階調濃度を指定する命令と、前記指定された範囲内を前記指定された階調濃度で塗りつぶす命令と、マスクパターンを指定する命令と、前記指定された範囲内をマスクパターンによりマスク演算する命令からなり、The graphic drawing command for image data applied to the image output apparatus includes a command for designating an arbitrary graphic range on a page memory, a command for designating gradation density, and the designated floor within the designated range. It consists of a command to paint with tonal density, a command to specify a mask pattern, and a command to perform a mask operation with the mask pattern within the specified range,
前記図形描画命令を解釈する図形描画命令解釈手段と、Graphic drawing command interpreting means for interpreting the graphic drawing command;
前記図形描画命令を描画属性命令の指定に従ってページメモリに描画を行う図形描画手段と、Graphic drawing means for drawing the graphic drawing command in a page memory in accordance with a designation of a drawing attribute command;
該図形描画手段によって得られたページメモリ描画を出力手段に渡すページメモリ描画移転手段と、Page memory drawing transfer means for passing page memory drawing obtained by the figure drawing means to output means;
前記指定された階調濃度に対応するビットマップパターンを取得するビットマップパターン取得手段と、Bitmap pattern acquisition means for acquiring a bitmap pattern corresponding to the specified gradation density;
前記指定された範囲内を、前記指定された濃度に対応するビットマップパターンを敷き詰めて描画する敷き詰め描画手段と、A spread drawing means for drawing a bitmap pattern corresponding to the specified density within the specified range;
前記指定された範囲内を、前記指定されたマスクパターンを用いてマスク演算する第1マスク演算手段と、First mask calculation means for performing mask calculation within the specified range using the specified mask pattern;
マスクパターンを指定するマスクパターン指定手段と、該マスクパターン指定手段で指定したマスクパターンと前記ビットマップパターンとでマスク演算(A mask pattern designating unit for designating a mask pattern, and a mask operation using the mask pattern designated by the mask pattern designating unit and the bitmap pattern ( ANDAND 演算)を行う第2マスク演算手段と、前記マスクパターン指定手段が指定したマスクパターンの開始位置を計算するマスクパターン開始位置計算手段と、Second mask calculation means for performing calculation), mask pattern start position calculation means for calculating the start position of the mask pattern designated by the mask pattern designation means,
ビットマップパターンとマスクパターンをマスク演算した結果のパターンで表現される濃度と、描画命令で指定された濃度との差分が最小になるマスクパターンの開始位置を計算する最小マスクパターン開始位置計算手段を備えたことを特徴とする画像出力装置。A minimum mask pattern start position calculating means for calculating a mask pattern start position that minimizes a difference between a density expressed by a mask calculation result of a bitmap pattern and a mask pattern and a density specified by a drawing command; An image output apparatus comprising:
請求項1または2のいずれか記載の画像出力装置において、指定される階調濃度が8ビットで表現可能な0〜255の整数の濃度値、ビットマップパターンが疑似階調を表現するディザパターンであることを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein the specified gradation density is an integer density value of 0 to 255 that can be expressed by 8 bits, and the bitmap pattern is a dither pattern that represents a pseudo gradation. An image output apparatus comprising: 請求項3記載の画像出力装置において、描画対象となる図形の種類(文字、グラフィック、イメージ等)毎にディザパターンを有し、複数のディザパターンを描画命令毎に切り替えるディザパターン切替手段を備えたことを特徴とする画像出力装置。 4. The image output apparatus according to claim 3 , further comprising a dither pattern switching unit that has a dither pattern for each type of graphic (character, graphic, image, etc.) to be drawn and switches a plurality of dither patterns for each drawing command. An image output apparatus characterized by that. 請求項3記載の画像出力装置において、指定されるパラメータがカラー印刷に用いられるCMYK色用の色濃度、ビットマップパターンが疑似階調を表現するCMYKそれぞれのディザパターンであることを特徴とする画像出力装置。 4. The image output apparatus according to claim 3, wherein the designated parameter is a CMYK color density used for color printing, and the bitmap pattern is a CMYK dither pattern expressing a pseudo gradation. Output device. 請求項3,4,5のいずれか記載の画像出力装置において、閾値(オーダ)テーブルからディザパターンを作成するディザパターン作成手段を備えたことを特徴とする画像出力装置。 6. The image output apparatus according to claim 3, further comprising dither pattern creating means for creating a dither pattern from a threshold (order) table. 請求項3,4,5のいずれか記載の画像出力装置において、マスクパターンが印刷色材を節約するためのパターンであることを特徴とする画像出力装置。 6. The image output apparatus according to claim 3, wherein the mask pattern is a pattern for saving a printing color material. 請求項1または2記載の画像出力装置において、ビットマップパターンの1画素が多値で表現されることを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein one pixel of the bitmap pattern is expressed in multiple values. 請求項1または2記載の画像出力装置において、出力手段がレーザプリンタであることを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein the output means is a laser printer. 請求項1または2記載の画像出力装置において、出力手段がインクジェットプリンタであることを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein the output means is an ink jet printer. 請求項1または2記載の画像出力装置において、ページメモリ生成までの演算処理をグラフィックアクセラレータ等の専用ASICで行うことを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein the arithmetic processing up to page memory generation is performed by a dedicated ASIC such as a graphic accelerator. 請求項1または2記載の画像出力装置において、ページメモリ生成までの演算処理をホストコンピュータ側で行うことを特徴とする画像出力装置。 3. The image output apparatus according to claim 1, wherein calculation processing up to page memory generation is performed on the host computer side.
JP2002006359A 2002-01-15 2002-01-15 Image output device Expired - Fee Related JP3876163B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002006359A JP3876163B2 (en) 2002-01-15 2002-01-15 Image output device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002006359A JP3876163B2 (en) 2002-01-15 2002-01-15 Image output device

Publications (2)

Publication Number Publication Date
JP2003209679A JP2003209679A (en) 2003-07-25
JP3876163B2 true JP3876163B2 (en) 2007-01-31

Family

ID=27645152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002006359A Expired - Fee Related JP3876163B2 (en) 2002-01-15 2002-01-15 Image output device

Country Status (1)

Country Link
JP (1) JP3876163B2 (en)

Also Published As

Publication number Publication date
JP2003209679A (en) 2003-07-25

Similar Documents

Publication Publication Date Title
US6490055B1 (en) Printing apparatus with execution of software rendering and hardware rendering
US5852679A (en) Image processing apparatus and method
US6323958B1 (en) Printing apparatus
JP4135195B2 (en) Print processing system, print processing method, and computer-readable recording medium on which print processing control program is recorded
US9158485B2 (en) Image processing device that performs image processing for variable printing and host data generating device
JP2009245335A (en) Image generating device, and printing device
JP6202908B2 (en) Image processing apparatus, image processing method, and program
US5095520A (en) Method and apparatus for drawing wide lines in a raster graphics system
KR100709364B1 (en) Method and apparatus for generating pattern image
JP3876163B2 (en) Image output device
JP4070304B2 (en) Bitmap display generation method and storage medium
CN101346238B (en) Image processing apparatus, printer, and image processing method
US11272076B2 (en) Image processing apparatus configuring color conversion information based on how close input color values are to black in dark and light ranges
JP3964704B2 (en) Image processing apparatus, image forming apparatus, image output system, and image processing method
US10943384B2 (en) Utilizing smooth shading patches in image rendering
EP1988490A1 (en) Selective density enhancement of graphical objects
JP5112223B2 (en) Image processing apparatus and image processing program
US9594535B2 (en) Image processing apparatus for printing object of original image within printable area on print medium, and non-transitory computer-readable medium
JP2004334884A (en) High-speed design of multi-level and multi-frequency smooth screen
JP7123737B2 (en) Image processing device, image processing method and program
JP2011077697A (en) Image processing device, image forming device, and image processing program
JP6061654B2 (en) Image processing apparatus, image processing method, and computer program
JP3968989B2 (en) Image processing apparatus, image processing method, and storage medium storing image processing program
JP4217332B2 (en) Image processing apparatus and method, and computer-readable memory
JPH05116379A (en) Printer

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040902

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060928

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: 20061024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061030

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: 20101102

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131102

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees