(57)【要約】【課題】  レイアウトが厳密には規定されない構造化文書で記述したコンテンツから印刷データを作成するにあたり、印刷装置側の処理負担を軽減しかつ効率的に行うことができるようにする。【解決手段】  レイアウトが厳密には規定されない構造化文書を、複数の要素ブロックからなる解析木に配置して印刷する印刷装置において、前記レイアウトが厳密には規定されない構造化文書を入力する入力手段と、前記入力手段により入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換手段と、前記印刷データ変換手段によって変換された印刷データに基づき、メディア上に印刷を行う印刷手段とを設け、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置するようにする。【選択図】  図２
2005346256.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書を、木構造に解析して印刷処理する印刷装置において、
入力手段により入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換手段と、
前記印刷データ変換手段によって変換された印刷データに基づき、メディア上に印刷を行う印刷手段とを有し、
前記印刷データ変換手段は、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置することを特徴とする印刷装置。
【請求項２】
前記構造化文書は、タグによって区切ることでデータ構造を表現する、マークアップ言語で記述されていて、印刷オブジェクトの配置を記述する主データ部と、前記主データ部が参照する付加データ部とを含むことを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記印刷データ変換手段は、前記構造化文書においてフロート指定がある要素ブロックを配置する場合、クリア指定がある要素ブロックが出現するまでの区間においては、前記フロート指定がある要素ブロックについては、他の要素ブロックよりも先に配置することを特徴とする請求項２に記載の印刷装置。
【請求項４】
構造化文書を、木構造に解析して印刷処理する印刷方法において、
前記レイアウトが厳密には規定されない構造化文書を入力する入力ステップと、
前記入力ステップにより入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換ステップと、
前記印刷データ変換ステップによって変換された印刷データに基づき、メディア上に印刷を行う印刷ステップとを有し、
前記印刷データ変換ステップは、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置することを特徴とする印刷方法。
【請求項５】
前記構造化文書は、タグによって区切ることでデータ構造を表現する、マークアップ言語で記述されていて、印刷オブジェクトの配置を記述する主データ部と、前記主データ部が参照する付加データ部とを含むことを特徴とする請求項４に記載の印刷方法。
【請求項６】
前記印刷データ変換ステップは、前記構造化文書においてフロート指定がある要素ブロックを配置する場合、クリア指定がある要素ブロックが出現するまでの区間においては、前記フロート指定がある要素ブロックについては、他の要素ブロックよりも先に配置することを特徴とする請求項５に記載の印刷方法。
【請求項７】
構造化文書を、木構造に解析して印刷処理する印刷方法をコンピュータに実行させるプログラムであって、
前記レイアウトが厳密には規定されない構造化文書を入力する入力ステップと、
前記入力ステップにより入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換ステップと、
前記印刷データ変換ステップによって変換された印刷データに基づき、メディア上に印刷を行う印刷ステップとを有し、
前記印刷データ変換ステップは、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置する処理をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項８】
前記請求項７に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷装置、印刷方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体に関し、特に、デジタルテータ放送や、インターネットを始めとするデータ通信において配信されたコンテンツを印刷するために用いて好適な技術に関するものである。
【背景技術】
【０００２】
従来、XHTMLなどのマークアップ言語で記述されたコンテンツの解釈実行、及び印刷処理は大規模な資源を駆使できるコンピュータ等を用いて行っていた。また、前記ケースでは表示系を想定しているため、限られた注目領域についてのみ処理すればよいため、仮描画を繰り返す方式で行われていた。
【０００３】
また、特許文献１においては、フォーマッタがスタイルデータに従って構造化文書をフォーマットするときに、その位置情報を付加情報作成部に伝え、付加情報作成部は、その位置情報と文書構造とを対応付け、その情報及び文書型を付加情報として付加情報重畳部で文書イメージに重畳して印刷部で印刷するようにした技術が提案されている。
【０００４】
【特許文献１】特開２００２−１０８８６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前記のコンテンツを表示する系のケースとは違い、印刷する系においては、一旦、コンテンツ全体を解釈実行して、それらを各ページに配分していくバッチ型処理を適用した方が全体の処理効率が高くなる。
【０００６】
一方、デジタルテレビ、携帯電話やデジタルカメラ等も、マークアップ言語で記述したコンテンツを取り扱うことが多くなってきている。ところが、このような機器では資源が限られているため、コンテンツを印刷データに変換する過程で生じるレイアウトのやり直しを回避することが求められていた。
【０００７】
本発明は前述したような実情に鑑みてなされたものであり、レイアウトが厳密には規定されない構造化文書で記述したコンテンツから印刷データを作成するにあたり、印刷装置側の処理負担を軽減し、かつ印刷データの作成効率を向上できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の印刷装置は、構造化文書を、木構造に解析して印刷処理する印刷装置において、入力手段により入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換手段と、前記印刷データ変換手段によって変換された印刷データに基づき、メディア上に印刷を行う印刷手段とを有し、前記印刷データ変換手段は、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置することを特徴としている。
【０００９】
本発明の印刷方法は、構造化文書を、木構造に解析して印刷処理する印刷方法において、前記レイアウトが厳密には規定されない構造化文書を入力する入力ステップと、前記入力ステップにより入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換ステップと、前記印刷データ変換ステップによって変換された印刷データに基づき、メディア上に印刷を行う印刷ステップとを有し、前記印刷データ変換ステップは、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置することを特徴としている。
【００１０】
本発明のコンピュータプログラムは、構造化文書を、木構造に解析して印刷処理する印刷方法をコンピュータに実行させるプログラムであって、前記レイアウトが厳密には規定されない構造化文書を入力する入力ステップと、前記入力ステップにより入力された構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換する印刷データ変換ステップと、前記印刷データ変換ステップによって変換された印刷データに基づき、メディア上に印刷を行う印刷ステップとを有し、前記印刷データ変換ステップは、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置する処理をコンピュータに実行させることを特徴としている。
【００１１】
本発明の記録媒体は、前記に記載のコンピュータプログラムを記録したことを特徴としている。
【発明の効果】
【００１２】
本発明によれば、レイアウトが厳密には規定されない構造化文書を、複数の要素ブロックからなる解析木に配置して印刷する際に、前記レイアウトが厳密には規定されない構造化文書を解釈し、前記各要素ブロックを所定の位置に配置して印刷データに変換し、前記変換した印刷データに基づいて、メディア上に印刷を行うようにすることにより、前記複数の要素ブロックの出現順に係わり無く、予め決められた所定の順序により各要素ブロックを配置するようにしたので、レイアウト処理自体を大幅に簡略化することができ、印刷データの作成効率を向上させることができる。
【００１３】
また、本発明の他の特徴によれば、構文解釈ツリーにおけるレイアウト構造体を適用するようにしたので、マークアップ言語で記述したコンテンツを解釈実行して印刷データを作成するにあたり、印刷装置側の処理負担を軽減することができ、処理効率を大幅に向上させることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の印刷装置、印刷方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体の実施の形態を説明する。なお、本実施の形態は、W3C(World Wide Web Consortium)が定めているXHTML1.1TM(eXtensible Hyper Text Markup Language)及びCSS2.0TM(Cascading Style Sheet 2.0)で定める仕様書に基づいて記載されている。そして、「ノード・リンク構造」とは、ノードとリンクに区別できる項目を含み、各リンクが２つ以上のノードに関係している構造を言う。さらに、ノード・リンク関係とは、ノードのパス及び要素間のリンクに基づく要素間の関係である。
【００１５】
先ず、始めに、一般的に行われている要素ブロック配置例を、図５を参照しながら説明する。
図５に示したように、要素ブロックの出現順により配置する通常のレイアウト処理では、フロート指定が設定されたタグが出現すると、レイアウトのやり直しを行う必要がある。すなわち、重なりを解決するための再配置するので効率が悪い問題があった。
【００１６】
以下に、ステップ毎の処理を説明する。
（１）「ノード１」を指定に従い配置する処理を行う。
（２）「ノード２」を左隅に配置するためにノード１を右にずらしてブロックの形を変更する処理を行う。
（３）「ノード２」を配置する処理を行う。
（４）「ノード３」を右隅に配置するためにノード１のブロックの形を変更する処理を行う。
（５）「ノード３」を配置する処理を行う。
以下の配置については、図示及び説明を省略するが、通常の配置処理を行った場合には、「フロート指定」の要素ブロックが出現する毎に再配置処理を行わなければならなかったので、従来は、レイアウト処理を効率的に行うことができなかった。
【００１７】
図１は、本実施の形態の印刷システム全体の概要構成を示す図である。
本実施の形態の印刷装置３０は、ＰＣ（パーソナルコンピュータ）１１や、ＰＤＡ（personal digital assistant：個人向け携帯情報機器の総称）１２や、デジタル放送機器１３等を総称したホスト（コンピュータ）１０より、有線または無線の接続形態で入力するコンテンツ（構造化文書）２０を解析し、要素をノードとした木構造に変換した後、レイアウトを決定し、印刷データ３３に変換するコントローラ３１、前記印刷データ３３に基づきメディア４０上に印刷３４を行って画像を形成するプリントエンジン３２を有している。なお、ここで言うコントローラの３１の実態は、ＣＰＵ、記憶装置及びインターフェースを含む、シングルボードコンピュータで構成している。
【００１８】
図２は、本実施の形態における要素の出現順とレイアウト処理の関係を示す図である。
ここでは、要素の配置を出現順に拠らないで、float:スタイルのタグ（tag）を優先して先に配置を決定し、通常のタグをその余白に配置することにより、レイアウト処理が簡単になることを説明している。
【００１９】
なお、前記「タグ」とは、テキストファイルの中で、文字の表示方法などを指定するための特別な文字列のこと。表示すべき文字そのものと区別するために、特定の文字や記号などで前後を囲んで表現する。Webページを記述するのに利用されるHTMLでは、タグを使って文書の構造やレイアウト、リンクを表現するためのものである。
【００２０】
先ず、図２は構造化文書を字句解析及び構文解析した結果から得たノードとリンクで表した図であり、特に、あるルート下のレイヤーにおけるノード（要素）の配置を決める様子を表している。この例では、「ノード１」から「ノード７」は、構造化文書の入力記述順に対応している。「ノード２」、「ノード３」、「ノード７」は浮動体指定（float）があり、「ノード５」には浮動体解除指定（clear）がある。ここで、実施の形態の配置手順としては、以下のようになる。ただし、ここでは仮に「ノード２」、「ノード３」、「ノード７」の実体は画像からなる要素ブロックでその他のノードはテキストからなる要素ブロックであるとする。
【００２１】
（１）「ノード２」を指定に従い左隅に配置する（float:left）。
（２）「ノード３」を指定に従い右隅に配置する（float:right）。
（３）「ノード１」を先に配置したブロックの間に流す形で配置する。
（４）「ノード４」を同様にノード１の下に配置する。
（５）「ノード５」をノード２と干渉しない新たなブロックとして配置する(clear:both)。
（６）「ノード７」を指定に従い左隅に配置する（float:left）。
（７）「ノード６」を先に配置したブロックの間に流す形で配置する。
【００２２】
図３は、本実施の形態の処理手順を説明するフローチャートである。
最初のステップＳ１では、注目要素がフロート指定であるかを判定する。この判定の結果、フロート指定ではない場合にはステップＳ２に進み、クリア指定であるか否かを判定する。また、ステップＳ１の判定の結果、フロート指定ではなかった場合にはステップＳ３に進んで、フロート指定がある要素を通常どおり配置して、図示しない配置済みマーカーを付す。
【００２３】
ステップＳ２の判定の結果、クリア指定であった場合にはステップＳ４に進み、クリア指定が出現した場合の処理を行う。この場合、前記配置済みマーカーの無いもの、すなわち、配置保留となっていた要素を出現順に配置する。
【００２４】
次に、ステップＳ５においては、注目階層の要素の全てが配置済みであるか否かを判定する。この判定の結果、全ての要素が済んでいない場合にはステップＳ６に進み、要素のスキャンをするために、次の注目要素を決定し、その後ステップ１に遷移する。また、ステップＳ５の判定の結果、全要素が済んでいる場合には処理を終了する。以上のプロセスにより、注目階層の要素ブロックの配置を決定している。
【００２５】
次に、図４のフローチャートを参照しながら他の実施の形態を説明する。
処理が開始されると、最初のステップＳ１１において、注目要素がフロート指定であるか否かを判定する。この判定の結果、フロート指定ではない場合にはステップＳ１２に進み、フロート指定である場合にはステップＳ１３に進む。
【００２６】
ステップＳ１２においては、クリア指定があるか否かを判定する。この判定の結果、クリア指定である場合にはステップＳ１４に進み、クリア指定が出現した場合の処理を行う。この場合には、前記配置待ち行列の要素をリンク順に配置する処理を行う。
【００２７】
また、ステップＳ１１の判定の結果、フロート指定であることによりステップＳ１３に進んだ場合には、フロート指定がある要素を、図示しない配置待ち行列の最後尾にリンクして、図示しない処理済みマーカーを付す処理を行う。
【００２８】
次に、ステップＳ５において、注目階層の要素全てが配置済みであるか否かを判定する。この判定の結果、要素全てが配置済みではない場合にはステップＳ１６に進み、要素のスキャンをするために、次の注目要素を決定する処理を行い、その後、ステップ１に遷移する。また、ステップＳ１５の判定の結果、要素全てが配置済みであった場合には処理を終了する。以上のプロセスにより、注目階層の要素ブロックの配置を決定している。
【００２９】
（本発明の他の実施の形態）
前述した実施の形態の機能を実現するべく各種のデバイスを動作させるように、前記各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施の形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【００３０】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記録する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００３１】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施の形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）あるいは他のアプリケーションソフト等と共同して前述の実施の形態の機能が実現される場合にもかかるプログラムコードは本発明の実施の形態に含まれる。
【００３２】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合にも本発明に含まれる。
【図面の簡単な説明】
【００３３】
【図１】実施の形態の印刷システム全体の概要構成を示す図である。
【図２】実施の形態における要素の出現順とレイアウト処理の関係を示す図である。
【図３】実施の形態の処理手順を説明するフローチャートである。
【図４】実施の形態の処理手順の他の例を説明するフローチャートである。
【図５】従来の要素ブロック配置例を説明する図である。
【符号の説明】
【００３４】
１０  ホスト
１１  パーソナルコンピュータ、
１２  ＰＤＡ
１３  デジタル放送機器
２０  コンテンツ
３０  印刷装置
３１  コントローラ
３２  プリントエンジン
３３  印刷データ
３４  印刷
４０  メディア
【図１】
2005346256.tif 000003
【図２】
2005346256.tif 000004
【図３】
2005346256.tif 000005
【図４】
2005346256.tif 000006
【図５】
2005346256.tif 000007