JPH0687251A - グラフィックス言語に基づく画像処理方法及び装置 - Google Patents

グラフィックス言語に基づく画像処理方法及び装置

Info

Publication number
JPH0687251A
JPH0687251A JP5143425A JP14342593A JPH0687251A JP H0687251 A JPH0687251 A JP H0687251A JP 5143425 A JP5143425 A JP 5143425A JP 14342593 A JP14342593 A JP 14342593A JP H0687251 A JPH0687251 A JP H0687251A
Authority
JP
Japan
Prior art keywords
raster
image
command
memory
print
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.)
Granted
Application number
JP5143425A
Other languages
English (en)
Other versions
JP3159837B2 (ja
Inventor
Torabu Parudo Ruisu
トラブ パルド ルイス
Fuiritsupusu Horuhe
フィリップス ホルヘ
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from US07/898,532 external-priority patent/US5680521A/en
Priority claimed from US07/911,030 external-priority patent/US5515481A/en
Application filed by Canon Inc filed Critical Canon Inc
Publication of JPH0687251A publication Critical patent/JPH0687251A/ja
Application granted granted Critical
Publication of JP3159837B2 publication Critical patent/JP3159837B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1806Receiving job control commands
    • G06K15/1807Receiving job control commands relating to the print image preparation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1806Receiving job control commands
    • G06K15/1809Receiving job control commands relating to the printing process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1849Generation of the printable image using an intermediate representation, e.g. a list of graphical primitives
    • G06K15/1851Generation of the printable image using an intermediate representation, e.g. a list of graphical primitives parted in a plurality of segments per page
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0014Transforming the printer input data into internal codes

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Color, Gradation (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、プリンタ内の資源をより効
率的に利用することで、利用可能な物理的な資源を増加
させることなくプリンタの性能を向上させることにあ
る。 【構成】 装置に依存しないプリントコマンドを含むプ
リントコマンドに基づいて、グラフィックス言語文書記
述コマンドを生成する方法と装置が提供される。プリン
ト処理に必要となる資源を予測し、予測された資源がプ
リンタ装置の資源の範囲内であるかどうかを判断し、プ
リント装置の資源が現時点でのプリント処理には足りな
いと判断された場合にプリント処理を変更し、現存資源
の範囲内で画像のプリントを可能とするようなプリント
装置が提供される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、グラフィックス言語列
に応じて画像を処理する方法ならびに装置に関するもの
である。
【0002】
【従来の技術】近年、選択的に画素をページ上にプリン
トして画像を形成するレーザビームプリンタなどのプリ
ント装置が、柔軟性,プリント速度,低コストなどの観
点から広く使われ始めている。このようなプリント装置
はページをスキャンして画像をプリントするものであ
り、スキャンライン上の個々の画素を選択的にプリント
する。1つのスキャンラインが終わると、ページを進め
て(レーザビームプリンタなどのプリンタではプリント
処理時、ページを連続的に送り出す)次のスキャンライ
ンの処理を行う。ページ上のすべてのスキャンラインか
らプリントされる画素を集めると、所望の画像が得られ
る。
【0003】画素をページにプリントするかどうか、ス
キャン処理の間に画素をどこにプリントするかは、記憶
したプリント画像のラスタ画像に基づいてプリンタ制御
部が決定する。ここで、ラスタはプリント画像中の各画
素をコンピュータ表現したものであり、制御部中のビッ
トマップメモリに記憶される。ビットマップメモリで
は、ページ上のプリントされる画素とビットマップメモ
リ中のメモリ位置との間に1対1の関係がある。
【0004】すべてのプリント装置は利用できる資源の
範囲内で処理を進めなければならない。例えば、制御部
は一般に中央処理ユニット(「CPU」)をなすマイク
ロプロセッサであるが、制御部の処理能力は限られてお
り、ある時間間隔で扱える画像データなどのデータ量は
限られる。また、制御部のビットマップメモリなどのメ
モリへのアクセスも制限される。さらに、外部メモリ装
置などの他の装置を備えるプリントのもいくつかある
が、外部メモリ装置とは通信ラインを介してアクセスす
るため、バンド幅(データ転送速度)の制限が生じる。
【0005】従来のプリント装置では、利用可能な有限
の資源を非効率的に用いている。例えば、図11はプリ
ンタにおける代表的なCPU資源の利用率を示してい
る。図11に示されるように、CPU資源の利用率はピ
ークのCPU利用率と比較的低いCPU利用率との間で
大幅に変動する。ピークのCPU利用率はラスタ画像を
ビットマップメモリに生成する際のページプリントの間
に生じ、低CPU利用率はページがプリントされている
ときに生じる。
【0006】このような効率の悪さが生じるのは、画像
を適切にプリントすることを保証するために、スキャン
処理で画素を形成するようなレーザビームプリンタなど
のプリント装置は、プリント処理に先立ってプリント画
像のフルラスタ画像をビットマップメモリに生成する必
要があるためである。これは、プリント装置がページを
プリントするときに一定の速度でスキャンしてプリント
することによる。すなわち、ページのプリントが始まる
と、ページのプリントが終わるまでプリント処理は一定
の速度で行われる。したがって、プリントエンジンにお
いてプリントすべきデータが欠如(データアンダーフロ
ーと呼ばれる状況)しないように、プリント処理に先立
ってプリントすべき全体の画像をビットマップメモリ中
のラスタ画像に変換する。CPUはラスタ画像をビット
マップメモリに生成する処理を受け持ち、この処理のと
きにCPU利用率がピークとなる。これに対して、実際
に画像をプリントしているときは、CPUはビットマッ
プメモリを監視して、プリンタエンジンがプリント処理
を行う速度でラスタ画像がプリンタエンジンに供給され
ているかどうかをチェックするだけでよい。このような
比較的単純な処理のときには、CPU利用率が低くな
る。
【0007】一方、図11にさらに示されているよう
に、CPU利用率が最大であるときに、メモリ利用率は
最低になる。ビットマップメモリは画像のプリント処理
の直前でフルになるためである。上述のように、これは
CPU利用率が最低である時点に対応する。単純なプリ
ントシステムでは、このような非効率性は無視できる。
例えば、単純な白黒画像を300ドット/インチ(dp
i)などの低解像度で8・1/2 ×11インチの標準紙シ
ートにプリントするには、およそ1メガバイト(Mb)
のビットマップメモリが必要である。この際、1Mbの
メモリの値段は安いため、メモリの大部分が長い時間使
われなくても大きな問題ではない。ビットマップメモリ
がダブルバッファメモリ、すなわち2Mbメモリであっ
ても同様である。なお、ダブルバッファリングは、CP
Uが次のページの画像データをラスタ画像として1つの
バッファに生成する間に、他のバッファから現在のペー
ジの画像データをプリントすることができるという好ま
しい性質を有する。すなわち、ダブルバッファリングに
よれば、ラスタ画像データ列を連続的にプリントエンジ
ンに転送することが可能で、コストをあまり上げること
なくページ内スループットを上げることが可能となる。
【0008】これに対して、解像度が増大すれば、また
より多くの処理能力(例えば、中間色やカラー画像な
ど)が望ましければ、このような非効率性を無視するこ
とはできなくなる。例えば、600dpiの解像度で
は、フルラスタ画像を記憶するのに300dpiの4倍
ものメモリが必要となる。中間調やカラー画像を対象と
するときには、これ以上のメモリがさらに必要となる。
例えば、中間調画像において各画素ごとに16階調とす
れば画素ごとに4ビット必要になる。画素ごとの4ビッ
トに600dpiのラスタ画像を記憶するのに必要な4
Mbを掛けると、中間調ラスタ画像を記憶するには16
Mb必要となることがわかる。カラー画像を対象とする
ときには、これ以上のメモリが必要である。例えば、各
色ごとに8ビットで画素ごとに4色で符号化するときに
は、各画素32ビット必要となる。32ビットと600
dpiのラスタ画像の4Mbとを掛けると、フルカラー
の600dpiラスタ画像を記憶するには128Mbの
メモリが必要になる。このように大量のメモリの値段は
商用の製品としては許容できる範囲ではない。また、ペ
ージ内の遅延を減少させるためにダブルバッファリング
を用いるときには、問題はさらに深刻になる。
【0009】このような問題に対して、ディスクドライ
ブなどのオフラインメモリ装置を他のメモリ空間として
用いて、通信リンクを介してプリンタ制御部と接続する
というような仮想メモリを利用して、物理メモリの容量
を仮想的に増加させることが考えられている。しかし、
プリンタ装置において仮想メモリを用いるのは効率上あ
まり好ましくない。データのアンダーフローを生じない
ように画素データを適切な時点でプリンタエンジンに転
送するには、通信リンクのバンド幅が十分広くなければ
ならず、この点での保証が得られないためである。
【0010】更に、近年、レーザビームプリンタ,イン
クジェットプリンタ,バブルジェットプリンタなど、高
品質なラスタベースの装置が広く用いられ始めている。
これらの装置では、ホストコンピュータから画像デ−タ
を入力し、ビットマップメモリにラスタ画像を生成して
から、プリント処理が行われる。図1は、ビットマップ
メモリ中の各画素を形成して、品質(色,グレイレベ
ル,中間調など)を各画素に付与するラスタライズ処理
を示した図である。図1に示されるように、ビットマッ
プラスタ100はビットマップラスタ中の領域を定義す
るフレームFに分割される。また、フレーム中の各画素
101ごとに、マスクMと背景Bが定義されている。こ
こで、マスクMは、画素をビットマップメモリに展開す
べきかどうかを定義すると同時に、画素を展開すべき位
置を定義するものである。また、背景Bは、画素101
を展開すべき品質を定義するものである。例えば、背景
Bには画素に割り当てられる色や、中間調密度が指定さ
れている。なお、クリッピング領域を定義して、マスク
の実効領域を指定して、マスクをより適確に制御するこ
とも可能である。画素101のビットマップメモリへの
ラスタライズ処理は、フレーム情報,背景情報,クリッ
ピング領域情報,マスク情報(すべて図1に示されてい
る)の論理和をとることで行われる。
【0011】ラスタプリント装置が種々開発されるにつ
れて、より洗練された手法でラスタ画像の形成が行われ
るようになってきた。すなわち、フルラスタ画像をプリ
ンタに転送するのは実際的ではないため、ページ記述言
語(「PDL」)のような記述言語が用いられるように
なってきた。ページ記述言語は、各文書ページ上のテキ
スト,グラフィックス,スキャン画像などの各要素の性
質をすべて記述するコマンド列から構成される。また、
PDLは、文書のレイアウトやシ−トハンドリング(ペ
ージ順揃えなど)を記述する情報をも含む。ホストコン
ピュータがページ記述言語をプリント装置に転送する
と、プリント装置がページ記述言語を解釈してラスタ画
像に展開する。
【0012】図2は、このような処理を示す図である。
図2は、一端でページ記述言語を入力し、他端でビット
マップラスタ画像を生成するプリント装置中のモジュー
ルを示している。図2に示されるように、通信インタフ
ェースモジュール102はPDLコマンドを入力し、P
DLインタプリタ104に転送する。PDLインタプリ
タ104は、インタプリタで処理したPDLコマンドに
応じて、PDLコマンドをグラフィックスレイヤ10
5,フォントモジュール106,記憶プール107に転
送する。ラスタライザ109は、グラフィックスレイヤ
105,フォントモジュール106,記憶プール107
からの出力を受け取って、ビットマップメモリにラスタ
画像を生成する。すなわち、ラスタライザ109は、ビ
ットマップラスタプール110の空ラスタを受け取り、
画像を描画した後描画されたラスタをラスタプール11
0に出力する。充填されたラスタ画像はプリント装置に
よって出力されるが、この間にラスタライザ109はさ
らに次のページに対応する空ラスタに描画を行う。
【0013】PDLコマンドのようなプリンタコマンド
は一般に装置に依存しない。すなわち、PDLコマンド
を入力するプリント装置に関わらず、同一のPDLコマ
ンドからは同一の文書が出力される。このような特徴は
利点となりうるが、一方、各プリンタはそれぞれ個々の
特徴を有しており、装置に依存しないPDLコマンドを
対応するラスタ画像に変換するPDLインタプリタ10
4をプリンタごとに個別に用意しなければならないとい
う問題点もある。
【0014】
【発明が解決しようとする課題】本発明の目的は、プリ
ンタ内の資源をより効率的に利用することで、利用可能
な物理的な資源を増加させることなくプリンタの性能を
向上させることである。本発明の他の目的は、装置に依
存しないPDLコマンドを対応するラスタ画像に変換す
るPDLインタプリタをプリンタごとに個別に用意する
必要をなくし、汎用性を高めることである。
【0015】
【課題を解決するための手段】1つの態様において、本
発明は、画像を符号化されたコンパクトな表現で表わ
し、その後でフルラスタ画像に展開するものである。こ
の際の表現としては、フルラスタ画像を展開するのに必
要な資源を精度良く予測することが可能な表現を用い
る。また、予測処理は資源の利用率を予測するためのも
ので、プリント処理に先立って、プリンタがプリント処
理を行うのに十分な資源を有しているかどうかを判断す
る。ここで、資源が十分にあると判断された場合には、
プリント処理が実行される。一方、資源が足りない場合
には、資源の再割り当てを行ってからプリント処理を実
行する。
【0016】他の態様として、本発明は、装置に依存し
ないプリントコマンドに基づいてグラフィックス言語を
用いた文書記述コマンドを生成する。文書中のラスタフ
レームに対するフレームの記述は、ラスタフレームをペ
ージラスタ中にどのように配置するかを指定する文書レ
イアウトコマンドと同様に、プリントコマンドから生成
される。フレームの記述は第1のパイプラインインタフ
ェースから出力され、文書レイアウトコマンドは第2の
パイプラインインタフェースから出力される。文書レイ
アウトコマンドには、フレームを紙シート上にどのよう
にマッピングするのかについての情報や、とじこみ命令
やページ順揃え命令などの文書仕上げ命令に関する情報
なども含まれる。フレーム記述はラスタベースの記述で
あり、一般に装置依存型の記述である。本発明の実施例
では、レーザビームプリンタ,インクジェット,バブル
ジェットプリンタなどのラスタベースのプリンタあるい
は表示装置への適用であるが、ホストコンピュータ中の
プリンタドライバへ適用して、ホストコンピュータ処理
の一部として実行することもできる。
【0017】さらに他の態様として、本発明はグラフィ
ックス言語プロセッサであって、画素マスクオブジェク
トをフレームに生成するマスク生成部を備える。また、
背景生成部を備え、オブジェクトが展開される背景を生
成する。解釈部はプロセッサに入力したグラフィックス
言語コマンド列を解釈し、グラフィックス言語に応じて
マスク生成部と背景生成部とを起動する。ラスタライザ
部は、マスクオブジェクトをビットマップラスタメモリ
上で背景に対し展開する。マスク生成部は複数の異なる
マスク生成部を備えており、これらの複数のマスク生成
部はパイプライン構造で構成されて、グラフィックス言
語に応じて解釈部によって起動される。同様に、背景生
成部はそれぞれが異なる種類の背景を生成する複数の背
景生成部を備えており、各背景生成部はパイプライン構
造で構成されて、適当なグラフィックス言語に応じて解
釈部によって起動される。調整部は構造中のパイプライ
ンを調整するために設けられている。マスク生成部にお
いて生成されたマスクオブジェクトは、画素オブジェク
トのコンパクト表現であるプリミティブオブジェクトの
こともあり、またビットマップ画像のセグメントのこと
もある。また、マスク生成部の出力をクリッピングする
ためにクリッパを設けることも可能である。同様に、い
くつかの実施例では、ディスパッチャを備えてラスタ領
域を逐次的に選択し、マスク生成部,背景生成部,ラス
タライザ部が選択されたラスタ領域それぞれに対して動
作するように構成することもできる。例えば、ディスパ
ッチャを用いることで、バンドに分割したラスタを、マ
スク生成部,背景生成部,ラスタライザ部が逐次的に選
択して処理するような構成が可能となる。
【0018】さらに他の態様として、本発明は、PDL
プリントコマンドなどの符号化プリントデータを入力す
るステップと、符号化プリントデータを第1の符号化表
現に変換するステップと、第1の符号化表現を第1の符
号化表現とは異なる第2の符号化表現に変換するステッ
プと、第2の符号化表現からラスタ画像を形成するステ
ップとを備えるプリント方法である。第1と第2の符号
化表現は共通の符号プリミティブを有し、第2の符号化
表現は、表現をラスタライズする際に必要なプリンタ資
源を正確に表わして、プリンタ資源が不足している場合
にはラスタライズ処理を変更することができるような正
確なモデリング機能を有する。
【0019】
【実施例】
<第1実施例>グラフィックス言語(GL)は、ページ
中のフレームに対するグラフィックス記述と、フレーム
をページ中のどこに配置するかを記述する文書レイアウ
ト情報とに分けることができ、グラフィックス記述と文
書レイアウト情報とは別々のパイプライン化されたイン
タフェースから出力される。そこには、グラフィックス
言語プロセッサが備えられ、グラフィックス言語列を解
釈する。プロセッサはグラフィックス言語列をマスク情
報とマスクを展開する背景とに分け、マスクと背景情報
に別々に作用してフレームラスタを生成し、文書レイア
ウト情報を用いてフレームラスタをページにマッピング
する。
【0020】図3は、本実施例のレーザビームプリンタ
装置の構成を示す図である。図3に示されるように、レ
ーザビームプリンタは、プリンタ内のさまざまな機構部
や電子部を制御する制御部11を備える。具体的には、
制御部11は不図示のホストコンピュータから通信ポー
ト12を介して画像データを受信し、画像データを処理
してレーザドライバ14を駆動するレーザ変調信号を生
成する。ここで、通信ポート12から入力される画像デ
ータは、プリント画像のフルラスタ画像形式ではなく、
ページ上のオブジェクトやオブジェクトの位置のみを指
定するペ−ジ記述言語(「PDL」)のようなコンパク
トなデータ形式であることが好ましいが、これ以外の画
像データ形式であっても良い。制御部11で画像信号が
生成されると、レーザドライバ14はレーザ15を駆動
してレーザビーム16を放射する。回転ポリゴンミラー
17はミラー19を介してレーザビームを偏向しながら
感光ドラム20上をスキャンする。感光ドラム20は矢
印Aの方向に回転し、帯電部21を通過する。スキャン
される偏向レーザビームは帯電された感光ドラム上に潜
像を形成し、現像部22で潜像はトナー画像として現像
される。
【0021】ドラム20表面をスキャンすると、制御部
11はピックアップローラ25を駆動してトレー24中
の最も上の紙シートを引き込み、ローラ26と27によ
って画像通路29を通って感光ドラム20上に運ばれ
る。ドラム20上のトナーで現像された潜像は転移帯電
部30でこのシートに転移され、ローラ31と32で固
着装置34に運ばれる。固着装置34において、熱と圧
力を合せ加えてトナー画像がシートに永久的に固着され
ると、ローラ35によってシートは出力トレイ36に出
力される。
【0022】図4は制御部11の構成を示す図である。
図4中の通信インタフェース202とPDLインタプリ
タ204は、図2の通信インタフェースとPDLインタ
プリタと本質的に同一であるため、ここでの説明を省略
する。図4に示されるように、ページ記述言語はPDL
インタプリタ204で処理されてグラフィックス言語生
成モジュール205に渡される。グラフィックス言語生
成モジュール205では、PDLを本実施例のグラフィ
ックス言語文書に変換する。以下、グフィックス言語を
GLとも記載する。具体的には、グラフィックス言語生
成モジュール205は、PDL言語に基づいて、グラフ
ィックス言語文書の2つの要素を生成する。まず、グラ
フィックス言語生成モジュール205は、グラフィック
ス言語のフレーム記述コマンド206を生成する。フレ
ーム記述コマンド206は、プリミティブラスタ処理列
としてラスタフレームを記述するものである。すなわ
ち、フレーム記述コマンドでは、オブジェクトや、オブ
ジェクトでラスタフレーム上をどのように塗るかといっ
たルールが定義される。
【0023】例えば、フレーム記述コマンド206は、
ボックス型画素をカラー背景画像上に配置し、処理画素
をビットマップラスタメモリの所定の位置に入力するよ
うに、グラフィックス言語プロセッサに指示する。ある
いは、フレームコマンドは、第1フレームに会社のレタ
ーヘッドを、第2フレームに手紙のテキスト画像を、第
3フレームに署名の画像を形成するというように、グラ
フィックス言語プロセッサに指示する。フレーム記述コ
マンド206に関しては、以下でさらに詳細に説明す
る。
【0024】図4にさらに示されるように、グラフィッ
クス言語生成モジュール205の第2の出力は、文書レ
イアウト情報207である。文書レイアウト情報207
は、フレーム記述コマンド206で指定されたフレーム
で文書ページに対応するビットマップラスタ上をどのよ
うに塗るかを記述したものである。具体的には、文書レ
イアウト情報207は、フレームのラスタメモリへのマ
ッピングの仕方に関する情報を含む。例えば、文書レイ
アウトコマンドは、複数のフレームを1ページのビット
マップラスタ中の異なる位置(それぞれが重なっている
場合もある)にマッピングするようにグラフィックス言
語プロセッサに指示する。また、プリント可能な文書の
場合には、文書レイアウト情報は両面プリントなどのよ
うな特別なプリント命令を含むことがあり、とじ命令,
ページ順揃え命令などのような紙シートハンドリング命
令や仕上げ命令などを含むこともある。
【0025】グラフィックス言語コマンド206と文書
レイアウト情報207とは、インタフェース208を介
してパイプライン出力される。ここで、インタフェース
208は、ホストCPUとプリントエンジン間のインタ
フェースのような個別の装置間の物理的インタフェース
であっても良い。例えば、通信インタフェース202,
PDLインタプリタ204,グラフィックス言語生成モ
ジュール205をホストCPU中のプリンタドライバと
して構成することも可能である。このような場合、ホス
トコンピュータで生成されたページ記述言語コマンドは
グラフィックス言語コマンド206と文書レイアウト情
報207にまで変換されて、パイプラインインタフェー
スを介してプリンタエンジンに直接出力される。しか
し、ここでは、インタフェース208を制御部11中の
2つのモジュールを接続するインタフェースとして実施
例を説明する。この際、モジュールはソフト的に構成さ
れていても、ハ−ド的に構成されていても良い。
【0026】グラフィックス言語コマンド206はグラ
フィックス言語プロセッサ209に入力され、ビットマ
ップラスタプール210からの空のラスタにグラフィッ
クス言語コマンドを展開する。ここで描画されたラスタ
はプリンタエンジン・ビデオインタフェース212に転
送され、プリンタのレーザドライバ14に入力される。
【0027】文書レイアウト情報207はシステムスケ
ジューラ214に入力され、さまざまなモジュールの処
理を調整する。具体的には、システムスケジューラ21
4は、ビットマップラスタプール210からの空ラスタ
をグラフィックス言語プロセッサ209に渡し、画素画
像のラスタへの展開処理の開始をグラフィックス言語プ
ロセッサ209に指示する。グラフィックス言語プロセ
ッサ209がラスタ画像への展開処理を終了すると、シ
ステムスケジューラ214は、展開されたラスタ画像に
基づいてデータをレーザドライバ14に転送するように
プリンタエンジン・ビデオインタフェース212に指示
する。レーザビームを変調するのと同時に、システムス
ケジューラ214は、シート送り,ドラム回転,ローラ
固定などのプリンタ10の機構動作をプリンタエンジン
モジュール215に指示する。さらに、システムスケジ
ューラ214は、文書レイアウト情報207に基づい
て、両面プリント,紙出力,とじこみ,ページ順揃え,
これら以外の文書仕上げ情報などを指示する。
【0028】図5はグラフィックス言語プロセッサ20
9の構成を詳細に示す図である。図示されているよう
に、プロセッサ209は、グラフィックス言語コマンド
列を分解し、グラフィックス言語コマンドを解釈するグ
ラフィックス言語インタプリタ220を備える。具体的
には、グラフィックス言語インタプリタ220は、グラ
フィックス言語オブジェクトがグラフィックス言語コマ
ンド列中に出てきたときには、それを記憶する。また、
インタプリタ220は、マスクアプリケーションコマン
ドや背景生成コマンドがグラフィックス言語コマンド列
中に出てきたときには、それらをそれぞれマスク生成部
221と背景生成部222とに転送する。マスク生成部
221は図1のマスクMなどのマスク情報を生成し、背
景生成部222は図1の背景Bなどの背景情報を生成す
る。マスク生成部221と背景生成部222とも、GL
オブジェクト記憶部224に蓄えられているグラフィッ
クス言語オブジェクト上で処理を行う。
【0029】マスク生成部221おいて生成されたマス
クはクリッパ225に転送され、必要であればGLコマ
ンドに基づいてマスクのクリッピングを行う。クリッパ
225もまた、GLオブジェクト記憶部224に蓄えら
れているグラフィックス言語オブジェクト上で処理を行
う。クリッパ225と背景生成部222との出力は、ラ
スタOPマシーン226に入力される。ラスタOPマシ
ーン226は、マスク生成部221により生成され、ク
リッパ225でクリッピングされたマスクを、背景生成
部222で生成された背景上に適用する。この際、ラス
タOPマシーンは、GL状態メモリ227で指定される
アプリケーション機能に対応してマスクを適用する。例
えば、図6に示されるように、不透明アプリケーション
機能が指定される。すなわち、ラスタOPマシーンが、
マスク生成部221で生成されクリッパ225でクリッ
ピングされたマスクを、背景生成部222で生成された
背景面に適用する際、もとのラスタ中の情報を上書きし
て、処理後のラスタを生成する。これ以外のアプリケー
ションを指定することも可能であり、例えば透明アプリ
ケーションや付加アプリケーションなども可能である。
【0030】ラスタOPマシーンが作用するラスタは、
システムスケジューラ214に応じて、ビットマップラ
スタプール229から入力される。文書レイアウト情報
207で述べたように、すべてのアプリケーションを終
了すると、ラスタOPマシーンは充填ラスタをビットマ
ップラスタプール229に転送し、描画されたラスタは
プリンタ10でプリントされる。
【0031】図7は、マスク生成部221と背景生成部
222との構成、ならびにラスタOPマシーン226の
アプリケーション処理を概念的に詳細に示す図である。
図7では、以下の説明を簡潔にするために図5中のいく
つかの要素を省略している。図7に示されるように、マ
スク生成部221は、特定の画素プリミティブオブジェ
クトを生成するように設計されたマスク生成部を複数備
える。すなわち、マスク生成部221は、ビットマップ
マスク生成部221a,台形マスク生成部221b,ラ
イン生成部221c,ランレングスマスク生成部221
d,ボックスマスク生成部221e,他のコンパクト表
現を生成する生成部221fを備える。具体的には、ビ
ットマップマスク生成部221aは、GLインタプリタ
220からのGLコマンドに応じてビットマップマスク
を生成する。ここで、ビットマップマスクは画素ビット
ごとにマスクを表現したものである。
【0032】台形マスク生成部221bは、GLインタ
プリタ220からのGLコマンドに応じて台形型のマス
クを生成する。ここで、台形マスクはラスタメモリ中の
台形オブジェクトを定義する。ライン生成部221c
は、GLインタプリタ220からのGLコマンドに応じ
て指定された幅の線を生成する。ランレングスマスク生
成部221dは、マスク内の画素のランレングスに応じ
てランレングスマスクを符号化する。ボックスマスク生
成部221eは、GLインタプリタ220からのコマン
ドに応じて指定された幅と高さのボックス型のマスクを
生成する。
【0033】なお、これら以外のコンパクト表現も可能
であり、ここに示した表現のみに限定されるわけではな
い。マスク生成部221において生成されるマスクのう
ちの代表的な種類を示しただけである。背景生成部22
2は、カラー背景生成部222a,タイル背景生成部2
22b,画像背景生成部222cを備える。具体的に
は、カラー背景生成部222aは、GLインタプリタ2
20からのGLコマンドに応じて、指定されたカラーで
一様なカラー背景を生成する。タイル背景生成部222
bは、GLインタプリタ220で指定されたタイルを繰
り返し生成する。すなわち、GLインタプリタで指定さ
れた領域の背景全体に、タイルパターンを繰り返し生成
する。画像背景生成部222cは、GLインタプリタ2
20で指定された画素ごとのフォーマットで、画像背景
を生成する。
【0034】なお、これら以外の背景生成部も可能であ
り、ここに示した生成部のみに限定されるわけではな
い。背景生成部222に含まれる背景生成部のうちの代
表的な種類を示しただけである。図7には、ラスタOP
マシーン226がグラフィックス言語コマンドに応じ
て、現在のラスタ230を更新して、新たなラスタ23
1を生成する様子も示されている。
【0035】図7は、GLインタプリタ220がグラフ
ィックス言語コマンド「apply clipped box(W,H) at<x,
y> with image background;<x,y>にあるクリッピ
ングボックス(W,H)を画像背景に適用する」を入力
した状態である。(なお、グラフィックス言語コマンド
のリストは付録に添付されている)。GLインタプリタ
220は、グラフィックス言語コマンドの前半部位、す
なわち「apply clipped box(W,H)」に応じてボックスマ
スク生成部221eを起動する。ボックスマスク生成部
221eは、マスク生成部221の出力に示されている
ように、幅W、高さHのボックス型のマスクを生成す
る。そこで、クリッパ225は、メモリ224に蓄えら
れているグラフィックス言語オブジェクトを切り出し
て、クリッパの隣に図示しているようなクリッピングさ
れた形を生成する。そして、生成されたクリッピングボ
ックスは、ラスタOPマシーン226に入力される。
【0036】また、GLインタプリタ220は、グラフ
ィックス言語コマンドの後半部位、すなわち「with ima
ge background 」に応じて、画像背景生成部222cを
起動する。画像背景生成部222cは、メモリ224に
蓄えられているグラフィックス言語オブジェクトを切り
出して、画像背景をラスタOPマシーン226に入力す
る。なお、この際、画像背景はカラーであっても良い。
【0037】クリッパ225と背景生成部222とから
情報が入力されると、ラスタOPマシーン226は状態
メモリ227で指定されるアプリケーション機能に基づ
いて、クリッピングされたマスクを背景に適用する。こ
こでは、アプリケーション機能は「不透明」と指定され
ており、ラスタOPマシーン226は背景の現在のラス
タの位置<x,y>をマスクされクリッピングされた領
域に適用して、231に示されるような更新ラスタを得
る。以上の処理を各フレームのグラフィックス言語コマ
ンド列のコマンドごとに実行し、その後で文書レイアウ
ト情報207を用いて全体のビットマップラスタにフレ
ームをどのように配置するかを決定する。
【0038】図7では、図8のような逐次的な処理とし
て説明を行った。すなわち、ステップ1で、マスク生成
部221はマスクを生成して、クリッパ225に入力す
る。ステップ2において、クリッパ225はマスクを適
当にクリッピングし、ラスタOPマシーン226に入力
する。ステップ3で、背景生成部222は背景をラスタ
OPマシーン226に入力し、ステップ4で、ラスタO
Pマシーン226がマスクを背景に適用し、ビットマッ
プラスタメモリにラスタ画像として書き込む。このよう
にグラフィックス言語プロセッサを構成することができ
るが、これ以外の構成法も考えることができる。
【0039】すなわち、図9に示すようにディスパッチ
ャ330を設け、マスク生成部321,クリッパ32
5,背景生成部322,ラスタOPマシーン326の動
作を制御することもできる。具体的には、ディスパッチ
ャ330は領域330aなどのラスタ画像中の特定領域
で動作するように各モジュールに指示をする。このよう
な領域としてはビットマップメモリ中の分割された領域
バンドであることが多いが、必ずしもバンドである必要
はなく、画像中の任意の領域をとることができる。ディ
スパッチャ330は、ビットマップメモリ中の全ページ
の展開をし終えるまで、例えばバンドごとに全体領域の
処理を順々に進める。
【0040】すなわち、このようなディスパッチャ33
0によれば、マスク生成部321,背景生成部322,
クリッパ325,ラスタOPマシーン326は、同時に
は1つの領域のみで動作して、ビットマップメモリ中の
連続する領域を順に処理する。この際、現時点では対象
外の領域に関するグラフィックス言語オブジェクトは一
時無視して、ディスパッチャ330が当該領域の処理の
開始を指示した時点になって処理を始める。このため、
図9の構成では、一時的にグラフィックス言語コマンド
を記憶するためのメモリのオーバヘッドが必要となる。
なお、ディスパッチャ330によって連続的に選択され
る領域を大きくすると、記憶すべきグラフィックス言語
コマンド量が減少するため、このようなオーバヘッドを
少なくすることができる。
【0041】図10はグラフィックス言語プロセッサの
別の構成を示す図であり、調整部440を設けて、マス
ク生成部421,背景生成部422,クリッパ425,
ラスタOPマシーン426間のパイプライン処理の調整
を行うものである。具体的には、図10の構成では、各
モジュールはパイプライン化されたモジュールで、パイ
プラインに入力された情報順に処理を進める。各モジュ
ールは、D.A. Patterson, J.L. Hennessy 著の「Comput
er Archtecture: A Quantitative Approach 」(1990, M
organ Kaufman 出版社)の第6章に一般的に示されてい
るように、並列にかつ同時にパイプライン命令に基づい
て処理を進める。すなわち、モジュールが同時に処理を
開始して、処理の間の同期がとれるように調整部440
が指示を出す。例えば、背景生成部422は背景をラス
タOPマシーン426に直接出力することができるが、
クリッパ425がマスク生成部421とラスタOPマシ
ーン426との間に位置するため、マスク生成部421
は対応するマスクオブジェクトをラスタOPマシーンに
直接出力することはできない。そのため、調整部440
は、クリッパ425からのクリッピングされたマスクと
背景生成部422からの適切な背景との間の同期をと
り、ラスタOPマシーン426でこれらの情報に対して
処理を行うようにする。
【0042】ここで述べたグラフィックス言語プロセッ
サは、以下に示すような他の構成のプリンタと組み合わ
せて用いることもできる。以下に示されている方法を組
み合わせて用いることで、ここで述べたグラフィックス
言語コマンドをさらにDART表現に変換することが可
能となる。DART表現を用いることでプリンタ資源を
正確に表わすことができ、プリント処理に先立って、プ
リント処理に必要なプリンタ資源が足りるかどうかを判
断することができる。資源が足りている場合にはプリン
ト処理を開始し、プリンタ資源が足りない場合にはプリ
ント処理が可能となるようにプリント処理を変更するこ
とができる。
【0043】<第2実施例>次に、前記第1実施例が好
適に適用される一適用例として、前述のように画像をプ
リントする方法ならびに装置であって、画像をプリント
する際に用いるプリンタ資源を予測することで、プリン
ト処理の開始に先立ってプリント処理を変更することの
できるプリント方法ならびに装置を説明する。本実施例
では、画像はフルラスタ画像に変換される前には符号表
現の形式で蓄えられており、この符号表現はフルラスタ
画像への変換時に用いる資源を正確に表わすことができ
る表現となっている。すなわち、画像の符号表現をフル
ラスタ画像に変換するのに必要となるプリンタ資源を精
度良く予測することができ、画像をプリントするのに十
分な資源をプリンタが備えているかどうかをプリント処
理に先立って判定することができる。この予測処理によ
って資源が足りないと判断されたときには、資源の再割
り当てを行って画像のプリント処理を行う。
【0044】符号化された表現を用いることでプリンタ
資源を動的にかつ適応的に利用することができるため、
以下、このような表現を動的資源適応手法(Dynamic Ad
aptive Resource Technology)手法、略して「DAR
T」表現と呼ぶことにする。例えば、解像度を操作す
る。例えば、図12に図式的に示す資源、CPUパワ
ー,メモリ,バンド幅を考えてみる。ここで、CPUパ
ワーとは、プリンタの制御部内のCPUがデータを操作
し、1つの形式から他の形式に処理する速度と能力のこ
とである。また、メモリとは、プリンタで利用可能なメ
モリ量のことである。バンド幅は、外部メモリ装置への
通信リンクのバンド幅すなわちデータ転送速度のことで
ある。なお、バンド幅には、アクセス時間,ディスクヘ
ッド遅延,ディスク回転速度などの外部メモリ装置内で
の既知の遅延も含まれる。
【0045】いかなるプリンタでも、最大CPUパワ
ー,最大メモリ,最大バンド幅で指定される点で定義さ
れる利用可能な資源の範囲がある。予測処理によって、
DART表現のフルラスタ画像への展開がこれらの資源
範囲の1つでも越えると判断されると、資源の再割り当
てが行われる。例えば、画像を記憶するメモリは足りな
いが、CPUパワーが余っていると判断されたとすると
(図12の点A)、フルラスタ画像へ展開する際に必要
なメモリを少なく、必要なCPUパワーを多くするよう
な別のDART表現へ変換することが可能である。すな
わち、メモリをCPUパワーで置き換えることができ
る。このような再割り当てによって点Aは点A’に移動
し、プリンタ資源の範囲内に収まるようになるため、プ
リント処理を実行することができる。
【0046】また、プリント解像度を減少させたり、中
間調画像のグレイ階調数やカラー画像のカラー数を減少
させることで、画質を変化させることも可能である。画
質を変化させれば、CPUにさらなる負担をかけること
なく、必要となるメモリ量を減らすことができる。この
ような再割り当てにより点Aは点A”に移動するため、
プリンタ資源の範囲内に収まり、プリント処理を実行す
ることができる。
【0047】逆に、予測処理によって、DART表現か
らフルラスタ画像への展開に必要なCPUパワーが不十
分で、ラスタ画像を適切な時点でプリンタエンジンに転
送することができない(すなわちデータアンダーフロ
ー)と判断されることもある。この際、メモリが余って
いるとすると(図12の点Bで表わされる)、CPUパ
ワーを多く必要とする画像部位を予めラスタリングする
などして、CPUパワーを利用可能なメモリで置き換え
ることができる。このような再割り当てによって点Bは
点B’に移動し、プリンタ資源の範囲内に収まるように
なるため、プリント処理を実行することができる。
【0048】同様に、CPUパワーならびにメモリとバ
ンド幅とを置き換えることも可能である。例えば、DA
RT表現からフルラスタ画像への展開処理に最大のCP
Uパワーを用いているが、メモリ資源が足りないといっ
た点Cのような場合には、画像の一部をオフラインで記
憶しておき必要なときに通信リンクを介して取り出すな
どの処理を行うことで、メモリをバンド幅に再割り当て
することができる。このような再割り当て処理によっ
て、点Cは点C’に移動し、プリンタ資源の範囲内に収
まるようになる。予測処理によって、ラスタ画像データ
を適切な時点でプリンタエンジンに転送し、プリンタエ
ンジンがデータアンダーフローを起こさないだけのバン
ド幅が十分にあることが判断されるのである。
【0049】図13は制御部11のブロック図である。
なお、図13は制御部11中のすべての部位間の物理的
接続を示すものではなく、制御部内での処理の流れを示
す図である。図13に示されるように、制御部11はC
PU41を備え、通信インタフェース12を介してペー
ジ記述言語などの画像データを受信する。すると、CP
U41はGL変換部42でもって、ページ記述言語の画
像情報をグラフィックス言語列に変換する。グラフィッ
クス言語(GL)とは、最もコンパクトなPDLレベル
とフルラスタ画像データレベルとの間に位置するような
画像データ記述言語である。以下で詳細に説明するよう
に、GL言語には画像オブジェクトなどのプリミティブ
と、このようなプリミティブをビットマップメモリに展
開してフルラスタ画像を生成する規則とが存在する。
尚、グラフィックス言語(GL)をグラフィックススト
リーム言語(GS)とも言う。
【0050】GL変換部42でのGL表現に基づいて、
CPU41はDARTコード生成部43でDART表現
を生成する。DARTコード生成部43で生成されたD
ART表現はラスタ画像のコンパクトな符号化表現であ
り、DART表現からフルラスタ画像への変換の際に用
いる資源を精度良く予測することができる。また、DA
RTコード生成部43で生成されたDART表現は、G
L表現のプリミティブの多くを用いている。しかし、ラ
スタ画像全体に作用するGL表現とは異なり、DART
コード生成部43で生成されたDART表現は画像のバ
ンド部のみに作用する。したがって、DART表現では
GL表現で用いるような複雑なプリミティブを利用しな
いことをも鑑みると、DART表現を用いることで資源
利用を精度良く予測することが可能となる。なお、この
ような予測はGL表現では不可能である。
【0051】DARTコード生成部43において生成さ
れる各バンドごとのDART表現はメモリ44に蓄えら
れる。感光ドラム20上のレーザビーム16のスキャン
に対応するデータをプリンタエンジン45が必要とする
ときに、メモリ44に蓄えられている表現はレンダー部
46によってフルラスタバンド画像に展開され、転送部
47によってプリンタエンジンに転送される。
【0052】図14は、DARTコード生成部43にお
いて生成されるDART表現に応じて、画像をバンドに
分割する様子を示す図である。図14に示されるよう
に、ページ画像はプリンタエンジンのスキャン方向(こ
こでは水平方向)に対応するバンドに分割される。一般
に、8・1/2 ×11インチの画像を効率良く処理するた
めには27個程度のバンドに分割すれば十分である。な
お、図14では説明の簡潔さを考慮してすべてのバンド
を図示していない。
【0053】メモリ44は、従来のプリンタのビットマ
ップメモリに対応するメモリ領域である。ここで、メモ
リは待ち行列(キュー)として利用される。すなわち、
DART表現が生成されるとメモリを割り当て、レンダ
リングされてプリンタエンジンに転送されるとメモリを
解放する。新たなページが生成されると、空きメモリの
最初の位置にメモリが割り当てられる。ここで、物理的
なメモリの最下部と最上部とは連続するようにメモリは
割り当てられる。ページに対してすべてのDARTオブ
ジェクトとアプリケーションとが生成され、バンドのラ
スタ記憶がメモリに付加されると、現在のページメモリ
の後部に次のページが割り当てられる。ページの転送が
すべて終了すると、バンドラスタ,オブジェクト,ペー
ジ情報構造などを解放し、再利用可能な状態に戻す。
【0054】図14に示される各バンドはDARTコー
ド生成部43において逐次的に処理される。すなわち、
例えばDARTコード生成部43では最初にページiの
バンド0を処理し、得られたDART表現をメモリ44
の最上部に蓄積する。次いで、DARTコード生成部4
3はページiのバンド1を処理し、得られたDART表
現をメモリ44の続き領域に蓄積する。このような処理
をページiの最終バンドKまで続けると、全ページのD
ART表現がメモリ44に蓄積される。この処理では、
ページiのフルラスタ画像はまだ存在せず、バンドDA
RT表現が得られるのみである。
【0055】DARTコード生成部43において各バン
ドが処理されると、CPU41は予測機能を用いて、プ
リンタ10の資源の範囲内でメモリ44に蓄えられてい
るDART表現をフルラスタ画像に展開できることを確
認する。このような予測が可能となるのは、DART表
現におけるプリミティブ構造と、DART表現をフルラ
スタ画像に展開する符号の信頼性とによる。プリンタ資
源の範囲内で各バンドの展開が可能であるとすると、C
PU41はメモリ44のページiの最後に2つの空白バ
ンドラスタ(すなわち、バンドラスタ0とバンドラスタ
1)を付加する。ここで、各空白バンドラスタのサイズ
は、所望のプリント解像度での1バンドのフルビットマ
ップ画像のサイズである。
【0056】続いて、DARTコード生成部43は次の
ページすなわちページi+1のバンドDART表現を生
成する処理に進む。これらの処理の間、レンダー部46
は空白バンド上にページiのバンドDART表現をフル
ラスタ画像に展開する処理を開始する。まず、レンダー
部46はバンド0をバンドラスタ0に展開する。続い
て、レンダー部46はバンドラスタ1にバンド1のDA
RT表現をフルラスタ画像として展開する。バンド1が
展開されている間、転送部47はバンドラスタ0中のフ
ルビットマップラスタ画像をプリントエンジン45に転
送し、バンドを出力する。バンドラスタ0のエンジン4
5への転送が終ると、レンダー部46はバンドラスタ1
中のフルラスタ画像を展開してバンド1を出力する。こ
こで、十分な資源が利用可能であり、プリントエンジン
でデータのアンダーフローが起こらないように所定の時
間内でフルラスタ画像が生成できることは、プリント処
理に先立って予測機能を用いて確認されている。
【0057】続いて、転送部47はバンドラスタ1中の
フルラスタ画像を転送する。この間、レンダー部46は
バンド2中のラスタ表現をフルビットマップラスタ画像
に展開する。これらの処理をページiのすべてのバンド
がレンダー部46によって展開され、転送部47によっ
てプリントエンジン45に転送されるまで繰り返す。ペ
ージiのDART表現がフルラスタ画像に展開され、転
送されて出力される間、空きのCPU時間を用いて次ペ
ージすなわちページi+1のPDLを上述のページiと
同様の手順でDART表現に変換する処理が行われる。
【0058】上述の処理において、CPU41が予測機
能でもって、DART表現からフルラスタ画像への展開
が利用可能な資源の範囲を越えていると判断した場合に
は、資源の取捨選択あるいは再割り当てが行われる。例
えば、DART表現がプリント情報のフルラスタ画像以
上である場合、すなわちDART表現がフルラスタ画像
と比べて非効率になっている場合で、CPUパワーが利
用可能である場合には、DARTコード生成部43にお
いて別のよりコンパクトなDART表現が生成される。
逆に、CPU41がDART表現からフルラスタ画像へ
の展開処理をバンド情報処理に要する時間内に行うこと
ができるだけのCPUパワーを有していず、プリントエ
ンジンにおいてデータのアンダーフローが生じる場合に
は、障害となるバンド(障害となるバンドを含むすべて
あるいはいくつかのページ)を前もってラスタリングし
ておき、ラスタリングされたデータが適切なタイミング
で転送部47に転送される。
【0059】図15は全体の処理の流れを示す図であ
る。図15中の処理ステップは制御部11中の不図示の
メモリに蓄えられており、CPU41で実行される。ス
テップS601では、制御部11は通信ポート12から
画像データを入力する。画像データは一般にホストコン
ピュータによって生成され、ホストコンピュータから制
御部11へはページ記述言語などのコンパクトな符号で
転送される。ステップS602では、GL変換部42が
PDL画像データをGL画像データに変換する。ステッ
プS603では、DARTコード生成部43においてG
LデータからDART表現が生成され、メモリ44に蓄
えられる。DART表現が生成されると、ステップS6
04でバンドごとに分割され、ステップS605でDA
RT表現をフルラスタ画像に展開するのに必要な資源を
予測する。すなわち、各DART表現ごとに、予測機能
でもって(a)DART表現を展開するのに必要なCP
Uパワーと(b)DART表現を蓄えるのに必要なメモ
リとを予測する。プリンタ10がバンド幅が制限された
通信線を介してCPU41に接続される外部メモリを備
えているときには、各DART表現ごとのバンド幅の要
求に関しての第3の予測機能が用いられる。
【0060】ここで述べた資源、すなわちCPUパワ
ー,メモリ,バンド幅とは、プリンタ10が備える資源
の中で代表的なものである。これ以外の資源に対して
も、対応する予測機能を用いて、CPU41で資源の利
用を予測することができる。ステップS606では、予
測結果に基づいて、現在のバンドのDART表現をバン
ドラスタのフルラスタ画像に展開する際に必要となる資
源が得られるかどうかを、CPU41が判断する。な
お、このステップS606の処理はDART表現が生成
されるたびに実行することも、あるいはすべてのバンド
のDART表現が生成された時点で実行することもでき
る。DART表現に対してメモリ資源が足りないかどう
かを判断する場合には、ステップS606の処理を周期
的に、例えば新たなDART表現オブジェクトが生成さ
れるごとに実行することが好ましい。ステップS606
において現在のバンドを展開するのに必要な資源が十分
に得られるとCPU41が判断した場合には、処理をス
テップS607に進め、現在のページに他のGL符号が
あるかどうかをCPU41が調べる。ページに他のGL
符号が存在する場合には、処理をステップS603に戻
し、残りの画像データの処理を実行する。
【0061】ページ中のすべてのバンドに対するDAR
T表現が生成されると、ステップS607からステップ
S608に処理を進め、2つの空白バンドラスタをメモ
リ44に蓄えられているDART表現に付加する。処理
がこのステップに進んだ場合には、プリンタの資源が、
DART表現をバンドごとにフルラスタ画像に展開する
のに十分であることが確認されており、プリンタ資源の
範囲を越える危険性はない。すなわち、CPUパワーが
十分であり、プリンタエンジンにおいてデータのアンダ
ーフローは生じない。
【0062】ステップS610では、図14において説
明したように、バンドごとにDART表現を2つのバン
ドラスタのうちの1つに交互に展開する。次いで、ステ
ップS611で、転送部47がラスタ画像をプリンタエ
ンジン45に転送する。ステップS610とS611と
は、図14において説明したように、同時にそして逐次
的に実行される。すなわち、転送部47において1つの
バンドラスタ画像を1つのバンドラスタから転送し終え
た時点で、レンダー部46では他のバンドのDART表
現を他のバンドラスタに展開する処理が終了する。
【0063】なお、2個以上の空白バンドラスタを用い
ることも可能で、この際にはレンダー部46における展
開処理は転送部47の固定数分のバンドの転送以前に終
了する。現在のページが出力されると、あるいはステッ
プS610とS611の展開処理と転送処理中にCPU
時間がとれると、図15の全体の処理の流れにしたがっ
てCPU41は次のページの処理に進む(ステップS6
12)。
【0064】ステップS606において、プリンタ資源
が不十分であるとCPU41が判断した場合には、現在
のDART表現を展開して蓄積するのに必要な資源がプ
リンタが持つ資源以上であることがわかる。そこで処理
をステップS613に進め、CPU41が資源の再割り
当てを行い、プリンタ資源の範囲内に収まるようにDA
RT表現を修正する。まず、障害となるバンドに対し
て、別のDART表現を選択する。例えば、メモリ資源
が足りなければ、多くのメモリを必要とするDART表
現を比較的少ないメモリで良い別の表現に変更する。同
様に、CPU資源が足りない場合には、CPUを多く必
要とするDART表現を比較的少ないCPUで実行可能
な別の表現に変更する。例えば、障害となるバンドに対
して前もってラスタリングしてメモリ44に記憶するこ
とで、さらなるCPU処理を行うことなくプリンタエン
ジンに出力することができる。
【0065】ステップS614では、別のDART表現
を用いたときに必要となる資源を再予測する。ここで、
必要となる資源が資源の範囲内で収まる場合には、処理
をステップS607に進め、上述の処理を実行する。一
方、必要となる資源がプリンタ資源の範囲以上であると
きには、必要となる資源をプリンタ資源の範囲内に収め
る処理をさらに行う(ステップS613とS614)。
【0066】これに対して、DART表現を資源の範囲
内に収めることができない場合には、出力に先立ち画像
を変化させる処理を行う。画像を変化させることで、自
動的に必要となる資源を減らすことができる。ここでの
実施例では、解像度(あるいは画素密度)を600dp
iから300dpiに減少させることで画像を変化させ
る。画像を変化させる方法としては、この他にもいくつ
かの手法が考えられる。例えば、中間調画像の場合に
は、グレイ階調の数を減少させることで画像を変化させ
ることができる。また、カラー画像の場合には、カラー
の数を減らして画像の変化を図ることができる。
【0067】ステップS616では、解像度を減少させ
る準備として、メモリ44中のすべてのページに対する
処理を終了させる。すなわち、これまでのページのDA
RT表現をステップS610とS611のように展開し
て転送する。ステップS617では、DARTコード生
成部43ですでに生成されているDART表現を展開し
て、画像の解像度を減少させる。DART表現はメモリ
44のもとの位置に低解像度で展開される。また、処理
されていないGLはメモリ44で変化ラスタ画像に変換
される。このような変換処理は、変化ラスタ画像への直
接的変換、もしくはDART表現を生成してから展開す
るという間接的変換のどちらかで行われる。ステップS
618では、転送部47において変化したラスタ画像を
プリンタエンジンに転送する。この際、画像の変化処理
が必要な場合には、変化の影響を最小にするために何ら
かの画像強調処理を施すことが好ましい。例えば、解像
度を減少させる場合には、変化した画像を転送する際に
(米国特許番号4,878,068に示されるような)
平滑化回路を用いて、出力された画像の画質向上を図る
ことが好ましい。ステップS619では、次のページに
対して同様の処理(変化処理は除く)を行う。
【0068】ステップS613からS619までの処理
は、DART表現に十分な資源が得られるように資源の
再割り当てを繰り返し試みる処理である。しかし、資源
再割り当ての最も簡潔な方法として他の好適な実施例と
しては、資源が足りないと判断された時点で直接画像を
変化させる手法がある。すなわち、カラー,グレイ階
調,画素密度(すなわち解像度)を変化させる手法であ
る。例えば、600dpiラスタ画像に展開される白黒
画像の場合には、解像度を300dpiまで減少させる
と、メモリ44にフルラスタ画像を蓄積することができ
る。この場合、DART表現は画像データの変化したフ
ルラスタ画像に変換され、フルラスタ画像が転送部47
を介してプリンタエンジンに転送される。この際にも、
(米国特許番号4,878,068に示されるような)
画像平滑化手法を用いて、低解像度画像の画質を改善す
ることもできる。
【0069】図16は資源が足りないと判断された時点
で直接画像を変化させる処理の流れを示す図である。図
16において、ステップS601からS604は図15
と同一の処理であり、ここでの説明は省略する。ステッ
プS605では、DART表現をフルラスタ画像に展開
するのに必要な資源を予測する。図15の実施例と同様
に、DART表現ごとに、CPUパワー,メモリ使用
量,バンド幅などの予測を行う予測機能を備える。ま
た、変化画像をビットマップメモリにラスタリングする
のに十分なメモリがあることを確かめるために(変化が
必要な場合には)、フルビットマップ画像を低解像度で
ラスタリングするのに必要なメモリ使用量を予測する。
【0070】ステップS607からS608は図15と
同一の処理であり、ここでの説明は省略する。ステップ
S606において、必要となる資源が足りないと判断さ
れた場合には、あるいはフルビットマップ画像を低解像
度でラスタリングするのに必要なメモリ量が不足すると
判断された場合には、画像を直接変化させて、必要とな
る資源をプリンタ資源の範囲内に収める。この画像の変
化処理は、ステップS620,S621,S622,S
623で行われる。なお、これらはそれぞれ図15のス
テップS616,S617,S618,S619と同一
の処理である。
【0071】<DART表現の予測機能>以下、種々の
好適な画像のDART表現ならびに各表現に対応する予
測機能について説明を加える。表現で用いるプリミティ
ブはオブジェクトと背景との2つである。DART表現
は、これらの様々なオブジェクトの様々な背景への一連
のアプリケーションから構成される。背景はビットマッ
プタイルや画像から成る。ビットマップタイルは変換部
42からのGL画像表現から得られる。カラーのビット
マップタイルへのマッピングは、カラーをそれぞれのタ
イルのカラー面にマッピングすることで行われる。一
方、画像は画像表現であり、展開と予測処理とを高速に
行うために最適化されている。ラスタ表現で用いられる
オブジェクトプリミティブは、これのフルラスタ画像へ
の展開が信頼性高くまた精度良く予測できるという点で
好ましい。オブジェクトプリミティブの好ましい組とし
て、ビットマップ,ランレングスシーケンス,台形シー
ケンス,ボックス,高速境界符号ビットマップが挙げら
れる。これらのオブジェクトの各々に対して、以下で詳
細に定義する。
【0072】図17は、DART符号の画像表現をフル
ラスタビットマップに展開するアプリケーションを示す
図である。図17では、タイルあるいは画像で定義され
る背景がアプリケーションマシーンに入力される。ま
た、ビットマップ,ランレングス,台形,ボックス,高
速境界符号マップなどのオブジェクトもアプリケーショ
ンマシーンに入力される。アプリケーションマシーン
は、対象バンドのビットマップ中の特定の領域で背景上
にオブジェクトを適用し、ビットマップの初期ラスタを
図17に示す処理後のラスタに変換する。このアプリケ
ーションマシーンは、第1実施例のラスターOPマシー
ンに相当する。
【0073】それぞれのDARTオブジェクトごとに異
なる展開手法が用いられ、各展開手法はDARTオブジ
ェクトをできるだけ効率良く展開するように構成されて
いる。展開手法は制御部のCPUの速度と符号のコンパ
クトさに応じて最適化されていることが好ましい。適切
な展開手法は、Addison-Wesley社から1987年に発行され
たForley, vam Dam, Feiner and Hughesの「Computer G
raphics: Principlesand Practice」(第2版)に示さ
れている。
【0074】DART表現の予測部は、DART表現を
記憶するのに必要なメモリと、DART表現を展開する
のに必要な時間(CPUパワー)とを予測する。一般
に、画像中のi番目のバンドを展開しているときのDA
RT表現を記憶するのに必要なメモリ量は、
【0075】
【数1】
【0076】で表わされる。ここで、Bandsizek はk番
目のバンドを展開し終えたときに解放されるメモリ量、
BandRasterSizeはページメモリの最後に付加されるフル
ラスタされたバンドラスタサイズ、nは現在記憶してい
るDARTオブジェクトのバンド数である。CPU41
はこのメモリ量が利用可能なメモリ量を越えないことを
確認する。また、高解像度で出力するのに必要な資源が
足りない場合に画像を低解像度で展開するといった図1
6のような実施例では、CPU41は必要なメモリ量が
低解像度で画像を展開するのに必要なメモリ量以下であ
ることを確認する。すなわち、
【0077】
【数2】
【0078】を求める。ここで、BandRasterSizeDegrad
edは低解像度でのバンドラスタサイズである。DART
表現を展開するのに必要な時間(CPUパワー)の予測
に関しては、展開処理がオブジェクトと背景の2つを生
成する処理、ならびにオブジェクトと背景とのラスタへ
のアプリケーションとを含むため、展開に要する時間は
これらの処理時間の和として求められる。そこで、予測
部ではこれらの点を考慮して予測を行う。実際には、展
開処理におけるシステムオーバーヘッド処理を考慮して
オーバーヘッド係数をさらに加える。
【0079】以下、オブジェクトとそれに関連した予測
処理について詳細に説明する。一般に、CPUパワーの
予測式は、
【0080】
【数3】
【0081】のように表わされる。ここで、Applicatio
nTime はDARTオブジェクトの適用に要する時間、Ba
ckgroundTimeは背景を展開するのに要する時間、Overhe
adFactorはシステムオーバーヘッド処理を考慮した上述
のオーバーヘッド係数である。ここで、BackgroundTime
は展開される背景領域に関係し、また背景の種別と展開
手法にも関係する値である。
【0082】ビットマップオブジェクトは、その名の通
り、単なるオブジェクトのビットマップラスタ画像であ
る。したがって、図18に示されるように、オブジェク
ト71は、IDラベル(ID LABEL)とオブジェクト71の
ビットマップラスタ画像とから成る。ビットマップオブ
ジェクトの部位72のバンドへのアプリケーションも、
図18に示されている。図示のように、オブジェクトの
開始点から距離dispの位置から始まるバンド上にオブジ
ェクトが適用され、バンド内の位置by,xにhtの高
さで展開される。73がアプリケーションであり、オブ
ジェクトが適用される背景を定義するモード定義MOD
E、オブジェクトが適用されるバンド内の座標x,b
y、オブジェクトが適用される高さhtとが含まれる。
さらに、オブジェクトのIDラベルと、オブジェクト内
の距離DISPも指定されている。
【0083】ビットマップアプリケーションを展開する
のに必要なCPUパワーの予測式は、
【0084】
【数4】
【0085】で行われる。ここで、N1 はビットマップ
オブジェクトの各列を展開するのに必要なCPUサイク
ル数に関連する実行係数である。図19はランレングス
オブジェクトを示した図である。ランレングスオブジェ
クトはセグメントに分割して記述され、各セグメントは
連続するスキャンラインを記述し、各スキャンラインは
1つのランレングスから構成される。すなわち、図19
に示されるように、ランレングスオブジェクト81はセ
グメント1からセグメント4までを含む。
【0086】82はランレングスオブジェクトのDAR
T表現を示したものである。オブジェクトには、IDラ
ベル(ID LABEL)と、セグメントの展開時間の予測に関す
る情報を含むセグメント番号とが含まれる。この情報は
予測処理において用いられる。なお、各セグメントは所
定数までのランレングスを記述したものであり、各セグ
メントはバイト単位に配置される。
【0087】セグメントでは連続するランレングスをセ
グメント状態を順々に変えた異なる形で定義する。ここ
で、セグメント状態は2つの境界状態(左と右)の対か
ら構成される。また、各輪郭は位置値xと更新値dxか
ら構成される。セグメントの開始位置では、 xl0 =dxl0 =Xr0 =dxr0 =0 である。
【0088】各スキャンラインiごとにセグメントは更
新ステップ(stepi =<advli,advri>)を定義して、以下
のように更新する。
【0089】
【数5】
【0090】図19は、ランレングスオブジェクト81
の部位のバンド84へのアプリケーションも示してい
る。図示のように、バンド84内の位置by,xにラン
レングスオブジェクトの部位82が高さhtまで適用さ
れる。このアプリケーションを符号化した表現が83に
示されているが、ランレングスオブジェクトが展開され
る背景の種類を定義するモード(MODE)が含まれている。
さらに、X,by,htの座標情報、IDラベル、セグ
メントインデックスからのセグメント(DESEG) 、セグメ
ントの開始位置からのオフセット(DOFF)が含まれる。
【0091】ランレングスオブジェクトを展開するのに
必要なCPUパワーの予測式は、
【0092】
【数6】
【0093】で行われる。ここで、パラメータN2 ,N
3 はビットマップオブジェクトと同様のパラメータであ
る。図20は台形オブジェクトを示す図である。台形オ
ブジェクトは、ランレングスオブジェクトとは異なり分
割されていない。これは、台形シーケンスを通常繰り返
して用いることはないと考えられるためである(台形オ
ブジェクトは大きなラスタ領域を記述するオブジェクト
である)。
【0094】各オブジェクトは連続するスキャンライン
を記述し、各スキャンラインは1つのランレングスから
構成される。台形シーケンスでは連続するラン長をDD
Aアルゴリズムで記述する。状態は2つの境界状態(左
と右)の対とから構成される。また、各輪郭状態は位置
xと傾きとから構成される。
【0095】台形シーケンスの開始位置は、 xl = slope l = xr = slope r = 0 である。オブジェクトはアクションのシーケンスとして
定義される。ここでのアクションは「修正」と「ペイン
ト」とのどちらかである。「修正」アクションはペア modify = <modx, modslope> として示され、以下のように状態を更新する。
【0096】
【数7】
【0097】「ペイント」アクションはランレングスの
繰り返し数を定義するもので、以下のステップを定義さ
れた回数繰り返す。
【0098】
【数8】
【0099】繰り返し数がゼロの「ペイント」アクショ
ンは台形シーケンスの終わりを示す。図20は、台形オ
ブジェクトの部位92のバンド94へのアプリケーショ
ンをも示している。図示されているように、部位92は
バンド中の位置by,xに高さhtまで適用される。ア
プリケーションは93に示されているが、オブジェクト
が適用展開される背景を定義するモード(MODE)、バンド
中のx,by,ht座標情報が含まれる。また、オブジ
ェクトのIDラベル(ID LABEL)も含まれる。台形オブジ
ェクトは分割されたオブジェクトではなく、台形全体が
距離htに展開されるため、これ以外の情報は必要な
い。
【0100】台形アプリケーションを展開するのに必要
なCPUパワーの予測は、
【0101】
【数9】
【0102】で行われる。ここで、N4 ,N5 ビットマ
ップオブジェクトと同様のパラメータである。図21は
ボックスオブジェクトを示す図である。長方形ボックス
は多く見られるオブジェクトであり、最適化された表現
となっている。ここでは、図示の通りアプリケーション
自身がボックスを定義するため、それ自体のオブジェク
トは必要ない。
【0103】ボックスオブジェクトのバンド124への
アプリケーションも図21に示されている。図示の通
り、ボックスオブジェクトは位置by,xにバンド中の
高さht,幅wまで適用される。アプリケーションは1
23に示されているが、ボックスが適用される背景を定
義するモード(MODE)や、展開座標x,by,htを含
む。空白ワードの後に、ボックスの幅(WIDTH) が指定さ
れる。
【0104】ボックスオブジェクトを展開するのに必要
なCPUパワーの予測式は、
【0105】
【数10】
【0106】で行われる。ここで、N6 はビットマップ
オブジェクトと同様なパラメ−タである。図22は、高
速境界符号(FBE)オブジェクトを示す図である。F
BEセグメントは連続するスキャンラインを定義するも
ので、各スキャンラインは複数のランレングスから構成
される。
【0107】ここでも、セグメントインデックスは展開
時間の予測に関する情報(dt-fbePred-t記録)を含み、
予測処理で用いられる。なお、ここでの情報はランレン
グスオブジェクトのものに比べて大きいものとなる。セ
グメントでは連続するランレングスをセグメント状態を
順々に変えた異なる形で定義する。
【0108】ここで、セグメント状態は複数の境界状態
から構成される。また、各輪郭は位置値xと更新値dx
から構成される。セグメントの開始位置では、 x[k]=dx[k]=0(kの全ての値で) である。
【0109】また、セグメントはコマンド列であり、以
下の中から選択される。 adv:RLDeqsの場合に当該輪郭を進める。 close:次の2つの輪郭を削除する。 open:現在の輪郭と次の輪郭との間に2つの新しい
輪郭を挿入する。 各スキャンラインiごとにセグメントは更新ステップ step i = <line change,comm1,comm2,…,commn> を定義し、セグメント状態を変換するのに用いる。ここ
で、Linechangeは前のスキャンラインに対する輪郭ペア
数の変更(増加あるいは減少)、あるいはセグメント境
界のリセットを指定するものである。また,comm1,comm
2,...,commn はlinechangeに応じて輪郭数を変更するコ
マンドである。linechangeで輪郭ペア数が負になると、
セグメントの終わりと判断される。
【0110】図22は、FBEオブジェクト131の部
位132のバンド134へのアプリケーションも示して
いる。図22に示されるように、位置by,xのバンド
内に部位132が、セグメント3の開始位置からのオフ
セットdoffから高さhtまで適用される。アプリケ
ーションは116に示されているが、FBEオブジェク
トが適用される背景の種類を定義するモード(MODE)が含
まれている。さらに、X,by,htの展開座標、オブ
ジェクトのIDラベル(ID LABEL)、展開されるセグメン
ト(dseg)、セグメントの開始位置からのオフセット(dof
f)が含まれる。
【0111】FBEオブジェクトを展開するのに必要な
CPUパワーは、各セグメントに必要なCPUパワーの
和として予測される。ここで、各セグメントごとのCP
Uパワーは展開されるラン長の数とセグメントの高さに
基づいて決定される。
【0112】
【発明の効果】本発明により、プリンタ内の資源をより
効率的に利用することで、利用可能な物理的な資源を増
加させることなくプリンタの性能を向上させることがで
きる。また、装置に依存しないPDLコマンドを対応す
るラスタ画像に変換するPDLインタプリタをプリンタ
ごとに個別に用意する必要をなくし、汎用性を高めるこ
とができる。
【0113】[付録A]グラフィックス言語コマンド命令セット 本付録はGLコマンド命令セットをまとめたものであ
り、システムへの作用や動作意味などの観点から命令を
定義したものである。以下の表記はグラフィックスプロ
セッサが実行するスタック操作を示している。
【0114】命令 arg1,arg2,...,argn 命令 resul
t1,...,resultk ここで、列 arg1,arg2,...,argn は命令が用いるスタッ
ク(argnが最上位)上の変数リストである。命令を実行
すると、変数リストは結果の列 result1,...,resultk
置き換えられる。 <算術ならびに関係演算>システムスタック上で算術演
算や関係演算を実行する際に、これらの命令を用いる。
【0115】add number1 number2 gsop.add number
(= number1 + number2)…加算 sub number1 number2 gsop.sub number (= number1
- number2)…減算 mul number1 number2 gsop.mul number (= number1
* number2)…乗算 div number1 number2 gsop.div number (= number1
/ number2)…除算(整数) mod number1 number2 gsop.mod number (= number1
mod number2)…法演算 neg number gsop.neg number (= -number)…負演算 shright number1 number2 gsop.shright number(= n
umber1 >> number2)…右シフト shleft number1 number2 gsop.shleft number(= num
ber1 << number2)…左シフト <他の算術/関係命令>GLコマンドは、ベクトル計算
(固定座標)や必要となる三角関数(高速近似)など、
複数の拡張演算を備えている。
【0116】<スタック操作>これらの演算はシステム
スタックを操作するためのものである。 loadq_o gsop.loadq_0 num(=0) loadq_1gsop.loadq_1 num(=1) loadq_2gsop.loadq_2 num(=2) loadq_3gsop.loadq_3 num(=3) loadq_4gsop.loadq_4 num(=4) loadq_5gsop.loadq_5 num(=5) loadq_6gsop.loadq_6 num(=6) loadq_7gsop.loadq_7 num(=7) システムスタックを高速にロードして最も頻繁に用いる
算術値を取り出すためには、高速ロードファミリ命令を
用いる。
【0117】pop anyvalue gsop.pop…スタックのト
ップの削除 dup anyvalue gsop.dup anyvalue anyvalue…スタ
ックのトップの複製 exch anyvalue1 anyvalue2 gsop.exch anyvalue2 an
yvalue1…スタックのトップ2つのセルの交換 <他のスタック操作命令>GLコマンドは、インデック
スやコピーなどのスタック操作のための拡張演算を複数
備えている。
【0118】<記録>永続的な情報を記録するために記
録命令を用いる。記録中の情報は配列として構造化され
ている。グラフィックス言語コマンドはGLオブジェク
ト記憶中のGLオブジェクトとして記録する(以下参
照)。現記録という概念を設けることで、GLコードを
圧縮して記録することができる。すなわち、オブジェク
トを現記録として宣言すると、すべてのロードや記録演
算はそのオブジェクトに対して行われる。
【0119】各フレームのはじめに、システムはデフォ
ルト記録を有する。 record object|d| gsop.record…オブジェクトobject
|d| を現記録とする。 load displ gsop.load…記録位置displ のメモリ内
容をスタックにプッシュする store value displ gsop.store…スタックのトップ
のvalue を記録位置displ にポップする <配列操作>これらの命令は配列を生成し、スタック上
の配列要素にアクセスするものである。
【0120】<オブジェクト操作>これらの命令はGL
オブジェクトを生成し、操作するものである。 objdelete objHandle gsop.objdelete…メモリから
オブジェクトHandleを削除する objmke objHandle size gsop.objcopy…オブジェク
トHandleに対して「削除」処理を実行し、サイズsizeの
新たなオブジェクトを生成する markarray gsop.markarray + n + b1 + ... + bn inl
ineHandle markbitmap gsop.markbitmap + n + b1 + ... + bn i
nlineHandle marktrap gsop.marktrap + n + b1 + ... + bn inlin
eHandle markproc gsop.markproc + n + b1 + ... + bn inlin
eHandle これらの命令はinlineオブジェクトを宣言し、今後の参
照を鑑みてスタックトップへのinlineHandle操作を残
す。
【0121】objdef inlineHandle objHandle gsop.o
bjdef…オブジェクトobjHandle に対して「削除」処理
を実行し、指定サイズの新たなオブジェクトを生成し、
inlineHandleの内容を新たなオブジェクトにコピーす
る。 <制御>これらの命令はGLプロセッサの実行処理の流
れを制御するものである。
【0122】call executableArray gsop.call…操作
executableArray によって示される処理を呼び出す。 return gsop.return…現在処理中の処理から実行処理
の流れを戻す。GLプロセッサが処理実行中でない場合
には、この命令により現フレームの処理が終了する。
【0123】if bool execArraytrue gsop.if if else bool execArraytrue execArrayfalse gsop.ifelse …これらの演算は、値bool(ゼロが偽、非ゼロが真)に
基づいて実行する処理を適宜変更する。
【0124】loop number execArray gsop.loop…exe
cArray をnumber回繰り返して実行する。負の繰り返し
回数は無限ループを示す。 break gsop.break continue gsop.continue …現在実行中のループのブレークあるいは続行である。
【0125】switch number gsop.switch…ケース値n
umberに基づいてそれぞれ別のプログラム部位を実行す
る。ケース値はB={0〜255}に制限されている。 <内容操作> context contextNumber gsop.context…現在の内容を
contextNumber にセットする。可能な内容の数は固定さ
れている。
【0126】contexDef executableArray contextNumb
er gsop.contextDef…処理executableArray ごとに内
容contextNumber を定義する。内容処理はswitch文を含
み、コードをアクションにマップするために用いられ
る。 <処理定義>処理は単なる実行可能な配列である。処理
操作は配列操作あるいはオブジェクト操作である。 <システムサービスアクセス>システムサービスは、シ
ステム処理操作が特別なセットである場合以外は、通常
の処理のようにアクセスされる。
【0127】<マスク生成>これらの命令はGLからの
プリミティブマスク生成部を起動する。すべての生成部
を起動する前に、GLプログラムは生成部パラメータに
対応する状態情報をセットしなければならない。 PixelBit bitmapHandle x y gsop.PixelBit…画素ビ
ット演算bitmapHandleを位置<x,y>で実行する。
【0128】Trapezoid trapezoidHandle gsop.Trape
zoid…台形マスク生成部を起動する。 RLE gsop.RLE…ランレングス符号マスク生成部を起動
する。 <ライン生成マスク>これらの命令はライン展開のため
にマスク生成部を起動する。
【0129】これらのマスク生成部はGL状態変数を用
いて、位置、ライン幅などを間接的に定義する。 <入力列へのアクセス>この種類のプリミティブ要素は
入力列にアクセスし、スタックあるいは配列スタックに
オブジェクトを生成する。
【0130】getc1 gsop.getc1 num (= b1) getc2 gsop.getc2 num (= (b1 << 8) + b2) getc3 gsop.getc3 num (= (((b1 << 8) + b2) << 8)
+ b3) getc4 gsop.getc4 num (= ((((b1 << 8) + b2) << 8)
+ b3) << 8) + b4) …入力列から次の1から4バイト(b1,b2,b3,
b4)を取り込み、スカラー整数値としてスタック上に
プッシュする。
【0131】<背景生成> image a b c d e f image gsop.Image…背景画像配列
として画像をセットする。変換係数[a b c d
ef]はラスター画素の画像配列要素へのマッピングを
示す。 image 0 gsop.Image…背景画像配列を空にリセットす
る。
【0132】gray grayLevel gsop.gray…背景をレベ
ルgrayLevel のグレイにセットする。 betile bitmapHandle gsop.bgtile…bitmapHandleで
もってタイルすべき背景をセットする。 bgmodify offsetX offsetY rotation gsop.bgtile…
背景タイルを<offsetX,offsetY >だけシフトさせて、
rotationの角度分回転させて修正する。
【0133】<状態演算> screen objHandle gsop.screen…objHandle のディザ
画面をセットする。 clip trapHandle gsop.clip…trapHandleをクリッピ
ング領域に付加する。
【0134】clip 0 gsop.clip…クリッピング領域を
ゼロにする。 <プラグマティクス>GLインタプリタはこの種類の命
令を無視する。この語用命令は他のサブシステムやツー
ル(デバッグツール、生成ライブラリなど)において用
いられるものである。
【0135】 pragma gsop.pragma + {n} + b1 + b2 ... + bn GLインタプリタはこの命令を構成する(n+2)バイ
トを無視する。命令pragmaはコメントとして、デ
バッグ目的の同期タグとして、グループタグなどとして
用いる。
【図面の簡単な説明】
【図1】ビットマップ・ラスタメモリへの画素のラスタ
ライズ処理を示す図である。
【図2】PDLプリンタの処理を説明する図である。
【図3】本実施例のプリンタの構成を示す図である。
【図4】本実施例のグラフィックス言語プロセッサを示
す図である。
【図5】本実施例におけるページ記述言語とグラフィッ
クス言語との間のインタフェースを説明する図である。
【図6】マスクがラスタ上の背景に適用される様子を説
明する図である。
【図7】本実施例のグラフィックス言語プロセッサにお
けるマスク生成部と背景生成部とを詳細に示す図であ
る。
【図8】逐次型のグラフィックス言語プロセッサの構成
を示す図である。
【図9】バンド分割型のプロセッサの構成を示す図であ
る。
【図10】パイプライン型のプロセッサの構成を示す図
である。
【図11】プリントサイクル中のCPUとメモリの利用
率を示す図である。
【図12】プリントが利用可能な資源の範囲を示すグラ
フ図である。
【図13】図3のプリンタの制御部の構成例を示すブロ
ック図である。
【図14】図3のプリンタにおけるメモリ構成例を説明
する図である。
【図15】図3のプリンタの処理手順例の流れを示すフ
ローチャートである。
【図16】図3のプリンタの処理手順例の流れを示すフ
ローチャートである。
【図17】本実施例の符号化画像表現例を説明する図で
ある。
【図18】図17に示されるオブジェクト画像例を説明
する図である。
【図19】図17に示されるオブジェクト画像例を説明
する図である。
【図20】図17に示されるオブジェクト画像例を説明
する図である。
【図21】図17に示されるオブジェクト画像例を説明
する図である。
【図22】図17に示されるオブジェクト画像例を説明
する図である。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 G06F 15/72 G 9192−5L

Claims (190)

    【特許請求の範囲】
  1. 【請求項1】 プリント処理の開始に先立って必要とな
    る資源を予測し、予測結果に基づいて適応的にプリント
    処理を変更することを特徴とするプリント装置。
  2. 【請求項2】 前記プリント処理はプリントデータの符
    号化表現をラスタ画像に展開する処理を含み、前記予測
    処理は符号化表現に基づいて行われることを特徴とする
    請求項1記載のプリント装置。
  3. 【請求項3】 前記プリント処理は予測結果に基づいて
    適応的に画質を変化させることを特徴とする請求項1記
    載のプリント装置。
  4. 【請求項4】 プリント処理において必要となる資源を
    予測する予測手段と、 該予測手段によって予測された資源がプリント装置の資
    源の範囲内であるか否かを判断する判断手段と、 前記判断手段によってプリント処理に必要な資源が足り
    ないと判断された場合には、プリント処理を変更する変
    更手段とを備えることを特徴とするプリント装置。
  5. 【請求項5】 プリント処理中に画像の符号化表現を形
    成する手段をさらに備え、符号化表現をフルラスタ画像
    に展開する間に前記予測処理が必要となる資源を予測す
    ることを特徴とする請求項4記載のプリント装置。
  6. 【請求項6】 プリント処理はプリント情報の各ページ
    中のバンドごとに行われ、前記予測手段は必要となる資
    源を各バンドごとに予測することを特徴とする請求項4
    記載のプリント装置。
  7. 【請求項7】 前記変更手段に基づくプリント処理の変
    更に応じて前記予測手段は必要となる資源を再予測し、
    前記変更手段は該予測手段によって予測された資源がプ
    リンタ資源の範囲内に収まるまでプリント処理を繰り返
    し変更することを特徴とする請求項4記載のプリント装
    置。
  8. 【請求項8】 前記変更手段は前記プリンタでプリント
    される画像の質を変化させてプリント処理を変更するこ
    とを特徴とする請求項4記載のプリント装置。
  9. 【請求項9】 解像度を変化させることを特徴とする請
    求項8記載のプリント装置。
  10. 【請求項10】 カラー解像度もしくは中間調レベル数
    を減少させることを特徴とする請求項8記載のプリント
    装置。
  11. 【請求項11】 一定の速度でプリント情報をスキャン
    してプリントするプリンタエンジンと、少なくとも一部
    のプリント情報を一定速度で出力することのできるビッ
    トマップメモリとをさらに備えることを特徴とする請求
    項4記載のプリント装置。
  12. 【請求項12】 前記予測手段は、画像を前記ビットマ
    ップメモリに生成するのに必要となる演算能力、画像を
    記憶するのに必要となるメモリ量、画像をビットマップ
    メモリに転送するのに必要となるバンド幅のうちの少な
    くとも1つを予測することを特徴とする請求項11記載
    のプリント装置。
  13. 【請求項13】 一定速度でプリント画像をスキャンし
    て生成するプリンタエンジンと、 少なくとも第1部位と第2部位とに適応的に分割される
    メモリであって、第1部位はプリント画像の符号化表現
    を記憶し、第2部位は少なくとも一部分のラスタ画像を
    記憶するようなメモリと、 入力画像データをプリント画像の符号化表現に翻訳し、
    符号化表現をメモリの第1部位に記憶するような翻訳手
    段と、 該メモリの第1部位中に記憶されている符号化表現をフ
    ルラスタ画像に展開するのに必要な資源を予測する予測
    手段と、 該メモリの第1部位中に記憶されている符号化表現をラ
    スタ画像として該メモリの第2部位に展開する展開手段
    とを備えることを特徴とするプリント装置。
  14. 【請求項14】 前記予測手段によって符号化表現をフ
    ルラスタ画像に展開するのに必要な資源が足りないと判
    断された場合には、プリント処理を変更する変更手段を
    さらに備えることを特徴とする請求項13記載のプリン
    ト装置。
  15. 【請求項15】 前記変更手段は、必要となるプリンタ
    資源が異なるように符号化表現を別の表現に変更するこ
    とを特徴とする請求項14記載のプリント装置。
  16. 【請求項16】 前記変更手段はプリント解像度を変化
    させることを特徴とする請求項14記載のプリント装
    置。
  17. 【請求項17】 前記変更手段はカラー解像度もしくは
    中間調レベル数を減少させることを特徴とする請求項1
    4記載のプリント装置。
  18. 【請求項18】 前記予測手段は、少なくとも符号化表
    現をラスタ画像に展開するのに必要な演算能力と、符号
    化表現を記憶するのに必要なメモリ量とを予測すること
    を特徴とする請求項13記載のプリント装置。
  19. 【請求項19】 前記翻訳手段によって翻訳される画像
    データを入力する入力手段をさらに備えることを特徴と
    する請求項13記載のプリント装置。
  20. 【請求項20】 画像データはページ記述言語で入力さ
    れることを特徴とする請求項19記載のプリント装置。
  21. 【請求項21】 前記メモリの第1部位は符号化表現を
    バンドごとに記憶し、前記メモリの第2部位は対応する
    バンド情報のラスタ画像を記憶することを特徴とする請
    求項13記載のプリント装置。
  22. 【請求項22】 前記翻訳手段は入力画像データをバン
    ドで翻訳することを特徴とする請求項21記載のプリン
    ト装置。
  23. 【請求項23】 前記予測手段はプリント情報の各バン
    ドごとに必要となる資源を予測することを特徴とする請
    求項22記載のプリント装置。
  24. 【請求項24】 前記判断手段によって資源が足りない
    と判断された場合には、前記展開種手段はフルラスタ画
    像を前記メモリの第1部位と第2部位のもとの位置に展
    開することを特徴とする請求項23記載のプリント装
    置。
  25. 【請求項25】 前記翻訳手段は入力情報をバンド符号
    化ラスタ表現に翻訳し、前記判断手段が前記プリンタエ
    ンジンの一定速度に対応する所定の時間間隔でバンド情
    報を展開するのに必要な演算能力が足りないと判断した
    場合に、該展開手段がバンドを前記メモリの第3部位に
    前もってラスタリングすることを特徴とする請求項13
    記載のプリント装置。
  26. 【請求項26】 前記予測手段によって符号化表現の方
    が対応するラスタ画像以上にメモリ量を必要とすると判
    断された場合には、前記変更手段がプリント処理を変更
    することを特徴とする請求項13記載のプリント装置。
  27. 【請求項27】 前記判断手段によって1つのバンド情
    報に必要な資源が足りないと判断された場合には、それ
    以外のバンドはそのままで、当該バンド情報のみを変化
    させることを特徴とする請求項13記載のプリント装
    置。
  28. 【請求項28】 前記表現は、ビットマップオブジェク
    ト,ラン長オブジェクト,台形オブジェクトボ,ックス
    オブジェクト,固定境界符号オブジェクトの少なくとも
    1つから成ることを特徴とする請求項13記載のプリン
    ト装置。
  29. 【請求項29】 前記展開手段は、アプリケーション機
    能によって、オブジェクトを背景に対して適用して、表
    現のラスタライズを行うことを特徴とする請求項28記
    載のプリント装置。
  30. 【請求項30】 第1部位と第2部位とに適応的に分割
    されるメモリであって、第1部位は画像データの符号化
    表現を記憶し、第2部位は少なくとも1つのバンドのラ
    スタ画像データを記憶するメモリと、 複数のバンドの各画像データを画像の符号化表現に翻訳
    し、該メモリの第1部位に符号化表現を記憶する手段
    と、 前記メモリの第1部位に記憶されている符号化表現に基
    づいて、バンド符号化表現を展開するのに必要な資源を
    予測する予測手段と、 前記予測手段によって必要となる資源がプリンタ資源で
    は足りないと予測された場合に、該メモリの第1部位の
    符号化表現を変更する手段と、 前記メモリの第1部位に記憶されている符号化表現のバ
    ンドをラスタ画像データのバンドに展開し、該ラスタ画
    像データのバンドを該メモリの第2部位に記憶する展開
    手段と、 少なくとも該メモリの第2部位に記憶されているラスタ
    画像データをプリントするプリンタエンジンであって、
    該プリンタエンジンは一定速度でラスタ画像データのバ
    ンドをプリントするプリンタエンジンとを備えることを
    特徴とするプリンタ。
  31. 【請求項31】 入力画像データをページ記述言語で入
    力する入力手段をさらに備えることを特徴とする請求項
    30記載のプリンタ。
  32. 【請求項32】 前記翻訳手段は、ページ記述言語を、
    ビットマップオブジェクト,ラン長オブジェクト,台形
    オブジェクト,ボックスオブジェクト,固定境界符号オ
    ブジェクトの少なくとも1つを含む符号化表現に変換す
    ることを特徴とする請求項31記載のプリンタ。
  33. 【請求項33】 前記展開手段は、アプリケーション機
    能によってオブジェクトを背景上に対して適用し、画像
    をラスタリングする手段を備えることを特徴とする請求
    項32記載のプリンタ。
  34. 【請求項34】 前記予測手段は、符号化表現を構成す
    るプリミティブに基づいて必要となる資源を予測するこ
    とを特徴とする請求項32記載のプリンタ。
  35. 【請求項35】 前記予測手段は画像の各バンドごとに
    必要となる資源を予測することを特徴とする請求項30
    記載のプリンタ。
  36. 【請求項36】 前記予測手段は、演算能力,メモリ能
    力,バンド幅の少なくとも1つを予測することを特徴と
    する請求項30項記載のプリンタ。
  37. 【請求項37】 前記変更手段は、演算能力の資源が過
    大である場合に、より多くのメモリを用いるような符号
    化表現に変更することを特徴とする請求項36記載のプ
    リンタ。
  38. 【請求項38】 前記変更手段は、前記展開手段でもっ
    てバンド画像データを前もってラスタリングすることを
    特徴とする請求項37記載のプリンタ。
  39. 【請求項39】 前記変更手段は画像の質を変化させる
    ことを特徴とする請求項37記載のプリンタ。
  40. 【請求項40】 前記変更手段は、必要となる資源がプ
    リンタ資源以上となるバンドに対しては少なくとも前記
    展開手段によって画質を変化させることを特徴とする請
    求項39記載のプリンタ。
  41. 【請求項41】 前記変更手段は、前記展開手段によっ
    て全体の画像の質を変化させ、変化させた画像を前記符
    号化表現によってもとの位置に展開することを特徴とす
    る請求項40記載のプリンタ。
  42. 【請求項42】 前記画質の変化は、画素密度,カラー
    解像度,グレイレベル数の少なくとも1つに対して行わ
    れることを特徴とする請求項40記載のプリンタ。
  43. 【請求項43】 前記画質の変化は、画素密度,カラー
    解像度,グレイレベル数の少なくとも1つに対して行わ
    れることを特徴とする請求項41記載のプリンタ。
  44. 【請求項44】 前記展開手段は、前のプリント処理が
    終了するまで変化させた画像の展開を延期することを特
    徴とする請求項41記載のプリンタ。
  45. 【請求項45】 前記予測手段は演算能力,メモリ量,
    バンド幅の少なくとも1つを予測し、前記変更手段はメ
    モリが足りなくなる場合により多くの演算能力を用いる
    ような符号化表現に変更することを特徴とする請求項3
    0記載のプリンタ。
  46. 【請求項46】 前記予測手段は演算能力,メモリ量,
    バンド幅の少なくとも1つを予測し、前記変更手段は演
    算能力やメモリ量が足りなくなる場合により多くのバン
    ド幅を用いるような符号化表現に変更することを特徴と
    する請求項30記載のプリンタ。
  47. 【請求項47】 前記予測手段は演算能力,メモリ量,
    バンド幅の少なくとも1つを予測し、前記変更手段はプ
    リンタ資源の範囲内で前記展開手段によってラスタリン
    グされるような符号化表現に変更することを特徴とする
    請求項30記載のプリンタ。
  48. 【請求項48】 前記展開手段がプリンタ資源の範囲内
    で画像をラスタリングできるように、前記変更手段で符
    号化表現を変更することが不可能な場合には、前記変更
    手段は画像の質を変化させることを特徴とする請求項4
    7記載のプリンタ。
  49. 【請求項49】 前記変更手段が画質を変化させる場合
    には、前記変更手段は画質の変化に先立って前記展開手
    段でもって前のページのラスタリング処理を行うことを
    特徴とする請求項48記載のプリンタ。
  50. 【請求項50】 解像度は、画素密度,カラー解像度,
    グレイレベル数の少なくとも1つを含むことを特徴とす
    る請求項49記載のプリンタ。
  51. 【請求項51】 プリントメモリを監視して、プリント
    する物理ページに対応する前記プリントメモリの部位を
    特定する監視手段と、 前記プリントメモリに画像データのバンドの符号化表現
    を記憶する符号化手段と、 画像データの1ページの符号化処理が終了した時点で、
    画像データのバンドの符号化表現を前記プリントメモリ
    のバンドラスタ部位に展開する展開手段と、 バンドラスタ部位への展開処理が終了した時点で、前記
    プリントメモリのバンドラスタ部位中のラスタ画像デー
    タを一定速度でプリンタエンジンに転送する転送手段と
    を備え、 前記符号化手段は、前記監視手段によって監視されたペ
    ージ位置で画像データの次のページを符号化することを
    特徴とするプリントメモリ・コントローラ。
  52. 【請求項52】 前記展開手段は符号化画像を変化した
    解像度でもとの位置に展開することを特徴とする請求項
    51記載のプリントメモリ・コントローラ。
  53. 【請求項53】 前記展開手段が符号化情報ページをも
    との位置に展開する場合、前記展開手段が符号化画像を
    展開する以前に、前記転送手段がそれ以前のすべてのペ
    ージを転送することを特徴とする請求項51記載のプリ
    ントメモリ・コントローラ。
  54. 【請求項54】 プリント処理の開始に先立って必要と
    なる資源を予測し、予測結果に基づいてプリント処理を
    適応的に変更するプリント方法。
  55. 【請求項55】 前記適応的にプリント処理を変更する
    行程は、プリントデータの符号化表現をラスタ画像に展
    開する行程を含み、前記必要となる資源の予測行程は符
    号化表現に基づいて行われることを特徴とする請求項5
    4記載のプリント方法。
  56. 【請求項56】 前記適応的にプリント処理を変更する
    行程は、予測結果に基づいて画質を変化させることを特
    徴とする請求項54記載のプリント方法。
  57. 【請求項57】 プリント処理において必要となる資源
    を予測する予測行程と、 該予測行程によって予測された資源が、プリンタ資源の
    範囲内であるかどうかを判断する判断行程と、 前記判断行程によってプリント処理に必要な資源が足り
    ないと判断された場合に、プリント処理を変更する変更
    行程とを備えることを特徴とするプリント方法。
  58. 【請求項58】 プリント処理中に画像の符号化表現を
    形成する行程をさらに備え、符号化表現をフルラスタ画
    像に展開する間に前記予測行程が必要となる資源を予測
    することを特徴とする請求項57記載のプリント方法。
  59. 【請求項59】 プリント処理はプリント情報の各ペー
    ジ中のバンドごとに行われ、前記予測行程は必要となる
    資源を各バンドごとに予測することを特徴とする請求項
    57記載のプリント方法。
  60. 【請求項60】 前記変更行程に基づくプリント処理の
    変更に応じて前記予測行程は必要となる資源を再予測
    し、前記変更行程は該予測行程によって予測された資源
    がプリンタ資源の範囲内に収まるまでプリント処理を繰
    り返し変更することを特徴とする請求項57記載のプリ
    ント方法。
  61. 【請求項61】 前記変更行程は前記プリンタでプリン
    トされる画像の質を変化させてプリント処理を変更する
    ことを特徴とする請求項57記載のプリント方法。
  62. 【請求項62】 解像度を変化させることを特徴とする
    請求項61記載のプリント方法。
  63. 【請求項63】 カラー解像度もしくは中間調レベル数
    を減少させることを特徴とする請求項61記載のプリン
    ト方法。
  64. 【請求項64】 一定の速度でプリント情報をスキャン
    してプリントし、少なくとも一部のプリント情報を一定
    速度で出力することのできるビットマップメモリを用い
    る行程をさらに備えることを特徴とする請求項57記載
    のプリント方法。
  65. 【請求項65】 前記予測行程は、画像を前記ビットマ
    ップメモリに生成するのに必要となる演算能力、画像を
    記憶するのに必要となるメモリ量、画像をビットマップ
    メモリに転送するのに必要となるバンド幅のうちの少な
    くとも1つを予測することを特徴とする請求項64記載
    のプリント方法。
  66. 【請求項66】 入力画像データをプリント画像の符号
    化表現に翻訳する翻訳行程と、 プリント画像の符号化表現を記憶する記憶行程と、 記憶されている符号化表現をフルラスタ画像に展開する
    のに必要な資源を予測する予測行程と、 必要となる資源がプリンタ資源の範囲内であると予測さ
    れた場合には、記憶されている符号化表現をラスタ画像
    に展開する展開行程と、 ラスタ画像を一定速度でスキャンしてプリントするプリ
    ント行程とを備えることを特徴とするプリント方法。
  67. 【請求項67】 前記予測行程によって符号化表現をフ
    ルラスタ画像に展開するのに必要な資源が足りないと判
    断された場合には、プリント処理を変更する変更行程を
    さらに備えることを特徴とする請求項66記載のプリン
    ト方法。
  68. 【請求項68】 前記変更行程は、必要となるプリンタ
    資源が異なるように符号化表現を別の表現に変更するこ
    とを特徴とする請求項67記載のプリント方法。
  69. 【請求項69】 前記変更行程はプリント解像度を変化
    させることを特徴とする請求項67記載のプリント方
    法。
  70. 【請求項70】 前記変更行程はカラー解像度もしくは
    中間調レベル数を減少させることを特徴とする請求項6
    7記載のプリント方法。
  71. 【請求項71】 前記予測行程は、少なくとも符号化表
    現をラスタ画像に展開するのに必要な演算能力と、符号
    化表現を記憶するのに必要なメモリ量とを予測すること
    を特徴とする請求項66記載のプリント方法。
  72. 【請求項72】 前記翻訳行程によって翻訳される画像
    データを入力する行程をさらに備えることを特徴とする
    請求項66記載のプリント方法。
  73. 【請求項73】 画像データはページ記述言語で入力さ
    れることを特徴とする請求項72記載のプリント方法。
  74. 【請求項74】 前記メモリの第1部位は符号化表現を
    バンドごとに記憶し、前記メモリの該第2部位は対応す
    るバンド情報のラスタ画像を記憶することを特徴とする
    請求項66記載のプリント方法。
  75. 【請求項75】 前記翻訳行程は入力画像データをバン
    ドで翻訳することを特徴とする請求項74記載のプリン
    ト方法。
  76. 【請求項76】 前記予測行程はプリント情報の各バン
    ドごとに必要となる資源を予測することを特徴とする請
    求項75記載のプリント方法。
  77. 【請求項77】 前記判断行程によって資源が足りない
    と判断された場合には、前記展開行程はフルラスタ画像
    を前記メモリの第1部位と第2部位のもとの位置に展開
    することを特徴とする請求項76記載のプリント方法。
  78. 【請求項78】 前記翻訳行程は入力情報を符号化ラス
    タ表現のバンドに翻訳し、前記判断行程が前記プリンタ
    エンジンの一定速度に対応する所定の時間間隔でバンド
    情報を展開するのに必要な演算能力が足りないと判断し
    た場合に、該展開行程がバンドを前記メモリの第3部位
    に前もってラスタリングすることを特徴とする請求項6
    6記載のプリント方法。
  79. 【請求項79】 前記予測行程によって符号化表現の方
    が対応するラスタ画像以上にメモリを必要とすると判断
    された場合には、前記変更行程がプリント処理を変更す
    ることを特徴とする請求項66記載のプリント方法。
  80. 【請求項80】 前記判断行程によって1つのバンド情
    報に必要な資源が足りないと判断された場合には、それ
    以外のバンドはそのままで、当該バンド情報のみを劣化
    させることを特徴とする請求項66記載のプリント方
    法。
  81. 【請求項81】 前記表現は、ビットマップオブジェク
    ト,ラン長オブジェクト,台形オブジェクト,ボックス
    オブジェクト,固定境界符号オブジェクトの少なくとも
    1つから成ることを特徴とする請求項66記載のプリン
    ト方法。
  82. 【請求項82】 前記展開行程は、アプリケーション機
    能によってオブジェクトを背景に対して適用し、表現の
    ラスタリング処理を行う行程を含むことを特徴とする請
    求項81記載のプリント方法。
  83. 【請求項83】 複数のバンドの各画像データを画像の
    符号化表現に翻訳する翻訳行程と、 符号化表現を記憶する行程と、 記憶されている符号化表現に基づいて、符号化表現のバ
    ンドをラスタ画像に展開するのに必要な資源を予測する
    予測行程と、 必要となる資源がプリンタ資源では足りないと予測され
    た場合に、符号化表現を変更する変更行程と、 符号化表現のバンドをラスタ画像データのバンドに展開
    する展開行程と、 ラスタ画像データのバンドを一定速度でプリントするプ
    リント行程とを備えることを特徴とするプリント方法。
  84. 【請求項84】 入力画像データをページ記述言語で入
    力する行程をさらに備えることを特徴とする請求項83
    記載のプリント方法。
  85. 【請求項85】 前記翻訳行程はページ記述言語で表わ
    された画像データを、ビットマップオブジェクト,ラン
    長オブジェクト,台形オブジェクト,ボックスオブジェ
    クト,固定境界符号オブジェクトの少なくとも1つを含
    む符号化表現に翻訳することを特徴とする請求項84記
    載のプリント方法。
  86. 【請求項86】 前記展開行程は、アプリケーション処
    理によってオブジェクトを背景に対して適用し、画像を
    ラスタリングする行程を備えることを特徴とする請求項
    85記載のプリント方法。
  87. 【請求項87】 前記予測行程は、符号化表現を構成す
    るプリミティブに基づいて必要となる資源を予測するこ
    とを特徴とする請求項85記載のプリント方法。
  88. 【請求項88】 前記予測行程は画像の各バンドごとに
    必要となる資源を予測することを特徴とする請求項83
    記載のプリント方法。
  89. 【請求項89】 前記予測行程は、演算能力,メモリ能
    力,バンド幅の少なくとも1つを予測することを特徴と
    する請求項83記載のプリント方法。
  90. 【請求項90】 前記変更行程は、演算能力の資源が過
    大である場合に、より多くのメモリを用いるような符号
    化表現に変更することを特徴とする請求項89記載のプ
    リント方法。
  91. 【請求項91】 前記変更行程は、前記展開行程によっ
    て画像データのバンドを前もってラスタリングすること
    を特徴とする請求項90記載のプリント方法。
  92. 【請求項92】 前記変更行程は画像の質を変化させる
    ことを特徴とする請求項90記載のプリント方法。
  93. 【請求項93】 前記変更行程は、必要となる資源がプ
    リンタ資源以上となるバンドに対しては少なくとも前記
    展開行程によって画質を変化させることを特徴とする請
    求項92記載のプリント方法。
  94. 【請求項94】 前記変更行程は、前記展開行程によっ
    て全体の画像の質を変化させ、変化させた画像を前記符
    号化表現によってもとの位置に展開することを特徴とす
    る請求項93記載のプリント方法。
  95. 【請求項95】 前記画質の劣化は、画素密度,カラー
    解像度,グレイレベル数の少なくとも1つに対して行わ
    れることを特徴とする請求項93記載のプリント方法。
  96. 【請求項96】 前記画質の劣化は、画素密度,カラー
    解像度,グレイレベル数の少なくとも1つに対して行わ
    れることを特徴とする請求項94記載のプリント方法。
  97. 【請求項97】 前記展開行程は、前のプリント処理が
    終了するまで変化させた画像の展開を延期することを特
    徴とする請求項94記載のプリント方法。
  98. 【請求項98】 前記予測行程は、演算能力,メモリ
    量,バンド幅の少なくとも1つを予測し、前記変更行程
    はメモリが足りなくなる場合により多くの演算能力を用
    いるような符号化表現に変更することを特徴とする請求
    項83記載のプリント方法。
  99. 【請求項99】 前記予測行程は、演算能力,メモリ
    量,バンド幅の少なくとも1つを予測し、前記変更行程
    は演算能力やメモリ量が足りなくなる場合により多くの
    バンド幅を用いるような符号化表現に変更することを特
    徴とする請求項83記載のプリント方法。
  100. 【請求項100】 前記予測行程は、演算能力,メモリ
    量,バンド幅の少なくとも1つを予測し、前記変更行程
    はプリンタ資源の範囲内で前記展開行程によってラスタ
    リングされるような符号化表現に変更することを特徴と
    する請求項83記載のプリント方法。
  101. 【請求項101】 前記展開行程がプリンタ資源の範囲
    内で画像をラスタリングできるように、前記変更行程で
    符号化表現を変更することが不可能な場合には、前記変
    更行程は画像の質を劣化させることを特徴とする請求項
    100記載のプリント方法。
  102. 【請求項102】 前記変更行程が画質を変化させる場
    合には、前記変更行程は画質の変化に先立って前記展開
    行程によって前のページのラスタリング処理を行うこと
    を特徴とする請求項101記載のプリント方法。
  103. 【請求項103】 解像度は、画素密度,カラー解像
    度,グレイレベル数の少なくとも1つを含むことを特徴
    とする請求項102記載のプリント方法。
  104. 【請求項104】 プリントメモリを監視して、プリン
    トする物理ページに対応する前記プリントメモリの部位
    を特定する監視行程と、 前記プリントメモリに画像データのバンドの符号化表現
    を記憶する記憶行程と、 画像データの1ページの符号化が終了した時点で、画像
    データのバンドの符号化表現を前記プリントメモリのバ
    ンドラスタ部位に展開する展開行程と、 バンドラスタ部位へのラスタリングが終了した時点で、
    前記プリントメモリのバンドラスタ部位中のラスタ画像
    データを一定速度でプリンタエンジンに転送する転送行
    程とを備え、 前記符号化手段は、前記監視行程によって監視されたペ
    ージ位置で画像データの次のページを符号化することを
    特徴とするプリントメモリの制御方法。
  105. 【請求項105】 前記展開行程は符号化画像を劣化解
    像度でもとの位置に展開することを特徴とする請求項1
    04記載のプリントメモリの制御方法。
  106. 【請求項106】 前記展開行程が符号化情報ページを
    もとの位置に展開する場合、該展開行程が符号化画像を
    展開する以前に、前記転送行程がそれ以前のすべてのペ
    ージを転送することを特徴とする請求項104記載のプ
    リントメモリの制御方法。
  107. 【請求項107】 ラスタベースの文書のためのグラフ
    ィックス言語コマンドを生成する方法であって、 装置に依存しないプリントコマンドを含むプリントコマ
    ンドを入力する行程と、 入力される前記プリントコマンドに基づいて、文書中の
    ラスタフレームを記述するフレーム記述コマンドを生成
    する行程と、 入力される前記プリントコマンドに基づいて、ラスタフ
    レームをレイアウトするための文書レイアウトコマンド
    を生成する行程と、 前記フレーム記述コマンドと文書レイアウトコマンドと
    をそれぞれ第1と第2のパイプラインインタフェースに
    出力する行程とを備えることを特徴とする方法。
  108. 【請求項108】 入力される前記プリントコマンドは
    ページ記述言語から成り、該ページ記述言語をグラフィ
    ックス言語に変換する行程をさらに備えることを特徴と
    する請求項107記載の方法。
  109. 【請求項109】 フレーム記述中のフレームをラスタ
    ライズする行程をさらに備えることを特徴とする請求項
    107記載の方法。
  110. 【請求項110】 前記文書レイアウトコマンドに基づ
    いて、ラスタライズされたフレームをビットマップラス
    タに展開する行程をさらに備えることを特徴とする請求
    項109記載の方法。
  111. 【請求項111】 前記文書レイアウトコマンドは紙シ
    ートハンドリングのためのコマンドを備え、該紙シート
    ハンドリングのコマンドに基づいてビットマップラスタ
    を紙シート上にプリントする行程をさらに備えることを
    特徴とする請求項110記載の方法。
  112. 【請求項112】 前記フレーム記述コマンドはマスク
    生成コマンドと背景生成コマンドとを有するラスタベー
    スのフレーム記述コマンドであり、マスク生成コマンド
    に応じて生成されるマスクを背景生成コマンドに応じて
    生成される背景にビットマップメモリ上で適用する行程
    をさらに備えることを特徴とする請求項107記載の方
    法。
  113. 【請求項113】 前記フレーム記述コマンドは装置依
    存のコマンドであることを特徴とする請求項112記載
    の方法。
  114. 【請求項114】 前記方法はホストCPUで実行され
    るプリンタドライバにより構成されることを特徴とする
    請求項107記載の方法。
  115. 【請求項115】 画素オブジェクトを生成するマスク
    生成手段と、 該マスク生成手段によって生成された画素オブジェクト
    を適用する背景を生成する背景生成手段と、 グラフィックス言語コマンドを解釈し、解釈したグラフ
    ィックス言語コマンドに応じて、前記マスク生成手段と
    背景生成手段のどちらか1つを起動する解釈手段と、 前記マスク生成手段によって生成された画素オブジェク
    トを、前記背景生成手段によって生成される背景にビッ
    トマップラスタメモリ上で適用するラスター手段とを備
    えるグラフィックス言語処理装置。
  116. 【請求項116】 前記マスク生成手段はそれぞれが異
    なるマスクを生成する複数のマスク生成手段を備え、前
    記解釈手段は解釈したグラフィックス言語に基づいて該
    複数のマスク生成手段の1つを起動することを特徴とす
    る請求項115記載のグラフィックス言語処理装置。
  117. 【請求項117】 前記複数のマスク生成手段の各々
    は、プリミティブ画素オブジェクトのコンパクト表現を
    生成するように構成されていることを特徴とする請求項
    第116項記載のグラフィックス言語処理装置。
  118. 【請求項118】 前記背景生成手段はそれぞれが異な
    る背景を生成する複数の背景生成手段を備え、前記解釈
    手段は解釈したグラフィックス言語に基づいて該複数の
    背景生成手段の1つを起動することを特徴とする請求項
    115記載のグラフィックス言語処理装置。
  119. 【請求項119】 前記ラスター手段は、選択可能なア
    プリケーションに基づいて画素オブジェクトを背景に適
    用するように構成されていることを特徴とする請求項1
    15記載のグラフィックス言語処理装置。
  120. 【請求項120】 前記マスク生成手段によって生成さ
    れた画素オブジェクトをクリッピングするクリッパをさ
    らに備えることを特徴とする請求項115記載のグラフ
    ィックス言語処理装置。
  121. 【請求項121】 ラスタ領域を逐次的に選択し、選択
    したラスタ領域に対して前記マスク生成手段と前記背景
    生成手段と前記ラスター手段の各々を動作させるような
    ディスパッチャをさらに備えることを特徴とする請求項
    115記載のグラフィックス言語処理装置。
  122. 【請求項122】 選択した領域がラスタをバンドに分
    割した領域であることを特徴とする請求項121記載の
    グラフィックス言語処理装置。
  123. 【請求項123】 選択した領域がラスタを任意に分割
    した領域であることを特徴とする請求項121記載のグ
    ラフィックス言語処理装置。
  124. 【請求項124】 前記マスク生成手段と前記背景生成
    手段と前記ラスター手段とはパイプライン処理構成にな
    っており、パイプライン処理を調整するための調整手段
    をさらに備えることを特徴とする請求項115記載のグ
    ラフィックス言語処理装置。
  125. 【請求項125】 符号化されたプリントデータを入力
    する行程と、 符号化された前記プリントデータを第1の符号化表現に
    変換する行程と、 第1の符号化表現を第1の符号化表現とは異なる第2の
    符号化表現に変換する行程と、 第2の符号化表現からラスタ画像を形成する行程とを備
    えることを特徴とするプリント方法。
  126. 【請求項126】 前記符号化されたプリントデータは
    ページ記述言語プリントデータであり、前記第1と第2
    の符号化表現はページ記述言語とラスタ画像の中間の複
    雑さを有することを特徴とする請求項125記載のプリ
    ント方法。
  127. 【請求項127】 前記第1と第2の符号化表現は複数
    の符号化プリミティブを有し、前記第2の符号化表現の
    すべての符号化プリミティブは少なくとも前記第1の符
    号化表現の符号化プリミティブのいくつかと同一である
    ことを特徴とする請求項125記載のプリント方法。
  128. 【請求項128】 前記第2の符号化表現は、前記ラス
    ター行程において必要となるプリンタ資源を精度良く予
    測できるような正確なモデリング機能を有し、前記第1
    の符号化表現は前記モデリング機能を持たないことを特
    徴とする請求項125記載のプリント方法。
  129. 【請求項129】 プリンタ資源が不足すると予測され
    た場合にプリンタ資源を再割り当てする行程をさらに備
    えることを特徴とする請求項128記載のプリント方
    法。
  130. 【請求項130】 ラスタベースの文書のためのグラフ
    ィックス言語コマンドを生成する装置であって、 装置に依存しないプリントコマンドを含むプリントコマ
    ンドを入力する入力手段と、 入力される前記プリントコマンドに基づいて、文書中の
    ラスタフレームを記述するフレーム記述コマンドを生成
    する第1の生成手段と、 入力される前記プリントコマンドに基づいて、ラスタフ
    レームをレイアウトするための文書レイアウトコマンド
    を生成する第2の生成手段と、 前記フレーム記述コマンドと文書レイアウトコマンドを
    それぞれ第1と第2のパイプラインインタフェースに出
    力する出力手段とを備えることを特徴とする装置。
  131. 【請求項131】 入力される前記プリントコマンドは
    ページ記述言語から成り、該ページ記述言語をグラフィ
    ックス言語に変換する変換手段をさらに備えることを特
    徴とする請求項130記載の装置。
  132. 【請求項132】 フレーム記述中のフレームをラスタ
    ライズするラスター手段をさらに備えることを特徴とす
    る請求項130記載の装置。
  133. 【請求項133】 前記文書レイアウトコマンドに基づ
    いて、ラスタライズされたフレームをビットマップラス
    タに展開する展開手段をさらに備えることを特徴とする
    請求項132記載の装置。
  134. 【請求項134】 前記文書レイアウトコマンドは紙シ
    ートハンドリングのためのコマンドを備え、該紙シート
    ハンドリングのコマンドに基づいてビットマップラスタ
    を紙シート上にプリントするプリント手段をさらに備え
    ることを特徴とする請求項133記載の装置。
  135. 【請求項135】 前記フレーム記述コマンドはマスク
    生成コマンドと背景生成コマンドとを有するラスタベー
    スのフレーム記述コマンドであり、該マスク生成コマン
    ドに応じて生成されるマスクを該背景生成コマンドに応
    じて生成される背景にビットマップメモリ上で適用する
    適用手段をさらに備えることを特徴とする請求項130
    記載の装置。
  136. 【請求項136】 前記フレーム記述コマンドは装置依
    存のコマンドであることを特徴とする請求項135記載
    の装置。
  137. 【請求項137】 前記装置はホストCPUで実行され
    るプリンタドライバにより構成されることを特徴とする
    請求項130記載の装置。
  138. 【請求項138】 グラフィックス言語を処理する方法
    であって、 画素オブジェクトを生成する行程と、 該画素オブジェクト生成行程によって生成された画素オ
    ブジェクトを適用する背景を生成する行程と、 グラフィックス言語コマンドを解釈し、解釈したグラフ
    ィックス言語コマンドに応じて前記2つの生成行程のど
    ちらか1つを起動する行程と、 前記画素オブジェクト生成行程によって生成された画素
    オブジェクトを、前記背景生成行程によって生成される
    背景にビットマップラスタメモリ上で適用する行程とを
    備える方法。
  139. 【請求項139】 前記画素オブジェクト生成行程は複
    数のそれぞれが異なるマスクを生成する行程を備え、前
    記解釈行程は解釈したグラフィックス言語に基づいて前
    記マスク生成行程で生成された該複数のマスクの1つを
    起動することを特徴とする請求項138記載の方法。
  140. 【請求項140】 前記マスク生成行程で生成された前
    記複数のマスクの各々は、プリミティブ画素オブジェク
    トのコンパクト表現を生成するように構成されているこ
    とを特徴とする請求項139記載の方法。
  141. 【請求項141】 前記背景生成行程は複数のそれぞれ
    が異なる背景を生成する行程を備え、前記解釈する行程
    は解釈したグラフィックス言語に基づいて前記背景生成
    行程で生成された該複数の背景の1つを起動することを
    特徴とする請求項138記載の方法。
  142. 【請求項142】 前記適用行程は、選択可能なアプリ
    ケーションに基づいて画素オブジェクトを背景に適用す
    ることを特徴とする請求項138記載の方法。
  143. 【請求項143】 前記画素オブジェクト生成行程で生
    成された画素オブジェクトをクリッピングする行程をさ
    らに備えることを特徴とする請求項138記載の方法。
  144. 【請求項144】 ラスタ領域を逐次的に選択し、選択
    したラスタ領域に対して前記画素オブジェクト生成行程
    と前記背景生成行程と前記適用行程の各々を動作させる
    ような行程をさらに備えることを特徴とする請求項13
    8記載の方法。
  145. 【請求項145】 選択した領域がラスタをバンドに分
    割した領域であることを特徴とする請求項144記載の
    方法。
  146. 【請求項146】 選択した領域がラスタを任意に分割
    した領域であることを特徴とする請求項144記載の方
    法。
  147. 【請求項147】 前記画素オブジェクト生成行程と前
    記背景生成行程と前記適用行程とはパイプライン処理構
    成になっており、パイプライン処理を調整するための行
    程をさらに備えることを特徴とする請求項138記載の
    方法。
  148. 【請求項148】 符号化されたプリントデータを入力
    する入力手段と、 符号化された前記プリントデータを第1の符号化表現に
    変換する第1の変換手段と、 該第1の符号化表現を該第1の符号化表現とは異なる第
    2の符号化表現に変換する第2の変換手段と、 該第2の符号化表現からラスタ画像を形成する形成手段
    とを備えることを特徴とするプリント装置。
  149. 【請求項149】 符号化された前記プリントデータは
    ページ記述言語プリントデータであり、前記第1と第2
    の符号化表現はページ記述言語とラスタ画像の中間の複
    雑さを有することを特徴とする請求項148記載の装
    置。
  150. 【請求項150】 前記第1と第2の符号化表現は複数
    の符号化プリミティブを有し、前記第2の符号化表現の
    すべての符号化プリミティブは少なくとも前記第1の符
    号化表現の符号化プリミティブのいくつかと同一である
    ことを特徴とする請求項148記載の装置。
  151. 【請求項151】 前記第2の符号化表現は、前記ラス
    タライズ行程において必要となるプリンタ資源を精度良
    く予測できるような正確なモデリング機能を有し、前記
    第1の符号化表現は該モデリング機能を持たないことを
    特徴とする請求項148記載の装置。
  152. 【請求項152】 プリンタ資源が不足すると予測され
    た場合にプリンタ資源を再割り当てする再割り当て手段
    をさらに備えることを特徴とする請求項151記載の装
    置。
  153. 【請求項153】 画像を形成する装置であって、 プリントコマンドを入力する通信インタフェースと、 該プリントコマンドに基づいて、ラスタフレームを記述
    するフレーム記述コマンドとラスタフレームをレイアウ
    トする文書レイアウトコマンドとを有するグラフィック
    ス言語コマンドを生成する生成モジュールと、 ラスタ画像情報を記憶するビットマップメモリと、 前記フレーム記述コマンドに応じてラスタフレームを展
    開し、前記文書レイアウトコマンドに応じて前記ビット
    マップメモリに展開されたラスタフレームを記憶するグ
    ラフィックス言語プロセッサと、 前記ビットマップメモリ中のラスタ画像情報に応じて画
    素ベースの画像を形成する画像形成手段とを備えること
    を特徴とする装置。
  154. 【請求項154】 前記画像形成手段は、ラスタ画像情
    報に応じてレーザビームを変調するドライバと、変調さ
    れるレーザビームを偏向して感光面上をスキャンする偏
    向手段とを備え、前記ドライバと前記偏向手段とを調整
    するシステムスケジューラをさらに備えることを特徴と
    する請求項153記載の装置。
  155. 【請求項155】 前記ビットマップメモリは複数のビ
    ットマップメモリに分割可能なビットマップラスタプー
    ルから構成され、空のビットマップメモリを前記グラフ
    ィックス言語プロセッサに転送し、描画されたビットマ
    ップメモリを前記画像形成手段に転送するシステムスケ
    ジューラをさらに備えることを特徴とする請求項153
    記載の装置。
  156. 【請求項156】 前記文書レイアウトコマンドに基づ
    いてシートを前記画像形成手段に機械的に転送するシー
    トハンドリング手段をさらに備えることを特徴とする請
    求項153記載の装置。
  157. 【請求項157】 画像形成後に、前記文書レイアウト
    コマンドに基づいてシートを処理する仕上げ手段をさら
    に備えることを特徴とする請求項156記載の装置。
  158. 【請求項158】 前記グラフィックス言語プロセッサ
    はパイプラインプロセッサで構成されることを特徴とす
    る請求項153記載の装置。
  159. 【請求項159】 前記グラフィックス言語プロセッサ
    は、マスクを生成するマスク生成手段と、マスクをラス
    タフレームに適用する背景を生成する背景生成手段とを
    備え、該マスク生成手段と該背景生成手段とはグラフィ
    ックス言語コマンド列中のコマンドに応答することを特
    徴とする請求項153記載の装置。
  160. 【請求項160】 グラフィックス言語コマンド列を解
    析して、マスクコマンドを前記マスク生成手段に転送
    し、背景コマンドを前記背景生成手段に転送する解釈手
    段をさらに備えることを特徴とする請求項159記載の
    装置。
  161. 【請求項161】 選択可能なアプリケーションに応じ
    て、前記マスク生成手段で生成されたマスクを、ラスタ
    フレーム上の前記背景生成手段で生成された背景に適用
    してラスタフレームを展開するラスター手段をさらに備
    えることを特徴とする請求項160記載の装置。
  162. 【請求項162】 前記マスク生成手段と前記背景生成
    手段と前記ラスタリング手段は、パイプライン処理構造
    で構成されることを特徴とする請求項161記載の装
    置。
  163. 【請求項163】 パイプライン処理構造のパイプライ
    ン処理を調整するための調整手段をさらに備えることを
    特徴とする請求項162記載の装置。
  164. 【請求項164】 ラスタ領域を逐次的に選択し、選択
    したラスタ領域に対して前記マスク生成手段と前記背景
    生成手段と前記ラスタライズ手段の各々を動作させるよ
    うなディスパッチャ手段をさらに備えることを特徴とす
    る請求項161記載の装置。
  165. 【請求項165】 選択した領域がラスタをバンドに分
    割した領域であることを特徴とする請求項164記載の
    装置。
  166. 【請求項166】 選択した領域がラスタを任意に分割
    した領域であることを特徴とする請求項164記載の装
    置。
  167. 【請求項167】 前記生成モジュールで生成されたグ
    ラフィックス言語コマンドは、グラフィックスオブジェ
    クトを定義するコマンドと、オブジェクトをラスタフレ
    ームにどのように適用するのかを定義するコマンドとを
    有することを特徴とする請求項159記載の装置。
  168. 【請求項168】 前記グラフィックス言語プロセッサ
    は、グラフィックス言語コマンドをグラフィックス言語
    コマンドとは異なる符号化コマンド列に変換する手段を
    備えることを特徴とする請求項153記載の装置。
  169. 【請求項169】 前記グラフィックス言語コマンドと
    符号化コマンド列は複数のコマンドプリミティブを有
    し、前記符号化コマンド列のすべてのコマンドプリミテ
    ィブは少なくとも前記グラフィックス言語コマンドのコ
    マンドプリミティブのいくつかが同一であることを特徴
    とする請求項168記載の装置。
  170. 【請求項170】 前記符号化コマンド列は必要となる
    画像形成資源を精度良く予測できるような正確なモデリ
    ング機能を有し、前記グラフィックス言語コマンドは該
    モデリング機能を持たないことを特徴とする請求項16
    9記載の装置。
  171. 【請求項171】 画像形成資源が不足すると予測され
    た場合に画像形成資源を再割り当てすることを特徴とす
    る請求項170記載の装置。
  172. 【請求項172】 画像を形成する方法であって、 プリントコマンドを入力する行程と、 該プリントコマンドに基づいて、ラスタフレームを記述
    するフレーム記述コマンドとラスタフレームをレイアウ
    トする文書レイアウトコマンドとを有するグラフィック
    ス言語コマンドを生成する行程と、 ラスタ画像情報をビットマップメモリに記憶する行程
    と、 前記フレーム記述コマンドに応じてラスタフレームを展
    開し、前記文書レイアウトコマンドに応じて前記ビット
    マップメモリに展開されたラスタフレームを記憶する行
    程と、 前記ビットマップメモリ中のラスタ画像情報に応じて画
    素ベースの画像を形成する行程とを備えることを特徴と
    する方法。
  173. 【請求項173】 前記画像形成行程は、ラスタ画像情
    報に応じてレーザビームを変調する行程と、変調される
    該レーザビームを偏向して感光面上をスキャンする行程
    とを備え、前記方法は前記変調行程と前記偏向行程とを
    調整する行程をさらに備えることを特徴とする請求項1
    72記載の方法。
  174. 【請求項174】 前記ビットマップメモリは複数のビ
    ットマップメモリに分割可能なビットマップラスタプー
    ルから構成され、空のビットマップメモリを前記グラフ
    ィックス言語プロセッサに転送し、充填されたビットマ
    ップメモリを前記画像形成行程に転送する行程をさらに
    備えることを特徴とする請求項172記載の方法。
  175. 【請求項175】 前記文書レイアウトコマンドに基づ
    いてシートを機械的に転送する行程をさらに備えること
    を特徴とする請求項172記載の方法。
  176. 【請求項176】 画像形成後に、前記文書レイアウト
    コマンドに基づいてシートを処理する行程をさらに備え
    ることを特徴とする請求項175記載の方法。
  177. 【請求項177】 前記展開行程はパイプラインプロセ
    ッサで構成されることを特徴とする請求項172記載の
    方法。
  178. 【請求項178】 前記展開行程はマスクを生成する行
    程と、マスクを適用する背景をラスタフレームに生成す
    る行程とを備え、該マスク生成行程と背景生成行程はグ
    ラフィックス言語コマンド列中のコマンドに応答するこ
    とを特徴とする請求項172記載の方法。
  179. 【請求項179】 グラフィックス言語コマンド列を解
    析して、マスクコマンドを前記マスク生成行程に転送
    し、背景コマンドを前記背景生成行程に転送する行程を
    さらに備えることを特徴とする請求項178記載の方
    法。
  180. 【請求項180】 選択可能なアプリケーションに応じ
    て、前記マスク生成行程で生成されたマスクを、ラスタ
    フレーム上の前記背景生成行程で生成された背景に適用
    してラスタフレームをレンダリングする行程をさらに備
    えることを特徴とする請求項179記載の方法。
  181. 【請求項181】 前記マスク生成行程と前記背景生成
    行程と前記ラスタフレーム・レンダリング行程は、パイ
    プライン処理構造で構成されることを特徴とする請求項
    180記載の方法。
  182. 【請求項182】 パイプライン処理構造のパイプライ
    ン処理を調整する行程をさらに備えることを特徴とする
    請求項181記載の方法。
  183. 【請求項183】 ラスタ領域を逐次的に選択し、選択
    したラスタ領域に対して前記マスク生成行程と前記背景
    生成行程と前記ラスタフレーム・レンダリング行程の各
    々を動作させる行程をさらに備えることを特徴とする請
    求項180記載の方法。
  184. 【請求項184】 選択した領域がラスタをバンドに分
    割した領域であることを特徴とする請求項183記載の
    方法。
  185. 【請求項185】 選択した領域がラスタを任意に分割
    した領域であることを特徴とする請求項183記載の方
    法。
  186. 【請求項186】 前記背景生成行程で生成されたグラ
    フィックス言語コマンドは、グラフィックスオブジェク
    トを定義するコマンドと、オブジェクトをラスタフレー
    ムにどのように適用するのかを定義するコマンドとを有
    することを特徴とする請求項178記載の方法。
  187. 【請求項187】 前記レンダリング行程は、グラフィ
    ックス言語コマンドをグラフィックス言語コマンドとは
    異なる符号化コマンド列に変換する手段を備えることを
    特徴とする請求項172記載の方法。
  188. 【請求項188】 前記レンダリング行程と符号化コマ
    ンド列は複数のコマンドプリミティブを有し、前記符号
    化コマンド列のすべてのコマンドプリミティブは少なく
    とも前記グラフィックス言語コマンドのコマンドプリミ
    ティブのいくつかが同一であることを特徴とする請求項
    187記載の方法。
  189. 【請求項189】 前記符号化コマンド列は必要となる
    画像形成資源を精度良く予測できるような正確なモデリ
    ング機能を有し、グラフィックス言語コマンドは該モデ
    リング機能を持たないことを特徴とする請求項188記
    載の方法。
  190. 【請求項190】 画像形成資源が不足すると予測され
    た場合に画像形成資源を再割り当てすることを特徴とす
    る請求項189記載の方法。
JP14342593A 1992-06-15 1993-06-15 グラフィックス言語に基づく画像処理方法及び装置 Expired - Fee Related JP3159837B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US07/898,532 US5680521A (en) 1992-06-15 1992-06-15 Printing method and apparatus
US07/911,030 US5515481A (en) 1992-07-08 1992-07-08 Method and apparatus for printing according to a graphic language
US07/911030 1992-07-08
US07/898532 1992-07-08

Publications (2)

Publication Number Publication Date
JPH0687251A true JPH0687251A (ja) 1994-03-29
JP3159837B2 JP3159837B2 (ja) 2001-04-23

Family

ID=27129207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14342593A Expired - Fee Related JP3159837B2 (ja) 1992-06-15 1993-06-15 グラフィックス言語に基づく画像処理方法及び装置

Country Status (6)

Country Link
EP (1) EP0575134B1 (ja)
JP (1) JP3159837B2 (ja)
DE (1) DE69327888T2 (ja)
FI (1) FI106228B (ja)
NO (1) NO309078B1 (ja)
SG (1) SG49820A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181435B1 (en) 1996-07-05 2001-01-30 Canon Kabushiki Kaisha Image forming method and apparatus
JP2002169668A (ja) * 2000-07-28 2002-06-14 Canon Inc ページ記述のレンダリング方法及びシステム
US6614544B2 (en) 1995-11-28 2003-09-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, memory medium storing program readable by information processing apparatus, and print control system
US7271923B1 (en) 1999-05-31 2007-09-18 Canon Kabushiki Kaisha Image processing using processing by bands and fixed-size work buffer
JP2010264705A (ja) * 2009-05-18 2010-11-25 Fuji Xerox Co Ltd 画像処理装置及びプログラム
US9904878B2 (en) 2016-03-23 2018-02-27 Fuji Xerox Co., Ltd. Printer, printing method, and non-transitory computer readable medium for printing data based on a predicted performance of generating the data to be printed

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPM822394A0 (en) * 1994-09-16 1994-10-13 Canon Inc. Object based rendering system
JP3919242B2 (ja) * 1995-07-04 2007-05-23 キヤノン株式会社 印刷システム及びその制御方法
US5726760A (en) * 1996-04-03 1998-03-10 Oce-Nederland, B.V. Method and apparatus for converting image representation formats as well as an image production system provided with such an apparatus
JPH09300703A (ja) * 1996-05-20 1997-11-25 Brother Ind Ltd 印刷装置
US6724496B1 (en) * 1999-10-29 2004-04-20 Hewlett-Packard Development Company, L.P. Remote print job processing

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02123486A (ja) * 1988-11-02 1990-05-10 Toshiba Corp 光学的文字読取装置
JP2845380B2 (ja) * 1990-01-19 1999-01-13 キヤノン株式会社 印刷装置及びその制御方法
JPH0412874A (ja) * 1990-05-01 1992-01-17 Minolta Camera Co Ltd プリンタ制御装置
JP3105903B2 (ja) * 1990-07-13 2000-11-06 キヤノン株式会社 印刷制御装置及び印刷装置
EP0470782B1 (en) * 1990-08-08 1996-02-14 The Peerless Group Image rendering process and apparatus
JP2562514B2 (ja) * 1990-09-03 1996-12-11 キヤノン株式会社 印刷制御装置及びイメージデータ描画方法
JPH04146179A (ja) * 1990-10-09 1992-05-20 Canon Inc 印刷装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6614544B2 (en) 1995-11-28 2003-09-02 Canon Kabushiki Kaisha Information processing apparatus, information processing method, memory medium storing program readable by information processing apparatus, and print control system
US6181435B1 (en) 1996-07-05 2001-01-30 Canon Kabushiki Kaisha Image forming method and apparatus
US7271923B1 (en) 1999-05-31 2007-09-18 Canon Kabushiki Kaisha Image processing using processing by bands and fixed-size work buffer
US7599079B2 (en) 1999-05-31 2009-10-06 Canon Kabushiki Kaisha Image processing using processing by bands and fixed-size work buffer
JP2002169668A (ja) * 2000-07-28 2002-06-14 Canon Inc ページ記述のレンダリング方法及びシステム
JP2010264705A (ja) * 2009-05-18 2010-11-25 Fuji Xerox Co Ltd 画像処理装置及びプログラム
US8699108B2 (en) 2009-05-18 2014-04-15 Fuji Xerox Co., Ltd. Image processing device and computer readable medium for converting a draw process
US9904878B2 (en) 2016-03-23 2018-02-27 Fuji Xerox Co., Ltd. Printer, printing method, and non-transitory computer readable medium for printing data based on a predicted performance of generating the data to be printed

Also Published As

Publication number Publication date
NO932199D0 (no) 1993-06-15
DE69327888D1 (de) 2000-03-30
FI106228B (fi) 2000-12-15
FI932712A (fi) 1993-12-16
JP3159837B2 (ja) 2001-04-23
EP0575134B1 (en) 2000-02-23
EP0575134A3 (en) 1994-12-28
NO309078B1 (no) 2000-12-11
EP0575134A2 (en) 1993-12-22
DE69327888T2 (de) 2000-08-17
NO932199L (no) 1993-12-16
FI932712A0 (fi) 1993-06-14
SG49820A1 (en) 1998-06-15

Similar Documents

Publication Publication Date Title
US5680521A (en) Printing method and apparatus
US5717840A (en) Method and apparatus for printing according to a graphic language
US6100998A (en) Print processor with efficient memory use
JPH09179703A (ja) 合成画像を再現する方法
JP3159837B2 (ja) グラフィックス言語に基づく画像処理方法及び装置
EP1187059A2 (en) Method and apparatus for printing computer generated images
JP2008117379A (ja) エンコードされたラスタ文書を生成するシステム、方法およびコンピュータプログラム
JP3604152B2 (ja) ページプリンタ用に強度のレンダリングを必要としないプロセッサ/メモリ
US6985260B1 (en) Apparatus and method for drawing a gradient fill object
JP2013505854A (ja) 印刷可能なラスタ画像ファイルを作成する方法
JP4070304B2 (ja) ビットマップ表示生成方法および記憶媒体
JP3885282B2 (ja) 印刷データ処理装置および印刷データ処理方法
JP4323618B2 (ja) 画像処理装置及び画像処理方法
JP3728183B2 (ja) 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体
JP2006159738A (ja) 印刷制御装置およびそのデータ処理方法並びに記憶媒体。
JP4336470B2 (ja) 描画制御装置および描画制御方法およびプログラム
JP3671633B2 (ja) 印刷データ処理装置
JP3640133B2 (ja) 印刷処理装置
JPH10151815A (ja) 印刷処理装置
JPH10305639A (ja) 印刷処理装置および印刷処理方法
JP4474487B2 (ja) 画像処理装置及び画像処理方法
JP2006140597A (ja) 印刷制御装置、印刷制御方法、コンピュータプログラム及び記憶媒体
JPH11144062A (ja) 印刷処理装置
JPH10147019A (ja) 印刷処理装置
JPH10157216A (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: 20010115

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

Free format text: PAYMENT UNTIL: 20080216

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090216

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100216

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100216

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110216

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120216

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130216

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees