JPH10198539A - 画像形成装置および画像形成方法 - Google Patents

画像形成装置および画像形成方法

Info

Publication number
JPH10198539A
JPH10198539A JP9001637A JP163797A JPH10198539A JP H10198539 A JPH10198539 A JP H10198539A JP 9001637 A JP9001637 A JP 9001637A JP 163797 A JP163797 A JP 163797A JP H10198539 A JPH10198539 A JP H10198539A
Authority
JP
Japan
Prior art keywords
expression
image forming
block
divided
description language
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.)
Pending
Application number
JP9001637A
Other languages
English (en)
Inventor
Shoji Sakamoto
彰司 坂本
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP9001637A priority Critical patent/JPH10198539A/ja
Priority to US08/996,219 priority patent/US6088480A/en
Publication of JPH10198539A publication Critical patent/JPH10198539A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Abstract

(57)【要約】 【課題】 ページ記述言語で記述された命令列を並列処
理して画像を形成する画像形成装置において、並列処理
のための命令列の分割を適切にして効率的に処理を実行
できるようにすることを目的とする。 【解決手段】 解釈手段1はページ記述言語で記述され
た画像描画命令をページ記述言語の文法に従って解釈
し、言語に依存しない中間表現を生成する。中間表現は
粒度指定手段3で指定された粒度に従ってブロックに分
割される。分割されたブロックは分配手段4により並列
動作可能な複数の変換手段5a,5b,5c,・・・に
分配され、画素表現に変換される。変換された部分的な
画素表現は合成手段6にてページイメージに合成され
る。このように、ブロック分割はページ記述言語を解釈
した後の中間表現を対象としたので、属性を共有する中
間表現のブロックを正しく識別することができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は画像形成装置および
画像形成方法に関し、特に文書を表現する言語で記述さ
れた命令列を実行して画像情報を形成するときに命令列
を適切に分割して効率的に実行するようにした画像形成
装置および画像形成方法に関する。
【0002】
【従来の技術】ページ記述言語によって表現されたドキ
ュメントを高速に印刷するためには、ページ記述言語に
よる記述を高速に解釈実行するシステムが必要となる。
単一プロセッサによる処理速度の限界を越えたシステム
を構築するためには、マルチプロセッサ上での並列処理
を行うシステムを実現しなければならない。
【0003】一方、ユーザが作成したドキュメントは、
逐次実行を前提として設計された既存のページ記述言語
に変換されてプリンタに送られる。このようなページ記
述言語による表現をマルチプロセッサシステム上で効率
的に解釈実行するためには、並列実行可能な処理の単位
を個々のプロセッサに適切に配分することが必要とな
る。
【0004】逐次実行型のページ記述言語の典型的な処
理は、入力を解釈して描画命令を特定し、描画命令に描
画データを与えて部分図形を描画し、そして部分図形を
蓄積する、という動作を1ページ分繰り返すことで行わ
れる。この処理を並列に行うには、入力を解釈する処理
において入力を適当な単位に分割し、これらを描画動作
を行う複数のプロセッサに割り当てて並列に処理し、そ
れらの結果を蓄積する処理において1ページにまとめる
ことが必要となる。このような処理を行うシステムが、
たとえば特公平8−10465号公報に提案されてい
る。このシステムは、入力データストリームをブロック
に分割し、ブロックの内容を解釈して中間形式データに
変換し、中間形式データからラスタ・ピクセルマップを
生成し、そのラスタ・ピクセルマップをソートして合成
することでページ記述言語からラスタデータを生成する
ものであって、解釈処理からソート処理までの処理を並
列に動作する複数のパイプラインで実行するものであ
る。
【0005】
【発明が解決しようとする課題】特公平8−10465
号公報に示された方法では、システムへの入力として与
えられるデータストリームを状態独立なブロックに分割
し、分割されたそれぞれのブロックを並列に解釈実行す
ることで高速な処理を実現しようとしている。しかしな
がら、この方法では次に示す二つの理由により現実的に
システムを構築することが難しい。すなわち、第1の理
由は入力データストリームに現れるページ記述言語表現
を簡単な記号処理で状態独立なブロックに分割すること
は難しい点である。ページ記述言語の描画命令は多様な
属性値を参照してその動作を行うが、これらの属性値は
言語処理系の状態としてモデル化されている。このた
め、状態独立なブロックを識別するためには言語処理系
の状態を予測する必要があるが、記号処理だけでこの動
作を実現することは難しい。第2の理由は後段のパイプ
ラインに対する負荷が考慮されておらず、分割されたブ
ロックを処理する負荷が均等に分散されない場合がある
点である。1ページ分の印刷可能な画像データを生成す
るには、最も時間のかかるパイプラインの処理を待たな
ければならないため、負荷が均等でなければ待ち時間が
大きくなり並列処理の効果が損われるという問題点があ
った。
【0006】本発明はこのような点に鑑みてなされたも
のであり、ブロック分割の対象を適切にして現実的なシ
ステムを構成することが可能な画像形成装置および画像
形成方法を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明では上記問題を解
決するために、ページ記述言語で記述された画像描画命
令を実行して出力画像を得るための画像形成装置におい
て、入力されたページ記述言語による表現をそのページ
記述言語の文法に従って解釈して言語に依存しない中間
表現を生成する解釈手段と、生成された言語非依存の形
式の中間表現をブロックに分割する分割手段と、前記分
割手段に対して中間表現をブロックに分割するときの分
割の粒度を指定する粒度指定手段と、分割された前記中
間表現の各ブロックをそれぞれ画素表現へ変換する複数
の変換手段と、前記分割手段によって分割された中間表
現の各ブロックを前記複数の変換手段に分配する分配手
段と、前記複数の変換手段がそれぞれ生成した画素表現
を合成する合成手段とを備えていることを特徴とする画
像形成装置が提供される。
【0008】このような画像形成装置によれば、解釈手
段は入力として与えられるページ記述言語による表現を
その言語に依存する方法で解釈し、解釈結果として生成
される言語非依存な形式の中間表現をブロック分割の対
象とする。分割手段では、粒度指定手段によって指定さ
れた粒度で中間表現をブロック分割し、分配手段がその
分割された中間表現の各ブロックを複数の変換手段に分
配する。変換手段は分配されたブロックの中間表現から
画素表現を生成し、その部分的な画素表現は合成手段に
てページデータに合成されて目的の画像が形成される。
分割手段において、中間表現のブロック分割に際して
は、同一の属性または属性の組を共有するもの、または
同一のシステム資源を利用するものを一つのブロックと
するが、あるブロック内に現れる描画要素の予測負荷の
和が閾値を越える場合には、そのブロックを更に分割す
る。このように、入力として与えられるページ記述言語
から属性を共有する中間表現のブロックを正しく識別
し、更に負荷が均等になるようにブロックの大きさを調
整することにより、並列動作するパイプラインの待ち時
間を小さくし動作効率を向上させることができる。
【0009】また、本発明によれば、ページ記述言語で
記述された画像描画命令を実行して出力画像を得るため
の画像形成方法において、入力されたページ記述言語に
よる表現をそのページ記述言語の文法に従って解釈して
言語に依存しない中間表現を生成し、生成された言語非
依存の形式の中間表現をあらかじめ指定された粒度に従
って分割し、分割された前記中間表現を並列に動作する
複数のパイプラインに分配してそれぞれ画素表現に変換
し、それぞれ変換された画素表現を合成してページデー
タを生成することからなる画像形成方法が提供される。
【0010】このような画像形成方法によれば、入力さ
れたページ記述言語を一旦解釈して言語に依存しない中
間表現に変換し、これを分割の対象にしている。この中
間表現の分割は指定された粒度に従って行われるが、こ
のとき、同一の属性または属性の組を共有する中間表
現、または同一のシステム資源を利用する中間表現がま
とめられるように分割される。また、分割された中間表
現の中に現れる描画要素の予測負荷の和が閾値を越える
場合には、その中間表現を更に分割する。そして、分割
された中間表現は並列に動作する複数のパイプラインに
適当に分配されて画素形式に変換され、ページメモリに
おいて合成されることで目的の画像が形成される。
【0011】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は本発明の原理を示す構成図
である。本発明の画像形成装置は、ページ記述言語で記
述された画像描画命令を受ける解釈手段1と、この解釈
手段1の出力を受ける分割手段2と、この分割手段2に
接続された粒度指定手段3と、分割手段2の出力に接続
された分配手段4と、この分配手段4の出力を受けるよ
うに接続された複数の変換手段5a,5b,5c,・・
・と、これら複数の変換手段5a,5b,5c,・・・
の出力を受けるように接続された合成手段6とから構成
されている。
【0012】画像描画命令が解釈手段1に入力される
と、解釈手段1ではその画像描画命令を記述しているペ
ージ記述言語による表現がそのページ記述言語の文法に
従って解釈され、その解釈の結果として言語に依存しな
い中間表現を生成する。解釈手段1で生成された言語非
依存の中間表現には、描画図形データおよび属性データ
が含まれ、描画図形データには参照する属性データを特
定するための参照属性情報が含まれる。生成された中間
表現は分割手段2に送られる。分割手段2では、描画図
形データが参照する属性データと負荷予測手段が予測す
る負荷とが監視され、注目する属性値が変更されるか負
荷予測手段の予測する負荷が閾値を越えるかすると、入
力を別のブロックに分割する。あるいは、分割手段2に
おいて描画図形データが利用する資源と負荷予測手段が
予測する負荷とが監視され、利用する資源が異なるか負
荷予測手段の予測する負荷が閾値を越えるかすると、入
力を別のブロックに分割する。分割されたブロックは、
分配手段4によって、並列動作可能な複数の変換手段5
a,5b,5c,・・・に適切に分配され、ページの一
部を表す画素表現が生成される。生成された部分的な画
素表現は合成手段6に入力され、ページイメージに合成
される。
【0013】これにより、ページ記述言語から言語非依
存の中間表現に変換した後、ブロック分割するようにし
たので、属性を共有する中間表現のブロックを正しく識
別することができ、さらに負荷が均等になるようにブロ
ックの大きさを調整することにより、並列動作するパイ
プラインの待ち時間を小さくし動作効率を向上させるこ
とができる。
【0014】次に、本発明の実施の形態を、ネットワー
ク印刷システムに適用した場合を例にして説明する。図
2はネットワーク印刷システムの構成を示すブロック図
である。本発明による画像形成装置10はネットワーク
20を介して複数のクライアント計算機31,32,・
・・に接続されている。画像形成装置10は、クライア
ント計算機31,32,・・・から発行されたた印刷ジ
ョブを受け付けるようネットワーク20に接続された命
令解析部11と、この命令解析部の出力を受けるように
接続されたブロック分割部12と、このブロック分割部
12に対して指示を与えるように接続された分割指示部
13と、ブロック分割部12の出力を受けるように接続
されたブロック分配部14と、このブロック分配部14
とバス15を介して接続された四つの描画部16a,1
6b,16c,16dと、バス15にそれぞれ接続され
たページ合成部17およびページバッファ18と、この
ページバッファ18の出力を受けるように接続されたプ
リントインタフェース19とから構成されている。画像
形成装置10のプリントインタフェース19の出力はプ
リントエンジン40に接続されている。
【0015】この構成によれば、クライアント計算機3
1,32,・・・で作成された印刷ジョブはネットワー
ク20を介して画像形成装置10の命令解析部11に送
られる。命令解析部11では、受け取った印刷ジョブの
内容をページ記述言語の文法に従って解釈し、ページ記
述言語に依存しない中間形式の内部表現を生成する。生
成された内部表現はブロック分割部12に送られると、
分割指示部13によって指示される基準に従ってブロッ
クに分割されて、ブロック分配部14に送られる。ブロ
ック分配部14では、受け取ったブロックを複数の描画
部16a,16b,16cおよび16dのいずれかに分
配する。並列に動作する複数の描画部16a,16b,
16cおよび16dは、ブロック分配部14から分配さ
れたブロックに含まれる内部表現に従って描画を行う。
ページ合成部17は、描画部16a,16b,16cお
よび16dの描画結果を取り出して、ページバッファ1
8の所定位置に記録していくことにより、1ページ分の
画像をページバッファ18上に生成する。生成された画
像はプリントインタフェース19を介してプリントエン
ジン40に送られて印刷される。この画像形成装置10
の処理の流れを図3に示す。
【0016】図3は画像形成装置の処理の流れを示す図
である。まず、命令解析部11は、ページ記述言語によ
る表現を言語仕様に従って解釈し、解釈結果として言語
仕様に依存しない中間形式の内部表現を生成する。この
内部表現は、グラフィックス図形、テキストおよびイメ
ージなどの描画要素とそれらの描画要素が参照する属性
とから成る。
【0017】ここで、命令解析部11が生成する中間形
式の内部表現の例を図4に示す。図4はページ記述言語
から生成される中間形式の内部表現の一例を示す図であ
って、(A)は描画しようとする図形を示し、(B)は
ページ記述言語での記述例を示し、(C)は内部表現の
例を示している。この例においては、図4(A)に示し
たような描画図形110を印刷しようとした場合、この
描画図形110を表現するページ記述言語はたとえば図
4(B)に示すページ記述言語表現111によって表さ
れる。このページ記述言語表現111は例としてPos
tScript(米国アドビシステムズ社の各国での商
標または登録商標、以降省略)の表記に従った表現であ
る。命令解析部11はこのページ記述言語表現111を
解析することにより、ページ記述言語表現111から図
4(C)に示す中間形式の内部表現112に変換され
る。
【0018】この内部表現112において、記述112
aおよび112bは属性値の組を表している。属性値の
組の第1要素(A1,A2)はこの組の名前、第2要素
は線幅、第3要素は色値を表すものとする。記述112
cはクリップを表し、その第1要素は名前、第2要素は
図形要素列、第3要素はパラメータ列を表すものとす
る。この記述112cにおいて、パラメータ列としては
座標(50,50)を左下の頂点とし、幅300、高さ
300の長方形の領域でクリップすることを表してい
る。記述112dおよび112eは線図形を表し、その
第1要素は図形要素列を、第2要素はパラメータ列を、
第3要素は参照する属性値組を、第4要素は参照するク
リップを表すものとする。この記述112dにおいて
は、「A1」で示される記述112aの属性値を用い
て、(75,100)から(300,100)への直線
を「C1」のクリップに収まる範囲で描画することを示
している。そして、記述112fおよび112gは領域
図形を表し、その第1要素は図形要素列を、第2要素は
パラメータ列を、第3要素は参照する属性値組を、第4
要素は参照するクリップを表すものとする。記述112
fにおいては、「A2」で示される記述112bの属性
値を用いて、(150,100)を左下の頂点とし、幅
25、高さ100の長方形の内部を含む領域のうちC1
のクリップに収まる範囲を塗りつぶすことを表してい
る。
【0019】なお、本実施の形態においては、内部表現
112をテキストで記述したが、本発明はこれをテキス
トデータに限定するものではない。実際には、構造を有
するメモリ上のデータとして実現する。この場合は、参
照のための名前の代りにポインタを用いるなどの実装上
の工夫が施される。
【0020】次に、図3に戻って、ブロック分割部12
は、命令解析部11が生成する中間形式の内部表現11
2をブロックに分割する。分割の基準は分割指示部13
が属性を特定することで与えられ、ブロック分割部12
は分割指示部13が示す属性値を共通に参照する描画要
素の組が同一のブロックとなるように分割する。分割指
示部13に対する指定には、専用のユーザインタフェー
スを用いてもよいが、別の制御プログラムとの通信を用
いてもよい。別の制御プログラムとの通信を用いる方法
では、その制御プログラムでシステム全体の資源や能力
を勘案し、適切な分割方法およびパラメータを自動的に
与えることも可能である。また、ブロック分割と同時に
ブロック内の描画要素の数やそれらの複雑さから描画の
負荷を予測し、予測負荷が予め定めた閾値を越える場合
にはそのブロックを更に分割する。予測負荷は、グラフ
ィックス図形では例えば外形を定義する要素図形の数
を、またテキストでは例えば描画する文字列の長さを、
またイメージでは例えばイメージデータの大きさを調
べ、それぞれの処理負荷を勘案した適当な重み係数を乗
じる、などの簡便な方法で求めた値を用いればよい。こ
のブロック分割部12の処理の流れを図5に示す。
【0021】図5はブロック分割処理の流れを示すフロ
ーチャートである。ブロック分割部12で分割されるま
では、入力はシーケンシャルに解析されているので、ま
ず、入力が終端かどうかが判定されて(ステップS
1)、終端ならば、ブロック分割の処理は終了する。終
端でなければ、今、注目している内部表現112の記述
の参照している属性がその前の記述の参照している属性
と同じかどうかを判定する(ステップS2)。すなわ
ち、記述の参照している属性は保持されていて、その属
性が途中で変更されたかどうかを調べる。属性に変更が
なければ、今、注目している記述を現在のブロックに追
加し(ステップS3)、このブロックを描画部に割り当
てて実際に描画をさせたときの描画部の負荷を予測する
(ステップS4)。次に、同じブロック内で予測した負
荷の合計があらかじめ決めた閾値以上かどうかを判定す
る(ステップS5)。この判定において、今、処理して
いるブロックの予測負荷合計値が閾値以上でなければ、
次の記述を調べるために、ステップS1に戻る。ステッ
プS5の判定において、予測負荷が閾値以上であれば、
現在のブロックを終了して別のブロックにする(ステッ
プS6)。すなわち、同じ属性のブロックが大きくなっ
てきて、その予測負荷が閾値以上になると、そのブロッ
クはそこで打ち切って再分割するような処理をし、一つ
のブロックだけ、負荷が増大化してしまうのを防いでい
る。また、ステップS2の判定において、属性が変更さ
れた場合にも、処理内容が変わってくるので、現在のブ
ロックを終了して別のブロックにする。
【0022】こうして、内部表現をブロックに分割して
いくが、次に、そのブロック分割の具体例を図6に示
す。図6は内部表現のブロック分割の例を示す図であっ
て、(A)は描画図形を示し、(B)はその描画図形の
内部表現の例を示し、(C)は内部表現のブロック分割
の例を示している。描画される図形としては、図6
(A)に示したように二つのグラフ113,114があ
る。図6(B)はこれらのグラフ113,114に対応
する内部表現115である。この内部表現115によれ
ば、描画図形ごとに描画要素とそれらの描画要素が参照
する属性とから成っている。そして、この内部表現11
5は図6(C)に示したように、二つのブロック116
および117に分割されている。
【0023】このとき分割指示部13には、クリップを
共通に参照する描画図形の組をブロックに分割すること
と、分割されたブロックに含まれる描画図形の描画負荷
の和が越えてはならない閾値とが事前に与えられてい
る。この例においては、クリップC1またはC2を共通
に参照する描画図形の組とそれらから参照されるクリッ
プおよび属性の組からブロックが構成される。
【0024】予測負荷の値は、図形要素を調べ、たとえ
ば図形要素「line」に対しては「1」、図形要素
「rect」に対しては「4」、図形要素「arc」に
対しては「3」などの描画負荷に対応する重みを乗じ、
さらに線図形を表す「shape」に対しては「2」、
領域図形を表す「region」に対しては「1」など
の描画要素の種類に応じた重みを乗じることで簡単に求
めることができる。上に例示した値をそのまま用いれ
ば、ブロック116の予測負荷は「12」、ブロック1
17の予測負荷は「15」となる。ここで予測負荷の閾
値を「20」に設定すれば、ブロック116およびブロ
ック117は再分割の必要はないが、仮に予測負荷の閾
値を「13」に設定した場合には、ブロック117は更
に分割されることになる。この閾値は描画処理を行う描
画部の能力に応じて定めればよい。また、ここに示した
値は説明のために便宜的に用いたものであり、本発明は
これを限定するものではない。この予測負荷を求める処
理の流れを図7に示す。
【0025】図7はブロックの負荷予測処理の流れを示
すフローチャートである。まず、ブロックの負荷を初期
化し(ステップS11)、次いで、ブロックの終端かど
うかを調べる(ステップS12)。ブロックの終端でな
ければ、内部表現の記述から描画要素を選択する(ステ
ップS13)。次に、選択された描画要素がグラフィッ
クス図形かどうかを判定し(ステップS14)、グラフ
ィックス図形ならば、要素図形の負荷を算出する(ステ
ップS15)。もし、グラフィックス図形でなければ、
テキストかどうかを判定する(ステップS16)。ここ
で、テキストならば、文字列長から負荷を算出する(ス
テップS17)、テキストでなければ、選択された描画
要素はイメージであるので、そのデータ量から負荷を算
出する(ステップS18)。そして、算出された負荷は
加算されてブロックとしての負荷が求められ(ステップ
S19)、その後、ステップS12に戻る。
【0026】次に、図3に戻って、ブロック分配部14
は、ブロック分割部12が生成するブロックを複数の描
画部16a,16b,16cおよび16dのうち、その
時点で最も負荷の軽いものに割り当てることで、ブロッ
クを分配する。この分配処理の流れを図8に示す。
【0027】図8は分割されたブロックの分配処理の流
れを示すフローチャートである。まず、ブロック分配部
14は複数の描画部16a,16b,16cおよび16
dに対して負荷の問い合わせをする(ステップS2
1)。次いで、問い合わせにより得られた負荷から、負
荷の最も軽い描画部を選択する(ステップS22)。そ
して、ブロック分割部12より送られたブロックをその
選択された描画部に割り当てる(ステップS23)。
【0028】ブロックが割り当てられた複数の描画部1
6a,16b,16cおよび16dのそれぞれは、ブロ
ック内に現れる描画要素に対応する画素形式の画素表現
を作成して保存することで、ページの部分に相当する画
像を作成する。そして、ページ合成部17は、描画部1
6a,16b,16cおよび16dのそれぞれが生成し
たページの部分データを取り出して、ページバッファ1
8の所定位置に置いて合成していくことにより、1ペー
ジ分のデータをページバッファ18上に作成する。この
とき、分割指示部13が指示する分割の基準をクリップ
に設定しておけば、複数のクリップのそれぞれに対応す
るページバッファ内のメモリ領域に対するアクセスを個
々の描画部に分配することができるため、ページバッフ
ァ18に対するアクセスの競合を低減することができ
る。
【0029】次に、クライアントの作成した文書に対し
て画像形成装置10が実際に処理していく例を説明す
る。図9はクライアント計算機上で作成された文書の例
を示す図である。図示の文書200はたとえばクライア
ント計算機31にて作成されたもので、この文書200
によれば、一つのページに、二つの描画図形201,2
02と、二つのテキスト203,204とが作成されて
いる。このように作成された文書200はネットワーク
20を経由して画像形成装置10に送られるときには、
ページ記述言語による表現に変換される。
【0030】図10はページ記述言語による表現への変
換例を示す図である。クライアント計算機31におい
て、文書200はページ記述言語による表現210に変
換される。ここでは、この表現210を、たとえばPo
stScriptに従った表現方法にて示してある。こ
の表現210によれば、まず、描画図形201について
記述し、次に、テキスト203,204を記述し、最後
に描画図形202について記述している。
【0031】この文書200のページ記述言語による表
現210は、ネットワーク20を経由して画像形成装置
10の命令解析部11に与えられる。命令解析部11
は、ページ記述言語による表現210を受けて、それを
解釈し、対応する中間形式の内部表現を生成する。
【0032】図11は命令解析部により生成される内部
表現を示す図である。命令解析部11はページ記述言語
による表現210をシーケンシャルに解釈していき、そ
れに対応する中間形式の内部表現211を生成する。こ
の内部表現211もページ記述言語による表現210と
同様に、描画図形201、テキスト203,204、描
画図形202の順に記述されている。次に、生成された
内部表現211はブロック分割部12に渡され、ここで
ブロック分割される。
【0033】図12はブロック分割された内部表現を示
す図である。ブロック分割部12では、命令解析部11
より与えられた内部表現211が四つのブロック21
2,213,214および215に分割される。ここで
は同一のクリップを参照する描画要素の組がブロックと
なるように分割している。分割に際しては、同時にブロ
ックの描画時の負荷を求め、その値が予め定めた値を越
えないことように分割している。
【0034】なお、本実施の形態では、描画図形20
1,202およびテキスト203,204はそれぞれ予
め定めた負荷値を越えないので、内部表現211は四つ
のブロックに分割されている。また、クリップを分割の
基準として採用したが、本発明はこれを唯一の基準とす
るものではなく、色や破線形状などの属性やそれらの組
み合わせを用いてもよい。
【0035】こうして分割された四つのブロック21
2,213,214および215は、複数の描画部16
a,16b,16cおよび16dのうち処理負荷の軽い
描画部に割り当てられる。それぞれの描画部16a,1
6b,16c,16dは並列に動作しており、割り当て
られたブロックに含まれる描画要素に対応した画素表現
を生成する。
【0036】図13はブロックが割り当てられて部分デ
ータが生成される流れを示す図である。分割されたブロ
ック212,213,214および215はブロック分
配部14によるブロック割り当てが行われる。図示の例
では、ブロック212は描画部16aに、ブロック21
3は描画部16bに、ブロック214は描画部16c
に、そしてブロック215は描画部16dに割り当てら
れている。各描画部16a,16b,16c,16dで
は、それぞれ入力されたブロックの内部表現を画素表現
に変換する。これにより、各描画部16a,16b,1
6c,16dからは、ページデータの一部を構成する画
素表現の部分データ216,217,218および21
9が生成される。
【0037】図14は部分データを合成する流れを示す
図である。各描画部16a,16b,16c,16dに
おいて生成された部分データ216,217,218お
よび219は、ページ合成部17によりページバッファ
18に送られてページイメージのデータに合成される。
この1ページ分の印刷データ220は、プリントインタ
フェース19を通してプリントエンジン40に送られて
印刷される。
【0038】以上の方法でページ記述言語の入力を解釈
実行すれば、並列実行可能で描画負荷の差の少ないブロ
ックを簡単な方法で求められるため、複数の描画部を効
率的に並列動作させる高速なプリンタを構成することが
可能となる。
【0039】次に、ネットワーク印刷システムに適用し
た本発明の別の実施の形態について説明する。図15は
ネットワーク印刷システムの構成を示すブロック図であ
る。この図において、図2に示したネットワーク印刷シ
ステムの要素と同じ要素については同一の参照符号を付
して詳細な説明は省略する。本実施の形態の画像形成装
置10aは命令解析部11と、ブロック分割部12と、
分割指示部13と、ブロック分配部14と、バス15
と、描画部16a,16b,16c,16dと、ページ
合成部17と、ページバッファ18と、プリントインタ
フェース19とに加え、バス15に接続されたシステム
資源インタフェース51を備えている。このシステム資
源インタフェース51はシステム資源50に接続されて
いる。システム資源50としては、たとえば計算機上の
ファイルシステム、フォント、システムの一部として組
み込まれているハードウェアアクセラレータなどがあ
る。
【0040】この画像形成装置10aの構成において、
クライアント計算機31または32で作成された印刷ジ
ョブはネットワーク20を介して命令解析部11に送ら
れる。命令解析部11では、受け取った印刷ジョブの内
容をページ記述言語の文法に従って解釈し、ページ記述
言語に依存しない中間形式の内部表現を生成する。生成
された内部表現はブロック分割部12に送られ、分割指
示部13によって指示される基準に従ってブロックに分
割され、ブロック分配部14に送られる。ブロック分配
部14では、受け取ったブロックを複数の描画部16
a,16b,16cおよび16dのいずれかに分配す
る。並列に動作する複数の描画部16a,16b,16
cおよび16dは、ブロック分配部14から分配された
ブロックに含まれる中間形式の内部表現に従って描画を
行う。このとき、必要ならばシステム資源インターフェ
ース51を通してシステム資源50にアクセスする。ペ
ージ合成部17は、描画部の描画結果を合成し、1ペー
ジ分の画像をページバッファ18上に生成する。生成さ
れた画像はプリントインターフェース19を介してプリ
ントエンジン40に送られて印刷される。
【0041】命令解析部11の動作は図2の実施の形態
と同様であるため、説明を省略する。ブロック分割部1
2は、命令解析部11が生成する中間形式の内部表現を
ブロックに分割する。分割の基準は分割指示部13がシ
ステム資源を特定することで与えられ、ブロック分割部
12は分割指示部13が示すシステム資源を共通に利用
する描画要素の組が同一のブロックとなるように分割す
る。同時に、ブロック内の描画要素の数やそれらの複雑
さから描画の負荷を予測し、予測負荷が予め定めた閾値
を越える場合にはそのブロックをさらに分割する。ブロ
ック分配部14、描画部16a,16b,16c,16
d、ページ合成部17の動作は図2の実施の形態と同様
であるため、説明を省略する。
【0042】上述の構成で汎用計算機上に本発明の画像
形成装置を構築すれば、計算機上のファイルシステム、
フォント、ハードウェアアクセラレータなどの共有資源
へのアクセスの競合を低減することができるため、複数
の描画部を効率的に並列動作させる高速なプリンタシス
テムを構成することが可能となる。
【0043】次に、クライアントの作成した文書に対し
て画像形成装置10aが実際に処理していく例を説明す
る。図16はクライアント計算機上で作成された文書の
例を示す図である。図示の文書300はたとえばクライ
アント計算機31にて作成されたもので、この文書30
0によれば、一つのページに、二つの描画図形301,
302と、二つのテキスト303,304と、2種類の
イメージ305,306とが作成されている。このよう
に作成された文書300はページ記述言語による表現に
変換され、ネットワーク20を経由して画像形成装置1
0aに送られる。画像形成装置10aの命令解析部11
では、そのページ記述言語による表現を解析して、中間
形式の内部表現に変換する。
【0044】図17は命令解析部により生成される内部
表現を示す図であり、図18はブロック分割された内部
表現を示す図である。ページ記述言語による表現はシー
ケンシャルに解釈され、それに対応する中間形式の内部
表現310が生成される。この内部表現310におい
て、「image」はイメージを描画することを表して
おり、「import」はそのイメージデータをシステ
ム資源インタフェース51を通して画像形成装置10a
の外部にあるシステム資源50から取得することを表し
ている。このようなシステム資源50を参照する描画要
素は、同じブロック311にまとめられる。また、その
他の描画要素である描画図形301,302およびテキ
スト303,304はそれぞれ一つのブロック312,
313,314および315にまとめられる。
【0045】イメージデータを取得する記述が複数のブ
ロックに現れると、それらを描画部が描画する際にシス
テム資源50への複数のアクセスが起こり、そのために
描画部によっては待ち時間が発生して、並列処理の効率
が低下してしまうことが予想される。そのため、これら
の描画要素は、異なるクリップを参照していても、同じ
ブロックになるように分割される。
【0046】ブロック分配部14による描画部への分
配、描画結果の合成、および印刷の動作は図13および
図14における実施の形態と同様であるため、説明を省
略する。
【0047】
【発明の効果】以上説明したように本発明では、入力さ
れたページ記述言語を一旦言語非依存の中間形式の内部
表現に変換し、この内部表現を分割の対象とする構成に
した。これにより、複数の変換手段が画素表現への変換
動作を並列に行うために分割される表現はそれぞれ解釈
後の表現なため、分割は正しい状態独立な形で行うこと
ができる。また、分割の際には、共通の描画属性を参照
するような描画図形に関しては、これらを一つのブロッ
クに入るようにしたので、参照する対象が一つにまとま
り、処理を最適化、高速化することができる。さらに、
フォントなどの共用のシステム資源を使うことがあらか
じめ分かっている描画図形についても一つのブロックに
まとめるようにしたので、システム資源に対するアクセ
スの競合を避けることができる。
【図面の簡単な説明】
【図1】本発明の原理を示す構成図である。
【図2】ネットワーク印刷システムの構成を示すブロッ
ク図である。
【図3】画像形成装置の処理の流れを示す図である。
【図4】ページ記述言語から生成される中間形式の内部
表現の一例を示す図であって、(A)は描画しようとす
る図形を示し、(B)はページ記述言語での記述例を示
し、(C)は内部表現の例を示している。
【図5】ブロック分割処理の流れを示すフローチャート
である。
【図6】内部表現のブロック分割の例を示す図であっ
て、(A)は描画図形を示し、(B)はその描画図形の
内部表現の例を示し、(C)は内部表現のブロック分割
の例を示している。
【図7】ブロックの負荷予測処理の流れを示すフローチ
ャートである。
【図8】分割されたブロックの分配処理の流れを示すフ
ローチャートである。
【図9】クライアント計算機上で作成された文書の例を
示す図である。
【図10】ページ記述言語による表現への変換例を示す
図である。
【図11】命令解析部により生成される内部表現を示す
図である。
【図12】ブロック分割された内部表現を示す図であ
る。
【図13】ブロックが割り当てられて部分データが生成
される流れを示す図である。
【図14】部分データを合成する流れを示す図である。
【図15】ネットワーク印刷システムの構成を示すブロ
ック図である。
【図16】クライアント計算機上で作成された文書の例
を示す図である。
【図17】命令解析部により生成される内部表現を示す
図である。
【図18】ブロック分割された内部表現を示す図であ
る。
【符号の説明】
1 解釈手段 2 分割手段 3 粒度指定手段 4 分配手段 5a,5b,5c,・・・ 変換手段 6 合成手段

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 ページ記述言語で記述された画像描画命
    令を実行して出力画像を得るための画像形成装置におい
    て、 入力されたページ記述言語による表現をそのページ記述
    言語の文法に従って解釈して言語に依存しない中間表現
    を生成する解釈手段と、 生成された言語非依存の形式の中間表現をブロックに分
    割する分割手段と、 前記分割手段に対して中間表現をブロックに分割すると
    きの分割の粒度を指定する粒度指定手段と、 分割された前記中間表現の各ブロックをそれぞれ画素表
    現へ変換する複数の変換手段と、 前記分割手段によって分割された中間表現の各ブロック
    を前記複数の変換手段に分配する分配手段と、 前記複数の変換手段がそれぞれ生成した画素表現を合成
    する合成手段と、 を備えていることを特徴とする画像形成装置。
  2. 【請求項2】 前記複数の変換手段は、それぞれ分配さ
    れたブロックの中間表現の画素表現への変換動作をそれ
    ぞれ並列に行うことを特徴とする請求項1記載の画像形
    成装置。
  3. 【請求項3】 前記粒度指定手段は、共通の描画属性を
    有する中間表現を一つのブロックにまとめるような分割
    の指示を前記分割手段に与えることを特徴とする請求項
    2記載の画像形成装置。
  4. 【請求項4】 前記分割手段は、分割されたブロック内
    の中間表現の描画負荷を監視し、前記描画負荷があらか
    じめ指定された負荷を越える場合には、分割されたブロ
    ックをさらに分割する負荷予測手段を有することを特徴
    とする請求項1記載の画像形成装置。
  5. 【請求項5】 前記粒度指定手段は、前記分割手段が分
    割したブロックをさらに分割するかどうかの負荷の値を
    指定する手段を有することを特徴とする請求項4記載の
    画像形成装置。
  6. 【請求項6】 前記粒度指定手段は、共通の資源を参照
    する中間表現を一つのブロックにまとめるような分割の
    指示を前記分割手段に与えることを特徴とする請求項2
    記載の画像形成装置。
  7. 【請求項7】 ページ記述言語で記述された画像描画命
    令を実行して出力画像を得るための画像形成方法におい
    て、 入力されたページ記述言語による表現をそのページ記述
    言語の文法に従って解釈して言語に依存しない中間表現
    を生成し、 生成された言語非依存の形式の中間表現をあらかじめ指
    定された粒度に従って分割し、 分割された前記中間表現を並列に動作する複数のパイプ
    ラインに分配してそれぞれ画素表現に変換し、 それぞれ変換された画素表現を合成してページデータを
    生成する、 ことからなる画像形成方法。
  8. 【請求項8】 前記分割するステップは、共通の描画属
    性を有する中間表現についてはこれを一つにまとめるよ
    うに分割することを特徴とする請求項7記載の画像形成
    方法。
  9. 【請求項9】 前記分割するステップは、共通の資源を
    参照する中間表現についてはこれを一つにまとめるよう
    に分割することを特徴とする請求項7記載の画像形成方
    法。
  10. 【請求項10】 前記分割するステップは、分割して一
    つにまとめられた中間表現の描画負荷が所定の負荷を越
    える場合には、まとめられた中間表現をさらに分割する
    ことを特徴とする請求項8または9記載の画像形成方
    法。
