JP3636891B2 - カラー画像出力方法 - Google Patents
カラー画像出力方法 Download PDFInfo
- Publication number
- JP3636891B2 JP3636891B2 JP18016798A JP18016798A JP3636891B2 JP 3636891 B2 JP3636891 B2 JP 3636891B2 JP 18016798 A JP18016798 A JP 18016798A JP 18016798 A JP18016798 A JP 18016798A JP 3636891 B2 JP3636891 B2 JP 3636891B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- processing
- command
- color
- raster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Generation (AREA)
- Record Information Processing For Printing (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、カラー画像出力処理に関し、特にPDL(Page Description Language)インタープリタにおけるラスター処理を行うカラー画像出力方法に関し、カラープリンタ等のコントローラ装置あるいはコンピュータに搭載されるプリンタ・ドライバー・ソフトウェアなどに適用される技術である。
【0002】
【従来の技術】
一般に、コンピュータにより作成した文書をプリンタに出力する場合には以下の手順で処理する。即ち、
(1)文書データを複数の描画コマンド群へ変換する。
(2)プリンタ・ドライバーと言われるソフトウェアやプリンタ・コントローラ装置で描画コマンドを解析してラスタイメージを作成する(一般に、上記の処理をラスターオペレーションという)。
(3)ラスターイメージに対し、色変換処理や擬似中間調処理などを施してプリンタ出力信号を生成する。
(4)印刷を実行する。
【0003】
ところで、好ましいカラー画像を出力するためには、自然画像、文字、グラフィックなど、画像の種類によって異なる色処理や中間調処理が必要になる。従って、種々の画像種を含むカラー・イメージ情報を出力するためには、画像種ごとに適した画像処理を施せるようなアーキテクチャーが必要となる。
【0004】
このようなカラー・イメージ情報を出力する従来技術としては、
(A)ビットマップメモリを画像種ごとに用意して、それぞれ個別にラスターイメージを作成する方法と、
(B)ラスタイメージの生成後、ラスターイメージをスキャンして画素毎に属性の判定を行う方法(例えば、特開平9−284548号公報を参照)などがある。
【0005】
【発明が解決しようとする課題】
上記した(A)の方法では、画像種ごとにラスターイメージを格納するためのメモリを用意するため、区別する画像種が多くなると大量のメモリを浪費してしまうという問題がある。また、ラスタオペレーションを行うPDLインタプリタも大幅に変更しなければならず、ラスターオペレーション処理方式の変更が困難になってしまう。
【0006】
また(B)の方法では、ラスターイメージを用いて像域分離を行っているので、誤判定が生じ易いという問題がある。前掲した公報も3×3の画素単位で像城分離処理しているので、誤判定が生じる可能性がある。
【0007】
本発明の目的は、既存のPDLインタープリタを改造することなく、省メモリでかつ精度よく画像種を識別してラスター処理するカラー画像出力方法を提供することにある。
【0008】
【課題を解決するための手段】
前記目的を達成するために、請求項1記載の発明では、描画命令で記述された文書画像をビットイメージに展開すると共に、前記描画命令毎に前記文書画像の画像種を判別し、該判別された画像種に対して所定のコードを割り当て、画像種を表すコードをビットイメージに展開し、前記画像種に応じた最適な処理を前記文書画像に施して出力するカラー画像出力方法であって、前記描画命令が複数の画像種間で演算を行う命令であるとき、該演算命令を実行する領域に対して新たなコードを割り当ててビットイメージに展開することを特徴としている。
【0009】
【発明の実施の形態】
以下、本発明の一実施例を図面を用いて具体的に説明する。
(実施例1)
図2は、種々の図形が含まれるカラー・イメージの一例である。このイメージは、1つの文書中に自然画像(ビットマップ)、フォント(文字)、線画、単色の塗りつぶしパターン(棒グラフ)などを含んでいる。以下、このイメージを印刷する場合を例にして本発明の実施例を説明する。
【0010】
図1は、本発明の実施例1の構成を示し、プリンタ・コントローラ内でラスタオペレーションを行う場合のシステム構成例である。通常、オペレーティング・システム2は描画のための専用モジュール3を具備していて、この描画モジュール3がディスプレイやプリンタに対する描画処理を管理している。
【0011】
例えば、オペレータが何らかのアプリケーション1を使って画面で編集した図2に示すような文書イメージをプリンタに印刷する場合、アプリケーション1は印刷ジョブを始めるという命令を描画モジュール3に送信する。描画モジュール3は印刷開始のメッセージを受け取ると、アプリケーション1で作成された文書画像データをプリンタ・ドライバー4が解釈可能なコマンドに変換して、プリンタ・ドライバー4にコマンドを送信する。
【0012】
プリンタ・ドライバー4はオペレーティング・システム2から受け取ったコマンドをプリンタ・コントローラ5が解釈可能な描画コマンドに変換してローカル接続あるいはネットワーク接続されたプリンタ・コントローラ5にコマンドを送信する。プリンタ・コントローラ5は、後述するラスターオペレーション及び画像変換手段によりプリンタ12に送信可能なデータに変換して印刷動作を開始する。印刷が終了すると、アプリケーション1は印刷終了の命令を描画モジュール3に送信し、オペレータが再び編集可能な状態になる。
【0013】
次に、本発明の特徴であるラスターオペレーション処理について説明する。図4は、本発明のラスターオペレーションの処理フローチャートである。
【0014】
前述したプリンタ・ドライバー4から送られる描画コマンドは、画像種に対応した多数の描画命令で構成される。通常、この描画命令には描画対象の画像種(例えばビットマップ、文字、ライン、パターンなど)、形状、位置情報、色データ等の情報が含まれる。一例を挙げると文字の描画コマンドとして
DrawText(“ホームコンピューテイング...”,rect,color)
というコマンド形態になる。ここで、“ホームコンピューテイング...”は、描画するテキスト文書の内容、rectは描画するビットマップ上の領域、colorは描画色を表している。ビットマップ等、他の画像種に対してもそれぞれに適したコマンド群が送られる。
【0015】
上記の描画コマンドに対するラスタオペレーションは2系統で処理が行われる。一つは、一般的なラスタオペレーションであり、描画コマンドに従って忠実にラスタ展開装置7で展開処理(RIP(Raster Image Processor)処理)を施し(ステップ101)、生成されたラスターイメージをビットマップメモリ8(A)に格納する(ステップ102)。
【0016】
もう一つは、画像種を識別するためのラスター展開が行われる。即ち、描画コマンドの色データを、コマンド変換装置6で画像種識別コードに変換した後、先のラスターオペレーションと同じラスタ展開装置7で展開処理を施し、生成されたイメージをビットマップメモリ9(B)に格納する。この方法では、第1のラスタ展開と第2のラスタ展開が同期して処理されるため、ビットマップメモリBを参照することにより、画素毎に誤判定のない画像種の識別ができる。
【0017】
以下、図4を参照して、本発明の処理動作を説明する。ここでは説明の都合上、画像種ごとの識別コードを以下のように割り当てて説明する。すなわち、
背景=0
文字=1
線=2
矩形=3
ビットマップ=4
その他=5
まず、何も描画が行われない領域を識別できるようにするために、ラスタオペレーションの開始時にビットマップメモリ8(B)の内容を背景の識別コード0で初期化しておく。
【0018】
その後、描画コマンドごとに識別コードを割り当ててラスター展開を実行する。図4に示すように、まずコマンド変換装置6は描画コマンドが文字に対するものか否かを判定し(ステップ103)、文字ならば描画コマンドの色データを文字の識別コードである1に変更し(ステップ110)、ラスタ展開装置7はラスタ展開を実行し(ステップ108)、画像種コードをビットマップメモリ9(B)に格納する(ステップ109)。
【0019】
文字でないと判定されたとき、次に、線画の描画コマンドであるか否かを判定し(ステップ104)、線画ならば色データを線の識別コードである2に変更し(ステップ111)、ラスタ展開し(ステップ108)、ビットマップメモリ9(B)に格納する(ステップ109)。以下同様にして矩形の描画コマンドを処理し(ステップ105、112)、ビットマップの描画コマンドを処理し(ステップ106、113)、上記した何れのコマンドにも該当しない場合にはデフォルトの識別コード5を割り当てる(ステップ107)。
【0020】
上記した処理によって、ビットマップメモリBの内容がどのように変化するかについて図5を用いながら説明する。図5では、
(1)ビットマップを描画
(2)文字を描画
(3)ビットマップを描画
という、3つの描画コマンドを実行したものである。
【0021】
最初の段階(図5(a))では、ビットマップメモリBには、背景コードを表す0が割り当てられている。次にビットマップの描画が行われると、ビットマップの描画領域がすべて識別コード4に書き換えられる(図5(b))。次に、文字描画のコマンドを受け取った場合には、色データを1に変更してラスタ展開を行うため、文字の部分だけが1の値を持つ色で描画されるため、図5(c)のようになる。次のビットマップ描画コマンドを受け取ると前記したと同様の処理が行われ、図5(d)のようにビットマップメモリBの内容が更新される。
【0022】
以上説明したように、本実施例では描画対象がそれぞれ複雑に重なり合っていても画像種の識別コードをビットマップメモリ上に正確に生成することができる。また、ビットマップメモリBは、必ずしもビットマップメモリAと同じ記憶容量を持つ必要がない。例えば上記の例では、画像種の識別コードは6種類であるので画素あたり3ビットのメモリを用意すればよい。
【0023】
上記した処理を図2の文書データに対して施すと、最終的にビットマップメモリBには図3に示すような画像種の識別コードから構成された画像が生成されることになる。
【0024】
上記した実施例では、6種類の割り当てパターンを用いたが、この例に限らず、文字とそれ以外というパターンでもよいし、他のパターンでもよい。但し、少なくとも文字とビットマップでは明らかに好ましい画像変換処理が異なるため、この2つの画像種については異なった識別コードを割り当てることが望ましい。
【0025】
上記した処理によって画像種の識別コードを保持したビットマップが生成されると、これに従って画像種を判別しながらビットマップメモリAに対する画像変換処理を行ってプリンタへの出力信号を生成する。ビットマップメモリAに格納されているイメージは、通常ディスプレイと同じく各画素24ビット(あるいは8ビット)程度の色深度を持ったRGB信号になっている。プリンタは一般に他の色信号(通常CMYKデータ)で印刷されるため、RGB→CMYK変換などの色変換処理が必要になる。また、インクジェットプリンタなど通常のカラープリンタでは、階調がディスプレイよりも少ないものが多く、その場合には擬似中間調処理が必要になる。本実施例の画像変換処理としては、上記した色変換処理や擬似中間調処理に限定されるものではなく、他の処理を追加してもよい。
【0026】
最適化処理の例として、RGB→CMYK色変換の場合について説明する。一般に、RGB→CMYK色変換の際は、黒文字は黒インクのみで出力し、自然画などの連続階調画像の黒部分は、CMYKの4色で印刷するように色変換する方が画質面から見て望ましい。そこで、色変換処理装置10で色変換を行う場合には、画素単位でビットマップメモリAとBを読み出して、ビットマップのコードを持つ画素に対しては4色への色変換を行い、文字のコードを持つ画素に対しては、黒単色で出力するように色変換する。また、二値化処理装置11における中間調処理についても、文字の場合にはディザ処理、ビットマップ領域には誤差拡散処理を施し、これにより画像種ごとに最適化処理が可能になる。
【0027】
また、本発明によれば描画が行われていない背景部分については背景用の識別コードとして0が割り当てられている。従って、背景領域のみに特別の処理を行うことが可能になる。例えば、背景領域に対してはプリンタ側では通常印字を行わないため、背景コードが設定されている画素に対しては、色変換処理や中間調処理などを行わず、直接C、M、Y、K=0としてデータをプリンタに送信すれば、高速な印字動作が可能になる。
【0028】
さらに、より複雑な例として、複数の描画対象同士で演算処理などが行われる場合がある。例えば、下位のレイヤーにビットマップが描画され、その上に透明度を設定した文字を描画するような場合がある。このような場合には、文字に対して透明度が設定されていることから、画面上では文字と背景のビットマップイメージが淡く混ざって表示されていることになる。このような場合には、文字ともビットマップとも異なる新たな画像種の設定が必要になる。そこで、レイヤー間での演算命令を受けた場合には、演算領域を表す新たな識別コードを設定する。このようなコードを設定することにより、色変換処理などの最適化を簡単に行うことができる。
【0029】
(実施例2)
上記した実施例1は、プリンタ・コントローラ内でラスタ・オペレーションを行う場合の実施例である。ところで、安価なインクジェットプリンタ等ではプリンタ・コントローラ内ではラスターオペレーションは行わずにプリンタドライバーでラスターオペレーションを施し、ビットマップイメージに展開してからプリンタにデータを送信している。図6は、この場合の構成例を示す。
【0030】
実施例1では、ラスターオペレーションなどの処理をコントローラ内の装置で行っていたが、図6に示す実施例2では、コマンド変換、ラスタ展開などの各処理をプリンタ・ドライバーのソフトウェア(コマンド変換モジュールなどの各モジュール)で処理している点が異なるだけで、基本的な処理内容は実施例1と同じである。
【0031】
なお、本発明は上記した実施例に限定されず、上記したプリンタ・ドライバーのソフトウェアをCD−ROMなどの記録媒体に記録させてもよい。本発明のラスターオペレーションを実行させるときは、上記した記録媒体に記録されたプログラムを読み出し、これをOSの一部として組み込むことによって本発明の処理機能が実現される。
【0032】
【発明の効果】
以上、説明したように、本発明によれば、描画命令で記述される文書画像をビットイメージに展開すると共に、画像種の識別コードをビットイメージに展開しているので、PDLインタープリタを改造することなく、少ないメモリでかつ高精度に画像種を識別することができ、従って画像種に応じた最適な画像処理を施すことが可能となる。
【図面の簡単な説明】
【図1】 本発明の実施例1の構成を示す。
【図2】 複数の画像種で構成される文書画像の例を示す。
【図3】 文書画像に対する画像種判定結果の例を示す。
【図4】 本発明のラスターオペレーションの処理フローチャートである。
【図5】 画像種の識別コードがメモリに書き込まれる過程を示す。
【図6】 本発明の実施例2の構成を示す。
【符号の説明】
1 アプリケーション
2 オペレーティングシステム
3 描画モジュール
4 プリンタ・ドライバ
5 プリンタ・コントローラ
6 コマンド変換装置
7 ラスタ展開装置
8、9 ビットマップ・メモリ
10 色変換処理装置
11 二値化処理装置
12 印刷装置
Claims (1)
- 描画命令で記述された文書画像をビットイメージに展開すると共に、前記描画命令毎に前記文書画像の画像種を判別し、該判別された画像種に対して所定のコードを割り当て、画像種を表すコードをビットイメージに展開し、前記画像種に応じた最適な処理を前記文書画像に施して出力するカラー画像出力方法であって、前記描画命令が複数の画像種間で演算を行う命令であるとき、該演算命令を実行する領域に対して新たなコードを割り当ててビットイメージに展開することを特徴とするカラー画像出力方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18016798A JP3636891B2 (ja) | 1998-06-26 | 1998-06-26 | カラー画像出力方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18016798A JP3636891B2 (ja) | 1998-06-26 | 1998-06-26 | カラー画像出力方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000011191A JP2000011191A (ja) | 2000-01-14 |
JP3636891B2 true JP3636891B2 (ja) | 2005-04-06 |
Family
ID=16078578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18016798A Expired - Fee Related JP3636891B2 (ja) | 1998-06-26 | 1998-06-26 | カラー画像出力方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3636891B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7177046B2 (en) * | 2000-04-11 | 2007-02-13 | Oce Printing Systems Gmbh | Method for producing and outputting at least one printed page |
JP4743596B2 (ja) | 2005-06-07 | 2011-08-10 | 株式会社リコー | 画像処理装置、方法、プログラムおよび記録媒体 |
-
1998
- 1998-06-26 JP JP18016798A patent/JP3636891B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000011191A (ja) | 2000-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7505174B2 (en) | Image processing method, system and apparatus, and storage medium | |
EP0933723B1 (en) | Printing apparatus | |
US7692813B2 (en) | Image processing apparatus and method, and storage medium | |
US6323958B1 (en) | Printing apparatus | |
JP4135195B2 (ja) | 印刷処理システム及び印刷処理方法並びに印刷処理制御プログラムが記録されたコンピュータ読み取り可能な記録媒体 | |
JP3175498B2 (ja) | インクジェット式カラー印刷のための黒色領域識別方式 | |
JPH05233786A (ja) | 異なるデータ型のインテリジェント後処理が可能な方法及び装置 | |
JPH1166327A (ja) | 画像処理方法および画像処理装置および記録媒体 | |
JP3285930B2 (ja) | 画像処理装置 | |
JP3636891B2 (ja) | カラー画像出力方法 | |
JP4109785B2 (ja) | 画像処理装置及びその方法、コンピュータ可読メモリ | |
JP4356953B2 (ja) | 画像処理システム及び画像処理装置及びその制御方法及び記憶媒体 | |
JP4514168B2 (ja) | 画像処理システム及び画像処理方法 | |
US5867637A (en) | Document processing with flexible resolution and output style | |
JP2000013601A (ja) | 印刷情報処理装置、中間データ生成装置および方法 | |
JP3690057B2 (ja) | 出力制御システム、出力制御方法、出力制御プログラムを記録した記録媒体、出力制御システムに用いるデータ生成装置、出力制御システムに用いるデータ変換装置、データ変換制御方法及びデータ変換制御プログラムを記録した記録媒体 | |
JPH07105882B2 (ja) | 出力方法 | |
JP2003051929A (ja) | 画像処理方法及び装置 | |
JP4217332B2 (ja) | 画像処理装置及びその方法、コンピュータ可読メモリ | |
JP4306841B2 (ja) | 画像処理装置及びその方法、コンピュータ可読メモリ | |
JP2004334533A (ja) | 画像処理装置および画像処理方法 | |
JP3990743B2 (ja) | プリンタ制御方法およびプリンタ制御装置 | |
JP3260803B2 (ja) | 画像処理装置 | |
JPH1051652A (ja) | 情報処理装置及び方法 | |
JP2003196648A (ja) | 画像処理方法及び装置とその記憶媒体及びプログラム製品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040928 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041125 |
|
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: 20050104 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050106 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080114 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090114 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100114 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110114 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120114 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130114 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |