(57)【要約】【課題】  所定の問合せを送ってその応答を受け取ってからモバイル端末は印刷データを印刷装置に送信する。印刷データをモバイル端末から受信してから、該当する解析モジュールを起動する場合、省メモリ化は図れるが、印刷データの解析開始が遅れてしまう。【解決手段】  印刷データに先立って外部装置から送られてくる問合せに対して、少なくとも１つのデータフォーマットを応答し、その問合せの後で、印刷データの受信を待たずに、その少なくとも１つのデータフォーマットをサポートする解析モジュールを起動する。【選択図】  図３
2017159523.tif 000002
【特許請求の範囲】
【請求項１】
印刷データを受信して、解析して、印刷する印刷装置であって、
複数のデータフォーマットそれぞれをサポートする複数の解析手段の起動を制御する制御手段と、
外部装置からの印刷データの受信に先立って受信される当該外部装置からの所定の問合せを受信する受信手段と、
前記所定の問合せに対して、前記複数のデータフォーマットのうちの少なくとも１つを含む情報を前記外部装置に通知する通知手段と、
を有し、
前記制御手段は、前記所定の問合せの後、印刷データの受信を待たずに、前記少なくとも１つのデータフォーマットをサポートする解析手段を起動することを特徴とする印刷装置。
【請求項２】
前記制御手段は、
前記所定の問合せの後に前記外部装置から受信された前記印刷データのデータフォーマットを、起動中の解析手段がサポートするか否かを判定し、
当該判定に基づいて、当該受信された前記印刷データを当該起動されている解析手段に解析させることを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記制御手段は、外部装置から受信された印刷データを解析することで当該印刷データのデータフォーマットを判定し、当該判定されたデータフォーマットをサポートする解析手段の起動を開始することを特徴とする請求項１または２に記載の印刷装置。
【請求項４】
前記制御手段は、外部装置から所定の問合せを事前に受信することなしに当該外部装置から受信された印刷データを解析することで当該印刷データのデータフォーマットを判定し、当該判定されたデータフォーマットをサポートする解析手段の起動を開始することを特徴とする請求項３に記載の印刷装置。
【請求項５】
前記制御手段は、外部装置から受信されたデータが、前記所定の問合せであるか否かを判定し、当該判定に基づいて、前記少なくとも１つのデータフォーマットをサポートする解析手段の起動を、前記印刷データの受信の前に開始することを特徴とする請求項１乃至４の何れか１項に記載の印刷装置。
【請求項６】
前記制御手段は、起動を開始しようとする解析手段が起動中であるか否かを判定し、当該判定に基づいて、当該解析手段の起動を開始することを特徴とする請求項１乃至５の何れか１項に記載の印刷装置。
【請求項７】
前記制御手段は、前記少なくとも１つのデータフォーマットをサポートする解析手段の起動を、前記所定の問合せが受信されたこと、あるいは、前記通知が行われたことに基づいて開始することを特徴とする請求項１乃至６の何れか１項に記載の印刷装置。
【請求項８】
前記所定の問合せは、特定の通信プロトコルにしたがった前記印刷装置の能力の問合せであることを特徴とする請求項１乃至７の何れか１項に記載の印刷装置。
【請求項９】
前記制御手段は、起動中の別の解析手段の起動を終了してから、前記少なくとも１つのデータフォーマットをサポートする解析手段の起動を開始することを特徴とする請求項１乃至８の何れか１項に記載の印刷装置。
【請求項１０】
前記制御手段は、前記少なくとも１つのデータフォーマットをサポートする解析手段による印刷データの解析が終了した後、当該解析手段の起動を終了してから、予め決められている解析手段の起動を開始することを特徴とする請求項９に記載の印刷装置。
【請求項１１】
印刷データを受信して、解析して、印刷する印刷装置の制御方法であって、
複数のデータフォーマットそれぞれをサポートする複数の解析手段の起動を制御する制御工程と、
外部装置からの印刷データの受信に先立って受信される当該外部装置からの所定の問合せを受信する受信工程と、
前記所定の問合せに対して、前記複数のデータフォーマットのうちの少なくとも１つを前記外部装置に通知する通知工程と、
を有し、
前記制御工程は、前記所定の問合せの後、印刷データの受信を待たずに、前記少なくとも１つのデータフォーマットをサポートする解析手段を起動することを特徴とする印刷装置の制御方法。
【請求項１２】
コンピュータを請求項１乃至１０の何れか１項に記載の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＤＬデータを解析する技術に関する。
【背景技術】
【０００２】
印刷装置は、ホストＰＣなどのコンピュータからページ記述言語（以下、ＰＤＬ）によって記述された印刷データ（ＰＤＬデータとも呼ばれる）を受け付ける。そして印刷装置は、その印刷データを解析してページのビットマップを生成し、そのビットマップに基づく印刷を行う。印刷データの解析には、印刷データを記述するＰＤＬの種別に応じた解析モジュールが用いられる。
【０００３】
近年の印刷装置は、ＰＣだけでなくモバイル端末からも印刷データを受信して印刷することができるようになってきた。この場合、モバイル端末は、印刷データを印刷装置に送信する前に、その印刷装置の能力をその印刷装置に問い合わせる。すると、印刷装置はサポートするＰＤＬ種別の情報等の能力情報をモバイル端末に返答する。そしてモバイル端末は、印刷データを作成し、その印刷データを印刷装置に送信する。
【０００４】
受信された印刷データを解析して印刷する印刷装置として、特許文献１に開示される印刷装置がある。この印刷装置は、印刷データの受信にしたがって、その印刷データのフォーマットをサポートする解析モジュールを外部からダウンロードし、そのダウンロードされた解析モジュールを起動する。そして、受信された印刷データは、その起動された解析モジュールで解析されて印刷される。このように、特許文献１では、必要な解析モジュールを必要な時だけ起動するので印刷装置を省メモリに構成することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２３４２４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の印刷装置では、省メモリ化を図れるが、起動すべき解析モジュールを特定するために印刷データの受信を待つ必要があるので、解析モジュールの起動がその分、遅れていた。
【０００７】
そこで、本発明は、外部装置からの問合せが印刷データの受信前に送られてくることに着目し、省メモリ化を図りつつも、解析モジュールを印刷データの受信前に起動可能にすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の印刷装置は、印刷データを受信して、解析して、印刷する印刷装置であって、複数のデータフォーマットそれぞれをサポートする複数の解析手段の起動を制御する制御手段と、外部装置からの印刷データの受信に先立って受信される当該外部装置からの所定の問合せを受信する受信手段と、前記所定の問合せに対して、前記複数のデータフォーマットのうちの少なくとも１つを含む情報を前記外部装置に通知する通知手段と、を有し、前記制御手段は、前記所定の問合せの後、印刷データの受信を待たずに、前記少なくとも１つのデータフォーマットをサポートする解析手段を起動することを特徴とする。
【発明の効果】
【０００９】
省メモリ化を図りつつ、解析モジュールを印刷データの受信前に起動できる。
【図面の簡単な説明】
【００１０】
【図１】実施例１の印刷装置のハードウェア構成の一例を示す図。
【図２】実施例１の印刷装置のソフトウェア機能構成の一例を示す図。
【図３】実施例１における処理のフローチャート。
【図４】ホストＰＣとモバイル端末におけるそれぞれの印刷手続きの概要を示す図。
【発明を実施するための形態】
【００１１】
（実施例１）
以下、本発明を実施するための形態について図面を用いて説明する。
【００１２】
図１は、本実施例における印刷装置のハードウェア構成を示す。印刷装置は、ＣＰＵ１０１、ＲＡＭ１０２、ＨＤＤ１０３、ＮＩＣ（ネットワークインターフェースコントローラ）１０４、ＲＩＰ（ラスターイメージプロセッサ）１０５、プリンターエンジン１０６、ＲＯＭ１０７を有する。
【００１３】
ＣＰＵ１０１は、ＲＯＭ１０７に記憶されている各プログラムをＲＡＭ１０２に展開して実行することで、図２で後述するソフトウェアモジュールを動作させる。例えば解析モジュールがＣＰＵ１０１によって動作する。またＲＡＭ１０２は、各プログラムが実行される際に用いられるワークメモリとして機能する。
【００１４】
ＨＤＤ１０３は、レンダラ１０４が生成したビットマップ画像の保存先（スプール領域）として利用される。
【００１５】
ＮＩＣ１０４は、モバイル端末やホストＰＣ（以下、ＰＣ）等の外部装置から能力情報の問合せ（リクエスト）や印刷データを受信するインターフェースである。
【００１６】
ＲＩＰ１０５は、ＣＰＵ１０１によって動作される解析モジュールによる印刷データの解析結果から、ビットマップ画像を生成するＡＳＩＣである。
【００１７】
プリンターエンジン１０６は、ＲＩＰ１０５が生成したビットマップ画像に基づいて、画像を印刷用紙に印刷する。
【００１８】
図２は、本実施例におけるソフトウェアモジュール構成を示す。このソフトウェアモジュールは、ＲＯＭ１０７に格納されており、ＣＰＵ１０１によって実行されることで動作する。
【００１９】
受信部２０１は、ＰＣやモバイル端末等の外部装置から、標準ＴＣＰ／ＩＰポート・モニタやＬＰＲ（Ｌｉｎｅ  Ｐｒｉｎｔｅｒ  Ｄａｅｍｏｎ  Ｐｒｏｔｏｃｏｌ）やＩＰＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｉｎｔｉｎｇ  Ｐｒｏｔｏｃｏｌ）などの通信プロトコルにしたがって送信された印刷データを受信するモジュールである。
【００２０】
応答部２０２は、モバイル端末等の外部装置から送られる、印刷装置の能力の問合せを受け付け、その問合せに対して、印刷装置がサポートし、推奨する印刷データのデータフォーマット（ＰＤＬ種別）をモバイル端末に返答するモジュールである。この推奨するデータフォーマットのことを、推奨フォーマットと呼ぶ。
【００２１】
ＰＣなどは、プリンタードライバを用いて、印刷装置のベンダー独自のデータフォーマット（例えばＬＩＰＳ）の印刷データを送ってくることがある。一方で、モバイル端末などは、プリンタードライバを有しておらず、独自データフォーマットとは異なる標準的なデータフォーマット（例えばＰＤＦ）の印刷データを送ってくることが多い。また、モバイル端末などは、印刷データの送信に先だって、上記の問合せを送ってくる。そこで、応答部２０２は、問合せを受け付けた場合、その問合せはモバイル端末などから送られてきたものであるとみなし、その問合せに対して、モバイル端末が備えているだろう標準的なデータフォーマットを推奨フォーマットとして返答する。
【００２２】
２０４ａ、２０４ｂ、２０４ｃ、２０４ｄは印刷データを解析するための４種類の解析モジュールである。例えば解析モジュールは解析可能なＰＤＬ種別ごとに区別され、本実施例では、以下の４種類のＰＤＬを解析するための解析モジュールが用意される。４種類のＰＤＬとは、ＬＩＰＳ、ＸＰＳ、ＰＳ（Ｐｏｓｔｓｒｉｐｔ）、ＰＤＦである。
【００２３】
制御部２０３は、複数の解析モジュールをグループ分けして、グループ毎に解析モジュールの起動と終了を制御する。制御部２０３が解析モジュールを起動するとは、制御部２０３として機能しているＣＰＵ１０１が、その解析モジュールのプログラムを実行することである。また解析モジュールの起動を開始することも、解析モジュールを起動するとも呼ぶ。制御部２０３が解析モジュールを終了するとは、制御部２０３として機能しているＣＰＵ１０１が、その解析モジュールのプログラムの実行を終了することである。解析モジュールの起動が完了すると、必要な量のＲＡＭ１０２のメモリが消費される（確保される）。また解析モジュールが終了すると、その確保されていたメモリが解放される。本実施例において、制御部２０３は、ＬＩＰＳの解析モジュール２０４ａをグループ１に分類し、ＸＰＳの解析モジュール２０４ｂをグループ２に分類し、ＰＳの解析モジュール２０４ｃとＰＤＦの解析モジュール２０４ｄをグループ３に分類する。本実施例の制御部２０３は、あるグループの解析モジュールの起動を終了せずにそのグループの解析モジュールの起動を維持しつつ、別のグループの解析モジュールを起動することが無いようにする。すなわち、印刷装置が有する全ての解析モジュールが起動中とならないようにグループ単位で解析モジュールの起動と終了を制御する。このように制御することで、解析モジュールの起動のために用意するＲＡＭ１０２のメモリ量を少量にすることができる。例えば、グループ１の解析モジュールを起動するために必要なメモリ量が６０ＭＢ、グループ２の解析モジュールを起動するために必要なメモリ量が１３０ＭＢ、グループ３の解析モジュールを起動するために必要なメモリ量が１３０ＭＢであるとする。ここで、全てのグループの解析モジュールを起動すると、３２０（＝６０＋１３０＋１３０）ＭＢのメモリ量が必要である。しかし、本実施例のように、複数のグループのうちの一部の解析モジュールのみの起動を行うようにすることで、最低限必要なメモリ量は１３０ＭＢと少なくできる。なおグループの分け方は、以上の方法に限定されない。
【００２４】
また、制御部２０３は、モバイル端末は問合せを行ってから標準的なデータフォーマットの印刷データを送信してくるだろうという予測のもと、解析モジュールの終了および起動の制御を行う。すなわち、制御部２０３は、問合せにしたがって、印刷データの受信を待たずに、起動中の解析モジュールを終了して、まだ起動されていない、推奨フォーマットをサポートする解析モジュールを起動し始める。なお、解析モジュールの停止および起動の制御が行われるタイミングは、問合せの受信をトリガーとしても、前述の応答部２０２による返答をトリガーとしても良い。また解析モジュールの停止および起動の制御は、応答部２０２による返答の前後でも並行して行われても良い。例えば、問合せにしたがって、応答部２０２による返答と、制御部２０３による解析モジュールの制御とを並行して行えば、返答のタイミングを遅らすことなく、モバイル端末がその返答内容にしたがって処理を行うタイミングを遅らすことを防げる。このように問合せをトリガーとして解析モジュールの起動制御を行うことで、本実施例の印刷装置は、省メモリ化と印刷データの解析開始を早めることができる。
【００２５】
この制御部２０３は、印刷データの解析に必要な解析モジュールを、グループ単位で起動し、その起動された解析モジュールに印刷データの解析を行わせる。そして制御部２０３は、その解析結果をＲＩＰ１０５に送ることで、ＲＩＰ１０５にビットマップ画像の生成を行わせる。
【００２６】
ここで、外部装置から印刷データを受信して印刷する印刷装置の処理の手続きについて、ＰＣとモバイル端末を例に、図４を用いて説明する。
【００２７】
ＰＣの場合、ＰＣには印刷装置専用のプリンタードライバが事前にインストールされているので、ＰＣは印刷装置の能力やＩＰアドレスを把握している。そして、ユーザが印刷指示を出したタイミングで、ＰＣは標準ＴＣＰ／ＩＰポート・モニタやＬＰＲといった通信プロトコルにしたがって、そのＩＰアドレスを持つ印刷装置に印刷データを送信する。（ステップＳ６１１）印刷装置はその印刷データを受信し、受信された印刷データのヘッダ情報や先頭の数バイトを解析することで、その印刷データのＰＤＬ種別を特定する。そして印刷装置は、特定されたＰＤＬ種別の解析モジュールを起動し（ステップＳ６１２）、起動された解析モジュールでその印刷データを解析して印刷する（ステップＳ６１３）。
【００２８】
一方、モバイル端末の場合、一般に、モバイル端末に印刷装置専用のプリンタードライバがインストールされることは少ない。そのため、モバイル端末は、印刷装置の能力やそのＩＰアドレスを把握していない。そこで、モバイル端末は、まず、ＩＰＰにしたがって、ＬＡＮ等のネットワークに接続された印刷可能な印刷装置を探索する。次に、モバイル端末は、探索された１つ以上の印刷装置をモバイル端末の画面にリスト表示し、ユーザに１つの印刷装置を選択させる。すると、その選択を受けたタイミングで、モバイル端末は、ユーザによって選択された印刷装置に、ＩＰＰにしたがって、その印刷装置の能力を問い合わせる（ステップＳ６２１）。ＩＰＰでは、この問合せは、モバイル端末からのＧｅｔ−Ｐｒｉｎｔｅｒ−Ａｔｔｒｉｂｕｔｅｓのリクエストとして、印刷装置に送信される。
【００２９】
印刷装置は、この問合せに対して、ＩＰＰにしたがって自身の能力情報を返答する（ステップＳ６２２）。例えば、印刷装置は、返答される情報のうちのｄｏｃｕｍｅｎｔ−ｆｏｒｍａｔ−ｓｕｐｐｏｒｔｅｄ属性の情報によって、自身がサポートする（解析モジュールを有する）ＰＤＬ種別をサポートフォーマットとして応答する。このサポートフォーマットには少なくとも１つのＰＤＬ種別を含めることができる。また印刷装置は、返答される情報のうちのｄｏｃｕｍｅｎｔ−ｆｏｒｍａｔ−ｐｒｅｆｅｒｒｅｄ属性の情報によって、サポートフォーマットのうちの１つを推奨フォーマットとして応答する。また印刷装置は、例えばフルカラー対応プリンターであるか否か、等の情報も他の属性の情報によって応答する。そして、この返答とともに、印刷装置は、問合せにしたがって、推奨フォーマットとして返答したＰＤＬ種別の解析モジュールを起動しておく（ステップＳ６２３）。
【００３０】
印刷装置から能力情報の返答を受け取ったモバイル端末は、その情報に基づいて、その印刷装置において設定可能な印刷設定の候補を、モバイル端末の画面に表示し、ユーザに印刷設定を行わせる。そして印刷設定が完了したユーザがモバイル端末の画面に表示されている印刷ボタンを押下したタイミングで、モバイル端末は、推奨フォーマットの印刷データを作成し、ＩＰＰにしたがってその印刷データを印刷装置に送信する（ステップＳ６６２４）。
【００３１】
そして、印刷装置は、受信した印刷データのヘッダ情報や先頭数バイトを解析して、印刷データのＰＤＬ種別が既に起動されている解析モジュールで解析可能かを判定する。解析可能であれば、印刷装置は、印刷データを受信する前からすでに起動している解析モジュールでその印刷データを解析して印刷を行う（ステップＳ６２５）。
【００３２】
このように印刷データの受信前から解析モジュールを事前に起動しておくことで、印刷データの受信後速やかに解析処理を開始できる。なお、解析可能でなければ、印刷装置は、既に起動が完了して起動中の解析モジュールを終了して、印刷データのＰＤＬ種別の解析モジュールを起動し、起動された解析モジュールで印刷データを解析して印刷する。
【００３３】
図３は、外部装置から受信された印刷データを解析するための、印刷装置が行う処理のフローチャートである。例えばＣＰＵ１０１が、印刷装置の電源が入れられたことに応じて、ＲＯＭ１０７内のプログラムをＲＡＭ１０２に展開して実行することで、図２の各モジュールを動作させる。そして各モジュールが連携して動作することによって、本フローチャートの処理は実行される。本フローチャートの処理の特徴は、外部装置から所定の問合せを受け付け、その問合せにしたがって、推奨フォーマットの外部装置への返答、および、解析モジュールの起動制御（起動終了および起動開始）を行うことである。特に推奨フォーマットをサポートする解析モジュールを問合せにしたがって起動することである。
【００３４】
ステップＳ３０１において、制御部２０３は、規定グループの解析モジュールを起動する。ここでは規定グループとしてグループ１が予め決められており、ＬＩＰＳ解析モジュール２０４ａが起動される。グループ２のＸＰＳ解析モジュール２０４ｂ、グループ３のＰＳ解析モジュール２０４ｃとＰＤＦ解析モジュール２０４ｄは起動されない。
【００３５】
ステップＳ３０２において、応答部２０２は、所定のプロトコルにしたがった印刷装置の能力（能力情報）の問合せを受け付けたか否かを判定する。すなわち、外部装置から受け付けられたデータが、その問合せであるか否かの判定が行われる。この判定は２種類の判定を含む。１つ目は、受け付けられたデータが所定のプロトコルにしたがったものであるか否かの判定である。２つ目は、受け付けられたデータが能力情報の問合せであるか否かの判定である。このステップＳ３０２は、図４のステップＳ６２１に対応している。この問合せは、モバイル端末からの問合せを想定している。そのため本実施例では、所定のプロトコルとして、モバイル端末からの印刷データの送信によく用いられるＩＰＰを想定している。しかし、印刷データを送信するのに先立って事前に外部装置が印刷装置に対して行う問合せ（例えば能力情報の問合せ）に用いられる通信プロトコルであれば他の通信プロトコルでもよい。問い合わせがあった場合はステップＳ３０３の処理へ進み、なかった場合はステップＳ３０６の処理へ進む。
【００３６】
ステップＳ３０３において、問合せに対して応答部２０２は、所定のプロトコルにしたがって、受け付けた問合せに対して、印刷データの推奨フォーマットをモバイル端末に返答（通知）する。この処理は、図４のステップＳ６２２に対応している。推奨フォーマットが通知されたモバイル端末は、基本的には、推奨フォーマットの印刷データを印刷装置に送ってくる。このことから、ステップＳ３０２の問合せは、どのフォーマットの印刷データを送ればよいかのモバイル端末からの問合せとも言える。
【００３７】
本実施例では、応答部２０２は、推奨フォーマットとして、ＰＤＦをモバイル端末に返答する。なぜなら、ＰＤＦはモバイル端末が送信可能な印刷データのフォーマットとして一般的であるからである。なお、モバイル端末が推奨フォーマット（例えばＰＤＦ）ではなく、別のフォーマットの印刷データを送ってくることがあるが、その場合に備えて、後述のステップＳ３０７が用意されている。
【００３８】
ステップＳ３０４において、問合せの受付にしたがって、制御部２０３は、起動中の解析モジュールが推奨フォーマットに対応しているか否かを判定する。この判定結果にしたがって、処理をステップＳ３０５かＳ３０６に進める。「起動中の解析モジュールが推奨フォーマットに対応している」とは、「起動中の解析モジュールが、推奨フォーマットをサポートしている、あるいは、推奨フォーマットの印刷データを解析するのに適している」ということである。起動中の解析モジュールとは、起動処理が完了して起動している解析モジュールだけでなく、起動処理が開始されたがその起動処理が完了していない解析モジュールを含んでも良い。例えば起動中の解析モジュールがＬＩＰＳ解析モジュール２０４ａであり、推奨フォーマットがＰＤＦである場合、起動中の解析モジュールは推奨フォーマットに対応していないと判定される。一方で、起動中の解析モジュールにＰＤＦ解析モジュール２０４ｄがあれば、起動中の解析モジュールは推奨フォーマットに対応していると判定される。すなわち、ここでは、起動中のグループの解析モジュールが推奨フォーマットの印刷データを解析できるか否かが判定される。対応していなければ、ステップＳ３０５の処理へ進み、対応していれば、ステップＳ３０６の処理へ進む。
【００３９】
ステップＳ３０５において、制御部２０３は、起動中の解析モジュールをグループ単位で終了させ、推奨フォーマットの印刷データを解析可能な解析モジュールをグループ単位で起動する。この処理は、図４のステップＳ６２３に対応している。制御部２０３は、起動中のグループ１の解析モジュール（つまり、ＬＩＰＳ解析モジュール２０４ａ）を終了させる。そして次に制御部２０３は、推奨フォーマットに対応する解析モジュール（つまり、ＰＤＦ解析モジュール２０４ｄ）を含むグループ３の解析モジュール（つまりＰＳ解析モジュール２０４ｃ、ＰＤＦ解析モジュール２０４ｄ）の起動を開始し、起動を完了する。そしてステップＳ３０６の処理へ進む。
【００４０】
ステップＳ３０６において、受信部２０１は、外部装置から印刷データを受信したかを判定する。この処理は、図４のステップＳ６１１、Ｓ６２４に対応している。印刷データを受信した場合はステップＳ３０７の処理へ進み、受信してない場合はステップＳ３０２の処理に戻る。
【００４１】
ステップＳ３０７において、制御部２０３は、起動中の解析モジュールが印刷データのフォーマットに対応しているか否かを判定する。この判定結果にしたがって、処理をステップＳ３０５かＳ３０６に進める。例えば起動中の解析モジュールがＬＩＰＳ解析モジュール２０４ａであり、印刷データのフォーマットがＬＩＰＳである場合、起動中の解析モジュールは印刷データのフォーマットに対応していないと判定される。一方で、起動中の解析モジュールにＰＤＦ解析モジュール２０４ｄがあり、印刷データのフォーマットがＰＤＦである場合、起動中の解析モジュールは印刷データのフォーマットに対応していると判定される。すなわち、ここでは、起動中のグループの解析モジュールが、受信された印刷データを解析できるか否かが判定される。対応していなければ、ステップＳ３０８の処理へ進み、対応していれば、ステップＳ３０９の処理へ進む。なお、このステップＳ３０７を設けることで、Ｓ３０５で起動された解析モジュールと実際に受信された印刷データのフォーマットが合致していない場合でも、印刷データに適した解析モジュールを起動し直すことができる。また、モバイル端末からの問合せを受け付けて推奨フォーマットの解析モジュールを起動してからモバイル端末から印刷データを受信するまでの間に、ＰＣなどからの推奨フォーマットとは異なるフォーマットの印刷データが受信された場合にも対応できる。（後述）
ステップＳ３０８において、制御部２０３は起動中のグループの解析モジュールを終了させ、印刷データ受信部２０１が受信した印刷データを解析可能な解析モジュールを含むグループを起動する。この処理は、図４のステップＳ６１２に対応している。
【００４２】
例えばステップＳ３０３で応答部２０２がＰＤＦを推奨フォーマットとしてモバイル端末に通知した場合、ステップ３０６の時点でＰＤＦ解析モジュール２０４ｄを含むグループ３を起動している。しかし、ユーザが印刷指示を出さないとモバイル端末から印刷データは送信されない。この状態の時にＰＣから送信されたＬＩＰＳの印刷データを受信部２０１が受信すると、制御部２０３は、起動中のグループ３（ＰＳ解析モジュールＰ２０４ｃとＰＤＦ解析モジュール２０４ｄ）を終了する。そして次に制御部２０３は、グループ１（ＬＩＰＳ解析モジュール２０４ａ）を起動する。これにより、受信された印刷データに適した解析モジュールで印刷データを解析することができるようになる。
【００４３】
なお、印刷データを解析可能な解析モジュールがない（印刷装置が備えていない）場合、印刷装置の不図示の表示部にエラー（解析不能・印刷不能）を表示させ、受信された印刷データの処理をキャンセルする。ＰＣは基本的にプリンタードライバを用いているので、ＰＣから送信される印刷データを解析可能な解析モジュールを印刷装置は備えているが、モバイル端末が推奨フォーマットとは異なるフォーマットの印刷データを送ってくることがある。この際に、解析モジュールが印刷装置に備わっていなければ、印刷装置は、印刷データを送信したモバイル端末に対してもエラー（解析不能・印刷不能）を通知するようにしても良い。モバイル端末はその通知を受けて、エラーを自身の表示部に表示すればよい。
【００４４】
ステップＳ３０９において、制御部２０３は、起動している解析モジュールに印刷データを解析させ、その解析結果をＲＩＰ１０５に処理させる。そして制御部２０３は、ＲＩＰ１０５によって生成されたビットマップ画像をプリンターエンジン１０６に印刷させる。この処理は、図４のステップＳ６１３、Ｓ６２５に対応している。
【００４５】
以上により、
以上が、図３のフローチャートの処理内容である。
【００４６】
制御部２０３が起動中の解析モジュールを終了して別の解析モジュールを起動する、という解析モジュールの切り替え処理にはおよそ１〜２秒を要する。そのため、印刷データの受信前に解析モジュールの切り替え処理を行えれば、印刷データの解析開始のタイミングを早めることができる。Ｓ３０２の問合せの返答を受けたモバイル端末では、ユーザは、印刷される文書（印刷対象）を選択したり、印刷設定を指定したりする等の各操作の後、印刷データを印刷装置に送信するために印刷ボタンを押す。一般的にこれらのユーザの操作には２秒は要する。そこで、上記フローチャートの処理では、モバイル端末からＳ３０２の問合せを受け付けたことに基づいて、印刷装置は、推奨フォーマットをモバイル端末に返答するとともに、印刷データ受信前に推奨フォーマットの解析モジュールを起動し始める。このようにすることで、モバイル端末でユーザが各操作を行ってから印刷ボタンを押すまでの間にその特定の解析モジュールの起動が完了していれば、印刷装置は、印刷データを受信してすぐに印刷データの解析を行うことができる。また、完了していなくとも、少なくとも印刷データを受信してから解析モジュールを起動し始めるよりも早く印刷データの解析を開始することができる。その結果、印刷開始も早めることができる。
【００４７】
上述の本実施例では、Ｓ３０２、Ｓ３０３、（Ｓ３０４）Ｓ３０５の順、すなわち、問合せの受付、問合せに対する返答、解析モジュールの起動の順で処理が行われていた。この場合、解析モジュールの起動の開始のタイミングは、問合せの受付のタイミングでも問合せに対する返答のタイミングでも良い。また、このような処理順ではなく、Ｓ３０２、（Ｓ３０４、）Ｓ３０５、Ｓ３０３の順、すなわち、問合せの受付、解析モジュールの起動、問合せに対する返答の順でも良い。この場合、解析モジュールの起動の開始のタイミングは、問合せの受付のタイミングであればよい。
【００４８】
なお本実施例では、印刷データの印刷後、起動されている解析モジュールを切り替えることをしない。つまり、能力情報の問合せに基づいてグループ３の解析モジュール２０４ｃ、２０４ｄが起動され、モバイル端末からＰＤＦの印刷データを受信して印刷した場合に、印刷装置は、グループ３の解析モジュール２０４ｃ、２０４ｄを引き続いて起動したままとする。このようにしておくことで、１回の問合せの後にモバイル端末から、複数のＰＤＦの印刷データが送られてくる場合でも、速やかに印刷データの解析を開始することができる。
【００４９】
しかしながら、変形例として、印刷データの印刷後は、グループ１の解析モジュールを起動し直す構成にしても良い。このように構成すると、印刷装置がＬＩＰＳの印刷データを受信することが多い場合に、ＬＩＰＳの印刷データの印刷開始を速やかに行うことができる。
【００５０】
また、別の変形例として、印刷データの印刷後に、どのグループの解析モジュールを起動するのかを、ユーザあるいは管理者などのオペレーターによる指示で設定できるようにしても良い。このようにすることで、ユーザ環境に応じて解析モジュールの切り替え処理をカスタマイズすることが可能になり、印刷装置の利便性をより向上することができる。
【００５１】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2017159523.tif 000003
【図２】
2017159523.tif 000004
【図３】
2017159523.tif 000005
【図４】
2017159523.tif 000006