(57)【要約】【課題】１頁内に納まるようテキストをレイアウトしたにも拘わらず複数頁にわたり表示や印刷が行われることを回避する。【解決手段】所定のテンプレートの備える枠に対しテキスト情報を関連付けて構造化言語により記述された文書を生成する生成装置と、前記生成装置からの前記文書を解析し解析結果に基づいて前記枠に前記テキスト情報をレイアウトする処理装置と、からなる処理システムにおいて、前記処理装置は、前記テキスト情報をレイアウトすることにより前記枠を１頁で表示するためのテキストの文字数情報を得、当該文字数情報を前記生成装置に出力し、前記生成装置は、前記枠に対し前記文字数情報に基づくテキスト情報を関連付けて前記文書を生成し、当該文書を前記処理装置に出力する、ことを特徴としている。【選択図】図１
2006085495.tif 000002
【特許請求の範囲】
【請求項１】
所定のテンプレートの備える枠に対しテキスト情報を関連付けて構造化言語により記述された文書を生成する生成装置と、前記生成装置からの前記文書を解析し解析結果に基づいて前記枠に前記テキスト情報をレイアウトする処理装置と、からなる処理システムにおいて、
前記処理装置は、前記テキスト情報をレイアウトすることにより前記枠を１頁で表示するためのテキストの文字数情報を得、当該文字数情報を前記生成装置に出力し、
前記生成装置は、前記枠に対し前記文字数情報に基づくテキスト情報を関連付けて前記文書を生成し、当該文書を前記処理装置に出力する、ことを特徴とする処理システム。
【請求項２】
所定のテンプレートの備える枠に対しテキスト情報を関連付けて構造化言語により記述された文書を生成する生成装置において、
前記枠を１頁で表示するためのテキストの文字数情報が入力され、前記枠に対して前記文字数情報に基づく文字数の前記テキスト情報を関連付けて前記文書を生成し、当該文書を出力する文書生成手段、
を備えることを特徴とする生成装置。
【請求項３】
構造化言語により記述された文書を解析し解析結果に基づいて所定のテンプレートの備える枠にテキスト情報をレイアウトする処理装置において、
前記テキスト情報をレイアウトすることにより前記枠を１頁で表示するためのテキストの文字数情報を得、当該文字数情報を出力する文字数情報生成手段、
を備えることを特徴とする処理装置。
【請求項４】
所定のテンプレートの備える枠にテキスト情報をレイアウトする処理方法であって、
前記枠を１項で表示した場合に前記枠を超える文字数のテキストが入力されたとき、前記枠を１頁で表示することのできる文字数ごとに前記テキスト情報を前記枠にレイアウトする工程、
を備えることを特徴とする処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化言語で記述された文書に対する処理システム、及び処理方法等に関する。詳しくは、１頁分のオブジェクト枠に表示可能なテキストの文字数情報を生成し、その文字数情報に基づいて文書を生成するようにした処理システム等に関する。
【背景技術】
【０００２】
従来からインターネットのホームページ情報をディスプレイ画面上に表示させ、その情報を保存したい場合は、プリンタ等を使用して用紙にその情報を印刷することが行われている。ホームページ情報は、一般的にＸＭＬ（eXtensible Markup Language）やＸＨＴＭＬ（eXtensible Hyper Text Markup Language）などの構造化言語により記述された文書で構成される。通常、このような文書に基づいて画像を生成する（表示や印刷など）には、かかる言語で記述された文書に対し解析処理が行われた後、各要素の１頁内での位置や高さを決定するレイアウト処理が行われる。その後、表示や印刷のための種々の処理を行うことで画像が生成される。
【０００３】
一方、このようなレイアウト処理に関し、画面上に表示されたホームページ情報に対して表示されたそのままの内容を印刷するのではなく、予め用意されたテンプレートにホームページ情報の各要素等を配置させ、新聞風等の自由度の高いレイアウトにより印刷を行うものが知られている（以下の特許文献１）。
【特許文献１】特開平１１−９６１４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１のように自由度の高いレイアウトをするにしても、従来では必ずしも画面上に表示された文字や数字の大きさで印刷が行われるとは限らなかった。通常、プリンタでは印字できる文字等をプリンタ内のメモリに格納している。そして、印刷する際にパーソナルコンピュータで生成された文字に対応する大きさや種類の文字等をメモリから読み出して印字する。ところが、パーソナルコンピュータでは大きさや種類など文字等を多種多様に作成して画面上に表示できるのに対し、プリンタではメモリ容量の制限等からパーソナルコンピュータで作成された文字等すべてに対応した文字等をメモリに格納することができない。そのため、１頁内に収まるよう画面上でレイアウトしたにも拘わらず、実際に印刷してみると文字の大きさ等の相違から２枚の印刷用紙に印刷される事態も発生していた。
【０００５】
そこで、本発明は上記問題点に鑑みてなされたものでその目的は、文字列や数字列で構成されたテキストを１頁内に収まるようレイアウトしたにも拘わらず複数頁にわたり表示や印刷が行われることを回避することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明は、所定のテンプレートの備える枠に対しテキスト情報を関連付けて構造化言語により記述された文書を生成する生成装置と、生成装置からの文書を解析し解析結果に基づいて枠にテキスト情報をレイアウトする処理装置と、からなる処理システムにおいて、処理装置は、テキスト情報をレイアウトすることにより枠を１頁で表示するためのテキストの文字数情報を得、当該文字数情報を生成装置に出力し、生成装置は、枠に対し文字数情報に基づくテキスト情報を関連付けて文書を生成し、当該文書を処理装置に出力する、ことを特徴としている。これにより、例えば、１項内に収まるテキストの文字数情報に基づいて文書が生成されるため、１頁内に収まるようレイアウトしたにも拘わらず複数頁にわたりテキストが印刷等行われる事態を回避することができる。
【０００７】
また、上記目的を達成するために本発明は、所定のテンプレートの備える枠に対しテキスト情報を関連付けて構造化言語により記述された文書を生成する生成装置において、枠を１頁で表示するためのテキストの文字数情報が入力され、枠に対して文字数情報に基づく文字数のテキストを関連付けて文書を生成し、当該文書を出力する文書生成手段、  を備えることを特徴としている。これにより、例えば、１頁内に表示できるテキストの文字数から文書が生成されるため、複数頁にわたりテキストが表示等される事態を回避することができる。
【０００８】
更に、上記目的を達成するために本発明は、構造化言語により記述された文書を解析し解析結果に基づいて所定のテンプレートの備える枠にテキスト情報をレイアウトする処理装置において、テキスト情報をレイアウトすることにより枠を１頁で表示するためのテキストの文字数情報を得、当該文字数情報を出力する文字数情報生成手段、を備えることを特徴としている。これにより、例えば、１頁内で表示可能なテキストの文字数情報が得られるため、この情報に基づいて文書を作成すれば複数頁にわたりテキストが印刷等される事態を回避することができる。
【０００９】
更に、上記目的を達成するために本発明は、所定のテンプレートの備える枠にテキスト情報をレイアウトする処理方法であって、枠を１項で表示した場合に枠を超える文字数のテキストが入力されたとき、枠を１頁で表示することのできる文字数ごとに前記テキスト情報を枠にレイアウトする工程、を備えることを特徴としている。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して本発明を実施するための最良の形態を説明する。図１は、本発明が適用される処理システム１全体の構成を示す図である。本処理システム１は、全体として生成装置１０と、処理装置２０とから構成される。
【００１１】
生成装置１０は、ＸＭＬやＸＨＴＭＬなどの構造化言語により記述された文書（以下、「文書」）を生成するための装置で、例えば、パーソナルコンピュータやデジタルカメラ、携帯電話等である。図１に示すように生成装置１０は、テキスト情報生成部１１と文書生成部１２とから構成される。
【００１２】
テキスト情報生成部１１は、文字列や数字列から構成されるテキスト情報を生成する。例えば、画面上に表示されたエディタに対しユーザがキーボードや操作ボタン等を操作してテキストを入力することによりテキスト情報が生成される。
【００１３】
文書生成部１２は、テキスト情報生成部１１からのテキスト情報に対し、構造化言語により記述された文書に変換する。文書生成部１２は、所定のテンプレート１２２を備え、テキスト情報をこのテンプレート１２２に関連付けることにより文書を生成する。
【００１４】
一方、処理装置２０は、生成装置１０からの文書に対して、解析、レイアウト、印刷等の処理を行うための装置であり、例えばプリンタやプロジェクタなどである。本実施例ではプリンタとして以下説明する。本処理装置２０は、図１に示すように、文書解析部２１と、レイアウタ２２と、メモリ２３と、レンダリング部２４、及び印刷処理部２５とから構成される。
【００１５】
文書解析部２１は、生成装置１０からの文書に対し、ＤＯＭ（Document Object Model）ツリーと呼ばれるツリーを生成することで文書解析を行う。これより文書の階層構造が明らかとなる。解析後の文書内の各要素は文書解析部２１によってメモリ２３に格納される。
【００１６】
レイアウタ２２は、文書解析部２１からの解析後の各要素が入力され、１頁のオブジェクト枠内における各要素の位置や高さを決定する。決定した位置等のレイアウト情報はレイアウタ２２によってメモリ２３に格納される。
【００１７】
レンダリング部２４は、レイアウタ２２からのレイアウト情報や各要素等の情報が入力され、テキストやイメージに色付けを行う。印刷処理部２５は、この色付け後のデータが入力され、ＣＭＹＫへの色変換処理や２値化処理、さらに実際に印刷機構を用いて印刷用紙に印字する処理等を行う。
【００１８】
このように構成された処理システム１における本発明の特徴部分は文書生成部１２とレイアウタ２２にある。即ち、レイアウタ２２は、テキストをレイアウトすることにより１頁分のオブジェクト枠に表示することのできる文字数情報を生成する。文書生成部１２はこの文字数情報に基づいて文書を生成する。文書生成部１２で生成されたこの文書を解析、レイアウト等すれば、１頁のオブジェクト枠にテキストを構成する文字列や数字列が収まるため、複数頁にわたり表示されたり印刷されたりする等の事態を回避することができる。
【００１９】
このような処理を含む全体の処理の詳細について以下説明する。図２は、この全体処理の動作を示すフローチャートである。
【００２０】
まず、本処理が開始される（Ｓ１０）と、生成装置１０のテキスト情報生成部１１でテキスト情報が生成される（Ｓ１１）。そして、文書生成部１２において、このテキスト情報から構造化言語で記述された文書が生成される（Ｓ１２）。例えば、図５に示すように、テキスト情報生成部１１で、イメージとともにテキスト情報（＃１と＃２）を生成する。画面上には１頁分のオブジェクト枠１２１が表示され、ユーザによる操作によって１頁の枠１２１内で自由にテキスト情報を作成してレイアウトを行うことが可能となる。この例では、イメージもレイアウトしている。
【００２１】
そして、イメージ、テキスト情報に対し図５右側に示すようにＸＨＴＭＬ言語で記述された文書が生成される。このように生成装置１０ではユーザが自由にテキスト情報（さらにイメージなども）を作成することでその情報に対応したＸＨＴＭＬ文書が自動的に生成される。従って、ユーザはＸＨＴＭＬ等の構造化言語の文法等を知らなくてもかかる言語による文書を作成することができる。文書生成部１２は所定のテンプレート１２２を備え、このテンプレート１２２にテキスト情報等を挿入する等することにより、テンプレート１２２とテキスト情報とが関連付けられ、図５に示すような文書が生成される。
【００２２】
図２に戻り、次いで文書解析部２１において生成された文書に対する解析処理が行われる（Ｓ１３）。例えば、図５に示すＸＨＴＭＬ文書に対して、図６（Ａ）に示すＤＯＭツリーが生成される。生成したツリーに関する情報はメモリ２３に記憶される。
【００２３】
次いで、レイアウタ２２においてレイアウト処理が行われる（Ｓ１４）。レイアウタ２２は、文書解析部２１から解析後の各要素の情報が入力されてメモリ２３の所定領域に格納する。例えば、レイアウタ２２は、図６（Ａ）に示すツリーの情報を所定領域に格納する。格納された状態を図６（Ｂ）に示す。このツリー構造は文書ポインタと呼ばれ、以後、この文書ポインタに基づいてレイアウト処理が行われる。なお、ＤＯＭツリーや文書ポインタは図６に示すままの状態でメモリ２３に格納されているわけではなく、実際には所定のアドレス領域に要素などが記憶され、それぞれのアドレスをポインタで接続することで図６に示すようなツリーが実現される。
【００２４】
次にこのレイアウト処理（Ｓ１４）の詳細について説明する。レイアウト処理の詳細を図３乃至図４に示す。レイアウト処理が開始される（Ｓ１４１）と、レイアウタ２２は、１頁のオブジェクト枠に文書内の各要素をレイアウトする（Ｓ１４２）。
【００２５】
ここまでの処理について、図７（Ａ）に示す具体例で説明する。この例はテキスト情報生成部１１においてユーザによって作成されたテキスト情報である。１頁のオブジェクト枠１２１に文字列“ＡＢＣ”を配置し改行後さらに文字列“ＤＥＦ”を配置している。このテキスト情報から図７（Ｂ）に示すＸＨＴＭＬ文書が生成される。その後、この文書に対するＤＯＭツリー、文書ポインタが生成される。そして、実際にテキストを構成する各文字列等をオブジェクト枠２２１にレイアウトする（図８（Ａ）、（Ｂ）参照）。
【００２６】
上述したように、従来ではプリンタですべての種類や大きさと一致する文字をメモリに記憶させることができなかった。メモリ容量も多くなりその分コスト増大を招くからである。また、すべての種類等の文字を記憶するのも現実的でない。そのため、図７（Ａ）のような文字列からなるテキスト情報を作成しても、図９に示すように、１頁のオブジェクト枠１２１が２枚の印刷用紙に配置され、本来のレイアウトと異なるレイアウトで印刷されてしまう場合もある。オブジェクト枠１２１の大きさはレイアウト時とテキスト情報の生成時とで変わらないが、プリンタではテキスト生成時の文字の大きさに一致する文字がないからである。
【００２７】
このような事態を回避するため、レイアウタ２２は、以下の処理を行う。即ち、レイアウタ２２は、レイアウト対象の要素がテキストか否か判断する（Ｓ１４３）。そして、要素がテキストのとき（ＹＥＳ）、レイアウタ２２は１頁のオブジェクト枠２２１で表示するための文字数情報を生成する（Ｓ１４４）。
【００２８】
上述の例では、テキスト情報のうち文字列“Ｄ”は１頁のオブジェクト枠２２１の範囲をはみ出てしまうためレイアウトすることができない（図１０（Ａ）参照）。よって、レイアウタ２２は文字数情報として“３”を生成する。この文字数情報は文書ポインタの当該要素と関連付けられる（図１０（Ｂ）参照）。つまり、レイアウタ２２により文字数情報がメモリ２３の所定のアドレスに格納され、このアドレスと当該テキストが格納されたアドレスとがポインタにより接続される。なお、文字列“Ｄ”がオブジェクト枠２２１からはみ出るか否かは、上述したように文字列“Ｄ”の情報はメモリ（メモリ２３でもよいし、それ以外の処理装置２０内のメモリ）に記憶されているため、大きさの情報と文字列を配置したときの位置関係とから判断することができる。また、テキスト情報生成部１１における１頁のオブジェクト枠１２１とレイアウタ２２における１頁のオブジェクト枠２２１は同じ大きさである。
【００２９】
そして、レイアウタ２２は１頁のレイアウトが終了したときの文字数情報を生成装置１０の文書生成部１２に出力する（Ｓ１４５）。上述の例では、レイアウタ２２は文字数情報として“３”を文書生成部１２に出力する。
【００３０】
文書生成部１２は、この文字数情報を例えば生成装置１０のモニタ画面上に表示等させる。これにより、テキスト情報を生成したユーザは１頁で表示可能な文字数の情報を得ることができ、例えば所定の操作をすることで、この文字数による印刷をキャンセルするか否かを選択することができる（Ｓ１４６）。キャンセルした場合（ＹＥＳ）、生成した文書に対する以後の処理は行われずにテキスト情報の生成処理に戻る（図３のＳ１１）。一方、キャンセルしない場合（ＹＥＳ）、文書生成部１２は、この文字数での印刷を行うべく、この文字数情報と関連付けられた文書を生成して処理装置２０に出力する（Ｓ１４７）。上述した例では、文字数情報は“３”であるため３文字分のテキスト情報と関連付けられた文書（図１１（Ａ）参照）が生成され処理装置２０に出力される。
【００３１】
その後、当該文書に対する解析、レイアウトをそれぞれ文書解析部２１、レイアウタ２２で行う（Ｓ１４８）。これにより、１頁のオブジェクト枠２２１にテキスト情報が収まり、以後の処理により、１枚の印刷用紙にテキスト情報が印刷される。
【００３２】
一方、レイアウト対象の要素がテキストでないとき（Ｓ１４３で“ＮＯ”）、文字数情報の生成等に関する上述した処理を行うことなく、Ｓ１４９に移行する。例えば、要素がイメージのときなどである。
【００３３】
Ｓ１４９においてレイアウタ２２は、文書内に他に要素があるか否か判断する。要素があれば（ＹＥＳ）、Ｓ１４２に移行して当該要素に対して上述の処理を繰り返す。一方、他に要素がないと（Ｓ１４９で“ＮＯ”）、文書内のすべての要素に対する処理が終了したことになるため、本レイアウト処理が終了する（Ｓ１５０）。そして、レイアウト後の要素に対してレンダリング、印刷処理（Ｓ１６）を行い、全体処理が終了する（Ｓ１７）。
【００３４】
以上説明したように、レイアウタ２２は、文書内の要素をレイアウトすることによりオブジェクト枠を１頁で表示するためのテキストの文字数情報を生成する。そして、文書生成部１２では、１頁のオブジェクト枠に対しこの文字数情報に基づくテキスト情報を関連付けて文書を生成する。その後、この文書に対して印刷等の処理を行うようにしたので、１頁内に収まるようテキストをレイアウトしたにも拘わらず複数頁にわたり印刷が行われる事態を回避することができる。
【００３５】
上述の例では、文字数情報に基づいて図１１（Ａ）のような文書を作成したが、例えば、図１１（Ｂ）に示すようにタグに属性情報を付加して、以後この属性情報を用いることで当該テキスト情報のレイアウト状態を確認することができる。例えば、この図の例では、“ｉｄ１”のレイアウトは終了したか等の情報を生成装置１０から処理装置２０に出力し、文書ポインタに格納された文字数情報等からレイアウトが終了したか否かの情報を生成装置１０は得ることができる。
【００３６】
また、上述の例では、レイアウト後の処理としてレンダリング処理や印刷処理等を行うようにしたが、勿論それ以外の、例えば、レイアウトした要素を表示するための表示処理を行うようにしてもよい。この場合、処理装置２０は表示装置として機能する。レイアウト処理で既に１頁内に収まるようテキスト情報がレイアウトされているため、複数頁にわたってテキストが表示される事態を回避することができる。
【００３７】
更に、上述した例では処理装置２０の例としてプリンタを用いて説明した。それ以外にも、例えば、上述したプロジェクタや、さらには、ファクシミリ、複写機などであってもよい。この場合に処理装置２０は印刷処理部２５の代わりに、それぞれの機能を実現するための処理部を有することになる。かかる場合でも上述した例と同様の作用効果を奏する。
【００３８】
更に、生成装置１０がパーソナルコンピュータで本発明に係るレイアウタ２２がこのコンピュータ内に実装されていてもよい。この場合に文書解析部２１もコンピュータ内に実装され、処理装置２０は印刷処理部２５等を備えるだけである。さらに、生成装置１０と処理装置２０とが一つの装置内に構成されていてもよい。いずれの場合も、レイアウタ２２と文書生成部１２とで上述した処理を行うようにすれば、全く同様の作用効果を奏することができるからである。
【図面の簡単な説明】
【００３９】
【図１】本発明が適用される処理システム１全体の構成を示す図である。
【図２】処理システム１における全体処理の動作を示すフローチャートである。
【図３】レイアウト処理の動作を示すフローチャートである。
【図４】レイアウト処理の動作を示すフローチャートである。
【図５】ＸＨＴＭＬ文書の作成例を示す図である。
【図６】ＤＯＭツリーと文書ポインタの例を示す図である。
【図７】本来のレイアウトの例とＸＨＴＭＬ文書の例を示す図である。
【図８】レイアウト処理の例を示す図である。
【図９】印刷例を示す図である。
【図１０】レイアウト処理の例と文書ポインタに対する処理の例を示す図である。
【図１１】ＸＨＴＭＬ文書の例を示す図である。
【符号の説明】
【００４０】
１  処理システム、  １０  生成装置、  １１  テキスト情報生成部、  １２  文書生成部、  ２０  処理装置、  ２１  文書解析部、  ２２  レイアウタ、  ２３  メモリ、  ２４  レンダリング部、  ２５  印刷処理部、  １２１  １頁分のオブジェクト枠、  １２２  テンプレート、  ２２１  １頁分のオブジェクト枠
【図１】
2006085495.tif 000003
【図２】
2006085495.tif 000004
【図３】
2006085495.tif 000005
【図４】
2006085495.tif 000006
【図５】
2006085495.tif 000007
【図６】
2006085495.tif 000008
【図７】
2006085495.tif 000009
【図８】
2006085495.tif 000010
【図９】
2006085495.tif 000011
【図１０】
2006085495.tif 000012
【図１１】
2006085495.tif 000013