(57)【特許請求の範囲】
【請求項１】
パーソナルコンピュータやワークステーション上でアプリケーションからの印刷要求に応じてプリンタを制御するプリンタ制御装置において、
印刷要求を出すアプリケーションと、
オペレーティングシステムと、
印刷データを前記プリンタと送受信するための入出力ポートと、
イメージデータを分割して描画する指定がなされた場合、受信した印刷コマンドがイメージかどうかを識別するグラフィック処理モジュールと、
イメージデータを行もしくは列単位で比較し、重なりがあるかどうかを判断するイメージ識別モジュールと、
重なり行数を考慮してイメージデータの結合を行い分割する前のイメージデータに再構築するイメージ結合モジュールとを備え、
描画先であるメディアのサイズが元のイメージのサイズと違う変倍描画を行う場合、前記メディアの重なり部分の行数もしくは列数と、変倍率に基づいて前記アプリケーションから受け取った描画元であるイメージデータの重なりの行数もしくは列数とを取得する機能を有することを特徴とするプリンタ制御装置。
【請求項２】
請求項１のプリンタ制御装置において、比較する描画元イメージの重なり行数もしくは列数を指定する機能を有することを特徴とするプリンタ制御装置。
【請求項３】
請求項１のプリンタ制御装置において、描画先であるメディアのサイズが元のイメージのサイズと同じ等倍描画を行う場合、前記メディアにイメージを描画するときの座標から描画元のイメージの重なりの行数もしくは列数を取得する機能を有することを特徴とするプリンタ制御装置。
【請求項４】
請求項１のプリンタ制御装置において、連続するイメージかどうかを描画元イメージデータの持つパレット情報から判断する機能を有することを特徴とするプリンタ制御装置。
【請求項５】
請求項１のプリンタ制御装置において、結合する描画元イメージの上限サイズが指定されることを特徴とするプリンタ制御装置。
【請求項６】
請求項５のプリンタ制御装置において、上限サイズが残メモリ量から算出されることを特徴とするプリンタ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パソコン、ワークステーション上で使用されるアプリケーションソフトウエァと印刷装置を仲介するプリンタドライバに関し、とくにその出力制御技術に関するものである。
【０００２】
【従来の技術】
特願平１１−２９１５６３号公報「画像処理装置およびその方法」には、描画命令に従い、多値画像データおよびオブジェクトの種類に対応するビットマップデータを展開する展開手段と、前記オブジェクトの種類ごとに、そのビットマップデータをスキャンし、ビットマップデータに対応する多値画像データを抽出する抽出手段と、抽出された多値画像データに、その多値画像データのオブジェクトの種類に応じた色処理を施す色処理手段と、色処理が施された前記オブジェクトの種類ごとの画像データを論理和する演算手段とを有する画像処理装置が提案されている。
【０００３】
【発明が解決しようとする課題】
イメージデータの印刷を行うと、アプリケーションやＯＳがプリンタに対してオリジナルのイメージデータを印刷要求する際に、メモリの制約等からイメージデータを複数に分割することがある。プリンタドライバ内でイメージに対して色補正処理などを行っている場合、この補正処理がイメージデータ単体の内容に依存したものであると、イメージデータ毎に補正の内容が変わることがある。アプリケーションやＯＳがひとつのイメージデータを複数に分割してしまうと、プリンタドライバ側では複数のイメージとしてしか認識できないので、それぞれのイメージに対して補正を行ってしまい、結果、完成されたイメージは部分部分で色味の違うイメージになることがある。
【０００４】
また、イメージを分割してプリンタドライバに印刷要求を出す場合、ドライバがイメージデータ毎にイメージの内容からパラメータを変更し、色補正や圧縮率を変更しているとき、分割された第１のイメージデータと第２のイメージデータの補正パラメータや圧縮率が変わってしまい、プリンタで出力の結果、部分部分で色の違うイメージになってしまう場合がある。また、ＯＳがイメージを分割する場合に、隙間が開かないようにイメージ毎に重なるように分割処理を行う場合がある。
【０００５】
本発明は、イメージデータが分割されていることをプリンタドライバ内で識別し、元のイメージに再構築することで補正処理に対する不具合をなくすことを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、パーソナルコンピュータやワークステーション上でアプリケーションからの印刷要求に応じてプリンタを制御するプリンタ制御装置において、印刷要求を出すアプリケーションと、オペレーティングシステムと、印刷データを前記プリンタと送受信するための入出力ポートと、イメージデータを分割して描画する指定がなされた場合、受信した印刷コマンドがイメージかどうかを識別するグラフィック処理モジュールと、イメージデータを行もしくは列単位で比較し、重なりがあるかどうかを判断するイメージ識別モジュールと、重なり行数を考慮してイメージデータの結合を行い分割する前のイメージデータに再構築するイメージ結合モジュールとを備え、描画先であるメディアのサイズが元のイメージのサイズと違う変倍描画を行う場合、前記メディアの重なり部分の行数もしくは列数と、変倍率に基づいて前記アプリケーションから受け取った描画元であるイメージデータの重なりの行数もしくは列数とを取得する機能を有することを最も主要な特徴とする。
【０００７】
請求項２記載の発明は、請求項１のプリンタ制御装置において、比較する描画元イメージの重なり行数もしくは列数を指定する機能を有することを主要な特徴とする。
【０００８】
請求項３記載の発明は、請求項１のプリンタ制御装置において、描画先であるメディアのサイズが元のイメージのサイズと同じ等倍描画を行う場合、前記メディアにイメージを描画するときの座標から描画元のイメージの重なりの行数もしくは列数を取得する機能を有することを主要な特徴とする。
【０００９】
請求項４記載の発明は、請求項１のプリンタ制御装置において、連続するイメージかどうかを描画元イメージデータの持つパレット情報から判断する機能を有することを主要な特徴とする。
【００１０】
請求項５記載の発明は、請求項１のプリンタ制御装置において、結合する描画元イメージの上限サイズが指定されることを主要な特徴とする。
【００１１】
請求項６記載の発明は、請求項５のプリンタ制御装置において、上限サイズが残メモリ量から算出されることを主要な特徴とする。
【００１３】
【発明の実施の形態】
以下、図面により本発明の実施の形態を詳細に説明する。図1は本発明の実施の形態に係るプリンタドライバ（プリンタドライバモジュール）の機能ブロック図である。パソコンとプリンタからなる印刷システムにおいて、パソコンは、印刷要求を出すアプリケーション１と、ＯＳ２と、プリンタドライバ３と、印刷データをプリンタと送受信するためのセントロやＵＳＢやネットワークなどの入出力ポート４とを備えている。
【００１４】
プリンタドライバ３は、プリンタに送信するデータを作成するグラフィック処理モジュール１１、ユーザーインターフェースを表示させ、設定された印刷条件を保存し、グラフィック処理モジュール１１に引き渡す役目をするＵＩ処理モジュール１２、グラフィック処理モジュール１１が受け取った印刷データを結合処理するイメージ結合モジュール１３、イメージ結合モジュール１３が受け取ったイメージデータを結合できるかどうか判断するイメージ識別モジュール１４を備えている。
【００１５】
図２は本発明の第１の処理例を示すフロー図である。ユーザーによりアプリケーション１からＯＳ２に対して印刷要求が出ると、ＯＳ２はＵＩ処理モジュール１２から印刷条件を取得し、その印刷条件でグラフィック処理モジュール１１に対して印刷コマンドを発行する。ＯＳ２から印刷コマンドを受け取ると、グラフィック処理モジュール１１はそのコマンドがイメージかどうか識別し、イメージの場合はイメージ結合モジュール１３を呼び出す。
【００１６】
イメージ結合モジュール１３は、イメージ識別モジュール１４を使用して前に受け取ったイメージと上端と下端、または左端と右端のビット構成が、ＵＩ処理モジュール１２でユーザーが指定した行（列）数まで一致するかどうか調査し、イメージの重なり行（列）数を算出し、イメージ識別モジュール１４はイメージ結合モジュール１３に重なり行（列）数を返す。
【００１７】
イメージ結合モジュール１３は重なり行数を考慮しイメージデータの結合処理を行いメモリ内に保存する。その後、イメージ以外の描画要求があった時や、結合できないイメージが指定された場合に入出力ポート４から保存してあるイメージデータをプリンタに対して送信する（Ｓ１〜Ｓ１５）。
【００１８】
図３は本発明の第２の処理例を示すフロー図である。ユーザーによりアプリケーション１からＯＳ２に対して印刷要求が出ると、ＯＳ２はＵＩ処理モジュール１２から印刷条件を取得し、その印刷条件でグラフィック処理モジュール１１に対して印刷コマンドを発行する。ＯＳ２から印刷コマンドを受け取ると、グラフィック処理モジュール１１はそのコマンドがイメージかどうか識別し、イメージの場合はイメージ結合モジュール１３を呼び出す。
【００１９】
イメージ結合モジュール１３は、イメージ識別モジュール１４を使用して、描画先の座標とイメージの変倍率を調査し、前に受け取ったイメージと描画先の上端と下端、または左端と右端が何行（列）重なるか調査し、その重なり行（列）数から、描画元イメージの重なり行（列）数を算出し、イメージ識別モジュール１４はイメージ結合モジュール１３に重なり行（列）数を返す。
【００２０】
イメージ結合モジュール１３は重なり行数を考慮しイメージデータの結合処理を行いメモリ内に保存する。その後、イメージ以外の描画要求があった時や、結合できないイメージが指定された場合に入出力ポート４から保存してあるイメージデータをプリンタに対して送信する（Ｓ１００〜Ｓ１４００）。
【００２１】
本発明では、図２のフロー図が示すように、イメージ識別モジュール１４を使用して、結合する２つのイメージを調査し、双方のパレット情報が違う場合は連続しないイメージと判断し、結合処理を行わない。
【００２２】
また本発明では、図３のフロー図が示すように、結合後のイメージのサイズがＵＩ処理モジュール１２でユーザーが指定したサイズ、または残メモリ量から算出したサイズ以上になった場合は、イメージ識別モジュール１４は結合が不可能であることをイメージ結合モジュール１３に通知する。イメージ結合モジュール１３は入出力ポート４から保存してあるイメージデータをプリンタに対して送信する。
【００２３】
図４はイメージデータを分割した後に再構築する場合の概念図である。イメージデータをＯＳ２により分割し、重なり部分を削除して、分割したイメージデータを結合し、プリンタに出力する様子を示している。
【００２４】
【発明の効果】
以上説明したように、請求項１記載の発明によれば、簡単な方法でプリンタドライバ内で重なりのあるイメージを結合し、分割されている場合でも分割前のイメージを再生することで、イメージの部分によって補正が変わってしまうことがなくなる。
【００２５】
請求項２記載の発明によれば、比較する行（列）数を予め指定することで、イメージを結合できるかどうかの判断に掛かる時間を制限でき、印刷時間が長くなってしまうのを抑えることができる。
【００２６】
請求項１、３記載の発明によれば、描画先の座標や変倍率から、結合行（列）数を判断することで確実にイメージを結合することができる。
【００２７】
請求項４記載の発明によれば、予めパレット構成で、イメージを結合するかどうか判断することで、判断を早めることができる。
【００２８】
請求項５記載の発明によれば、イメージ結合後の上限サイズを予め決めておくことで、イメージ結合によるメモリの消費を抑えることができ、印刷パフォーマンスの低下を防ぐことができる。
【００２９】
請求項６記載の発明によれば、イメージ結合後の上限サイズを残メモリ量から算出することで、効率的にイメージ結合によるメモリの消費を抑えることができ、印刷パフォーマンスの低下を防ぐことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るプリンタドライバの機能ブロック図である。
【図２】本発明の第１の処理例を示すフロー図である。
【図３】本発明の第２の処理例を示すフロー図である。
【図４】イメージデータを分割した後に再構築する場合の概念図である。
【符号の説明】
１  アプリケーション
３  プリンタドライバ
１１  グラフィック処理モジュール
１３  イメージ結合モジュール
１４  イメージ識別モジュール
【図１】
0003983087.tif 000002
【図２】
0003983087.tif 000003
【図３】
0003983087.tif 000004
【図４】
0003983087.tif 000005