(57)【特許請求の範囲】
【請求項１】
レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置であって、
前記各ブロックの要素を各属性毎に解析して、前記ドキュメントファイル中のテキストデータがあらかじめ設定される基準フォントサイズまたは、出力領域の横領域と前記ドキュメントファイルから抽出されたテーブルの最大横領域の比率から求められた拡大縮小率を掛けた文字サイズで印刷するように各ブロックの要素を印刷装置の用紙サイズで決定される複数の出力領域に配置する配置手段と、
前記配置手段により配置された複数の出力領域中から領域を変更する出力領域、フォントサイズ、書体、修飾を指定する指定手段と、
前記指定手段により指定された出力領域の変更に伴い、変更前の出力領域の横サイズと変更された出力領域の横サイズから求められた拡大縮小率に基づき文字サイズを変更し、変更された文字サイズで配置し、縦領域を求め、全体領域に反映させ、前記指定手段により指定されたフォントサイズ、書体、または修飾の変更に伴い、出力領域内のテキスト横領域は変更せず、フォントサイズ、書体、または修飾を変更して配置を行い、縦領域を求め、全体領域に反映させる変更手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記属性は、テキスト，イメージ，テーブルを含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記ドキュメントファイルは、ＨＴＭＬ形式，ＸＭＬ形式，ＨＴＭＬ形式またはＸＭＬ形式の拡張形式を含むことを特徴とする請求項１記載の情報処理装置。
【請求項４】
レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置における情報処理方法であって、
前記各ブロックの要素を各属性毎に解析して、前記ドキュメントファイル中のテキストデータがあらかじめ設定される基準フォントサイズまたは、出力領域の横領域と前記ドキュメントファイルから抽出されたテーブルの最大横領域の比率から求められた拡大縮小率を掛けた文字サイズで印刷するように各ブロックの要素を印刷装置の用紙サイズで決定される複数の出力領域に配置する配置工程と、
前記配置工程により配置された複数の出力領域中から領域を変更する出力領域、フォントサイズ、書体、修飾を指定する指定工程と、
前記指定工程により指定された出力領域の変更に伴い、変更前の出力領域の横サイズと変更された出力領域の横サイズから求められた拡大縮小率に基づき文字サイズを変更し、変更された文字サイズで配置し、縦領域を求め、全体領域に反映させ、前記指定工程により指定されたフォントサイズ、書体、または修飾の変更に伴い、出力領域内のテキスト横領域は変更せず、フォントサイズ、書体、または修飾を変更して配置を行い、縦領域を求め、全体領域に反映させる変更工程と、
を有することを特徴とする情報処理方法。
【請求項５】
前記属性は、テキスト，イメージ，テーブルを含むことを特徴とする請求項４記載の情報処理方法。
【請求項６】
前記ドキュメントファイルは、ＨＴＭＬ形式，ＸＭＬ形式，ＨＴＭＬ形式またはＸＭＬ形式の拡張形式を含むことを特徴とする請求項４記載の情報処理方法。
【請求項７】
レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置に、
前記各ブロックの要素を各属性毎に解析して、前記ドキュメントファイル中のテキストデータがあらかじめ設定される基準フォントサイズまたは、出力領域の横領域と前記ドキュメントファイルから抽出されたテーブルの最大横領域の比率から求められた拡大縮小率を掛けた文字サイズで印刷するように各ブロックの要素を印刷装置の用紙サイズで決定される複数の出力領域に配置する配置工程と、
前記配置工程により配置された複数の出力領域中から領域を変更する出力領域、フォントサイズ、書体、修飾を指定する指定工程と、
前記指定工程により指定された出力領域の変更に伴い、変更前の出力領域の横サイズと変更された出力領域の横サイズから求められた拡大縮小率に基づき文字サイズを変更し、変更された文字サイズで配置し、縦領域を求め、全体領域に反映させ、前記指定工程により指定されたフォントサイズ、書体、または修飾の変更に伴い、出力領域内のテキスト横領域は変更せず、フォントサイズ、書体、または修飾を変更して配置を行い、縦領域を求め、全体領域に反映させる変更工程とを実行させるためのプログラムを記録したコンピュータが読み取り可能な記憶媒体。
【請求項８】
前記属性は、テキスト，イメージ，テーブルを含むことを特徴とする請求項７記載の記憶媒体。
【請求項９】
前記ドキュメントファイルは、ＨＴＭＬ形式，ＸＭＬ形式，ＨＴＭＬ形式またはＸＭＬ形式の拡張形式を含むことを特徴とする請求項７記載の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置および情報処理方法および記憶媒体に関するものである。
【０００２】
【従来の技術】
近年、インターネット等の通信メディアの普及に伴い、パーソナルコンピュータ等の情報処理装置からネットワーク上のＷｅｂにアクセスして、種々のホームページの情報を閲覧し、所望とする情報をダウンロードして、種々のプリンタから印刷する機会が増大している。
【０００３】
この際、Ｗｅｂの交換文書データとして利用されているＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式で記述された文書データ、あるいは今後文書データの標準フォーマットとして期待されているＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式で記述された文書データをサーバからネットワークにつながったプリンタから印刷することとなる。
【０００４】
この場合において、ＨＴＭＬのデータを扱う情報処理装置においては、ＨＴＭＬのデータには出力時の用紙サイズや解像度等は意識せずに作成されている場合が多い。
【０００５】
また、ＨＴＭＬファイルの内容は、ブラウザと称せされる閲覧プログラム、例えばマイクロソフト社製のＩｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒやネットスケープ社製のＮｅｔｓｃａｐｅ  Ｎａｖｉｇａｔｏｒ等で領域の大きさが変更された場合に、変更された領域に合わせてレイアウトも変化できるように相対座標値や割合で定義されている場合が多い。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記ＨＴＭＬファイルをプリンタで印刷しようとした場合に、出力用紙サイズを意識して作成されていない為、期待したものと出力のサイズが異なって印刷される等の問題がある。
【０００７】
例えば出力用紙の用紙サイズに収まらず、領域をオーバして印刷されるものや、領域に収めようとすると、文字が小さくなってしまって読めなくなってしまう等の問題点があった。
【０００８】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、ブロックの要素を各属性毎に解析して、ドキュメントファイル中のテキストデータがあらかじめ設定される最小文字サイズ以上の文字サイズとして印刷可能なレイアウト形式のドキュメントファイルにフォーマット変換して、相対座標で指定されているドキュメントの各属性に従うデータと出力用紙のサイズとに基づき、適切な領域の割り当ておよび文字のサイズの割り当てを行い、且つ、割り当てた後、所望の要素の出力サイズを自在に修正，変更することにより、レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルから印刷装置に対する出力領域に適したレイアウトを行なった後、ユーザの要求に応じて配置した各要素の出力領域を自在に修正，変更することができる利便性に優れたドキュメントファイルを生成できる情報処理装置および情報処理方法および記憶媒体を提供することである。
【０００９】
【課題を解決するための手段】
本発明は、レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置であって、前記各ブロックの要素を各属性毎に解析して、前記ドキュメントファイル中のテキストデータがあらかじめ設定される基準フォントサイズまたは、出力領域の横領域と前記ドキュメントファイルから抽出されたテーブルの最大横領域の比率から求められた拡大縮小率を掛けた文字サイズで印刷するように各ブロックの要素を印刷装置の用紙サイズで決定される複数の出力領域に配置する配置手段と、前記配置手段により配置された複数の出力領域中から領域を変更する出力領域、フォントサイズ、書体、修飾を指定する指定手段と、前記指定手段により指定された出力領域の変更に伴い、変更前の出力領域の横サイズと変更された出力領域の横サイズから求められた拡大縮小率に基づき文字サイズを変更し、変更された文字サイズで配置し、縦領域を求め、全体領域に反映させ、前記指定手段により指定されたフォントサイズ、書体、または修飾の変更に伴い、出力領域内のテキスト横領域は変更せず、フォントサイズ、書体、または修飾を変更して配置を行い、縦領域を求め、全体領域に反映させる変更手段とを有することを特徴とする。
【００１４】
また、本発明は、レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルを処理可能な情報処理装置における情報処理方法であって、前記各ブロックの要素を各属性毎に解析して、前記ドキュメントファイル中のテキストデータがあらかじめ設定される基準フォントサイズまたは、出力領域の横領域と前記ドキュメントファイルから抽出されたテーブルの最大横領域の比率から求められた拡大縮小率を掛けた文字サイズで印刷するように各ブロックの要素を印刷装置の用紙サイズで決定される複数の出力領域に配置する配置工程と、前記配置工程により配置された複数の出力領域中から領域を変更する出力領域、フォントサイズ、書体、修飾を指定する指定工程と、前記指定工程により指定された出力領域の変更に伴い、変更前の出力領域の横サイズと変更された出力領域の横サイズから求められた拡大縮小率に基づき文字サイズを変更し、変更された文字サイズで配置し、縦領域を求め、全体領域に反映させ、前記指定工程により指定されたフォントサイズ、書体、または修飾の変更に伴い、出力領域内のテキスト横領域は変更せず、フォントサイズ、書体、または修飾を変更して配置を行い、縦領域を求め、全体領域に反映させる変更工程とを有することを特徴とする。
【００２７】
【発明の実施の形態】
図１は、本発明の情報処理装置を適用可能な文書印刷システムの構成を説明する図である。
【００２８】
図１において、本システムは、複数台のパーソナルコンピュータ（以下、クライアントパソコンという）Ｘ、Ｙと、１台のファイルサーバＦＳと、１台のＷｅｂサーバＷＳと、少なくとも１台のＸＭＬデータを処理できるプリンタＡが、ネットワークＮにより接続された構成となっている。
【００２９】
そして、携帯情報端末のようなモバイル端末ＭがプリンタＡに対して直接ＩｒＤＡ、ＲＳ−２３２Ｃやセントロニクスなどを通してネットワークに接続することなくプリンタＡと通信可能につながっている。
【００３０】
なお、クライアントパソコンＸ、Ｙの代わりに、ワードプロセッサ、ワークステーション、携帯情報端末等の情報処理装置を接続することも可能である。また、クライアントパソコンＸ、ＹおよびファイルサーバＦＳは、複数種のフォントにかかるフォントデータ群やＷｅｂのデータや画像データ等が格納されている。
【００３１】
本システムでは、モバイル端末ＭあるいはクライアントパソコンＸまたはＹからプリンタＡに対して印刷したいｗｅｂのＵＲＬや印刷部数等の印刷要求を出し、プリンタＡからＷｅｂサーバにファイル要求を出し、Ｗｅｂサーバは必要な文書データやフォントデータ等をファイルサーバより集めて、プリンタＡに転送し、プリンタはその転送されたデータを展開することによって印刷する。
【００３２】
図２は、図１に示したクライアントパソコンＸ、Ｙ及びファイルサーバＦＳ及びＷｅｂサーバＷＳの概略構成を示すブロック図である。
【００３３】
図２において、１０１はＣＰＵ、すなわち中央処理装置であり、この装置全体の制御及び演算処理等を行う。１０２はＲＯＭであり、システム起動プログラムおよび文字変換用の文字パターンデータ等を記憶する。１０３はＲＡＭであり、ＣＰＵ１０１の演算に使用するデータ、ＣＰＵ１０１の演算結果を一時記憶する。
【００３４】
１０４はキーボード制御部（ＫＢＣ）であり、キーボード（ＫＢ）１０５よりキー入カデータ（文字コードや制御コード）を受け取りＣＰＵ１０１へ伝達する。１０６はディスプレイ制御部（ＣＲＴＣ）であり、ＲＡＭ１０３に格納された表示情報、すなわち、文字コードから変換されたビットマップイメージを読み出し、ＣＲＴｌ０７に転送する。なお、ＣＲＴ１０７は、ＣＲＴＣ１０６よりビットマップイメージを受け取り表示画面に表示する。
【００３５】
１０８はディスク制御部（ＤＫＣ）であり、外部記憶装置１０９のデータ伝送等の制御を行う。１０９は外部記憶装置で、ＦＤすなわちフロッピーディスク装置、あるいはＨＤすなわちハードディスク装置、あるいはＣＤ−ＲＯＭ等で構成される。外部記憶装置１０９にはプログラムおよびデータを記憶させておき、ＣＰＵ１０１は必要に応じて記憶データを参照したり、またはＲＡＭ１０３にロードする。
【００３６】
１１０はネットワーク制御部（ＮＴＣ）であり、ネットワーク装置（ＮＴ）１１１の通信動作制御を行う。１１２はシステムバスであり、上述の構成要素間のデータ転送を行う。
【００３７】
図３は、図２に示したＲＡＭ１０３のメモリマップの一例を示す図であり、図１に示したシステム構成におけるメモリマップに対応する。
【００３８】
図３において、本装置は、基本Ｉ／Ｏプログラム、ウインドウシステム等のオペレーティングシステム、および本発明の処理となるアプリケーションが実行されることにより動作する。基本Ｉ／Ｏプログラムは、図１に示したＲＯＭ１０２に格納されている。オペレーティングシステムは、図１に示した外部記憶装置１０９に示すハードディスク（ＨＤ）に格納されている。そして、電源がＯＮされたときに、基本Ｉ／Ｏプログラム中のＩＰＬ（イニシャライズプログラムローディング）機能によりＨＤからオペレーティングシステムがＲＡＭに読み込まれ、その動作が開始される。
【００３９】
なお、本発明に係るプログラム及び関連データは、図１に示した外部記憶装置１０９におけるフロッピーディスク（ＦＤ）あるいはＣＤ−ＲＯＭ等の記憶媒体を介して供給される。そして、ＦＤあるいはＣＤ−ＲＯＭからプログラム及び関連データを一旦ＨＤヘインストールすることにより、ＨＤからＲＡＭ１０３にロードし実行することが可能となる。また、ＨＤヘインストールせずに直接ＦＤあるいはＣＤ−ＲＯＭからＲＡＭロードして実行することも可能である。
【００４０】
図３において、２１０は基本Ｉ／Ｏプログラムで、ＲＯＭ１０２等よりＲＡＭ１０３にロードされ実行可能となった状態を示す。
【００４１】
２１１はウインドウシステム等のオペレーティングシステムがＲＡＭ１０３にロードされ実行可能となった状態を示す。２１２は本発明のプログラム等を含むアプリケーションがＲＡＭ１０３にロードされ実行可能となった状態を示す。
【００４２】
２１３は関連データで、ＲＡＭ１０３にロードされ実行可能となった状態を示し、２１４は各々のプログラムが使用するワークエリアである。
【００４３】
なお、基本Ｉ／Ｏプログラムは、ＲＯＭ１０２内のシステム起動プログラムによりＲＡＭ１０３に読み込まれる。また、外部記憶装置１０９としてのフロッピーディスク装置、あるいはＣＤ−ＲＯＭからアプリケーションプログラム、及び関連データを一旦、ハードディスク装置ヘインストールした状態で電源がＯＮされたときに、ハードディスク装置からＲＡＭ１０３にロードすることにより、実行することが可能となる。
【００４４】
なお、ハードディスク装置ヘインストールせずに、直接フロッピーディスク装置、或いはＣＤ−ＲＯＭからＲＡＭ１０３にロードして実行することも可能である。なお、ファイルサーバＦＳでは、後述のプリンタ情報テーブルが関連データの領域に形成されている。
【００４５】
図４は、図１に示したプリンタＡの構成を説明するブロック図であり、図１に示した文書処理システムのネットワーク装置１１１とネットワーク装置を介して通信可能に構成されているものとする。
【００４６】
なお、本システムにおける出力エンジンは、レーザビームプリンタであってもよいし、バブルジェットプリンタあるいは熱転写等の出力エンジンであってもよい。また、ＸＭＬ形式の文書データ，図形データ，表形式データ，画像データを印刷処理できる機能を有している。
【００４７】
図４において、２１１はＣＰＵであり、この装置全体の制御および演算処理等を行うものである。２１２はＲＯＭであり、システム起動プログラムおよび書体別の文字パターンデータ等を記憶している。
【００４８】
２１３はＲＡＭであり、使用制限のないデータ記憶領域であり、様々な処理毎に各々のプログラムおよびデータがロードされ実行される領域である。
【００４９】
２１５はプリンタコントローラ（ＰＲＴＣ）であり、２１６はプリンタエンジン（ＰＲＴ）である。２１４はシステムバスであり、上述の構成要素間のデータの通路となるべきものである。２１７はディスクコントローラ（ＤＫＣ）で、ハードディスク２１８に対するデータ書込アクセスとデータ読み出しアクセスを制御する。２１９はネットワーク制御部（ＮＴＣ）であり、ネットワーク装置（ＮＴ）２２０の動作制御を行う。
【００５０】
なお、ＲＯＭ２１２には、文字パターンデータ（フォントデータ）等が格納されている。そしてＲＡＭ２１３またはＨＤ２１７には、ＷｅｂサーバＷＳへ要求した文書データやイメージデータあるいはフォントデータ等がＷｅｂサーバＷＳからダウンロードされ、格納される。
【００５１】
ＣＰＵ２１１は、ＷｅｂサーバＷＳから供給された文書データ、イメージデータあるいはフォントデータを、ＲＯＭ２１２内にあるプログラムに従って文字パターンデータや画像データ（ビットマップデータ）を生成して、プリンタコントローラ２１５内の印刷バッファに展開する。
【００５２】
プリンタコントローラ２１５は、ビットマップデータに基づいて生成した印刷コントロール信号をプリンタエンジン２１６に出力する。ネットワークコントローラ２１７は、図１に示したネットワークＮを介してクライアントパソコンＸ，ＹやファイルサーバＦＳとの間でデータ送受信を行う際のネットワーク装置（ＮＴ）２１８の動作を制御している。
【００５３】
図５は、本発明に係る情報処理装置におけるドキュメントの変換処理状態を説明するブロック図である。
【００５４】
本処理の流れは、ホスト側の処理とプリンタ側の処理に分かれていて、ホスト側の処理は、図１に示したＷｅｂサーバＷＳ上で行なわれたり、クライアントパソコンＸまたはクライアントパソコンＹで処理されたりする。
【００５５】
本処理はまず、例えば図１に示したファイルサーバＦＳよりＸＭＬ形式で保存されたドキュメントあるいはＨＴＭＬ形式で保存されたドキュメントを読み込み、それを一旦ＸＨＴＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）の形式のデータに変換する。そして、そこから図９に示すフローチャートに従って出力用紙サイズや解像度にしたがって適切なレイアウトを行なうＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃ）に変換を行なう。
【００５６】
そして、その自動的にレイアウトしたドキュメントに対して、ユーザの思惑と異なる出力になっている場合が発生する。このときに、ユーザが所望の出力に変更できるようにパソコン画面上に自動的にレイアウトされたドキュメントの印刷イメージを表示し、その表示画面上でレイアウト事態を編集できるようにし、編集した結果を新たなＳＶＧドキュメントとしてプリンタヘ出力する。このときのレイアウト編集の詳細は図１１に示すフローチャートを用いて詳述する。
【００５７】
なお、ＸＨＴＭＬおよびＳＶＧの内容については、Ｗ３Ｃのテクニカルレポートに記載されている。基本的にＸＨＴＭＬは、ＨＴＭＬの文法をＸＭＬ形式に従って拡張したものであり、表示処理に適している。
【００５８】
一方、ＳＶＧは、ＰＳ（アドビ社製のＰｏｓｔＳｃｒｉｐｔ）等のページ記述の文法に似たものであり、ＸＭＬ拡張されたものであり、出力フオーマットに適している。したがって、ＨＴＭＬやＸＭＬの文書データを一旦ＸＨＴＭＬに変換し、さらにそこで出力用紙サイズや解像度を得て、ＳＶＧ形式のデータに変換し、それをＳＶＧが解釈できるプリンタヘＳＶＧファイルで転送するのである。そうすることによって、ＸＭＬやＨＴＭＬでかかれた文書データを適切にレイアウトして出力することが可能となる。
【００５９】
図６は、図５に示したＸＨＴＭＬ形式のドキュメント例を説明する図であり、図７は、図６に示したＸＨＴＭＬ形式のドキュメント例のレイアウト構造を説明する図であり、図８は、図７に示したＸＨＴＭＬ形式のドキュメントのＳＶＧ変換リスト例を説明する図である。
【００６０】
次に、図９に示すフローチャートに従って、本発明に係る情報処理装置におけるＸＨＴＭＬ形式の文書データからＳＶＧ形式の画像等を含む文書データ（ドキュメント）に変換する処理の詳細な流れの説明を行なう。
【００６１】
図９は、本発明に係る情報処理装置における第１のデータ処理手順の一例を示すフローチャートである。なお、（５−１）〜（５−１１）は各ステップを示す。
【００６２】
先ず、ステップ（５−１）では、変換元となるＸＨＴＭＬ形式のデータの中からまず変換の基準となるフォントサイズを求める。なお、基準となるフォントサイズは、ＸＨＴＭＬのファイルでは、特に指定されていない。
【００６３】
従って、各ブラウザが独自に基準フォントサイズを定めていることが多いが、ここでは出力用紙への基準フォントサイズとしてｌ０ポイントあるいは１０．５ポイント等の値を定める。
【００６４】
また、ＸＨＴＭＬドキュメントの中に基準フォントサイズが記入してあるような場合には、その値を基準フォントサイズとして定める。
【００６５】
次に、ステップ（５−２）においては、ＸＨＴＭＬドキュメント全体をチェックして、テーブルの属性がないかどうかを調べて最大横サイズテーブルを抽出し、テーブルの属性がない場合には、所定の出力したい用紙や画面のサイズの横領域が各ＸＨＴＭＬ要素であるタグの横領域の基準となるサイズとなる。
【００６６】
一方、テーブルの属性が存在する場合には、各テーブルの内容を比較する。例えばＸＨＴＭＬの＜ＴＡＢＬＥ＞の要素にｗｉｄｔｈの属性があった場合には、その値がテーブルの幅の値となるので、その値が最大のものを選択する。
【００６７】
一方、＜ＴＡＢＬＥ＞の要素にｗｉｄｔｈの属性がない場合には出力領域の横領域がそのテーブルの横領域となる。
【００６８】
次に、ステップ（５−３）においては、ステップ（５−２）で抽出されたテーブルの最大値から出力領域の拡大縮小率を算定（計算）する。なお、計算方法は出力領域の横領域と、ステップ（５−２）で求めたテーブルの最大横領域の比率から求めることができる。つまり、拡大縮小率＝出力領域の横領域／テーブルの最大横領域となる。
【００６９】
そして、ステップ（５−４）以降において、各要素の配置および要素内の文字の配置位置等の計算を行なうため、ステップ（５−４）においては、まず対象となる要素がテーブル要素なのかテキスト要素なのかイメージ要素なのかの判定を行なう。
【００７０】
ここで、テーブル要素例としては、＜ＴＡＢＬＥ＞、＜ＴＲ＞、＜ＴＨ＞、＜ＴＤ＞、＜ＣＡＰＴＩＯＮ＞、＜ＴＨＥＡＤ＞、＜ＴＦＯＯＴ＞、＜ＴＢＯＤＹ＞等がある。テキスト要素としては、＜Ｈｌ＞〜＜Ｈ６＞、＜Ｐ＞、＜Ｑ＞、＜ＢＬＯＣＫＱＵＯＴＥ＞、＜ＥＭ＞、＜ＳＴＲＯＮＧ＞、＜ＳＵＰ＞、＜ＳＵＢ＞等がある。
【００７１】
そして、イメージ要素としては、＜ＩＭＧ＞、＜ＭＡＰ＞、＜ＡＲＥＡ＞、＜ＯＢＪＥＣＴ＞、＜ＡＰＰＬＥＴ＞等がある。それぞれの要素の意味については、
ＷＷＷ上のアドレス、例えばｈｔｔｐ：／／ＷＷＷ．Ｗ３．ｏｒｇ／ＴＲ／ｘｈｔｍｌ１／  に記載されているＸＨＴＭＬの仕様や、ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／ＴＲ／ｈｔｍ１４０／  に記載されているＨＴＭＬの仕様に準ずるものとする。
【００７２】
そして、対象となる要素がテーブルの要素であると判定された場合には、ステップ（５−５）へ進み、テキストの要素であると判定した場合には、ステップ（５−６）へ進み、イメージの要素であると判定した場合には、ステップ（５−７）ヘ進む。
【００７３】
そして、ステップ（５−５）においては、テーブルの要素であると判定された場合であり、テーブル内の配置を行なう。ここでの処理の詳細については、図１０に示すフローチャートを用いて詳細に説明するのでここでの説明は省略する。
【００７４】
一方、ステップ（５−６）においては、テキストの要素であると判定された場合であり、テキスト要素内にある個々の文字に対する配置位置の決定を行なう。テキスト領域のうちブロック要素とインライン要素に分かれるが、ブロック要素としては、＜Ｈｌ＞〜＜Ｈ６＞、＜Ｐ＞要素等がある。また、インライン要素としては、＜ＥＭ＞、＜ＳＴＲＯＮＧ＞等がある。さらに、インライン要素はブロック要素の子要素として文章中のある文字列を強調したり、色を変えたりするときに使用される。
【００７５】
テキストのブロック要素の配置方法としては、まずテキスト領域の横領域を決定する。
【００７６】
ここでは、テキスト要素の親要素の横領域がテキスト領域の横領域ということになる。例えば親要素が＜ＸＨＴＭＬ＞であれば、それが最上位要素ということになるので、出力すべき用紙や画面のサイズの横領域がテキスト領域の横領域として設定される。
【００７７】
そして、文字の大きさに関しては、上記Ｗ３Ｃの仕様であるＣＳＳのプロパティで指定されている場合には、その値に対して、特に文字のサイズを指定していない場合には、ステップ（５−１）で求めた標準の文字サイズに対して、ステップ（５−３）で求めた拡大縮小率をかけた値を文字サイズの大きさとする。
【００７８】
そして、このとき決定された文字サイズの大きさは、後述するステップ（５−１０）で、あらかじめ設定された最小サイズより大きい値に設定されているかどうかをチェックするので、保存しておく。そして、決定された文字サイズで文字を一文字ずつ配置していき、横領域を越えるところで文字の折り返しを行ない、次の行の先頭から続きを配置していく。そして、すべての文字を配置し終わったときに、そのときの行数とフォントサイズから領域の高さを計算する。このとき行間の大きさはＣＳＳのプロパティで指定されている場合にはそれに従い、特に指定がない場合には、文字の高さに対してある一定の値を標準として、その行間の値を設定する。
【００７９】
また、テキストのインライン要素の配置方法としては、インラインに指定された文字列の一つ前の文字の配置位置の終了点を基準点とし、そこから要素で指定された文字種や文字サイズで各文字のピッチ情報に従って配置していく。
【００８０】
一方、ステップ（５−７）においては、イメージの要素であると判定された場合であり、イメージ要素の領域の決定と配置位置の決定の処理を行う。なお、本実施形態において、イメージ領域の大きさの決定方法は、イメージ領域の大きさがＸＨＴＭＬドキュメントの中で指定してある大きさに対して、ステップ（５−３）で求めた拡大縮小率をかけた領域の大きさになる。
【００８１】
そして、ステップ（５−８）において、ステップ（５−５）からステップ（５−７）で求めた各要素の内容をＳＶＧデータに変換する。このとき、テキストの要素は＜ｔｓｐａｎ＞にイメージ要素は＜ｉｍａｇｅ＞に変換される。
【００８２】
これにより、例えば図７に示したレイアウトのデータは、図６図に示したＸＨＴＭＬのドキュメントで表され、それをＳＶＧで表現すると図８に示したようになる。
【００８３】
次に、ステップ（５−９）においては、すべての要素に対してステップ（５−５）からステップ（５−７）の処理が終了したかどうかをチェックし、まだ処理が終了していないと判断した場合には、ステップ（５−４）へ戻って、各要素の配置位置の計算を行なう。
【００８４】
一方、ステップ（５−９）で、すべての要素に対して処理が終了していると判定した場合には、ステップ（５−１０）で、すべての要素の配置位置が計算された後、ドキュメント全体を＜ｓｖｇ＞と＜／ｓｖｇ＞で囲み、必要に応じてスタイルシートを＜ｓｔｙｌｅ＞要素で定義するＳＶＧ変換を行い、ｓｖｇドキュメントの作成処理を終了する。
【００８５】
図１０は、本発明に係る情報処理装置における第２のデータ処理手順の一例を示すフローチャートであり、図９に示したステップ（５−５）のテーブルの内容の配置位置の計算を行なう詳細手順に対応する。なお、（６−１）〜（６−８）は各ステップを示す。
【００８６】
先ず、ステップ（６−１）ではテーブル内の各セルの横領域の計算を行なう。なお、本実施形態において、各セルの横領域の計算方法は、＜ＴＲ＞要素で囲まれる各セルの領域の大きさを合計して、親要素であるテーブル要素の横領域を各セルの割合に応じて割り当てる。
【００８７】
例えばＸＨＴＭＬのドキュメント内のあるテーブルの子要素としてセルが３つあり、それぞれのセルの横領域が、セル１が「１０」、セル２が「２０」、セル３が「１０」で、親要素のテーブルの横領域が「１００」である場合、セル１の横領域は１００×（１０／４０）＝２５となり、同様にセル２の横領域は「５０」、セル３の横領域は「２５」となる。
【００８８】
次に、ステップ（６−２）においては、各セルの内容をチェックする各セルの内容としては、さらにテーブルになっている場合、テキストになっている場合、あるいはイメージになっている場合がある。
【００８９】
そして、それぞれの判定方法は、図９に示したステップ（５−４）で述べた方法と同様に、＜ＴＡＢＬＥ＞、＜ＴＲ＞、＜ＴＨ＞、＜ＴＤ＞、＜ＣＡＰＴＩＯＮ＞、＜ＴＨＥＡＤ＞、＜ＴＦＯＯＴ＞、＜ＴＢＯＤＹ＞等の要素であればテーブル要素と判定し、ステップ（６−７）に進み、拡大縮小率を再計算して、ステップ（６−１）に戻って、再起的にテーブル要素の処理を行なう。
【００９０】
なお、ステップ（６−７）は、セルの中にさらにテーブルの要素であると判定された場合であり、対象となるテーブルの親要素となるセルの大きさはステップ（６−１）で求めてあるので、その大きさに収まるようにテーブルのサイズを変換する必要がある。そして、そのときの計算方法は、拡大縮小率＝親要素のテーブルの拡大統小率×テーブルの横サイズ÷親要素のセルの横幅となる。
【００９１】
一方、ステップ（６−２）で、＜Ｈｌ＞〜＜Ｈ６＞、＜Ｐ＞、＜Ｑ＞、＜ＢＬＯＣＫＱＵＯＴＥ＞、＜ＥＭ＞、＜ＳＴＲＯＮＧ＞、＜ＳＵＰ＞、＜ＳＵＢ＞等の要素であればテキスト要素と判定し、ステップ（６−３）へ進み、そして、＜ＩＭＧ＞、＜ＭＡＰ＞、＜ＡＲＥＡ＞、＜ＯＢＪＥＣＴ＞、＜ＡＰＰＬＥＴ＞等の要素であればイメージと判定し、ステップ（６−６）へ進む。
【００９２】
そして、ステップ（６−３）からステップ（６−５）においては、テキストの要素であると判定された場合であり、テキスト要素内にある個々の文字に対する配置位置の決定を行なう。
【００９３】
なお、テキスト領域のうちブロック要素とインライン要素に分かれるが、ブロック要素としては、＜Ｈｌ＞〜＜Ｈ６＞、＜Ｐ＞要素等があり、インライン要素としては、＜ＥＭ＞、＜ＳＴＲＯＮＧ＞等がある。インライン要素はブロック要素の子要素として文章中のある文字列を強調したり、色を変えたりするときに使用される。
【００９４】
また、テキストのブロック要素の配置方法としては、まずテキスト領域の横領域を取り込む。ここでは、ステップ（６−１）で決定したセルの横領域がここで対象となるテキストの横領域となる。
【００９５】
先ず、ステップ（６−３）では、文字の大きさに関して、Ｗ３Ｃの仕様であるＣＳＳのプロパティで指定されている場合にはその値に対して、特に文字のサイズを指定していない場合には、図９に示したステップ（５−１）で求めた標準の文字サイズに対して、ステップ（５−３）あるいはステップ（６−７）で求めた拡大縮小率をかけた値を文字サイズの大きさとする。
【００９６】
そして、このとき決定された文字サイズの大きさは、図９に示したステップ（５−１０）であらかじめ設定された最小サイズより大きい値に設定されているかどうかをチェックするので、保存しておく。
【００９７】
そして、ステップ（６−４）において決定された文字サイズで文字を１文字ずつ配置していき、横領域を越えるところで文字の折り返しを行ない、次の行の先頭から続きを配置していく。また、テキストのインライン要素の配置方法としては、インラインに指定された文字列の一つ前の文字の配置位置の終了点を基準点とし、そこから要素で指定された文字種や文字サイズで各文字のピッチ情報に従って配置し行き、すべての文字を配置し終わったとき、ステップ（６−５）において行数とフォントサイズから領域の高さを計算する。
【００９８】
このとき行間の大きさは、ＣＳＳのプロパティで指定されている場合にはそれに従い、特に指定がない場合には、文字の高さに対してある一定の値を標準として、その行間の値を設定する。
【００９９】
一方、ステップ（６−２）で、イメージの要素であると判定された場合であり、ステップ（６−６）へ進み、イメージ要素の領域の決定と配置位置の決定の処理を行なう。なお、本実施形態において、イメージ領域の大きさの決定方法は、イメージ領域の大きさがＸＨＴＭＬドキュメントの中で指定してある大きさの縦横比を、ステップ（６−１）で求めたセルの横領域に適用して高さを求める。
【０１００】
そして、ステップ（６−８）においては、さらに処理すべきセルが存在するかどうかをチェックし、セルが存在すると判定した場合には、ステップ（６−２）へ戻って同様の処理を行ない、セルが存在しないと判定した場合には、処理を終了する。
【０１０１】
図１１は、図１に示したクライアントパソコンＸ，Ｙの表示装置に表示される印刷イメージの一例を示す図である。
【０１０２】
図において、矢印は図示しないポインティングデバイス等によるカーソルで、編集した領域、例えば見出し領域を指示して、その領域が他の領域と異なる形態で表示し、現在選択されている状態を示す。
【０１０３】
図１２は、本発明に係る情報処理装置における第３のデータ処理手順の一例を示すフローチャートであり、印刷イメージが表示された画面上でのレイアウト編集処理手順に対応する。なお、（７−１）〜（７−１６）は各ステップを示す。
【０１０４】
先ず、ステップ（７−１）においては、図１に示すようにクライアントパソコンＸ，Ｙの表示装置の画面上に表示された現在のＳＶＧドキュメントのレイアウトイメージに対して、テーブル、テキストやイメージの領域単位でレイアウトを編集したい場合に、対象編集領域をマウス等で指定する。
【０１０５】
そして、ステップ（７−２）では、指定された領域がテーブルの領域なのかテキストの領域なのか、あるいはイメージ領域なのかを判定する。
【０１０６】
そして、指定した領域がテーブル領域であると判定した場合には、ステップ（７−３）へ進み、イメージ領域であると判定した場合には、ステップ（７−５）へ進み、テキスト領域であると判定した場合には、ステップ（７−６）へ進む。
【０１０７】
そして、ステップ（７−３）へ進んだ場合には、指定された領域がテーブルであるので、テーブル全体の領域を広げたり、小さくしたりして領域の変更を行なう。このときの領域の変更方法としては、ポインティングデバイス等のマウスのドラッグ機能を使ってもよいし、ＵＩ画面上で直接値を入力する等の方法も考えられるが、ここでは特にその指定方法については言及しない。
【０１０８】
そして、ステップ（７−４）において、変更された領域に対応させてそれぞれのセルの内容を変更する。
【０１０９】
具体的には、まず変更された全体領域と変更前の全体領域を比較して拡大縮小率を求め、その拡大縮小率を各セルの内容にも反映させる。例えばセルの内容がテキストであった場合には、各文字の配置位置やフォントサイズ等にも同様の拡大縮小率を適用する。またイメージの場合には、イメージ領域の縦横のサイズに対して同様の拡大縮小率を適用する。
【０１１０】
一方、ステップ（７−５）へ進んだ場合には、指定された領域がイメージの場合であるので、イメージ領域を広げたり、小さくしたりして、その元のイメージ領域と変更されたイメージ領域の比率によってイメージの縦横の領域を変更する。
【０１１１】
一方、ステップ（７−２）で、指定した領域がテキストの場合は、ステップ（７−６）からステップ（７−１４）においては、テキスト領域に関しての変更を後述するように行う。
【０１１２】
まず、ステップ（７−６）では、テキスト領域に関して領域の変更に関すものかどうかをチェックする。領域に関する変更であると判定した場合は、ステップ（７−７）へ進み、領域以外のフォントサイズや書体に関する変更であると判定した場合には、ステップ（７−８）へ進む。
【０１１３】
そして、ステップ（７−７）では、テキストの領域に関して変更があった場合であるので、元のテキスト領域の大きさと変更後のテキスト領域の大きさのうち、横サイズの比率を、各文字のフォントサイズに適用する。そして、新たなフォントの大きさが定義されたので、領域の配置位置を計算し、新たな文字のサイズで配置を行なう。そして、配置し終わった後、配置後の縦領域が変更された領域の縦領域より小さい場合は、変更された縦領域を新たな縦領域として使い、配置後の縦領域が変更された縦領域より大きい場合は、配置後の縦領域を新たな縦領域として使う。
【０１１４】
一方、ステップ（７−６）で、変更の指定が領域の変更指定ではないと判定された場合には、すなわち、直接フォントのサイズや書体や修飾等の指定であった場合、ステップ（７−８）からステップ（７−１４）の処理に移り、ステップ（７−８）では、変更の指定内容を判定し、変更の指定内容がフォントサイズの指定であったと判定した場合にはステップ（７−９）へ進み、書体の変更指定であと判定した場合はステップ（７−１１）へ進み、ボールド体やイタリック体等への修飾文字への変更指定であると判定した場合はステップ（７−１３）へ進む。
【０１１５】
そこで、ステップ（７−９）においては、変更の指定がフォントサイズの指定であった場合であるので、サイズの変更と配置を行う。
【０１１６】
具体的には、元のテキスト領域のうち横領域は変更せず、新たに指定されたフォントサイズで１文字ずつ配置していく。なお、横領域を越える場合には文字がそこで折り返されるものとする。
【０１１７】
そして、ステップ（７−１０）において、全ての文字列が配置された後、縦領域を求め、その大きさがテキスト領域の新たな縦領域となる。
【０１１８】
一方、ステップ（７−８）で、書体の変更指定と判定された場合には、ステップ（７−１１）においては、元のテキスト領域のうち横領域は変更せず、新たに指定された書体のフォントで１文字ずつ配置していく。なお、横領域を越える場合には文字がそこで折り返されるものとする。
【０１１９】
そして、ステップ（７−１２）において、全ての文字列が配置された後、縦領域を求め、その大きさがテキスト領域の新たな縦領域となる。
【０１２０】
一方、ステップ（７−８）で、変更の指定がフォントの修飾としてボールド体やイ夕リック体へのあるいは修飾なしの文字への変更の指定であったと判定された場合は、ステップ（７−１３）で、元のテキスト領域のうち横領域は変更せず、新たに指定された書体のフォントで１文字ずつ配置していく。なお、横領域を越える場合には文字がそこで折り返されるものとする。
【０１２１】
そして、ステップ（７−１４）において、全ての文字列が配置された後、縦領域を求め、その大きさがテキスト領域の新たな縦領域となる。
【０１２２】
次に、ステップ（７−１５）においては、変更された領域を全体の領域に反映させて新たにベージレイアウトを行なう。
【０１２３】
そして、ステップ（７−１６）においては、ユーザが現在のレイアウトで満足して終了を指示しているかどうかを判定して、終了を指示していると判定した場合には、処理を終了し、満足しない場合には、ステップ（７−１）に戻って、さらに同一の領域や他の領域等を指定し、新たな領域変換を行なっていく。
【０１２４】
これにより、図１３及び図１４に示すようにレイアウトをユーザが意図するレイアウトに変更して印刷処理することが可能となる。
【０１２５】
図１３，図１４は、本発明に係る情報処理装置におけるレイアウト編集出力例を示す図である。
【０１２６】
なお、図１３に示すレイアウト編集出力例では、タイトルの「見出し」の文字を大きくした為にページ領域をオーバした為に、テーブル領域を編集対象領域として指定した状態に対応し、図１４は、図１３に示したページ領域をオーバしたテーブル領域ＴＡＢ１の領域をテーブル領域ＴＡＢ２として調整して１ページ内に収めた例である。
【０１２７】
上記実施形態によれば、ＨＴＭＬファイルを印刷しようとした場合に、出力用紙サイズを意識して作成されていない為、出力用紙の用紙サイズに収まらず、領域をオーバして印刷されるものや、領域に収めようとすると、文字が小さくなってしまって読めなくなってしまう等の問題点を解決し、さらに、ＨＴＭＬの文書データの相対座標で指定されているデータと出力用紙のサイズを元にして、適切な領域の割り当てを行なった後、ユーザの指定により所望の領域を指定して領域やフォントサイズ等を変更可能にすることが可能となる。
【０１２８】
以下、図１５に示すメモリマップを参照して本発明に係る情報処理装置を適用可能な印刷システムで読み出し可能なデータ処理プログラムの構成について説明する。
【０１２９】
図１５は、本発明に係る情報処理装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０１３０】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１３１】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１３２】
本実施形態における図９，図１０，図１２に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１３３】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１３４】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１３５】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ等を用いることができる。
【０１３６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３８】
【発明の効果】
以上説明したように、本発明によれば、ブロックの要素を各属性毎に解析して、ドキュメントファイル中のテキストデータがあらかじめ設定される最小文字サイズ以上の文字サイズとして印刷可能なレイアウト形式のドキュメントファイルにフォーマット変換して、相対座標で指定されているドキュメントの各属性に従うデータと出力用紙のサイズとに基づき、適切な領域の割り当ておよび文字のサイズの割り当てを行い、且つ、割り当てた後、所望の要素の出力サイズを自在に修正，変更することにより、レイアウトが規定されない属性の異なる複数のブロックからなるドキュメントファイルから印刷装置に対する出力領域に適したレイアウトを行なわれた後、ユーザの要求に応じて配置した各要素の出力領域を自在に修正，変更することができる利便性に優れたドキュメントファイルを生成できる等の効果を奏する。
【図面の簡単な説明】
【図１】本発明の情報処理装置を適用可能な文書印刷システムの構成を説明する図である。
【図２】図１に示したクライアントパソコン及びファイルサーバ及びＷｅｂサーバの概略構成を示すブロック図である。
【図３】図２に示したＲＡＭのメモリマップの一例を示す図である。
【図４】図１に示したプリンタの構成を説明するブロック図である。
【図５】本発明に係る情報処理装置におけるドキュメントの変換処理状態を説明するブロック図である。
【図６】図５に示したＸＨＴＭＬ形式のドキュメント例を説明する図である。
【図７】図６に示したＸＨＴＭＬ形式のドキュメント例のレイアウト構造を説明する図である。
【図８】図７に示したＸＨＴＭＬ形式のドキュメントのＳＶＧ変換リスト例を説明する図である。
【図９】本発明に係る情報処理装置における第１のデータ処理手順の一例を示すフローチャートである。
【図１０】本発明に係る情報処理装置における第２のデータ処理手順の一例を示すフローチャートである。
【図１１】図１に示したクライアントパソコンの表示装置に表示される印刷イメージの一例を示す図である。
【図１２】本発明に係る情報処理装置における第３のデータ処理手順の一例を示すフローチャートである。
【図１３】本発明に係る情報処理装置におけるレイアウト編集出力例を示す図である。
【図１４】本発明に係る情報処理装置におけるレイアウト編集出力例を示す図である。
【図１５】本発明に係る情報処理装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  ＫＢＣ
１０５  キーボード
１０６  ＣＲＴＣ
１０７  ＣＲＴ
１０８  ＤＫＣ
１０９  外部記憶装置
１１０  ＮＴＣ
１１１  ＮＴ
１１２  システムバス
【図１】
0004536872.tif 000002
【図２】
0004536872.tif 000003
【図３】
0004536872.tif 000004
【図４】
0004536872.tif 000005
【図５】
0004536872.tif 000006
【図６】
0004536872.tif 000007
【図７】
0004536872.tif 000008
【図８】
0004536872.tif 000009
【図９】
0004536872.tif 000010
【図１０】
0004536872.tif 000011
【図１１】
0004536872.tif 000012
【図１２】
0004536872.tif 000013
【図１３】
0004536872.tif 000014
【図１４】
0004536872.tif 000015
【図１５】
0004536872.tif 000016