(57)【要約】【課題】複数の処理部の協調処理を利用した印刷データ生成装置における、複数の処理部間のデータ授受の高速化。【解決手段】コンピュータＰＣは印刷データ生成装置である。画像処理プロセッサ１１０は、ＸＨＴＭＬファイル等に基づいて印刷対象の画像を表す画像データを生成する。印刷処理プロセッサ２１０は、生成された画像データに基づいて印刷データを生成して印刷装置ＰＴに印刷を行わせる。画像データのデータ授受はバッファ３００を介して行われる。画像処理プロセッサ１１０が画像データを書き込む前に、印刷処理プロセッサ２１０が予めバッファ３００のクリアを行うことで、画像データのデータ授受を迅速に行うことができる。【選択図】　図１
2004133591.tif 000002
【特許請求の範囲】
【請求項１】
画像の印刷を行うための印刷データを生成する印刷データ生成装置であって、
前記印刷データの生成処理を行うための第１及び第２の処理部と、
前記第１及び第２の処理部間でのデータの受け渡しに供される共有メモリとを有し、
前記第１の処理部は、
前記画像を表す画像データを入力する入力部と、
該画像データをラスタデータに変換すると共に、該ラスタデータを画素単位で前記共有メモリに書き込む書込み部とを備え、
前記第２の処理部は、
前記ラスタデータを前記共有メモリから読み出す読出し部と、
該各画素のラスタデータに対して所定の処理を施して前記印刷データを生成する印刷データ生成部と、
前記第１の処理部による書き込みに先立って、前記第１の処理部よりも高速に前記共有メモリのうち、前記書き込みに使用される所定の記憶領域を所定の値に一括設定する一括設定部とを備える印刷データ生成装置。
【請求項２】
請求項１記載の印刷データ生成装置であって、
前記所定の値はゼロである印刷データ生成装置。
【請求項３】
請求項１記載の印刷データ生成装置であって、
前記一括設定部は、前記一括設定を行うとともに、該一括設定を行ったことを前記第１の処理部に通知する印刷データ生成装置。
【請求項４】
請求項１記載の印刷データ生成装置であって、
前記共有メモリは、該共有メモリの記憶内容をリセットするためのリセット端子を備え、
前記一括設定部は該リセット端子にリセット信号を入力することで前記一括設定を行う印刷データ生成装置。
【請求項５】
請求項１記載の印刷データ生成装置であって、
前記第２の処理部と前記共有メモリとを集積回路上で一体的に構成した印刷データ生成装置。
【請求項６】
請求項１記載の印刷データ生成装置であって、
前記第１の処理部は前記所定の値を前記第２の処理部に通知する通知部を備え、
前記一括設定部は、該値を取得するとともに、該取得した値で前記一括設定を行う印刷データ生成装置。
【請求項７】
請求項１記載の印刷データ生成装置であって、
前記第１の処理部は、前記所定の値に対応する色を前記第２の処理部に通知する通知部を備え、
前記印刷データ生成部は、前記所定の値と前記色とを対応付けて前記印刷データを生成する印刷データ生成装置。
【請求項８】
請求項１記載の印刷データ生成装置であって、
前記共有メモリは、少なくとも２つの領域に分けられており、
前記書き込みと読み出しと一括設定とは該領域ごとに行われる印刷データ生成装置。
【請求項９】
請求項１記載の印刷データ生成装置であって、
前記印刷データは、多色のドットを形成してカラー画像を印刷する印刷装置用のデータであり、
前記印刷データ生成部は、解像度変換と色変換とハーフトーン処理とインタレース制御データの生成処理との少なくとも１つを行う印刷データ生成装置。
【請求項１０】
印刷データ生成装置を利用して、画像の印刷を行うための印刷データを生成する印刷データ生成方法であって、
前記印刷データ生成装置は、
前記印刷データの生成処理を行うための第１及び第２の処理部と、
前記第１及び第２の処理部間でのデータの受け渡しに供される共有メモリとを有し、
前記第１の処理部が、前記画像を表す画像データを入力する工程と、
前記第１の処理部が、該入力された画像データをラスタデータに変換すると共に、該ラスタデータを画素単位で前記共有メモリに書き込む工程と、
前記第２の処理部が、前記ラスタデータを前記共有メモリから読み出す工程と、
前記第２の処理部が、該各画素のラスタデータに対して所定の処理を施して前記印刷データを生成する工程と、
前記第１の処理部が書き込みを行う工程に先立って、前記第１の処理部が行うよりも高速に、前記第２の処理部が、前記共有メモリのうち、前記書き込みに使用される所定の記憶領域を所定の値に一括設定する工程とを備える印刷データ生成方法。
【請求項１１】
コンピュータを利用して、画像の印刷を行うための印刷データを生成するためのコンピュータプログラムであって、
前記コンピュータは、
前記印刷データの生成処理を行うための第１及び第２の処理部と、
前記第１及び第２の処理部間でのデータの受け渡しに供される共有メモリとを有し、
前記第１の処理部に、前記画像を表す画像データを入力させる機能と、
前記第１の処理部に、該入力された画像データをラスタデータに変換すると共に、該ラスタデータを画素単位で前記共有メモリに書き込ませる機能と、
前記第２の処理部に、前記ラスタデータを前記共有メモリから読み出させる機能と、
前記第２の処理部に、該各画素のラスタデータに対して所定の処理を施して前記印刷データを生成させる機能と、
前記第１の処理部の書き込みに先立って、前記第１の処理部が行うよりも高速に、前記第２の処理部に、前記共有メモリのうち、前記書き込みに使用される所定の記憶領域を所定の値に一括設定させる機能とを前記コンピュータに実現させるためのコンピュータプログラム。
【請求項１２】
請求項１１記載のコンピュータプログラムを記録したコンピュータ読みとり可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、分散処理による印刷データの生成に関する。
【０００２】
【従来の技術】
従来、印刷を行うときには、印刷対象の画像を表すラスタデータに基づいて、印刷装置が直接処理可能な印刷データの生成を行っていた。例えばＸＨＴＭＬ（Ｅｘｔｅｎｓｉｂｌｅ　ＨｙｐｅｒＴｅｘｔ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）ファイルなどの記述言語の場合、当該ファイルの解釈を行ってラスタデータを生成し、色変換、Ｈ／Ｔ（ハーフトーン）処理、インタレース処理等を行って印刷データを生成していた。
【０００３】
【特許文献１】
特開２００２−１１３９０８
【０００４】
【発明が解決しようとする課題】
しかし、ラスタデータのデータ量が非常に大きい場合には、処理の負担が極めて大きいものとなっていた。ここで、処理の負荷を軽減するシステムとして、複数の処理部が協調して印刷データを生成するシステムが考えられる。例えば、第１のプロセッサがＸＨＴＭＬファイル等に基づいてラスタデータを生成し、第２のプロセッサは、このラスタデータに基づいて印刷データを生成するシステムである。ラスタデータのデータ授受は、第１及び第２のプロセッサが共にアクセス可能な共有メモリを介して行う方法が可能である。
【０００５】
しかし、この方法では、今度はラスタデータの読み書きに時間を要し、ラスタデータのデータ授受を迅速に行うことは困難であった。ラスタデータのＲＧＢ値等を各画素ごとに大量に読み書きする必要があるためである。
【０００６】
本発明は、上述の課題を解決するためになされたものであり、分散処理による印刷データの生成において、ラスタデータの受け渡しの所要時間を短縮することを目的とする。
【０００７】
【課題を解決するための手段およびその作用・効果】
上記課題の少なくとも一部を解決するために、本発明では、次の構成を適用した。
本発明の印刷データ生成装置は、
画像の印刷を行うための印刷データを生成する印刷データ生成装置であって、
前記印刷データの生成処理を行うための第１及び第２の処理部と、
前記第１及び第２の処理部間でのデータの受け渡しに供される共有メモリとを有し、
前記第１の処理部は、
前記画像を表す画像データを入力する入力部と、
該画像データをラスタデータに変換すると共に、該ラスタデータを画素単位で前記共有メモリに書き込む書込み部とを備え、
前記第２の処理部は、
前記ラスタデータを前記共有メモリから読み出す読出し部と、
該各画素のラスタデータに対して所定の処理を施して前記印刷データを生成する印刷データ生成部と、
前記第１の処理部による書き込みに先立って、前記第１の処理部よりも高速に前記共有メモリのうち、前記書き込みに使用される所定の記憶領域を所定の値に一括設定する一括設定部とを備えることを要旨とする。
【０００８】
このようにすることで、ラスタデータのデータ授受を高速に行うことができる。第１の処理部は、一括設定された内容を前提として書き込みを行うことができるためである。
【０００９】
例えば、第１の処理部が共有メモリに書き込むべき値の大部分がゼロである場合、第２の処理部がそのゼロを一括設定することで、第１の処理部はゼロの書き込みを大幅に省略することができる。第１の処理部よりも第２の処理部の方がゼロの書き込みを高速に行うことができることから、全体として高速化を図ることができる。
【００１０】
ここで、第１及び第２の処理部は、上記処理を実行可能な専用又は汎用のプロセッサや回路その他のハードウェア資源により構成することができる。
【００１１】
なお、所定の値は、印刷対象の画像中の背景色に係る値としてもよい。また、所定の値は、印刷対象の画像中に多く含まれる色を表す値であることが望ましい。第２の処理部は、黒色の値を一括設定してもよいし、白色の値を一括設定してもよいし、その他の無彩色や有彩色を一括設定してもよい。また、第２の処理部は、透明色を一括設定してもよい。
【００１２】
なお、第２の処理部が共有メモリに施す一括設定は、所定のパターンを共有メモリに書き込むものであってもよい。例えば、「複製禁止」なる文字が繰り返し現れる地模様を記憶させるものとしてもよい。また、書き込み部は、共有メモリの一括設定された部分以外の部分のみに対する書き込みを行ってもよいし、一括設定された部分の少なくとも一部を変更する書き込みを行ってもよい。
【００１３】
ここで、一括設定部が一括設定を行う所定の記憶領域は、書き込み部が書き込みを行う記憶領域の全てであってもよいし、その一部であってもよい。また、一括設定は、書き込み部が書き込みを行う記憶領域の区分ごとに異なる態様で行われてもよい。
【００１４】
本発明の印刷データ生成装置において、
前記所定の値はゼロであるものとしてもよい。
【００１５】
例えば、ラスタデータにおける値ゼロは、黒色の画素や、白色の画素、透明の画素を表すものとしてもよい。
【００１６】
本発明の印刷データ生成装置において、
前記一括設定部は、前記一括設定を行うとともに、該一括設定を行ったことを前記第１の処理部に通知するものとしてもよい。
【００１７】
このようにすることで、第１の処理部は、共有メモリの内容に一括設定が施されたことを把握することができる。第１の処理部は、当該把握に基づいて、ラスタデータの書き込みを開始するものとしてもよい。
【００１８】
ここで、通知は、共有メモリを介した通知を行ってもよいし、他の方法による通知を行ってもよい。例えば、いわゆる割り込み信号を利用した通知を行うものとしてもよい。
【００１９】
本発明の印刷データ生成装置において、
前記共有メモリは、該共有メモリの記憶内容をリセットするためのリセット端子を備え、
前記一括設定部は該リセット端子にリセット信号を入力することで前記一括設定を行うものとしてもよい。
【００２０】
このようにすることで、第２の処理部は、共有メモリの所定の記憶領域の一括設定を高速に行うことができる。
【００２１】
なお、リセット端子は、一括設定の対象たる記憶領域を特定する信号や、共有メモリに一括設定する値を特定する信号を入力するものとしてもよい。また、リセット信号の入力によるリセットは、共有メモリのハードウェア構成に基づいて、共有メモリの複数の要素への並列的な書き込みを行うものであってもよい。
【００２２】
本発明の印刷データ生成装置において、
前記第２の処理部と前記共有メモリとを集積回路上で一体的に構成するものとしてもよい。
【００２３】
このようにすることで、第２の処理部は、共有メモリの一括設定を高速に行うことができる。第２の処理部と共有メモリとを一体的に構成することでアクセス速度を向上させることができるためである。
【００２４】
なお、２つの処理部と共有メモリとの構成は、これら全てが集積回路上で一体的に構成されていてもよい。また、２つの処理部のみが集積回路上で一体的に構成されており、共有メモリは２つの処理部から独立しているものとしてもよい。
【００２５】
本発明の印刷データ生成装置において、
前記第１の処理部は前記所定の値を前記第２の処理部に通知する通知部を備え、
前記一括設定部は、該値を取得するとともに、該取得した値で前記一括設定を行うものとしてもよい。
【００２６】
このようにすることで、第１の処理部は、ラスタデータの内容に応じて、一括設定の値を変更させることができる。ラスタデータに多く含まれる値が第２の処理部により一括設定されることで、ラスタデータの内容に関わらずデータ授受の高速化を実現することができる。ラスタデータに多く含まれる値が高速に一括設定されるためである。
【００２７】
本発明の印刷データ生成装置において、
前記第１の処理部は、前記所定の値に対応する色を前記第２の処理部に通知する通知部を備え、
前記印刷データ生成部は、前記所定の値と前記色とを対応付けて前記印刷データを生成するものとしてもよい。
【００２８】
このようにすることで、第１の処理部は、ラスタデータの内容に応じて、一括設定の値に対応させるべき色を指定することができる。ラスタデータが表す画像に多く含まれる色を第１の処理部が指定することで、ラスタデータの内容に関わらずデータ授受の高速化を実現することができる。ラスタデータに多く含まれる色が高速に一括設定されるためである。
【００２９】
本発明の印刷データ生成装置において、
前記共有メモリは、少なくとも２つの領域に分けられており、
前記書き込みと読み出しと一括設定とは該領域ごとに行われるものとしてもよい。
【００３０】
このようにすることで、第１及び第２の処理部間のデータ授受の高速化を図ることができる。例えば、第１の処理部が１つの領域に書き込みを行っている間に、第２の処理部が他の領域の読み出しを行うものとしてもよい。
【００３１】
なお、共有メモリの２つ以上の領域は一体的に構成されていてもよいし、別体であってもよい。
【００３２】
本発明の印刷データ生成装置において、
前記印刷データは、多色のドットを形成してカラー画像を印刷する印刷装置用のデータであり、
前記印刷データ生成部は、解像度変換と色変換とハーフトーン処理とインタレース制御データの生成処理との少なくとも１つを行うものとしてもよい。
【００３３】
ここに、解像度変換は画像の解像度を変換する処理である。色変換処理は、ＲＧＢ表色系で記述された色をＣＭＹ表色系のデータに変換する処理である。ハーフトーン処理は、多階調データを面積階調データに変換する処理である。インタレース処理は、印刷装置のプリントヘッドの駆動や紙送り等を制御するデータを生成する処理である。
【００３４】
なお、解像度変換処理等における機械的な大量の処理は、専用のハードウェア資源の支援により高速に実行されるものとしてもよい。
【００３５】
ここに、解像度変換等の処理は、画像単位で頻繁にラスタデータにアクセスする必要がある。本発明の印刷データ生成装置において、印刷データ生成部及び一括設定部等の、共有メモリへのアクセス速度が要求される処理部を第２の処理部に集約するものとしてもよい。このようにすることで、印刷データ生成装置の構成を簡潔にしたり、印刷データ生成部や一括設定部などの処理を高速化したりすることができる。
【００３６】
例えば、印刷データは、インクジェットプリンタ又はインクジェットプリンタのドライバ等が直接処理可能なデータであってもよい。なお、印刷データは、レーザープリンタ等のページプリンタに利用されるデータであってもよい。
【００３７】
本発明は、印刷データ生成装置としての態様の他、印刷データ生成方法など種々の態様で構成することが可能である。また、これらの方法をコンピュータによって実現するコンピュータプログラム自身またはこれと同視し得る信号として構成してもよい。更に、これらのコンピュータプログラムを記録した記録媒体として構成してもよい。
【００３８】
ここで記憶媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置などコンピュータが読取り可能な種々の媒体を利用できる。
【００３９】
【発明の実施の形態】
以下、本発明の実施の形態について、実施例に基づき以下の順序で説明する。
Ａ．第１実施例；印刷データ生成装置：
Ａ１．全体構成：
Ａ２．機能ブロック構成：
Ａ３．ラスタデータのデータ授受：
Ａ４．画像の記憶態様：
Ｂ．第２実施例；パレットの利用：
Ｃ．第３実施例；クリア値の指定：
Ｄ．その他の実施例：
【００４０】
Ａ．第１実施例；印刷データ生成装置：
Ａ１．全体構成：
図１は、印刷データ生成装置の構成を示す説明図である。印刷データ生成装置は印刷装置ＰＴに内蔵され、画像処理部１００と印刷処理部２００とを有する。パーソナルコンピュータＰＣは、印刷装置ＰＴに対し、印刷対象を特定するＸＨＴＭＬファイルを入力し、印刷装置ＰＴは、そのＸＨＴＭＬファイルが表す画像の印刷を行う。
【００４１】
画像処理部１００及び印刷処理部２００は、それぞれが画像処理プロセッサ１１０と印刷処理プロセッサ２１０とを有するマルチプロセッサシステムである。画像処理部１００はラスタデータを生成して印刷処理部２００に送付する。印刷処理部２００は、画像処理部１００から受け取るラスタデータに基づいて印刷データを生成する。また、印刷処理部２００は、印刷データ送付することで印刷装置ＰＴに印刷を行わせる。印刷装置ＰＴは、多色のドットを形成してカラー画像を印刷するインクジェットプリンタである。
【００４２】
ここに、ラスタデータは、各画素ごとにＲＧＢ値等を記録したビットマップデータである。なお、ラスタデータは、文字を表す文字ラスタデータと写真等を表す画像ラスタデータに分かれているものとしてもよい。
【００４３】
画像処理プロセッサ１１０と印刷処理プロセッサ２１０とはバッファ３００を介して通信することができる。バッファ３００は共有メモリであり、画像処理プロセッサ１１０及び印刷処理プロセッサ２１０の両者からアクセス可能である。具体的には、画像処理プロセッサ１１０はバッファ３００にタラスタデータを書き込み、印刷処理プロセッサ２１０は書き込まれたラスタデータを読み出す。
【００４４】
ここでバッファ３００は２組のラスタデータを記憶する機能を有しており、いわゆるダブルバッファ構成をとる。すなわち、画像処理プロセッサ１１０がひとつのバッファにラスタデータを書き込む間、印刷処理プロセッサ２１０は別のバッファからラスタデータを読み込むことができる。以下、バッファ３００はバッファＡ及びバッファＢを有するものとして説明を行う。なお、バッファ３００は、３組以上のラスタデータを記憶するいわゆるマルチバッファであってもよい。
【００４５】
なお、バッファ３００への書き込みはバンドを単位として行い、バッファＡ及びＢは１単位のバンドを記憶する。ここにバンドとは、読み書きを行うデータ幅のことである。なお、バンドは固定長であってもよいし、可変長であってもよい。例えば、印刷を行うべき画像の属性によって異なるものとしてもよい。
【００４６】
バッファ３００は記憶内容を一括クリアするためのリセット端子３０１を有する。リセット端子３０１にリセット信号が入力された場合には、バッファ３００の記憶内容が一括クリアされる。以下では、バッファ３００が有する２つのバッファＡ，Ｂをそれぞれ個別に一括クリアできるものとして説明を行う。
【００４７】
印刷処理部２００が有する変換ユニット２１５は、印刷処理プロセッサ２１０が利用するハードウェア資源であり、ラスタデータに基づいて印刷データを生成する機能を有する。変換ユニット２１５は、色変換機構２５０と、Ｈ／Ｔ機構２５２と、インタレース処理機構２５４とを有する。印刷処理プロセッサ２１０は、これらの機構を利用することで、各々、色変換処理と、Ｈ／Ｔ処理と、インタレース処理とを高速に実行することができる。
【００４８】
色変換処理は、ＲＧＢ表色系で記述された色をＣＭＹ表色系のデータに変換する処理である。Ｈ／Ｔ処理は、多階調データを面積階調データに変換する処理である。インタレース処理は、印刷装置ＰＴのプリントヘッドの駆動や紙送り等を制御するデータを生成する処理である。なお、色変換機構２５０が色変換を行うことに先立って、画像の解像度を変換する処理を行ってもよい。
【００４９】
画像処理プロセッサ１１０及び印刷処理プロセッサ２１０の間では、バッファ３００を介した通信とは別に、短いメッセージの通知を行うことができる。例えば、画像処理プロセッサ１１０は、バッファ３００へラスタデータの書き込みを終えた旨のメッセージを印刷処理プロセッサ２１０に通知することができる。なお、通知は、画像処理プロセッサ１１０又は印刷処理プロセッサ２１０が、他方のプロセッサが有するレジストリに情報を書き込むことで行われる。
【００５０】
なお、画像処理部１００及び印刷処理部２００は、それぞれ、画像処理プロセッサ１１０や印刷処理プロセッサ２１０が情報処理を行う場合に利用するＲＯＭやＲＡＭを有する。
【００５１】
Ａ２．機能ブロック構成：
画像処理部１００と印刷処理部２００とは、画像処理プログラムと印刷処理プログラムとを各々ＲＯＭに記憶している。これらのプログラムを実行することにより、画像処理プロセッサ１１０及び印刷処理プロセッサ２１０は、図１に図示する機能ブロックを各々ソフトウェア的に実現する。もっとも、各機能ブロックは、ハードウェア的に構成しても構わない。
【００５２】
まず、画像処理プロセッサ１１０側における各機能ブロックについて説明する。
画像処理制御部１２０は、画像処理プロセッサ１１０側の他の各機能ブロックを制御するとともに、印刷処理プロセッサ２１０との間でメッセージ通知のやりとりを行う。
【００５３】
ファイル入力部１３０は、ＸＨＴＭＬファイル及び当該ＸＨＴＭＬファイルに付随する画像ファイル等を入力する。なお、ＸＨＴＭＬとは、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）の構文を使って改めてＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）を再定義した構造化言語である。ここで、ファイル入力部は、ポストスクリプト等のファイルを入力するものとしてもよい。
【００５４】
ＸＨＴＭＬ解釈部１４０は、ＸＨＴＭＬファイルの文法解釈を行う。具体的には、タグの構造解析等を行う。
【００５５】
画像構成部１４２は、ＸＨＴＭＬ解釈部１４０が行った文法解釈の結果に基づいてラスタデータを構成する。なお、後述するように、画像構成部１４２は、バンド幅を単位としてラスタデータを順次構成する。
【００５６】
書き込み部１５０は、画像構成部１４２が構成したラスタデータをバッファ３００に書き込む。一般にラスタデータの大きさは、バッファＡ，Ｂの大きさ（バンド幅）を超えるものである。書き込み部１５０は、ラスタデータのバンド幅ごとに、バッファＡ及びバッファＢに対して交互に書き込みを行う。
【００５７】
次に、印刷処理プロセッサ２１０側における各機能ブロックについて説明する。
印刷処理制御部２２０は、印刷処理プロセッサ２１０側の他の各機能ブロックを制御するとともに、画像処理プロセッサ１１０との間でメッセージ通知のやりとりを行う。また、印刷処理制御部２２０は、バッファ３００が有するリセット端子３０１へのリセット信号を制御することで、バッファ３００のクリアを行わせる。
【００５８】
読み出し部２４０は、書き込み部１５０がバッファ３００に書き込んだラスタデータを読み出す。読み出しは、バッファ３００が有するバッファＡ及びバッファＢについて交互に行う。
【００５９】
印刷制御部２６０は、変換ユニット２１５の各機構を制御して印刷データを生成させるとともに、生成された印刷データを印刷装置ＰＴに送付する。
【００６０】
以上説明したように、画像処理部１００は、ソフトウェア的に構成されたＸＨＴＭＬ解釈部１４０や画像構成部１４２により、ＸＨＴＭＬ解釈等の複雑な処理を実現する。一方、印刷処理部２００は、ハードウェア的に構成された変換ユニット２１５の各機構により、色変換処理等の機械的な大量の処理を高速に実行する。
【００６１】
Ａ３．ラスタデータのデータ授受：
図２は、ラスタデータを送付する処理を示すフローチャートである。画像処理部１００は、図２に示す処理によりラスタデータを印刷処理部２００に送付する。
【００６２】
ステップＳａ１では、ファイル入力部１３０がＸＨＴＭＬファイル等の入力を行う。
【００６３】
ステップＳａ２では、ＸＨＴＭＬ解釈部１４０がＸＨＴＭＬファイルの解釈処理を行う。
【００６４】
ステップＳａ３では、ＸＨＴＭＬ解釈部１４０による解釈の結果に基づき、画像構成部１４２がラスタデータを構成する。なお、前述のように、画像構成部１４２は、バンド幅を単位としてラスタデータを順次構成する。
【００６５】
ステップＳａ４では、画像処理部１００がバッファＡ又Ｂの確認を行う。具体的には、これから書き込みを行うバッファＡ又はバッファＢについて、そのクリアが済んでいるか否かを確認する。後述のように、クリアが済んだ場合には印刷処理部２００から通知がもたらされるので、当該通知が到着していない場合には到着するまで待つ。なお、前述のように、バッファ３００へのラスタデータの書き込みはバッファＡ及びバッファＢを交互に行う。
【００６６】
ステップＳａ５では、書き込み部１５０がラスタデータをバッファＡ又はバッファＢに実際に書き込む。
【００６７】
ステップＳａ６では、画像処理制御部１２０が、印刷処理部２００に対して、バッファＡ又はＢを特定して印刷要求通知を発する。
【００６８】
ステップＳａ７では、ラスタデータの書き込みが全て終了したか否かを調べ、終了していない場合にはステップＳａ３に戻って、ラスタデータの構成・送付を続行する。なお、２回目以降のステップＳａ３では、従前の当該ステップでの処理結果の少なくとも一部を利用しつつ構成を行うものとしてもよい。
【００６９】
図３は、ラスタデータ取得処理を示すフローチャートである。印刷処理部２００は、この処理によりラスタデータを画像処理部１００から取得するとともに、取得したラスタデータン基づいて印刷データを生成し、印刷装置ＰＴに印刷を実行させる。なお、印刷処理部２００は、図３に示す処理を繰り返し実行する。
【００７０】
ステップＳｂ０では、印刷処理部２００側から印刷要求通知が届いているか否かを調べる。前述のように、印刷処理制御部２２０は、バンド単位でのバッファＡ，Ｂへの書き込みが終わる度に、図２のステップＳａ６で印刷要求通知を発する。
【００７１】
ステップＳｂ１では、読み出し部２４０が、印刷要求通知が特定するバッファから、そこに書き込まれたラスタデータを読み出す。
【００７２】
ステップＳｂ２では、先のステップＳｂ２でラスタデータの読み出しを行ったバッファのクリアを行う。具体的には、前述のように印刷処理制御部２２０がリセット端子３０１にリセット信号を入力する。
【００７３】
ステップＳｂ３では、印刷処理制御部２２０が、バッファのクリアが済んだ旨の通知を画像処理プロセッサ１１０に行う。当該通知の取得により、画像処理プロセッサ１１０は、図２で示した通りラスタデータのバッファ３００への書き込みを開始する。
【００７４】
この後、ステップＳｂ４〜Ｓｂ７の印刷処理により、ステップＳｂ１で読み出したラスタデータに基づいた印刷データが生成されて、印刷装置ＰＴに送付される。具体的には、ステップＳｂ４で色変換機構２５０が色変換を行い、ステップＳｂ５でＨ／Ｔ処理機構２５２がＨ／Ｔ処理を行い、ステップＳｂ６でインタレース処理機構２５４がインタレース処理を行う。最後にステップＳｂ７で印刷制御部２６０が印刷データを印刷装置ＰＴに送付する。
【００７５】
印刷処理の終了後、他にも印刷要求通知が残されていることがステップＳｂ０でわかれば、さらにステップＳｂ１〜Ｓｂ７の処理が行われる。
【００７６】
図４は、ラスタデータの授受を行う処理を示すフローチャートである。図４では、画像１〜３について、画像処理部１００が図２の画像送付処理を行い、印刷処理部２００が図３の画像取得処理を行う場合について示した。画像１〜３は、それぞれＸＨＴＭＬで記述された文書を表す画像を、ラスタデータのバンド幅に応じて切り出したものである。
【００７７】
図４のタイミングＳｃ１では、画像処理プロセッサ１１０が、画像構成処理を画像１について行う。また、タイミングＳｃ１で、画像処理プロセッサ１１０は、バッファＡの確認を行う。確認に基づいて、画像処理プロセッサ１１０は、タイミングＳｃ１〜Ｓｃ２で画像１をバッファ３００に書き込む。書き込みの完了とともに、タイミングＳｃ２で、画像処理プロセッサ１１０はバッファＡの印刷要求通知を発する。
【００７８】
次に、タイミングＳｃ２で印刷要求通知を受けた印刷処理部２００側の処理に係る部分について説明する。タイミングＳｃ２〜３で、印刷処理プロセッサ２１０は、画像１に係るラスタデータの読み出しを行う。タイミングＳｃ３では、画像１に係るラスタデータの読み出しを完了するとともにバッファＡのクリアを行う。このとき、同時に、クリアを行ったことを画像処理プロセッサ１１０に通知する。タイミングＳｃ４で印刷処理プロセッサ２１０は画像１に係る印刷処理を実行する。
【００７９】
一方、タイミングＳｃ２で印刷要求通知を発した印刷処理部２００は、タイミングＳｄ１〜Ｓｄ２で画像２に係る処理を行い、バッファＢにラスタデータを書き込む。この処理は、タイミングＳｄ１〜Ｓｃ３の間、印刷処理部２００におけるバッファＡの読み出し等と並行して行われる。タイミングＳｄ２では、バッファＢを特定した印刷要求通知が行われて、印刷処理部２００は画像１の場合と同様にバッファＢの読み出し等を行う。印刷処理部２００は、タイミングＳｄ４画像２に係る印刷処理を実行する。
【００８０】
さらに、タイミングＳｅ１〜Ｓｅ４では、バッファＡを介したデータ授受を行いつつ、画像３に係る処理が行われる。画像処理部１００の画像３に係る処理は、印刷処理部２００の画像２に係る処理と重複しつつ行われる。
【００８１】
Ａ４．画像の記憶態様：
以下では、バッファＡ又はＢに記憶される画像が、画像処理プロセッサ１１０及び印刷処理プロセッサ２１０からアクセスされて変化する態様について説明する。
【００８２】
図５は、バッファに記憶された画像４００を示す説明図である。図５は、図２のステップＳａ５で画像処理プロセッサ１１０が書き込んだ画像の一例を示したものである。図５に示す画像４００は、値１を記憶した部分４０１（１６個の画素）と、値「０」を記憶した部分４０２（１９個の画素）とからなる。
【００８３】
図６は、リセット信号によりクリアされた画像４１０を示す説明図である。印刷処理プロセッサ２１０がリセット信号をリセット端子３０１に入力することにより、図５の画像４００に含んでいた値１の部分４０１に値０が書き込まれる。これにより図６に示す画像４１０は全ての値が０となっている。なお、図６では、リセット信号により消去された画素に対応する値を太字で示した。
【００８４】
ここで、クリアにより書き込まれる値は０でなくともよい。例えば、黒色や白色、透明色、あるいは画像の背景色に係る値であってもよい。また、クリアは、画像４００の全ての画素を対象に値０を書き込むものでもよいし、値０を記憶した部分４０２以外の部分のみを選択的に書き換えるものであってもよい。
【００８５】
図７は、画像処理プロセッサ１１０が書き込んだ画像４２０を示す説明図である。画像処理プロセッサ１１０は、図６の状態のバッファ３００において、画素４０１，４０２に値１を書き込むことで画像４２０を構成することができる。画素４０１，４０２以外の部分はリセット信号により予め値０に一括設定されているためである。
【００８６】
以上説明した印刷データ生成装置によれば、リセット端子３０１を利用したバッファ３００のクリアを利用して、ラスタデータのデータ授受を高速に行うことができる。画像４２０を書き込む画像処理プロセッサ１１０は、図５における値１の部分４０１への値０の書き込みを省略することができるためである。図５における値１の部分４０１は、リセット信号に基づいて値０に高速に一括設定される。
【００８７】
また、バッファ３００をダブルバッファとすることでも、データ授受の高速化が実現されている。すなわち、画像処理プロセッサ１１０のバッファ３００への書き込みと、印刷処理プロセッサ２１０のバッファ３００の読み出しとが重複して行われることで高速化が実現される。例えば、図４の場合において、タイミングＳｄ１〜Ｓｃ３及びＳｅ１〜Ｓｄ３でバッファ３００の読み書きが重複する。画像処理プロセッサ１１０は、印刷処理プロセッサ２１０の読み出しの完了を待つことなく、自らの書き込みを行うことができる。
【００８８】
なお、本実施例では、バッファＡ又はＢの全領域について一括して値０へのクリアを行うものとして説明を行ったが、かかる場合に限定されない。例えば、画像処理プロセッサ１１０が指定する所定の部分についてのみクリアを行うものとしてもよい。また、画像処理プロセッサ１１０が指定する複数の部分ごとに、異なる値でのクリアが行われるものとしてもよい。
【００８９】
Ｂ．第２実施例；パレットの利用：
本実施例では、印刷要求通知にパレットを含めて画像処理プロセッサ１１０が送付する点で第１実施例の場合と相違する。パレットは、バッファ３００に実際に記憶される値と、印刷処理部２００がその値を解釈すべき色とを対応付けて記憶したものである。
【００９０】
図８は、画像処理部１００が送付を行う画像４４０を示す説明図である。図４の画像４４０は大部分の画素が青色であり、画素４４２，４４３及び画素４４４，４４５のみが、各々白色と黒色である。
【００９１】
図９は、パレットのデータ構造を示す説明図である。図９には、青色、黒色、白色を各々値０，１，２に対応させるパレットについて示した。
【００９２】
本実施例における図２のステップＳａ６では、画像処理プロセッサ１１０は、ラスタデータの内容に応じたパレットを選択して印刷処理プロセッサ２１０に通知する。具体的には、データ授受を行う画像中で最も多く占める色を値０に対応させるパレットを通知する。図８の画像４４０では青色の画素が大部分を占めるために、図９に示すパレットでは青色が値０に対応させられている。
【００９３】
図１０は、画像４４０を送付するためにバッファ３００に書き込まれた画像４３０を示す説明図である。画像４３０は、図７の画像４２０と同様に、値０にクリアされた画像４１０（図６）に対して画像処理プロセッサ１１０が４つの画素４３１に書き込みを行ったものである。４つの画素４３１は、図７における２つの画素４２１，４２２に相当する。
【００９４】
画像４３０では、画像処理プロセッサ１１０が画素４３２，４３３及び画素４３４，４３５に各々値２，１を記憶させており、他の画素にはクリアにより書き込まれた値０がそのまま記憶されている。
【００９５】
印刷処理部２００は、バッファ３００が図１０の内容である場合に、通知されたパレット（図９）を参照することで、図８の画像４４０を把握する。印刷処理部２００は、バッファ３００に記憶された値０，１，２を、各々青色、黒色、白色と解釈するためである。印刷処理部２００は、画素４３２，４３３及び画素４３４，４３５を各々白色、黒色と解釈し、画像処理プロセッサ１１０が書き込みを行った部分４３１以外の画素は青色と解釈する。
【００９６】
以上説明した印刷データ生成装置によれば、ラスタデータの内容に関わらずそのデータ授受の高速化を実現することができる。書き込み部１５０は、データ授受を行う画像中で最も多く占める色に係る画素の書き込みを省略できるためである。
【００９７】
なお、本実施例でパレットは、バッファに記憶される全ての値について、解釈すべき色を記録するものとしたが、かかる場合に限定されることはない。値０を含む２つの色についてのみ記録していてもよいし、値０についてのみ記憶していていてもよい。これらの場合、パレットに記録されていない値については、印刷処理部２００は、その値を、その値に対応する所定のデフォルトの色に解釈するものとしてもよい。
【００９８】
Ｃ．第３実施例；クリア値の指定：
本実施例では、所定の場合にはバッファが値１にクリアされる点で、常に値０にクリアしていた従前の実施例と相違する。
【００９９】
図１１は、画像処理部１００が送付を行う画像４６０を示す説明図である。図１１の画像４６０の大部分の値は１であり、画素４６１，４６２のみが値０である。
【０１００】
本実施例で、画像処理部１００は、図２のステップＳａ５におけるデータの書き込みに先立ってクリアの値を通知する。ブッファ３００は、通知された値でクリアされる。画像処理部１００は、所望の値でクリアされたバッファに対してデータの書き込みを行う。
【０１０１】
クリアの値の通知は、図２のステップＳａ３において、画像構成処理で構成されたラスタデータの内容に応じて行われる。画像処理部１００は、データ授受を行うデータ中で最も多く占める値をリセットの値に指定する。図１１の画像４６０に係るデータ授受では値１が指定され、図７の画像４２０のデータ授受においては値０が指定される。それぞれ、画像中の値の大部分を１及び０が占めているためである。
【０１０２】
図１１には、値１にクリアされた画像４５０を併せて示した。画像４５０は、第１実施例における画像４１０（図６）に相当する。図１１の画像４５０は全ての画素が値１にクリアされている。画像処理部１００が値１でのクリアを指定したためである。なお、画像４５０では、図５の画像４００における状態からリセット信号により変更された画素の値を太字で示した。
【０１０３】
画像処理部は、図１１の画像４５０の状態のバッファ３００において、画素４５１，４５２に値０を書き込むだけで、送付を行うべき画像４６０をバッファ３００内に構成することができる。画素４５１，４５２以外の部分はリセット信号により予め値１に一括設定されているためである。
【０１０４】
以上説明した印刷データ生成装置によれば、ラスタデータの内容に関わらずそのデータ授受の高速化を実現することができる。書き込み部１５０は、データ授受を行うデータ中で最も多く占める値の書き込みを省略できるためである。
【０１０５】
Ｄ．その他の実施例：
ここで、バッファ３００は、印刷処理プロセッサ２１０と集積回路上で一体的に構成してもよい。また、本実施例では、印刷処理部２００がバッファ３００を有するものとして説明を行ったが、係る場合に限定されない。画像処理部１００がバッファ３００を有するものとしてもよいし、印刷処理部２００及び画像処理部１００の両者から独立して設けるものとしてもよいし、３者が一体的に構成されていてもよい。
【０１０６】
さらに、上述の説明では、バッファ３００はリセット端子３０１を有するものとしたが、かかる場合に限定されることはない。印刷処理部２００が画像処理部１００よりも高速にバッファ３００のクリアを行う種々の場合を含む。例えば、印刷処理制御部２
２０は、リセット信号を利用することなく各アドレスに順次値を書き込むことでクリアを行ってもよい。
【０１０７】
以上、実施例に基づき本発明にかかるを説明してきたが、上述した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得る。
【図面の簡単な説明】
【図１】印刷データ生成装置の構成を示す説明図である。
【図２】ラスタデータ送付処理を示すフローチャートである。
【図３】ラスタデータ取得処理を示すフローチャートである。
【図４】ラスタデータの授受を行う処理を示すフローチャートである。
【図５】バッファ３００に記憶された画像４００を示す説明図である。
【図６】リセット信号によりクリアされた画像４１０を示す説明図である。
【図７】画像処理プロセッサ１１０が書き込んだ画像４２０を示す説明図である。
【図８】画像処理部１００が送付を行う画像４４０を示す説明図である。
【図９】パレットのデータ構造を示す説明図である。
【図１０】画像４４０を送付するためにバッファ３００に書き込まれた画像４３０を示す説明図である。
【図１１】画像処理部１００が送付を行う画像４６０を示す説明図である。
【符号の説明】
ＰＣ…コンピュータ
ＰＴ…印刷装置
１００…画像処理部
１１０…画像処理プロセッサ
１２０…画像処理制御部
１３０…ファイル入力部
１４０…ＨＴＭＬ解釈部
１４２…画像構成部
１５０…書き込み部
２００…印刷処理部
２１０…印刷処理プロセッサ
２１５…変換ユニット
２２０…印刷処理制御部
２５０…色変換機構
２５２…Ｈ／Ｔ機構
２５４…インタレース処理機構
２４０…読み出し部
２６０…印刷制御部
３００…バッファ
３０１…リセット端子
４００…記憶された画像
４０１…「１」が記憶された部分
４０２…「０」が記憶された部分
４１０…リセット信号によりクリアされた画像
４２０…書き込まれた画像
４２１，４２２…書き込まれた画素
４４０…画像処理部１００が送付を行う画像
４４２，４４３…白色の画素
４４４，４４５…黒色の画素
４３０…バッファ３００に書き込まれた画像
４３１…画像処理プロセッサ１１０が書き込みを行った部分
４３２，４３３…値２を記憶した画素
４３４，４３５…値１を記憶した画素
４６０…画像処理部１００が送付を行う画像
４６１，４６２…値０の画素
４５０…値１にクリアされた画素
４５１，４５２…書き込みが必要な画素
【図１】
2004133591.tif 000003
【図２】
2004133591.tif 000004
【図３】
2004133591.tif 000005
【図４】
2004133591.tif 000006
【図５】
2004133591.tif 000007
【図６】
2004133591.tif 000008
【図７】
2004133591.tif 000009
【図８】
2004133591.tif 000010
【図９】
2004133591.tif 000011
【図１０】
2004133591.tif 000012
【図１１】
2004133591.tif 000013