JP2001150732A - カラー印刷システム及びそれに用いる描画コマンド生成方法 - Google Patents

カラー印刷システム及びそれに用いる描画コマンド生成方法

Info

Publication number
JP2001150732A
JP2001150732A JP33216999A JP33216999A JP2001150732A JP 2001150732 A JP2001150732 A JP 2001150732A JP 33216999 A JP33216999 A JP 33216999A JP 33216999 A JP33216999 A JP 33216999A JP 2001150732 A JP2001150732 A JP 2001150732A
Authority
JP
Japan
Prior art keywords
printer
command
driver
band
bands
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
JP33216999A
Other languages
English (en)
Other versions
JP3573035B2 (ja
Inventor
Maki Watanabe
真基 渡辺
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP33216999A priority Critical patent/JP3573035B2/ja
Publication of JP2001150732A publication Critical patent/JP2001150732A/ja
Application granted granted Critical
Publication of JP3573035B2 publication Critical patent/JP3573035B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Color, Gradation (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)

Abstract

(57)【要約】 【課題】 プリンタ内で描画部をもつカラープリンタに
おいて高速で最適な描画処理が可能なカラー印刷システ
ムを提供する。 【解決手段】 コマンド解析部17は描画コマンドによ
って各印刷可能範囲内を帯状に分割したバンドのどこに
描画されるのかを振り分け、バンド毎にカラーフラグに
セットする。コマンド解析部17はバンド毎に描画コマ
ンドで同一バンド内に重なる部分が存在するかどうかの
解析を行い、解析を行ったバンド毎の描画パラメータか
らバンド毎に描画負荷パラメータを計算する。マンド解
析部17はバンド毎に計算された描画負荷パラメータを
元に、各バンド毎にホストコンピュータ10内に存在す
るドライバ描画部18と、プリンタ内に存在する高速描
画デバイスと、プリンタ内に存在するF/W描画部との
うちいずれを使用して行うかの描画先フラグを割り振
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はカラー印刷システム
及びそれに用いる描画コマンド生成方法に関し、特にカ
ラー印刷可能なプリンタシステムに関する。
【0002】
【従来の技術】従来、カラー印刷可能な印刷装置におい
ては、大きく分けると、インクジェットプリンタ等のプ
リンタ内に描画部を持たないプリンタシステムと、レー
ザプリンタ等のプリンタ内に描画部を持つプリンタシス
テムとの二種類がある。
【0003】プリンタ内に描画部を持たないプリンタシ
ステムでは、ホストコンピュータにインストールされて
いるプリンタドライバにおいて、予め文字、図形、ビッ
トマップ等の印刷データをビット展開し、論理演算を行
い、印刷装置がそのまま印刷できる状態に変換し、印刷
装置へカラー画像として出力している。
【0004】
【発明が解決しようとする課題】上述した従来のプリン
タシステムでは、プリンタ内に描画部を持たないプリン
タシステムの場合、プリンタドライバがインストールさ
れているホストコンピュータ側でシアン(C)、マゼン
ダ(M)、イエロー(Y)、ブラック(K)4色分のビ
ットイメージを作成する必要があるため、処理負担が大
きく印刷開始までに時間がかかったり、CMYK4色分
のイメージデータ量を転送しなければならず、印刷に時
間がかかるという問題がある。
【0005】また、レーザプリンタ等のプリンタ内に描
画部を持つプリンタでは、プリンタが解釈できるプリン
タ言語に変換して転送するため、プリンタ内に描画部を
持たないプリンタに送るデータ量に比べ、データ量は少
ないが、プリンタの処理負担が大きくなるという問題が
ある。
【0006】そのため、プリンタの処理負担を減らす目
的で高速な描画デバイスを搭載するカラーレーザプリン
タも少なくない。しかしながら、ホストコンピュータ側
のプリンタドライバで描画処理を行おうが、プリンタ側
で描画処理を行おうが、処理時間のほとんどは、描画処
理時間にかかっている。
【0007】そこで、本発明の目的は上記の問題点を解
消し、プリンタ内で描画部をもつカラープリンタにおい
て高速で最適な描画処理を行うことができるカラー印刷
システム及びそれに用いる描画コマンド生成方法を提供
することにある。
【0008】本発明の他の目的は、プリンタドライバと
プリンタとの描画処理分担を最適化することができるカ
ラー印刷システム及びそれに用いる描画コマンド生成方
法を提供することにある。
【0009】
【課題を解決するための手段】本発明によるカラー印刷
システムは、描画コマンドに基づいて印刷を行うプリン
タと、前記描画コマンドを発行するプリンタドライバを
含むホストコンピュータとからなるカラー印刷システム
であって、前記描画コマンドを解析してオブジェクトの
描画範囲から印刷可能範囲内を帯状に分割した領域を示
す複数のバンド毎にコマンドを振り分ける手段と、前記
複数のバンド毎の独立性を持たせかつ前記コマンドをま
とめる手段と、前記複数のバンド毎のコマンドに基づい
て前記オブジェクトの描画処理を行うドライバ描画手段
とを前記プリンタドライバに備え、前記複数のバンド毎
のコマンドに基づいて2値あるいは多値で前記オブジェ
クトの描画処理を高速に行う高速描画デバイスと、前記
高速描画デバイスと同様な機能を組込型ソフトウェアで
実現したファームウェア描画手段とを前記プリンタに備
え、前記ドライバ描画手段と前記高速描画デバイスと前
記ファームウェア描画手段とのうちのいずれかの組合せ
で前記複数のバンド毎に前記オブジェクトの並列描画処
理を自在としている。
【0010】本発明による他のカラー印刷システムは、
上記の構成のほかに、前記プリンタドライバ内で前記描
画コマンドを解析した結果が1ページすべてモノクロデ
ータの場合に前記複数のバンド毎にコマンドを振り分け
る手段を前記プリンタに具備し、前記プリンタ内で前記
複数のバンド毎に前記並列描画処理を行うよう構成して
いる。
【0011】本発明による描画コマンド生成方法は、描
画コマンドに基づいて印刷を行うプリンタと、前記描画
コマンドを発行するプリンタドライバを含むホストコン
ピュータとからなり、前記描画コマンドに基づいて前記
オブジェクトの描画処理を行うドライバ描画手段を前記
プリンタドライバに含み、前記描画コマンドに基づいて
2値あるいは多値で前記オブジェクトの描画処理を高速
に行う高速描画デバイスと、前記高速描画デバイスと同
様な機能を組込型ソフトウェアで実現したファームウェ
ア描画手段とを前記プリンタに含むカラー印刷システム
の描画コマンド生成方法であって、前記描画コマンドを
解析してオブジェクトの描画範囲から印刷可能範囲内を
帯状に分割した領域を示す複数のバンド毎にコマンドを
振り分けるステップと、前記複数のバンド毎の独立性を
持たせかつ前記コマンドをまとめるステップとを前記プ
リンタドライバに備え、前記ドライバ描画手段と前記高
速描画デバイスと前記ファームウェア描画手段とのうち
のいずれかの組合せで前記複数のバンド毎に前記オブジ
ェクトの並列描画処理を自在としている。
【0012】本発明による他の描画コマンド生成方法
は、上記のステップのほかに、前記プリンタドライバ内
で前記描画コマンドを解析した結果が1ページすべてモ
ノクロデータの場合に前記複数のバンド毎にコマンドを
振り分けるステップを前記プリンタに具備し、前記プリ
ンタ内で前記複数のバンド毎に前記並列描画処理を行う
ようにしている。
【0013】すなわち、本発明のカラー印刷システム
は、ホストコンピュータに提供されている描画部を有す
るプリンタドライバと、プリンタドライバから印刷コマ
ンドを受け取って印刷を行うプリンタとを備えており、
プリンタに、高速な描画可能な高速描画デバイスと高速
描画デバイスと同等な描画機能を組込型ソフトウェアで
実現したF/W(ファームウェア)描画部とを有してい
る。
【0014】これによって、本発明のカラー印刷システ
ムでは、ホストコンピュータ内にあるプリンタドライバ
の描画部(高速描画デバイスと同等な描画機能)と、プ
リンタに組込まれている高速描画デバイスと、組込みソ
フトウェアで実現したF/W描画部とを組合せて印刷を
行うことが可能となる。
【0015】より具体的に、本発明のプリンタでは、プ
リンタドライバからバンド毎に分割された描画コマンド
に基づいてCMYK各色2値あるいは多値で高速に描画
を行う高速描画デバイスと、高速描画デバイスと同様な
機能を組込型ソフトウェアで実現したF/W描画部とを
バンド毎に処理を行うことが可能なカラー印刷システム
において、プリンタドライバ内のコマンド解析部で中間
言語(描画データ)を解析し、バンド毎に描画部が処理
できる描画コマンドの作成を行う。
【0016】プリンタドライバは次に各バンド毎に分割
された中間言語の解析を行い、中間言語のデータ量やバ
ンド毎の描画面積、バンドの色情報、描画の重ね合わせ
が存在するかどうか等の情報を元にバンド毎に描画負荷
パラメータを求める。
【0017】プリンタドライバは求められた描画負荷パ
ラメータを元に、描画処理のスケジューリング行い、バ
ンド毎に分割された中間言語に描画場所のパラメータを
付加する。
【0018】プリンタドライバは各バンド毎に設定され
た描画場所のパラメータを元に、各バンド毎にホストコ
ンピュータ内に存在する描画部を使用した描画を行う
か、あるいはプリンタ内に存在する高速描画デバイスを
使用して描画を行うか、またはプリンタ内に存在するF
/W描画部を使用して行うかを割り振り、分散処理を行
うことによって、従来に比べて高速な印刷を行うことが
可能となる。
【0019】また、1ページのデータがすべてモノクロ
のデータの場合には、プリンタドライバ内で各バンド毎
に分割された描画コマンドを作成し、プリンタ側に転送
した際にデータ量が多くなり、プリンタへの転送時間が
かかりトータルの印刷時間が長くなることが多い。
【0020】そこで、プリンタドライバ内に存在するコ
マンド解析部と同等な機能をプリンタ側のコマンド解析
部に設け、プリンタ側でも各バンド毎に分割処理を行
い、プリンタ内の描画が処理可能な中間言語を作成する
機能を設けることによって、ホストコンピュータとプリ
ンタとの最適な処理負荷分散を実現することが可能とな
る。
【0021】
【発明の実施の形態】次に、本発明の実施例について図
面を参照して説明する。図1は本発明の一実施例による
カラー印刷システムの構成を示すブロック図である。図
1において、本発明の一実施例によるカラー印刷システ
ムはCPU(制御部)1と、キーボード2と、表示装置
3と、ROM(リードオンリメモリ)4と、RAM(ラ
ンダムアクセスメモリ)5と、ハードディスク6と、プ
リンタインタフェース7と、プリンタ8とから構成され
ている。
【0022】CPU1は本実施例のホストコンピュータ
全体の制御に関わるものである。キーボード2は各種デ
ータを入力するものであり、表示装置3はRAM5に蓄
えられている画像データを表示するものである。
【0023】ROM4は装置全体を制御する制御手段及
びその他の必要な情報を予め記憶する。RAM5はワー
クエリアとして用意されている。ハードディスク6は各
種データの読み書きやプログラムを格納する補助記憶装
置である。プリンタインタフェース7はプリンタ8への
入出力を制御するものである。
【0024】ここで、CPU1とキーボード2と表示装
置3とROM4とRAM5とハードディスク6とプリン
タインタフェース7とはデータバスを介して相互に接続
されており、データバスは各種データを転送するために
用いられる。
【0025】尚、ハードディスク6にはアプリケーショ
ンプログラムやオペレーティングシステムやプリンタド
ライバ等が格納されており、これらのプログラムはRA
M5にロードされてCPU1によって実行され、各部が
制御される。
【0026】図2は本発明の一実施例によるホストコン
ピュータの構成を示すブロック図であり、図3は本発明
の一実施例によるプリンタの構成を示すブロック図であ
る。図2において、ホストコンピュータ10はアプリケ
ーションプログラム11と、オペレーティングシステム
12とを備えている。
【0027】オペレーティングシステム12はGDI
(グラフィックデバイスインタフェース)モジュール1
3と、プリンタドライバ14と、スプーラ21とを備え
ており、プリンタドライバ14はDDI(デバイスドラ
イバインタフェース)インタフェース部15と、ユーザ
インタフェース部16と、コマンド解析部17と、ドラ
イバ描画部18と、色変換処理部19と、プリンタ言語
変換処理部20とからなっている。
【0028】図3において、プリンタ30はプリンタイ
ンタフェース31と、受信バッファ32と、コマンド解
析部33と、プリンタ制御部34と、印刷制御部35
と、F/W描画部36と、高速描画デバイス37と、ペ
ージメモリ38と、イメージ圧縮デバイス39と、出力
制御部40と、プリンタエンジン部41とから構成され
ている。
【0029】これら図2及び図3を参照してホストコン
ピュータ10とプリンタ30とについて説明する。オペ
レーティングシステム12はGDIモジュール13をア
プリケーションプログラム11に対して提供するもので
ある。
【0030】GDIモジュール13はデバイスドライバ
開発のために予め規定されたプリンタやディスプレイ等
の出力デバイスには依存しないグラフィック用インタフ
ェースをアプリケーションプログラム11に対して提供
するものである。
【0031】また、GDIモジュール13はデバイスド
ライバ開発のために予め規定されたDDIをデバイスド
ライバに対して提供する。デバイスドライバはこのDD
Iに合わせて、対応するデバイス(本実施例の場合はプ
リンタドライバ14)を設計する。GDIモジュール1
3はデバイス非依存形式のGDIのファンクションコー
ルをデバイス依存形式のDDIファンクションコールに
変換する役割を持つ。
【0032】プリンタドライバ14はアプリケーション
プログラム11からGDIモジュール13を通じて与え
られる描画命令を、プリンタ30が認識できる出力デー
タ形式に変換するものである。
【0033】ユーザインタフェース部16はユーザから
の詳細な印刷設定の情報を取得する機能である。DDI
インタフェース部15は描画ファンクションを描画する
ために解析可能な中間言語に変換する。
【0034】コマンド解析部17は描画コマンドによっ
て描画される領域の上限座標と下限座標とから、各印刷
可能範囲内を帯状に分割した領域のどの領域に描画され
るのかを振り分ける。以後、各印刷可能範囲内を帯状に
分割した領域をバンドと呼ぶ。また、コマンド解析部1
7はBrush(文字や矩形の色)設定コマンドの色に
関するデータの検索を行い、バンド毎にカラーフラグに
セットする。
【0035】さらに、コマンド解析部17はバンド毎に
描画コマンドで同一バンド内に重なる部分が存在するか
どうかの解析を行う。コマンド解析部17は解析を行っ
たバンド毎の描画パラメータから、バンド毎に描画負荷
パラメータを計算する。
【0036】コマンド解析部17はバンド毎に計算され
た描画負荷パラメータを元に、各バンド毎にホストコン
ピュータ10内に存在するドライバ描画部18を使用し
た描画を行うか、あるいはプリンタ30内に存在する高
速描画デバイス37を使用して描画を行うか、またはプ
リンタ30内に存在するF/W描画部36を使用して行
うかの描画先フラグを割り振る。
【0037】ホストコンピュータ10内に存在するドラ
イバ描画部18、プリンタ30内に存在する高速描画デ
バイス37、プリンタ30内に存在するF/W描画部3
6はそれぞれ同等の描画機能を有している。
【0038】プリンタ言語変換処理部20はバンド毎に
割り振られた描画コマンドをプリンタ30が解釈できる
プリンタ言語に変換し、バンド毎のデータをまとめて、
スプーラ21を通してプリンタ30側へ送信する。この
時、ホストコンピュータ10内に存在するドライバ描画
部18に割り振られる場合には、プリンタ言語変換処理
部20とドライバ描画部18との並列処理を行う。
【0039】ホストコンピュータ10内に存在するドラ
イバ描画部18は色変換処理部19を使用しながらバン
ドの描画処理を行う。また、ホストコンピュータ10か
ら送られてきたプリンタデータはプリンタインタフェー
ス31を通し、プリンタ30内の受信バッファ32に入
る。
【0040】受信バッファ32に入ったデータはプリン
タ30内のコマンド解析部33でF/W描画部36や高
速描画デバイス37が解釈できるデータ形式に変換され
る。ここで、プリンタ30内のコマンド解析部33はプ
リンタドライバ14内に存在するコマンド解析部17と
同等な機能を有している。
【0041】プリンタ制御部34は受信バッファ32、
コマンド解析部33、印刷制御部35、出力制御部40
それぞれの動作管理を行う。コマンド解析部33で変換
されたデータは印刷制御部35によってデータに付加さ
れた描画先フラグを元に高速描画デバイス37とF/W
描画部36とに割り振られる。
【0042】高速描画デバイス37は専用の描画ASI
C(Application Specific In
tegrated Circuit:特定用途向け集積
回路)のため、F/W描画部36と並列動作が可能であ
る。
【0043】高速描画デバイス37あるいはF/W描画
部36はCMYK各色毎に分解された描画イメージをメ
モリに展開する。メモリにCMYK各色毎に分解された
描画イメージは圧縮デバイスによって可逆圧縮法で圧縮
され、各バンド毎にページメモリ38に保存される。
【0044】ページメモリ38に1ページ分の圧縮され
たCMYK各色毎に分解された描画イメージデータが保
存されたら、出力制御部40はCMYK各色毎に分解さ
れた描画イメージを展開しながらプリンタエンジン部4
1に出力する。
【0045】図4は本発明の一実施例で用いられる描画
命令の種類を示す図であり、図5(a)は本発明の一実
施例で用いられる文字描画用のデータ構造を示す図であ
り、図5(b)は本発明の一実施例で用いられる文字の
描画例を示す図である。
【0046】図6(a)は本発明の一実施例で用いられ
る矩形描画用のデータ構造を示す図であり、図6(b)
は本発明の一実施例で用いられる矩形の描画例を示す図
であり、図7は本発明の一実施例で用いられるラスタオ
ペレーションを設定するデータ構造を示す図であり、図
8は本発明の一実施例で用いられるBrushを設定す
るデータ構造を示す図である。
【0047】図9は本発明の一実施例で用いられる印刷
図形の一例を示す図であり、図10は本発明の一実施例
で用いられる中間言語のデータ構造を示す図であり、図
11は本発明の一実施例で用いられるバンド毎に振り分
けられた描画コマンド例を示す図であり、図12は図2
のコマンド解析部17の動作を示すフローチャートであ
り、図13は図2のドライバ描画部18と図3のF/W
描画部36及び高速描画デバイス37とによる並列動作
例を示す図である。
【0048】これら図2〜図13を参照して本発明の一
実施例によるカラー印刷システムの動作について説明す
る。尚、図12に示す処理動作はコマンド解析部17を
構成するプログラムの実行によって実現され、当該プロ
グラムは図1のROM4やハードディスク6等に格納可
能である。
【0049】ホストコンピュータ10内のアプリケーシ
ョンプログラム11から印刷命令があった場合、アプリ
ケーションプログラム11からGDIモジュール13を
通じて与えられる描画命令がプリンタドライバ14に発
行される。
【0050】この描画命令は大きく分類すると、図4に
示すように、デバイス制御命令と、文字描画命令と、図
形描画命令と、ビットマップ描画命令とに分類される。
そこで、DDIインタフェース部15は描画命令に従っ
て描画するために、その描画命令を解析可能な中間言語
に変換する。
【0051】中間言語に変換されるデータ形式の一例と
して、図5〜図8に示すようなデータ構造に変換され
る。図5に示すデータ形式は文字描画用のデータ構造で
ある。図5に示すように、中間言語の種類を示すラベル
(Glyph)と印刷可能領域における文字の左上の描
画開始位置(X、Y)と文字データの幅及び高さのピク
セル数とから表現される。
【0052】図6に示すデータ形式は矩形描画用のデー
タ構造であり、中間言語の種類を示すラベル(Rec
t)と左上座標(X0,Y0)及び右下座標(X1,Y
1)で囲まれた範囲とが描画されるように表現される。
【0053】図7に示すデータ形式はドライバ描画部1
8で使用する重ね合わせの論理演算値であるラスタオペ
レーション(以下、ROPとする)を設定するデータ構
造である。ROPとはGDIモジュール13に基づいて
描画を行うための論理演算方法である。ROP処理はド
ライバ描画部18で多様な画像処理を行うことができる
という特徴を持つ。
【0054】図8に示すデータ形式はBrushを設定
するデータ構造である。GDIモジュール13に基づい
て描画を行うための色の情報は、レッド(R)、グリー
ン(G)、ブルー(B)(以下、RGBとする)を0か
ら255までの値の組合せで表現される。Brush及
びROP値等の設定コマンドが存在する。
【0055】例えば、図9に示すような図形を印刷した
場合、コマンド解析部17にはDDIインタフェース部
15から図10に示すような中間言語のデータ構造で渡
される。
【0056】コマンド解析部17はバンド分のワーク領
域を確保し(図12ステップS1)、バンド分のワーク
領域を初期化する(図12ステップS2)。コマンド解
析部17は中間言語を取得し、中間言語より各描画オブ
ジェクト(実際に描画する中間言語データ、ここではG
lyphやRectコマンド)から描画する領域を求め
る(図12ステップS3)。
【0057】コマンド解析部17は求めた描画領域の上
限座標と下限座標とから、各印刷可能範囲内を帯状に分
割した領域の、どのバンド領域に描画されるかを振り分
ける(図12ステップS4)。ここで、図11に示すよ
うにバンド毎に振り分けられた描画コマンドはROPや
Brush等が前回と同じデータの場合、ROPやBr
ushのコマンドをリンクしない構成にする。一方、ド
ライバ描画部18ではROPやBrush等の描画共通
系のデータを保持するように構成する。
【0058】このように、ドライバ描画部18を構成す
ることによって、何度も同じようなデータをプリンタ3
0側に送る必要がなくなり、プリンタ30への送信デー
タの縮小や、ドライバ描画部18でのコマンド解析の処
理時間を短縮することが可能となる。
【0059】続いて、コマンド解析部17はBrush
設定コマンドの色に関するデータの解析を行う(図12
ステップS5)。ここで、BrushコマンドのRGB
値が(R,G,B)=(255,255,255)、あ
るいは(R,G,B)=(0,0,0)の場合にはモノ
クロと判断する。BrushコマンドのRGB値がR=
G=Bの場合には、グレースケール(灰色)と判断す
る。それ以外の場合にはカラーと判断する。
【0060】コマンド解析部17はBrushの色がカ
ラー場合、各バンド分用意されているワークエリア内に
存在するモノクロフラグにカラーをセットする(図12
ステップS6)。
【0061】各バンド分用意されているワークエリア内
に存在するモノクロフラグの情報はカラーフラグがカラ
ーの場合、ドライバ描画部18でカラー用のオフスクリ
ーン画像を作成する。カラーフラグがモノクロ、グレー
スケールの場合にはモノクロ用のオフスクリーン画像を
生成する。
【0062】このように構成することによって、カラー
フラグがモノクロやグレースケールのバンドはRGBか
らシアン(C)、マゼンダ(M)、イエロー(Y)、黒
(K)(以下、CMYKとする)への色変換処理や疑似
階調処理を省くことができ、かつK一面分のみイメージ
データを作成すればよいため、描画処理の向上が期待で
きる。
【0063】各バンド分用意されているワークエリア内
に存在するモノクロフラグがカラーの場合、コマンド解
析部17はBrushコマンドが有効な描画オブジェク
トに対し、バンド毎に描画コマンドで同一バンド内に重
なる部分が存在するかどうかの解析を行う(図12ステ
ップS7)。
【0064】重なる部分が存在しないバンドはCMYK
に色分解した後でROP処理を行っても、正しい描画イ
メージを作成することができる。しかしながら、重なる
部分が存在したバンドはCMY上でROP処理を行い、
その後にUCR/BG処理(下色除去処理/黒生成処
理)を用いてCMYからCMYKへの変換処理を行わな
いと、正しい描画イメージの作成が保証されない。
【0065】この処理手順を行った場合には、CMYK
に色分解した後でROP処理を行った場合に比べ、メモ
リアクセスを行う領域が多くなるため、処理時間がかか
ってしまう。そのため、カラーバンドで重なる部分が存
在したバンドは、優先的に高速描画デバイス37を用い
てCMYで描画を行う必要がある。
【0066】コマンド解析部17は上記の中間言語のコ
マンド解析処理を1ページ分行う(図12ステップS
8)。コマンド解析部17は1ページ分のコマンド解析
が終了したら、バンド毎に描画する面積の和から描画ピ
クセル数を求めて各バンド分用意されているワークエリ
ア内に保持する(図12ステップS9)。
【0067】以上から各バンド分用意されているワーク
エリア内に保持されている情報であるモノクロフラグ、
重ね合わせの存在の有無、描画領域ピクセル数、描画コ
マンドのデータ量からバンド毎に描画負荷パラメータを
設定する(図12ステップS10)。
【0068】このように、各バンド毎の情報を検索して
おくことによって、コマンド解析部17はバンド毎に計
算された描画負荷パラメータを元に、各バンド毎にホス
トコンピュータ10内に存在するドライバ描画部18を
使用した描画を行うか、あるいはプリンタ30内に存在
する高速描画デバイス37を使用して描画を行うか、ま
たはプリンタ30内に存在するF/W描画部36を使用
して行うかを割り振る。
【0069】プリンタ言語変換処理部20はバンド毎に
割り振られた描画コマンドをプリンタ30が解釈できる
プリンタ言語に変換し、バンド毎のデータをまとめて、
スプーラ21を通してプリンタ30側へ送信する。この
時、ホストコンピュータ10内に存在するドライバ描画
部18に割り振られる場合には、プリンタ言語変換処理
部20とホストコンピュータ10内に存在するドライバ
描画部18との並列処理が行われる。
【0070】ホストコンピュータ10内に存在するドラ
イバ描画部18は色変換処理部19を使用しながら、バ
ンドの描画処理を行う。また、ホストコンピュータ10
から送られたプリンタデータはプリンタインタフェース
31を通してプリンタ30内の受信バッファ32に入
る。
【0071】受信バッファ32に入ったデータはプリン
タ30内のコマンド解析部33でホストコンピュータ1
0でバンド毎に割り振られ、F/W描画部36や高速描
画デバイス37が解釈できるデータ形式に変換する。プ
リンタ制御部34は受信バッファ32、コマンド解析部
33、印刷制御部35、出力制御部40の動作管理を行
う。
【0072】コマンド解析部33で変換されたデータは
印刷制御部35によって、データに付加された描画先フ
ラグを元に高速描画デバイス37とF/W描画部36と
に割り振りを行う。
【0073】高速描画デバイス37は専用の描画ASI
Cのため、F/W描画部36と並列動作が可能である。
高速描画デバイス37あるいはF/W描画部36はCM
YK各色毎に分解された描画イメージをメモリに展開す
る。メモリにCMYK各色毎に分解された描画イメージ
はイメージ圧縮デバイス39によって可逆圧縮法で圧縮
され、各バンド毎にページメモリ38に保存される。
【0074】ページメモリ38に、1ページ分の圧縮さ
れたCMYK各色毎に分解された描画イメージデータが
保存されたら、出力制御部40はCMYK各色毎に分解
された描画イメージを展開しながら、プリンタエンジン
部41に出力する。
【0075】このように、プリンタドライバ14のコマ
ンド解析部17にてDDIインタフェース部15で変換
された中間言語を解析し、バンド毎に描画負荷パラメー
タを求めることによって、図13に示すように、ホスト
コンピュータ10のドライバ描画部18とプリンタ30
内のF/W描画部36と高速描画デバイス37とを並列
動作させることが可能となる。
【0076】また、プリンタ30内に並列動作処理可能
な描画部を複数もった構成の印刷システムにおいても、
最適な描画負荷分散処理を行うことが可能となる。以上
の構成を用いることによって、ホストコンピュータ10
とプリンタ30との最適な描画負荷分散処理を行うこと
が可能となり、従来に比べて高速なカラー描画を行うこ
とができる。
【0077】また、プリンタドライバ14内のコマンド
解析部17の解析結果で各バンド分用意されているワー
クエリア内に存在するモノクロフラグが1ページすべて
モノクロの場合には、バンド分割された描画コマンドを
プリンタ30側に送らず、DDIインタフェース部15
で変換された中間言語をプリンタ言語変換処理部20で
モノクロデータであることを示すコマンドを付加し、プ
リンタ30側に転送する。
【0078】プリンタ30側ではプリンタインタフェー
ス31を通してプリンタ30内の受信バッファ32でプ
リンタデータを受信する。受信バッファ32に入ったデ
ータはプリンタ30内のコマンド解析部33で各バンド
毎に分割処理を行い、高速描画デバイス37とF/W描
画部36とに割り振りを行う。
【0079】高速描画デバイス37あるいはF/W描画
部36はK1色のみの描画イメージを各バンド毎にメモ
リに展開する。このとき、プリンタ30内のコマンド解
析部33はホストコンピュータ10側で行っていたバン
ド毎に描画コマンドで同一バンド内に重なる部分が存在
するかどうかの解析を行う必要はない。なぜならば、C
MYKでのROP処理を行って描画イメージを作成した
場合と異なり、K1色の場合には正しい描画イメージが
作成されることが保証されているからである。
【0080】次に、作成された描画イメージはイメージ
圧縮デバイス39によって可逆圧縮法で圧縮され、各バ
ンド毎にページメモリ38に保存される。出力制御部4
0は描画イメージを展開しながら、プリンタエンジン部
41に出力する。
【0081】1ページモノクロデータの場合はカラー印
刷時に比べ、色変換処理や疑似階調処理を省略すること
ができるため、ホストコンピュータ10側で各バンド毎
に分割処理を行い、プリンタ30側に転送するデータ量
が増えるより、プリンタ30側で各バンド毎に分割処理
を行い、プリンタ30内の描画を行った方が高速印刷を
可能とする。
【0082】このように、ホストコンピュータ10のプ
リンタドライバ14内で描画コマンドを解析し、オブジ
ェクトの描画範囲からバンド毎にコマンドを振り分け、
バンド毎の独立性を持たせ、コマンドをまとめることに
よって、バンド毎に描画の並列描画処理を可能とするこ
とができる。よって、ホストコンピュータ10とプリン
タ30との並列描画処理を行うことができる。その結
果、従来に比べて高速なカラー印刷を行うことができ
る。
【0083】また、ホストコンピュータ10のプリンタ
ドライバ14内で描画コマンドを解析し、バンド毎の色
情報、重ね合わせの存在の有無、描画領域ピクセル数、
描画コマンドのデータ量からバンド毎の処理負荷量を計
算し、並列描画処理のスケジューリングを行うことがで
きる。
【0084】よって、ホストコンピュータ10とプリン
タ10内に存在するF/W描画部36及び高速描画デバ
イス37の処理能力を考慮してバンド毎の描画データを
振り分け処理させることができる。その結果、並列動作
時における描画待ち時間を最小にすることができ、高速
なカラー印刷を行うことができる。
【0085】さらに、1ページ分の印刷データがモノク
ロの場合、プリンタ30側でバンド分割処理を行い、プ
リンタ30内で描画を行わせることによって、ホストコ
ンピュータ10でバンド分割処理を行ってプリンタ30
側へ転送する場合に比べ、プリンタ30へのデータ転送
量が少なくなる。
【0086】この場合、カラー印刷時に比べ、色変換処
理や疑似階調処理を省略することができるため、描画処
理時間がかからず、ホストコンピュータ10とプリンタ
30との並列描画処理を行う必要性がなくなる。よっ
て、1ページ分の印刷データがモノクロの場合、ホスト
コンピュータ10でバンド分割処理を行って描画させる
場合に比べ、高速なモノクロ印刷を行うことができる。
【0087】図14は本発明の他の実施例によるホスト
コンピュータの構成を示すブロック図であり、図15は
本発明の他の実施例によるプリンタの構成を示すブロッ
ク図である。図14において、ホストコンピュータ50
はアプリケーションプログラム51と、オペレーティン
グシステム52とを備えている。
【0088】オペレーティングシステム52はGDIモ
ジュール53と、プリンタドライバ54と、スプーラ6
1とを備えており、プリンタドライバ54はDDIイン
タフェース部55と、ユーザインタフェース部56と、
コマンド解析部57と、ドライバ描画部58と、色変換
処理部59と、プリンタ言語変換処理部60とからなっ
ている。
【0089】図15において、プリンタ70はプリンタ
インタフェース71と、受信バッファ72と、コマンド
解析部73と、プリンタ制御部74と、印刷制御部75
と、F/W描画部76と、高速描画デバイス77−1〜
77−nと、ページメモリ78と、イメージ圧縮デバイ
ス79−1〜79−nと、出力制御部80と、プリンタ
エンジン部81とから構成されている。
【0090】本発明の他の実施例によるカラー印刷シス
テムは図2及び図3に示す本発明の一実施例によるカラ
ー印刷システムの構成に対し、複数の高速描画デバイス
77−1〜77−n及びイメージ圧縮デバイス79−1
〜79−nを有している点で異なる。
【0091】このように、プリンタ70内に複数個の高
速描画デバイス77−1〜77−n及びイメージ圧縮デ
バイス79−1〜79−nを構成することで、本発明の
一実施例によるカラー印刷システムのように、ドライバ
描画部19と高速描画デバイス37とF/W描画部36
との3つの並列描画処理だけでなく、複数の描画デバイ
スを用いた並列描画処理が可能となる。そのため、上記
に記載した構成に比べてより高速なカラー印刷ができ
る。
【0092】
【発明の効果】以上説明したように本発明のカラー印刷
システムによれば、描画コマンドに基づいて印刷を行う
プリンタと、描画コマンドを発行するプリンタドライバ
を含むホストコンピュータとからなるカラー印刷システ
ムにおいて、プリンタドライバで、描画コマンドを解析
してオブジェクトの描画範囲から印刷可能範囲内を帯状
に分割した領域を示す複数のバンド毎にコマンドを振り
分け、複数のバンド毎の独立性を持たせかつコマンドを
まとめ、プリンタドライバ内の複数のバンド毎のコマン
ドに基づいてオブジェクトの描画処理を行うドライバ描
画手段と、プリンタ内の複数のバンド毎のコマンドに基
づいて2値あるいは多値でオブジェクトの描画処理を高
速に行う高速描画デバイス及びこの高速描画デバイスと
同様な機能を組込型ソフトウェアで実現したファームウ
ェア描画手段とのうちのいずれかの組合せで複数のバン
ド毎にオブジェクトの並列描画処理を自在とすることに
よって、プリンタ内で描画部をもつカラープリンタにお
いて高速で最適な描画処理を行うことができるという効
果がある。
【0093】また、本発明の他のカラー印刷システムに
よれば、上記の動作のほかに、プリンタドライバ内で描
画コマンドを解析した結果が1ページすべてモノクロデ
ータの場合にプリンタで複数のバンド毎にコマンドを振
り分け、プリンタ内で複数のバンド毎に並列描画処理を
行うことによって、プリンタドライバとプリンタとの描
画処理分担を最適化することができるという効果があ
る。
【図面の簡単な説明】
【図1】本発明の一実施例によるカラー印刷システムの
構成を示すブロック図である。
【図2】本発明の一実施例によるホストコンピュータの
構成を示すブロック図である。
【図3】本発明の一実施例によるプリンタの構成を示す
ブロック図である。
【図4】本発明の一実施例で用いられる描画命令の種類
を示す図である。
【図5】(a)は本発明の一実施例で用いられる文字描
画用のデータ構造を示す図、(b)は本発明の一実施例
で用いられる文字の描画例を示す図である。
【図6】(a)は本発明の一実施例で用いられる矩形描
画用のデータ構造を示す図、(b)は本発明の一実施例
で用いられる矩形の描画例を示す図である。
【図7】本発明の一実施例で用いられるラスタオペレー
ションを設定するデータ構造を示す図である。
【図8】本発明の一実施例で用いられるBrushを設
定するデータ構造を示す図である。
【図9】本発明の一実施例で用いられる印刷図形の一例
を示す図である。
【図10】本発明の一実施例で用いられる中間言語のデ
ータ構造を示す図である。
【図11】本発明の一実施例で用いられるバンド毎に振
り分けられた描画コマンド例を示す図である。
【図12】図2のコマンド解析部の動作を示すフローチ
ャートである。
【図13】図2のドライバ描画部と図3のF/W描画部
及び高速描画デバイスとによる並列動作例を示す図であ
る。
【図14】本発明の他の実施例によるホストコンピュー
タの構成を示すブロック図である。
【図15】本発明の他の実施例によるプリンタの構成を
示すブロック図である。
【符号の説明】
1 CPU 2 キーボード 3 表示装置 4 ROM 5 RAM 6 ハードディスク 7 プリンタインタフェース 8,30,70 プリンタ8 10,50 ホストコンピュータ 11,51 アプリケーションプログラム 12,52 オペレーティングシステム 13,53 GDIモジュール 14,54 プリンタドライバ 15,55 DDIインタフェース部 16,56 ユーザインタフェース部 17,57 コマンド解析部 18,58 ドライバ描画部 19,59 色変換処理部 20,60 プリンタ言語変換処理部 21,61 スプーラ 31,71 プリンタインタフェース 32,72 受信バッファ 33,73 コマンド解析部 34,74 プリンタ制御部 35,75 印刷制御部 36,76 F/W描画部 37,77−1〜77−n 高速描画デバイス 38 ページメモリ 39,79−1〜79−n イメージ圧縮デバイス 40,80 出力制御部 41,81 プリンタエンジン部
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 2C087 AA15 AB05 BC02 BC05 BD01 BD13 BD35 BD42 BD46 2C262 AA05 AA24 AC03 AC17 EA03 EA04 GA09 GA11 GA14 5B057 AA11 CA01 CA18 CB01 CB08 CB12 CB16 CH18 5C079 LA31 NA11 PA03 9A001 HH34 JJ35 KK42

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 描画コマンドに基づいて印刷を行うプリ
    ンタと、前記描画コマンドを発行するプリンタドライバ
    を含むホストコンピュータとからなるカラー印刷システ
    ムであって、 前記描画コマンドを解析してオブジェクトの描画範囲か
    ら印刷可能範囲内を帯状に分割した領域を示す複数のバ
    ンド毎にコマンドを振り分ける手段と、前記複数のバン
    ド毎の独立性を持たせかつ前記コマンドをまとめる手段
    と、前記複数のバンド毎のコマンドに基づいて前記オブ
    ジェクトの描画処理を行うドライバ描画手段とを前記プ
    リンタドライバに有し、 前記複数のバンド毎のコマンドに基づいて2値あるいは
    多値で前記オブジェクトの描画処理を高速に行う高速描
    画デバイスと、前記高速描画デバイスと同様な機能を組
    込型ソフトウェアで実現したファームウェア描画手段と
    を前記プリンタに有し、 前記ドライバ描画手段と前記高速描画デバイスと前記フ
    ァームウェア描画手段とのうちのいずれかの組合せで前
    記複数のバンド毎に前記オブジェクトの並列描画処理を
    自在としたことを特徴とするカラー印刷システム。
  2. 【請求項2】 前記プリンタドライバは、前記印刷コマ
    ンドを解析して前記複数のバンド毎の色情報と重ね合わ
    せの存在の有無と描画領域ピクセル数と描画コマンドの
    データ量とから前記複数のバンド毎の処理負荷量を計算
    するよう構成したことを特徴とする請求項1記載のカラ
    ー印刷システム。
  3. 【請求項3】 前記複数のバンド毎に求めた前記処理負
    荷量から前記ドライバ描画手段と前記高速描画デバイス
    と前記ファームウェア描画手段との処理能力を考慮して
    前記並列描画処理のスケジューリングを行うよう構成し
    たことを特徴とする請求項2記載のカラー印刷システ
    ム。
  4. 【請求項4】 前記プリンタドライバ内で前記描画コマ
    ンドを解析した結果が1ページすべてモノクロデータの
    場合に前記複数のバンド毎にコマンドを振り分ける手段
    を前記プリンタに含み、前記プリンタ内で前記複数のバ
    ンド毎に前記並列描画処理を行うよう構成したことを特
    徴とする請求項1から請求項3のいずれか記載のカラー
    印刷システム。
  5. 【請求項5】 描画コマンドに基づいて印刷を行うプリ
    ンタと、前記描画コマンドを発行するプリンタドライバ
    を含むホストコンピュータとからなり、 前記描画コマンドに基づいて前記オブジェクトの描画処
    理を行うドライバ描画手段を前記プリンタドライバに含
    み、 前記描画コマンドに基づいて2値あるいは多値で前記オ
    ブジェクトの描画処理を高速に行う高速描画デバイス
    と、前記高速描画デバイスと同様な機能を組込型ソフト
    ウェアで実現したファームウェア描画手段とを前記プリ
    ンタに含むカラー印刷システムの描画コマンド生成方法
    であって、 前記描画コマンドを解析してオブジェクトの描画範囲か
    ら印刷可能範囲内を帯状に分割した領域を示す複数のバ
    ンド毎にコマンドを振り分けるステップと、前記複数の
    バンド毎の独立性を持たせかつ前記コマンドをまとめる
    ステップとを前記プリンタドライバに有し、 前記ドライバ描画手段と前記高速描画デバイスと前記フ
    ァームウェア描画手段とのうちのいずれかの組合せで前
    記複数のバンド毎に前記オブジェクトの並列描画処理を
    自在としたことを特徴とする描画コマンド生成方法。
  6. 【請求項6】 前記プリンタドライバは、前記印刷コマ
    ンドを解析して前記複数のバンド毎の色情報と重ね合わ
    せの存在の有無と描画領域ピクセル数と描画コマンドの
    データ量とから前記複数のバンド毎の処理負荷量を計算
    するステップを含むことを特徴とする請求項5記載の描
    画コマンド生成方法。
  7. 【請求項7】 前記複数のバンド毎に求めた前記処理負
    荷量から前記ドライバ描画手段と前記高速描画デバイス
    と前記ファームウェア描画手段との処理能力を考慮して
    前記並列描画処理のスケジューリングを行うステップを
    含むことを特徴とする請求項6記載の描画コマンド生成
    方法。
  8. 【請求項8】 前記プリンタドライバ内で前記描画コマ
    ンドを解析した結果が1ページすべてモノクロデータの
    場合に前記複数のバンド毎にコマンドを振り分けるステ
    ップを前記プリンタに含み、前記プリンタ内で前記複数
    のバンド毎に前記並列描画処理を行うようにしたことを
    特徴とする請求項5から請求項7のいずれか記載の描画
    コマンド生成方法。
JP33216999A 1999-11-24 1999-11-24 カラー印刷システム及びそれに用いる描画コマンド生成方法 Expired - Fee Related JP3573035B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33216999A JP3573035B2 (ja) 1999-11-24 1999-11-24 カラー印刷システム及びそれに用いる描画コマンド生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33216999A JP3573035B2 (ja) 1999-11-24 1999-11-24 カラー印刷システム及びそれに用いる描画コマンド生成方法

Publications (2)

Publication Number Publication Date
JP2001150732A true JP2001150732A (ja) 2001-06-05
JP3573035B2 JP3573035B2 (ja) 2004-10-06

Family

ID=18251937

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33216999A Expired - Fee Related JP3573035B2 (ja) 1999-11-24 1999-11-24 カラー印刷システム及びそれに用いる描画コマンド生成方法

Country Status (1)

Country Link
JP (1) JP3573035B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009285891A (ja) * 2008-05-27 2009-12-10 Canon Inc 画像形成装置及び画像形成システム
JP2015032238A (ja) * 2013-08-06 2015-02-16 セイコーエプソン株式会社 印刷制御装置、印刷制御方法および印刷制御プログラム
JP2015049687A (ja) * 2013-08-30 2015-03-16 富士通セミコンダクター株式会社 画像処理方法、および画像処理装置
JP2017038329A (ja) * 2015-08-14 2017-02-16 富士ゼロックス株式会社 画像処理装置、画像形成装置、及び画像処理プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009285891A (ja) * 2008-05-27 2009-12-10 Canon Inc 画像形成装置及び画像形成システム
JP2015032238A (ja) * 2013-08-06 2015-02-16 セイコーエプソン株式会社 印刷制御装置、印刷制御方法および印刷制御プログラム
JP2015049687A (ja) * 2013-08-30 2015-03-16 富士通セミコンダクター株式会社 画像処理方法、および画像処理装置
JP2017038329A (ja) * 2015-08-14 2017-02-16 富士ゼロックス株式会社 画像処理装置、画像形成装置、及び画像処理プログラム

Also Published As

Publication number Publication date
JP3573035B2 (ja) 2004-10-06

Similar Documents

Publication Publication Date Title
US7999971B2 (en) Optimization techniques during processing of print jobs
US6490055B1 (en) Printing apparatus with execution of software rendering and hardware rendering
EP0772117B1 (en) Printer driver architecture for reducing band memory
US8830506B2 (en) Image processing system utilizing plural parallel processors and image processing method utilizing plural parallel processors
US6323958B1 (en) Printing apparatus
US20060268316A1 (en) Systems and methods for fast color processing
US7379197B2 (en) Apparatus for controlling printer to improve printing speed and method thereof
US6429950B1 (en) Method and apparatus for applying object characterization pixel tags to image data in a digital imaging device
US6456298B1 (en) Image processing apparatus and method
US20120188569A1 (en) Method of creating a printable raster image file
US20040135796A1 (en) Apparatus and method for image processing capable of accelerating image overlay process
JP3573035B2 (ja) カラー印刷システム及びそれに用いる描画コマンド生成方法
JP2001325087A (ja) 書き換え可能なコマンド記憶部を利用したコマンド解析
EP1447768B1 (en) Printing control apparatus, method and printer driver
US6339654B1 (en) Apparatus and method for efficiently processing color and monochrome images
JPH09314915A (ja) 印刷制御装置と印刷装置の制御方法、印刷システム、並びに記憶媒体
US6281982B1 (en) Information processing apparatus, information processing method, storage medium, and printing system
JP3755265B2 (ja) 印刷処理装置
JPH10151815A (ja) 印刷処理装置
JP3686490B2 (ja) プリンタドライバのアーキテクチャのための可変2値化処理を使用するシステムおよび方法
JP2006079475A (ja) 印刷処理システム、プログラムおよび記録媒体
JP2023077248A (ja) 画像形成装置とその制御方法、並びにプログラム
JP2006155307A (ja) 負荷分散処理を行う画像処理システム
JP2000011191A (ja) カラー画像出力方法、装置および記録媒体
JP2004030164A (ja) 画像処理装置および方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040506

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040621

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees