(57)【要約】【課題】電子機器から送信された印刷ジョブによる印刷においても、画像データに対して画像補正を実行して、画像品質の高い印刷を実行可能とする。【解決手段】  印刷システムは、印刷ジョブに含まれる画像データに対して画像補正を実行可能なプリンタと、印刷ジョブを生成するプリンタドライバを有し、プリンタに印刷ジョブを送信するホスト装置と、を備える。プリンタは、印刷ジョブに基づいて印刷データを生成するプリントコントローラと、印刷データに基づいて印刷を実行するプリントエンジンと、を備える。プリンタドライバは、ユーザによって設定される印刷設定条件に応じて、画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換える。プリントコントローラは、画像データがＲＧＢフォーマットならば画像補正を行なわず、画像データがＪＰＥＧフォーマットならば画像補正を行なう。【選択図】図１
2009232171.tif 000002
【特許請求の範囲】
【請求項１】
ＪＰＥＧフォーマットの画像データに対して画像補正を実行可能なプリンタに、印刷ジョブを送信するホスト装置であって、
前記印刷ジョブを生成するプリンタドライバを備え、
前記プリンタドライバは、ユーザによって設定される印刷設定条件に応じて、前記画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換える
ことを特徴とするホスト装置。
【請求項２】
請求項１記載のホスト装置であって、
前記プリンタドライバは、前記印刷設定条件が少なくとも前記画像補正を要求する設定の場合には、前記画像データのフォーマットをＪＰＥＧフォーマットとする
ことを特徴とするホスト装置。
【請求項３】
請求項２記載のホスト装置であって、
前記プリンタドライバは、前記プリンタにおいて要求する前記画像データの解像度よりも高い解像度の画像データを前記ＪＰＥＧフォーマットで前記プリンタに送信する
ことを特徴とするホスト装置。
【請求項４】
請求項２または請求項３に記載のホスト装置であって、
前記プリンタドライバは、前記プリンタにおいて前記画像データを格納するために用意されるバッファに格納可能なデータサイズとなるように圧縮した前記ＪＰＥＧフォーマットの画像データを、前記プリンタに送信する
ことを特徴とするホスト装置。
【請求項５】
印刷ジョブに含まれる画像データに対して画像補正を実行可能なプリンタに、前記印刷ジョブを送信するためのホスト装置に備えられ、前記印刷ジョブを生成するプリンタドライバであって、
ユーザによって設定される印刷設定条件に応じて、前記画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換える
ことを特徴とするプリンタドライバ。
【請求項６】
印刷ジョブに含まれる画像データに対して画像補正を実行可能なプリンタに、前記印刷ジョブを送信するために、前記印刷ジョブを生成する印刷ジョブ生成方法であって、
ユーザによって設定される印刷設定条件に応じて、前記画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換える
ことを特徴とする印刷ジョブ生成方法。
【請求項７】
印刷システムであって、
印刷ジョブに含まれる画像データに対して画像補正を実行可能なプリンタと、
前記印刷ジョブを生成するプリンタドライバを有し、前記プリンタに前記印刷ジョブを送信するホスト装置と、を備え、
前記プリンタは、
前記印刷ジョブに基づいて印刷データを生成するプリントコントローラと、
前記印刷データに基づいて印刷を実行するプリントエンジンと、を備え、
前記プリンタドライバは、ユーザによって設定される印刷設定条件に応じて、前記画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換え、
前記プリントコントローラは、前記画像データがＲＧＢフォーマットならば前記画像補正を行なわず、前記画像データがＪＰＥＧフォーマットならば前記画像補正を行なう
ことを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに対して画像補正を行なって印刷を実行する技術に関する。
【背景技術】
【０００２】
従来、ゲーム機器や計測器等の特定用途に特化された電子機器（いわゆる「Ｎｏｎ−ＰＣ機器」と呼ばれる）は、ＣＰＵの性能やメモリの容量に制限があり、パーソナルコンピュータ（「ＰＣ」と呼ばれる）に組み込まれるプリンタドライバを組み込むことが難しい。このため、Ｎｏｎ−ＰＣ機器では機能が限定されたプリンタドライバを組み込むことにより、ＣＰＵの性能やメモリの容量に制限があっても、印刷の実行が可能となっている。例えば、本願の出願人は、このようなＮｏｎ−ＰＣ機器向けに、「ＥＳＣ／Ｐ−Ｒ」と呼ばれる印刷制御言語を用いたプリンタドライバを提供している。
【０００３】
【特許文献１】特開２００２−２５４７５８号公報
【特許文献２】特開２００２−２６４４４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のプリンタでは、上記印刷制御言語としての「ＥＳＣ／Ｐ−Ｒ」を用いたプリンタドライバのように、機能が限定されたプリンタドライバが組み込まれたＮｏｎ−ＰＣ機器から送信された印刷ジョブによる印刷では、印刷ジョブに含まれる画像データに対して、画像補正を行なって印刷を実行することはできなかった。このため、従来のＮｏｎ−ＰＣ機器から送信された印刷ジョブによる印刷では、印刷結果としての画像品質の点で不十分であった。
【０００５】
なお、この問題は、上記印刷制御言語としての「ＥＳＣ／Ｐ−Ｒ」を用いたプリンタドライバが組み込まれたＮｏｎ−ＰＣ機器だけでなく、他の印刷制御言語を用いたプリンタドライバが組み込まれた電子機器においても共通する問題である。
【０００６】
本発明の目的は、上記した従来技術の問題点を解決し、電子機器から送信された印刷ジョブによる印刷においても、画像データに対して画像補正を実行して、画像品質の高い印刷を実行可能とする技術を提供することにある。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００８】
［適用例１］
ＪＰＥＧフォーマットの画像データに対して画像補正を実行可能なプリンタに、印刷ジョブを送信するホスト装置であって、
前記印刷ジョブを生成するプリンタドライバを備え、
前記プリンタドライバは、ユーザによって設定される印刷設定条件に応じて、前記画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換える
ことを特徴とするホスト装置。
適用例１のホスト装置によれば、ＪＰＥＧフォーマットの画像データに対して画像補正を実行可能なプリンタに、ユーザによって設定される印刷設定条件に応じて、画像データのフォーマットをＲＧＢフォーマットとＪＰＥＧフォーマットのいずれか一方に切り換えることができるので、ＪＰＥＧフォーマットの画像データを含む印刷ジョブを送信することにより、画像品質の高い印刷を実行することが可能である。
【０００９】
［適用例２］
適用例１記載のホスト装置であって、
前記プリンタドライバは、前記印刷設定条件が少なくとも前記画像補正を要求する設定の場合には、前記画像データのフォーマットをＪＰＥＧフォーマットとする
ことを特徴とするホスト装置。
このホスト装置によれば、印刷設定条件が少なくとも画像補正を要求する設定の場合に、画像データのフォーマットをＪＰＥＧフォーマットとすることができるので、画像品質の高い印刷を実行することが可能である。
【００１０】
［適用例３］
適用例２記載のホスト装置であって、
前記プリンタドライバは、前記プリンタにおいて要求する前記画像データの解像度よりも高い解像度の画像データを前記ＪＰＥＧフォーマットで前記プリンタに送信する
ことを特徴とするホスト装置。
このホスト装置によれば、プリンタにおいて要求する画像データの解像度よりも高い解像度の画像データをＪＰＥＧフォーマットでプリンタに送信するので、非圧縮の画像データをＪＰＥＧフォーマットに従って圧縮することにより発生する画質の劣化を抑制することができる。
【００１１】
［適用例４］
適用例２または適用例３に記載のホスト装置であって、
前記プリンタドライバは、前記プリンタにおいて前記画像データを格納するために用意されるバッファに格納可能なデータサイズとなるように圧縮した前記ＪＰＥＧフォーマットの画像データを、前記プリンタに送信する
ことを特徴とするホスト装置。
【００１２】
このホスト装置によれば、プリンタにおいて前記画像データを格納するために用意されるバッファに格納可能なデータサイズとなるように圧縮したＪＰＥＧフォーマットの画像データを、プリンタに送信することができるので、ホスト装置から送信する画像データが、プリンタのバッファのデータサイズよりも大きいために、画質補正を行なった印刷の実行が不可となるのを防止することができる。
【００１３】
なお、本発明は、上記したホスト装置の態様に限ることなく、プリンタドライバや印刷システム、印刷ジョブ生成方法、印刷方法などの種々の態様で実現することも可能である。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１実施例：
Ｂ．第２実施例：
Ｃ．変形例：
【００１５】
Ａ．第１実施例：
図１は、第１実施例としての印刷システムの概略構成を示す説明図である。この印刷システムは、ホスト装置１０とプリンタ２０とが、ＵＳＢケーブル３０で接続された構成を有している。ホスト装置１０は、いわゆるＮｏｎ−ＰＣ機器である。ここで、Ｎｏｎ−ＰＣ機器とは、ＰＣのような汎用性のある電子機器ではなく、ゲーム機器や計測器等の特定用途に特化された電子機器を意味する。
【００１６】
ホスト装置１０は、種々の画面を表示する表示部１１や、ユーザの入力手段としての操作部１２を備える。操作部１２は、表示部１１上に設けられたタッチパネルや種々の機能が割り付けられた操作ボタンにより構成される。また、ホスト装置１０は、プリンタ２０において印刷を実行させるための機能ブロックとして、印刷を指示するアプリケーション１５と、印刷ジョブを生成するプリンタドライバ１６と、ＵＳＢインタフェース（ＵＳＢＩ／Ｆ）１７と、を備える。
【００１７】
プリンタ２０も、種々の画面を表示する表示部２１や、ユーザの入力手段としての操作部２２を備える。操作部２２は、表示部２１上に設けられたタッチパネルや種々の機能が割り付けられた操作ボタンにより構成される。また、プリンタ２０は、印刷を実行するための機能ブロックとして、ＵＳＢインタフェース（ＵＳＢＩ／Ｆ）１００と、プリントコントローラ２００と、プリントエンジン３００と、を備える。
【００１８】
ホスト装置１０のＵＳＢインタフェース１７とプリンタ２０のＵＳＢインタフェース１００とは、ホスト装置１０のコネクタ１８と、ＵＳＢケーブル３０と、プリンタ２０のコネクタ２３とを介して、互いに接続される。ＵＳＢインタフェース１７とプリンタ２０のＵＳＢインタフェース１００との間では、ＵＳＢ（Universal Serial Bus）の規格に従った通信（以下、「ＵＳＢ通信」と呼ぶ）が実行される。
【００１９】
ホスト装置１０において、プリンタドライバ１６は、アプリケーション１５からの指示を受けると、印刷対象となる画像データを印刷するための印刷ジョブを所定の印刷制御コード体系に従って生成し、生成した印刷ジョブを、ＵＳＢインタフェース１７を介してプリンタ２０へ送信する。
【００２０】
プリンタ２０において、プリントコントローラ２００は、ＵＳＢインタフェース１００を介してホスト装置１０から印刷ジョブを受け取ると、これに基づいて印刷データを生成し、プリントエンジン３００へ出力する。プリントエンジン３００は、受け取った印刷データに基づいて実際に印刷を実行する。
【００２１】
プリントコントローラ２００は印刷ジョブを受け取ると、まず、デフォルトの印刷パスであるＬＰ印刷パス２１０を起動する。ＬＰ印刷パス２１０は、ＬＰ印刷ホストインタフェース２１１とＬＰ印刷コマンド解析部２１３とを備える。ＬＰ印刷ホストインタフェース２１１は、受け取った印刷ジョブをＬＰ印刷コマンド解析部２１３に受け渡す。ＬＰ印刷コマンド解析部２１３は、印刷ジョブ中の印刷コマンドを解析する。解析の結果、ＲＧＢフォーマットの画像データを印刷するＲＧＢ印刷制御モードであると判断した場合には、ＲＧＢ印刷パス２２０を起動し、印刷ジョブをＲＧＢ印刷パス２２０へ出力する。一方、ＪＰＥＧフォーマットの画像データを印刷するＪＰＥＧ印刷制御モードであると判断した場合には、ＪＰＥＧ印刷パス２３０を起動し、印刷ジョブをＪＰＥＧ印刷パス２３０へ出力する。なお、ＲＧＢ印刷制御モードとＪＰＥＧ印刷制御モードの判断については、さらに後述する。
【００２２】
ＲＧＢ印刷パス２２０は、印刷初期化部２２１と、色調整／ハーフトーン処理部２２３と、データ配列部２２５と、プリントデータ出力部２２７とを備える。印刷初期化部２２１は、ＬＰ印刷パス２１０から印刷ジョブとして送られてくる印刷コマンドの順に解析処理を行ない、印刷サイズ，用紙種類，印刷品質等の印刷条件の設定値を定める。なお、この印刷条件の設定値を定める手法については、さらに後述する。また、印刷初期化部２２１は、印刷ジョブに含まれる画像データであるＲＧＢフォーマットのラスタデータ（以下、単に「ＲＧＢデータ」と呼ぶ）を、順に色調整／ハーフトーン処理部２２３に受け渡す。色調整／ハーフトーン処理部２２３は、ＲＧＢ各色のデータの階調をプリンタの色再現特性に応じて調整する。また、色調整／ハーフトーン処理部２２３は、ＲＧＢデータをＣＭＹＫの４種類のインクに対応するインク量データ（以下、「ＣＭＹＫデータ」と呼ぶ）に変換するとともに、各インク毎にハーフトーン処理を実行することによって、印刷画素ごとにドットの形成状態を示すドット形成データを生成する。データ配列部２２５は、これらのドット形成データを配列し、印刷データを生成する。プリントデータ出力部２２７は、生成した印刷データをプリントエンジン３００へ出力する。
【００２３】
ＪＰＥＧ印刷パス２３０は、印刷初期化部２３１と、画像補正部２４１と、色調整／ハーフトーン処理部２４３と、データ配列部２４５と、プリントデータ出力部２４７とを備える。印刷初期化部２３１は、ＬＰ印刷パス２１０から印刷ジョブとして送られてくる印刷コマンドの順に解析処理を行ない、印刷サイズ，用紙種類，印刷品質等の印刷条件の設定値を定める。なお、この印刷条件の設定値を定める手法いついては、さらに後述する。また、印刷初期化部２３１は、印刷ジョブに含まれる画像データであるＪＰＥＧフォーマットの圧縮データ（以下、単に「ＪＰＥＧデータ」と呼ぶ）を、画像補正部２４１に受け渡す。画像補正部２４１は、受け取ったＪＰＥＧデータを展開処理するとともに、画像補正処理を行なって、色調整／ハーフトーン処理部２４３に受け渡す。画像補正処理としては、リサイズ処理やＡＰＦ処理が実行される。リサイズ処理としては、印刷サイズに合わせて画像データのサイズを変換する処理が実行される。ＡＰＦ処理としては、画像のシーンに応じた色変換処理、ノイズ除去、トーンカーブ補正、彩度補正、シャープネス処理等の種々の処理が適宜実行される。色調整／ハーフトーン処理部２４３は、ＲＧＢ各色のデータの階調をプリンタの色再現特性に応じて調整する。また、色調整／ハーフトーン処理部２２３は、ＲＧＢデータをＣＭＹＫデータに変換するとともに、ＣＭＹＫデータに基づいて印刷画素ごとにドットの形成状態を示すドット形成データを生成する。データ配列部２２５は、これらのドット形成データを配列し、印刷データを生成する。プリントデータ出力部２２７は、生成した印刷データをプリントエンジン３００へ出力する。
【００２４】
図２は、ＲＧＢ印刷制御モードの印刷ジョブで用いられる印刷制御コードおよびＪＰＥＧ印刷制御モードの印刷ジョブで用いられる印刷制御コードについて示す説明図である。ＲＧＢフォーマットの画像データを印刷する印刷ジョブ（以下、「ＲＧＢ印刷ジョブ」と呼ぶ）の場合には、図２（Ａ）に示すように、ＲＧＢ印刷用の印刷制御コードの体系に応じた印刷制御コマンドが用いられる。一方、ＪＰＥＧフォーマットの画像データを印刷する印刷ジョブ（以下、「ＪＰＥＧ印刷ジョブ」と呼ぶ）の場合には、図２（Ｂ）に示すように、ＪＰＥＧ印刷用の印刷制御コードの体系に応じた印刷制御コマンドが用いられる。ただし、ＪＰＥＧ印刷用の印刷制御コードの体系は、基本的には、ＲＧＢ印刷用の印刷制御コードの体系と基本的には、同じである。
【００２５】
図２（Ａ）に示すように、ＲＧＢ印刷ジョブの場合には、印刷制御コマンドとして、ＲＧＢ印刷制御モード移行コマンドＣＭｒｇｂ（破線枠で示す）が含まれる。一方、図２（Ｂ）に示すように、ＪＰＥＧ印刷ジョブの場合には、印刷制御コマンドとして、ＲＧＢ印刷制御モード移行コマンドＣｍｒｇｂに換えて、ＪＰＥＧ印刷制御モード移行コマンドＣＭｊｐｇ（図中破線枠で示す）が含まれる。したがって、上記したＬＰ印刷コマンド解析部２１３は、印刷制御コマンドとして、ＲＧＢ印刷制御モード移行コマンドＣＭｒｇｂを検出することにより、ＲＧＢ印刷制御モードであると判断し、ＲＧＢ印刷パス２２０を起動することができる。また、ＬＰ印刷コマンド解析部２１３は、印刷制御コマンドとして、ＪＰＥＧ印刷制御モード移行コマンドＣＭｊｐｇを検出することにより、ＪＰＥＦ印刷制御モードであると判断し、ＪＰＥＧ印刷パス２３０を起動することができる。
【００２６】
また、図２（Ｂ）に示すように、ＪＰＥＧ印刷の場合には、印刷制御コマンドとして、ＡＰＦ処理等の画像補正のために必要なパラメータ設定値を含むＡＰＦ設定コマンドＣａｐｆが含まれる。したがって、上記画像補正部２４１は、ＡＰＦ設定コマンドＣａｐｆに含まれる種々のパラメータ設定値に基づいて、画像補正処理を実行することができる。
【００２７】
図３は、プリンタドライバが、プリンタに送信する印刷ジョブを、ＲＧＢ印刷のための印刷ジョブとする場合およびＪＰＥＧ印刷のための印刷ジョブとする場合について示す説明図である。図３（Ａ）に示すように、プリンタドライバ１６は、図示しないユーザインタフェースを介して表示部１１に印刷設定画面を表示する。印刷設定画面を介してユーザが指定した用紙種類と印刷品質と原稿種別（印刷対象画像の種別）とに基づいて、図３（Ｂ）に示すように、画像データのフォーマットを決定する。なお、プリンタドライバ１６は、ホスト装置１０とプリンタ２０とが接続された際に、プリンタ２０の機種情報を、取得要求コマンドを用いて要求することにより取得する。取得した機種情報は印刷設定項目に反映される。機種情報は接続されたプリンタの印刷可能な用紙サイズ・用紙種類・印刷品質設定の組み合わせ情報を示す。
【００２８】
設定例５に示すように、原稿種別が「写真（自然画像）」であり、かつ、用紙種類が「写真用紙」である場合には、印刷品質（はやい／きれい）の指定にかかわらす、画像補正を実行して画質を向上させることが好ましいと考えられる。また、設定例２に示すように、原稿種別が「写真」であり、かつ、用紙種類が「普通紙」である場合において、さらに、印刷品質が「きれい」の指定となっている場合には、画質を優先して画像補正を実行して画質を向上させることが好ましいと考えられる。そこで、設定例３および設定例５の場合には、画像データのフォーマットはＪＰＥＧフォーマットと定められるともに、印刷ジョブの生成においては、ＪＰＥＧ印刷用の印刷制御コードの体系に応じた印刷制御コマンドが用いられる。
【００２９】
設定例２に示すように、原稿種別が「写真」であるが、用紙種類が「普通紙」で、かつ、印刷品質が「はやい」の指定になっている場合には、印刷速度を優先して画像補正を実行しないほうが好ましいと考えられる。また、設定例１および設定例４に示すように、原稿種別が「イラスト（テキストやグラフ等も含む）」の指定の場合には、用紙種類（写真用紙／普通紙）および印刷品質（はやい／きれい）の指定にかかわらず、画像補正を実行する必要性がないと考えられる。そこで、設定例１、設定例２、および設定例４の場合には、画像データのフォーマットはＲＧＢと定められるとともに、印刷ジョブの生成においては、ＲＧＢ印刷用の印刷制御コードの体系に応じた印刷制御コマンドが用いられる。
【００３０】
なお、印刷設定に応じて画像データのフォーマットが設定されている場合において、アプリケーション１５に対してユーザから印刷の実行指示がなされた場合には、アプリケーション１５は、設定されているフォーマットの画像データをプリンタドライバ１６に出力する。これにより、プリンタドライバ１６は、設定されたフォーマットに対応する印刷制御コマンドを用いて、図２に示すように、そのフォーマットの画像データを含む印刷ジョブを生成する。なお、プリンタドライバ１６が、あらかじめ定められたフォーマット、例えば、ｓＲＧＢフォーマットの画像データをアプリケーション１５から受け取って、対応するＲＧＢフォーマットあるいはＪＰＥＧフォーマットの画像データに変換するようにしてもよい。
【００３１】
以上説明したように、本実施例のプリンタ２０では、ホスト装置から送信されてくる印刷ジョブに含まれる画像データがＲＧＢフォーマットであるＲＧＢ印刷の場合には、その印刷ジョブにはＲＧＢ印刷制御移行コマンドが含まれている。このため、このＲＧＢ印刷制御移行コマンドを検知することにより、ＲＧＢ印刷パス２２０が起動して、従来のＲＧＢ印刷を実行することができる。一方、印刷ジョブに含まれる画像データがＪＰＥＧフォーマットであるＪＰＥＧ印刷の場合には、その印刷ジョブにはＪＰＥＦ印刷制御移行コマンドが含まれている。このため、このＪＰＥＧ印刷制御移行コマンドを検知することにより、ＪＰＥＧ印刷パス２３０が起動してＪＰＥＧ印刷を実行することができる。そして、このＪＰＥＧ印刷パスでは、ＪＰＥＧ画像データを展開処理するとともに、画像補正処理することができる。したがって、ＲＧＢ印刷では実行することができなかった画像補正を行なって印刷品位の高い印刷を実行することができる。
【００３２】
また、ホスト装置１０のプリンタドライバ１６では、原稿種別や、用紙種類、印刷品質の設定条件の組み合わせに応じて、画像補正を行なう必要性が無い場合には、印刷ジョブに含めて送信する画像データのフォーマットをＲＧＢフォーマットとするとともに、ＲＧＢ印刷制御コマンドを含めた印刷ジョブを送信することができる。また、画像補正を行なうことが好ましい場合には、印刷ジョブに含めて送信する画像データのフォーマットをＪＰＥＧフォーマットとするとともに、ＪＰＥＧ印刷制御移行コマンドを含めた印刷ジョブを送信することができる。
【００３３】
図４は、ＲＧＢ印刷およびＪＰＥＧ印刷において利用されるメモリ領域について示す説明図である。ＲＧＢ印刷の場合には、図４（Ａ）に示すように、デフォルトのＬＰ印刷パス２１０が起動されている場合と同様に、メモリ領域が割り当てられている。例えば、１０ＭＢのメモリ領域のうち、５ＭＢが、メモリカード印刷における先読み用メモリ領域に割り当てられており、画像データを記憶する受信バッファ領域としては、ラスタデータ数ライン分に相当する領域のみが割り割り当てられているに過ぎない。ＲＧＢ印刷の場合には、ＲＧＢ印刷パス２２０では、受信したラスタデータを順に処理して印刷データを生成することができるので、ラスタデータ数ライン分に相当する領域があればよい。しかしながら、ＪＰＥＧ印刷の場合には、画像補正処理を実行するために、１ページ分のＪＰＥＧフォーマットの画像データの全てが必要となる。このため、従来の受信バッファ領域では、その容量が不足してしまい、印刷データを生成することが困難となる可能性が高い。そこで、ＪＰＥＧ印刷の場合、具体的には、ＪＰＥＧ印刷パス２３０が起動する場合には、図４（Ａ）の先読み用メモリ領域を一旦開放し、ＪＰＥＧフォーマットの画像データのバッファ領域に割り当てることとしている。これにより、１ページ分のＪＰＥＧフォーマットの画像データをバッファすることが可能となる。
【００３４】
Ｂ．第２実施例：
図５は、第２実施例としての印刷システムの概略構成を示す説明図である。第２実施例の印刷システムは、第１実施例の印刷システムのＪＰＥＧ印刷パス２３０がＪＰＥＧ印刷予約パス２３０ＡとＪＰＥＧ印刷実行パス２３０Ｂとに分割されるとともに、ＪＰＥＧ印刷予約パス２３０ＡとＪＰＥＧ印刷実行パス２３０Ｂとの間に単画像印刷ジョブ管理部２４０を備えている。ＪＰＥＧ印刷予約パス２３０Ａは、第１実施例のＪＰＥＧ印刷パス２３０の印刷初期化部２３１に加えて、単画像印刷受信部２３３と、単画像印刷ジョブ書き込み部２３７と、で構成されている。また、ＪＰＥＧ印刷実行パス２３０Ｂは、第１実施例のＪＰＥＧ印刷パス２３０の画像補正部２４１と色調整／ハーフトーン処理部２４３とデータ配列部２４５とプリントデータ出力部２４７とで構成されている。このＪＰＥＧ印刷実行パス２３０Ｂの各ブロックの動作は、第１実施例の場合と同様である。第２実施例の印刷システムの特徴は、ＪＰＥＧ印刷予約パス２３０Ａの単画像印刷受信部２３３および単画像印刷ジョブ書き込み部２３７と、単画像印刷ジョブ管理部２４０と、を備える点にある。
【００３５】
図６は、第２実施例の印刷システムの特徴について示す説明図である。印刷初期化部２３１では、印刷ジョブストリームデータが順に画像バッファ領域に格納される。単画像印刷受信部２３３では、ＪＰＥＧフォーマット画像データ用バッファ領域（画像バッファ領域）に格納された画像データをページ単位で抽出し、印刷設定値とともに、ページ単位のジョブ（単画像Ｊｏｂ）が生成される。ただし、この単画像Ｊｏｂに実際の画像データが含まれるわけではなく、各ページの画像データは、画像バッファ中のアドレスにより特定される。そして、単画像印刷ジョブ書き込み部２３７では、各単画像Ｊｏｂのキュー（ジョブハンドル）が、単画像印刷ジョブ管理部２４０に書き込まれ、各単画像Ｊｏｂが予約される。そして、単画像印刷ジョブ管理部２４０では、予約された単画像Ｊｏｂが順に、ＪＰＥＧ印刷実行パス２３０Ｂに受け渡される。これにより、ＪＰＥＧ印刷実行パス２３０Ｂでは、ページ単位で順に印刷データの生成が実行される。なお、画像バッファ領域が一杯で画像データの格納が不可となる場合には、ＪＰＥＧ印刷実行パス２３０Ｂによる印刷データの生成が実行されて画像バッファ領域に空きが発生するまで、単画像印刷受信部２３３による単画像Ｊｏｂの生成および単画像印刷ジョブ書き込み部２３７による単画像Ｊｏｂの予約は中断される。
【００３６】
本実施例の印刷システムでは、ホスト装置１０から送信される印刷ジョブに含まれる各ページの画像データをページ単位の印刷ジョブとして管理し、ページ単位の印刷ジョブの印刷データを順に生成することができる。
【００３７】
ここで、ＪＰＥＧ印刷実行パス２３０Ｂでは、１ページの印刷データの生成のための処理時間が長くなる傾向にあるため、複数ページの画像データを含む印刷ジョブにおいて、１ページ単位で、順に処理していては効率が悪い。そこで、本実施例のように、ＪＰＥＧ印刷実行パス２３０Ｂにおける印刷データの生成処理とは独立して、ＪＰＥＧ印刷予約パス２３０Ａにおいて、複数ページの画像データを含む印刷ジョブを、ページ単位の印刷ジョブに変更して予約しておくことができる。これにより、ＪＰＥＧ印刷において、複数ページの印刷データの生成を効率良く行なうことができる。
【００３８】
Ｃ．変形例：
なお、本発明は上記した実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様にて実施することが可能である。
【００３９】
（１）上記実施例では、ＪＰＥＧフォーマットの画像データの印刷を示す第１の印刷コマンドとしてのＪＰＥＧ印刷制御モード移行コマンドが印刷ジョブに含まれている場合には画像補正を行い、ＲＧＢフォーマットの画像データの印刷を示す第２の印刷コマンドとしてのＲＧＢ印刷制御モード移行コマンドが印刷ジョブに含まれている場合には画像補正を行なう場合を例に説明しているが、これに限定されるものではなく、画像データがＲＧＢファーマットならば画像補正を行なわず、画像データがＪＰＥＧフォーマットならば画像補正を行なうように切り換えることができれば、どのような方法であってもよい。
【００４０】
（２）上記実施例では、プリンタドライバ１６は、ホスト装置１０とプリンタ２０とが接続された際に、プリンタ２０の機種情報を、取得要求コマンドを用いて要求する。そして、この取得要求コマンドに対する応答コマンドを受け取ることにより機種情報を取得し、取得した機種情報が印刷設定項目に反映されることとなる。なお、この機種情報は、接続されたプリンタの印刷可能な用紙サイズ・用紙種類・印刷品質設定の組み合わせ情報である。しかしながら、これに限定されるものではなく、さらに、以下で説明する情報を機種情報として取得するようにしてもよい。
【００４１】
図７は、ホスト装置とプリンタとの間で実行される機種情報の取得について示す説明図である。図に示すように、ホスト装置１０からプリンタ２０に対して機種情報取得要求を行い、これに対する応答として機種情報を通知する。このとき、機種情報としては、給紙装置ごとに、それぞれの用紙サイズ，用紙種類，印刷品質設定の組み合わせ等種々の情報を送信することが好ましい。このようにすれば、ホスト装置から、プリンタでサポートしている任意の給紙装置にセットされた印刷媒体を指定して、印刷を実行することができる。
【００４２】
また、機種情報としては、ＪＰＥＧ画像データとして受信可能な画像データの画像バッファ領域のメモリサイズを送信することが好ましい。このようにすれば、ホスト装置１０では、印刷可能なＪＰＥＧフォーマッットの画像データのサイズを知ることができる。そして、例えば、そのメモリサイズとなるように画像データを圧縮したＪＰＥＧフォーマットの画像データを印刷ジョブに含めて送信することにより、印刷を実行することが可能となる。
【００４３】
（３）図２を用いて説明したように、ＪＰＥＧ印刷ジョブは、ＲＧＢ印刷ジョブのＲＧＢ印刷制御モード移行コマンドがＪＰＥＧ印刷制御モード移行コマンドに置き換えられている点およびＡＰＦ設定コマンドが追加されている場合を例に説明した。さらに、図８に示すように、Ｊｏｂ開始設定コマンドを用紙サイズ設定コマンドに置き換えるようにしてもよい。この用紙サイズ設定コマンドは、上記した機種情報の取得時に伝えられる用紙サイズに応じたＩＤ情報を通知するコマンドである。Ｊｏｂ開始設定コマンドの場合には、印刷サイズ（余白および印刷領域）の形式で用紙サイズが伝えられるが、用紙サイズ設定コマンドの場合にはＩＤ情報が伝えられるのみであるので、情報量を削減することが可能である。また、上記のように複数の給紙装置を備える場合に、用紙サイズごとに印刷サイズの形成で情報を伝えるよりも便利である。
【００４４】
（４）上記実施例では、プリンタドライバ１６は、用紙種類と印刷品質と原稿種別とに基づいて、画像データをＲＧＢフォーマットとするかＪＰＥＧフォーマットとするか切り換えることとしている（図３参照）。そして、プリンタドライバ１６は、設定したフォーマットの画像データをアプリケーション１５から受けとって送信することとしている。しかしながら、原稿種別について画像データを解析することにより自動判別して決定し、決定した原稿種別と、他の用紙種類および印刷品質と、に基づいて、画像データをＲＧＢフォーマットとするかＪＰＥＧフォーマットとするか切り換えてもよい。
【００４５】
図９は、プリンタドライバが、プリンタに送信する印刷ジョブを、ＲＧＢ印刷のための印刷ジョブとする場合およびＪＰＥＧ印刷のための印刷ジョブとする場合の変形例について示す説明図である。図９（Ａ）に示すように、プリンタドライバ１６は、図示しないユーザインタフェースを介して表示部１１に印刷設定画面を表示する。印刷設定画面を介してユーザが指定した用紙種類と印刷品質と原稿種別（印刷対象画像の種別）とに基づいて、画像データのフォーマットを決定する（図３（Ｂ）参照）。この変形例では、原稿種別として、図９（Ａ）に示すように、「自動判別」が設定されているものとする。
【００４６】
アプリケーション１５に対してユーザから印刷の実行指示がなされた場合には、アプリケーション１５は、所定のフォーマット（例えば、機種に依存しないフォーマットであるｓＲＧＢフォーマット）の画像データであるラスタデータをプリンタドライバ１６に出力する。このとき、プリンタドライバ１６は、図９（Ｂ）に示すように、まず、数ライン分のラスタデータを受け取る（ステップＳ１１０）。そして、受け取ったラスタデータのデータ変化量に基づいて印刷データの種別を判定する（ステップＳ１２０）。具体的には、各ライン内における横方向の各ドットのデータ変化量および数ラインにおける縦方向の各ドットのデータ変化量をカウントする。データ変化量があらかじめ設定した閾値以上であれば自然画像（実施例の写真に対応）と判定し、閾値未満であればテキスト／グラフ（実施例のイラストに対応）と判定する。そして、判定された原稿種別と、他の用紙設定および印刷品質に基づいて、画像データのフォーマットを決定し、アプリケーションから受け取った画像データのフォーマットを、決定したフォーマットに変換する。
【００４７】
（５）上記実施例において、アプリケーション１５からプリンタドライバ１６に供給される画像データは、基本的には、図１０（Ｂ）に示すように、図１０（Ａ）に示したプリンタ２０で印刷される用紙サイズに応じた印刷サイズに基づいて決定される印刷サイズ対応解像度（Ｍ０×Ｎ０ドット）となる。この印刷サイズ対応解像度の画像データがＪＰＥＧ形式で圧縮されると、プリンタ側で展開処理された後の画像データの表す画像の画質は、その圧縮率に応じて劣化する場合がある。そこで、図１０（Ｃ）に示すように、アプリケーション１５からプリンタドライバ１６に供給される画像データは、あらかじめ、印刷サイズ対応解像度よりも大きい解像度（例えば、Ｍ１×Ｎ１ドット（Ｍ１＞Ｍ０，Ｎ１＞Ｎ０））の画像データとすることが好ましい。このようにすれば、圧縮により発生する画質の劣化を抑制することが可能である。なお、印刷サイズ対応解像度よりも高い解像度の画像データを、アプリケーション１５から受け取るのではなく、プリンタドライバ１６で解像度変換処理を行なって、印刷サイズ対応解像度の画像データをアプリケーションから受け取って、印刷サイズ対応解像度よりも高い解像度の画像データに変換するようにしてもよい。
【００４８】
（６）上記実施例では、ホスト装置１０とプリンタ２０との間をＵＳＢケーブル３０で接続する場合を例に説明したが、有線接続、無線接続を問わず種々の規格に従った通信が実行される場合においても、適用可能である。
【図面の簡単な説明】
【００４９】
【図１】第１実施例としての印刷システムの概略構成を示す説明図である。
【図２】ＲＧＢ印刷制御モードの印刷ジョブで用いられる印刷制御コードおよびＪＰＥＧ印刷制御モードの印刷ジョブで用いられる印刷制御コードについて示す説明図である。
【図３】プリンタドライバがプリンタに送信する印刷ジョブをＲＧＢ印刷のための印刷ジョブとする場合およびＪＰＥＧ印刷のための印刷ジョブとする場合について示す説明図である。
【図４】ＲＧＢ印刷およびＪＰＥＧ印刷において利用されるメモリ領域について示す説明図である。
【図５】第２実施例としての印刷システムの概略構成を示す説明図である。
【図６】第２実施例の印刷システムの特徴について示す説明図である。
【図７】ホスト装置とプリンタとの間で実行される機種情報の取得について示す説明図である。
【図８】ＪＰＥＧ印刷ジョブの変形例について示す説明図である。
【図９】プリンタドライバがプリンタに送信する印刷ジョブをＲＧＢ印刷のための印刷ジョブとする場合およびＪＰＥＧ印刷のための印刷ジョブとする場合の変形例について示す説明図である。
【図１０】ＪＰＥＧ印刷ジョブに含まれる画像データの解像度につて示す説明図である。
【符号の説明】
【００５０】
１０…ホスト装置
１１…表示部
１２…操作部
１５…アプリケーション
１６…プリンタドライバ
１７…ＵＳＢインタフェース
１８…コネクタ
２０…プリンタ
２１…表示部
２２…操作部
２３…コネクタ
２００…プリントコントローラ
２１０…ＬＰ印刷パス
２１１…ＬＰ印刷ホストインタフェース
２１３…ＬＰ印刷コマンド解析部
２２０…ＲＧＢ印刷パス
２２１…印刷初期化部
２２３…色調整／ハーフトーン処理部
２２５…データ配列部
２２７…プリントデータ出力部
２３０…ＪＰＥＧ印刷パス
２３０Ａ…ＪＰＥＧ印刷予約パス
２３０Ｂ…ＪＰＥＧ印刷実行パス
２３１…印刷初期化部
２３３…単画像印刷受信部
２３７…単画像印刷ジョブ書き込み部
２４０…単画像印刷ジョブ管理部
２４１…画像補正部
２４５…データ配列部
２４７…プリントデータ出力部
３００…プリントエンジン
【図１】
2009232171.tif 000003
【図２】
2009232171.tif 000004
【図３】
2009232171.tif 000005
【図４】
2009232171.tif 000006
【図５】
2009232171.tif 000007
【図６】
2009232171.tif 000008
【図７】
2009232171.tif 000009
【図８】
2009232171.tif 000010
【図９】
2009232171.tif 000011
【図１０】
2009232171.tif 000012