JP9001637A 1997-01-08 1997-01-08 画像形成装置および画像形成方法 Pending JPH10198539A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9001637A JPH10198539A (ja) 1997-01-08 1997-01-08 画像形成装置および画像形成方法
US08/996,219 US6088480A (en) 1997-01-08 1997-12-22 Image forming apparatus and image forming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9001637A JPH10198539A (ja) 1997-01-08 1997-01-08 画像形成装置および画像形成方法

Publications (1)

Publication Number Publication Date
JPH10198539A true JPH10198539A (ja) 1998-07-31

Family

ID=11507051

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9001637A Pending JPH10198539A (ja) 1997-01-08 1997-01-08 画像形成装置および画像形成方法

Country Status (2)

Country Link
US (1) US6088480A (ja)
JP (1) JPH10198539A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193655A (ja) * 2006-01-20 2007-08-02 Sharp Corp 電子ドキュメントデータ処理装置、電子ドキュメントデータ処理方法およびコンピュータを電子ドキュメントデータ処理装置として機能させるためのプログラム
JP2010541041A (ja) * 2007-09-20 2010-12-24 イーストマン コダック カンパニー ページ記述言語の並行処理
JP2011096280A (ja) * 2011-01-21 2011-05-12 Fuji Xerox Co Ltd 画像データ生成装置、画像形成装置およびプログラム
JP2012053612A (ja) * 2010-08-31 2012-03-15 Kyocera Mita Corp 画像形成装置および画像形成プログラム
JP2013012221A (ja) * 2012-08-27 2013-01-17 Fuji Xerox Co Ltd 画像データ生成装置、画像形成装置およびプログラム
JP2013061986A (ja) * 2012-12-21 2013-04-04 Fuji Xerox Co Ltd 画像データ生成装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3348833B2 (ja) * 1998-07-10 2002-11-20 富士通株式会社 動画像合成装置
US6515760B1 (en) * 1998-09-09 2003-02-04 Eastman Kodak Company Method and apparatus for manipulating digital image data
US6880122B1 (en) * 1999-05-13 2005-04-12 Hewlett-Packard Development Company, L.P. Segmenting a document into regions associated with a data type, and assigning pipelines to process such regions
US6963411B1 (en) * 2000-01-07 2005-11-08 Eastman Kodak Company Optimized printing system
US7114124B2 (en) * 2000-02-28 2006-09-26 Xerox Corporation Method and system for information retrieval from query evaluations of very large full-text databases
US6915444B2 (en) * 2001-09-12 2005-07-05 Rockwell Automation Technologies, Inc. Network independent safety protocol for industrial controller using data manipulation techniques
US20070214235A1 (en) * 2006-03-09 2007-09-13 Kevin Woods Application server for processing medical image data
JP2009241524A (ja) * 2008-03-31 2009-10-22 Brother Ind Ltd 画像出力装置
US8411319B2 (en) * 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339671B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
US8339672B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US20100245889A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339653B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
US8339670B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on graphic-list partitioning
JP2012218178A (ja) * 2011-04-04 2012-11-12 Canon Inc 画像形成装置、その制御方法及びプログラム。
JP6172649B2 (ja) 2012-12-19 2017-08-02 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、プログラム、及び、情報処理方法
CN105448273A (zh) * 2014-09-01 2016-03-30 扬智科技股份有限公司 影像处理方法及系统
US11605187B1 (en) * 2020-08-18 2023-03-14 Corel Corporation Drawing function identification in graphics applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157765A (en) * 1989-11-15 1992-10-20 International Business Machines Corporation Method and apparatus for pipelined parallel rasterization
JPH07117284A (ja) * 1993-10-26 1995-05-09 Canon Inc 画像処理装置及びその方法
JP3030485B2 (ja) * 1994-03-17 2000-04-10 富士通株式会社 3次元形状抽出方法及び装置
US5852676A (en) * 1995-04-11 1998-12-22 Teraform Inc. Method and apparatus for locating and identifying fields within a document
US5784077A (en) * 1995-04-12 1998-07-21 Eastman Kodak Company Digital printing using plural cooperative modular printing devices
US5774579A (en) * 1995-08-11 1998-06-30 Canon Kabushiki Kaisha Block selection system in which overlapping blocks are decomposed
EP0768324B1 (en) * 1995-10-10 2000-08-16 Bayer Ag Continuous process for the preparation of highly stable, finely divided, low viscosity polymer polyols of small average particle size
US5841900A (en) * 1996-01-11 1998-11-24 Xerox Corporation Method for graph-based table recognition

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007193655A (ja) * 2006-01-20 2007-08-02 Sharp Corp 電子ドキュメントデータ処理装置、電子ドキュメントデータ処理方法およびコンピュータを電子ドキュメントデータ処理装置として機能させるためのプログラム
JP2010541041A (ja) * 2007-09-20 2010-12-24 イーストマン コダック カンパニー ページ記述言語の並行処理
JP2012053612A (ja) * 2010-08-31 2012-03-15 Kyocera Mita Corp 画像形成装置および画像形成プログラム
JP2011096280A (ja) * 2011-01-21 2011-05-12 Fuji Xerox Co Ltd 画像データ生成装置、画像形成装置およびプログラム
JP2013012221A (ja) * 2012-08-27 2013-01-17 Fuji Xerox Co Ltd 画像データ生成装置、画像形成装置およびプログラム
JP2013061986A (ja) * 2012-12-21 2013-04-04 Fuji Xerox Co Ltd 画像データ生成装置

