JP3219477B2 - 画像処理方法及び装置 - Google Patents
画像処理方法及び装置Info
- Publication number
- JP3219477B2 JP3219477B2 JP20554392A JP20554392A JP3219477B2 JP 3219477 B2 JP3219477 B2 JP 3219477B2 JP 20554392 A JP20554392 A JP 20554392A JP 20554392 A JP20554392 A JP 20554392A JP 3219477 B2 JP3219477 B2 JP 3219477B2
- Authority
- JP
- Japan
- Prior art keywords
- flow advances
- memory
- value
- band
- 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
Links
Description
に、ホストコンピュータから送られたページ記述言語で
記述されている印刷データを受信し、印刷データをバン
ド単位に展開し、バンド単位でデータの読み出しと書き
込みを制御する画像処理装置に関するものである。
iption Language、ページ記述言語)や
ページ記述コマンドを用いて、図形・文字の描画を行う
際に指定する座標点等の基準となる座標系(以後、この
座標系をユーザー座標系と呼ぶ)の一例を示している。
で描画可能な領域)を示しており、図に示すように、有
効印字領域の縦の長さを有効印字領域高、横幅を有効印
字領域幅とする。
標系であり、図に示すように有効印字領域の左下隅を原
点としている。
可能(例えば、0.01mmや1/72inch等)で
ある。
た、図形描画等のPDLの記述要素やページ記述コマン
ドは、画像処理装置が受け取った順番に画像処理装置内
部で解析され、メモリに展開するための情報に変換され
る。
となる座標系(以後、この座標系をプリンタ座標系と呼
ぶ)の一例を示している。
置の解像度によって決まる。(例えば、解像度が300
dpiの場合、座標単位は1/300inchとなる)
斜線の矩形部分は、図1の有効印字領域と同じものであ
る。
であり、有効印字領域の左上隅を原点としている。
ドに基づいてカラー記録を行う画像処理装置における内
部のRAM領域のメモリマップの一例を示している。
リ、空き領域、色材(トナーやインク)であるY(Ye
llow),M(Magenta),C(Cyan),
Bk(Black)それぞれのページ展開メモリ(図2
の有効印字領域の大きさ分のメモリ)で構成されてい
る。
置内部の制御に用いる情報(変数等)の格納領域や固定
のワーク領域等に用いられる。
キャシュメモリ等に用いられる。
りつぶし色指定コマンドの一例を示している。
す色を指定するのに用いられる。
なり、各コマンド機能の識別に用いられる。
ラメータの後に来るデータの個数を示している。
メータの内容は4となる。
であるY(Yellow),M(Magenta),C
(Cyan),Bk(Black)の濃度データ値を示
している。
コマンドの一例を示している。
り、各コマンド機能の識別に用いられる。
メータの後に来るデータの個数を示している。
ザー座標系上の座標である。
を解析して作成された、メモリ展開情報の一例を示して
いる。
モリ展開情報の識別に用いられる。
る。
して作成された、メモリ展開情報の一例を示している。
モリ展開情報の識別に用いられる。
メータの後に来るデータの個数を示している。
装置の解像度をもとにプリンター座標系上の座標に変換
された座標である。
座標単位を1mmとし、4つの座標(100,20
0)、(200,200)、(200,100)、(1
00,100)からなる多角形の描画を設定した場合の
図である。
発行するコマンドの一例を示している。
形描画を座標単位1/300inch(約1/11.8
mm)のプリンタ座標系上の多角形描画に変換した場合
の図を示している。
を400mmとしている。
(2360,2360)、(2360,3540)、
(1180,3540)となる。
析して作成された、図10の多角形描画のメモリ展開情
報の一例を示している。
リ展開情報の設定の一例を示している。
〜255の範囲であり、Y値が255、その他の値は0
となっている。
リ展開情報のモノクロモード時における設定の一例を示
している。
によるカラー処理は行われず、Bkの色材を用いたグレ
イスケールによる処理が行われる。
囲の値であり、本例の51という値は濃度20(51/
255)%]であることを示している。。
タ座標の座標単位で区切った図を示している。
に示したypmin、y座標の最大値は図に示したyp
maxである。
示したleftxとrightxの間に対応する展開メ
モリに塗りつぶしパターンを展開することになる。
ぶす処理の一例を示したフロチャートを示している。
きである。
かチェックする。
1に進んでカラーモード時の塗りつぶしの処理を行い、
処理を終了する。
02に進んでモノクロモード時の塗りつぶしの処理を行
い、処理を終了する。
1のカラーモード時の塗りつぶしの処理の概要を示した
フローチャートを示している。
ぶし色指定のメモリ展開情報を取り出してステップS3
11に進む。
し色指定のメモリ展開情報から塗りつぶし色のY値,M
値,C値,Bk値を取りだし、それぞれP_Y,P_
M,P_C,P_Bkにセットして、ステップS312
に進む。
をβにセットしてステップS313に進む。
であるleftx,rightxを算出しステップS3
14に進む。
htxに対応する図3のYのページメモリ上のアドレス
・ビットを計算してステップS315に進む。
計算したleftxに対応するアドレス・ビットをそれ
ぞれylad,ylbit、rightxに対応するア
ドレス・ビットをそれぞれyrad,yrbitにセッ
トしてステップS316に進む。
る。
んでylad,ylbitとyrad,yrbitとの
間のメモリをクリアしてステップS321に進む。
に進んでP_Yの値に対応したディザパターンの格納ア
ドレスを取り出してステップS319に進む。
らディザパターンを取り出してステップS320に進
む。
tとyrad,yrbitとの間のメモリにステップS
318で取りだしたディザパターンを展開してステップ
S321に進む。
htxに対応する図3のMのページメモリ上のアドレス
・ビットを計算してステップS322に進む。
計算したleftxに対応するアドレス・ビットをそれ
ぞれmlad,mlbit、rightxに対応するア
ドレス・ビットをそれぞれmrad,mrbitにセッ
トしてステップS323に進む。
る。
んでmlad,mlbitとmrad,mrbitとの
間のメモリをクリアしてステップS328に進む。
に進んでP_Mの値に対応したディザパターンの格納ア
ドレスを取り出してステップS326に進む。
らディザパターンを取り出してステップS327に進
む。
tとmrad,mrbitとの間のメモリにステップS
326で取りだしたディザパターンを展開してステップ
S328に進む。
htxに対応する図3のCのページメモリ上のアドレス
・ビットを計算してステップS329に進む。
計算したleftxに対応するアドレス・ビットをそれ
ぞれclad,clbit、rightxに対応するア
ドレス・ビットをそれぞれcrad,crbitにセッ
トしてステップS330に進む。
る。
んでclad,clbitとcrad,crbitとの
間のメモリをクリアしてステップS335に進む。
に進んでP_Cの値に対応したディザパターンの格納ア
ドレスを取り出してステップS333に進む。
らディザパターンを取り出してステップS334に進
む。
tとcrad,crbitとの間のメモリにステップS
333で取りだしたディザパターンを展開してステップ
S335に進む。
htxに対応する図3のBkのページメモリ上のアドレ
ス・ビットを計算してステップS336に進む。
計算したleftxに対応するアドレス・ビットをそれ
ぞれklad,klbit、rightxに対応するア
ドレス・ビットをそれぞれkrad,krbitにセッ
トしてステップS337に進む。
する。
んでklad,klbitとkrad,krbitとの
間のメモリをクリアしてステップS342に進む。
に進んでP_Bkの値に対応したディザパターンの格納
アドレスを取り出してステップS340に進む。
らディザパターンを取り出してステップS341に進
む。
tとkrad,krbitとの間のメモリにステップS
340で取りだしたディザパターンを展開してステップ
S342に進む。
axが等しいかどうか比較する。
んでβを1つインクリメントしてステップS313に戻
る。
2のモノクロモード時の塗りつぶしの処理の概要を示し
たフロチャートを示している。
な塗りつぶし色指定のメモリ展開情報を取り出してステ
ップS351に進む。
し色指定のメモリ展開情報から塗りつぶし色のグレイス
ケール濃度値を取りだし、P_Gにセットして、ステッ
プS352に進む。
をβにセットしてステップS353に進む。
たディザパターンの格納アドレスを取り出してステップ
S354に進む。
らディザパターンを取り出してステップS355に進
む。
であるleftx,rightxを算出しステップS3
56に進む。
htxに対応する図3のBkのページメモリ上のアドレ
ス・ビットを計算してステップS357に進む。
計算したleftxに対応するアドレス・ビットをそれ
ぞれklad,klbit、rightxに対応するア
ドレス・ビットをそれぞれkrad,krbitにセッ
トしてステップS358に進む。
tとkrad,krbitとの間のメモリにステップS
354で取りだしたディザパターンを展開してステップ
S359に進む。
axが等しいかどうか比較する。
んでβを1つインクリメントしてステップS353に戻
る。
コマンドに基づいて、カラー記録を行う画像処理装置の
制御においては、トナーやインクの色材であるY(Ye
llow),M(Magenta),C(Cyan),
Bk(Black)それぞれ用紙の有効印字領域の大き
さ分の展開メモリにコマンド解析より得られたメモリ展
開情報に基づいて描画パターンを展開していた。
図15〜23に示したような処理により行っていた。
記の従来例では次のような欠点があった。
の際に、Y,M,C,Bkの濃度値を検出し、その値に
よってY,M,C,Bk各ページメモリへの図形描画の
塗りつぶしを制御していたため、描画に時間を要してい
た。
の際に、Y,M,C,Bkの濃度値に対応したY,M,
C,Bk各ディザパターンを格納領域から取りだしてペ
ージメモリへの図形描画の塗りつぶしを制御していたた
め、描画に時間を要していた。
ぶし処理に対しては、論理描画別の処理で行っていた
め、対応する論理描画の種類が多くなるほど制御に必要
なプログラムの量あるいはハードウエアの規模が増大す
るという欠点があった。
データをグレイスケールで出力するモード)を切り替え
可能な場合、図形描画の塗りつぶし処理に対しては、上
記のモード別の処理で行っていため、制御に必要なプロ
グラムの量ある いはハードウエアの規模が増すと
いう欠点があった。
なされたものであり、その目的とするところは、ホスト
コンピュータから送られたページ記述言語で記述されて
いる印刷データを受信し、印刷データをバンド単位に展
開し、バンド単位でデータの読み出しと書き込みを制御
するインクジェット方式等のプリンタである画像処理装
置において、異なる論理描画の切り替え処理などを行う
場合に、極力同一の制御で行うことにより、従来に比べ
て制御に必要なプログラム量あるいはハードウェアの規
模の軽減を図ることにある
に、本発明は、ページ記述言語で記述されている印刷デ
ータを受信し、該印刷データをバンド単位に展開し、バ
ンド単位でデータの読み出しと書き込みを制御する画像
処理装置において、バンドメモリに対して印刷データを
展開する関数のアドレスが格納されているテーブルを有
し、前記テーブルは指定可能な論理描画に応じて複数有
することを特徴とする画像処理装置および、この画像処
理装置において、指定された論理描画に応じて、前記該
当するテーブルにアクセスして前記関数を実行し、図形
・文字の描画を制御する画像処理方法を提供する。
定された描画論理に応じて、前記該当するテーブルアク
セスして前記関数を実行し、図形・文字の描画を制御す
る。
実施例を詳細に説明する。
装置の回路構成を示すブロック図である。
装置は、ホストコンピュータ1と画像処理装置本体2と
から構成されている。
印刷コマンド等を画像処理装置に送り、この画像処理装
置に記録処理を行わせるものである。 画像処理装置は
CPU、ROM、RAMを含むマイクロプロセッサシス
テムを有する。 すなわち、画像処理装置本体は、ホス
トコンピュータ1とのデータ送受のためのインターフェ
ース2、ホストコンピュータ1から送られたコマンドの
コマンドNo.に対応した解析プログラムへのジャンプ
アドレスが格納されるコマンド解析テーブル4を備え、
ホストコンピュータ1から送られたプリントデータやコ
マンドを解析して、展開メモリに展開可能な1ページ分
の情報を作成するコマンド解析部3、バンドの高さとそ
れに対応する色材1色分の展開メモリの情報(メモリ容
量)が格納されたバンド高情報テーブル6を備え、バン
ド高の情報等が格納されているバンド情報格納部5、色
再現処理時に必要な情報が格納されている色再現情報格
納部7、色再現処理が行われる色再現処理部8、文字を
描画するための情報が格納される文字情報格納部9、装
置の制御を行う制御部10、属性情報を格納する属性情
報格納領域12とメモリに展開するための情報を格納す
るメモリ展開情報格納エリア13を備えるメモリ展開情
報格納部11、コマンド実行ジャンプテーブル1(1
5)とコマンド実行ジャンプテーブル2(16)を備
え、メモリ展開情報が解析されるメモリ展開情報解析部
14、解析されたメモリ展開情報をY,M,C,Bk4
つのメモリからなる展開メモリ18に展開するパターン
展開部17、展開されたデータを用紙上に永久可視像出
力する出力部19、Y,M,C,Bk各展開メモリへの
展開時に用いるY,M,C,Bkの値に対応したディザ
パターン格納領域の先頭アドレスが格納されているディ
ザパターンアドレステーブル21を備え、Y,M,C,
Bk各ディザパターンが格納されているディザパターン
格納部20、Y,M,C,K各展開メモリへの展開時に
用いる塗りつぶし関数へのジャンプアドレスが格納され
ている塗りつぶし関数アドレス格納テーブル23を描画
論理別に備え、前記塗りつぶし関数アドレス格納テーブ
ルの先頭アドレスが描画論理別に格納されている描画論
理別テーブルアドレス格納テーブル24を有するメモリ
展開用テーブル格納部22、印刷環境のパラメータを変
更・設定可能な操作パネル25、データバス26を備え
ている。
置のヘッド部回りを詳細に示した図である。
ンクジェットヘッドを副走査方向に配置したヘッドユニ
ットであり、Y,M,C,Bkのユニットを有する。
ク、103は信号ライン、104は搬送ベルトと協働し
てヘッドユニットを取り付けたキャリッジをレールに沿
って移動させるキャリッジ駆動モータである。
9、110は記録紙搬送ローラ、111は記録紙ロー
ル、112はガイドローラをそれぞれ示している。
発熱素子を利用した複数インクジェットヘッドより成る
が、例えばピエゾ素子等の電気機械変換手段を用いたイ
ンクジェットヘッドも勿論使用しうる。
詳細に示した図である。
C,Bkのノズルをそれぞれヘッド高分の数を有してい
る。
ローインク吐き出しノズル、マゼンダインク吐き出しノ
ズル、シアンインク吐き出しノズル、黒インク吐き出し
ノズルを有している。
る。
字領域幅、縦の長さをヘッドの高さとする矩形領域をセ
グメントと定義する。
に縦に並べた領域であり、セグメントの整数倍の大きさ
を持っている。
ッド高の整数倍となる。
で構成されている。
が512スキャンラインの8つのバンドに分割した場合
の一例を示している。
ぞれ0〜7のバンドNo.がつけられている。
0〜(n−1)となるものとする。
点は、各バンドの領域の左上隅の点を示しており、
(0,(n−1)×512)で計算される。
ンド高の整数倍になるとは限らず、最終バンド(図では
7バンド)の高さは、バンド高以下になることがある。
理装置内部のRAM領域のメモリマップの一例を示して
いる。
ワーク用のメモリ・空き領域・色材(トナーやインク)
であるY(Yellow),M(Magenta),C
(Cyan),Bk(Black)それぞれ1バンド分
のメモリ(図28の1つのバンド領域の大きさ分のメモ
リ)で構成されている。
処理装置内部のRAM領域のメモリマップの一例を示し
ている。
みの色材を用いて印刷するため、モノクロモード時のR
AM領域は、システムワーク用のメモリ・空き領域・色
材(トナーやインク)であるBk(Black)1バン
ド分のメモリ(図28の1つのバンド領域の大きさ分の
メモリ)で構成される。
genta),C(Cyan)それぞれ1バンド分のメ
モリを空き領域として有効に有効に活用できる。
置内部の制御に用いる情報(変数等)の格納領域や固定
のワーク領域等に用いられる。
キャシュメモリ等に用いられる。
納領域(RAM)を示している。
展開する際に用いる描画属性情報を一時退避するエリア
及び前記描画属性情報がセットされる変数エリアで構成
されている。
決まっており、m個の情報を退避することが可能であ
る。
情報がセットされる変数を示している。
記述コマンドデータを受取り、ページ単位ごとに記録制
御を行うカラー画像処理装置において、Y(Yello
w),M(Magenta),C(Cyan),Bk
(Black)それぞれ1バンド分のメモリのみにより
カラー記録を行う際のフロチャートを示している。
格納領域をRAM上に確保してステップS2に進む。
画コマンドや描画属性コマンド等1個単位)を読み込
み、ステップS3へ進む。
でコマンドデータを解析し、ステップS4へ進む。
タの残りがあればステップS2に戻り、なければステッ
プS5に進む。
ータ展開に必要な描画属性情報をステップS1で確保し
た属性情報格納領域12の退避エリアに一時退避してス
テップS10へ進む。
ステップS11へ進む。
13に格納されている最初のメモリ展開情報(1組)の
先頭にポインタをセットしてステップS12へ進む。
で読み込んだメモリ展開情報をメモリ展開情報解析部1
4で解析して、バンドi部分に対応した展開メモリ
(Y,M,C,Bk各バンドメモリ)に展開して、ステ
ップS13へ進む。
あれば、ステップS14へ進んで次のメモリ展開情報
(1組)の先頭にポインタをセットしてステップS12
に戻る。
なければステップS15へ進む。
されたメモリの内容を出力部19でカラー記録してステ
ップS16へ進む。
してステップS17へ進む。
ドメモリをクリアしてステップS18へ進む。
一致する場合には処理を終了する。
み、ステップS5で属性情報格納領域12の退避エリア
に一時退避していた描画属性をロードし、属性情報格納
領域12の変数エリアにセットしてステップS11へ戻
る。
ページ記述コマンドデータを受取り、Y(Yello
w),M(Magenta),C(Cyan),Bk
(Black)それぞれ1バンド分のメモリのみにより
カラー記録を行うことが可能となる。
色指定コマンド(線色指定・塗りつぶし色指定・文字色
指定)の一例を示している。
の色を指定するのに用いられる。
部塗りつぶしの色を指定するのに用いられる。
るのに用いられる。
コマンドの識別に用いられる。
ラメータの後に来るデータの個数を示している。
ータの種類を示している。
合で、色指定データが光の3原色であるR(Red),
G(Green),B(Blue)の輝度データ値であ
ることを示している。
指定データが、CIE(国際照明委員会)が1976年
に定めた均等知覚色空間のL*,a*,b*のデータ値
であることを示している。
指定データが、色材(トナー・インク)の原色であるY
(Yellow),M(Magenta),C(Cya
n),Bk(Black)の濃度データ値であることを
示している。
線幅指定コマンド・クリップ領域指定コマンド・塗りつ
ぶし定義指定コマンド・描画論理指定コマンドの一例を
示している。
なり、コマンドの識別に用いられる。
ラメータの後に来るデータの個数を示している。
の輪郭線の線幅を指定するのに用いられる。
単位を単位としている。
形・文字等の描画可能範囲を指定するのに用いられる。
ー座標系の座標単位を単位としている。
閉図形の輪郭線内部の塗りつぶしのパターン及び輪郭線
の有無を指定するのに用いられる。
つぶしパターンの識別に用いられ、パターンNo.が0
の時は塗りつぶしパターンがなし(空白)の場合を示
し、0でない時はハッチパターン等の塗りつぶしパター
ンを示すものとする。
時は輪郭線ありを示すものとする。
文字等の描画の論理、具体的には展開メモリにパターン
を展開する際に、メモリに対してどの論理(上書き・透
過等)に基づいて描画するかを指定するのに用いられ
る。
透過の場合の描画論理値は1というように指定する。
コマンド・多角形描画コマンドの一例を示している。
り、コマンドの識別に用いられる。
ラメータの後に来るデータの個数を示している。
用いられる。
のに用いられる。
ーザー座標系上の座標値である。
コマンドの一例を示している。
り、コマンドの識別に用いられる。
ラメータの後に来るデータの個数を示している。
用いられる。
画の開始基準位置を示すユーザー座標系上の座標であ
る。
C)を示している。
マンド及び各描画属性コマンドの解析を行う関数へのジ
ャンプアドレスが格納されているコマンド解析ジャンプ
テーブル(ROM)である。
マンド解析関数へのジャンプアドレスが格納されてい
る。
ドデータ解析の処理を詳細に示したフローチャートであ
る。
組)からコマンドNo.を取り出してステップS31へ
進む。
ャンプテーブルの先頭にポインタをセットしてステップ
S32に進む。
する分だけポインタを進めてステップS33に進む。
(ジャンプアドレス)を取り出してステップS34に進
む。
す関数を実行して処理を終了する。
において、色指定コマンド解析関数を実行した場合の処
理を詳細に示したフローチャートである。
maxバンドNo.をメモリ展開情報エリア13に設定
してステップS41へ進む。
No.を読み込み、メモリ展開情報格納エリア13にセ
ットしてポインタを進め、ステップS42に進む。
を読み込み、(データ数ー1)を定数nにセットしてス
テップS43に進む。
13にデータ数として4をセットしてポインタを進めて
ステップS44に進む。
メータを読み込み、種別フラグCsmflgにセットし
てステップS45に進む。
ータを読み込み、ステップS46に進む。
gの値を0,1,2のいづれかであるかチェックする。
を終了する。
47に進んでカラーモードかどうかチェックする。
んでカラーモードにおける色変換処理を行い、ステップ
S50に進む。
9に進んでモノクロモードにおける色変換処理を行い、
ステップS50に進む。
データをメモリ展開情報格納エリア13にセットしてポ
インタを進めて処理を終了する。
指定のメモリ展開情報が作成される。
て、カラーモードにおける色変換処理を実行した場合の
処理を詳細に示したフローチャートである。
lgの値を0と比較する。
込んだ色指定データはR,G,Bの輝度データであり、
ステップS701に進んでR,G,Bの輝度データを
Y,M,C,Bkの濃度データに変換して処理を終了す
る。
S702に進む。
lgの値を1と比較する。
ならば、ステップS45で読み込んだ色指定データは、
CIE(国際照明委員会)が1976年に定めた均等知
覚色空間のL*,a*,b*のデータであり、ステップ
S703に進んでCIE L*,a*,b*データをC
IE XYZ(CIEが1931年に定めたXYZ表色
系)データに変換してステップS704に進む。
タをR,G,Bの輝度データに変換してステップS70
5に進む。
ータをY,M,C,Bkの濃度データに変換して処理を
終了する。
lgの値が1と等しくないならば、そのまま処理を終了
する。
了する。
データはY,M,C,Bkの濃度データに変換される。
て、モノクロモードにおける色変換処理を実行した場合
の処理を詳細に示したフローチャートである。
lgの値を0と比較する。
込んだ色指定データはR,G,Bの輝度データであり、
ステップS711に進んでR,G,Bの輝度データをグ
レイスケールの濃度データに変換してステップS716
に進む。
に進んで、種別フラグCsmflgの値を1と比較す
る。
ならば、ステップS45で読み込んだ色指定データは、
CIE(国際照明委員会)が1976年に定めた均等知
覚色空間のL*,a*,b*のデータであり、ステップ
S713に進んでCIE L*,a*,b*データをC
IE XYZ(CIEが1931年に定めたXYZ表色
系)データに変換してステップS714に進む。
タをR,G,Bの輝度データに変換してステップS71
5に進む。
ータをグレイスケールの濃度データに変換してステップ
S716に進む。
度データGrayをYの濃度データにセットし、M,
C,Bkの濃度データに0をセットして処理を終了す
る。
メモリ展開情報の色情報の部分にはグレイスケールの濃
度データ、0、0、0が格納される。
定データはグレイスケールの濃度データに変換される。
て、線幅指定コマンド解析関数を実行した場合の処理を
詳細に示したフローチャートである。
maxバンドNo.をメモリ展開情報エリア13に設定
してステップS61へ進む。
No.を読み込み、メモリ展開情報エリア13にセット
してポインタを進め、ステップS62に進む。
を読み込み、メモリ展開情報エリア13にデータ数とし
てセットしてポインタを進めてステップS63に進む。
ラメータを読み込み、ステップS64に進む。
像処理装置の解像度をもとにピクセル(ドット)値に変
換し、ステップS65に進む。
変数LwidthにセットしてステップS66に進む。
リ展開情報格納エリア13にセットしてポインタを進め
て処理を終了する。
線幅指定のメモリ展開情報が作成される。
て、クリップ領域指定コマンド解析関数を実行した場合
の処理を詳細に示したフローチャートである。
maxバンドNo.をメモリ展開情報エリア13に設定
してステップS71へ進む。
No.を読み込み、メモリ展開情報エリア13にセット
してポインタを進め、ステップS72に進む。
を読み込み、メモリ展開情報エリア13にデータ数とし
てセットしてポインタを進めてステップS73に進む。
領域のx,yの最小値、最大値パラメータを読み込み、
ステップS74に進む。
小値、最大値を画像処理装置の解像度をもとにプリンタ
座標上の値xmin,ymin,xmax,ymaxに
変換し、ステップS75に進む。
in,xmax,ymaxの値をそれぞれcxmin,
cymin,cxamx,cymaxにセットしてステ
ップS76に進む。
in,xmax,ymaxの値をメモリ展開情報エリア
13にセットしてポインタを進めて処理を終了する。
解析されクリップ領域指定のメモリ展開情報が作成され
る。
て、塗りつぶし定義指定コマンド解析関数を実行した場
合の処理を詳細に示したフローチャートである。
maxバンドNo.をメモリ展開情報格納エリア13に
設定してステップS81へ進む。
No.を読み込み、メモリ展開情報格納エリア13にセ
ットしてポインタを進め、ステップS82に進む。
を読み込み、メモリ展開情報格納エリア13にデータ数
としてセットしてポインタを進めてステップS83に進
む。
しパターンNo.を読み込み、メモリ展開情報格納エリ
ア13にセットしてポインタを進め、ステップS84に
進む。
グを読み込み、メモリ展開情報格納エリア13にセット
してポインタを進め、ステップS85に進む。
o.を内部変数FpatにセットしてステップS86に
進む。
部変数Fpermtにセットして処理を終了する。
は解析され塗りつぶし定義指定のメモリ展開情報が作成
される。
て、描画論理指定コマンド解析関数を実行した場合の処
理を詳細に示したフローチャートである。
o.、maxバンドNo.をメモリ展開情報エリア13
に設定してステップS101へ進む。
ドNo.を読み込み、メモリ展開情報エリア13にセッ
トしてポインタを進め、ステップS102に進む。
数を読み込み、メモリ展開情報エリア13にデータ数と
してセットしてポインタを進めてステップS103に進
む。
理値パラメータを読み込み、ステップS104に進む。
展開情報格納エリア13にセットしてポインタを進めて
処理を終了する。
され描画論理指定のメモリ展開情報が作成される。
0,60,70,80,100において、minバンド
No.、maxバンドNo.をメモリ展開情報エリアに
設定する処理を詳細に示したフローチャートである。
0をセットしてしてステップS91へ進む。
メモリ展開情報格納エリア13にセットしてポインタを
進め、ステップS92に進む。
ら現在のバンド数の情報を取り出し、ステップS93に
進む。
をmaxバンドNo.にセットしてステップS94に進
む。
メモリ展開情報格納エリア13にセットしてポインタを
進め、処理を終了する。
は、各バンドの処理ごとにメモリ展開情報が解析される
ようにminバンドNo.に0、maxバンドNo.に
(バンド数ー1)の値が設定されるようになっている。
05で示した色再現処理の一例を示している。
Bの値にLOG変換を施して濃度情報であるC,M,Y
に変換する濃度変換の処理を行う。
の値を取り出す下色除去の処理を行う。
はインクの不要吸収特性に対し、補正を行い適切な色再
現を行うためにマスキングの処理を行う。
トやブライトネスを調整するためにγ変換の処理を行
う。
情報を用いて色再現処理部8において行う。
YZデータとの相互の変換要領が明確になっているもの
とする。
3、713で示した色変換処理の一例を示している。
L*,a*,b*データをCIEXYZデータに変換す
ることが可能である。
の標準光源に従うかによって定まる値である。
4、714で示した色変換処理の一例を示している。
YZデータをR,G,B輝度データに変換することが可
能である。
Eの標準光源に従うかによって定まり、本例はCIEの
標準光源がD65の場合の値である。
15で示した色変換処理の一例を詳細に示したフローチ
ャートである。
0.289659を乗じてその結果をR にセットして
ステップS721へ進む。
0.605936を乗じてその結果をG にセットして
ステップS722へ進む。
0.104665を乗じてその結果をB にセットして
ステップS723へ進む。
結果をgrayにセットしてステップS724へ進む。
同様の濃度変換によりgrayを変換し、Grayにセ
ットして処理を終了する。
において、直線描画コマンド解析関数を実行する際の処
理を示したものである。
ータのセット及びxmin,ymin,xmax,ym
axの設定を行い、ステップS601へ進む。
線及び多角形)を行い、ステップS602へ進む。
チェックを行い、ステップS603へ進む。
チェックで設定された描画範囲フラグをチェックする。
を終了する。
ステップS604に進んでminバンドNo.、max
バンドNo.の算出を行い、ステップS605へ進む。
エリア13にポインタ1をセットしてステップS606
へ進む。
o.、maxバンドNo.をメモリ展開情報格納エリア
13にセットしてポインタ1を進めてステップS607
へ進む。
にポインタ2をセットしてステップS608へ進む。
マンドNo.を取り出し、メモリ展開情報格納エリア1
3にセットしてステップS609へ進む。
タ2を進めてステップS610へ進む。
ータ数を取り出し、メモリ展開情報格納エリア13にセ
ットしてステップS611へ進む。
ステップS612へ進む。
m,ymを取り出し、メモリ展開情報格納エリア13に
セットしてステップS613へ進む。
比較する。
処理を終了する。
14に進んでmに1を加算してステップS615に進
む。
タ2を進めてステップS612に戻る。
直線描画のメモリ展開情報が作成される。
において、多角形描画コマンド解析関数を実行する際の
処理を示したものである。
ータのセット及びxmin,ymin,xmax,ym
axの設定を行い、ステップS121へ進む。
線及び多角形)を行い、ステップS122へ進む。
チェックを行い、ステップS123へ進む。
チェックで設定された描画範囲フラグをチェックする。
を終了する。
ば、ステップS124へ進んでminバンドNo.、m
axバンドNo.の算出を行い、ステップS125へ進
む。
エリア13にポインタ1をセットしてステップS126
へ進む。
o.、maxバンドNo.をメモリ展開情報格納エリア
13にセットしてポインタ1を進めてステップS127
へ進む。
にポインタ2をセットしてステップS128へ進む。
マンドNo.を取り出し、メモリ展開情報格納エリア1
3にセットしてステップS129へ進む。
タ2を進めてステップS130へ進む。
ータ数を取り出し、(データ数+2)をメモリ展開情報
格納エリア13にセットしてステップS131へ進む。
ステップS132へ進む。
m,ymを取り出し、メモリ展開情報格納エリア13に
セットしてステップS133へ進む。
比較する。
34へ進んでmに1を加算してステップS135に進
む。。
タ2を進めてステップS132に戻る。
ステップS136へ進む。
にポインタ2をセットしてステップS137へ進む。
め、x1にセットしてステップS138へ進む。
1,y1を取り出し、メモリ展開情報格納エリア13に
セットして処理を終了する。
れ多角形描画のメモリ展開情報が作成される。
及び図57のステップ120において、ワークエリアへ
のデータのセット及びxmin,ymin,xmax,
ymaxの設定の処理を詳細に示したものである。
にポインタをセットしてステップS151へ進む。
み込み、ワークエリアにセットしてポインタを進め、ス
テップS152へ進む。
み、ワークエリアにセットしてポインタを進め、ステッ
プS153へ進む。
(直線の座標点数)を定数nにセットしてステップS1
54へ進む。
座標を読み込み、ステップS155へ進む。
座標をプリンタ座標に変換してx1,y1にセットし
て、ステップS156へ進む。
maxにセットし、y1をymin,ymaxにセット
して、ステップS157へ進む。
エリアにセットしてポインタを進め、ステップS158
へ進む。
ステップS159へ進む。
比較する。
処理を終了する。
60へ進んでmに1を加算してステップS161に進
む。
座標を読み込み、ステップS162へ進む。
座標をプリンタ座標に変換してxm,ymにセットし
て、ステップS163へ進む。
を比較する。
合には、ステップS165へ進む。
ップS164へ進んでxmの値をxminにセットして
ステップS165に進む。
を比較する。
合には、ステップS167へ進む。
ップS166へ進んでxmの値をxmaxにセットして
ステップS167に進む。
を比較する。
合には、ステップS169へ進む。
ップS168へ進んでymの値をyminにセットして
ステップS169に進む。
を比較する。
合には、ステップS171へ進む。
ップS170へ進んでymの値をymaxにセットして
ステップS171に進む。
エリアにセットしてポインタを進め、ステップS159
に戻る。
ット及びxmin,ymin,xmax,ymaxの設
定を行うことができる。
において、文字描画コマンド解析関数を実行する際の処
理を示したものである。
にポインタをセットしてステップS211へ進む。
み込み、ワークエリアにセットしてポインタを進め、ス
テップS212へ進む。
み、ステップS213へ進む。
y座標を読み込み、ステップS214へ進む。
y座標をプリンタ座標に変換し、xr,yrにセットし
てステップS215へ進む。
ータを読み込み、内部コードに変換してステップS21
6へ進む。
タ数)+2をデータ数としてワークエリアにセットして
ポインタを進め、ステップS217へ進む。
エリアにセットしてポインタを進め、ステップS218
へ進む。
エリアにセットしてステップS219へ進む。
出を行い、ステップS220へ進む。
チェックを行い、ステップS221へ進む。
チェックで設定された描画範囲フラグをチェックする。
を終了する。
ば、ステップS222へ進んでminバンドNo.、m
axバンドNo.の算出を行い、ステップS223へ進
む。
エリア13にポインタ1をセットしてステップS224
へ進む。
o.、maxバンドNo.をメモリ展開情報格納エリア
13にセットしてポインタ1を進めてステップS225
へ進む。
にポインタ2をセットしてステップS226へ進む。
マンドNo.を取り出し、メモリ展開情報格納エリア1
3にセットしてステップS227へ進む。
タ2を進めてステップS228へ進む。
ータ数を取り出し、メモリ展開情報格納エリア13にセ
ットしてステップS229へ進む。
タ2を進めてステップS230へ進む。
r,yrを取り出し、メモリ展開情報格納エリア13に
セットしてステップS231へ進む。
タ2を進めてステップS232へ進む。
部コードを取り出し、メモリ展開情報格納エリア13に
セットして処理を終了する。
文字描画のメモリ展開情報が作成される。
57のステップ121における、描画範囲の算出の処理
を詳細に示したものである。
nに,xmaxをpxmaxにセットして、ステップS
241へ進む。
nに,ymaxをpymaxにセットして、ステップS
242へ進む。
α(0以上の定数)を加えてβにセットして、ステップ
S243へ進む。
xminに、pxmax+βをpxmaxにセットし
て、ステップS244へ進む。
yminに、pymax+βをpymaxにセットし
て、処理を終了する。
囲の算出することができる。
4)の4点で指定された多角形の描画範囲を示したもの
である。
と(pxmax,pymax)で囲まれた矩形領域であ
り、図67の処理においてαの値を0とした場合の算出
結果である。
る、文字の描画範囲の算出の処理を詳細に示したもので
ある。
(図24)から左オフセット値、上オフセット値を取り
出してステップS261へ進む。
1に,上オフセット値をα2にセットして、ステップS
262へ進む。
inに,yr−α2をpyminにセットして、ステッ
プS263へ進む。
らパターン幅、パターン高を取り出してステップS26
4へ進む。
パターン高をβ2にセットして、ステップS265へ進
む。
pxmaxに、pymin+β2をpymaxにセット
して、処理を終了する。
ることができる。
ある。
と(pxmax,pymax)で囲まれた矩形領域であ
る。
2、図57のステップS122及び図64のステップS
220における、描画範囲のクリップチェックの処理を
詳細に示したものである。
inの値を比較する。
合には、ステップS274に進み、描画範囲フラグにE
RRORをセットして処理を終了する。
進む。
axの値を比較する。
合には、ステップS274に進み、描画範囲フラグにE
RRORをセットして処理を終了する。
進む。
inの値を比較する。
合には、ステップS274に進み、描画範囲フラグにE
RRORをセットして処理を終了する。
進む。
axの値を比較する。
合には、ステップS274に進み、描画範囲フラグにE
RRORをセットして処理を終了する。
進む。
inの値を比較する。
合には、ステップS276に進み、cxminの値をp
xminにセットしてステップS277に進む。
進む。
inの値を比較する。
合には、ステップS278に進み、cyminの値をp
yminにセットしてステップS279に進む。
進む。
axの値を比較する。
合には、ステップS280に進み、cxmaxの値をp
xmaxにセットしてステップS281に進む。
進む。
axの値を比較する。
合には、ステップS282に進み、cymaxの値をp
ymaxにセットしてステップS283に進む。
進む。
をセットして処理を終了する。
通範囲を求めることができる。
(pxmax,pymax)で囲まれた矩形領域の描画
範囲に対して(cxmin,cymin)と(cxma
x,cymax)で囲まれた矩形領域のクリップ領域が
設定された場合の例を示したものである。
囲は、(cxmin,cxmin)と(cxmax,c
ymax)で囲まれた矩形領域となる。
58のステップS124及び図65のステップS222
における、minバンドNo.、maxバンドNo.の
算出の処理を詳細に示したものである。
からバンド高(1バンドの高さ)の情報を取り出して、
ステップS381へ進む。
トして、ステップS382へ進む。
ち、pymin,pymaxを取り出して、ステップS
383へ進む。
の商をminバンドNo.にセットして、ステップS3
84へ進む。
の商をmaxバンドNo.にセットして、処理を終了す
る。
ンドNo.、maxバンドNo.の算出をすることがで
きる。
1〜42のフローチャートに基づいて解析して作成され
た、色指定のメモリ展開情報の一例を示している。
リ展開情報を、(b)はモノクロモードにおける色指定
のメモリ展開情報の一例を示している。
指定メモリ展開情報ごとに異なり、それぞれのコマンド
の識別に用いられる。
る。
値は色材(トナー・インク)の原色であるY(Yell
ow),M(Magenta),C(Cyan),Bk
(Black)の濃度データ値であり、色指定コマンド
の色指定データ値の種別が異なっても、解析後のメモリ
展開情報作成時点では、必ずY,M,C,Bkの濃度デ
ータ値に変換されることを示している。
Bk(Black)の濃度データ値であり、色指定コマ
ンドの色指定データ値の種別が異なっても、解析後のメ
モリ展開情報作成時点では、Bkの濃度データ値に変換
され、Yの濃度データ値の格納位置にセットされ、M,
C,Bkの濃度データ値の格納位置には0がセットされ
ることを示している。
リップ領域指定コマンド・塗りつぶし定義指定コマンド
・描画論理指定コマンドをそれぞれ図45、46、4
7、48のフローチャートに基づいて解析して作成され
た、各メモリ展開情報の一例を示している。
モリ展開情報ごとに異なり、それぞれのコマンドの識別
に用いられる。
ラメータの後に来るデータの個数を示している。
角形描画コマンドをそれぞれ図54〜56、57〜59
のフローチャートに基づいて解析して作成された、各メ
モリ展開情報の一例を示している。
モリ展開情報ごとに異なり、それぞれのコマンドの識別
に用いられる。
ラメータの後に来るデータの個数を示している。
ータは始点になるため(始点に戻って閉じるため)、図
に示すようにx1,y1となっている。
図63〜66のフローチャートに基づいて解析して作成
された、各メモリ展開情報の一例を示している。
モリ展開情報ごとに異なり、それぞれのコマンドの識別
に用いられる。
ラメータの後に来るデータの個数を示している。
分割して、その大きさのY,M.C,Bkのバンドメモ
リを用い、図35〜38の描画属性コマンド・描画コマ
ンドの一部を用いて描画を行った場合の例を示してい
る。
塗りつぶしの色はマゼンダ色とする。
るメモリ展開情報を示している。
り、コマンドを受け取った順番と同じである。
描画論理指定値0は描画論理が上書きであることを示し
ている。
ついては、すべてminバンドNo.は0、maxバン
ドNo.は3となり、全バンドで解析されることにな
る。
情報を各描画のメモリ展開情報に付加する必要があるた
め、メモリ展開情報のデータ量が多くなってしまうため
である。
囲が存在する最小バンドNo.がminバンドNo.
に、描画範囲が存在する最大バンドNo.がmaxバン
ドNo.に設定されている。
バンドNo.は0、maxバンドNo.は1である。
分割して、その大きさのY,M.C,Bkのバンドメモ
リを用い、直線描画に対してクリップ領域指定を設定し
て描画を行った場合の例を示している。
0%)とする。
リ展開情報を示している。
り、コマンドを受け取った順番と同じである。
慮しなければ、図67の処理により0バンドから3バン
ドにまたがる範囲となる。
の処理により、1バンドから2バンドにまたがる範囲と
なる。
ては、minバンドNo.は1、maxバンドNo.は
2となる。
ターン展開を行う関数へのジャンプアドレス及び、描画
属性の指定を行う(内部変数等にセット)関数へのジャ
ンプアドレスが格納されているコマンド実行ジャンプテ
ーブル1(ROM)である。
ンプアドレスが格納されている。
て描画のパターン展開を行う関数へのジャンプアドレス
をすべて読み飛ばし関数へのジャンプアドレスに置き換
えたものであり、コマンド実行ジャンプテーブル2(R
OM)とする。
に対応してジャンプアドレスが格納されている。
を詳細に記述したフローチャートである。
ップ範囲(図形・文字等の描画可能な範囲を設定した矩
形領域)を考慮して設定し、ステップS391へ進む。
仮想ページメモリの先頭アドレスの計算・設定を行い、
ステップS392に進む。
inバンドNo.、maxバンドNo.の値を読み込
み、次のデータにポインタを進めてステップS393に
進む。
込んでステップS394へ進む。
≦i(現在のバンドNo.)≦maxバンドNo.の関
係が成立するかどうかチェックする。
で、図90のコマンド実行ジャンプテーブル1の先頭に
ポインタをセットしてステップS397へ進む。
んで、図91のコマンド実行ジャンプテーブル2の先頭
にポインタをセットしてステップS397へ進む。
する分だけテーブルのポインタを進めてステップ398
ヘ進む。
(ジャンプアドレス)を取り出してステップS399へ
進む。
指す関数を実行して処理を終了する。
理を詳細に記述したフローチャートである。
値はプリンタ座標上の値である。
からバンド高情報[1つのバンドの高さ(ドット数また
はスキャンライン数)]を取り出し、ステップS401
へ進む。
×i(現在のバンドNo.)の値を描画可能範囲のyの
最小値minyにセットしてステップS402に進む。
ンド数の値を比較する。
場合には、ステップS403に進んで(上述のバンド
高)×(i+1)−1の値を描画可能範囲のyの最大値
maxyにセットしてステップS405に進む。
進んで用紙の有効印字領域のyの最大値を描画可能範囲
のyの最大値maxyにセットしてステップS405に
進む。
・文字等の描画可能な範囲を設定した矩形領域)の情報
のうち、yの最小値dspymi、yの最大値dspy
mxを取り出してステップS406へ進む。
miを比較する。
は、ステップS407に進んで、minyの値をdsp
ymiにセットしてステップS408に進む。
408に進む。
mxを比較する。
は、ステップS409に進んで、maxyの値をdsp
ymxにセットして処理を終了する。
する。
・文字等の描画可能な範囲は本フローによってセットさ
れたdspymi、dspymxを用いる。
場合のプリンタ座標の設定を示している。
minyの値は0、maxyの値は511、1バンドの
minyの値は512、maxyの値は1023とな
る。
・文字等の描画可能な範囲に対して、dspymi<m
iny、maxy<dspymxとなるクリップ領域が
設定された場合の例を示している。
ンドメモリ展開の際に用いる実際の図形・文字等の描画
可能な範囲は、図の処理に従って本図の斜線部分にな
る。
それぞれクリップ領域のxの最小値、xの最大値を示し
ている。
理を詳細に記述したフローチャートである。
かチェックする。
進んで、バンド情報格納部5からY,M,C,Bk各バ
ンドメモリの先頭アドレスの情報X_bandadr
(X=y,m,c,k)を取り出し、ステップS742
へ進む。
からバンドメモリの容量(バイト)の情報を取り出し、
ステップS743に進む。
(X=y,m,c,k)−(バンドメモリ容量)×i
(現在のバンドNo.)の計算により、Y,M,C,B
kの各仮想ページメモリの先頭アドレスX_topad
r(X=y,m,c,k)を求めて処理を終了する。
場合、ステップS744に進んで、バンド情報格納部5
からBkバンドメモリの先頭アドレスの情報k_ban
dadrを取り出し、ステップS745へ進む。
からバンドメモリの容量(バイト)の情報を取り出し、
ステップS746に進む。
−(バンドメモリ容量)×i(現在のバンドNo.)の
計算により、Bkの各仮想ページメモリの先頭アドレス
を求めてy_topadrにセットして処理を終了す
る。
ンド目(バンドNo.が4)に描画を展開する際のY,
M,C,Bkの各仮想ページメモリの先頭アドレスを示
している。
れる。
バンド目(バンドNo.が4)に描画を展開する際のB
kの各仮想ページメモリの先頭アドレスを示している。
れる。
いて、線幅指定関数を実行する際の処理を示したもので
ある。
開情報から線幅値を読み込んでステップS411へ進
む。
画パターンをメモリ展開する際に用いる線幅情報とし
て、上記の線幅値を変数lwidthに設定して、処理
を終了する。
いて、線色指定関数を実行する際の処理を示したもので
ある。
開情報から線色のY,M,C,Bk値を読み込んでステ
ップS421へ進む。
画パターンをメモリ展開する際に用いる線色情報とし
て、上記のY,M,C,Bk値を変数lymckに設定
して、処理を終了する。
いて、塗りつぶし色指定関数を実行する際の処理を示し
たものである。
メモリ展開情報から塗りつぶし色のY,M,C,Bk値
を読み込んでステップS431へ進む。
画パターンをメモリ展開する際に用いる塗りつぶし色情
報としてY,M,C,Bk値を変数fymckに設定し
て、処理を終了する。
いて、文字色指定関数を実行する際の処理を示したもの
である。
展開情報から文字色のY,M,C,Bk値を読み込んで
ステップS441へ進む。
に文字パターンをメモリ展開する際に用いる文字色情報
として、Y,M,C,Bk値を変数tymckに設定し
て、処理を終了する。
いて、クリップ領域指定関数を実行する際の処理を示し
たものである。
メモリ展開情報からクリップ領域のxmin,ymi
n,xmax,ymaxの値を読み込んでステップS4
51へ進む。
min,xmax,ymaxの値を描画関数関数実行時
に描画パターンをメモリ展開する際に用いるクリップ領
域情報として、それぞれ、変数dspxmi,dspy
mi,dspxmx,dspymxに設定してステップ
S452へ進む。
からバンド番号iに対するバンドの描画範囲のmin
y,maxy(プリンタ座標上)の値を取り出して、ス
テップS453へ進む。
miを比較する。
は、ステップS454に進んでminyの値をdspy
miにセットしてステップS455に進む。
進む。
mxを比較する。
は、ステップS456に進んでmaxyの値をdspy
mxにセットして処理を終了する。
する。
いて、塗りつぶし定義指定関数を実行する際の処理を示
したものである。
のメモリ展開情報から塗りつぶしパターン番号を読み込
んでステップS461へ進む。
画パターンをメモリ展開する際に用いる塗りつぶしパタ
ーン情報として、上記の塗りつぶしパターン番号を変数
fpatに設定して、ステップS462へ進む。
のメモリ展開情報から輪郭線有無のフラグ値を読み込ん
でステップS463へ進む。
画パターンをメモリ展開する際に用いる輪郭線有無の情
報として、上記の輪郭線有無のフラグ値を変数fper
mtに設定して、処理を終了する。
いて、描画論理指定関数を実行する際の処理を示したも
のである。
リ展開情報から描画論理値を読み込んでステップS73
1へ進む。
画パターンをメモリ展開する際に用いる描画論理情報と
して、上記の描画論理値を変数logstylに設定し
て、処理を終了する。
399において、直線描画の関数を実行する際の処理を
示したものである。
開情報からデータ数を読み込んでステップS471へ進
む。
/2(直線の座標点数)を定数nにセットしてステップ
S472へ進む。
の値を取り出してステップS473へ進む。
P_Y、lymckのM値をP_M、lymckのC値
をP_C、lymckのBk値をP_Bkにセットして
ステップS474へ進む。
求めたP_Y,P_M,P_C,P_Bkの値に対応し
たディザパターンをセットして、ステップS475へ進
む。
クセスするためのポインタをpgjmptblにセット
してステップS476へ進む。
してステップS477へ進む。
開情報からプリンタ座標上の点(xm,ym)を読み込
んでステップS478へ進む。
開情報からプリンタ座標上の点(xm+1,ym+1)
を読み込んでステップS479へ進む。
点(xm,ym)、(xm+1,ym+1)の間の直線
のパターンをバンドメモリに展開し、ステップS480
へ進む。
比較する。nが(m+1)より大きい場合には、ステッ
プ481に進んでmを1つインクリメントしてステップ
478に戻る。
定・描画論理指定のメモリ展開情報により直線の描画パ
ターンをバンドメモリに展開することが可能である。
399において、多角形描画の関数を実行する際の処理
を示したものである。
展開情報からデータ数を読み込んでステップS491へ
進む。
/2(多角形の座標点数)を定数nにセットしてステッ
プS492へ進む。
してステップS493へ進む。
展開情報からプリンタ座標上の点(xm,ym)を読み
込んでステップS494へ進む。
値をシステムワーク内の格納エリアにセットしてステッ
プS495へ進む。
る。
96へ進んでmを1つインクリメントしてステップS4
93に戻る。
む。
情報fpatの値を0と比較する。
んで塗りつぶし色情報fymckの値を取り出してステ
ップS499へ進む。
P_Y、fymckのM値をP_M、fymckのC値
をP_C、fymckのBk値をP_Bkにセットして
ステップS500へ進む。
クセスするためのポインタをpgjmptblにセット
してステップS501へ進む。
求めたP_Y,P_M,P_C,P_Bkの値に対応し
たディザパターンをセットして、ステップS502へ進
む。
ステップS496の処理によりシステムワーク内の格納
エリアにセットされた多角形の輪郭点(x1,y1),
・・・,(xn,yn)で囲まれた領域に多角形の内部
塗りつぶしパターンをバンドメモリに展開し、ステップ
S503へ進む。
permtの値を0と比較する。
んで線色情報lymckの値を取り出してステップS5
05へ進む。
P_Y、lymckのM値をP_M、lymckのC値
をP_C、lymckのBk値をP_Bkにセットして
ステップS506へ進む。
求めたP_Y,P_M,P_C,P_Bkの値に対応し
たディザパターンをセットして、ステップS507へ進
む。
クセスするためのポインタをpgjmptblにセット
してステップS508へ進む。
てステップS509へ進む。
格納エリアから多角形の輪郭点の座標Xm,Ymを取り
出してステップS510へ進む。
格納エリアから多角形の輪郭点の座標Xm+1,Ym+
1を取り出してステップS511へ進む。
点(xm,ym)、(xm+1,ym+1)の間の直線
のパターンをバンドメモリに展開し、ステップS512
へ進む。
比較する。nが(m+1)より大きい場合には、ステッ
プS513へ進んでmを1つインクリメントしてステッ
プS510に戻る。
指定・線色指定・塗りつぶし色指定・描画論理指定のメ
モリ展開情報により多角形の描画パターンをバンドメモ
リに展開することが可能である。
399において、文字描画の関数を実行する際の処理を
示したものである。
開情報からデータ数を読み込んでステップS521へ進
む。
開情報から描画位置のx,y座標、xr,yrを読み込
んでステップS522へ進む。
開情報から文字の内部コードを読み込んでステップS5
23へ進む。
ードの値をもとに印字する文字の輪郭点情報(座標点)
を計算してステップS524へ進む。
求めた文字の輪郭点情報(x1,y1),・・・,(x
n,yn)をシステムワークの格納エリアにセットして
ステップS525へ進む。
kの値を取り出してステップS526へ進む。
P_Y、tymckのM値をP_M、tymckのC値
をP_C、tymckのBk値をP_Bkにセットして
ステップS527へ進む。
求めたP_Y,P_M,P_C,P_Bkの値に対応し
たディザパターンをセットして、ステップS528へ進
む。
クセスするためのポインタをpgjmptblにセット
してステップS529へ進む。
納エリア内の文字の輪郭点情報(x1,y1),・・
・,(xn,yn)をもとに文字パターンをバンドメモ
リに展開し、処理を終了する。
論理指定のメモリ展開情報により文字パターンをバンド
メモリに展開することが可能である。
おいて、読み飛ばしの関数を実行する際の処理を示した
ものである。
データ数を読み込んで、ステップS541に進む。
ットして、ステップS542へ進む。
てステップS543へ進む。
の次のデータにポインタをセットして、ステップS54
4へ進む。
タを読み込んで、ステップS545へ進む。
リメントしてステップS546へ進む。
タに進めて、ステップS547へ進む。
を比較して、等しくないならば、ステップS544へ戻
る。
飛ばすことが可能である。
部20の中にあるディザパターンアドレステーブル21
の一例を示したものである。
M,C,Bkの濃度値に対応したディザパターンが格納
されている領域の先頭アドレスが格納されている。
を0〜255としている。
M,C,Bkそれぞれに対応した4つのテーブルが存在
しており、これはY,M,C,Bkの濃度値が同じ値で
も用いられるディザパターンが異なる場合があることを
示している。
部20に格納されているディザパターンの一例を示した
ものである。
ット×32ドットであることを示しており、メモリ容量
は128バイトである。
(ドットのある部分が20%)の場合のディザパターン
の一例を示している。
S474、図103のステップS500、図104のス
テップS506、図107のステップS527の処理を
示したフローチャートである。
かチェックする。
01に進んで図109のMのディザパターンのアドレス
テーブルの先頭にポインタをセットしてステップS80
2に進む。
インタを進めてステップS803に進む。
をYdtopadにセットして処理を終了する。
ば、ステップS804に進んで図109のYのディザパ
ターンのアドレステーブルの先頭にポインタをセットし
てステップS805に進む。
インタを進めてステップS806に進む。
をYdtopadにセットしてステップS807に進
む。
ザパターンのアドレステーブルの先頭にポインタをセッ
トしてステップS808に進む。
インタを進めてステップS809に進む。
をMdtopadにセットしてステップS810に進
む。
ザパターンのアドレステーブルの先頭にポインタをセッ
トしてステップS811に進む。
インタを進めてステップS812に進む。
をCdtopadにセットしてステップS813に進
む。
ィザパターンのアドレステーブルの先頭にポインタをセ
ットしてステップS814に進む。
ポインタを進めてステップS815に進む。
をKdtopadにセットして処理を終了する。
対応して塗りつぶしに用いるディザパターンが格納され
ている領域の先頭アドレスを求めて変数にセットしてお
くことが可能である。
るディザパターンはMのディザパターンを用いており、
格納されている領域の先頭アドレスはYのディザパター
ンの格納変数Ydtopadにセットされている。
ル格納部22内の塗りつぶし関数アドレス格納テーブル
23のうち、描画論理が上書きに対応したテーブルの一
例を示している。
に展開メモリへの塗りつぶし関数へのジャンプアドレス
が格納されている。
ンのメモリに対する塗りつぶし処理を行うものである。
塗りつぶし関数へのジャンプアドレスを示しており、そ
れぞれY,M,C,Bkのバンドメモリへの展開用のジ
ャンプアドレスである。
塗りつぶし関数へのジャンプアドレスを示しており、そ
れぞれY,M,C,Bkのバンドメモリへの展開用のジ
ャンプアドレスである。
上書き塗りつぶし関数へのジャンプアドレスを示してい
る。
スを示している。
である。
濃度値のうち、Y,Cが0でなく、M,Bkが0の場
合、M,Bkの塗りつぶしは塗りつぶす部分をクリアす
る必要がある。
がORされて用紙に印刷されるためである。
ル格納部22内の塗りつぶし関数アドレス格納テーブル
23のうち、描画論理が透過に対応したテーブルの一例
を示している。
に展開メモリへの塗りつぶし関数へのジャンプアドレス
が格納されている。
ンのメモリに対する塗りつぶし処理を行うものである。
ス塗りつぶし関数へのジャンプアドレスを示しており、
それぞれY,M,C,Bkのバンドメモリへの展開用の
ジャンプアドレスである。
りつぶし関数へのジャンプアドレスを示しており、それ
ぞれY,M,C,Bkのバンドメモリへの展開用のジャ
ンプアドレスである。
透過塗りつぶし関数へのジャンプアドレスを示してい
る。
スを示している。
である。
度値のうちY,Cが0でなく、M,Bkが0の場合、
M,Bkの塗りつぶしは塗りつぶすパターンの反転パタ
ーンでメモリにAND処理をする必要がある。
がOR処理されて用紙に印刷されるためである。
ル格納部22内の描画論理別テーブルアドレス格納テー
ブル24の一例を示している。
対応した塗りつぶし関数アドレス格納テーブル23の先
頭アドレスが格納されている。
の値に対応してアドレスが格納されている。
論理が上書きであり、テーブルの先頭のポインタの指す
内容は図113の先頭アドレスになっている。
論理が透過であり、テーブルの先頭のポインタの指す内
容は図114の先頭アドレスになっている。
対応してアドレスが格納することができる。
5、図103のステップS501、図104のステップ
S507、図107のステップS528の処理に用いら
れるbitsetフラグの一例を示したものである。
で構成され、0,1,2,3ビットにそれぞれBk,
C,M,Yの濃度値が0か0でないかの情報がセットさ
れることを示している。
ットはOFFになり、0でないならば、該当するビット
はONになる。
Y,Cが0でなく、M,Bkが0の場合、フラグの値
は、10になる。
ロモード時にONになる。
の他のビットは0となり、フラグの値は16になる。
S475、図103のステップS501、図104のス
テップS507、図107のステップS528の処理を
示したフローチャートである。
の内容をクリアしてステップS821に進む。
かチェックする。
22に進んでbitsetフラグに0x1000をセッ
ト、すなわち4ビット目のビットのみをONにしてステ
ップS831に進む。
ば、ステップS823に進んでP_Yの値と0を比較す
る。
で、bitsetフラグのYビット(ビット3)をON
にしてステップS825に進む。
較する。
で、bitsetフラグのMビット(ビット2)をON
にしてステップS827に進む。
較する。
で、bitsetフラグのCビット(ビット1)をON
にしてステップS829に進む。
比較する。
で、bitsetフラグのBkビット(ビット0)をO
NにしてステップS831に進む。
アドレス格納テーブル24の先頭にポインタをセットし
てステップS832に進む。
stylを取り出してステップS833に進む。
の分だけポインタを進めてステップS834に進む。
(塗りつぶし関数アドレス格納テーブル23の先頭アド
レス)をtabletopにセットしてステップS83
5に進む。
ポインタをセットしてステップS836に進む。
の値を取り出してステップS837に進む。
けポインタを進めてステップS838に進む。
レスをpgjmptblにセットして処理を終了する。
itsetフラグの値により、Y,M,C,Bkの濃度
値(0か0でないか)に対応して、図113,114等
の描画論理に対応した塗りつぶし関数アドレス格納テー
ブル23内の塗りつぶし関数へのジャンプアドレスにア
クセスすることができる。
へのジャンプアドレスにアクセスすることもできる。
m,ym)、(xm+1,ym+1)を結ぶ直線の一例
を示している。
画は、4点(x1,y1)、(x2,y2)、(x3,
y3)、(x4,y4)で囲まれた領域の塗りつぶしと
みなすことができる。 また、角度θは、水平右方向か
らの直線の傾きを示している。
図101のステップS479、図105のステップS5
11の処理のフローチャートを示している。
hを取り出してステップS851に進む。
割り算した結果をαにセットしてステップS852に進
む。
m)2、+(ym+1−ym)2}の平方根をlにセッ
トしてステップS853に進む。
/lの結果をcosθにセット、(ym+1−ym)/
lの結果をsinθにセットしてステップS854に進
む。
θの結果をx1にセット、ym+1−αcosθの結果
をy1にセットしてステップS855に進む。
θの結果をx2にセット、ym+1+αcosθの結果
をy2にセットしてステップS856に進む。
結果をx3にセット、ym+αcosθの結果をy3に
セットしてステップS857に進む。
結果をx4にセット、ym+αcosθの結果をy4に
セットしてステップS858に進む。
(x2,y2)、(x3,y3)、(x4,y4)の順
にシステムワークの格納エリアにセットしてステップS
859に進む。
S858の座標点の数)をセットしてステップS860
に進む。
システムワークの格納エリアにセットされたy座標の最
小値・最大値を検出し、それぞれypmin,ypma
xにセットしてステップS861に進む。
の値をセットしてステップS862に進む。
る1スキャンラインの塗りつぶしを行い、ステップS8
63に進む。
を比較する。
んでβの値を1インクリメントしてステップS862に
戻る。
m,ym)、(xm+1,ym+1)を結ぶ直線をバン
ドメモリに展開することができる。
1,y1)〜(x5,y5)からなる多角形を示してい
る。
点(x1,y1)〜(x5,y5)で囲まれた領域の塗
りつぶしとなる。
1,y1)〜(x12,y12)で構成される文字Eを
示している。
点(x1,y1)〜(x12,y12)で囲まれた領域
の塗りつぶしとなる。
うな多角形内部や文字内部の塗りつぶしにおいて、図1
03のステップS502、図107のステップS529
の処理のフローチャートを示している。
数)をセットしてステップS871に進む。
S494、図106のステップS524でシステムワー
クの格納エリアにセットされたy座標の最小値・最大値
を検出し、それぞれypmin,ypmaxにセットし
てステップS872に進む。
の値をセットしてステップS873に進む。
る1スキャンラインの塗りつぶしを行い、ステップS8
74に進む。
を比較する。
んでβの値を1インクリメントしてステップS873に
戻る。
点(x1,y1)〜(xn,yn)で囲まれた領域の塗
りつぶしををバンドメモリに展開することができる。
S860、図126のステップS871の処理のフロー
チャートを示している。
点の格納エリアの先頭にポインタをセットしてステップ
S881に進む。
y座標をy1にセットしてステップS882に進む。
n,ypmaxにセットしてステップS883に進む。
てステップS884に進む。
る。
んでポインタを1つ進めてステップS886に進む。
メントしてステップS887に進む。
y座標をyiにセットしてステップS888に進む。
を比較する。
ップS889に進んでyiをypmaxにセットしてス
テップS890に進む。
む。
を比較する。
ップS891に進んでyiをypminにセットしてス
テップS884に戻る。
る。
にセットされたy座標の最小値・最大値を検出し、それ
ぞれypmin,ypmaxにセットすることができ
る。
S862、図126のステップS873の処理のフロー
チャートを示している。
スキャンライン上のxの範囲を計算してステップS90
1に進む。
計算した塗りつぶしを開始するプリンタ座標上のxをl
eftx、塗りつぶしを終了するプリンタ座標上のxを
rightxにセットしてステップS902に進む。
あるdspxmiとrightxの値を比較する。
ならば、塗りつぶし範囲はクリップ領域の範囲外なので
処理を終了する。
んでクリップ領域の情報であるdspxmxとleft
xの値を比較する。
らば、塗りつぶし範囲はクリップ領域の範囲外なので処
理を終了する。
んでクリップ領域の情報であるdspxmiとleft
xの値を比較する。
らば、ステップS905に進んでdspxmiの値をl
eftxにセットしてステップS906に進む。
む。
あるdspxmxとrightxの値を比較する。
ならば、ステップS907に進んでdspxmxの値を
rightxにセットしてステップS908に進む。
む。
(0,0)をページメモリの0番地アドレスと仮定して
ステップS909に進む。
仮定をもとに、leftx,rightxのページメモ
リ上のアドレスとビットを計算してしてステップS91
0に進む。
基づくものとする。
され、ビットは0〜31の値を持つことにする。
ディザパターンの幅が4バイトであり、パターンの基準
位置(パターンをメモリ上に展開する開始位置)がプリ
ンタ座標の原点(0,0)になっているからである。
計算したleftxのアドレスとビットをそれぞれlx
ad,lxbit、rightxのアドレスとビットを
それぞれrxad,rxbitにセットしてステップS
911に進む。
で割り算してその余りをδ1にセットしてステップS9
12に進む。
パターンの高さが32スキャンライン(ドット)であ
り、y座標の値βの時に用いられるディザパターンが一
番上のスキャンラインからδ1番目にあたっていること
を示している。
結果をδ2にセットしてステップS913に進む。
ドレスからy座標の値βの時に用いられるディザパター
ンが格納されているアドレスへの移動量(バイト数)を
示している。
かチェックする。
14に進んで、既にディザパターンの先頭アドレスが格
納されているYdtopadにδ2を加算してydad
にセッしてステップS915に進む。
に用いられるディザパターンの格納アドレスがセットさ
れている。
ポインタをセットしてステップS916に進む。
(塗りつぶし関数のジャンプアドレス)を取り出してス
テップS917に進む。
113の※,図114の◎である。
指す関数を実行して処理を終了する。
ならば、ステップS918に進んで、既にディザパター
ンの先頭アドレスが格納されているYdtopad,M
dtopad,Cdtopad,Kdtopadにδ2
を加算してそれぞれydad,mdad,cdad,k
dadにセットしてステップS919に進む。
kdadには、y座標の値βの時に用いられるY,M,
C,Bk各ディザパターンの格納アドレスがセットされ
ている。
ポインタをセットしてステップS920に進む。
てステップS921に進む。
(塗りつぶし関数のジャンプアドレス)を取り出してス
テップS922に進む。
指す関数を実行してステップS923に進む。
分インクリメントしてステップS924に進む。
る。
んでsを1インクリメントしてステップS921に戻
る。
値に対応したディザパターンの格納アドレスから塗りつ
ぶしに用いるディザパターンを取り出し、図24のメモ
リ展開用テーブル格納部22内の塗りつぶし関数アドレ
ス格納テーブルにアクセスしてy座標の値βに対応した
スキャンラインの塗りつぶしを行うことができる。
123の処理で描画する場合のleftx,right
xの配置及びypmin,ypmaxの位置を示してい
る。
126の処理で塗りつぶす場合のleftx,righ
txの配置及びypmin,ypmaxの位置を示して
いる。
26の処理で塗りつぶす場合のleftx,right
xの配置及びypmin,ypmaxの位置を示してい
る。
S922の処理のうち、図113の塗りつぶし関数アド
レス格納テーブル23内の○の指すクリア塗りつぶし関
数を実行する処理のフローチャートを示している。
求めたYの仮想ページメモリアドレスy_topadr
を取り出し、y_topadr+lxadの結果をlx
adに、y_topadr+rxadの結果をrxad
にセットしてステップS931に進む。
際にパターンを展開するメモリのアドレスである。
を比較する。
32に進んでlxadのアドレスのlxbitとrxb
it間のビットをクリアして処理を終了する。
進んでlxadのアドレスのlxbitとlxad+4
(バイト)の間のビットをクリアしてステップS934
に進む。
ト)の結果をlxadにセットステップS935に進
む。
を比較する。
32に進んでlxadのアドレスのlxbitとrxb
it間のビットをクリアして処理を終了する。
進んでlxadとlxad+4(バイト)の間のビット
をクリアしてステップS937に進む。
ト)の結果をlxadにセットしてステップS935に
戻る。
ドレス格納テーブル23内の○の指すクリア塗りつぶし
関数を実行することができる。
することにより、□,△,◇の指すクリア塗りつぶし関
数を実行することができる。
S922の処理のうち、図113の塗りつぶし関数アド
レス格納テーブル23内の○の指す上書き塗りつぶし関
数を実行する処理のフローチャートを示している。
求めたYの仮想ページメモリアドレスy_topadr
を取り出し、y_topadr+lxadの結果をlx
adに、y_topadr+rxadの結果をrxad
にセットしてステップS941に進む。
際にパターンを展開するメモリのアドレスである。
の内容(4バイト)を取り出し、展開するディザパター
ンとしてydtpatnにセットしてステップS942
に進む。
を比較する。
50に進んでlxadのアドレスのlxbitとrxb
it間のビットをクリアしてステップS951に進む。
のlxbitとrxbit間のメモリにydtpatn
のパターンをOR処理して処理を終了する。
ステップS943に進んでlxadのアドレスのlxb
itとlxad+4(バイト)の間のビットをクリアし
てステップS944に進む。
のlxbitとlxad+4(バイト)の間のメモリに
ydtpatnのパターンをOR処理してステップS9
45に進む。
ト)の結果をlxadにセットステップS946に進
む。
を比較する。
50に進んでlxadのアドレスのlxbitとrxb
it間のビットをクリアしてステップS951に進む。
のlxbitとrxbit間のメモリにydtpatn
のパターンをOR処理して処理を終了する。
進んでlxadとlxad+4(バイト)の間のビット
をクリアしてステップS948に進む。
のlxbitとlxad+4(バイト)の間のメモリに
ydtpatnのパターンをOR処理してステップS9
49に進む。
ト)の結果をlxadにセットしてステップS946に
戻る。
ドレス格納テーブル23内の○の指す上書き塗りつぶし
関数を実行することができる。
S917の処理のうち、図113の塗りつぶし関数アド
レス格納テーブル23内の*の指す上書き塗りつぶし関
数を実行することができる。
することにより、□,◇の指す上書き塗りつぶし関数を
実行することができる図140〜141は、図132の
ステップS922の処理のうち、図114の塗りつぶし
関数アドレス格納テーブル23内の の指すリバース塗
りつぶし関数を実行する処理のフローチャートを示して
いる。
求めたYの仮想ページメモリアドレスy_topadr
を取り出し、y_topadr+lxadの結果をlx
adに、y_topadr+rxadの結果をrxad
にセットしてステップS961に進む。
際にパターンを展開するメモリのアドレスである。
の内容(4バイト)を取り出し、展開するディザパター
ンとしてydtpatnにセットしてステップS962
に進む。
ットを反転したパターンをyrpatnにセットしてス
テップS963に進む。
を比較する。
69に進んでlxadのアドレスのlxbitとrxb
it間のメモリにyrpatnのパターンをAND処理
して処理を終了する。
ステップS964に進んでlxadのアドレスのlxb
itとlxad+4(バイト)の間のメモリにyrpa
tnのパターンをAND処理してステップS965に進
む。
ト)の結果をlxadにセットステップS966に進
む。
を比較する。
69に進んでlxadのアドレスのlxbitとrxb
it間のメモリにyrpatnのパターンをAND処理
して処理を終了する。
進んでlxadのアドレスのlxbitとlxad+4
(バイト)の間のメモリにyrpatnのパターンをA
ND処理してステップS968に進む。
ト)の結果をlxadにセットしてステップS966に
戻る。
ドレス格納テーブル23内のWの指すリバース塗りつぶ
し関数を実行することができる。
することにより、V,X,Zの指すリバース塗りつぶし
関数を実行することができる図142〜143は、図1
32のステップS922の処理のうち、図114の塗り
つぶし関数アドレス格納テーブル23内のWの指す透過
塗りつぶし関数を実行する処理のフローチャートを示し
ている。
求めたYの仮想ページメモリアドレスy_topadr
を取り出し、y_topadr+lxadの結果をlx
adに、y_topadr+rxadの結果をrxad
にセットしてステップS971に進む。
際にパターンを展開するメモリのアドレスである。
の内容(4バイト)を取り出し、展開するディザパター
ンとしてydtpatnにセットしてステップS972
に進む。
ットを反転したパターンをyrpatnにセットしてス
テップS973に進む。
を比較する。
81に進んでlxadのアドレスのlxbitとrxb
it間のメモリにyrpatnのパターンをAND処理
してステップS982に進む。
のlxbitとrxbit間のメモリにydtpatn
のパターンをOR処理して処理を終了する。
ステップS974に進んでlxadのアドレスのlxb
itとlxad+4(バイト)の間のメモリにyrpa
tnのパターンをAND処理してステップS975に進
む。
のlxbitとlxad+4(バイト)の間のメモリに
ydtpatnのパターンをOR処理してステップS9
76に進む。
ト)の結果をlxadにセットステップS977に進
む。
を比較する。
81に進んでlxadのアドレスのlxbitとrxb
it間のメモリにyrpatnのパターンをAND処理
してステップS982に進む。
のlxbitとrxbit間のメモリにydtpatn
のパターンをOR処理して処理を終了する。
進んでlxadとlxad+4(バイト)の間のメモリ
にyrpatnのパターンをAND処理してステップS
979に進む。
のlxbitとlxad+4(バイト)の間のメモリに
ydtpatnのパターンをOR処理してステップS9
80に進む。
ト)の結果をlxadにセットしてステップS977に
戻る。
ドレス格納テーブル23内のWの指す透過塗りつぶし関
数を実行することができる。
S917の処理のうち、図114の塗りつぶし関数アド
レス格納テーブル23内の◎の指す透過塗りつぶし関数
を実行することができる。
することにより、V,X,Zの指す透過塗りつぶし関数
を実行することができる図144は、図136〜143
に処理を示した塗りつぶし関数を用いた塗りつぶし結果
の具体例を示している。
トのパターンであり、黒の部分はビットがON、白の部
分はビットがOFFの状態を示している。
xbitとrxadアドレスのrxbitの間をydt
patnのパターンを用いて塗りつぶした結果を示して
いる。
はすべてビットがOFFとなる。
リの内容はクリアされ、ydtpatnのパターンが展
開される。
モリの内容に対してyrpatnのパターンがAND処
理された結果となっている。
の内容に対してyrpatnのパターンがAND処理さ
れ、ydtpatnのパターンがORされた結果となっ
ている。
Bkの場合の処理を示しているが、他の場合、例えば
R,G,Bの場合にも適用可能である。
関数アドレス格納テーブルは図145のように置き換え
られる。
メモリへの塗りつぶし関数へのジャンプアドレスが格納
されている。
ンのメモリに対する塗りつぶし処理を行うものである。
つぶし関数へのジャンプアドレスを示しており、それぞ
れR,G,Bのバンドメモリへの展開用のジャンプアド
レスである。
ぶし関数へのジャンプアドレスを示しており、それぞれ
R,G,Bのバンドメモリへの展開用のジャンプアドレ
スである。
上書き塗りつぶし関数へのジャンプアドレスを示してい
る。
スを示している。
である。
tフラグは図146のように置き換えられる。
は8ビットで構成され、0,1,2ビットにそれぞれ
B,G,Rの濃度値あるいは輝度値が0か0でないかの
情報がセットされることを示している。
ば、該当するビットはOFFになり、0でないならば、
該当するビットはONになる。
値のうちRが0でなく、G,Bが0の場合、フラグの値
は、4になる。
ロモード時にONになる。
の他のビットは0となり、フラグの値は8になる。
座標の1スキャンラインに対して塗りつぶしの部分が2
箇所ある例をしめしている。
所の塗りつぶしのxの範囲をleftx1〜right
x1、leftx2〜rightx2として把握して既
に説明した処理を適用して対処することが可能である。
ある場合も同様である。
S914〜917の処理は省略可能である。
一番最後にはダミー処理関数へのジャンプアドレスが格
納されているからである。
を意識せずに1スキャンラインの塗りつぶし処理を行う
ことができる。
を展開する関数のアドレスが格納されているテーブルを
指定可能な論理描画に応じて複数有し、それに基づいて
図形・文字等の描画を行うことができるため、従来に比
べて制御に必要なプログラム量あるいはハードウェアの
規模を軽減することが可能である。
域の大きさの分のメモリを持つ場合のカラー画像処理装
置内部のRAM領域のメモリマップの一例
マンドの一例
例
ぶし色指定のメモリ展開情報の一例
のメモリ展開情報の一例
形描画コマンドの一例
換の一例
一例
のYellow100%)で描画する場合のメモリ展開
情報の一例
ール(色材のBlack20%)で描画する場合のメモ
リ展開情報の一例
単位で区切った図
例を示したフローチャート
ローチャート
ローチャート
ローチャート
ローチャート
ローチャート
ローチャート
ローチャート
ローチャート
構成を示すブロック図
部回りを詳細に示した図
た図
ャンラインの8つのバンドに分割した場合の一例
の一例
プの一例
情報を格納する属性情報格納領域の一例
取り、ページ単位ごとに記録制御を行うカラー画像処理
装置において、Y(Yellow),M(Magent
a),C(Cyan),Bk(Black)それぞれ1
バンド分のメモリのみによりカラー記録する際のフロー
チャート
取り、ページ単位ごとに記録制御を行うカラー画像処理
装置において、Y(Yellow),M(Magent
a),C(Cyan),Bk(Black)それぞれ1
バンド分のメモリのみによりカラー記録する際のフロー
チャート
取り、ページ単位ごとに記録制御を行うカラー画像処理
装置において、Y(Yellow),M(Magent
a),C(Cyan),Bk(Black)それぞれ1
バンド分のメモリのみによりカラー記録する際のフロー
チャート
ドの一例
ンド・クリップ領域指定コマンド・塗りつぶし定義指定
コマンド・描画論理指定コマンドの一例
角形描画コマンドの一例
例
描画属性コマンドの解析を行う関数へのジャンプアドレ
スが格納されているコマンド解析ジャンプテーブル
の処理を詳細に示したフローチャート
マンド解析関数を実行した場合の処理を詳細に示したフ
ローチャート
マンド解析関数を実行した場合の処理を詳細に示したフ
ローチャート
マンド解析関数を実行した場合の処理を詳細に示したフ
ローチャート
マンド解析関数を実行した場合の処理を詳細に示したフ
ローチャート
コマンド解析関数を実行した場合の処理を詳細に示した
フローチャート
領域指定コマンド解析関数を実行した場合の処理を詳細
に示したフローチャート
し定義指定コマンド解析関数を実行した場合の処理を詳
細に示したフローチャート
指定コマンド解析関数を実行した場合の処理を詳細に示
したフローチャート
S40、60、70、80、100において、minバ
ンドNo.、maxバンドNo.をメモリ展開情報エリ
アに設定する処理を詳細に示したフローチャート
色再現処理の一例
プS713で示した色変換処理の一例
プS714で示した色変換処理の一例
5で示した色変換処理の一例
コマンド解析関数を実行する際の処理
コマンド解析関数を実行する際の処理
コマンド解析関数を実行する際の処理
画コマンド解析関数を実行する際の処理
画コマンド解析関数を実行する際の処理
画コマンド解析関数を実行する際の処理
プ120において、ワークエリアへのデータのセット及
びxmin,ymin,xmax,ymaxの設定の処
理
プ120において、ワークエリアへのデータのセット及
びxmin,ymin,xmax,ymaxの設定の処
理
プ120において、ワークエリアへのデータのセット及
びxmin,ymin,xmax,ymaxの設定の処
理
コマンド解析関数を実行する際の処理
コマンド解析関数を実行する際の処理
コマンド解析関数を実行する際の処理
コマンド解析関数を実行する際の処理
プ121における、描画範囲の算出の処理
定された多角形の描画範囲
画範囲の算出の処理
プS122、図64のステップS220における、描画
範囲のクリップチェックの処理
プS122、図64のステップS220における、描画
範囲のクリップチェックの処理
x,pymax)で囲まれた矩形領域の描画範囲に対し
て(cxmin,cymin)と(cxmax,cym
ax)で囲まれた矩形領域のクリップ領域が設定された
場合の例
プS124、図65のステップS222における、mi
nバンドNo.、maxバンドNo.の算出の処理
ローチャートに基づいて解析して作成された、色指定の
メモリ展開情報の一例
定コマンド・塗りつぶし定義指定コマンド・描画論理指
定コマンドをそれぞれ図45〜48のフローチャートに
基づいて解析して作成された、各メモリ展開情報の一例
ンドをそれぞれ図54〜56、57〜59のフローチャ
ートに基づいて解析して作成された、各メモリ展開情報
の一例
フローチャートに基づいて解析して作成された、各メモ
リ展開情報の一例
の大きさのY,M.C,Bkのバンドメモリを用い、図
27〜30描画属性コマンド・描画コマンドの一部を用
いて描画を行った場合の例
の大きさのY,M.C,Bkのバンドメモリを用い、直
線描画に対してクリップ領域指定を設定して描画を行っ
た場合の例
行う関数へのジャンプアドレス及び、描画属性の指定を
行う(内部変数等にセット)関数へのジャンプアドレス
が格納されているコマンド実行ジャンプテーブル1
ーン展開を行う関数へのジャンプアドレスをすべて読み
飛ばし関数へのジャンプアドレスに置き換えたコマンド
実行ジャンプテーブル2
したフローチャート
述したフローチャート
タ座標の設定
画可能な範囲に対して、dspymi<miny、ma
xy<dspymxとなるクリップ領域が設定された場
合の例
述したフローチャート
描画を展開する際のカラーモード時のY,M,C,Bk
の各仮想ページメモリの先頭アドレス
描画を展開する際のモノクロモード時のBkの仮想ペー
ジメモリの先頭アドレス
定関数を実行する際の処理
定関数を実行する際の処理
ぶし色指定関数を実行する際の処理
指定関数を実行する際の処理
プ領域指定関数を実行する際の処理
ぶし定義指定関数を実行する際の処理
理指定関数を実行する際の処理
描画の関数を実行する際の処理
描画の関数を実行する際の処理
形描画の関数を実行する際の処理
形描画の関数を実行する際の処理
形描画の関数を実行する際の処理
形描画の関数を実行する際の処理
描画の関数を実行する際の処理
描画の関数を実行する際の処理
飛ばしの関数を実行する際の処理
例
ステップS500、図104のステップS506、図1
07のステップS527の処理を示したフローチャート
ステップS500、図104のステップS506、図1
07のステップS527の処理を示したフローチャート
し関数アドレス格納テーブルの一例
関数アドレス格納テーブルの一例
24の一例
ステップS501、図104のステップS507、図1
07のステップS528の処理を示したフローチャート
ステップS501、図104のステップS507、図1
07のステップS528の処理を示したフローチャート
ステップS501、図104のステップS507、図1
07のステップS528の処理を示したフローチャート
ステップS511の処理を示したフローチャート
ステップS511の処理を示したフローチャート
ステップS511の処理を示したフローチャート
例
文字Eの一例
ステップS529の処理を示したフローチャート
ステップS871の処理を示したフローチャート
ステップS871の処理を示したフローチャート
ステップS873の処理を示したフローチャート
ステップS873の処理を示したフローチャート
ステップS873の処理を示したフローチャート
ステップS873の処理を示したフローチャート
を示した図
に必要な情報を示した図
必要な情報を示した図
ち、クリア塗りつぶしの処理の一例を示したフローチャ
ート
ち、クリア塗りつぶしの処理の一例を示したフローチャ
ート
ち、上書き塗りつぶしの処理の一例を示したフローチャ
ート
ち、上書き塗りつぶしの処理の一例を示したフローチャ
ート
ち、リバース塗りつぶしの処理の一例を示したフローチ
ャート
ち、リバース塗りつぶしの処理の一例を示したフローチ
ャート
ち、透過塗りつぶしの処理の一例を示したフローチャー
ト
ち、透過塗りつぶしの処理の一例を示したフローチャー
ト
の具体例を示した図
ぶしの部分が2箇所ある多角形を示した図
Claims (3)
- 【請求項1】 ページ記述言語で記述されている印刷デ
ータを受信し、該印刷データをバンド単位に展開し、バ
ンド単位でデータの読み出しと書き込みを制御する画像
処理装置であって、 バンドメモリに対して印刷データを展開する関数のアド
レスが格納されているテーブルを有し、 前記テーブルは指定可能な論理描画に応じて複数有する
ことを特徴とすることを特徴とする画像処理装置。 - 【請求項2】 指定された論理描画に応じて、前記該当
するテーブルにアクセスして前記関数を実行し、図形・
文字の描画を制御する制御手段を有することを特徴とす
る請求項1に記載の画像処理装置。 - 【請求項3】 ページ記述言語で記述されている印刷デ
ータを受信し、該印刷データをバンド単位に展開し、バ
ンド単位でデータの読み出しと書き込みを制御し、バン
ドメモリに対して印刷データを展開する関数のアドレス
が格納されているテーブルを、指定可能な論理描画に応
じて複数有する前記画像処理装置における画像処理方法
において、 指定された論理描画に応じて、前記該当するテーブルに
アクセスして前記関数を実行し、図形・文字の描画を制
御することを特徴とする画像処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20554392A JP3219477B2 (ja) | 1992-07-31 | 1992-07-31 | 画像処理方法及び装置 |
DE69326660T DE69326660T2 (de) | 1992-07-31 | 1993-07-27 | Bildverarbeitungsverfahren und -gerät |
EP93305911A EP0586080B1 (en) | 1992-07-31 | 1993-07-27 | Image processing method and apparatus |
US08/788,574 US6331897B1 (en) | 1992-07-31 | 1997-01-24 | Image processing method and apparatus in which a table stores by a scan line unit memory addresses at each of which a function is stored for developing an image for one line into a memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20554392A JP3219477B2 (ja) | 1992-07-31 | 1992-07-31 | 画像処理方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0652326A JPH0652326A (ja) | 1994-02-25 |
JP3219477B2 true JP3219477B2 (ja) | 2001-10-15 |
Family
ID=16508640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20554392A Expired - Fee Related JP3219477B2 (ja) | 1992-07-31 | 1992-07-31 | 画像処理方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3219477B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2710630B2 (ja) * | 1988-06-30 | 1998-02-10 | 三菱化学株式会社 | 偏光フィルムおよびその製造方法 |
-
1992
- 1992-07-31 JP JP20554392A patent/JP3219477B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0652326A (ja) | 1994-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6729766B2 (ja) | 印刷データ処理装置及びプログラム | |
JP2012236344A (ja) | 印刷装置、印刷装置のデータ処理方法及びプログラム | |
JP3219477B2 (ja) | 画像処理方法及び装置 | |
JP3219475B2 (ja) | 画像処理方法及び装置 | |
JP3219476B2 (ja) | 画像処理方法及び装置 | |
EP0586080B1 (en) | Image processing method and apparatus | |
EP0530954B1 (en) | Image processing method and apparatus | |
EP0530955B1 (en) | Image processing method and apparatus | |
JPH0516440A (ja) | 画像処理装置 | |
JP3244775B2 (ja) | 画像処理方法及び装置 | |
JP2001075759A (ja) | 情報処理装置および情報処理方法 | |
JP2925363B2 (ja) | 画像処理方法及び装置 | |
JP4086425B2 (ja) | 画像処理装置及びその方法 | |
JP4581854B2 (ja) | 画像処理装置、画像処理プログラムおよび画像処理方法 | |
JP2911649B2 (ja) | 画像処理方法及び装置 | |
JP3005075B2 (ja) | 画像処理方法及び装置 | |
EP0530953A1 (en) | Image processing method and apparatus | |
JP2911650B2 (ja) | 画像処理方法及び装置 | |
JP2952078B2 (ja) | 画像処理方法及び装置 | |
JPH0939312A (ja) | 印刷装置、印刷方法および印刷システム | |
JP2000255121A (ja) | 印刷処理装置および印刷処理方法 | |
JP4325339B2 (ja) | 印刷システム、ホストコンピュータ及びプリンタドライバ | |
JP3082962B2 (ja) | カラー画像処理方法及び装置 | |
JP2962878B2 (ja) | 画像処理方法及び装置 | |
JPH1110961A (ja) | 印刷処理装置および印刷処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20010717 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070810 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080810 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080810 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090810 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090810 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100810 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110810 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |