(57)【要約】【課題】  複数のデータを含んだデータ群の受信が行われてから該データ群の初めの出力が行われるまでの時間長を短くする。【解決手段】  処理装置（２０）は、複数のデータを含んだデータ群を受信し、そのデータ群のうちの全てのデータが電子的なテンプレート（２６）に割り当てられたＸＨＴＭＬデータに基づくＤＯＭツリー（８２）を作成し終える前に、少なくとも１ページ分のＤＯＭツリーが生成された段階で、１ページ分のＤＯＭツリーを解析して１ページ分のレイアウトを完成し、該レイアウトの結果を出力する。【選択図】  図４
2006238248.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータを含んだデータ群のうちの少なくとも一つのデータを割り付けるための電子的なテンプレートを記憶する記憶域と、
前記データ群を受信する受信手段と、
前記受信したデータ群のうちの少なくとも一つのデータが前記テンプレートに割り付けられた第一の処理結果データを生成する第一の生成手段と、
前記第一の処理結果データに基づいて、レイアウトのための解析対象となる第二の処理結果データを生成する第二の生成手段と、
前記第二の処理結果データを解析することにより、前記少なくとも一つのデータをページに配置するためのレイアウトを行うレイアウト手段と、
前記レイアウトの結果を出力する出力手段と
を備え、
前記受信したデータ群のうちの全てのデータが前記テンプレートに割り当てられた前記第一の処理結果データに基づく前記第二の処理結果データを作成し終える前に、少なくとも１ページ分の前記第二の処理結果データが生成された段階で、１ページ分の前記第二の処理結果データを解析して１ページ分のレイアウトを完成し、該レイアウトの結果を出力する、
ことを特徴とする処理装置。
【請求項２】
前記第一の生成手段がページ単位の前記第一の処理結果データを生成する、
請求項１記載の処理装置。
【請求項３】
前記第二の生成手段による前記第二の処理結果データの生成と、前記レイアウト手段による前記レイアウトとを並行して行う、
請求項１記載の処理装置。
【請求項４】
複数のデータを含んだデータ群を受信するステップと、
前記受信したデータ群のうちの少なくとも一つのデータを電子的なテンプレートに割り付けた第一の処理結果データを生成するステップと、
前記第一の処理結果データに基づいて、レイアウトのための解析対象となる第二の処理結果データを生成するステップと、
前記第二の処理結果データを解析することにより、前記少なくとも一つのデータをページに配置するためのレイアウトを行うステップと、
前記レイアウトの結果を出力するステップと
を有し、
前記受信したデータ群のうちの全てのデータが前記テンプレートに割り当てられた前記第一の処理結果データに基づく前記第二の処理結果データを作成し終える前に、少なくとも１ページ分の前記第二の処理結果データが生成された段階で、１ページ分の前記第二の処理結果データを解析して１ページ分のレイアウトを完成し、該レイアウトの結果を出力する、
ことを特徴とする処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータを含んだデータ群の処理技術に関し、具体的には、例えば、氏名や連絡先等の項目群を含んだ単位データを複数個備えるアドレス帳データの処理に関する。
【背景技術】
【０００２】
データの処理装置の一種として、プリンタがある。従来、以下のようなプリンタ、すなわち、ＪＰＥＧ画像をデータソースから受信し、ＪＰＥＧ画像を組み込んだＸＨＴＭＬ（eXtensible Hyper Text Markup Language）の文書（以下、ＸＨＴＭＬ文書）を作成し、作成したＸＨＴＭＬ文書を解釈することにより、物理ページ上でのレイアウトを決めて、印刷を行うプリンタが知られている（例えば特許文献１）。
【０００３】
【特許文献１】特開２００４−１１４３２６号公報（例えば要約）。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、氏名や連絡先等の項目群を含んだ単位データを複数個備えるアドレス帳データを送信することができる携帯情報端末機（例えば携帯電話機）があり、その携帯情報端末機からアドレス帳データを受信し、受信したアドレス帳データに登録されている全件の単位データの一覧を印刷することができるプリンタが知られている。この種の印刷において、アドレス帳データを受信してから印刷が開始されるまでの時間をなるべく短くするのが望ましい。また、メモリ等の記憶資源の使用量を抑えられることが望ましい。
【０００５】
これらのことは、プリンタに限らず、他種の処理装置についても同様であると考えられる。
【０００６】
従って、本発明の目的は、複数のデータを含んだデータ群の受信が行われてから該データ群の初めの出力が行われるまでの時間長を短くすることにある。
【０００７】
本発明の別の目的は、受信したデータ群を出力するまでの処理における記憶資源の使用量を抑えることにある。
【０００８】
本発明の更なる目的は、後述の記載から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本発明の一つの側面に従う処理装置は、複数のデータを含んだデータ群のうちの少なくとも一つのデータを割り付けるための電子的なテンプレートを記憶する記憶域と、前記データ群を受信する受信手段と、前記受信したデータ群のうちの少なくとも一つのデータが前記テンプレートに割り付けられた第一の処理結果データを生成する第一の生成手段と、前記第一の処理結果データに基づいて、レイアウトのための解析対象となる第二の処理結果データを生成する第二の生成手段と、前記第二の処理結果データを解析することにより、前記少なくとも一つのデータをページに配置するためのレイアウトを行うレイアウト手段と、前記レイアウトの結果を出力する出力手段とを備える。前記処理装置は、前記受信したデータ群のうちの全てのデータが前記テンプレートに割り当てられた前記第一の処理結果データに基づく前記第二の処理結果データを作成し終える前に、少なくとも１ページ分の前記第二の処理結果データが生成された段階で、１ページ分の前記第二の処理結果データを解析して１ページ分のレイアウトを完成し、該レイアウトの結果を出力する。
【００１０】
第一の生成手段は、生成した第一の処理結果データを別の記憶域に格納することができる。第二の生成手段は、生成した第二の処理結果データをまた別の記憶域に格納することができる。
【００１１】
「第一の処理結果データ」は、例えば、ページという概念を持たない形式のデータ、具体的には、例えば、ＸＨＴＭＬ形式のデータとすることができる。
【００１２】
「第二の処理結果データ」も、例えば、ページという概念を持たない形式のデータ、具体的には、例えば、ＤＯＭ（Document Object Model）ツリーとすることができる。
【００１３】
一つの実施態様では、前記第一の生成手段が、ページ単位の前記第一の処理結果データを生成することができる。これにより、前記処理装置は、前記受信したデータ群のうちの全てのデータが前記テンプレートに割り当てられた前記第一の処理結果データに基づく前記第二の処理結果データを作成し終える前に、少なくとも１ページ分の前記第二の処理結果データを生成することができる。
【００１４】
一つの実施態様では、前記処理装置は、前記第二の生成手段による前記第二の処理結果データの生成と、前記レイアウト手段による前記レイアウトとを並行して行うことができる。
【００１５】
前述した各手段は、ハードウェア、コンピュータプログラム又はそれらの組み合わせにより実現することができる。
【００１６】
また、前記処理装置は、例えば、プリンタ、又は、プリンタにデータ群を送信することができるデータソースとすることができる。処理装置がプリンタの場合、前記出力手段は、レイアウトの結果を印刷することができる。処理装置がデータソースの場合、前記出力手段は、前記レイアウトの結果を表す印刷データを生成し、その印刷データを印刷装置に送信することができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して、本発明の一実施形態に係る処理装置が適用されたプリンタについての幾つかの実施例を説明する。
【実施例１】
【００１８】
図１は、本発明の第一の実施例に係るプリンタの構成を表す図である。
【００１９】
プリンタ２０は、種々の装置と通信することができる。例えば、プリンタ２０は、人間が携帯可能な情報端末機である携帯情報端末機（一例として携帯電話機）１０と通信することができる。その携帯情報端末機１０は、メモリ１１等の記憶装置に、アドレス帳データ１２を記憶している。アドレス帳データ１２は、所定のフォーマット、例えばvCardフォーマット（電子メール等で名前、住所、E-mailアドレス等の個人情報をやり取りするための規格）により構成されている。アドレス帳データ（vObjectと呼ばれるデータであっても良い）１２は、図２にその構成例を示すとおり、一以上のレコード１２Ａを含んでいる。各レコード１２Ａには、複数のレコード要素が含まれている。レコード要素としては、例えば、氏名、郵便番号、住所、電話番号、Ｅメールアドレス及び属性がある。携帯情報端末機１０は、ユーザの操作により、このようなアドレス帳データ１２の全体（又はユーザに選択された氏名等を含んだレコード）を、有線又は無線で（例えば赤外線通信で）、プリンタ２０に送信することができる。
【００２０】
再び図１を参照する。プリンタ２０は、操作部２１と、印刷部３７と、プリンタ制御部３０とを備えている。
【００２１】
操作部２１は、ユーザインターフェースであり、例えば、種々の情報を表示するためのディスプレイ画面や、種々の情報を入力するための複数のボタンを備えている（操作部２１は、タッチパネル式のものであってもよい）。操作部２１は、例えば、ユーザの操作により、ユーザに選択された印刷モードの選択を受けることができる。印刷モードの選択肢としては、例えば、アドレス帳データ１２を用いて宛名印刷面に宛名印刷を行うことを意味する宛名印刷モードと、アドレス帳データ１２に含まれる複数のレコード１２Ａ（又はそれに含まれている所定のレコード要素）の一覧の印刷を行うことを意味するインデックス印刷モードとがある。
【００２２】
印刷部３７は、入力された文字や画像等の情報を用紙に印刷する。印刷部３７は、例えば、プリンタ２０がインクジェットプリンタである場合には、インク滴を吐出する印刷ヘッド、印刷ヘッドを主操作方向に搬送するキャリッジ、用紙を副走査方向に送る紙送りモータ等から構成することができる。
【００２３】
プリンタ制御部３０は、印刷のための情報処理を行う部分である。プリンタ制御部３０は、例えば、EEPROM２７等の書き換え可能な不揮発性メモリと、データを一時的に記憶するためのRAM３１と、プリンタ２０の動作全体を制御するためのCPU３２と、CPU３２に読み込まれるコンピュータプログラム等を記憶したROM３３と、プリンタ２０の外部に存在する装置と通信するためのインターフェース回路（以下、通信IF）３４と、印刷部３７に情報を送信するためのインターフェース回路（以下、印刷IF）３５とを備えている。
【００２４】
EEPROM２７は、インデックス印刷レイアウト定義ファイル（以下、「定義ファイル」と略記）２６を記憶することができる。定義ファイル２６には、インデックス印刷のためのテンプレートに関する情報が記述されている。定義ファイル２６は、例えば、マークアップ言語で記述されたスクリプトファイルである。「マークアップ言語」とは、例えば、ＸＨＴＭＬ（eXtensible Hyper Text Markup Language）である。定義ファイル２６の構成例については後述する。なお、EEPROM２７には、宛名の印刷領域位置等が記述された宛名印刷用の定義ファイル（図示せず）も登録されていても良い。
【００２５】
RAM３１は、例えば、携帯情報端末機１０から通信IF３４を介して受信されたアドレス帳データ１２や、ＥＥＰＲＯＭ２７から読み出された定義ファイル２６等を記憶することができる。
【００２６】
ROM３３は、例えば、CPU３２に読み込まれるコンピュータプログラムの一つとして、印刷処理プログラム２２を記憶している。印刷処理プログラム２２は、CPU３２に読み込まれることにより動作することができる。印刷処理プログラム２２が行う処理動作については後述する。
【００２７】
CPU３２は、携帯情報端末機１０から受信したアドレス帳データ１２をRAM３１に記憶させることができる。また、CPU３２は、例えば、ＥＥＰＲＯＭ２７に記憶されている定義ファイル２６を読み出してＲＡＭ３１に記憶させることができる。CPU３２は、例えば、印刷モードとして操作部２１からインデックス印刷モードの指定を受けた後に、アドレス帳データ１２が受信された場合には、複数の定義ファイルの中からインデックス印刷用の定義ファイル２６を選択してＲＡＭ３１に読み出すことができる。また、ＣＰＵ３２は、操作部２１から指定された種類（例えば年賀状）のテンプレートが記述された定義ファイルを複数の定義ファイルの中から探してＲＡＭ３１に読み出すことができる。
【００２８】
CPU３２は、操作部２１からインデックス印刷モードを設定する旨の指令が入力されたならば、その旨を表す情報をRAM３１（或いはCPU３２の図示しないレジスタ）に設定し、その後に、アドレス帳データ１２を受信してRAM３１に記憶させた場合には、そのアドレス帳データ１２を印刷対象として印刷するための処理（この処理の詳細は後述する）を実行する。
【００２９】
図３Ａは、定義ファイル２６の構成概念例を示す。図３Ｂは、図３Ａに示した定義ファイル２６から導き出せるインデックス印刷用のレイアウトを示す。
【００３０】
定義ファイル２６には、用紙種類（例えば「インデックス印刷」）と、印刷領域の位置情報とが登録されている。
【００３１】
印刷領域の位置情報は、例えば、用紙上の或る矩形領域の左上頂点の座標と右下頂点の座標とのセットによって表すことができる。各座標は、所定の位置、例えば、用紙の左上頂点を原点とした場合の座標である。なお、印刷領域の位置情報は、別の方法、例えば、印刷領域を表す数式と、その数式中のパラメータ値とのセットによって表すこともできる。
【００３２】
この定義ファイル２６により、図３Ｂに示すように、インデックス印刷のレイアウトが定義されている。そのレイアウトは、例えば、図３Ｂに示すように、レコード１２Ａの印刷領域が縦に並んだものとすることができる。
【００３３】
以上が、定義ファイル２６の一例についての説明である。なお、定義ファイル２６には、より詳細な情報が記述されていても良い。例えば、各レコード１２Ａ毎の印刷領域について、その印刷領域におけるどの位置にどんなレコード要素を配置するかを表す情報も記述されていても良い。
【００３４】
図４は、本発明の第一実施例に係るプリンタ２０が行うインデックス印刷の処理の説明図である。
【００３５】
プリンタ２０が受信するアドレス帳データ１２には、前述した通り、複数のレコード１２Ａ、１２Ａ、…が含まれている。各レコード１２Ａは、複数のレコード要素を含み、複数のレコード要素には、例えば、氏名、住所、電話番号等のレコード要素が含まれている。各レコード１２Ａは、例えば、行と列とから成るデータテーブルの各行であっても良いし、一つのデータファイル上で第一の所定コード（例えば所定の開始タグ）と第二の所定コード（例えば所定の終了タグ）との間に記述されたデータであってもよい。
【００３６】
プリンタ２０には、例えば、複数のデータ記憶域として、受信バッファ３１Ａ、ＸＨＴＭＬデータ記憶域３１Ｂ、ＤＯＭツリー記憶域３１Ｃ及びレイアウト結果記憶域３１Ｄが用意される。これら複数のデータ記憶域３１Ａ乃至３１Ｄは、同一の記憶資源（例えば、ＲＡＭ３１等のメモリ）上に用意することもできるし、別々の記憶資源上に用意することもできる。
【００３７】
上述した印刷処理プログラム２２には、例えば、受信処理タスク２２Ａと、印刷処理タスク２２Ｂとが含まれている。
【００３８】
受信処理タスク２２Ａは、アドレス帳データ１２を受信し、受信したアドレス帳データ１２を受信バッファ３１Ａに格納する処理を行う。また、受信処理タスク２２Ａは、受信したアドレス帳データ１２に含まれているレコード１２Ａにおける各レコード要素を定義ファイル２６に割り付けた１ページ分のＸＨＴＭＬデータ８６を生成し、生成した１ページ分のＸＨＴＭＬデータ８６をＸＨＴＭＬデータ記憶域３１Ｂに格納する。
【００３９】
具体的には、例えば、この第一実施例では、定義ファイル２６は、所定サイズの用紙１ページ分のテンプレートを表している。このため、定義ファイル２６で表されている、レコード１２Ａに対応した印刷領域位置の数Ｋ（Ｋ≧１）は、所定サイズの用紙１ページに印刷可能なレコードの件数を表していることになる。受信処理タスク２２Ａは、アドレス帳データ１２のうちのＫ個のレコード１２Ａを定義ファイル２６に割り当てることにより、所定サイズの用紙１ページに対応したＸＨＴＭＬデータ８６を生成することになる。受信処理タスク２２Ａは、アドレス帳データ１２Ａに含まれるＫ個のレコード１２Ａ毎に、ＸＨＴＭＬデータ８６を生成し、生成したＸＨＴＭＬデータ８６をＸＨＴＭＬデータ記憶域３１Ｂに格納する。受信処理タスク２２Ａは、少なくとも一つのＸＨＴＭＬデータ８６をＸＨＴＭＬデータ記憶域３１Ｂに格納したときに（例えば、一つのＸＨＴＭＬデータ８６を格納したとき、又は、レコード全件分のＸＨＴＭＬデータ３１Ｂを格納したとき）、印刷要求を印刷処理タスク２２Ｂに発行する。
【００４０】
印刷処理タスク２２Ｂは、例えば、複数のプログラムモジュールとして、印刷処理制御部７２、ＤＯＭツリー作成部７４、レイアウト処理部７５及びレンダリング処理部７６を有する。
【００４１】
印刷処理制御部７２は、ＤＯＭツリー作成部７４及びレイアウト処理部７５の各々に処理の実行を命じることができる。例えば、印刷処理制御部７２は、受信処理タスク２２Ａから印刷要求を受けた場合、ＤＯＭツリー作成部７４に、ＤＯＭツリーの作成を命じる。また、ＤＯＭツリーの作成を命令したタイミングと同じタイミング（又はその後のタイミングで）、印刷処理制御部７２は、レイアウトの実行をレイアウト処理部７５に命じる。
【００４２】
ＤＯＭツリー作成部７４は、ＸＨＴＭＬデータ８６を解釈し、その解釈結果に基づいて、ＤＯＭ（Document Object Model）ツリー８２を作成し、作成したＤＯＭツリー８２をＤＯＭツリー記憶域３１Ｃに書き込む。具体的には、例えば、ＤＯＭツリー作成部７４は、印刷処理制御部７２からの命令に応答して、ＤＯＭツリー８２の作成を開始する。ＤＯＭツリー作成部７４は、図示しない解釈ユニットとＸＭＬパーサとを備えることができる。解釈ユニットは、ＸＨＴＭＬデータ記憶域３１Ｂ内の１ページ分のＸＨＴＭＬデータ８６の解釈をＸＭＬパーサに指示し、それの解析を行ったＸＭＬパーサから解析結果を受け、その受けた解析結果に基づいて、ＤＯＭツリー８２を作成することができる。
【００４３】
レイアウト処理部７５は、作成されたＤＯＭツリー８２を解析し、それにより、所定サイズの用紙１ページに対してレコードの要素をどこに配置するかのレイアウトを行い、そのレイアウトの結果を表すレイアウト済みデータ８４を生成し、生成したレイアウト済みデータ８４をレイアウト結果記憶域３１Ｄに格納する。具体的には、例えば、レイアウト処理部７５は、印刷処理制御部７４からの命令に応答して、レイアウト処理を開始する。レイアウト処理部７５は、ＤＯＭツリー記憶域３１Ｃに記憶されているＤＯＭツリー８２を解析し、その解析結果に基づいて、ＤＯＭツリー８２中のレコード要素を、ページ毎にレイアウトし、一つのページボックスにまとめ、そのページボックスをレイアウト済みデータとして出力する。
【００４４】
レンダリング処理部７６は、レイアウト処理部７５から出力されたレイアウト済みデータに基づいて、ＲＧＢデータとしてのイメージデータを生成する。別の言い方をすれば、レンダリング処理部７６は、レイアウト済みデータに基づいてプリンタ２０独自のレイアウト処理を実行する。レンダリング処理部７６は、生成したイメージデータを印刷部３７に出力する。これにより、印刷部３７が、そのイメージデータに対して色変換処理及びハーフトーニング処理を行うことで、印刷画像データを生成し、その印刷画像データが表すページボックス（レイアウトされたレコード要素等）を印刷する。
【００４５】
以上が、本発明の第一実施例についての説明である。
【００４６】
すなわち、この第一実施例では、受信処理タスク２２Ａが、アドレス帳データ１２に登録されているＫ個のレコード１２Ａを定義ファイル２６に割り付けた結果を表すＸＨＴＭＬデータ８６を生成し、そのＸＨＴＭＬデータ８６をＸＨＴＭＬデータ記憶域３１Ｂに格納する。ここで格納されるＸＨＴＭＬデータ８６は、ページ単位のデータ、すなわち、所定サイズの用紙１ページに印刷可能なＫ個のレコードが記述されたデータである。
【００４７】
印刷処理タスク２２Ｂは、少なくとも一つのＸＨＴＭＬデータ８６が格納されたときに、ＤＯＭツリー８２の作成を開始することができる。ＸＨＴＭＬデータ８６はページ単位のデータなので、ここで作成されるＤＯＭツリー８２も、ページ単位のものとなる。印刷処理タスク２２Ｂは、少なくとも一つのＤＯＭツリー８２（換言すれば、少なくとも一ページ分のＤＯＭツリー８２）をＤＯＭツリー記憶域３１Ｃに格納した段階で、一つのＤＯＭツリー８２に基づいて一ページ分のレイアウトを完成させ、そのレイアウトの結果を表すレイアウト済みデータ８４の印刷を印刷部３７へ要求する（つまり、初めのページの印刷を開始させる）。印刷処理タスク２２Ｂは、例えば、一つのレイアウト済みデータ８４を作成したときに、そのレイアウト済みデータ８４に対応するＤＯＭツリー８２及びＸＨＴＭＬデータ８６を、各記憶域３１Ｃ及び３１Ｂから削除することができる。
【００４８】
この第一実施例によれば、プリンタ２０は、アドレス帳データ１２に記録されている全件のレコード（又はそれに含まれる所定の一以上のレコード要素）を定義ファイル２６に割り当てたＸＨＴＭＬデータ（つまりレコード全件分のＸＨＴＭＬデータ）に基づくＤＯＭツリー（つまりレコード全件文のＤＯＭツリー）を作成し終える前に、少なくとも１ページ分のＤＯＭツリーが生成された段階で、１ページ分のＤＯＭツリーを解析して１ページ分のレイアウトを完成して印刷を開始する。これにより、アドレス帳データ１２の受信が行われてから初めのページが印刷されるまでの時間長の短縮が図れる。また、ＤＯＭツリー記憶域３１Ｃの記憶サイズを、レコード全件分のＤＯＭツリーを記憶するだけのサイズにする必要が無いので、記憶資源の節約が図れる。
【実施例２】
【００４９】
以下、本発明の第二の実施例について説明する。なお、以下の説明では、第一の実施例との相違点を主に説明し、共通点については説明を省略或いは簡略する。
【００５０】
図５は、本発明の第二実施例に係るプリンタが行うインデックス印刷の処理の説明図である。
【００５１】
定義ファイル４８は、所定サイズの用紙１ページには収まりきらない数のレコード１２Ａを割り当て可能なテンプレートを表すファイルとなっている。すなわち、この第二の実施例における定義ファイル４８に割り当て可能なレコードの件数Ｎは、第一の実施例における定義ファイル２６に割り当て可能なレコードの件数Ｋよりも多い。具体的には、例えば、アドレス帳データ１２にＭ件（例えばＭ＝１０００）のレコード１２Ａが存在する場合には、定義ファイル２６には、Ｎ件のレコード１２Ａにそれぞれ対応したＮ個の印刷領域位置の情報が記述される（Ｍ≧Ｎ＞Ｋ）。
【００５２】
定義ファイル４８が上記のようになっているため、アドレス帳データ１２に含まれているレコード１２Ａを定義ファイル４８に割り付けていくことにより生成されるＸＨＴＭＬデータ８８は、第一実施例のようにページ単位のものではない。すなわち、第二実施例におけるＸＨＴＭＬデータ８８のデータサイズは、第一実施例における一つのＸＨＴＭＬデータ８６のデータサイズよりも大きい。例えば、定義ファイル４８が、アドレス帳データ１２の全件のレコード１２Ａを割付けることができるように構成されている場合には、ＸＨＴＭＬデータ８８は、レコード全件分のデータとなる。具体的には、例えば、受信処理タスク２２Ａは、アドレス帳データ１２の全レコード１２Ａを解析し、全件のレコード１２Ａを定義ファイル４８に割り付けることにより、レコード全件分のＸＨＴＭＬデータ８８を生成し、生成したそのＸＨＴＭＬデータ８８をＸＨＴＭＬデータ記憶域３１Ｂに格納することができる。
【００５３】
ＸＴＨＭＬデータ８８は、ページ単位のものではない。このため、そのＸＨＴＭＬデータ８８に基づいて作成されるＤＯＭツリー９２（印刷処理タスク２２ＢのＤＯＭツリー作成処理部７４によって生成されるＤＯＭツリー９２）のデータサイズも、第一実施例において生成される一つのＤＯＭツリー８２のデータサイズよりも大きい。
【００５４】
しかし、この第二実施例では、以下に詳述するように、ＤＯＭツリー作成部７４によるＤＯＭツリー９２の作成処理と、レイアウト処理部７５によるレイアウト処理とが並行して行ない、レコード全件分のＤＯＭツリーを作成し終える前であって、１ページのレイアウトが完了したときに、印刷を開始する。
【００５５】
以下、この第二実施例に係る印刷処理タスク２２Ｂにおいて行われる処理流れを説明する。
【００５６】
図６は、本発明の第二実施例に係る印刷処理タスク２２Ｂにおいて行われる処理流れを示す。
【００５７】
印刷処理制御部７２は、受信処理タスク２２Ａから印刷要求を受けた場合（ステップＳ２０１でＹＥＳ）、換言すれば、レコード全件分のＸＨＴＭＬデータ８８が生成された場合、ＤＯＭツリー作成部７４とレイアウト処理部７５とに命令を出し、それにより、ＤＯＭツリー９２の作成とレイアウト処理とを並行して実行させる（Ｓ２０２）。
【００５８】
これにより、ＤＯＭツリー作成部７４が、レコード全件分のＸＨＴＭＬデータ８８を解釈し、その解釈結果に基づいてＤＯＭツリー９２を作成していく（Ｓ２０３）。また、レイアウト処理部７５が、そのＤＯＭツリー９２を解析してレイアウトを行っていく（Ｓ２０４）。ＤＯＭツリー９２のデータサイズは、ＸＨＴＭＬデータ８８の解釈が進むにつれて、増えていく。それに伴い、レイアウトされるレコード要素の数も、レイアウト処理が進むにつれて、増えていく。
【００５９】
レイアウト処理部７５は、１ページ分のレイアウトを完了したならば、すなわち、１ページ分のレイアウト済みデータを作成し終えたならば（Ｓ２０５でＹＥＳ）、１ページのレイアウトが完了したことを表す通知を印刷処理制御部７２に発行する（Ｓ２０６）。印刷処理制御部７２は、レンダリング処理部７６にレンダリングを要求する（Ｓ２０７）。この結果、レコード全件分のＤＯＭツリー９２の作成が完了する前に、印刷が開始される。
【００６０】
なお、印刷制御処理部７２は、レンダリングの要求をした場合（つまり印刷が行われた場合）、所定の通知をＤＯＭツリー作成部７４及びレイアウト処理部７５に発行する（Ｓ２０８及びＳ２０９）。Ｓ２０８の通知に応答して、ＤＯＭツリー作成部７４は、レンダリング要求に係る部分のデータ（換言すれば、レイアウト済みに係る部分のデータ）を、更新中のＤＯＭツリー９２から削除する（Ｓ２１０）。同様に、レンダリング処理部７５は、Ｓ２０９の通知に応答して、レンダリング要求されたレイアウト済みデータをレイアウト結果記憶域３１Ｄから削除する（Ｓ２１１）。
【００６１】
ＤＯＭツリー作成部７４でＸＨＴＭＬデータ８８の解析が終了するまで、Ｓ２０３乃至Ｓ２１１が繰り返される。
【００６２】
この第二の実施例によれば、印刷処理タスク２２Ｂが、ＤＯＭツリー９２の作成処理と、レイアウト処理とを並行して行ない、レコード全件分のＤＯＭツリーを作成し終える前であって、１ページのレイアウトが完了したときに、印刷を開始する。これにより、アドレス帳データ１２の受信が行われてから初めのページが印刷されるまでの時間長の短縮が図れる。また、ＤＯＭツリー記憶域３１Ｃの記憶サイズを、レコード全件分のＤＯＭツリーを記憶するだけのサイズにする必要が無いので、記憶資源の節約が図れる。
【００６３】
以上、本発明の幾つかの実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施例及び変形例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【００６４】
例えば、実施例では、プリンタを例に採って説明したが、実施例の内容は、デジタルカメラ或いはパーソナルコンピュータなどの種々の処理装置に適用することができる。
【００６５】
また、例えば、ＸＨＴＭＬデータ８６又は８８を、データパッケージと言い換えても良い。データパッケージには、オブジェクト（例えばレコード要素）と、オブジェクトの配置領域の位置情報が記述されたＣＳＳ（Cascading Style Sheets）文書と、ＣＳＳ文書で記述された位置情報が表す配置領域にオブジェクトをどのように表示するかが記述されたスクリプトとが含まれていても良い。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施例に係る処理装置が適用されたプリンタの構成を表す図である。
【図２】アドレス帳データの構成例を表す図である。
【図３】定義ファイルの構成概念例を示す。
【図４】図３に示した定義ファイルから導き出せる宛名印刷面のレイアウトを示す。
【図５】本発明の一実施例に係るプリンタのＣＰＵが行う処理流れの一例を示す。
【図６】本発明の一実施例の第一の変形例の説明図。
【符号の説明】
【００６７】
１０…携帯情報端末機、  １１…メモリ、  １２…アドレス帳データ、  ２０…プリンタ、  ２２…印刷処理プログラム、  ２６、４８…インデックス印刷レイアウト定義ファイル、  ３０…プリンタ制御部、  ３１…RAM、  ３２…CPU、  ３３…ROM、  ３４…通信IF、  ３５…印刷IF
【図１】
2006238248.tif 000003
【図２】
2006238248.tif 000004
【図３】
2006238248.tif 000005
【図４】
2006238248.tif 000006
【図５】
2006238248.tif 000007
【図６】
2006238248.tif 000008