(57)【要約】【課題】ＸＭＬなどのマークアップ言語により記述したデータについての印刷を行う際に、より早いタイミングで印刷を開始することができる印刷制御装置、印刷システム、印刷装置の制御方法、ドライバプログラム、及びそのプログラムを記録した記録媒体を提供すること。【解決手段】ＸＭＬパース部２２０の第２ＸＭＬ解釈部２２２は、ＸＭＬドキュメントのうち先頭バンドに掛かる描画領域を有した優先描画命令の記述部分を特定し、この記述部分の行番号通知を第１ＸＭＬ解釈部２２１に受け渡す。第１ＸＭＬ解釈部２２１は、行番号通知に該当する行の記述を解釈して優先描画命令を取得し、優先描画命令を制御部２１０に受け渡す。レンダリング部２３０は、制御部２１０を介して受け取る優先描画命令に従うレンダリング処理により、先頭バンドのバンドデータを生成する。制御部２１０は、このバンドデータをプリンタに送信して、印刷処理を開始させる。【選択図】図３
2008009593.tif 000002
【特許請求の範囲】
【請求項１】
印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々
に実行させる印刷制御装置であって、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第１の解釈手段と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第２の解釈手段と、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を前記印刷装置に
行わせる印刷制御手段とを備えることを特徴とする印刷制御装置。
【請求項２】
請求項１に記載の印刷制御装置において、
前記第２の解釈手段は、前記入力データの記述のうち、前記優先描画命令に対応する記
述を特定し、
前記第１の解釈手段は、前記特定された記述を優先して解釈することにより、前記優先
描画命令を取得することを特徴とする印刷制御装置。
【請求項３】
請求項２に記載の印刷制御装置において、
前記第２の解釈手段が前記優先描画命令に対応する記述を特定すると、前記第１の解釈
手段が当該特定された記述を解釈して優先描画命令を取得する処理と、前記第２の解釈手
段が次の優先描画命令に対応する記述を探索する処理とを並列して実行させることを特徴
とする印刷制御装置。
【請求項４】
請求項１乃至３のいずれか一項に記載の印刷制御装置において、
前記マークアップ言語は、ＸＭＬ、ＨＴＭＬ又はＸＨＴＭＬのいずれかであることを特
徴とする印刷制御装置。
【請求項５】
印刷装置と、印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、前
記印刷装置に次々に実行させる印刷制御装置とを備える印刷システムであって、
前記印刷制御装置は、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第１の解釈手段と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第２の解釈手段とを備え
、
前記印刷装置は、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を実行する印刷処
理部とを備えることを特徴とする印刷システム。
【請求項６】
印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々
に実行させる印刷装置の制御方法であって、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力工程と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第１の解釈工程と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第２の解釈工程と、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成する第１の展開工程
と、
前記描画命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成す
る第２の展開工程と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を前記印刷装置に
行わせる印刷制御工程とを備えることを特徴とする印刷装置の制御方法。
【請求項７】
印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々
に実行させるためのドライバプログラムであって、
コンピュータを、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第１の解釈手段、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第２の解釈手段、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
、
前記バンドデータが生成されると、前記印刷装置との通信を行う通信手段を介して当該
バンドデータを前記印刷装置に順次供給して、当該バンドデータに従う印刷処理を前記印
刷装置に行わせる印刷制御手段、として機能させることを特徴とするドライバプログラム
。
【請求項８】
請求項７に記載のドライバプログラムを記録した、コンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＭＬなどのマークアップ言語により記述したデータから、印刷装置が処理
可能な画像データを生成し、画像データに従って行われる印刷処理を制御する印刷制御装
置、印刷システム、印刷装置の制御方法、ドライバプログラム、及びそのプログラムを記
録した記録媒体に関する。
【背景技術】
【０００２】
従来、マークアップ言語の１つであるＸＭＬ(Extensible Markup Language)により記述
されたデータ（以下、「ＸＭＬドキュメント」ともいう）を処理可能としたＸＭＬプリン
タが知られている。
【０００３】
例えば、特許文献１に記載の技術では、プリンタドライバが、ＸＭＬドキュメントの内
容を展開してプリンタが解釈可能な言語又はビットマップ形式で表された画像データを生
成している。
【０００４】
特許文献２に記載の技術では、ＸＭＬドキュメントにネットワーク上のアドレス情報が
含まれる場合に、ネットワーク上にあるアドレス情報の指定先のサーバと通信して、オブ
ジェクトなどのデータを取得し、通信して取得したデータを組み込んだＸＭＬドキュメン
トを解釈してレンダリングすることにより、画像データを生成している。
【０００５】
ここで、プリンタが処理に要するメモリ領域を節約するために、画像を所定の高さで区
分したバンドごとに処理することがある。このようなプリンタでＸＭＬドキュメントを扱
うためには、ＸＭＬドキュメントから生成した画像をバンドごとに区切って、バンドごと
の画像データ（以下、「バンドデータ」という）をプリンタに順次供給する必要がある。
【０００６】
例えば、図１１に示すように、ＸＭＬドキュメントを解釈して得られる複数の描画命令
に対応して、複数の図形が描画された画像を印刷対象として扱う場合、印刷時の用紙搬送
方向（Ｙ方向）の上端から所定の高さ（画素数）ごとに画像を区切るようにして複数のバ
ンドに区分し、各バンドごとに処理が行われる。具体的には、区分したバンドを端から順
にバンド０、バンド１、…と昇順の番号により各バンドを称すると、プリンタドライバは
、バンド０より順番にバンドデータを送信して、プリンタは、色変換処理・スクリーン処
理などの印刷処理を各バンドデータごとに行う。これにより、各バンドの印刷内容が次々
に印刷されるようにして印刷対象となる画像全体が印刷される。
【０００７】
このように、プリンタがバンドごとに印刷処理を行うとした場合、各バンドの印刷処理
は各バンドのバンドデータに従って行うので、ＸＭＬドキュメントに対する印刷が開始さ
れるタイミングは、プリンタドライバより先頭バンドのバンドデータを受け取るタイミン
グに依存する。すなわち、プリンタが先頭バンドのバンドデータを受け取ると、印刷対象
のＸＭＬドキュメントに対応する印刷処理が開始可能となる。
【０００８】
【特許文献１】特開２０００−３３０９０８号公報
【特許文献２】特開２００２−９１７２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、ＸＭＬドキュメントに記述された描画命令は描画位置に従って順番に記
述されているとは限らないので、プリンタドライバが、先頭のバンドデータを生成するた
めには、ＸＭＬドキュメントの全描画命令についての解釈・展開を待ってから生成する必
要がある。
【００１０】
例えば、ＸＭＬドキュメントを記述の順番に解釈・展開して、図１１に示すように３つ
のオブジェクトＯＢ１，ＯＢ２，ＯＢ３を順番に描画する場合、２つのオブジェクトＯＢ
１，ＯＢ３が先頭バンド（バンド０）のバンド領域に掛かっているため、オブジェクトＯ
Ｂ１を描画した時点で、先頭バンドのバンドデータを得ることはできない。先頭バンドの
バンドデータを得るためには、少なくとも、３つ目のオブジェクトＯＢ３が描画されるま
で待つ必要がある。
【００１１】
このように、ＸＭＬドキュメントを記述順に解釈して得られる描画命令の順番は、描画
位置との関わりがないために、ＸＭＬドキュメントに記述された全描画命令を展開し終え
るまで、先頭バンドのバンドデータを確定することができない。このため、プリンタが、
先頭バンドのバンドデータに従って印刷処理を開始するタイミングが遅くなってしまうと
いう課題があった。
【００１２】
そこで、本発明は、ＸＭＬなどのマークアップ言語により記述したデータについての印
刷を行う際に、より早いタイミングで印刷を開始することができる印刷制御装置、印刷シ
ステム、印刷装置の制御方法、ドライバプログラム、及びそのプログラムを記録した記録
媒体を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明は、印刷対象の画像を所定の高さに区分したバンド
ごとに行う印刷処理を、印刷装置に次々に実行させる印刷制御装置であって、印刷対象の
画像をマークアップ言語で記述した入力データを受け付ける入力手段と、入力データを解
釈して、印刷対象の画像を描画するための描画命令を取得する第１の解釈手段と、入力デ
ータを解釈して、印刷処理の実行順が先頭より所定数までのバンドである先頭バンドに掛
かる描画範囲を有した優先描画命令を探索する第２の解釈手段と優先描画命令を展開して
先頭バンドのバンドデータを生成してから、描画命令を展開して先頭バンド以降のバンド
についてのバンドデータを生成する展開手段と、バンドデータが生成されると、当該バン
ドデータに従う印刷処理を印刷装置に行わせる印刷制御手段とを備えることを特徴とする
。
【００１４】
この構成によれば、先頭バンドに掛かる優先描画命令を展開して、印刷装置に先頭バン
ドについての印刷処理を行わせてから、入力データより取得される描画命令を展開して印
刷装置に先頭バンド以降のバンドについての印刷処理を行わせる。印刷装置は、先頭バン
ド以降のバンドについての描画命令の展開を待つことなく、先頭バンドのバンドデータが
供給されたタイミングで当該先頭バンドの印刷処理を開始するので、入力データに対応し
た印刷を開始するタイミングを早めることができる。また、印刷終了のタイミングも早ま
ることになるので、例えば、ユーザが印刷指示を出してから印刷終了までの待ち時間を短
縮することができ、ユーザにとっての利便性をより高めることができる。
【００１５】
また、本発明の印刷制御装置において、第２の解釈手段は、入力データの記述のうち、
優先描画命令に対応する記述を特定し、第１の解釈手段は、特定された記述を優先して解
釈することにより、優先描画命令を取得することが好ましい。
【００１６】
この構成によれば、第２の解釈手段が優先描画命令に対応する記述を特定し、第１の解
釈手段が入力データのうちの優先描画命令に対応する記述を優先して解釈して優先描画命
令を取得することにより、印刷開始のタイミングを早めた処理を行うことができる。
【００１７】
また、本発明の印刷制御装置において、第２の解釈手段が優先描画命令に対応する記述
を特定すると、第１の解釈手段が当該特定された記述を解釈して優先描画命令を取得する
処理と、第２の解釈手段が次の優先描画命令に対応する記述を探索する処理とを並列して
実行させることが好ましい。
【００１８】
この構成によれば、第１の解釈手段が、優先描画命令に対応する記述を解釈していると
きに、第２の解釈手段は、次の優先描画命令の記述を特定するようにして、２つの処理を
並列処理するため、処理効率が高まり、印刷開始のタイミングをより早めることが可能に
なる。
【００１９】
また、本発明の印刷制御装置において、マークアップ言語は、ＸＭＬ、ＨＴＭＬ又はＸ
ＨＴＭＬのいずれかであることが好ましい。
【００２０】
この構成によれば、ＸＭＬ、ＨＴＭＬ又はＸＨＴＭＬの形式の入力データに対応する印
刷をより早いタイミングで開始することができるようになる。
【００２１】
また、本発明のもうひとつの態様は、印刷装置と、印刷対象の画像を所定の高さに区分
したバンドごとに行う印刷処理を、印刷装置に次々に実行させる印刷制御装置とを備える
印刷システムであって、印刷制御装置は、印刷対象の画像をマークアップ言語で記述した
入力データを受け付ける入力手段と、入力データを解釈して、印刷対象の画像を描画する
ための描画命令を取得する第１の解釈手段と、入力データを解釈して、印刷処理の実行順
が先頭より所定数までのバンドである先頭バンドに掛かる描画範囲を有した優先描画命令
を探索する第２の解釈手段とを備え、印刷装置は、優先描画命令を展開して先頭バンドの
バンドデータを生成してから、描画命令を展開して先頭バンド以降のバンドについてのバ
ンドデータを生成する展開手段と、バンドデータが生成されると、当該バンドデータに従
う印刷処理を実行する印刷処理部とを備えることを特徴とする。
【００２２】
この構成によれば、印刷を開始するタイミングを早めた、利便性の高い印刷システムを
得ることができる。
【００２３】
また、本発明は方法の発明とすることができる。すなわち、本発明は、印刷対象の画像
を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々に実行させる印刷
装置の制御方法であって、印刷対象の画像をマークアップ言語で記述した入力データを受
け付ける入力工程と、入力データを解釈して、印刷対象の画像を描画するための描画命令
を取得する第１の解釈工程と、入力データを解釈して、印刷処理の実行順が先頭より所定
数までのバンドである先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第２
の解釈工程と、優先描画命令を展開して先頭バンドのバンドデータを生成する第１の展開
工程と、描画命令を展開して先頭バンド以降のバンドについてのバンドデータを生成する
第２の展開工程と、バンドデータが生成されると、当該バンドデータに従う印刷処理を印
刷装置に行わせる印刷制御工程とを備えることを特徴とする。
【００２４】
さらに、本発明はプログラム及びそのプログラムを記録した記録媒体とすることができ
る。本発明は、印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印
刷装置に次々に実行させるためのドライバプログラムであって、コンピュータを、印刷対
象の画像をマークアップ言語で記述した入力データを受け付ける入力手段、入力データを
解釈して、印刷対象の画像を描画するための描画命令を取得する第１の解釈手段、入力デ
ータを解釈して、印刷処理の実行順が先頭より所定数までのバンドである先頭バンドに掛
かる描画範囲を有した優先描画命令を探索する第２の解釈手段、優先描画命令を展開して
先頭バンドのバンドデータを生成してから、描画命令を展開して先頭バンド以降のバンド
についてのバンドデータを生成する展開手段、バンドデータが生成されると、印刷装置と
の通信を行う通信手段を介して当該バンドデータを印刷装置に順次供給して、当該バンド
データに従う印刷処理を印刷装置に行わせる印刷制御手段、として機能させることを特徴
とする。
【００２５】
このドライバプログラムを記録した記録媒体としては、フレキシブルディスク、ＣＤ−
ＲＯＭ、ＤＶＤ−ＲＯＭ、ＩＣカード、又はメモリカードなどコンピュータが読み取り可
能な種々の媒体を利用することができる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明を具体化した実施形態について図面を参照して説明する。
【００２７】
図１は、本実施形態に係る印刷システムの構成を示したブロック図である。図１に示す
ように、印刷システム１は、ホストコンピュータ（印刷制御装置）２及びプリンタ（印刷
装置）３を備えている。
【００２８】
ホストコンピュータ２は、例えば汎用のパーソナルコンピュータであり、図１に示すよ
うに、ＣＰＵ２０、ＲＯＭ２１、ＲＡＭ２２、ハードディスク（ＨＤ）２３、ＣＤ−ＲＯ
Ｍドライブ２４、ネットワークインターフェイス（ネットワークＩ／Ｆ）２５、及び通信
インターフェイス（通信Ｉ／Ｆ）２６を備えている。通信Ｉ／Ｆ２６は、ケーブルを介し
てプリンタ３が接続されており、ホストコンピュータ２とプリンタ３とは相互にデータ通
信可能となっている。また、ネットワークＩ／Ｆ２５はＬＡＮケーブルなどを介してネッ
トワークサーバ４と接続されており、ネットワークサーバ４と所定のプロトコルに従う通
信を行うことにより、ホストコンピュータ２はインターネットに接続可能である。
【００２９】
ＣＰＵ２０は、ホストコンピュータ２の各構成を制御する部分であり、ハイパー・スレ
ッディング・テクノロジなどのマルチスレッドに対応させる技術や、処理単位となるプロ
セッサコアを複数個有することにより、複数の処理を並列に実行可能な構成になっている
。これにより、ＣＰＵ２０は、後述する第１ＸＭＬ解釈部として行う処理と第２ＸＭＬ解
釈部として行う処理とを並列に実行する。もっとも、２つ以上のＣＰＵを備えた構成とす
ることにより、第１ＸＭＬ解釈部、第２ＸＭＬ解釈部として行う処理を並列処理してもよ
い。
【００３０】
ＲＯＭ２１はホストコンピュータ２を制御するための所定のプログラムなどが記録され
た不揮発性のメモリ、ＲＡＭ２２はワーキングメモリなどに用いる汎用のメモリである。
【００３１】
ＨＤ２３は、アプリケーションプログラムや本発明に係るドライバプログラムなどを記
録している。なお、ドライバプログラムはＨＤ２３に予め記録されていてもよいし、ＣＤ
−ＲＯＭ５などの記録媒体に記録された形態で供給され、ＣＰＵ２０がＣＤ−ＲＯＭドラ
イブ２４によりＣＤ−ＲＯＭ５からプログラムを読み出し、読み出したプログラムをＨＤ
２３に記録するものとしてもよい。
【００３２】
そして、ＣＰＵ２０が、所定のオペレーションシステムの下で、ＨＤ２３に記録された
アプリケーションプログラムを実行することによりアプリケーション１００が機能し、ド
ライバプログラムを読み出して実行することによりプリンタドライバ２００が機能する（
図２参照）。
【００３３】
アプリケーション１００は、文書作成ソフトウェアやウェブブラウザなどのプリンタ３
に対する印刷要求元である。アプリケーション１００は、文書作成ソフトウェアにより作
成されたＸＭＬドキュメントや、ウェブブラウザがネットワークサーバ４と通信するよう
にしてインターネットから取得したＸＭＬドキュメントなどを印刷の対象として、印刷要
求及びＸＭＬドキュメントを含む所定のフォーマットの印刷データをプリンタドライバ２
００に受け渡す処理を行う。
【００３４】
プリンタドライバ２００は、アプリケーション１００から印刷データを受け取ると、Ｘ
ＭＬドキュメント（入力データ）を解釈して描画処理を行うことにより、プリンタ３が処
理可能なフォーマットの画像データを生成し、この印刷用の画像データを通信Ｉ／Ｆ２６
を介してプリンタ３に送信する部分である。これらの処理を行うため、図２に示すように
、プリンタドライバ２００は、制御部２１０、ＸＭＬパース部２２０及びレンダリング部
２３０を備えている。
【００３５】
制御部２１０は、ＸＭＬパース部２２０及びレンダリング部２３０を制御して、ＸＭＬ
ドキュメントに対する各種の処理を行わせる部分である。そのため、制御部２１０は、ア
プリケーション１００から受け渡されたＸＭＬドキュメントに入力処理を行うＸＭＬドキ
ュメント入力部（入力手段）２１１と、ＸＭＬパース部２２０及びレンダリング部２３０
とのデータ授受を制御するデータ制御部２１２と、バンドデータをプリンタ３に出力して
バンドごとの印刷処理を行わせる印刷制御部２１３とを有している。
【００３６】
ＸＭＬパース部２２０は、ＸＭＬドキュメントを解釈してＸＭＬドキュメントの描画内
容を表す描画命令を取得し、解釈して取得した描画命令を制御部２１０に受け渡す部分で
ある。このＸＭＬパース部２２０は、第１ＸＭＬ解釈部２２１と第２ＸＭＬ解釈部２２２
とを有している。
【００３７】
第２ＸＭＬ解釈部２２２は、ＸＭＬドキュメントを解釈して得られる複数の描画命令の
うち、先頭バンド（バンド０）を描画するために必要な描画命令に対応する記述を特定す
る処理を行う。具体的には、ＸＭＬドキュメントの記述を先頭から順番に解釈して、先頭
バンドに掛かる描画範囲の描画命令を探索することにより、先頭バンドを描画するために
必要な描画命令が記述された行番号を特定する処理を行う。なお、ここで探索された、先
頭バンドを描画するために必要な描画命令を、以下では「優先描画命令」と呼ぶことにす
る。
【００３８】
第１ＸＭＬ解釈部２２１は、ＸＭＬドキュメントの記述を解釈して描画命令を取得する
部分である。そのため、まず、ＸＭＬドキュメントの記述のうち、第２ＸＭＬ解釈部２２
２が特定した行番号の記述を解釈して、優先描画命令を取得する処理を行う。そして、第
１ＸＭＬ解釈部２２１は、この先頭バンド用の描画命令を取得して制御部２１０に受け渡
すと、先頭バンド以降のバンドを処理するため、ＸＭＬドキュメントの先頭の記述から順
番に解釈し、記述順に描画命令を取得して、制御部２１０に順次受け渡す処理を行う。な
お、このとき取得される描画命令を、以下では「優先描画命令」に対して「通常の描画命
令」と呼ぶことにする。
【００３９】
レンダリング部２３０は、制御部２１０を介してＸＭＬパース部２２０から受け渡され
た描画命令をビットマップ形式のオブジェクト画像に展開し、展開したオブジェクト画像
を配置するようにして、ビットマップ形式の画像データを生成するレンダリング処理を実
行する。そして、生成した画像データは、プリンタ３に出力するためいったん制御部２１
０に受け渡す処理を行う。
【００４０】
また、ＸＭＬパース部２２０は、上述したように、先頭バンド用の優先描画命令に続け
て先頭バンド以降のバンドの通常の描画命令を受け渡すようにしており、レンダリング部
２３０は、これらの描画命令を制御部２１０を介して受け取った順番に処理する。すなわ
ち、レンダリング部２３０は、先頭バンド用の優先描画命令から先頭バンドのバンドデー
タを生成し制御部２１０に受け渡してから、続けて受け取った通常の描画命令から先頭バ
ンド以降のバンドデータを生成し、制御部２１０に受け渡している。
【００４１】
制御部２１０がレンダリング部２３０からバンドデータを受け取ると、印刷制御部２１
３は、そのバンドデータをプリンタ３に出力するようにして、プリンタ３にバンドデータ
に従う色変換・スクリーン処理などの印刷処理を次々に行わせる。これにより、プリンタ
３に、先頭バンドを印刷させてから、先頭バンド以降のバンドを次々に印刷させるように
して、ＸＭＬドキュメントに記述された印刷対象となる画像全体を印刷させる。
【００４２】
なお、印刷処理のうちの一部、例えば色変換処理についてはホストコンピュータ側で行
って、色変換後のバンドデータをプリンタ３に出力するようにしてもよい。
【００４３】
このように、本実施形態に係るプリンタドライバ２００は、先頭バンド以降のバンドに
ついての通常の描画命令を展開する前に、先頭バンドについての優先描画命令を優先的に
展開して先頭バンドのバンドデータを生成し、先頭バンドについての印刷処理をプリンタ
３に行わせている。すなわち、先頭バンドについての処理は、先頭バンド以外のバンドよ
り優先して行うようにしている。
【００４４】
次に、ＸＭＬドキュメントが入力された際にプリンタドライバ２００が行う詳細な処理
について、図３を参照しながら、図４〜図７のフローチャートに従って順番に説明する。
なお、図３は、制御部２１０、ＸＭＬパース部２２０及びレンダリング部２３０間でのデ
ータの動きを示した図であり、図４は制御部２１０、図５は第２ＸＭＬ解釈部２２２、図
６は第１ＸＭＬ解釈部２２１、図７はレンダリング部２３０が行う処理手順を示している
。
【００４５】
制御部２１０は、アプリケーション１００からＸＭＬドキュメントを受け取ると図４に
示す処理を開始する。処理を開始すると、まず、ステップＳ１００において、ＸＭＬドキ
ュメント入力部２１１は入力されたデータがＸＭＬドキュメントであることを認識して入
力処理を行う（図３（１）参照）。
【００４６】
次に、ステップＳ１１０では、データ制御部２１２は、入力されたＸＭＬドキュメント
をＸＭＬパース部２２０に受け渡す（図３（２）参照）。
【００４７】
ここで、実際には、ＸＭＬドキュメントを受け渡した後、制御部２１０は後述するステ
ップＳ１２０の処理を行うが、説明の便宜のため、以下では、制御部２１０から受け渡さ
れたＸＭＬドキュメントに対してＸＭＬパース部２２０の第２ＸＭＬ解釈部２２２が行う
処理から説明する。
【００４８】
第２ＸＭＬ解釈部２２２は、データ制御部２１２からＸＭＬパース部２２０にＸＭＬド
キュメントが受け渡されると図５に示す処理を開始する。処理を開始すると、ステップＳ
２００において、受け渡されたＸＭＬドキュメントを構成する記述のうち、未処理の記述
があるか否かを判断して、未処理の記述があれば（ステップＳ２００：Ｙｅｓ）、ステッ
プＳ２１０に進む。未処理の記述がなければ（ステップＳ２００：Ｎｏ）、ステップＳ２
５０に進む。
【００４９】
ステップＳ２１０に処理が進むと、第２ＸＭＬ解釈部２２２は、ＸＭＬドキュメントの
データを解釈（パース）して、描画命令の描画範囲を取得する。なお、ここで行うパース
は描画命令単位で行う処理であり、ＸＭＬドキュメントの記述を順番に処理して、１つの
描画命令についての描画範囲を取得するとステップＳ２２０に進む。
【００５０】
ステップＳ２２０では、第２ＸＭＬ解釈部２２２は、取得した描画命令を判断の対象と
して、判断対象の描画命令の描画範囲が先頭バンドのバンド領域に掛かっているか否かを
判断する。
【００５１】
このときの処理について図８に示すＸＭＬドキュメント及び図９に示す描画例を用いて
説明する。図８に示すように、ＸＭＬドキュメントは、各行ごとに記述されたタグ及びタ
グに囲まれる部分に描画内容が記述されることにより構成されている。図８の例では、左
端に示した行番号に従うと、「３」，「４」行目及び「ｍ」，「ｍ＋１」行目に描画内容
の記述を含んでいる。
【００５２】
具体的には、図８に示すＸＭＬドキュメントによれば、行番号「３」の記述により描画
開始位置Ａ（ｘ＝ｘ１，ｙ＝ｙ１）が指定され、行番号「４」の記述により描画開始位置
Ａから、位置Ｂ（ｘ２，ｙ１），Ｃ（ｘ２，ｙ２），Ｄ（ｘ１，ｙ２）を順番に通って描
画開始位置Ａに戻る線からなる１つのオブジェクトＯＢ（４）を描画する描画内容が取得
される。同様に、行番号「ｍ」の記述により描画開始位置Ｅ（ｘ３，ｙ３）が指定され、
行番号「ｍ＋１」の記述により描画開始位置Ｅから、位置Ｆ（ｘ４，ｙ３），Ｇ（ｘ４，
ｙ４），Ｈ（ｘ３、ｙ４）を順番に通って描画開始位置Ｅに戻る線からなる１つのオブジ
ェクトＯＢ（ｍ＋１）を描画する描画内容が指定される。したがって、Ｙ方向について、
オブジェクトＯＢ（４）の描画範囲は「ｙ１〜ｙ２」、オブジェクトＯＢ（ｍ＋１）の描
画範囲は「ｙ３〜ｙ４」となる。
【００５３】
ここで、用紙搬送方向は用紙の短辺方向（Ｘ方向）又は長辺方向（Ｙ方向）であるが、
用紙搬送方向はＹ方向であるものとすると、バンド領域はＹ方向に一定のバンド幅ＢＨご
とに区分され、先頭バンド（バンド０）の範囲はＹ方向について「０〜ＢＨ」となる。
【００５４】
ステップＳ２２０の判断では、第２ＸＭＬ解釈部２２２は、先頭バンドの範囲が判断対
象の描画命令の描画範囲に掛かっているか、すなわち範囲の重複が一部にでも存在してい
るか否かを判断することにより行う。例えば、図９の例に示すように、「ｙ１，ｙ２，ｙ
４＞ＢＨ＞ｙ３」である場合、Ｙ方向の描画範囲「ｙ３〜ｙ４」であるオブジェクトＯＢ
（ｍ＋１）は、「ｙ３〜ＢＨ」の範囲で先頭バンドの範囲と一部重複する。このとき、オ
ブジェクトＯＢ（ｍ＋１）の描画命令の描画範囲は、先頭バンドのバンド領域に掛かって
いると判断される。一方、オブジェクトＯＢ（４）の描画範囲「ｙ１〜ｙ２」は先頭バン
ドの範囲と重複していないので、オブジェクトＯＢ（４）の描画命令の描画範囲は、先頭
バンドのバンド領域に掛かっていないと判断される。こうして、描画範囲が先頭バンドに
掛かっていれば（ステップＳ２２０：Ｙｅｓ）、ステップＳ２３０に進み、先頭バンドに
掛かっていなければ（ステップＳ２２０：Ｎｏ）、ステップＳ２００に戻ってＸＭＬドキ
ュメントに含まれる次の描画命令の記述について処理を行う。
【００５５】
なお、図８，９の例では図形のオブジェクトを描画するときの一例について説明したが
、ＸＭＬドキュメントの描画内容としてはこれに限られることなく、テキストやビットマ
ップ形式などのイメージであってもよい。
【００５６】
ステップＳ２３０に処理が進むと、第２ＸＭＬ解釈部２２２は、判断対象の描画命令を
優先描画命令に設定する。図８，９の例であれば、描画範囲が重複するオブジェクトＯＢ
（ｍ＋１）の記述部分である、「ｍ」、「ｍ＋１」行目の記述が優先描画命令に対応する
。
【００５７】
優先描画命令を設定すると、ステップＳ２４０に処理が進んで、優先描画命令に対応す
る記述の行番号を第１ＸＭＬ解釈部２２１に通知する（図３（３）参照）。そして、ステ
ップＳ２００に戻って、ＸＭＬドキュメントに含まれる次の記述について処理を行う。
【００５８】
また、ステップＳ２００において、受け取ったＸＭＬドキュメントの全ての記述につい
て処理を終えると（ステップＳ２００：Ｎｏ）、ステップＳ２５０に進んで、第２ＸＭＬ
解釈部２２２は、第１ＸＭＬ解釈部２２１に探索終了を通知して、図５に示した処理を終
了する。
【００５９】
次に、第１ＸＭＬ解釈部２２１が行う処理について説明する。データ制御部２１２から
ＸＭＬパース部２２０にＸＭＬドキュメントが受け渡されると、第１ＸＭＬ解釈部２２１
は、図６に示す処理を開始する。処理を開始すると、まず、ステップＳ３００において、
第１ＸＭＬ解釈部２２１は、第２ＸＭＬ解釈部２２２からのデータを受け取ったか否かを
判断する。第２ＸＭＬ解釈部２２２からデータを受け取っていなければ（ステップＳ３０
０：Ｎｏ）、所定の時間経過後、再びステップＳ３００の判断を行うようにして、データ
受信を監視し続ける。
【００６０】
データを監視し続けて、第２ＸＭＬ解釈部２２２からデータを受け取ると（ステップＳ
３００：Ｙｅｓ）、ステップＳ３１０に処理が進んで、第１ＸＭＬ解釈部２２１は、受け
取ったデータが行番号通知であるか否かを判断する。
【００６１】
受け取ったデータが行番号通知であれば（ステップＳ３１０：Ｙｅｓ）、ＸＭＬドキュ
メントについて該当する行番号の記述を解釈することにより優先描画命令を取得して、優
先描画命令をＲＡＭ２２に格納する（ステップＳ３２０、図３（４）参照）。
【００６２】
次に、ステップＳ３３０では、優先描画命令を制御部２１０に受け渡す（図３（５）参
照）。ここで受け渡すデータは、優先描画命令である描画命令の格納先を示すアドレス情
報に、優先描画命令である旨のフラグが付与されたデータ形式になっている。
【００６３】
なお、第１ＸＭＬ解釈部２２１は、後述する先頭バンド以降のバンドについての処理に
おいて、未処理となる記述部分を判断するため、優先描画命令が取得された記述の行番号
は、処理済みの行として、ＲＡＭ２２の所定の記憶領域上のテーブルに記録して、管理し
ている。また、描画範囲が先頭バンド及び先頭バンド以外の他のバンドに掛かっている描
画命令については、他のバンドの処理において当該描画命令を処理する必要があるため、
先頭バンドの処理時に処理されていてもテーブル上では未処理として管理する。
【００６４】
また、ステップＳ３１０において、第１ＸＭＬ解釈部２２１が受け取ったデータが行番
号通知でなければ（ステップＳ３１０：Ｎｏ）、ステップＳ３４０に処理が進んで、第１
ＸＭＬ解釈部２２１は受け取ったデータが探索終了通知であるか否かを判断する。探索終
了通知でなければ（ステップＳ３４０：Ｎｏ）、第２ＸＭＬ解釈部２２２から行番号通知
をさらに受け取る可能性があるので、ステップＳ３００に戻って、受け取るデータを監視
し続ける。
【００６５】
受け取ったデータが探索終了通知であれば（ステップＳ３４０：Ｙｅｓ）、ステップＳ
３５０に進んで、以後、第１ＸＭＬ解釈部２２１は、ＸＭＬドキュメントの全ての記述を
解釈するための処理を行う。
【００６６】
具体的には、ステップＳ３５０において、第１ＸＭＬ解釈部２２１は、上述した処理済
みの行番号を管理するテーブルを参照して、ＸＭＬドキュメントについて未処理の記述が
あるか否かを判断する。未処理のデータがあれば（ステップＳ３５０：Ｙｅｓ）、ステッ
プＳ３６０に進んでパースして通常の描画命令を取得し、ＲＡＭ２２に格納する（図３（
６）参照）。そして、ステップＳ３７０において、取得した通常の描画命令を制御部２１
０に受け渡してから（図３（７）参照）、ステップＳ３５０の処理に戻る。
【００６７】
パースして取得した描画命令を順次受け渡すようにして、ＸＭＬドキュメントの全デー
タが処理されると、ステップＳ３５０の判断において未処理のデータがなくなり、ステッ
プＳ３８０に進む（ステップＳ３５０：Ｎｏ）。
【００６８】
ステップＳ３８０に処理が進むと、第１ＸＭＬ解釈部２２１は、ＸＭＬパース部２２０
が制御部２１０からのデータ終了通知を受け取ったか否かを判断して、受け取っていなけ
れば（ステップＳ３８０：Ｎｏ）、さらにＸＭＬドキュメントのデータを受け取る可能性
があるので、所定の時間経過後にステップＳ３５０に戻る。データ終了通知を受け取って
いれば、ＸＭＬドキュメントの全データに対する描画命令が取得されたと判断して、ステ
ップＳ３９０に進んで、制御部２１０にデータ終了通知を受け渡してから、図６に示した
処理を終了する。
【００６９】
このように、ＸＭＬパース部２２０においては、まず、第２ＸＭＬ解釈部２２２が、Ｘ
ＭＬドキュメントより先頭バンドにかかる描画範囲を有する描画命令の記述部分を特定し
ている。そして、第１ＸＭＬ解釈部２２１は、特定された記述から先頭バンドの描画に必
要な優先描画命令を取得して、アドレス指定の形式で制御部２１０に受け渡している。そ
れから、ＸＭＬドキュメントの未処理の記述を解釈して通常の描画命令を取得して、通常
の描画命令の受け渡しを終えると、データ終了通知を制御部２１０に受け渡している。
【００７０】
次に、図４のフローチャートに戻って、制御部２１０がＸＭＬパース部２２０からデー
タを受け取った際に行う処理手順について説明する。
【００７１】
制御部２１０は、上記したＸＭＬドキュメントの入力処理（ステップＳ１００及びステ
ップＳ１１０）を終了したタイミングでステップＳ１２０の処理を開始している。ステッ
プＳ１２０では、データ制御部２１２は、ＸＭＬパース部２２０から受け渡されるデータ
を監視するようにして、ＸＭＬパース部２２０からデータを受信したか否かを判断し続け
ている。データを受信していなければ（ステップＳ１２０：Ｎｏ）、再びステップＳ１２
０の処理を行うようにして監視を続行する。そして、ＸＭＬパース部２２０からデータを
受信すると（ステップＳ１２０：Ｙｅｓ）、ステップＳ１３０に進む。
【００７２】
ステップＳ１３０に処理が進むと、データ制御部２１２は、受信したデータが描画命令
であるか否かを判断する。受信したデータが描画命令（すなわち、優先描画命令又は通常
の描画命令）であれば（ステップＳ１３０：Ｙｅｓ）、ステップＳ１４０に進む。描画命
令でなければ（ステップＳ１３０：Ｎｏ）、ステップＳ１５０に進む。
【００７３】
ステップＳ１４０に処理が進むと、データ制御部２１２は、描画命令に示されるアドレ
ス指定先のＲＡＭ２２にアクセスして、描画命令の実データを読み出し（図３（８）参照
）、描画命令の実データをレンダリング部２３０に受け渡す（図３（９）参照）。
【００７４】
ステップＳ１４０において描画命令がレンダリング部２３０に受け渡されると、ステッ
プＳ１２０に処理が戻るようにして、データ制御部２１２は次にＸＭＬパース部２２０か
ら送信されるデータの監視を続行する。
【００７５】
また、ステップＳ１３０の処理において受信したデータが描画命令でなければ（ステッ
プＳ１３０：Ｎｏ）、ステップＳ１５０に処理が進んで、受信したデータがデータ終了通
知であるか否かを判断する。受信したデータがデータ終了通知でなければ（ステップＳ１
５０：Ｎｏ）、ステップＳ１２０に戻ってデータの監視を続行する。データ終了通知であ
れば（ステップＳ１５０：Ｙｅｓ）、ステップＳ１６０に進んで、ＸＭＬドキュメントに
ついての描画命令の送信が終了した旨のデータ終了通知を、レンダリング部２３０に通知
してから、図４に示した処理を終了する。
【００７６】
このように、制御部２１０は、ＸＭＬパース部２２０から次々に受け取る、アドレス指
定の描画命令を、実データに置き換えてレンダリング部２３０に順次受け渡す処理を行っ
ている。また、ＸＭＬパース部２２０から受け取る描画命令の順番は、優先描画命令の次
に通常の描画命令となるので、レンダリング部２３０には、優先描画命令の受け渡しを終
えてから、次に通常の描画命令をレンダリング部２３０に受け渡している。そして、全描
画命令の受け渡しを終えると、レンダリング部２３０にデータ終了通知を受け渡している
。
【００７７】
次に、レンダリング部２３０が行う処理手順について、図７のフローチャートに従って
説明する。
【００７８】
図７に示す処理を開始すると、ステップＳ４００において、レンダリング部２３０は制
御部２１０からデータを受けとったか否かを判断して、新たにデータを受け取っていなけ
れば（ステップＳ４００：Ｎｏ）、所定の時間経過後に再びステップＳ４００の判断を行
うようにして、新たにデータを受け取っていればステップＳ４１０に進む（ステップＳ４
００：Ｙｅｓ）。
【００７９】
ステップＳ４１０に処理が進むと、レンダリング部２３０は受け取ったデータが優先描
画命令であるか否かを判断する。具体的には、優先描画命令に付与されたフラグに従う判
断を行って、優先描画命令であれば（ステップＳ４１０：Ｙｅｓ）、ステップＳ４２０に
進む。優先描画命令でなければ（ステップＳ４１０：Ｎｏ）、ステップＳ４３０に進む。
【００８０】
ステップＳ４２０に処理が進むと、レンダリング部２３０は、受け取った描画命令を展
開する。そして、展開したオブジェクト画像を、受け取った描画命令の描画開始位置に配
置して、ビットマップ形式の画像データにオブジェクト画像を埋め込む処理を行う。この
レンダリング処理により、処理対象の優先描画命令を反映させた画像データが得られる。
レンダリング処理を行うと、ステップＳ４１０に戻って、次に受け取るデータについて処
理を行うようにして、次々に受け渡される優先描画命令について、次々にレンダリング処
理を行う。
【００８１】
ステップＳ４１０において、受け取ったデータが優先描画命令でなければ（ステップＳ
４１０：Ｎｏ）、ステップＳ４３０に進んで、先頭バンドのバンドデータを生成する。す
なわち、先頭バンドを展開するために必要となる全ての優先描画命令についてレンダリン
グ処理が行われたので、レンダリング部２３０は、生成された画像データから先頭バンド
の領域を抜き出すようにして先頭バンドのバンドデータを生成する。
【００８２】
次に、ステップＳ４４０において、レンダリング部２３０は、先頭バンドのバンドデー
タを出力する。具体的には、制御部２１０に先頭バンドのバンドデータを受け渡して、制
御部２１０の印刷制御部２１３が、通信Ｉ／Ｆ２６を介して先頭バンドのバンドデータを
プリンタ３に送信する。これにより、ホストコンピュータ２はプリンタ３に先頭バンドの
印刷処理を開始させる。
【００８３】
次に、以降に受け取る通常の描画命令についての処理を行う。そのため、レンダリング
部２３０は、ステップＳ４５０に処理が進んで、レンダリング部２３０は、次に受け取る
データが通常の描画命令であるか否かを判断する。通常の描画命令であれば（ステップＳ
４５０：Ｙｅｓ）、ステップＳ４６０に進んで、通常の描画命令に従うレンダリング処理
を行って、受け取った通常の描画命令を画像データに反映させる。処理対象の描画命令に
ついてレンダリング処理を行うと、ステップＳ４５０に戻って、次に受け取るデータにつ
いて処理を行うようにして、次々に受け渡される通常の描画命令について、次々にレンダ
リング処理を行う。
【００８４】
また、ステップＳ４５０において受け取ったデータが通常の描画命令でなければ（ステ
ップＳ４５０：Ｎｏ）、ステップＳ４７０に処理が進んで、レンダリング部２３０は、デ
ータ終了通知であるか否かを判断する。データ終了通知でなければ（ステップＳ４７０：
Ｎｏ）、ステップＳ４５０に戻って、次に受け取るデータについて処理を行う。
【００８５】
受け取ったデータがデータ終了通知であれば（ステップＳ４７０：Ｙｅｓ）、制御部２
１０から次々に受け取る描画命令に対してステップＳ４６０のレンダリング処理を次々に
行うようにして、ＸＭＬドキュメント全体に対応する画像データが生成済みであるので、
ステップＳ４８０に進んで、生成した画像データの画像をバンドごとに区分して、先頭バ
ンド以降の各バンドごとに行うバンドデータを生成する。そして、ステップＳ４９０にお
いて生成したバンドデータを次々に制御部２１０に受け渡し、受け渡しを終えると図７に
示した処理を終了する。制御部２１０の印刷制御部２１３は、受け渡されたバンドデータ
を通信Ｉ／Ｆ２６を介してプリンタ３に次々に送信することにより、ホストコンピュータ
２はプリンタ３に、先頭バンド以降のバンドごとに印刷処理を次々に行わせる。これによ
り、全バンドについての印刷処理が行われて、ＸＭＬドキュメントに対応した印刷がなさ
れる。
【００８６】
なお、ステップＳ１００及びステップＳ１１０の処理が入力工程、ステップＳ３００〜
ステップＳ３９０の処理が第１の解釈工程、ステップＳ２００〜ステップＳ２５０の処理
が第２の解釈工程、ステップＳ４２０及びステップＳ４３０の処理が第１の展開工程、ス
テップＳ４６０及びステップＳ４８０の処理が第２の展開工程、ステップＳ４４０及びス
テップＳ４９０の処理が印刷制御工程に相当する。
【００８７】
以上に説明したように、本実施形態では、通常の描画命令の展開前に、先頭バンドの描
画に必要となる優先描画命令を展開し、優先描画命令から得られる画像データから先頭バ
ンドのバンドデータを生成して、プリンタ３に先頭バンドの印刷処理を開始させている（
ステップＳ４４０）。そして、先頭バンドのバンドデータの生成後に、通常の描画命令を
展開して、先頭バンド以降のバンドデータを順次プリンタ３に送り出すようにしている（
ステップＳ４９０）。
【００８８】
以下、本実施形態の効果を記載する。
【００８９】
（１）プリンタ３は、通常の描画命令の展開前に先頭バンドのバンドデータを受け取る
ステップＳ４４０のタイミングで、印刷処理を開始することができるので、ＸＭＬオブジ
ェクトの記述から得られる全ての描画命令を展開してからバンドデータを生成する必要が
ある従来の処理方法に比べて、先頭バンドの印刷処理を開始するタイミングを早めること
ができる。また、プリンタ３が先頭バンドについての印刷処理の実行中に、プリンタドラ
イバ２００は、通常の描画命令を展開して先頭バンド以降のバンドデータを生成するため
の処理を開始しているので、ＸＭＬドキュメントに対応する印刷処理をより早いタイミン
グで終えることができる。これにより、ユーザにとって印刷完了までの待ち時間が短縮す
ることになるので、ユーザにとっての利便性が向上する。
【００９０】
（２）第２ＸＭＬ解釈部２２２が、先頭バンドに掛かる描画範囲を有する優先描画命令
の行番号を検出すると、第１ＸＭＬ解釈部２２１が、この行番号を受け取り該当する記述
を解釈する。このとき、第１ＸＭＬ解釈部２２１が行う処理と第２ＸＭＬ解釈部２２２が
行う処理とを並列に実行しているので、第１ＸＭＬ解釈部２２１の処理中にも、第２ＸＭ
Ｌ解釈部２２２は、先頭バンドに掛かる次の描画命令を探索している。これにより、処理
効率が高まり、より早いタイミングで印刷を開始できるようになる。
【００９１】
以上、本発明の一実施形態を説明したが、本発明はこうした実施の形態に何ら限定され
るものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施することも
できる。以下、変形例を挙げて説明する。
【００９２】
（変形例１）上記実施形態では、印刷制御装置としてのホストコンピュータ側のプリン
タドライバ２００が、パース及びレンダリングの処理を行ったが、本発明はこの態様に限
られない。例えば、ホストコンピュータ側でパースの処理を行い、プリンタ側でレンダリ
ングの処理を行うようにしてもよい。すなわち、図１０（ａ）に示すように、印刷システ
ム１は、制御部２１０及びＸＭＬパース部２２０を有するプリンタドライバ２００を備え
たホストコンピュータ２と、レンダリング部２３０、印刷処理部３００、及び印刷エンジ
ン３１０を備えたプリンタ３とを具備している。
【００９３】
この印刷システム１において、制御部２１０は、ＸＭＬパース部２２０が取得した優先
描画命令を通信Ｉ／Ｆ２６によりプリンタ３に受け渡して、プリンタ３側のレンダリング
部２３０は、受け取った優先描画命令に従ってレンダリング処理を行うことにより、先頭
バンドのバンドデータを生成する。先頭バンドのバンドデータを印刷処理部３００に受け
渡して、印刷処理を開始させると、ホストコンピュータ２より次に受け取る通常の描画命
令に従うレンダリング処理を次々に行うようにして、各バンドのバンドデータを生成して
、印刷処理部３００はこのバンドデータに従う印刷処理を行う。印刷処理部３００は、バ
ンドデータを印刷エンジン３１０に対応する画像信号に変換して、印刷エンジン３１０は
この画像信号に従って印刷を行う。これにより、印刷処理部３００が印刷処理を開始する
タイミングが早まり、印刷完了までの待ち時間を短縮することができる。
【００９４】
また、プリンタ側に印刷制御装置の構成を有したシステムであってもよい。すなわち、
図１０（ｂ）に示すように、プリンタ３は、ＸＭＬパース部２２０、レンダリング部２３
０、印刷処理部３００、及び印刷エンジン３１０を備えている。ホストコンピュータ２は
ＸＭＬドキュメントを含む印刷データをプリンタ３に送信して、ＸＭＬパース部２２０及
びレンダリング部２３０を有するプリンタ３が、パース及びレンダリングを、優先描画命
令、通常の描画命令の順に行うようにしてもよい。
【００９５】
（変形例２）上記実施形態では、先頭の１つのバンドを先頭バンドとして処理したが、
印刷処理の処理順が先頭から所定数のバンドを先頭バンドとして処理してもよい。このと
き、先頭から複数のバンドに掛かる描画命令を優先描画命令として扱って、上記実施形態
と同様の処理を行うとよい。
【００９６】
（変形例３）上記実施形態では、図９の例において、バンド０にオブジェクトの一部が
描画されるためにバンド０を先頭バンドとしたが、オブジェクトなどが描画されないバン
ドについては印刷処理を行うことがないため、オブジェクトを含む最初のバンドを先頭バ
ンドとするとよい。例えば、バンド０〜ｎ−１にはオブジェクトが描画されることなく、
バンドｎに初めてオブジェクトが描画される場合は、バンドｎを先頭バンドとして処理す
るとよい。また、このときは、先頭バンド以前のバンドについてはレンダリング処理を行
う必要がないため、ステップＳ４４０の処理において、先頭バンドのバンドデータに加え
て、オブジェクトが描画されていない先頭バンドより前のバンドのバンドデータを制御部
２１０に受け渡して、プリンタ３に出力するとよい。
【００９７】
（変形例４）展開後のデータ形式はビットマップ形式に限られない。例えば、バンドご
とに描画内容の描画命令を示す中間コードのデータを受け渡す印刷システムであれば、レ
ンダリング部２３０は描画命令を、中間コードデータ（画像データ）に展開する。このと
き、プリンタ３は、受け取る中間コードデータに、レンダリング処理・色変換処理・スク
リーン処理などの印刷処理を次々に行うようにして、処理するとよい。
【００９８】
（変形例５）上記実施形態では、ＸＭＬ形式のデータを処理する例について説明したが
、ＨＴＭＬ(Hypertext Markup Language)やＸＨＴＭＬ(Extensible Hypertext Markup La
nguage)などのマークアップ言語で記述されたデータを処理するようにしてもよい。
【００９９】
（変形例６）本発明は、プリンタに限られることなく、複写機やファックスに適用する
こともできる。
【図面の簡単な説明】
【０１００】
【図１】本実施形態に係る印刷システムの構成を示したブロック図。
【図２】ホストコンピュータの機能的構成を示したブロック図。
【図３】プリンタドライバ内におけるデータの動きを説明する説明図。
【図４】制御部が行う処理手順を示したフローチャート。
【図５】第２ＸＭＬ解釈部が行う処理手順を示したフローチャート。
【図６】第１ＸＭＬ解釈部が行う処理手順を示したフローチャート。
【図７】レンダリング部が行う処理手順を示したフローチャート。
【図８】ＸＭＬドキュメントの一例を示した図。
【図９】描画命令に従う描画例を示した図。
【図１０】第１の変形例を説明するための説明図、（ａ）、（ｂ）は変形例の一例を示した図。
【図１１】バンドを説明するための説明図。
【符号の説明】
【０１０１】
１…印刷システム、２…印刷制御装置としてのホストコンピュータ、３…印刷装置とし
てのプリンタ、４…ネットワークサーバ、５…記録媒体としてのＣＤ−ＲＯＭ、２０…Ｃ
ＰＵ、２１…ＲＯＭ、２２…ＲＡＭ、２３…ハードディスク、２４…ＣＤ−ＲＯＭドライ
ブ、２５…ネットワークインターフェイス、２６…通信インターフェイス、１００…アプ
リケーション、２００…プリンタドライバ、２１０…制御部、２１１…入力手段としての
ＸＭＬドキュメント入力部、２１２…データ制御部、２１３…印刷制御手段としての印刷
制御部、２２０…ＸＭＬパース部、２２１…第１の解釈手段としての第１ＸＭＬ解釈部、
２２２…第２の解釈手段としての第２ＸＭＬ解釈部、２３０…展開手段としてのレンダリ
ング、３００…印刷処理部、３１０…印刷エンジン。
【図１】
2008009593.tif 000003
【図２】
2008009593.tif 000004
【図３】
2008009593.tif 000005
【図４】
2008009593.tif 000006
【図５】
2008009593.tif 000007
【図６】
2008009593.tif 000008
【図７】
2008009593.tif 000009
【図８】
2008009593.tif 000010
【図９】
2008009593.tif 000011
【図１０】
2008009593.tif 000012
【図１１】
2008009593.tif 000013