(57)【要約】【課題】メモリ容量の小さい携帯端末においてメモリオーバーを確実に回避しながら構造化文書の解析処理を行うことを目的とする。【解決手段】携帯端末１では、読み込まれた構造化文書における所定の領域が指定範囲に指定され（Ｓ１３、Ｓ１７、Ｓ２２）、当該指定範囲の解析処理に必要なメモリ量が領域処理サイズとして見積られ（Ｓ１３）、見積られた領域処理サイズと、解析処理に使用可能な文書バッファ８４の空きメモリ量とが比較され（Ｓ１４）、空きメモリ量が領域処理サイズよりも大きいと判断された場合に（Ｓ１４：ＹＥＳ）、指定範囲の解析処理が行われ（Ｓ１５）、空きメモリが領域処理サイズよりも小さいと判断された場合に（Ｓ１４：ＮＯ）、指定範囲より内側の領域が新たに指定範囲に指定し直される（Ｓ１７）。  【選択図】図５
2011210186.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書を読み込む読み込み手段と、
前記読み込み手段により読み込まれた構造化文書の解析処理を行う解析処理手段と、
前記解析処理手段による解析結果に基づいて印刷データを作成する印刷データ作成手段と、を有する携帯端末において、
前記読み込み手段により読み込まれた構造化文書における所定の領域を指定範囲に指定する範囲指定手段と、
前記範囲指定手段に指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり手段と、
前記見積もり手段により見積もられた領域処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する第１比較手段と、を備え、  
前記第１比較手段により前記空きメモリ量が前記領域処理サイズよりも大きいと判断された場合に、前記解析処理手段が前記指定範囲を解析すると共に、第１比較手段により空きメモリ量が領域処理サイズより小さいと判断された場合に、前記範囲指定手段は指定範囲より内側の領域を新たな指定範囲に指定し直すことを特徴とする携帯端末。
【請求項２】
前記構造化文書はタグを用いて記述されており、
前記範囲指定手段は、前記第１比較手段により前記空きメモリ量が前記領域処理サイズより小さいと判断された場合に、前記指定範囲の内側において最もタグ数の多い領域を新たな指定範囲に指定し直すことを特徴とする請求項１に記載の携帯端末。  
【請求項３】
前記構造化文書は、タグ対を用いて構造化され、
前記構造化文書における領域とはタグ対に囲まれる領域であって、
前記範囲指定手段は、前記第１比較手段により前記空きメモリ量が前記領域処理サイズより小さいと判断された場合に、前記指定範囲を囲むタグ対の一つ下位のタグ対に囲まれる各領域のうち、最もタグ数の多い領域を新たな指定範囲に指定し直すことを特徴とする請求項１又は請求項２に記載の携帯端末。  
【請求項４】
前記領域処理サイズは、前記見積もり手段によって、前記指定範囲に含まれるタグ数に基づいて見積もられることを特徴とする請求項２又は請求項３に記載の携帯端末。
【請求項５】
前記領域処理サイズは、前記指定範囲に画像が記述される場合は、前記見積もり手段によって、前記指定範囲に含まれるタグ数と当該画像のサイズとに基づいて見積もられることを特徴とする請求項２乃至請求項４のいずれかに記載の携帯端末。
【請求項６】
前記構造化文書に記述される画像のサイズと、前記空きメモリ量とを比較する第２比較手段を備え、
前記第２比較手段により前記画像のサイズが前記空きメモリ量よりも大きいと判断された場合に、前記印刷データ作成手段は、前記画像の印刷データを空きメモリ量ごとに作成することを特徴とする請求項１乃至請求項５のいずれかに記載の携帯端末。
【請求項７】
前記印刷データ作成手段に対し、前記構造化文書から作成される印刷データにおいて、当該構造化文書に記述される画像に対応する部分に空の領域を配置するよう指示する指示手段を備えたことを特徴とする請求項１乃至請求項６のいずれかに記載の携帯端末。
【請求項８】
前記範囲指定手段により指定された指定範囲が前記解析処理手段により解析処理されると、前記構造化文書の全領域が解析済みかを判断する判断手段を有し、
前記範囲指定手段は、前記判断手段により全領域が解析済みでないと判断された場合に、前記解析処理手段により解析済みの領域を除く領域を新たな指定範囲に指定し直すことを特徴とする請求項１乃至請求項７のいずれかに記載の携帯端末。
【請求項９】
携帯端末に対して、構造化文書を読み込ませて解析させ、印刷データを作成させるプログラムにおいて、
前記読み込ませた構造化文書における所定の領域を指定範囲に指定する範囲指定過程と、
前記範囲指定過程で指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり過程と、
前記見積もり過程で見積もられた処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する比較過程と、  
前記比較過程により前記空きメモリ量が前記処理サイズよりも大きいと判断された場合に、前記指定範囲の解析処理を行う指定範囲解析処理過程と、
前記比較過程により前記空きメモリ量が前記処理サイズよりも小さいと判断された場合に、前記指定範囲の内側の領域を前記指定範囲に指定し直す範囲再指定過程と、を前記携帯端末に実行させることを特徴とするプログラム。
【請求項１０】
構造化文書を携帯端末で読み込み解析処理する解析処理方法において、
前記読み込ませた構造化文書における所定の領域を指定範囲に指定する範囲指定過程と、
前記範囲指定過程で指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり過程と、
前記見積もり過程で見積もられた処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する比較過程と、  
前記比較過程により前記空きメモリ量が前記処理サイズよりも大きいと判断された場合に、前記指定範囲の解析処理を行う指定範囲解析処理過程と、
前記比較過程により前記空きメモリ量が前記処理サイズよりも小さいと判断された場合に、前記指定範囲の内側の領域を前記指定範囲に指定し直す範囲再指定過程と、を有することを特徴とする解析処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書を読み込む読み込み手段と、読み込み手段により読み込まれた構造化文書の解析処理を行う解析処理手段と、解析処理手段による解析結果に基づいて印刷データを作成する印刷データ作成手段と、を有する携帯端末、及び当該携帯端末に実行されるプログラム、当該携帯端末に用いられる構造化文書の解析処理方法に関する。
【背景技術】
【０００２】
従来、構造化文書を読み込み、解析処理するために使用するメモリ量を低減するための種々の技術が知られている。
【０００３】
例えば特許文献１では画像ファイルのサイズにより画像ファイルをサーバから読み込むかどうかを判定して選択的に表示部に表示し、画像ファイルの読み込みを行わないときは、画像ファイルを代替するアイコンを表示させる解析情報を出力する。また、特許文献２では、読み込まれた構造化文書に終了タグを強制的に挿入して新たな複数の構造化文書に分割して解析処理するコンピュータに送信する。また特許文献３ではデータ処理の対象となるキー要素とデータ処理の対象とならない非キー要素とを区別し、非キー要素を一つのタグにまとめて記述した構造化文書に変換する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２１２８８９号公報
【特許文献２】特開２００４−２８７９７８号公報
【特許文献３】特開２００８−２１７８０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、携帯端末では構造化文書の解析処理のために使用できるメモリ容量が小さい。よって、例え画像ファイルは代替アイコンによって表示させるように解析処理したとしても、また分割処理や変換処理を受けた構造化文書を解析処理する場合であっても、解析処理対象となる構造化文書が空きメモリよりも大きなデータサイズを有する場合にはメモリオーバーとなって解析処理が止まってしまい、構造化文書の印刷ができなくなってしまう恐れがある。
【０００６】
そこで、本発明は、上述した問題点を解決するためになされたものであり、メモリ容量の小さい携帯端末においてメモリオーバーを確実に回避しながら構造化文書の解析処理を行うことを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するため請求項１に係る携帯端末は、構造化文書を読み込む読み込み手段と、前記読み込み手段により読み込まれた構造化文書の解析処理を行う解析処理手段と、前記解析処理手段による解析結果に基づいて印刷データを作成する印刷データ作成手段と、を有する携帯端末において、前記読み込み手段により読み込まれた構造化文書における所定の領域を指定範囲に指定する範囲指定手段と、前記範囲指定手段に指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり手段と、前記見積もり手段により見積もられた領域処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する第１比較手段と、を備え、前記第１比較手段により前記空きメモリ量が前記領域処理サイズよりも大きいと判断された場合に、前記解析処理手段が前記指定範囲を解析すると共に、第１比較手段により空きメモリ量が領域処理サイズより小さいと判断された場合に、前記範囲指定手段は指定範囲より内側の領域を新たな指定範囲に指定し直すことを特徴とする。
【０００８】
また、請求項２の携帯端末は、請求項１の携帯端末において、前記構造化文書はタグを用いて記述されており、前記範囲指定手段は、前記第１比較手段により前記空きメモリ量が前記領域処理サイズより小さいと判断された場合に、前記指定範囲の内側において最もタグ数の多い領域を新たな指定範囲に指定し直すことを特徴とする。
【０００９】
また、請求項３の携帯端末は、請求項１又は請求項２の携帯端末において、前記構造化文書は、タグ対を用いて構造化され、前記構造化文書における領域とはタグ対に囲まれる領域であって、前記範囲指定手段は、前記第１比較手段により前記空きメモリ量が前記領域処理サイズより小さいと判断された場合に、前記指定範囲を囲むタグ対の一つ下位のタグ対に囲まれる各領域のうち、最もタグ数の多い領域を新たな指定範囲に指定し直すことを特徴とする。
【００１０】
また、請求項４の携帯端末は、請求項２又は請求項３の携帯端末において、前記領域処理サイズは、前記見積もり手段によって、前記指定範囲に含まれるタグ数に基づいて見積もられることを特徴とする。
【００１１】
また、請求項５の携帯端末は、請求項２乃至請求項４のいずれかの携帯端末において、前記領域処理サイズは、前記指定範囲に画像が記述される場合は、前記見積もり手段によって、前記指定範囲に含まれるタグ数と当該画像のサイズとに基づいて見積もられることを特徴とする。
【００１２】
また、請求項６の携帯端末は、請求項１乃至請求項５のいずれかの携帯端末において、前記構造化文書に記述される画像のサイズと、前記空きメモリ量とを比較する第２比較手段を備え、前記第２比較手段により前記画像のサイズが前記空きメモリ量よりも大きいと判断された場合に、前記印刷データ作成手段は、前記画像の印刷データを空きメモリ量ごとに作成することを特徴とする。
【００１３】
また、請求項７の携帯端末は、請求項１乃至請求項６のいずれかの携帯端末において、前記印刷データ作成手段に対し、前記構造化文書から作成される印刷データにおいて、当該構造化文書に記述される画像に対応する部分に空の領域を配置するよう指示する指示手段を備えたことを特徴とする。
【００１４】
また、請求項８の携帯端末は、請求項１乃至請求項７のいずれかの携帯端末において、前記範囲指定手段により指定された指定範囲が前記解析処理手段により解析処理されると、前記構造化文書の全領域が解析済みかを判断する判断手段を有し、前記範囲指定手段は、前記判断手段により全領域が解析済みでないと判断された場合に、前記解析処理手段により解析済みの領域を除く領域を新たな指定範囲に指定し直すことを特徴とする。
【００１５】
また、請求項９のプログラムは、携帯端末に対して、構造化文書を読み込ませて解析させ、印刷データを作成させるプログラムにおいて、前記読み込ませた構造化文書における所定の領域を指定範囲に指定する範囲指定過程と、前記範囲指定過程で指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり過程と、前記見積もり過程で見積もられた処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する比較過程と、前記比較過程により前記空きメモリ量が前記処理サイズよりも大きいと判断された場合に、前記指定範囲の解析処理を行う指定範囲解析処理過程と、前記比較過程により前記空きメモリ量が前記処理サイズよりも小さいと判断された場合に、前記指定範囲の内側の領域を前記指定範囲に指定し直す範囲再指定過程と、を前記携帯端末に実行させることを特徴とする。
【００１６】
また、請求項１０の解析処理方法は、構造化文書を携帯端末で読み込み解析処理する解析処理方法において、前記読み込ませた構造化文書における所定の領域を指定範囲に指定する範囲指定過程と、前記範囲指定過程で指定された指定範囲を解析処理するために必要なメモリ量を領域処理サイズとして見積もる見積もり過程と、前記見積もり過程で見積もられた処理サイズと、前記解析処理に使用可能な空きメモリ量とを比較する比較過程と、前記比較過程により前記空きメモリ量が前記処理サイズよりも大きいと判断された場合に、前記指定範囲の解析処理を行う指定範囲解析処理過程と、前記比較過程により前記空きメモリ量が前記処理サイズよりも小さいと判断された場合に、前記指定範囲の内側の領域を前記指定範囲に指定し直す範囲再指定過程と、を有することを特徴とする。
【発明の効果】
【００１７】
請求項１の携帯端末、請求項９のプログラム及び請求項１０の解析処理方法では、読み込まれた構造化文書における所定の領域が指定範囲に指定され、当該指定範囲の解析処理に必要なメモリ量が領域処理サイズとして見積られ、見積られた領域処理サイズと、解析処理に使用可能な空きメモリ量とが比較され、空きメモリが領域処理サイズよりも大きいと判断された場合に、指定範囲の解析処理が行われ、空きメモリが領域処理サイズよりも小さいと判断された場合に、指定範囲より内側の領域が新たに指定範囲に指定し直される。
よって請求項１の携帯端末では、新たに指定範囲とされた領域の領域処理サイズが見積りされて再び空きメモリ量と比較され、当該領域処理サイズが空きメモリ量よりも大きいと判断された場合は、また当該指定範囲の内側の領域が新たに指定範囲に指定し直される・・・という繰り返しが行われ、空きメモリ量よりも領域処理サイズが小さいと判断されるまで、指定範囲に指定される領域は徐々に狭くなる。そして、指定範囲の領域処理サイズが空きメモリ量よりも小さいと判断されて初めて当該指定範囲の解析処理が行われる。このためメモリ容量の小さい携帯端末でも、メモリオーバーとなる危険性を確実に回避しながら構造化文書の解析処理を行うことができる。
【００１８】
また、請求項２の携帯端末は、構造化文書はタグを用いて記述されており、空きメモリ量が領域処理サイズより小さいと判断された場合に、指定範囲の内側において最もタグ数の多い領域が新たな指定範囲に指定し直される。構造化文書の解析処理は、タグ数がより多いほどより大きなメモリ量を必要とするため、請求項２の携帯端末では、指定範囲の領域処理サイズが空きメモリよりも小さい場合に行われる解析処理による空きメモリの使用率が高まり、空きメモリを効果的に用いながら構造化文書の解析処理を行えるようになる。
【００１９】
また、請求項３の携帯端末は、タグ対を用いて構造化され、構造化文書における領域とはタグ対に囲まれた領域を指す。よって、指定範囲の指定は始点タグと終点タグを検索することにより、容易に行うことができる。
また、空きメモリ量が領域処理サイズより小さいと判断された場合に、指定範囲を囲むタグ対の一つ下位のタグ対に指定される各領域のうち、最もタグ数の多い領域が指定範囲に指定し直される。よって、新たに指定範囲を指定する際に指定領域の一つ下位の領域のみについて各領域に含まれるタグ数を比較すればよいので、新たに指定範囲を指定する処理に係る空きメモリの使用量を低減できる。
【００２０】
また、請求項４の携帯端末では、領域処理サイズは、指定範囲に含まれるタグ数に基づいて見積もられる。上述のように、構造化文書の解析処理は、タグ数がより多いほど多くのメモリ量を必要とするため、領域処理サイズは、指定範囲の解析処理に必要なメモリ量を適切に反映したサイズに見積られると共に、指定範囲に含まれるタグ数をカウントすることにより非常に容易に見積もることができる。
【００２１】
また、請求項５の携帯端末では、領域処理サイズは、指定範囲に画像が記述される場合は、指定範囲に含まれるタグ数と当該画像のサイズとに基づいて見積もられる。ここで、構造化文書から印刷データを作成する際に最も必要なメモリ量は、画像の印刷データを作成するためのメモリ量である。よって請求項５の携帯端末では、領域処理サイズを、指定範囲を解析処理するためだけではなく、当該解析処理の解析結果に基づいて印刷データを作成するために必要なメモリ量として容易に見積ることができる。
【００２２】
また、請求項６の携帯端末では、構造化文書に記述される画像のサイズが空きメモリ量よりも大きいと判断された場合に、当該画像の印刷データが空きメモリ量ごとに作成される。よって、大きな画像を記述する構造化文書から印刷データを作成する場合でもメモリオーバーを確実に回避しながら印刷データを作成でき、大きな画像を印刷できないことによって印刷文書のレイアウトが崩れる恐れがなくなる。
【００２３】
また、請求項７の携帯端末では、指示手段により、構造化文書から作成される印刷データにおいて当該構造化文書に記述される画像に対応する部分に空の領域を配置するよう指示される。よって当該指示手段を介した指示により、画像のサイズが空きメモリ量よりも大きい場合でも、その画像が印刷できないことによる印刷文書のレイアウトの崩れを回避できる。よって、ユーザはより高速の処理を選択できるようになる。
【００２４】
請求項８の携帯端末では、指定範囲が解析処理されると、当該構造化文書の全領域が解析済みかを判断され、構造化文書の全領域が解析済みでないと判断された場合に、解析済み領域を除く領域が指定範囲に指定される。よって請求項４の携帯端末では、領域処理サイズが空きメモリ量よりも小さな指定範囲が解析された後に、その解析済み領域を除く領域が新たに指定範囲に指定され解析処理される・・・という繰り返しによって確実に構造化文書の全領域を処理することができる。
【図面の簡単な説明】
【００２５】
【図１】本実施形態に係る携帯端末のブロック図である。
【図２】本実施形態において構造化文書を選択し印刷するまでのメーン処理を示すフローチャートである。
【図３】印刷する構造化文書を選択する画面の表示例である。
【図４】携帯端末における印刷プレビュー画面の表示例である。
【図５】本実施形態の構造化文書の解析処理を示すフローチャートである。
【図６】本実施形態において解析処理される構造化文書の一例である。
【図７】本実施形態の解析範囲計算処理を示すフローチャートである。
【図８】本実施形態の解析範囲縮小処理を示すフローチャートである。
【発明を実施するための形態】
【００２６】
以下、本発明に係る携帯端末、プログラム及び解析処理方法について、具体化した一実施形態に基づいて図面を参照しつつ詳細に説明する。
図１のように、本実施形態の携帯端末１は、インターネット接続機能を有すると共に赤外線通信やＵＳＢ接続等を介してプリンタと通信可能な通信部６６、文字入力キーやカーソルキー等により入力操作が行われる操作部６１、通信部６６を介して受信された画像等のほか操作部６１にて入力された文字等が表示される液晶等のディスプレイ６０（図３参照）のほか、制御部６５及び記憶部６４を有する。
【００２７】
記憶部６４は揮発性メモリや不揮発性メモリからなり、各種制御プログラムや各種初期値等のほか、ユーザがインターネットを通じたダウンロード等により入手したＰＤＦ、ＸＭＬ、ＨＴＭＬ、ＲＴＦ等の構造化文書も記憶されている。また、各種制御プログラムにはＰＤＦ、ＸＭＬ、ＨＴＭＬ、ＲＴＦ等の構造化文書から印刷データを作成するための後述する「文書コンバータ」というアプリケーションプログラム８３（以下プログラム８３と略記）も記憶されている。また、記憶部８３は構造化文書が読み込まれて解析処理及び印刷データの作成処理が行われる文書バッファ８４のほか、後述のようにタグ数をカウントするためのタグカウンタ記憶領域８５も有している。
また制御部６５は、不図示のＣＰＵを有して記憶部６４に記憶された種々のプログラムに基づいて、携帯端末１全体を統括制御するものであって、プログラム８３を実行することにより後述のように構造化文書から印刷データを作成するための制御を行うほか、通信部６６を介してプリンタ２０と通信し、通信部６６に作成した印刷データ及び当該印刷データの印刷指令をプリンタ２０に送信させる。
【００２８】
次に本実施形態において構造化文書から印刷データを作成して印刷するまでのメーン処理について図２に基づいて説明する。なお、以下図２、図５、図７及び図８で説明する各処理は、上記のプログラム８３を携帯端末１の制御部６５が実行することにより実現される。
図２のように、まずユーザの指示により文書コンバータ８３が起動されると、文書バッファ６４が初期化されると共に、カウンタ領域６４の値が初期化される等して、ステップ（以下Ｓと略記する）１に進む。Ｓ１では、図３のように、ディスプレイ１上の選択画面に記憶部６４に記憶されたＰＤＦ、ＸＭＬ、ＨＴＭＬ、ＲＴＦ等の構造化文書の一覧が表示される。そしてユーザの指示により、当該選択画面においてプログラム８３により印刷するための読み込み対象となる構造化文書が選択される。
【００２９】
図２に戻ると、次にＳ２に進み、Ｓ１で選択された構造化文書について後述する解析処理が行われる。そしてＳ３では、Ｓ２で行われた解析処理の結果に基づいて、構造化文書を印刷データに変換するラスタライズ処理が行われる。本実施形態においてＳ２の解析処理とＳ３の印刷データは同じ文書バッファ８４内で行われる。図４では、ディスプレイ６０上において印刷文書を示す画像がプレビューされる様子を示す。図４のプレビュー画面においてユーザがＰｒｉｎｔボタンを選択すれば、Ｓ４に進み、プレビューされた印刷文書が印刷指令と共にプリンタに送信されて印刷され、メーン処理は終了する。
【００３０】
次に図５に基づいてＳ２の構造化文書の解析処理について説明する。Ｓ１で構造化文書が選択されると、Ｓ１１に進み、Ｓ１で選択された構造化文書全体が文書バッファ８４に読み込まれる。
図６に、本実施形態の解析対象となる構造化文書の一例としてＸＴＭＬ文書１００を示す。
【００３１】
図６のように、ＸＴＭＬ文書１００ではタグ対に挟まれた各領域が入れ子となって階層構造を表現している。ＸＴＭＬ文書１００においてタグは、「＜」と「＞」で囲まれた標識として表される。例えば、ＨＴＭＬ文書１００の始点を示す始点タグＢ１（「ｈｔｍｌ」）に、ＨＴＭＬ文書１００の終点を示す終点タグＣ１（「／ｈｔｍｌ」）が対応する。また、ページ本文の始点を示す始点タグＢ２（「ｂｏｄｙ」）に、ページ本文の終点を示す終点タグ（「／ｂｏｄｙ」）が対応する。このようにＨＴＭＬ文書１００では、始点タグと終点タグからなるタグ対によってテキストの前後を囲むことによりタグ対で挟まれるテキストを構造化したり、特定の意味を付与したりする。なお、例えばイメージタグＧ（＜ｉｍｇ ｓｒｃ＝“”＞）のように、終点タグが省略される場合もある。
なお、本実施形態の説明では、ＸＴＭＬ文書を解析処理対象としているが、後述のように、ＸＴＬ文書、ＳＧＭＬ文書のようにタグ対により特定された領域が入れ子構造となった他の構造化文書はもちろん、ＰＤＦ文書やＲＴＦ文書も本発明の解析処理の対象となりうる。  
【００３２】
図６において、ＨＴＭＬ文書１００では、データの始点であることを示す始点タグＢ１（＜ｈｔｍｌ＞）とデータの終点であることを示す終点タグＣ１（＜／ｈｔｍｌ＞）に囲まれる領域Ａ１が構造化文書の全領域である。Ｓ１１ではこの全領域Ａ１が文書バッファ８４に読み込まれる。
次にＳ１２に進み、携帯端末１の文書バッファ８４における空きメモリ量が算出される。    
ここで算出される空きメモリ量とは、文書バッファ８４の全メモリ量からＳ１１〜Ｓ１４、Ｓ１６〜Ｓ１８、Ｓ２１〜Ｓ２２に示す各処理を行うために必要なメモリ量を引いたものとなる。
【００３３】
続いてＳ１３に進み、指定範囲の計算処理が行われる。Ｓ１１において構造化文書が読み込まれて最初にＳ１３の指定範囲計算処理が行われる場合は、上述した構造化文書の全領域（図６の例では領域Ａ１）が指定範囲に指定されてＳ１３の解析範囲計算処理が行われる。後述のように指定範囲計算処理では、指定範囲における領域処理サイズが見積られる（図７参照）。
続いてＳ１４に進む。Ｓ１４ではＳ１３で解析使用メモリ（Ｓ１３で見積られた指定範囲の領域処理サイズ）とＳ１２で計算された空きメモリ量とが比較され、空きメモリ量が領域処理サイズよりも大きいと判断された場合は（Ｓ１４：ＹＥＳ）、Ｓ１５に進み、指定範囲について解析処理が行われる。
【００３４】
ここで図６の例に示すように、本実施形態ではタグにより構造化文書の各要素の意味や構造化文書の構造が示されている。そしてＳ１５の指定範囲の解析処理では、指定範囲においてタグにより示される各要素の意味を解析する。上述のように本実施形態ではＳ２の構造化文書の解析処理とＳ３の印刷データ作成処理は同じ文書バッファ８４内で行われる。よってＳ１５において指定範囲が解析処理されると、当該解析結果（出力される解析情報と言っても良い）に基づいて当該構造化文書の指定範囲に対応する印刷データが直ちに作成される。
なお、指定範囲において既に解析処理済みの領域がある場合は、当該解析処理済みの領域を除く部分について解析処理が行われる。
【００３５】
また、Ｓ１４において空きメモリ量が領域処理サイズより小さいと判断された場合（Ｓ１４：ＮＯ）、Ｓ１６に進む。
Ｓ１６では、指定範囲が画像データのみの領域かが判断される。ここで画像データのみの領域とは、例えば画像タグのタグ対により指定される領域を指す。
画像タグの例として、図６に画像タグＧを示す。画像タグＧは＜ｉｍｇ ｓｒｃ=“ｉｍａｇｅ／ｐｏｐａｓｅ．ｇｉｆ”ｈｅｉｇｈｔ＝１９ ｗｉｄｔｈ＝１８ ａｌｔ＝””＞のように記載されている。ここで、「ｉｍｇ ｓｒｃ=“ｉｍａｇｅ／ｐｏｐａｓｅ．ｇｉｆ”」は画像タグＧにより指定される画像データの保管場所等を示す。また「ｈｅｉｇｈｔ＝１９ ｗｉｄｔｈ＝１８」とは画像データの大きさを示す。図６の例では画像タグＧに対応する終点タグは省略されており、図６において画像データのみの領域とはＧで示す四角に囲まれた領域となる。
【００３６】
なお、後述のように、Ｓ１３の指定範囲解析処理において領域処理サイズは画像データのサイズとタグ数とに基づいて見積られ、画像データのみの領域のタグ数は０或いは１とカウントされる場合が多いから本実施形態では画像データのみの領域の領域処理サイズは、画像データサイズと概ね等しいものとなる。よって、画像データのみを含む領域を指定範囲とした場合のＳ１４では、画像データのサイズと空きメモリ量とが比較されていることになる。
また、本明細書において画像データのサイズとは、当該画像データを保持するために必要な情報量を示す。例えば、画像タグＧでは１８×１９の画素数の画像データを示しているが、この画像データが１画素３Ｂ（バイト）の情報を持つデータである場合、画像データのサイズは１８×１９×３Ｂとなる。
【００３７】
さて、Ｓ１６において指定範囲が画像データのみの領域でないと判断された場合（Ｓ１６：ＮＯ）、Ｓ１７に進み後述する解析範囲縮小処理を行った後にＳ１３に戻る。一方、指定範囲が画像データのみの領域でないと判断された場合（Ｓ１６：ＹＥＳ）、Ｓ１８に進む。
【００３８】
Ｓ１８では、高速モードがＯＮか否かが判断される。この高速モードとは、画像タグが含まれる構造化文書を印刷する場合に、印刷文書において当該画像を空の領域と置き換えることをユーザが予め指示しておき、当該指示によって、記憶部６４に記憶される高速モードフラグがＯＮ又はＯＦＦに設定されるものである。高速モードの指示は例えばプログラム８３が起動される際にディスプレイ６０上にＹＥＳボタンとＮＯボタンと共にユーザに選択を求める通知を表示することによって行われるのでもよい。
そしてＳ１８において、高速モードフラグがＯＮに設定されていると判断された場合（Ｓ１８：ＹＥＳ）は、Ｓ１９に進み、Ｓ３の印刷データ作成処理では、指定範囲における画像を画素の存在しない空の四角形として印刷データを作成することが決定される。
【００３９】
一方、Ｓ１８で高速モードフラグがＯＦＦに設定されていると判断された場合（Ｓ１８：ＮＯ）、Ｓ２０に進む。Ｓ２０では、指定範囲が解析されて、指定範囲の画像タグに指定される画像データについて、空きメモリ量毎に印刷データを作成するように指示する解析情報が得られる。
例えば画像タグに指定される画像データのサイズが３００ＫＢ（キロバイト）で、空きメモリの容量が１００ＫＢだった場合は、解析情報では、当該画像データを１００ＫＢずつ作成するように指示する解析情報が出力される。すると、当該解析情報に基づいて、文書バッファ８４において当該画像データ（印刷データ）が１００ＫＢずつラスタライズ処理によって作成される。
【００４０】
またＳ１５の指定範囲の解析処理の後には、Ｓ２１においてS１２で文書バッファ４４に読み込んだ構造化文書の全領域の解析が終了したか否かが判断される。そして全領域の解析が終了していないと判断された場合（Ｓ２１：ＮＯ）、Ｓ２２に進む。Ｓ２２では、全領域のうちＳ１５で解析処理された解析済みの領域を除く領域が指定範囲として新たに指定され直されて、Ｓ１３に戻る。このようにすると、新たにＳ１５で解析処理される領域処理サイズがより大きくなり、空きメモリを効率的に使うことができる。
一方、全範囲の解析が終了したと判断された場合（Ｓ２１：ＹＥＳ）は構造化文書の解析処理を終了してメーン処理に戻る（図２参照）。
【００４１】
続いて、図７に基づいてＳ１３の指定範囲計算処理について説明する。
まず、Ｓ２１では指定範囲の始点タグが検索される。よってＳ１１で構造化文書が読み込まれた直後では構造化文書の開始を示す始点タグ（図６の例では始点タグＢ１）が検索される。
続いてＳ２２ではＳ２１で検索された始点タグに対応する終点タグが検出される。よってＳ１１で構造化文書が読み込まれた直後では構造化文書の終了を示す終点タグ（図６の例では終点タグＣ１）が検出される。
Ｓ２２では更に、検索された始点タグと終点タグに囲まれる領域である指定範囲のタグ数が記憶部６４のカウント領域６３を用いてカウントされる。ここで、タグ数は当該領域を囲む始点タグ及び終点タグを含んでもよいし、含まなくてもよい。また例えば、指定範囲に含まれるタグのうち始点タグのみを選択してカウントするようにすると、より効率がよい。図６の例において、始点タグ指定範囲を囲むタグを除く始点タグのみをカウントする場合は、始点タグＢ４と終点タグＣ４に囲まれる領域Ａ４におけるタグ数はｔｒタグ１個、ｔｄタグ２個、ｂｒタグ１２個の計１５個となる。
【００４２】
続いてＳ２３において、指定範囲において既にＳ１５、Ｓ１９、Ｓ２０により解析処理された領域が存在するかが判断される。
解析処理済の領域があると判断された場合（Ｓ２３：ＹＥＳ）はＳ２４に進み、解析処理済みの領域に含まれるタグ数を、Ｓ２２でカウントされたタグ数から引いて未処理の領域に含まれるタグ数を求める。一方、指定範囲において未だに解析処理が行われていない場合（Ｓ２３：ＮＯ）には、そのままＳ２５に進む。
なお、Ｓ２２よりも先に指定範囲に解析処理済みの領域があるか否かが判断され、解析処理済みの領域がある場合は、指定範囲に解析処理済の領域を除いた領域のタグ数がカウントされるようにしてもよい。
【００４３】
続いて、Ｓ２５において、指定範囲において、Ｓ１５、Ｓ１９、Ｓ２０の処理により未だ解析処理がなされていない画像タグが存在するかが判断される。そして、未だに解析処理がなされていない画像タグが存在すると判断された場合（Ｓ２５：ＹＥＳ）、Ｓ２６に進む。Ｓ２６では、指定範囲を解析処理すると共に当該解析処理に基づいて印刷データを作成するのに必要なメモリ量としての領域処理サイズが、当該未処理の画像タグに係る画像データの画像サイズと、Ｓ２３（或いはＳ２４）で求められたタグ数に基づいて見積られる。その後、解析範囲計算処理が終了し、構造化文書解析処理のＳ１４に進む（図５参照）。
一方、未だに解析処理されていない画像タグが存在しないと判断された場合（Ｓ２５：ＮＯ）、Ｓ２７に進む。Ｓ２７では、指定範囲を解析処理すると共に当該解析処理に基づいて印刷データを作成するのに必要な印刷データを作成するのに必要なメモリ量としての領域処理サイズが、Ｓ２３（或いはＳ２４）で求められたタグ数に基づいて見積られる。その後、解析範囲計算処理が終了し、構造化文書解析処理のＳ１４に進む（図５参照）。
【００４４】
ここで領域処理サイズの見積もりについて詳述する。上述したようにＳ１５に示す解析処理は、タグにより示される構造化文書の各要素の意味を解析する。よって指定範囲に示されるタグ数が多いほど、指定範囲を解析するために必要なメモリ量も多くなる。また指定範囲に示されるタグ数が多いほど、印刷データ作成処理の処理量も大きくなり印刷データの作成に必要なメモリ量も大きくなる。また印刷データの作成に必要なメモリ量のうち最も大きいのは画像データを保持するために必要なメモリ量である。
上述したように、本実施形態では、印刷データ処理は、解析処理された指定範囲について逐次同じ文書バッファ８４で行われる。このため本実施形態では領域処理サイズを、指定範囲を解析処理すると共に当該解析処理に基づいて印刷データを作成するのに必要なメモリ量として求めている。
【００４５】
具体的には、予め、Ｓ１３の解析範囲計算処理が開始される前に１タグ分の平均必要メモリ量Ｘを記憶しておく。１タグ分の平均必要メモリ量Ｘは構造化文書について解析処理をすると共に印刷データを作成する際に必要なメモリ量をタグ数で割ったものの平均値である。（指定範囲からの印刷データの作成処理は、指定範囲の解析処理の後に行われるから、この平均メモリ量Ｘは、１タグ分の解析処理に必要なメモリ量と１タグ分の構造化文書から印刷データを作成するために必要なメモリ量とのどちらか大きいものとしてもよい。）
そしてＳ２７の領域処理サイズは、Ｓ２３（又はＳ２４）で求められたタグ数に１タグ分の平均必要メモリ量Ｘを掛け合わせることにより求められる。またＳ２６の領域処理サイズは、Ｓ２３（又はＳ２４）で求められたタグ数に平均メモリ量Ｘを掛け合わせた量に、指定範囲の画像タグに指定される画像データのサイズを足し合わせることにより求められる。
【００４６】
なお、例えば大きなサイズの画像データについて記述の少ない構造化文書を解析する場合や、文書バッファ８４で解析処理のみを行い、印刷データの作成は全領域の解析処理が終了した後に行う場合等では、Ｓ２５の処理を行わず、そのままＳ２３又はＳ２４からＳ２７に進むこととし、領域処理サイズは指定範囲の解析処理に必要なメモリ量としてタグ数のみに基づいて求められるのでもよい。この場合、１タグ分の平均必要メモリ量Ｘを、構造化文書を解析処理する際に必要なメモリ量をタグ数で割ったものの平均値をしてもよい。
【００４７】
次に、図８に基づいて、Ｓ１７の解析範囲縮小処理について詳述する。Ｓ３１では、Ｓ１４で領域処理サイズが空きメモリ量と比較された元の指定範囲の内側においてタグ対に囲まれる各領域のうち、最もタグ数の多い領域が新たな指定範囲に指定されることとなる。
なお元の指定範囲よりも一つ内側の領域（指定範囲のタグ対よりも一つ下位のタグ対が囲む領域）のうち最もタグ数が多い領域を選択するようにすると、より効率的に指定範囲を選択することができる。
図６の例で言うと、元の指定範囲が領域Ａ１だった場合、始点タグＢ１（「＜ｈｔｍｌ」＞」）から一つ内側の始点タグ（一つ下位の始点タグ）は「＜ｈｅａｄ＞」と「＜ｂｏｄｙ＞」（始点タグＢ２）となる。よって、当該指定範囲から一つ下位のタグ対が囲む領域とは、始点タグ＜ｈｅａｄ＞と終点タグ＜／ｈｅａｄ＞が囲む領域と、＜ｂｏｄｙ＞（始点タグＢ２）から＜／ｂｏｄｙ＞（終点タグＣ２）が囲む領域Ａ２を指す。そして、前者に含まれるタグ数と後者に含まれるタグ数とがそれぞれカウントされ、領域Ａ２に含まれるタグ数が多いため、領域Ａ２が次の指定範囲に指定される。
解析範囲縮小処理はその後に終了し、構造化文書解析処理のＳ１３に戻る（図５参照）。
【００４８】
以上の処理を図６の例で補足説明すると、領域Ａ１の領域処理サイズが空きメモリ量を超えると判断されると（Ｓ１４）、上述したように領域Ａ１の内側の各領域のうちタグ数の最も多い領域Ａ２が次の指定範囲に選択されて（Ｓ１７）、領域Ａ２の領域処理サイズが計算される（Ｓ１３）。そして領域Ａ２においても空きメモリよりも領域処理サイズが大きいとされた場合は（Ｓ１４：ＮＯ）、領域Ａ２の内側の各領域のうち最もタグ数の多い領域としてＡ３が選択されて指定範囲とされ（Ｓ１７）、また領域Ａ３の領域処理サイズが算出され（Ｓ１３）、領域Ａ３の領域処理サイズと空きメモリとが比較される（Ｓ１４）・・・という繰り返しが行われる。仮に領域Ａ４の領域処理サイズが空きメモリ量よりも小さい場合は（Ｓ１４：ＹＥＳ）、領域Ａ４が解析処理され（Ｓ１５）、再び領域Ａ１のうちＡ４を除く領域が指定範囲とされて（Ｓ２２）Ｓ１３以降の処理が繰り返される。このようにして最終的にはＨＴＭＬ文書１００全体が解析されて印刷データが完成する。
【００４９】
ここで、ＸＴＭＬ文書１００は請求項の構造化文書の一例である。また、領域Ａ１〜Ａ４は請求項に示す構造化文書における領域の一例である。またタグ対Ｂ１・Ｃ１、Ｂ２、Ｃ２、Ｂ３・Ｃ３、Ｂ４・Ｃ４は請求項のタグ対の一例である。
【００５０】
以上詳細に説明した通り、本実施形態の携帯端末１、プログラム８３及び解析処理方法では、読み込まれた構造化文書における所定の領域が指定範囲に指定され（Ｓ１３、Ｓ１７、Ｓ２２）、当該指定範囲の解析処理に必要なメモリ量が領域処理サイズとして見積られ（Ｓ１３）、見積られた領域処理サイズと、解析処理に使用可能な文書バッファ８４の空きメモリ量とが比較され（Ｓ１４）、空きメモリ量が領域処理サイズよりも大きいと判断された場合に（Ｓ１４：ＹＥＳ）、指定範囲の解析処理が行われ（Ｓ１５）、空きメモリが領域処理サイズよりも小さいと判断された場合に（Ｓ１４：ＮＯ）、指定範囲より内側の領域が新たに指定範囲に指定し直される（Ｓ１７）。
よって携帯端末１、プログラム８３及び解析処理方法では、空きメモリ量よりも領域処理サイズが小さいと判断されるまで（Ｓ１４：ＹＥＳ）、指定範囲に指定される領域は徐々に狭くなる。そして、指定範囲の領域処理サイズが空きメモリ量よりも小さいと判断されて（Ｓ１４：ＹＥＳ）初めて当該指定範囲の解析処理が行われる（Ｓ１５）。このためメモリ容量の小さい携帯端末でも、メモリオーバーとなる危険性を確実に回避しながら構造化文書の解析処理を行うことができる。
【００５１】
また本実施形態の携帯端末１、プログラム８３及び解析処理方法では、ＸＴＭＬ文書１００のように構造化文書はタグを用いて記述されており、空きメモリ量が領域処理サイズより小さいと判断された場合に（Ｓ１４：ＮＯ）、指定範囲の内側において最もタグ数の多い領域が新たな指定範囲に指定し直される（Ｓ１７）。よって本実施形態の携帯端末１、プログラム８３及び解析処理方法では、指定範囲の領域処理サイズが空きメモリよりも小さい場合（Ｓ１４：ＹＥＳ）に行われる解析処理（Ｓ１５）による空きメモリの使用率が高まり、空きメモリを効果的に用いながら構造化文書の解析処理を行えるようになる。
【００５２】
また本実施形態の携帯端末１、プログラム８３及び解析処理方法では、ＸＴＭＬ文書１００のように構造化文書はタグ対を用いて構造化され、構造化文書における領域とはタグ対に囲まれた領域を指す。よって、指定範囲の指定は始点タグと終点タグを検索することにより、容易に行うことができる。
また、空きメモリ量が領域処理サイズより小さいと判断された場合に（Ｓ１４：ＮＯ）、指定範囲を囲むタグ対の一つ下位のタグ対に指定される各領域のうち、最もタグ数の多い領域が指定範囲に指定し直される（Ｓ１７、Ｓ３１）。よって、新たに指定範囲を指定する際に指定領域の一つ下位の領域のみについて各領域に含まれるタグ数を比較すればよいので、新たに指定範囲を指定する処理に係る空きメモリの使用量を低減できる。
【００５３】
また本実施形態の携帯端末１、プログラム８３及び解析処理方法では、領域処理サイズは、指定範囲に含まれるタグ数に基づいて見積もられる（Ｓ２６、Ｓ２７）。よって領域処理サイズは、指定範囲の解析処理に必要なメモリ量を適切に反映したサイズに見積られると共に、指定範囲に含まれるタグ数をカウントする（Ｓ２２）ことにより非常に容易に見積もることができる。
【００５４】
また本実施形態の携帯端末１、プログラム８３及び解析処理方法では、領域処理サイズは、指定範囲に画像データが記述される場合は、指定範囲に含まれるタグ数と当該画像データのサイズとに基づいて見積もられる（Ｓ２７）。よって本実施形態の携帯端末１、プログラム８３及び解析処理方法では、領域処理サイズを、指定範囲を解析処理するためだけではなく、当該解析処理の解析結果に基づいて印刷データを作成するために必要なメモリ量として容易に見積ることができる。
【００５５】
また、本実施形態の携帯端末１、プログラム８３及び解析処理方法では、構造化文書に記述される画像データのサイズが空きメモリ量よりも大きいと判断された場合（Ｓ１４：ＮＯ）に、当該画像データ（印刷データ）が空きメモリ量ごとに作成される（Ｓ１９）。よって、大きな画像データを記述する構造化文書から印刷データを作成する場合でもメモリオーバーを確実に回避しながら印刷データを作成でき、大きな画像を印刷できないことによって印刷文書のレイアウトが崩れる恐れがなくなる。
【００５６】
また、本実施形態の携帯端末１、プログラム８３及び解析処理方法では、操作部６１及びディスプレイ６０を介し、構造化文書から作成される印刷データにおいて当該構造化文書に記述される画像データに対応する部分に空の領域を配置するよう指示される（Ｓ１９）。よって画像データのサイズが空きメモリ量よりも大きい場合でも、画像が印刷できないことによる印刷文書のレイアウトの崩れを回避できる。特に本実施形態では空きメモリ量よりも領域処理サイズが小さいと判断された領域ずつ構造化文書が処理されるため、構造化文書を処理するスピードは低くなるが、ユーザはより高速の処理を選択できるようになる。
【００５７】
本実施形態の携帯端末１、プログラム８３及び解析処理方法では、指定範囲が解析処理されると、当該構造化文書の全領域が解析済みか判断され（Ｓ２１）、構造化文書の全領域が解析済みでないと判断された場合（Ｓ２１：ＮＯ）に、解析済み領域を除く領域が指定範囲に指定される（Ｓ２２）。よって領域処理サイズが空きメモリ量よりも小さな指定範囲が解析された後に、その解析済み領域を除く領域が新たに指定範囲に指定され解析処理される・・・という繰り返しによって確実に構造化文書の全領域を処理することができる。
【００５８】
尚、本発明は前記実施形態に限定されることはなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。例えば、本実施形態の説明では、タグ対により構造化されたＸＴＭＬ文書を解析処理対象としているが、ＸＭＬ文書やＳＧＭＬ文書等のマークアップ言語により記述される他の構造化文書も当然本発明の解析処理対象となる。またマークアップ言語により記述される構造化文書の一つであるＲＴＦ文書も、必ずしも全てがＸＭＬ文書のような多数階層の入れ子構造を有している訳ではないが、タグを用いて領域が特定可能であるから、タグにより入れ子となった領域を有する場合は、本発明の構造化文書解析処理の対象となる。また、ＰＤＦ文書も「ｏｂｊｅｃｔ」等の標識によって領域が特定でき、このような標識によって入れ子構造を有していれば本発明の構造化文書解析処理の対象となる。
【符号の説明】
【００５９】
１          携帯端末
６４        記憶部
６５        制御部
８３        プログラム
８４        文書バッファ
８５        タグカウンタ
１００      ＸＴＭＬ文書
Ａ１〜Ａ４  領域
Ｂ１〜Ｂ４  始点タグ
Ｃ１〜Ｃ４  終点タグ
Ｇ          画像タグ  
【図１】
2011210186.tif 000003
【図２】
2011210186.tif 000004
【図３】
2011210186.tif 000005
【図４】
2011210186.tif 000006
【図５】
2011210186.tif 000007
【図６】
2011210186.tif 000008
【図７】
2011210186.tif 000009
【図８】
2011210186.tif 000010