(57)【要約】【課題】上位装置から入力された画像データの種類や大きさに応じて高速な色空間変換処理を行なえる中間コードを生成し、描画処理を高速に行なう。【解決手段】プリンタ１５００が入力部１８を介してホストコンピュータ３０００から画像データを入力し、入力された画像データの種類、大きさ、数により高速なハードウェアの色空間変換部３０で色空間変換処理を行なえる中間コードを生成するか、ソフトウェアで色空間変換処理を行なう中間コードを生成する。そして、描画部２０と色空間変換部３０が生成された中間コードに基づいて描画処理を行なう。【選択図】      図２
2004178320.tif 000002
【特許請求の範囲】
【請求項１】
上位装置から入力された画像データを描画処理する描画処理方法であって、
上位装置から画像データを入力する入力工程と、
入力された画像データに応じて高速な色空間変換処理を行なえる中間コードを生成する生成工程と、
生成された中間コードに基づいて描画処理を行なう描画工程とを有することを特徴とする描画処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、上位装置から入力された画像データを描画処理する技術に関する。
【０００２】
【従来の技術】
従来、ホストコンピュータなどの上位装置より印刷データを入力し、印刷する印刷装置において、多色印刷を行なう場合、イエロー（Ｙ），マゼンタ（Ｍ），シアン（Ｃ），ブラック（Ｋ）などの複数色の記録剤を用いて記録媒体上に画像を形成するように構成されている。このような印刷装置とホストコンピュータとを接続した印刷システムでは、一般にホストコンピュータ側において画像データが作成されるため、ＣＲＴなどの表示装置に表示可能なレッド（Ｒ），グリーン（Ｇ），ブルー（Ｂ）の色成分からなるＲＧＢ形式の画像データ（以下、ＲＧＢデータと称する）が印刷装置側へ転送される。印刷装置側では、転送されてきたＲＧＢデータに基づいて、以下に示す方法により印刷を行なっている。
【０００３】
まず、ホストコンピュータから転送されてきた印刷データを解析しながら印刷装置が描画処理を行うための中間言語であるディスプレイリストに変換する際に、ＲＧＢで構成された画像データをＹＭＣＫ形式の画像データ（以下、ＹＭＣＫデータと称する）に色空間変換する。次に、中間コードを作成した後もしくは、ある程度作成した段階で描画処理（レンダリング）を開始し、１ページ分の印刷データの作成を印刷色であるＹＭＣＫの各色毎に行なう。描画されたページ分のＹＭＣＫデータに対して必要に応じて圧縮等の処理を施した後、エンジン部との同期を取るためにメモリなどに格納し、印刷開始に伴ってエンジン部へＹＭＣＫデータを転送することにより、記録媒体上への印刷を行なう。
【０００４】
また、従来の印刷装置においては、印刷の際に必要となる画像メモリ量を削減するために、１ページ当たりの印刷内容を複数のバンドに分割し、記録媒体上へ実際に印刷する動作と、印刷データの作成処理とをバンド単位に並行して行なう方法（バンディング）が知られている。
【０００５】
【発明が解決しようとする課題】
しかしながらが、上記従来の印刷装置における印刷処理の中で、ＲＧＢ形式の画像データをＹＭＣＫデータに色空間変換を行なう処理時間が、全体の印刷処理時間に占める割合は非常に高く、印刷の高速化を図るには色空間変換時間を短くする必要がある。１つの解決手段として、この色空間変換処理をハードウェア化し、ソフト処理と置き換えることで高速化することも可能であるが、従来の処理方法ではＣＰＵが一連の処理をパイプライン実行しているため、例えばＣＰＵはあるオブジェクトの色空間変換処理の終了を確認しないと、次のオブジェクトの処理又はその他のデータ処理に進めないなど、単純にハードウェア化して処理を置き換えたとしても、ハードウェアが色空間変換処理を行なっている間、ＣＰＵは待ち状態となり、他の処理を実行できないため、大きな改善は期待できないという問題があった。
【０００６】
本発明は、上記課題を解決するためになされたものであり、上位装置から入力された画像データの種類や大きさに応じて高速な色空間変換処理を行なえる中間コードを生成し、描画処理を高速に行なうことを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明は、上位装置から入力された画像データを描画処理する描画処理方法であって、上位装置から画像データを入力する入力工程と、入力された画像データに応じて高速な色空間変換処理を行なえる中間コードを生成する生成工程と、生成された中間コードに基づいて描画処理を行なう描画工程とを有することを特徴とする。
【０００８】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【０００９】
まず、本実施形態における描画処理について説明する前に、本発明を適用するに好適な印刷装置であるレーザビームプリンタの構成について、図１及び図２を参照しながら説明する。
【００１０】
尚、本発明を適用するプリンタは、レーザビームプリンタに限られるものではなく、例えばインクジェット方式や他のプリント方式のプリンタでも良いことは言うまでもない。また、図１では、１ドラム形式の印刷部を持つプリンタであるが、４色同時に印刷可能なタンデム形式の印刷部を持つプリンタであっても基本機能は同じであり、本発明を適用できるものである。
【００１１】
図１は、本実施形態におけるレーザビームプリンタ（ＬＢＰ）の構造を示す側断面図である。図１において、１５００はＬＢＰ本体であり、外部に接続されているホストコンピュータから供給される印刷情報（文字コードなど）やフォーム情報或いはマクロ命令等を入力して記憶すると共に、それらの情報に従って対応する文字パターンやフォームパターンなどを作成し、記録媒体である記録紙などに像を形成する。１５０１は操作パネルであり、操作のための各種スイッチ及びＬＥＤ表示器などにより構成されている。
【００１２】
１０００はプリンタ制御ユニットであり、ＬＢＰ本体１５００全体の制御及びホストコンピュータから供給される文字情報などを解析する。このプリンタ制御ユニット１０００は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ１５０２に出力する。このレーザドライバ１５０２は半導体レ−ザ１５０３を駆動するための回路で、入力されたビデオ信号に応じて半導体レーザ１５０３から発射されるレーザ光１５０４をオン又はオフに切り換える。発射されたレーザ光１５０４は、回転多面鏡１５０５で左右方向に振られ、静電ドラム１５０６上を走査露光する。これにより、静電ドラム１５０６上には文字パターンの静電潜像が形成される。この潜像は、静電ドラム１５０６周囲に配設された現像ユニット１５０７によって現像された後、記録紙に転写される。
【００１３】
通常、記録紙には、カットシートが用いられ、カットシートの記録紙はＬＢＰ１５００に装着された用紙カセット１５０８に収納され、給紙ローラ１５０９、搬送ローラ１５１０及び搬送ローラ１５１１により、装置内に取り込まれ、静電ドラム１５０６に供給される。また、ＬＢＰ本体１５００には、不図示のカードスロットを少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なる制御カード（エミュレーションカード）を接続できるように構成されている。
【００１４】
図２は、本実施形態における印刷システムの構成を示すブロック図である。尚、本発明の機能が実行されるのであれば、単体の機器であっても複数の機器からなるシステムであっても、ローカルエリアネットワーク（ＬＡＮ）などのネットワークを介して処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
【００１５】
図２において、３０００はホストコンピュータであり、ＲＯＭ３のプログラム用ＲＯＭに記憶された文書処理プログラムなどに基づいて図形、イメージ、文字、表（表計算等を含む）などが混在した文書の処理を実行するＣＰＵ１を備え、システムデバイス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００１６】
また、このＲＯＭ３のプログラム用ＲＯＭには、ＣＰＵ１の制御プログラムなどが記憶され、またＲＯＭ３のフォント用ＲＯＭには、文書処理の際に使用するフォントデ−タなどが記憶され、更にＲＯＭ３のデ−タ用ＲＯＭには、文書処理などを行なう際に使用する各種デ−タが記憶されている。
【００１７】
２はＲＡＭであり、ＣＰＵ１の主メモリ、ワークエリアなどとして機能する。５はキーボードコントローラ（ＫＢＣ）であり、キーボード（ＫＢ）９や不図示のポインティングデバイスからのキー入力を制御する。６はＣＲＴコントローラ（ＣＲＴＣ）であり、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）であり、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイルなどを記憶するハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）などの外部メモリ１１とのアクセスを制御する。
【００１８】
８はプリンタコントローラ（ＰＲＴＣ）であり、所定の双方向性インターフェース（インターフェース）２１を介してプリンタ１５００に接続され、プリンタ１５００との通信制御処理を実行する。尚、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソルなどで指示されたコマンドに基づいて登録された各種ウインドウを開き、種々のデータ処理を実行する。
【００１９】
一方、プリンタ１５００において、１２はプリンタＣＰＵであり、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム或いは外部メモリ１４に記憶された制御プログラムなどに基づいてシステムバス１５に接続される各種のデバイスとのアクセスを総括的に制御し、印刷部インターフェース１６を介して接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラムなどが記憶されている。またＲＯＭ１３のフォント用ＲＯＭには、その出力情報を生成する際に使用するフォントデ−タなどが記憶され、ＲＯＭ１３のデ−タ用ＲＯＭには、ハードディスクなどの外部メモリ１４が無いプリンタの場合には、ホストコンピュ−タ３０００上で利用される情報などが記憶されている。
【００２０】
また、ＣＰＵ１２は入力部１８を介してホストコンピュータ３０００との通信処理が可能となっており、プリンタ内の情報などをホストコンピュータ３０００に通知可能に構成されている。１９はＣＰＵ１２の主メモリ、ワークエリアなどとして機能するＲＡＭで、不図示の増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
【００２１】
尚、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭなどに用いられる。またハードディスク（ＨＤ）、ＩＣカ−ドなどの外部メモリ１４は、ディスクコントローラ（ＤＫＣ）２０によってアクセスが制御される。外部メモリ１４は、オプションとして接続され、フォントデ−タ、エミュレ−ションプログラム、フォ−ムデ−タなどを記憶する。
【００２２】
また、描画部２０は色空間変換部３０と共に中間コードから描画データを生成する。この描画部２０と色空間変換部３０による描画処理の詳細については更に後述する。また、上述の外部メモリ１４は１個に限らず、少なくとも１個以上の外部メモリ、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムが格納された外部メモリなどを複数接続できるように構成されていても良い。更に、不揮発性メモリ２２を有し、上述した操作パネル１５０１から設定されたプリンタモード設定情報を記憶するようにしても良い。
【００２３】
このように構成された印刷システムにおいて、プリンタ１５００で実行されるデータ入力から描画処理までの詳細について説明する。本実施形態では、図３に示すような車と標識の図形を１バンドの中に描画する場合を例に説明する。
【００２４】
図４は、本実施形態における描画処理を説明するための流れ図である。まず、入力部１８を介してホストコンピュータ３０００から図３に示す図形のデータが転送されてくると、プリンタ１５００のＣＰＵ１２は、そのデータをＲＡＭ１９に格納する（４０１）。ＲＡＭ１９に格納されたデータをプログラムＲＯＭ１９に格納された内容に従って順次解析し（４０２）、プリンタ１５００が解析できる描画用中間言語（ディスプレイリスト）に変換を行なってＲＡＭ１９に格納する（４０４）。ここで、「ディスプレイリスト」とは、文字・図形・イメージなどの各々のオブジェクトをどの場所に、どのくらいの大きさで描画するかの情報を記載したリストである。そして、ＲＧＢ形式の画像データを持つオブジェクトの画像データは、色空間変換（４０３）によりＹＭＣＫの画像データに変換してＲＡＭ１９に格納する。
【００２５】
ここで、この色空間変換を高速に処理するため、図２に示したように、ハードウェアで構成された色空間変換部３０が設けられている場合、ＲＧＢ形式で構成される画像データをＹＭＣＫに変換することなく、ＲＧＢ形式のままでＹＭＣＫそれぞれのディスプレイリストを作成するほうが高速に処理を行なえる。そこで、ＣＰＵ１２は、ディスプレイリストを生成する際に、色空間変換部３０を使用することを指定されると、ＹＭＣＫディスプレイリスト内の画像データをＲＧＢ形式で保持し、ＲＧＢ形式でディスプレイリストを作成していく。
【００２６】
尚、画像データをＲＧＢ形式、ＹＭＣＫのどちらでディスプレイリス内に作成していくかの選択方法は、常にＲＧＢ形式としておいても良いが、本実施形態では描画するオブジェクトの種類、大きさ、数により、ソフトウェア処理のほうが高速に処理できるものはＹＭＣＫに色空間変換し、ハードウェアの色空間処理部３０で処理したほうが高速に処理できる場合は、ＲＧＢ形式で作成する。また、ソフトウェアとハードウェアで並列に処理するほうが早い場合には、ＲＧＢ形式とＹＭＣＫの両方で作成しても良い。
【００２７】
ここで、図３に示すように、１バンド内に車と標識のデータがある場合、車のデータをソフトウェアによりＲＧＢデータからＹＭＣＫデータに変換し、標識をＲＧＢデータとするものである。
【００２８】
図５は、図３に示す図形を描画する際に作成されるディスプレイリストを示す図である。図５に示すように、ディスプレイリストの中には、車のオブジェクトの縦／横の大きさ、描画時の描画開始ポイント、オフセット、ＹＭＣＫデータかＲＢＧデータかを示すフラグ、各画像データのＲＡＭに格納されているアドレスポインタなどが記載される。また同様に、標識のディスプレイリストもそれぞれの情報が記載される。
【００２９】
１ページ又は、１バンド分のディスプレイリストが出来上がると、ＣＰＵ１２は描画部２０に描画開始命令を発行する（４０４）。これにより、描画部２０はＣＰＵ１２で指定された内容に従い、ＲＡＭ１９に格納されているディスプレイリストをＤＭＡを用いて順次読み込む。そして、ディスプレイリストに記載された内容に沿って、ＹＭＣＫで構成されるオブジェクトの画像データをＲＡＭ１９から読み込み、描画領域としてＲＡＭ１９に確保されたメモリ領域に対して描画データを順次保存し、描画処理を行なう（４０６）。
【００３０】
また、描画部２０は、描画開始命令でディスプレイリストを読み込み、描画を開始するが、ディスプレイリスト内のオブジェクトがＲＧＢデータか、ＹＭＣＫデータかを示すフラグを判断し、色空間変換が必要な場合、図２に示したハードウェア化された色空間変換部３０を用いて（４０７）画像データをＹＭＣＫに色空間変換を実施する。また、上述のフラグがセットされていなければ、そのまま画像データを読み込んで描画する。
【００３１】
上述したように、本実施形態によれば、ＲＧＢ形式で入力された入力データからＹＭＣＫのディスプレイリストを作成する際に、ディスプレイリスト内のオブジェクト画像データがＲＧＢ形式でもＹＭＣＫ形式でも両方で取り扱いが可能になることで、今まで処理に多くの時間がかかっていた色空間変換処理をＣＰＵでもハードウェアでも並行して処理できることで、画像の高速処理が可能となるという効果がある。
【００３２】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用しても良い。
【００３３】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００３４】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００３５】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー（登録商標）ディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００３６】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３７】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３８】
【発明の効果】
以上説明したように、本発明によれば、上位装置から入力された画像データの種類や大きさに応じて高速な色空間変換処理を行なえる中間コードを生成することにより、描画処理を高速に行なうことができる。
【図面の簡単な説明】
【図１】本実施形態におけるレーザビームプリンタ（ＬＢＰ）の構造を示す側断面図である。
【図２】本実施形態における印刷システムの構成を示すブロック図である。
【図３】入力される図形の一例を示す図である。
【図４】本実施形態における描画処理を説明するための流れ図である。
【図５】図３に示す図形を描画する際に作成されるディスプレイリストを示す図である。
【符号の説明】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
５  キーボードコントローラ（ＫＢＣ）
６  ＣＲＴコントローラ（ＣＲＴＣ）
７  ディスクコントローラ（ＤＫＣ）
８  プリンタコントローラ（ＰＲＴＣ）
９  キーボード（ＫＢ）
１０  ＣＲＴディスプレイ（ＣＲＴ）
１１  外部メモリ
１２  ＣＰＵ
１３  ＲＯＭ
１４  外部メモリ
１５  システムバス
１６  印刷部インターフェース
１７  印刷部
１８  入力部
１９  ＲＡＭ
２０  描画部
３０  色空間変換部
１５００  プリンタ
３０００  ホストコンピュータ
【図１】
2004178320.tif 000003
【図２】
2004178320.tif 000004
【図３】
2004178320.tif 000005
【図４】
2004178320.tif 000006
【図５】
2004178320.tif 000007