(57)【要約】【目的】無駄なインデックスデータが印刷データとして用いられたときも、無駄なパレットを処理せずに、高速に印刷を行うことができる印刷処理システム及び印刷処理方法を提供すること。【構成】インデックスデータが印刷データとして用いられた場合、ホストコンピュータまたは印刷装置内において、使用されている色ＩＤのみでのパレットデータを再生成し、イメージデータ変更されて色ＩＤに変更を行う処理を有することを特徴とする。又、前記パレット再生成処理において、ＩＤ長のビット数が縮小できそうな場合は、ＩＤ長を短く処理することを特徴とする。この場合、印刷データ無いに複数のインデックスデータが存在する場合、パレット内の色が共通利用されている部分が多い場合においては、合成して１つのパレットデータを生成する処理を行う。【選択図】　　　図１
2004025572.tif 000002
【特許請求の範囲】
【請求項１】
インデックスデータが印刷データとして用いられた場合、ホストコンピュータまたは印刷装置内において、使用されている色ＩＤのみでのパレットデータを再生成し、イメージデータ変更されて色ＩＤに変更を行う処理を有することを特徴とする印刷処理システム。
【請求項２】
前記パレット再生成処理において、ＩＤ長のビット数が縮小できそうな場合は、ＩＤ長を短く処理することを特徴とする印刷処理方法。
【請求項３】
印刷データ無いに複数のインデックスデータが存在する場合、パレット内の色が共通利用されている部分が多い場合においては、合成して１つのパレットデータを生成する処理を行うことを特徴とする請求項２記載の印刷処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インデックスデータを印刷データとして処理可能な印刷システムに関する。
【０００２】
【従来の技術】
近年、データ処理システムとして、ホストコンピュータ、あるいはスキャナやデジタルカメラといった画像入力装置と双方向インターフェース（例えばＩＥＥＥ１２８４．４、ＩＥＥＥ１３９４、ＵＳＢ、ＩＰＸ等のプロトコルで接続されるネットワーク）を介して接続されるプリンタとから構成され、ホストから入力される出力情報をプリンタ側で解析して、プリンタエンジン、例えばレーザビームプリンタの出力データとしてビットマップデータを展開し（以後レンダリングと表記）、この展開データに基づいて変調されたレーザビームを感光ドラムに走査露光して画像記録を行うものが知られている。
【０００３】
また、プリンタがエミュレーション機能を備える場合には、複数のプリンタ制御言語系を処理可能に構成されており、使用者が実行するアプリケーションにしたがってエミュレーションモードとネイティブモードを切り替えながらプリント処理を実行できるように構成されており、プリンタにはプリンタの制御言語を切り換える為のスイッチや切り換え指示を行うカードスロットがあらかじめ設けられている。
【０００４】
近年、高階調をもったイメージデータを、パレット情報とそのパレット情報のＩＤを記述することによりイメージデータを表現する方法が使われることがある（以後インデックスイメージと記述）。色情報をイメージデータと独立してもつことにより、パレットを変えることにより間単位色空間を変換できたり、パレットを複数のイメージデータで共通使用することにより、イメージデータ間での色空間の統一を容易にする、またパレットの色数を限定してＩＤ長を短くすることによりデータ容量を少なくすることができるといったメリットが存在する。しかしながら、データ量を少なくするために各イメージデータの為にパレットを最適化することはデータ間の共有化においてはデメリットであり、例えば１０色前後しか用いないイメージデータも、１００色前後用いているデータも、扱いやすい８ビット（２５６色）や１６ビット（６５５３５色）といったＩＤ長のパレットを共通して用いるのが普通である。そのため印刷データとしてインデックデータが送られてきた場合、実際には使われてないＩＤのパレットデータまで送られてくるため、無駄なデータ転送や印刷装置内で無駄なデータ処理や保存のための無駄なメモリ使用が発生して印刷速度の低下が起こるといった問題点がある。
【０００５】
【発明が解決しようとする課題】
このように上記従来例においては、印刷データとしてインデックデータが送られてきた場合、実際には使われてないＩＤのパレットデータまで送られてくるため、無駄なデータ転送や印刷装置内で無駄なデータ処理や保存のための無駄なメモリ使用が発生して印刷速度の低下が起こるといった問題点がある。
【０００６】
本発明は、無駄なインデックスデータが印刷データとして用いられたときも、無駄なパレットを処理せずに、高速に印刷を行うことができる印刷処理システム及び印刷処理方法を提供することを目的としている。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明は以下に示す工程を備える。
【０００８】
インデックスデータが印刷データとして用いられた場合、ホストコンピュータまたは印刷装置内において、使用されている色ＩＤのみでのパレットデータを再生成し、イメージデータ変更されて色ＩＤに変更を行う処理を有する。
【０００９】
前記パレット再生成処理において、ＩＤ長のビット数が縮小できそうな場合は、ＩＤ長を短くする処理を有する。
【００１０】
印刷データ無いに複数のインデックスデータが存在する場合、パレット内の色が共通利用されている部分が多い場合においては、合成して１つのパレットデータを生成する処理を有する。
【００１１】
【発明の実施の形態】
本実施例を適用するに好適なレーザビームプリンタの構成について説明する。なお、本実施例を適用するプリンタは、レーザビームプリンタおよびインクジェットプリンタに限られるものでなく、他のプリント方式のプリンタでもよいことは言うまでもない。
【００１２】
図１は本発明を適用可能な第１の出力装置の構成を示す断面図であり、例えばレーザビームプリンタ（ＬＢＰ）の場合を示す。
【００１３】
図において、１００はＬＢＰ本体であり、外部に接続されているホストコンピュータから供給される印刷情報（文字コード等）やフォーム情報あるいはマクロ命令等を入力して記憶するとともに、それらの情報にしたがって対応する文字パターンやフォームパターン等を作成し、記録媒体である記録紙等に像を形成する。１１２は操作の為のスイッチおよびＬＥＤ表示器等が配されている操作パネル、１０１はＬＢＰ本体１００全体の制御およびホストコンピュータから供給される文字情報等を解析するプリンタ制御ユニットである。このプリンタの制御ユニット１０１は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ１０２出力する。レーザドライバ１０２は半導体レーザ１０３を駆動する為の回路であり、入力されたビデオ信号に応じて半導体レーザ１０３から発射されるレーザ光１０４をオン・オフ切り換えする。レーザ光１０４は回転多面鏡１０５で左右方向に振らされて静電ドラム１０６上を走査露光する。これにより、静電ドラム１０６上には文字パターンの静電潜像が形成されることになる。この潜像は、静電ドラム１０６周囲に配設された現像ユニット１０７により現像された後、記録紙に転写される。この記録紙にはカットシートを用い、カットシート記録紙はＬＢＰ１００に装着した用紙カセット１０８に収納され、給紙ローラ１１１により装置内に取り込まれ、静電ドラム１０６に供給される。また、ＬＢＰ本体１００には、図示しないカードスロットを少なくとも１個以上備え、内臓フォントに加えてオプションフォントカード、言語系の異なる制御カード（エミュレーションカード）を接続できるように構成されている。
【００１４】
図２は本発明の実施例を示すプリンタ制御システムの構成を説明するブロック図である。ここでは、レーザビームプリンタ（図１）を例に説明する。なお、本発明の機能が実行されるのであれば、単体の機器であっても複数の機器からなるシステムであっても、ホストコンピュータを経由しないホストレスシステムやＬＡＮ等のネットワークを介して処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【００１５】
図において、２００はホストコンピュータで、ＲＯＭ２０４のプログラム用ＲＯＭに記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在して文書を実行するＣＰＵ２０２を備え、システムデバイス２０５に接続される各デバイスをＣＰＵ２０２が総括的に制御する。また、後述においては印刷装置内の処理として説明されているが本発明における図６〜図７示される圧縮処理および合成処理はフロッピーディスクやＣＤ−ＲＯＭあるいはＤＶＤ−ＲＯＭといったメディアで供給され実行されてもよい。
【００１６】
また、このＲＯＭ２０４のプログラム用のＲＯＭには、ＣＰＵ２０２の制御プログラム等を記憶し、ＲＯＭ２０４のフォント用ＲＯＭには上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ２０４のデータ用ＲＯＭは上記文書処理等を行う際に使用する各種データを記憶する。２０３はＲＡＭでＣＰＵ２０２の主メモリ、ワークエリア等として機能する。２０６はキーボードコントローラ（ＫＢＣ）で、キーボード２１０や不図示のポインティングデバイスからのキー入力を制御する。２０７はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）２１１の表示を制御する。２０８はメモリコントローラ（ＭＣ）で、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、編集ファイル用を記憶するハードディスク（ＨＤ）、フロッピーディスク（ＦＤ）等の外部メモリ２１２とのアクセスを制御する。
【００１７】
２０９、２２６はデバイス間のＩ／　Ｏを制御する処理部で、具体例としてＩＥＥＥ１３９４の様なインターフェースが挙げられるが、双方向通信が可能なインターフェースであれば、その種類は問わない。また、プリンタ２２０において、２２２はプリンタＣＰＵで、ＲＯＭ２２４のプログラム用ＲＯＭに記憶された制御プログラム等或いは外部メモリ２３１に記憶された制御プログラム等に基づいてシステムバス２２５に接続される各種のデバイスとのアクセスを総括的に制御し、印刷部インターフェース２２７を介して接続される印刷部（プリンタエンジン）２２８に出力情報としての画像信号を出力する。
【００１８】
また、このＲＯＭ２２４のプログラムＲＯＭには、図５〜図７に示されるフローチャートで示されるようなＣＰＵ２２２の制御プログラム等を記憶する。ＲＯＭ２２４のデータ用ＲＯＭにはハードディスク等の外部メモリ２０３１が無いプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。ＣＰＵ２２２は入力部２２６を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ２００に通知可能に構成されている。２２３はＣＰＵ２２２の主メモリ、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張できるように設計されている。
【００１９】
ＲＡＭ２２３は、印刷データの格納、出力情報展開、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ２３１は、メモリコントローラ（ＭＣ）２２８によりアクセスを制御される。リプリント用のレンダリング済み画像データのデータ量が多い場合には、外部メモリに接続されたＨＤ内に格納してもよい。２３０は前述した操作パネルで操作の為のスイッチおよびＬＥＤ表示機機等が配されている。
【００２０】
また、前述した外部メモリは１個に限らず、少なくとも１個以上備え、内臓フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しないＮＶＲＡＭを有し、操作パネル２３０からのプリンタモード設定情報を記憶するようにしてもよい。
【００２１】
図３は本発明の実施例におけるパレットテーブルの圧縮の様子を図示した図である。３００は圧縮されるまえのパレットテーブルである。３０１はパレットＩＤであり、本実施例においてのＩＤ長は８　ビットであり、２５６色持つことが可能である。３０２は実際の色を示す値が記述されている。色の表現方法は本発明において特に種類を選ばないが、例としてあげれば一般的に使用される、ＲＧＢをそれぞれ８ビット長で表現した２４ビットカラーデータや、色成分をもたず輝度のみ持ったデータでも良い。３０３はイメージデータで３０４のパレットＩＤによりイメージデータを表現している。
【００２２】
３０５は３０３のイメージにおいて使用されているパレットＩＤのみを集めた中間テーブルで、本例では０、３、５のパレットＩＤのみ使用されていたと仮定している。３０６は元のパレットＩＤ。３０７は圧縮後に変更されるパレットＩＤである。３１１は圧縮後のパレットＩＤテーブルであり、３色しかＩＤが必要が無いためＩＤ長を４ビットに縮小している。３０９は圧縮後のパレットＩＤテーブルに対応したイメージデータで、ＩＤ長が４ビットに変更されたことにより３１０のパレットＩＤ長も４ビットに変換されている。ＩＤ長が４ビットになることによりイメージデータのサイズは元のイメージデータのサイズの半分にすることができるため、メモリ効率が向上する。
【００２３】
以上の処理はホストコンピュータ、印刷装置どちらにおいても行うことが可能だが、印刷装置で行う場合においては、ホストコンピュータからの転送時においては無駄なデータが転送されることになるので、ホストコンピュータにおいて処理した方が効果が高い。
【００２４】
図４は本発明の実施例におけるパレットＩＤテーブルの合成を図示した図である。
【００２５】
４００と４０２はそれぞれ合成前のパレットＩＤテーブルで、ＩＤ長はそれぞれ８ビット長である。４０１、４０３は４００、４０２のパレットＩＤから使用されているパレットＩＤを抜き出した中間テーブルである。この時点で図３の説明した処理を適用すれば４ビット長のＩＤテーブルが２つ生成されることになるが、４０１のパレットＩＤ５と４０３のパレットＩＤ１の用に、同じ色を表現しているパレットＩＤを統一すれば、４０４のパレットＩＤテーブルのように４ビット長のパレットＩＤテーブル１つのみ作れば良いことが解る。この処理によりパレットＩＤテーブルの個数が減らすことができ、管理の簡易化、メモリ効率の向上を実現することができる。
【００２６】
図５は本発明の実施例における印刷装置内の全体の処理の流れを示すフローチャートである。本実施例においては印刷装置において全ての処理を実施しているが、前述のように本発明の処理はホストコンピュータにおいて処理しても良い。
【００２７】
５０１において印刷データがホストコンピュータから送信されるのを待つ。５０２において印刷装置内で用いられるような中間データに変換する。５０３においてパレットＩＤテーブルの圧縮処理を行う。５０４パレットＩＤテーブルの合成処理を行う。５０５においてプリント処理を行い実際の紙への出力を行う。５０６において印刷データに含まれる全てのページに対して５０２から５０５の処理が行われるように判断する。
【００２８】
図６は図５のフローチャートにおける５０３のパレットＩＤテーブルの圧縮処理の流れの詳細を示すフローチャートである。
【００２９】
６０１において中間データに含まれる全てにデータに関して、インデックスイメージであるか判断する。インデックスデータであった場合、
６０２から６０８の処理を実行しパレットＩＤテーブルおよびイメージデータの圧縮を行う。６０２において情報の初期化を行う。使用されているパレットＩＤが多い場合においては圧縮の効果が少ない、その場合においては圧縮処理を行う分だけ無駄な処理時間が掛かってしまう。そのためＬｉｍｉｔ値以上のパレットＩＤが使用されているときは圧縮を行わないと判断する。図３や図４の例で言えば元のパレットＩＤ長が８ビットならばＬｉｍｉｔ値は１６個（４ビット長のパレットＩＤテーブルに収まる）と設定するのが妥当であろう。Ｃｕｒｒｅｎｔは使用されているパレットＩＤをカウントする変数である。初期化が終わったら６０３においてイメージデータの全てのＩＤ値に関して処理するように判断する。
【００３０】
６０４において既にカウントしたパレットＩＤ値で無い時はは６０５において中間テーブルに登録してＣｕｒｒｅｎｔに１を足す。６０６においてＣｕｒｒｅｎｔ値がＬｉｍｉｔ値を超えたか判断する。超えた場合は現在の処理を破棄して、次のインデックスイメージに処理を移す。６０３においてイメージデータ中の全てのＩＤに処理を終了して圧縮可能な場合は６０７において、中間テーブルに元でいてイメージデータのパレットＩＤを変換する。６０８において、圧縮前のパレットＩＤテーブルとイメージデータを破棄し、圧縮後のパレットＩＤテーブルとイメージデータの登録を行う。以上の処理によりインデックスイメージの圧縮が可能になる。
【００３１】
図７はパレットＩＤテーブルの合成処理の流れを示すフローチャートである。本実施例においては合成後のパレットＩＤ長は４ビット（１６個）とするが、本発明がこの数値でなければならない訳では無いことは言うまでもない。
【００３２】
７０１においてページ内の全てのインデックスイメージについて判断する。７０２においてパレットＩＤテーブルが１６個以上か判断する。１６個以上の場合は合成できないので、何もせずに次のインデックスイメージに処理を移す。１６個以下であった場合は７０３において情報の初期化を行う。Ｌｉｍｉｔ　はパレットＩＤ長が４ビットつまり１６個までということを示している。Ｃｕｒｒｅｎｔ　は現在の合成テーブルに入ったパレットＩＤ数である。７０３においてパレットＩＤテーブルに含まれている全てのパレットＩＤに対して、７０４から７０５の処理を行うように判断する。７０５においてパレットＩＤの値を見て、未登録であったら、７０６において合成テーブル用の中間テーブルに登録し、Ｃｕｒｒｅｎｔ　に１追加する。７０７においてＣｕｒｒｅｎｔ　がＬｉｍｉｔ　以上でなければ次のパレットＩＤを処理する。Ｃｕｒｒｅｎｔ　がＬｉｍｉｔ　以上だった場合、７０８において現在処理しているパレットＩＤテーブルのパレットＩＤを全て処理終了しているか判断する。
【００３３】
処理が終了していないパレットＩＤがあるインデックスイメージは、必要なパレットＩＤが足りないため合成出来ない。よって７０９において中間テーブルから現在処理しているパレットＩＤテーブルに関するパレットＩＤを削除し、全てのパレットＩＤが未処理の状態に戻し、次に生成する合成パレットＩＤテーブルに加える。７１０において合成パレットＩＤテーブルを作成する。７１１において合成された全てのインデックスイメージのイメージデータを合成したパレットＩＤの書き換える。
【００３４】
以上の処理まで１つの合成処理で、全てのインデックスイメージが終了するまで繰り返す。７０１において全てのインデックステーブルが処理された判断されたら、７１２においてＣｕｒｒｅｎｔ　が０であるか判断する。０でない場合は合成途中であるので、７１３において合成オアレットＩＤテーブルを生成する。７１４において７１３において生成された合成テーブルに関係する全てのイメージデータのＩＤを変換する。上記の処理によれば合成されるインデックスイメージは２個に限らず、パレットＩＤが１６個以内であれば何個でも合成できる。
【００３５】
また、本実施例に用いたアルゴリズムは最小限の処理ステップで合成を行うためであるが、本実施例はこのアルゴリズムに依存するものでなく合成テーブル数を最小限にする等のアルゴリズムであってもよいことは言うまでもない。
【００３６】
【発明の効果】
以上の説明で明らかなように、本発明によれば、インデックスデータが印刷データとして用いられた場合、ホストコンピュータまたは印刷装置内において、使用されている色ＩＤのみでのパレットデータを再生成し、イメージデータ変更されて色ＩＤに変更を行う処理を有するため、無駄なインデックスデータが印刷データとして用いられたときも、無駄なパレットを処理せずに、高速に印刷を行うことができるという効果が得られる。
【図面の簡単な説明】
【図１】本実施例における印刷装置の断面図である。
【図２】本実施例における印刷装置のブロック構成図である。
【図３】本発明の実施例におけるパレットテーブルの圧縮の様子を図示した図である。
【図４】本発明の実施例におけるパレットＩＤテーブルの合成を図示した図である。
【図５】本発明の実施例における印刷装置内の全体の処理の流れを示すフローチャートである。
【図６】パレットＩＤテーブルの圧縮処理の流れの詳細を示すフローチャートである。
【図７】パレットＩＤテーブルの合成処理の流れを示すフローチャートである。
【符号の説明】
１００　　　ＬＢＰ本体
１０１　　　プリンタ制御ユニット
１０２　　　レーザドライバ
１０３　　　半導体レーザ
１０４　　　レーザ光
１０６　　　静電ドラム
１０７　　　現像ユニット
１０８　　　用紙カセット
１１２　　　操作パネル
２００　　　ホストコンピュータ
２０２　　　ＣＰＵ
２０３　　　ＲＡＭ
２０４　　　ＲＯＭ
２０５　　　システムデバイス
２０６　　　キーボードコントローラ
２０８　　　メモリコントローラ
２２０　　　プリンタ
【図１】
2004025572.tif 000003
【図２】
2004025572.tif 000004
【図３】
2004025572.tif 000005
【図４】
2004025572.tif 000006
【図５】
2004025572.tif 000007
【図６】
2004025572.tif 000008
【図７】
2004025572.tif 000009