JP3728183B2 - 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 - Google Patents
印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 Download PDFInfo
- Publication number
- JP3728183B2 JP3728183B2 JP2000189336A JP2000189336A JP3728183B2 JP 3728183 B2 JP3728183 B2 JP 3728183B2 JP 2000189336 A JP2000189336 A JP 2000189336A JP 2000189336 A JP2000189336 A JP 2000189336A JP 3728183 B2 JP3728183 B2 JP 3728183B2
- Authority
- JP
- Japan
- Prior art keywords
- alpha
- control apparatus
- input
- command
- bitmap
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1848—Generation of the printable image
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/0062—Handling the output data combining generic and host data, e.g. filling a raster
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color, Gradation (AREA)
- Image Processing (AREA)
Description
【発明の属する技術分野】
本発明は、印刷制御装置および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体および、描画制御装置および描画制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体に関するものである。
【0002】
【従来の技術】
従来の、入力された描画コマンドを第1のビットマップイメージに描画する描画手段と、描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を指定する描画方法指定を有する印刷制御装置および描画制御装置では、入力された描画コマンドを第1のビットマップイメージに描画する場合以下のように行っていた。
【0003】
図1に従来例を示す。図1−aは、該当する描画コマンドを描画する前の第1のビットマップイメージである。
【0004】
第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、RGB=(255、0、0)の矩形が描画されている。何も描画されていないところはRGB=(255、255、255)である。
【0005】
図1−bは、図1−aに各色8ビット/ピクセル値でRGB=(255、255、0)の矩形を、8ビット/ピクセルのアルファブレンド値=(128)=50%の透過指定で描画した結果を示す。
【0006】
エリア1はRGB=(255、0、0)、エリア2はRGB=(255、255、128)、アルファブレンド値は50%透過指定なので、エリア3の矩形の重なり部分は、RGB=(255、128、0)となる。
【0007】
描画時の計算方法を以下に示す。
ResultR=(α/255)×SrcR+(1−(α/255))×DestR
ResultG=(α/255)×SrcG+(1−(α/255))×DestG
ResultB=(α/255)×SrcB+(1−(α/255))×DestB
【0008】
ここでResultRは描画結果後の第1のビットマップイメージの値であり、SrcRは入力オブジェクトの色の値であり、DestRは描画結果前の第1のビットマップイメージの値であり、αは入力オブジェクトのアルファブレンド値である。
【0009】
【発明が解決しようとする課題】
しかしながら、従来の入力された描画コマンドを第1のビットマップイメージに描画する描画手段と、描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を指定する描画方法指定手段とを有する印刷制御装置および描画制御装置では、描画手段がアルファブレンド描画をサポートしていない場合は、期待した結果を得ることができなかった。また、第1のビットマップイメージがRGB各色8ビット/ピクセルではなく、RGB各色1ビット/ピクセルのように、ビット深さがアルファブレンド値のビット深さよりも少ない場合は、期待した結果を得ることができなかった。
【0010】
本発明は上述の点を改善することを目的とする。
【0011】
【課題を解決するための手段】
上記点を踏え本発明は、入力された描画コマンドを第1のビットマップイメージに描画する描画手段と、前記描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を行う描画方法指定手段とを有する印刷制御装置および描画制御装置において、前記アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換手段と、前記描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換手段とを有するものである。
【0012】
【発明の実施の形態】
(第1の実施形態)
以下、本発明をレーザ・ビーム・プリンタ(以下、LBPと略す)に適用し、図面を用いて更に詳細に説明する。本実施例の構成を説明する前に、本実施例を適用するLBPの構成を図3を参照して説明する。図2は実施例のLBPの内部構造を示す断面図である。
【0013】
図2において、100はLBP本体であり、外部に接続されているホスト・コンピュータ(図3の201)から供給される文字印字命令、各種図形描画命令、イメージ描画命令及び色指定命令等に従って対応する文字パターンや図形、イメージ等を作成し、記録媒体である記録用紙上に像を形成する。151は操作のためのスイッチ及びプリンタの状態を表示するLED表示器やLCD表示器等が配されている操作パネルである。101はLBP100全体の制御及びホスト・コンピュータから供給される文字印字命令等を解析するプリンタ制御ユニットである。
【0014】
尚、本実施例におけるLBPはRGBの色情報をM(マゼンタ)C(シアン)Y(イエロー)K(クロ)に変換し、それらを並列で像形成・現像するため、MCYKそれぞれが像形成・現像機構を持つ。プリンタ制御ユニット101はMCYKそれぞれの印字イメージを生成し、ビデオ信号に変換してMCYKそれぞれのレーザ・ドライバに出力する。
【0015】
M(マゼンタ)のレーザ・ドライバ110は半導体レーザ111を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ111から発射されるレーザ光112をオン・オフ切替する。レーザ光112は回転多面鏡113で左右方向に振られて静電ドラム114上を走査する。これにより、静電ドラム114上には文字や図形のパターンの静電潜像が形成される。この潜像は静電ドラム114周囲の現像ユニット(トナーカートリッジ)115によって現像された後、記録用紙に転写される。
【0016】
C(シアン)、Y(イエロー)、K(クロ)に関してもM(マゼンタ)と同様の像形成・現像機構を持ち、120、121、122、123、124、125はC(シアン)用の像形成・現像機構、130、131、132、133、134、135はY(イエロー)用の像形成・現像機構、140、141、142、143、144、145はK(クロ)用の像形成・現像機構である。個々の機能はM(マゼンタ)の像形成・現像機構と同じであるので説明は省略する。
【0017】
記録用紙にはカット・シートを用い、カット・シート記録紙はLBPに装着した給紙カセット102に収納されバネ103で一定の高さに保たれており、給紙ローラ104及び搬送ローラ105と106とにより装置内に取り込まれ、用紙搬送ベルト107に乗せられてMCYKの各像形成・現像機構を通過する。記録用紙に転写されたMCYKの各トナー(粉末インク)は定着器108で熱と圧力により記録用紙に固定され、記録用紙は搬送ローラ109と150によってLBP本体上部に出力される。
【0018】
図3は図2に示したLBPの制御系101の概略構成を示すブロック図である。
【0019】
このLBPの制御系は、印刷情報の発生源である、ホスト・コンピュータ201より送られてきた文字、図形、イメージの各描画命令及び色情報等からなるデータ218を入力し、ページ単位で文書情報等を印刷するようにしている。202はホスト・コンピュータ201と各種情報をやりとりする入出力インタフェース部、203は入出力インタフェース部202を介して入力された各種情報を一時記憶する入力バッファである。204は文字パターン発生器で、文字の幅や高さ等の属性や実際の文字パターンのアドレスが格納されているフォント情報部222、文字パターン自身が格納されている文字パターン部223、及びその読みだし制御プログラムから成る。
【0020】
読みだし制御プログラムはROM219に含まれ、文字コードを入力するとそのコードに対応する文字パターンのアドレスを算出するコード・コンバート機能をも有している。205はRAMで、文字パターン発生器204より出力された文字パターンを記憶するフォント・キャッシュ領域207、ホスト・コンピュータ201より送られてきた外字フォントやフォーム情報及び現在の印字環境等を記憶する記憶領域206を含んでいる。このように、一旦文字パターンに展開したパターン情報をフォント・キャッシュとしてフォント・キャッシュ領域207に記憶しておくことにより、同じ文字を印刷する時に再度同じ文字を復号してパターン展開する必要がなくなるため、文字パターンへの展開が速くなる。
【0021】
208はプリンタの制御系全体を制御するためのCPUで、ROM219に記憶されたCPU208の制御プログラムにより装置全体の制御を行なっている。209は入力データ218を元に生成される内部的なデータ群を格納する中間バッファである。
【0022】
1ページ分のデータの受信が完了し、ROM219のプログラムに基づくCPUの制御下で、それらがよりシンプルな中間データに変換されて中間バッファに蓄えられた後、レンダラ210により数ライン単位でレンダリングされ、印字イメージとしてバンドバッファ211に出力される。尚、レンダラ210は、数ライン単位にRGB各色8ビット/ピクセルの描画ビットマップイメージを生成することができる。
【0023】
また、バンドバッファ211には少なくとも8ライン分のRGB描画ビットマップイメージを記憶することができる。バンドバッファ211に出力されたイメージは圧縮部212によりスキャンライン単位に圧縮され、ページメモリ213に格納される。
【0024】
1ページ分の中間バッファメモリをレンダリング終了し、それらがページメモリ213に格納された後、伸長部214において数ライン単位で読み出され、伸長される。次に、伸長されたデータは色変換部215において、RGB各色8ビット/ピクセルのビットマップイメージをYMCK各色4ビット/ピクセルのビットマップイメージに変換される。次に、出力インターフェース部216でビデオ信号に変換されてプリンタ印字部217に出力される。217は出力インタフェース部216からのビデオ信号に基づいた画像情報を印刷するページ・プリンタの印刷機構部分である。
【0025】
先に図2を用いて説明したように本実施例におけるLBPではMCYKの像形成・現像を並列で行うため、出力インターフェース部216はM出力インターフェース部、C出力インターフェース部、Y出力インターフェース部、K出力インターフェース部の4つのインタフェース部で構成され、それぞれが独立に色変換部215からドットデータを獲得し、ビデオ信号に変換して各プレーンのレーザ・ドライバ110、120、130、140へ出力する。
【0026】
220は一般のEEPROM等で構成する不揮発性メモリであり、以後NVRAM(Non Volatile RAM)と称す。NVRAM220には操作パネル151で指定されるパネル設定値などが記憶される。221はLBPからホスト・コンピュータ201に送信されるデータである。尚、ROM219にはホスト・コンピュータ201から入力されるデータの解析プログラム、中間データの生成プログラム、印刷機構本体部213の制御プログラム、及びRGB色空間からMCYK色空間への色変換テーブル等も含まれる。
【0027】
なお、本実施形態では、印刷装置の一例としてカラーレーザプリンタで説明しているが、カラーインクジェットプリンタ、カラー熱転写プリンタ等のカラープリンタであっても良い。なお、レンダラ210は、RGB各色8ビット/ピクセルの描画ビットマップイメージを生成するとしたが、YMCKであっても、グレイであっても良い。また、各色のビット/ピクセルはどのような値であっても良い。この場合、バンドバッファ211、圧縮部212、ページメモリ213、伸長部214は、レンダラ210が生成する色空間、ビット/ピクセルに対応していれば良い。さらに、伸長されたデータは色変換部215において、レンダラ210で生成されたデータを出力インターフェース部216に対応する色空間、ビット/ピクセルに変換するものであれば良い。
【0028】
以下に、本実施例の処理の流れの一例を説明する。図4−aは、入力データ218の描画コマンドを示す。図4−bは、中間バッファ209に格納される中間データを示す。図4−cは、レンダラ210で生成される描画ビットマップイメージを示す。
【0029】
まずホストコンピュータ201より文字コマンド、図形コマンド、イメージコマンドといった入力コマンドが入力される(図4−a)。ここで、図形コマンド1としてボックスがRGB=(255、0、0)で、描画論理が上書きROP=Sとして入力され、図形コマンド2としてボックスがRGB=(255、255、0)で、描画論理が上書きROP=Sとして入力されている。
【0030】
次に、入力データは中間データに変換され、中間バッファ209に格納される(図4−b)。ここで、object 1として属性:type=図形(ボックス)、印字位置:(X、Y)、幅高さ:(w、h)、色:RGB=(255、0、0)、描画論理:ROP=S(上書き)が作成され、object2として属性:type=図形(ボックス)、印字位置:(X+a、Y+b)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、描画論理:ROP=S(上書き)が作成される。
【0031】
中間データをレンダラ210により描画すると、描画ビットマップイメージが生成される(図4−c)。第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、エリア1はRGB=(255、0、0)の矩形が描画されており、エリア2はRGB=(255、255、0)の矩形が描画されている。何も描画されていないところはRGB=(255、255、255)である。
【0032】
以下に、アルファブレンドを行う際の本実施例の処理の流れの一例を説明する。図5−aは、入力データ218の描画コマンドを示す。図5−bは、中間バッファ209に格納される中間データを示す。図5−cは、レンダラ210で生成される描画ビットマップイメージを示す。図5−dは、中間バッファ209に格納されるパターンを示す。
【0033】
まずホストコンピュータ201より文字コマンド、図形コマンド、イメージコマンドといった入力描画コマンドが入力される(図5−a)。ここで、図形コマンド1としてボックスがRGB=(255、0、0)で、描画論理が上書きROP=Sとして入力され、図形コマンド2としてボックスがRGB=(255、255、0)で、描画論理が上書きアルファブレンド指定:α=128として入力されている。このアルファブレンド指定は全て入力コマンドに単一のアルファブレンド指定をしてもよいし、コマンド毎にアルファブレンド指定することで入力コマンドに対し複数のアルファブレンド指定を行ってもよい。
【0034】
本来期待されるアルファブレンドは以下の通りである。
ResultR=(α/255)×SrcR+(1−(α/255))×DestR
ResultG=(α/255)×SrcG+(1−(α/255))×DestG
ResultB=(α/255)×SrcB+(1−(α/255))×DestB
【0035】
ここでResultR(G、B)は描画結果後の第1のビットマップイメージの値、SrcR(G、B)は入力オブジェクトの色の値、DestR(G、B)は描画結果前の第1のビットマップイメージの値、αは入力オブジェクトのアルファブレンド値である。
【0036】
次に、ROM219のプログラムに基づくCPUの制御下で、入力データは中間データに変換され、中間バッファ209に格納される(図5−b)。ここで、object 1として属性:type=図形(ボックス)、印字位置:(X、Y)、幅高さ:(w、h)、色:RGB=(255、0、0)、描画論理:ROP=S(上書き)が作成され、object2として属性:type=図形(ボックス)、印字位置:(X+a、Y+b)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、パターン:幅高さ((w′、h′)パターン、描画論理:ROP=DSPDxaxが作成される。
【0037】
object2で適用するタイルパターンデータ(面積情報)を図5−dに示す。αブレンド値=128なので、タイルパターンは白ピクセル、黒ピクセルの比(オン/オフ比)が50:50になるように配置された、幅=8ピクセル、高さ=8ピクセルの二値ビットマップとなる。
【0038】
もし、αブレンド値が64ならば、白ピクセル、黒ピクセルの比は25:75になる。
【0039】
次に、上述した中間データをレンダラ210により描画すると、描画ビットマップイメージが生成される(図5−c)。ここで、第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、エリア1はRGB=(255、0、0)が描画されており、何も描画されていないところはRGB=(255、255、255)である。
【0040】
ROP=DSPDxaxとは、印字結果のうち、タイルパターン(面積情報)の白ピクセルに相当するピクセルは、ソース(RGB=(255、0、0)(オブジェクト1)を反映し、タイルパターン(面積情報)の黒ピクセルに相当するピクセルは、ディスティネーション(RGB=(255、255、0))(オブジェクト2)を反映する処理を行うコマンドである。よって、エリア2の内、全ピクセルの50%はRGB(255、255、255)であり、50%はRGB=(255、255、0)となる。また、エリア3の内、全ピクセルの50%はRGB=(255、0、0)であり、50%はRGB=(255、255、0)となる。
【0041】
以上のようにアルファブレンド指定をアルファ値に応じた面積情報(タイルパターンデータ)に置換し、描画コマンドを面積情報に応じた別の描画コマンドに変換することにより、描画手段がアルファブレンド描画をサポートしていない場合でも、アルファブレンド描画を行うことができる。
【0042】
(第2の実施形態)
以下第2の実施形態を説明する。図6−aは、入力データ218の描画コマンドを示す。図6−bは、中間バッファ209に格納される中間データを示す。図6−cは、レンダラ210で生成される描画ビットマップイメージを示す。図6−dは中間バッファ209に格納されるディザデータを示す。
【0043】
まずホストコンピュータ201より文字コマンド、図形コマンド、イメージコマンドといった入力コマンドが入力される(図6−a)。ここで、図形コマンド1として図形(ボックス)がRGB=(255、0、0)で、描画論理が上書きROP=Sとして入力され、描画コマンド2としてイメージがイメージの印字位置(X+a、Y+b)、幅高さ(w′、h′)、イメージの変形マトリクスmatrix、イメージデータとして各ピクセル24ビット/ピクセルで全ピクセルRGB=(255、255、0)で、描画論理として、アルファマスクの印字位置(x、y)、幅高さ(w′、h′)、マスクの変形マトリクスmatrix、アルファマスクデータとして全ピクセル8ビット/ピクセルの全ピクセル=(128)で入力される。
【0044】
本来期待されるアルファブレンドは以下の通りである。
ResultR=(α/255)×SrcR+(1−(α/255))×DestR
ResultG=(α/255)×SrcG+(1−(α/255))×DestG
ResultB=(α/255)×SrcB+(1−(α/255))×DestB
【0045】
ここでResultR(G、B)は描画結果後の第1のビットマップイメージの値、SrcR(G、B)は入力イメージの印字位置に対応するピクセル値、DestR(G、B)は描画結果前の第1のビットマップイメージの値、αは入力マスクの印字位置に対応するピクセル値である。
【0046】
次に、入力データは中間データに変換され、中間バッファ209に格納される(図5−b)。ここで、object1として属性:type=図形(ボックス)、印字位置:(X、Y)、幅高さ:(w、h)、色:RGB=(255、0、0)、描画論理:ROP=S(上書き)が作成され、object2として属性:type=イメージ、印字位置:(X+a、Y+b)、幅高さ:(w′、h′)、マトリクス:matrix、イメージデータ:全ピクセルRGB=(255、255、0)、object2に使用するパターンとして、印字位置:(X;a、Y+b)、幅高さ:(w′、h′)、マトリクス:matrix、パターンデータ:全ピクセル(多値ビットマップイメージ)=128、パターンを二値化するためのディザデータとして、幅高さ(w′、h′)、ディザデータイメージと、パターンとディスティネーションの描画論理としてROP=DSPDxaxが作成される。
【0047】
object2で適用するディザデータを図6−dに示す。アルファマスクデータ(多値ビットマップイメージ)を二値化する際にアルファマスク(値)の値に比例して、白ピクセル、黒ピクセルの比になるように配置された、幅=8ピクセル、高さ=8ピクセルの二値化用閾値テーブルである。なお閾値テーブルの値は16進数で記述している。ディザテーブルは以下の式のように使用される。
【0048】
pattern=AlphaMask>DitherData:pattern=1(白),pattern=0(黒)(アルファ値に応じたオン、オフ)
【0049】
ここで、pattern:アルファマスクデータとディザデータから求まる二値ビットマップパターン、AlphaMask:第1のビットマップのプクセル位置に対応したアルファマスクデータ値(全ピクセル128)、DitherData:第1のビットマップのピクセル位置に対応したディザテーブル値(図6−d)である。即ち、もし、アルファマスクデータ値が全ピクセル128ならば、白ピクセル、黒ピクセルの比(アルファ値に応じたオンオフ比)は50:50になる。もし、アルファマスクデータ値が全ピクセル64ならば、白ピクセル、黒ピクセルの比(アルファ値に応じたオンオフ比)は25:75になる。
【0050】
次に、中間データをレンダラ210により描画すると、描画ビットマップイメージが生成される(図6−c)。ここで、第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、エリア1はRGB=(255、0、0)が描画されており、何も描画されていないところはRGB=(255、255、255)である。
【0051】
ROP=DSPDxaxとは、エリア3においては、印字結果のうち、パターンの白ピクセルに相当するピクセルは、ソース(RGB=(255、0、0))を反映し、パターンの黒ピクセルに相当するピクセルは、ディスティネーション(RGB=(255、255、0))を反映する処理である。よって、エリア2の内、全ピクセルの50%はRGB=(255、255、255)であり、50%はRGB=(255、255、0)となる。また、エリア3の内、全ピクセルの50%はRGB=(255、0、0)であり、50%はRGB=(255、255、0)となる。
【0052】
以上のようにアルファブレンド指定をアルファ値に応じた面積情報に置換し、描画コマンドを面積情報に応じた別の描画コマンドに変換することにより、描画手段がアルファブレンド描画をサポートしていない場合でも、アルファブレンド描画を行うことができる。
【0053】
(第3の実施形態)
実施形態1、2では、アルファ値に比例して、パターンの白ピクセルと黒ピクセルの割合を算出しているが、アルファ値とパターンの黒ピクセルの割合の相関関係は、図7のように比例式でなくても良い。又、この相関関係もホストコンピュータ201から指定することによりホストコンピュータ201から、所望のαフレンドを実現できる。
【0054】
(第4の実施形態)
実施形態1において、文字/図形/イメージといったオブジェクトの種別毎に、アルファ値とパターンの黒ピクセルの割合の相関関係を変更しても良い。この場合、入力オブジェクトの種類をCPU208により認識し、文字、図形のオブジェクトについては黒ピクセルの割合を増やす様にROM219のプログラムのもとCPU208が処理をすれば、文字、図形の輪郭を保存し、視覚的に文字、図形を識別しやすくなる。
【0055】
(第5の実施形態)
実施形態1において、パターンのサイズは任意でよい。また、白ピクセルと黒ピクセルの取りうるピクセル配置は任意でよい。
【0056】
(第6の実施形態)
実施形態2において、パターンのサイズ、白ピクセルと黒ピクセルの取りうるピクセル配置を、色変換部215における、RGB各色8ビット/ピクセルのビットマップイメージをYMCK各色4ビット/ピクセルのビットマップイメージに変換する際の中間調変換によるスクリーンサイズ、スクリーン角と干渉しないように調整する。具体的には、ROM219のプログラムのもとCPU208が色変換部215における中間調変換の中間調スクリーンの角度が90度の時は、ディザデータのスクリーン角度を0度にするなど異なる角度にすることで干渉を防止することが可能となる。
【0057】
(第7の実施形態)
以下に、本実施形態の処理の流れの一例を説明する。図8−aは、入力データ218の描画コマンドを示す。図8−bは、中間バッファ209に格納される中間データを示す。図8−cは、レンダラ210で生成される描画ビットマップイメージを示す。図8−dは、中間バッファ209に格納されるクリップオブジェクトを示す。
【0058】
まずホストコンピュータ201より文字コマンド、図形コマンド、イメージコマンドといった入力コマンドが入力される(図8−a)。ここで、図形コマンド1としてボックスがRGB=(255、0、0)で、描画論理が上書きROP=Sとして入力され、図形コマンド2としてボックスがRGB=(255、255、0)で、描画論理がアルファブレンド:α=128として入力されている。
【0059】
本来期待されるアルファブレンドは以下の通りである。
ResultR=(α/255)×SrcR+(1−(α/255))×DestR
ResultG=(α/255)×SrcG+(1−(α/255))×DestG
ResultB=(α/255)×SrcB+(1−(α/255))×DestB
【0060】
ここでResultRは描画結果後の第1のビットマップイメージの値であり、SrcRは入力オブジェクトの色の値であり、DestRは描画結果前の第1のビットマップイメージの値であり、αは入力オブジェクトのアルファブレンド値である。
【0061】
次に、入力データは中間データに変換され、中間バッファ209に格納される(図8−b)。ここで、object1として属性:type=図形(ボックス)、印字位置:(X、Y)、幅高さ:(w、h)、色:RGB=(255、0、0)、描画論理:ROP=S(上書き)が作成され、object2として属性:type=図形(ボックス)、印字位置:(X+a、Y+b)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、クリップオブジェクト、描画論理:ROP=Sが作成される。
【0062】
object2で適用するクリップオブジェクトデータを図8−dに示す。αブレンド値=128なので、オブジェクト2の矩形領域の50%が有効ピクセルになるように配置された、複数の矩形からなる集合である。もしαブレンド値が64ならば、オブジェクト2の矩形領域の内25%が有効ピクセルになるように複数の矩形からなる集合を形成する。
【0063】
次に、中間データをレンダラ210により描画すると、描画ビットマップイメージが生成される(図8−c)。ここで、第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、エリア1はRGB=(255、0、0)が描画されており、何も描画されていないところはRGB=(255、255、255)である。クリップとは、クリップオブジェクトに囲まれたところのみを描画する。よって、エリア2の内、全ピクセルの50%はRGB(255、255、255)であり、50%はRGB(255、255、0)となる。また、エリア3の内、全ピクセルの50%はRGB=(255、0、0)であり、50%はRGB=(255、255、0)となる。
【0064】
以上のようにアルファブレンド指定をアルファ値に応じた面積情報に置換し、描画コマンドを面積情報に応じた別の描画コマンドに変換することにより、描画手段がアルファブレンド描画をサポートしていない場合でも、アルファブレンド描画を行うことができる。
【0065】
(第8の実施形態)
以下に、本実施形態の処理の流れの一例を説明する。
【0066】
図9−aは、入力データ218の描画コマンドを示す。図9−bは、中間バッファ209に格納される中間データを示す。図9−cは、レンダラ210で生成される描画ビットマップイメージを示す。図9−dは、中間バッファ209に格納されるオブジェクト2以降の矩形を示す。
【0067】
まずホストコンピュータ201から文字コマンド、図形コマンド、イメージコマンドといった入力コマンドが入力される(図9−a)。ここで、図形コマンド1としてボックスがRGB=(255、0、0)で、描画論理が上書きROP=Sとして入力され、図形コマンド2としてボックスがRGB=(255、255、0)で、描画論理がアルファブレンド:α=128として入力されている。
【0068】
本来期待されるアルファブレンドは以下の通りである。
ResultR=(α/255)×SrcR+(1−(α/255))×DestR
ResultG=(α/255)×SrcG+(1−(α/255))×DestG
ResultB=(α/255)×SrcB+(1−(α/255))×DestB
【0069】
ここでResultR(G、B)は描画結果後の第1のビットマップイメージの値、SrcR(G、B)は入力オブジェクトの色の値、DestR(G、B)は描画結果前の第1のビットマップイメージの値、αは入力オブジェクトのアルファブレンド値である。
【0070】
次に、入力データは中間データに変換され、中間バッファ209に格納される(図9−b)。ここで、object1として属性:type=図形(ボックス)、印字位置:(X、Y)、幅高さ:(w、h)、色:RGB=(255、0、0)、描画論理:ROP=S(上書き)が作成され、object2として属性:type=図形(ボックス)、印字位置:(X+a、Y+b)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、描画論理:ROP=Sが作成され、object3として属性:type=図形(ボックス)、印字位置:(X+a、Y+c)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、描画論理:ROP=Sが作成され、object4として属性:type=図形(ボックス)、印字位置:(X+a、Y+d)、幅高さ:(w′、h′)、色:RGB=(255、255、0)、描画論理:ROP=Sが作成される。
【0071】
object2以降で適用する矩形オブジェクトデータを図9−dに示す。αブレンド値=128なので、オブジェクト2以降は、矩形領域の50%が有効ピクセルになるように配置された、複数の矩形からなる集合である。もしαブレンド値が64ならば、オブジェクト2以降は、矩形領域の内25%が有効ピクセルになるように複数の矩形からなる集合を形成する。
【0072】
次に、中間データをレンダラ210により描画すると、描画ビットマップイメージが生成される(図9−c)。ここで、第1のビットマップイメージは各色8ビット/ピクセルのRGBのビットマップイメージで構成されており、エリア1はRGB=(255、0、0)が描画されており、何も描画されていないところはRGB=(255、255、255)である。
【0073】
図9−dのように矩形が配置されているので、エリア2の内、全ピクセルの50%はRGB(255、255、255)であり、50%はRGB(255、255、0)となる。また、エリア3の内、全ピクセルの50%はRGB=(255、0、0)であり、50%はRGB=(255、255、0)となる。
【0074】
以上のようにアルファブレンド指定をアルファ値に応じた面積情報に置換し、描画コマンドを面積情報に応じた別の描画コマンドに変換することにより、描画手段がアルファブレンド描画をサポートしていない場合でも、アルファブレンド描画を行うことができる。
【0075】
(本発明の他の実施形態)
前述した実施形態の機能を実現するように前述した実施形態の構成を動作させるプログラムを記憶媒体に記憶させ、該記憶媒体に記憶されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も上述の実施形態の範疇に含まれるし、前述のプログラムが記憶された記憶媒体も上述の実施形態に含まれる。
【0076】
かかる記憶媒体としてはとたえばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。
【0077】
また前述の記憶媒体に記憶されたプログラム単体で処理を実行しているものに限られず、他のソフトウエア、拡張ボードの機能と共同して、OS上で動作し前述の実施形態の動作を実行するものも前述した実施形態の範疇に含まれる。
【0078】
【発明の効果】
以上説明したように、第1の発明によれば、入力された描画コマンドを第1のビットマップイメージに描画する描画手段と、前記描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を行う描画方法指定手段とを有する印刷制御装置および描画制御装置において、前記アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換手段と、描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換手段とを有すので、描画手段がアルファブレンド描画をサポートしていない場合でも、アルファブレンド描画を行うことができる。また、第1のビットマップイメージのビット深さがアルファブレンド値のビット深さよりも少ない場合でも、面積情報を用いてアルファブレンド描画を行うことができる。
【図面の簡単な説明】
【図1】従来例を示す図である。
【図2】実施例のLBPの内部構造を示す断面図である。
【図3】図2に示した本体の制御構成を説明するブロック図である。
【図4】入力データ218の描画コマンド、中間バッファ209に格納される中間データ、レンダラ210で生成される描画ビットマップイメージを示す図である。
【図5】入力データ218の描画コマンド、中間バッファ209に格納される中間データ、レンダラ210で生成される描画ビットマップイメージ、中間バッファ209に格納されるパターンを示す図である。
【図6】入力データ218の描画コマンド、中間バッファ209に格納される中間データ、レンダラ210で生成される描画ビットマップイメージ、中間バッファ209に格納されるディザデータを示す図である。
【図7】アルファ値とパターンの黒ピクセルの割合の関係を示す図である。
【図8】第7の実施例を説明するための図である。
【図9】第8の実施例を説明するための図である。
Claims (13)
- 前記入力された描画コマンドを第1のビットマップイメージに描画する描画手段と、描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を行う描画方法指定手段とを有する印刷制御装置および描画制御装置において、
前記アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換手段と、
前記描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換手段とを有することを特徴とする印刷制御装置および描画制御装置。 - 前記描画方法指定手段は、前記入力オブジェクトをビットマップに描画する際の前記アルファブレンド指定として入力コマンド全体に単一のアルファ値を指定する手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記描画方法指定手段は、前記入力オブジェクトをビットマップに描画する際の前記アルファブレンド指定として入力コマンドに対して複数のアルファ値を指定する手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記アルファ置換手段は、前記アルファブレンド指定を、アルファ値に応じたオン/オフ比を備えたビットマップに変換する手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記アルファ置換手段は、複数のアルファ値を指定する多値ビットマップイメージを、前記アルファ値に応じたオン/オフ比を備えた二値ビットマップに変換する手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記アルファ置換手段は、前記入力された描画コマンドが文字か図形かイメージかといった属性に従って、アルファブレンド指定を、アルファ値に応じたオン/オフ比に変換する際のオン/オフの比を変更する手段を有することを特徴とする請求項4、請求項5記載の印刷制御装置および描画制御装置。
- 前記アルファ置換手段は、前記アルファブレンド指定を、アルファ値に応じたオン/オフ比に変換する際のオン/オフの配置を、第1のビットマップイメージを中間調変換する際のスクリーンとモアレが生じないようなスクリーン角、スクリーン線数を調整する手段を有することを特徴とする請求項4、請求項5記載の印刷制御装置および描画制御装置。
- 前記描画コマンド変換手段は、入力された描画コマンドの入力オブジェクトとアルファブレンド指定という組み合わせを、入力オブジェクトと前記アルファ値置換手段により生成されたビットマップイメージと描画論理指定という組み合わせに変換する手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記描画コマンド変換手段は、入力オブジェクトとアルファ値置換手段により生成されたビットマップイメージと描画論理指定という組み合わせにおいて、前記アルファ値置換手段により生成されたビットマップイメージにおける2値ビットの第1の状態に対応する位置では入力オブジェクトを描画し、第2の状態に対応する位置では前記第1のビットマップイメージを透過する手段を有することを特徴とする請求項8記載の印刷制御装置および描画制御装置。
- 前記アルファ値置換手段は、前記アルファ値に応じた有効面積を有するクリッピング領域指定手段を備え、前記描画コマンド変換手段は、前記入力された描画コマンドを前記クリッピング領域指定手段により生成されたクリッピング領域を用い、入力オブジェクトを第1のビットマップイメージに上書きする手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 前記アルファ値置換手段は、前記入力オブジェクトを前記アルファ値に応じた有効面積を有するサイズの複数のオブジェクトに変換するオブジェクト変換手段を備え、前記描画コマンド変換手段は、前記オブジェクト変換手段により生成されたオブジェクトを第1のビットマップイメージに上書きする手段を有することを特徴とする請求項1記載の印刷制御装置および描画制御装置。
- 入力された描画コマンドを第1のビットマップイメージに描画する描画ステップと、描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を行う描画方法指定ステップとを有する印刷制御装置および画像制御装置のデータ処理方法において、
前記アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換ステップと、
前記描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換ステップとを有することを特徴とする印刷制御装置および画像制御装置のデータ処理方法。 - 入力された描画コマンドを第1のビットマップイメージに描画し、描画コマンドとして入力オブジェクトを第1のビットマップに描画する際のアルファブレンド指定(透明度指定)を行うとコンピュータが読み出し可能なプログラムを格納した記憶媒体において、
前記アルファブレンド指定をアルファ値に応じた面積情報に置換し、
描画コマンドを面積情報に応じた別の描画コマンドに変換することを特徴とするコンピュータが読み出し可能なプログラムを格納した記憶媒体。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000189336A JP3728183B2 (ja) | 2000-06-23 | 2000-06-23 | 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 |
| US09/885,054 US6989909B2 (en) | 2000-06-23 | 2001-06-21 | Print controller, drawing controller, data processing method and storage medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000189336A JP3728183B2 (ja) | 2000-06-23 | 2000-06-23 | 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002007102A JP2002007102A (ja) | 2002-01-11 |
| JP3728183B2 true JP3728183B2 (ja) | 2005-12-21 |
Family
ID=18688977
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000189336A Expired - Lifetime JP3728183B2 (ja) | 2000-06-23 | 2000-06-23 | 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US6989909B2 (ja) |
| JP (1) | JP3728183B2 (ja) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4804044B2 (ja) * | 2005-06-07 | 2011-10-26 | キヤノン株式会社 | 画像処理装置及び画像処理方法 |
| US20080232884A1 (en) * | 2007-03-22 | 2008-09-25 | Cadlink Technology Corporation | Method for printing onto coloured substrates |
| US8432572B2 (en) * | 2007-06-29 | 2013-04-30 | Konica Minolta Laboratory U.S.A., Inc. | Systems and methods of trapping for print devices |
| US8570340B2 (en) | 2008-03-31 | 2013-10-29 | Konica Minolta Laboratory U.S.A., Inc. | Systems and methods for data compression |
| US8699042B2 (en) * | 2008-06-12 | 2014-04-15 | Konica Minolta Laboratory U.S.A., Inc. | Systems and methods for multi-mode color blending |
| JP5849485B2 (ja) | 2011-07-15 | 2016-01-27 | 株式会社リコー | 印刷制御プログラム、情報処理装置及び記録媒体 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0774924A (ja) | 1993-08-31 | 1995-03-17 | Canon Inc | 画像処理装置 |
| JP3194352B2 (ja) | 1995-05-05 | 2001-07-30 | アグフア−ゲヴエルト・ナームローゼ・フエンノートシヤツプ | 合成画像を再現する方法 |
| US6133901A (en) * | 1998-03-31 | 2000-10-17 | Silicon Graphics, Inc. | Method and system for width independent antialiasing |
| JP3748554B2 (ja) * | 2003-02-05 | 2006-02-22 | コナミ株式会社 | 画像生成装置、画像生成方法、及びプログラム |
-
2000
- 2000-06-23 JP JP2000189336A patent/JP3728183B2/ja not_active Expired - Lifetime
-
2001
- 2001-06-21 US US09/885,054 patent/US6989909B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| US20020051193A1 (en) | 2002-05-02 |
| JP2002007102A (ja) | 2002-01-11 |
| US6989909B2 (en) | 2006-01-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7612910B2 (en) | Information processing apparatus, information processing system, information output control method, storage medium and program | |
| US6985260B1 (en) | Apparatus and method for drawing a gradient fill object | |
| JP3902907B2 (ja) | 画像処理装置及び方法と画像形成装置 | |
| JPH11105349A (ja) | 印刷処理システム及び印刷処理方法並びに印刷処理制御プログラムが記録されたコンピュータ読み取り可能な記録媒体 | |
| JP3728183B2 (ja) | 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体 | |
| JPH02301464A (ja) | 情報処理装置及び方法 | |
| US6995862B1 (en) | Image processing apparatus and method and computer program product | |
| JP4109785B2 (ja) | 画像処理装置及びその方法、コンピュータ可読メモリ | |
| US7835046B2 (en) | Data processing apparatus, data processing method, computer program, and storage medium | |
| JP4336470B2 (ja) | 描画制御装置および描画制御方法およびプログラム | |
| JP3133848B2 (ja) | 画像処理装置及び画像処理システム | |
| JP2004174964A (ja) | 印刷制御装置および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
| JP4306841B2 (ja) | 画像処理装置及びその方法、コンピュータ可読メモリ | |
| JP4323767B2 (ja) | 印刷制御システム、そのデータ処理方法、および記憶媒体、並びにコンピュータプログラム | |
| JP3826091B2 (ja) | 情報処理装置、及び情報処理方法、プリント装置、及びプリント方法 | |
| JP2004243568A (ja) | 画像形成装置 | |
| JP2006129007A (ja) | 印刷制御装置および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 | |
| JP3453398B2 (ja) | 画像処理システム及びその画像処理方法 | |
| JP3584144B2 (ja) | 画像処理装置及び方法及び方法を記憶した記憶媒体 | |
| JP2000177189A (ja) | 印刷装置および印刷装置の制御方法 | |
| JP2004134962A (ja) | 画像圧縮方法 | |
| JP2002312141A (ja) | 印刷制御装置、印刷情報作成方法、プログラム、及び記憶媒体 | |
| JP2005004324A (ja) | リンク情報を備えたドキュメントの印刷制御装置および印刷制御装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体とその遠隔画像診断装置 | |
| JP2004230726A (ja) | 描画処理方法及び描画処理装置 | |
| JPH06164926A (ja) | 記録装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050228 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050322 |
|
| 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: 20050927 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050930 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 3728183 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091007 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091007 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101007 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101007 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111007 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111007 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121007 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131007 Year of fee payment: 8 |
|
| EXPY | Cancellation because of completion of term |