(57)【特許請求の範囲】
【請求項１】
描画すべきオブジェクトの種類を描画コマンドの形式に基づいて識別し、識別したオブジェクトの種類に応じて描画を行う画像処理方法であって、
文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別することを特徴とする画像処理方法。
【請求項２】
描画コマンドを入力し、
描画すべきオブジェクトの種類を前記描画コマンドの形式に基づいて識別し、
文字列及び装飾線を含むテキストオブジェクトの描画を指示するが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別し、
識別されたオブジェクトの種類に応じて描画を行うことを特徴とする画像処理方法。
【請求項３】
前記描画処理には色処理が含まれることを特徴とする請求項１又は請求項２に記載された画像処理方法。
【請求項４】
描画すべきオブジェクトの種類を描画コマンドの形式に基づいて識別し、識別したオブジェクトの種類に応じて描画を行う画像処理装置であって、
文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別する識別手段を有することを特徴とする画像処理装置。
【請求項５】
描画コマンドを入力する入力手段と、
描画すべきオブジェクトの種類を前記描画コマンドの形式に基づいて識別する識別手段と、
識別されたオブジェクトの種類に応じて描画を行う描画手段とを有し、
前記識別手段は、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別することを特徴とする画像処理装置。
【請求項６】
前記描画処理には色処理が含まれることを特徴とする請求項４又は請求項５に記載された画像処理装置。
【請求項７】
コンピュータに、描画すべきオブジェクトの種類を描画コマンドの形式に基づいて識別させ、識別したオブジェクトの種類に応じて描画を行わせるための画像処理のプログラムを格納した記憶媒体であって、
文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別させ、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別させることを特徴とするプログラムを格納したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項８】
描画コマンドを入力する入力手順と、
描画すべきオブジェクトの種類を前記描画コマンドの形式に基づいて識別する識別手順と、
識別されたオブジェクトの種類に応じて描画を行う描画手順とをコンピュータに実行させるためのプログラムを格納した記憶媒体であって、
前記識別手順は、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別することを特徴とするプログラムを格納したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は画像処理装置およびその方法に関し、例えば、描画すべきオブジェクトの種類に応じた描画処理を行う画像処理装置およびその方法に関する。
【０００２】
【従来の技術】
最近のワークステーション(WS)やパーソナルコンピュータ(PC)、並びに、レーザビームプリンタ(LBP)およびインクジェットプリンタ(IJP)などに代表されるカラープリンタの普及により、アプリケーションソフトウェアによって作成および/または編集された各種のカラー文書が印刷出力されるようになった。
【０００３】
ただし、ユーザが望むカラー印刷出力が容易に得られるようにするには、以下に示す問題を解決しなければならない。
【０００４】
(1) ユーザがカラー文書を作成・編集するCRTなどのモニタと、プリンタとは色再現範囲(gamut)が異なる。一般にモニタの色再現範囲はプリンタの色再現範囲よりも広く、プリンタは、モニタにより表現される色のすべてを再現することはできない。このため、色空間の圧縮処理（色空間マッチング）が必要になり、色空間圧縮として幾つかの手法が提案されている。しかし、どの手法が適当であるかをユーザが判断することは難しい。
【０００５】
(2) 上記(1)に関連するが、モニタの色はRGBの加色混法で表現され、プリンタの色はCMYKの減色混法であるから、モニタで確認された複数色の混合色と、プリンタによって得られる混合色とは異なる可能性がある。
【０００６】
(3) 最近のプリンタは高解像度、例えば1200dpiや600dpiであり、72dpi程度のモニタによるプレビューに比べて、遥かに高精細な印刷を必要とし、用途に応じた適切なハーフトーニング（二値化、多値化、量子化など）を選択する必要がある。
【０００７】
(4) LBPに代表される電子写真方式のプリンタは、系時変化やエンジンの個体差により微妙に色味が異なる場合がある。色味の差異を制御する方法が幾つか提案されているが、ある種類のオブジェクト（データ）には有効であるが、別種のオブジェクト（データ）には副作用が出る場合などがある。
【０００８】
また、カラー文書には、特徴が異なる各種オブジェクト、例えばテキスト、グラフィクス、イメージなどが含まれている。例えば、テキストには1バイトで示されるアルファニューメリック文字や、2バイトの漢字などがあり、イメージは二次元に配列された画素をもち、各画素毎に異なるカラー情報をもつ。そして、イメージは、効率化のために圧縮されている場合もある。また、グラフィクスは、ライン、並びに、多角形の輪郭および内部領域で表現される。
【０００９】
【発明が解決しようとする課題】
印刷出力において良好な色再現を実現するには、各オブジェクトの特徴に応じて、上記の問題を解決する処理が必要になる。具体的な解決策として、描画コマンドの形式に応じて、そのコマンドにより示されるオブジェクトの種類を判別する技術がある。その技術によれば、アプリケーションソフトウェアが発行するテキストコマンドに基づくオブジェクトはすべてテキストオブジェクトとして描画される。
【００１０】
しかしながら、一般にアンダーラインや取り消し線といった文字装飾線については、アプリケーションが独自に描画することがほとんどであるため、グラフィクスオブジェクトとして識別されることが多い。そのため、上述したようにテキストコマンドによって指定される文字装飾線をテキストオブジェクトとして識別してしまうと、グラフィクスオブジェクトとしての文字装飾線と、テキストオブジェクトとしての文字装飾線とが混在し、文字装飾線のオブジェクトハンドリングに一貫性がなくなってしまい、色味の違いが生じてしまうこともある。
【００１１】
本発明は、上述の問題を個々にまたはまとめて解決するためのものであり、文字装飾線について一貫性のある色再現を実現した高品質の描画を行う画像処理装置及びその方法を提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１３】
本発明にかかる画像処理方法は、描画すべきオブジェクトの種類を描画コマンドの形式に基づいて識別し、識別したオブジェクトの種類に応じて描画を行う画像処理方法であって、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別することを特徴とする。
【００１４】
また、描画コマンドを入力し、前記描画コマンドの形式に基づいて描画すべきオブジェクトの種類を識別し、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別し、識別されたオブジェクトの種類に応じて描画を行うことを特徴とする。
【００１５】
本発明にかかる画像処理装置は、描画すべきオブジェクトの種類を描画コマンドの形式に基づいて識別し、識別したオブジェクトの種類に応じて描画を行う画像処理装置であって、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別する識別手段を有することを特徴とする。
【００１６】
また、描画コマンドを入力する入力手段と、描画コマンドの形式に基づいて描画すべきオブジェクトの種類を識別する識別手段と、識別されたオブジェクトの種類に応じて描画を行う描画手段とを有し、識別手段は、文字列及び装飾線を含むテキストオブジェクトの描画を指示するコマンドが入力された場合、描画すべき文字列のオブジェクトの種類をテキストとして識別し、描画すべき文字列に付加すべき装飾線のオブジェクトの種類をグラフィクスとして識別することを特徴とする。
【００１７】
【発明の実施の形態】
以下添付図面を参照して、本発明にかかる第一実施形態を詳細に説明する。
【００１８】
なお、以下では、本発明をカラープリンタに適用する例を説明するが、モノクロプリンタに対しても同様に適用可能であることはいうまでもない。
【００１９】
＜第１実施形態＞
［構成］
図1は第1実施形態のホストコンピュータシステムの構成例を示すブロック図である。
【００２０】
図1において、ホストコンピュータ502は、プリントデータおよび制御コードからなる印刷情報を印刷装置100に出力する。ホストコンピュータ502は、入力デバイスであるキーボード2100、ポインティングデバイスであるマウス2110、および、表示デバイスであるディスプレイモニタ2200などを組み合わせたホストコンピュータシステムとして構成され、例えばMicrosoft社のWindows(R)シリーズなどの基本オペレーティングシステム(OS)が稼動している。
【００２１】
ホストコンピュータ502について、本実施形態に関する機能的な部分にのみ注目し、基本OS上での機能を大きく分類すると、アプリケーションソフトウェア2010、画像情報処理手段であるグラフィックサブシステム2020、スプールサブシステム2030、および、ユーザインタフェイス処理部(UI)2040に分類される。
【００２２】
グラフィックサブシステム2020は、基本OSの機能の一部であるグラフィクスデバイスインタフェイス(Graphics Device Interface: GDI)2021、および、GDI2021から動的にリンクされるデバイスドライバであるプリンタドライバ2022によって構成される。
【００２３】
プリンタドライバ2022は、アプリケーションソフトウェア2010からGDI描画命令（関数）としてコールされる命令をページ記述言語(Page Description Language: PDL)に変換するのが大きな役割である。また、プリンタドライバ2022は、ユーザに指定されたモード、および、GDI描画命令の種類に応じて、カラーマネージメントシステム(Color Management System: CMS)モジュール2023、および、色調整モジュール2024に色処理を依頼する。
【００２４】
スプールサブシステム2030は、グラフィックサブシステム2020の後段に位置するプリンタデバイスに特有のサブシステムで、データ格納手段であるスプールファイル2031（実態はハードディスクなど）、および、スプールファイル2031に蓄えられたPDLコードを読み出して印刷装置100における処理の進行状況を監視するプロセスモニタ2034などから構成される。
【００２５】
UI2040は、基本OSより提供される関数を利用しながら、印刷品位の制御パラメータを決定すべく、各種メニューボタンなどをディスプレイモニタ2200に表示し、キーボード2100やマウス2110を介したユーザアクションを解析する。
【００２６】
上述した構成（モジュール）の名称や機能的な枠組みは、基本OSによって若干異なる場合があるが、各技術的手段が実現可能なモジュールであればよく、それらの名称や枠組みの差異は本実施形態の実施に影響を与えることはない。例えば、スプーラやスプールファイル2031は、他のOSにおいてはプリントキューと呼ばれるモジュールに処理を組み込むことによって実現可能である。
【００２７】
なお、一般に、これらの機能モジュールを含むホストコンピュータ502とは、図示しないCPU、ROM、RAM、ハードディスクドライブ(HDD)および各種入出力制御部(I/O)などから構成されるハードウェア上で、基本OSなどのソフトウェアがそれらハードウェアの制御を司り、基本OSの基でアプリケーションソフトウェア2010のプロセスやサブシステムのプロセスが機能モジュールとして動作するものである。
【００２８】
［プリンタドライバの処理］
以下、プリンタドライバ2022が実行する処理を図2に示すフローチャートに従い説明する。
【００２９】
ユーザが、ホストコンピュータ502上で稼動する、あるアプリケーションソフトウェア2010から印刷の開始を指示すると、UI2040により印刷の制御パラメータを設定するための印刷ダイアログがディスプレイモニタ2200に表示される(S4000)。そして、印刷ダイアログ上でユーザにより、出力プリンタ、記録紙サイズ、印刷部数および印刷品質などの各種設定が行われ、印刷が指示される(S4010)。
【００３０】
印刷が指示されると、アプリケーションソフトウェア2010によって作成・編集された画像を示す描画データが、印刷ジョブとしてGDI2021を介してプリンタドライバ2022に渡され、プリンタドライバ2022は該印刷ジョブの初期化を行う（S4020）。
【００３１】
プリンタドライバ2022は次に該印刷ジョブのページ毎の初期化を行い（S4030）、続いて描画を行う（S4040）が、この描画の詳細については後述する。
【００３２】
ページ単位の描画後は改ページ等の後処理を行ない（S4050）、ステップS4060でまだ印刷すべきページが残っていればステップS4030へ戻って次ページの処理を行うが、ページの終端であればステップS4070に進んで印刷ジョブの後処理を行った後、印刷処理を終了する。
【００３３】
以下、ステップS4040に示した描画処理について、図3を参照して説明する。図3は、GDI2021とプリンタドライバ2022間における描画コマンド（テキストコマンド，イメージコマンド，グラフィクスコマンド）のインタフェースを示す図である。
【００３４】
ここでテキストコマンドは、プリンタドライバ2022の内部に実装されるテキスト処理関数DrvTextOutを、GDI2021が呼び出すことを意味する。つまり、GDI2021によりテキストコマンド（DrvTextOut関数）がコールされると、DrvTextOutに対応するプリンタドライバ2022のテキストコマンド処理部5010によりテキストの描画が実行される。なお、テキスト処理関数の名称は、Windows(R)NT/Windows(R)2000においてはDrvTextOutだが、Windows(R)98/95/3.1においてはExtTextOutである。基本OSによってこれらの名称や機能は若干異なるが、基本的な考え方は同様である。
【００３５】
なお、DrvTextOut 関数の呼び出しは、例えば、次のようになる。ここでは主なパラメータだけを紹介する。
【００３６】
0003927766.tif 000002
テキストコマンドと同様に、イメージコマンドは、プリンタドライバ2022に実装されたイメージ処理関数（DrvCopyBits，DrvBitBlt，DrvStretchBlt関数等）のGDI2021による呼び出しを意味し、グラフィクスコマンドは、プリンタドライバ2022に実装されたグラフィクス処理関数（DrvStrokePath，DrvFillPat，DrvStrokeAndFillPath関数等）のGDI2021による呼び出しを意味する。
【００３７】
プリンタドライバ2022は、これら各コマンドに対応する各描画オブジェクトの種類に応じて、カラー調整やカラーマッチング処理を行う。そして、カラーマッチング処理が行われた色情報をPDLコマンドに変換することによって、描画処理が行われる。
【００３８】
以下、ステップS4040におけるテキストコマンドによる描画処理について、図4のフローチャートを参照して詳細に説明する。
【００３９】
まず、文字列をテキストオブジェクトとして扱い、描画を実行する（S6010）。その後、アンダーラインや打消し線等の文字装飾線を描画する必要があるか否かを判定し（S6020）、必要があれば、文字装飾線をグラフィクスオブジェクトとして扱って描画を実行する（S6030）。
【００４０】
以上説明したように本実施形態によれば、テキストコマンドによって指定される文字装飾線を、テキストオブジェクトではなくグラフィクスオブジェクトとして描画することにより、他のグラフィクスコマンドによって指定された文字装飾線と同様に扱うことが可能となる。従って、文字装飾線に対するオブジェクト制御が容易となり、一貫性のある色再現が可能となる。
【００４１】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００４２】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４４】
【発明の効果】
以上説明したように本発明によれば、文字装飾線について一貫性のある色再現を実現した高品質の描画を行うことができる。
【図面の簡単な説明】
【図１】本実施形態におけるホストコンピュータシステムの構成例を示すブロック図である。
【図２】プリンタドライバによる印刷処理を示すフローチャートである。
【図３】  GDIとプリンタドライバ間におけるインタフェースを示す図である。
【図４】本実施形態におけるテキストコマンド処理を示すフローチャートである。
【図１】
0003927766.tif 000003
【図２】
0003927766.tif 000004
【図３】
0003927766.tif 000005
【図４】
0003927766.tif 000006