Also Published As

Publication number Publication date
US6088480A (en) 2000-07-11

Similar Documents

Publication Publication Date Title
JPH10198539A (ja) 画像形成装置および画像形成方法
US6339424B1 (en) Drawing processor
US6825943B1 (en) Method and apparatus to permit efficient multiple parallel image processing of large jobs
US5987226A (en) Printing system and method
JP2910649B2 (ja) 画像形成装置および画像形成方法
JP3417742B2 (ja) 印刷処理装置および方法
US5768489A (en) Print processing system and method
US8625133B2 (en) Print data processing apparatus, print data processing method, and storage medium
JP2001199105A (ja) 可変データ・パブリッシング印刷装置
US8223353B2 (en) Multiple processor print driver
JP5655392B2 (ja) 印刷画像処理装置及びプログラム
JP4482525B2 (ja) 画像形成装置
US8334989B2 (en) Printing device and method for parallel processing of data
US6975416B2 (en) Print control apparatus and method
US9672063B2 (en) Scheduling, interpreting and rasterising tasks in a multi-threaded raster image processor
JP5268427B2 (ja) 画像形成装置及び画像形成システム
AU2012203635B2 (en) Print control device and program
JP2011051234A (ja) 画像処理装置、画像形成装置、及び画像処理プログラム
JPH1131052A (ja) 文書処理システム
JPH11259644A (ja) 画像形成装置および画像形成方法
JPH1040360A (ja) 命令解析装置
JPH1040040A (ja) 印刷処理装置
JPH1011593A (ja) 画像形成装置
JPH09204277A (ja) 印刷処理システム
JP2005149325A (ja) 情報処理装置及び情報処理方法