JP2012088788A - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP2012088788A
JP2012088788A JP2010232782A JP2010232782A JP2012088788A JP 2012088788 A JP2012088788 A JP 2012088788A JP 2010232782 A JP2010232782 A JP 2010232782A JP 2010232782 A JP2010232782 A JP 2010232782A JP 2012088788 A JP2012088788 A JP 2012088788A
Authority
JP
Japan
Prior art keywords
structured document
data
output
web page
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010232782A
Other languages
English (en)
Other versions
JP5735778B2 (ja
JP2012088788A5 (ja
Inventor
Nobunari Aoki
伸成 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010232782A priority Critical patent/JP5735778B2/ja
Priority to US13/251,428 priority patent/US20120092730A1/en
Priority to BRPI1107156-7A priority patent/BRPI1107156A2/pt
Publication of JP2012088788A publication Critical patent/JP2012088788A/ja
Publication of JP2012088788A5 publication Critical patent/JP2012088788A5/ja
Application granted granted Critical
Publication of JP5735778B2 publication Critical patent/JP5735778B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)

Abstract

【課題】Webページ内のフレームに埋め込まれるデータが指定された構造化文書において、簡単な操作で出力対象の領域を指定することができる情報処理装置を提供する。
【解決手段】複数の要素を含む構造化文書であって、当該構造化文書に基づくWebページ内のフレームに挿入されるデータが、当該構造化文書において指定されている構造化文書を取得する。また、構造化文書において指定されているデータを取得する。そして、構造化文書に含まれる複数の要素と、取得されたデータとに基づき、当該複数の要素と当該データから、出力対象のデータを選択する。
【選択図】図8

Description

本発明は、階層構造を有する文書データを処理する情報処理装置、その情報処理装置における表示制御方法、及び、プログラムに関する。
インターネット上のWebページにアクセスして様々な情報を取得することが一般的に行なわれている。Webページとは、HTML(Hyper Text Markup Language)又はXHTML(Extensible Hyper Text Markup Language)等のような構造化言語で記述された構造化文書である。Webページは、ブラウザと呼ばれるソフトウェアによってディスプレイ上に表示される。
また、WebページにFRAME要素やI(Inline)FRAME要素を用いることによりそのWebページに他の構造化文書を埋め込んで、ブラウザで表示することができる。即ち、構造化文書に基づくWebページ内に、当該Webページのフレームとは別にフレームが指定され、そのフレーム内に当該構造化文書とは異なる構造化文書に基づくWebページが挿入される。更には、Webページ内の各要素にoverflow属性やoverflowスタイルを設定することができる。これにより、Webページ内のフレームにスクロールバーを表示して、IFRAME要素により指定されたフレーム内にWebページの一部分の領域のみが表示されるように他の構造化文書をWebページに埋め込んで表示することができる。
一方で、Webページを印刷装置で印刷する場合、ユーザによっては、Webページの全体ではなく、その一部の領域の印刷を希望する場合がある。そこで、特許文献1には、ユーザによる指示に従ってWebページ内の印刷対象の領域を指定し、指定された領域を画像として抽出して印刷する技術が記載されている。例えば、ブラウザで表示されたWebページ内の領域をポインティングデバイス等を用いて選択し、その選択された領域を画像として抽出して印刷することができる。
特許第3588337号公報
上記のIFRAMEのようにWebページ内のフレームとしてデータが埋め込まれているWebページを表示して、上記特許文献1に記載の技術のように、ユーザがWebページの出力対象の領域を指定することを考える。この場合、Webページに埋め込まれているデータを出力対象とするためには、ユーザはWebページにおいて出力対象の領域を指定するのとは別の操作を行って、上記データが表示されている領域を指定しなければならない。例えば、Webページに埋め込まれているデータの全体が、Webページに表示されない場合がある。この場合、Webページに対するスクロール操作とは関係なく、埋め込まれているデータのフレームに対するスクロール操作を別途行って、出力対象の領域を指定する必要がある。
上記の点に鑑み、本発明は、Webページ内のフレームにデータが埋め込まれているWebページにおいて、簡単な操作で出力対象の領域を指定することができる情報処理装置、情報処理方法、およびプログラムを提供する。
上記課題を解決するため、本発明に係る情報処理装置は、複数の要素を含む構造化文書であって、当該構造化文書に基づくWebページ内のフレームに挿入されるデータが、当該構造化文書において指定されている構造化文書を取得する第1の取得手段と、
前記第1の取得手段により取得された構造化文書において指定されているデータを取得する第2の取得手段と、
前記第1の取得手段により取得された構造化文書に含まれる複数の要素と、前記第2の取得手段により取得されたデータとに基づき、当該複数の要素と当該データから、出力対象のデータを選択する選択手段とを有することを特徴とする。
本発明により、ユーザは簡単な操作で、Webページ内のフレームとしてデータが埋め込まれているWebページにおいて、出力対象の領域を指定することができる。
情報処理装置を含むシステムの構成を示すブロック図である。 PCの内部の構成を示すブロック図である。 PCに実装されたソフトウェアの構成を示すブロック図である。 表示装置に表示されるGUI画面の一例を示す図である。 表示装置に表示されるGUI画面の他の例を示す図である。 構造化文書の一例を示す図である。 DOMツリーの一例を示す図である。 中心要素を抽出するまでの処理の手順を示すフローチャートである。
以下、添付図面を参照して本発明の好適な実施例を詳しく説明する。尚、以下の実施例は特許請求の範囲に係る本発明を限定するものでなく、また本実施例で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。
図1は、本発明に係る実施例における情報処理装置を含むシステムの構成を示すブロック図である。情報処理装置であるPC101は、ネットワーク102を介して複数のWWWサーバ103からWebページをPC101上へダウンロードして表示することができる。ここで、Webページとは、HTMLやXHTMLで記述された構造化文書である。また、PC101はプリンタ104とも接続されており、WWWサーバ103上のWebページをPC101上へダウンロードしてプリンタ104に印刷出力することができる。
図2は、PC101の内部の構成を示すブロック図である。CPU201は、RAM202、ROM203又はハードディスク204に格納されたプログラムに従って、データや命令を処理する。RAM202は、CPU201が各種処理を行う際の一時記憶領域として用いられる。ハードディスク204は、オペレーティングシステム(OS)、Webブラウザ(以下、ブラウザという)やその他のアプリケーションソフトウェア等を格納する。USBインタフェース205は、USBケーブルが接続されるインタフェースであり、プリンタ104とのデータ通信を行うためのインタフェースである。なお、プリンタ104との通信は、USBケーブルではなく、SCSIや無線等により行われても良い。
表示装置206は、CRT又は液晶ディスプレイとグラフィックコントローラとからなり、WWWサーバ103からダウンロードしたWebページや、印刷プレビュー画像、又は、GUI等を表示する。入力装置207は、ユーザがPC101に対して各種指示を行なうための装置であり、例えば、ポインティングデバイスやキーボードである。システムバス209は、CPU201やRAM202、ROM203、ハードディスク204等との間を接続し、各構成要素において処理されるデータはシステムバス209上で通信される。LANインタフェース208は、LANケーブルが接続されるためのインタフェースである。LANインタフェース208により、LANケーブルによるデータ通信が、ルータ(不図示)やネットワーク102を介して外部のWWWサーバ103と行われることができる。また、PC101に無線に対応したインタフェースを構成して、データ通信を無線で行なうようにしても良い。また、図2には、PC101が表示装置206と入力装置207がCPU201、RAM202等を含む制御部と一体となった所謂ノート型のPC101が示されている。しかしながら、本実施例において、PC101は、表示装置206と入力装置207が別体とされた所謂デスクトップ型の装置であっても良い。
図3は、PC101により実行されるソフトウェアの構成を示すブロック図であり、図3で示される各機能ブロックに対応するプログラムが例えばROM202に記憶されている。ブラウザ301は、Webページを表示するためのアプリケーションであり、WWWサーバ103から構造化文書をPC101のハードディスク204にダウンロードし、表示装置206にWebページを表示させる。上記の構造化文書は、HTMLやXHTML等を用いて記述されており、構造化文書を構成するテキストや画像等の要素が、タグを用いて記述されている。また、それらの要素の表示スタイルを指定するCSS(Cascading Style Sheet)と呼ばれる別ファイルが構造化文書内に指定されている。ブラウザ301は、ハードディスク204にダウンロードされた構造化文書を解析して表示装置206にWebページを表示させる。
構造化文書印刷モジュール302は、ブラウザ301から呼び出されるプラグインソフトウェアであり、ブラウザ301により呼び出されときに構造化文書303を取得する(第1の取得および第2の取得の一例)。ユーザがブラウザ301に対して自動抽出処理を行わせるための指示を行った場合に、構造化文書印刷モジュール302が実行される。ここで、自動抽出処理とは、表示されているWebページに含まれる要素の中から、出力対象の候補としての要素(以下、中心要素という)を抽出する処理である。ユーザは、Webページにおいて抽出された要素に対応する領域を、印刷等の出力の対象とする領域として指定することができる。
要素自動抽出部304は、構造化文書303に含まれる要素を解析してDOM(Document Object Model)ツリーと呼ばれる要素の階層構造データを作成し、RAM202等の一時記憶領域に格納する。更に、要素自動抽出部304は、DOMツリーから各要素の面積、テキスト量、テキスト比率、タグ種別、タグ属性を参照して、中心要素を特定して抽出する。ここで、テキスト量とは、要素内の文字のうち実際にブラウザ301に表示される文字数をいい、テキスト比率とは、その要素の全タグサイズとテキスト量との比率をいう。要素自動抽出部304の処理及びDOMツリーの詳細は後述する。
部分表示要素検出部305は、構造化文書303を解析して、FRAME要素、IFRAME要素又はoverflow属性の付加された要素(以下、部分表示要素という)が構造化文書303に含まれるか否かを判定する。
領域選択制御部306は、要素自動抽出部304が抽出した中心要素に対応するWebページ内の領域上に、出力対象であることを示すための領域選択矩形を表示する。また、領域選択制御部306は、ポインティングデバイスやキーボード等の入力装置207により手動での領域選択矩形の変更を行うための機能をユーザに提供する。更に、領域選択制御部306は、ユーザから印刷指示を受けると、領域選択矩形のWebページにおける座標を取得し、Webページにおいてその矩形領域に含まれる部分を中間データファイルとして抽出する。
なお、中間データファイルとは、文字情報、図形情報をビットマップデータではなくベクタデータとして保持しており、例えばWebページの印刷において作成される。特に、Webページ内のある領域を選択して抽出可能にするため、つまり、構造化文書の要素の一部を抽出可能にするため、中間データファイルは、ベクタデータの一部を抽出可能であることが望ましい。そのような中間データファイルとして、例えばPDF(Portable Document Format)、EMF(Enhanced Metafile Format)又はXPS(XML Paper Specification)等を用いることができる。
また、本実施例では、上述のようにWebページ内の領域を中間データファイルとして抽出するため、抽出された文字、図形はビットマップデータではなくベクタデータとして抽出される。従って、Webページ内からデータの抽出を行った後に、抽出されたデータの拡大、縮小といった変倍処理を行う場合に、文字や図形についてはベクタデータに対して変倍処理を行うことになる。即ち、文字や図形の描画命令に対して変倍処理を行うため、既にビットマップ化されたデータに対して変倍を行う場合に比べて、変倍に伴う画像の劣化を抑えることができる。
印刷レイアウト部307は、領域選択制御部306が抽出した中間データファイルを印刷設定に従って、印刷される用紙に対応させてレイアウトを決定する。ここで、印刷設定とは、用紙サイズ、解像度、用紙における印刷可能領域等の情報を含んでおり、OS310を介してプリンタドライバ311から取得する。印刷プレビュー部308は、印刷レイアウト部307でレイアウトした要素を印刷プレビューとして表示装置206に表示させる。印刷処理部309は、ユーザから印刷を開始させるための指示を受けると、印刷レイアウト部307による要素のレイアウトを示す配置情報に従って、描画処理を実行する。OS310は、構造化文書印刷モジュール302と印刷設定データの送受信を行い、また印刷処理部309がプリンタドライバ311を用いて描画処理を行うためのAPI(Application Programming Interface)を提供する。また、OS310には、印刷ジョブを管理するスプーラシステム、プリンタコマンドをポートに出力するポートモニタ等の各種制御ソフトウェアが含まれるが、詳細については省略する。プリンタドライバ311は、印刷処理部309により実行された描画処理に従って印刷データを生成し、プリンタコマンドに変換してプリンタ104に送信する。プリンタ104は、受信したプリンタコマンド及び文書データに基づいて用紙に画像を印刷する。
図4及び図5は、本実施例における表示装置206に表示されるGUI画面の一例を示す図である。図4に示すように、ブラウザ301は、WebページをGUI上に表示する。ブラウザ301には、表示するWebページを切り替えるための戻るボタン401、進むボタン402、アドレス入力領域403等が配置されている。さらに、ブラウザ301には、印刷ボタン404、印刷プレビューボタン405及び自動抽出指示を行うための自動抽出ボタン406が配置されている。ユーザが自動抽出ボタン406を押下して要素の自動抽出を行うための指示を与えると、ブラウザ301が構造化文書印刷モジュール302を呼び出す。
図4に示すように、第1の構造化文書407は、ブラウザ301に表示されている。また、第2の構造化文書408は、表示が部分的に制限されたIFRAME要素で指定された構造化文書であり、第1の構造化文書407内のフレームに埋め込まれている。第2の構造化文書408が埋め込まれているフレームについては、縦方向のスクロールバー409及び横方向のスクロールバー410が表示されており、ユーザがポインティングデバイス等の入力装置207で操作することで、第2の構造化文書408の内容の全てを表示することができる。
図5は、自動抽出ボタン406が押下された後のブラウザ301に表示されるGUI画面を示す図である。上述したように、自動抽出ボタン406は、表示されたWebページ内において出力対象の候補となる中心要素を抽出する指示を行なうためのボタンである。ユーザが自動抽出ボタン406を押下すると、ブラウザ301が構造化文書印刷モジュール302を呼び出し、構造化文書印刷モジュール302は、ブラウザ301により表示中のWebページに対応する構造化文書を取得する。構造化文書印刷モジュール302は、取得した構造化文書のファイルから中心要素を抽出し、図5に示すように、中心要素に対応するWebページの領域上に領域選択矩形502を表示する。図5は、中心要素としてIFRAME要素として指定された第2の構造化文書408の領域が自動的に選択された場合を示している。
また、図5に示すように、領域選択矩形502は半透明な矩形として表示され、更に、中心要素を含んだ中心要素群の中の他の要素を表示するための「広く」ボタン506と「狭く」ボタン507が表示される。中心要素群とボタン506及び507については後述する。また、ユーザは、中心要素に対する領域選択矩形502のサイズを、ポインティングデバイス等の入力装置207を用いてドラッグ操作を行うことにより、任意に変更することができる。更に、図5に示すように、中心要素に対する領域選択矩形502を印刷対象として印刷を開始するための印刷ボタン503が表示される。印刷ボタン503が押下されると、領域選択制御部306が領域選択矩形502のWebページにおける座標を取得し、Webページにおいてその矩形領域内に含まれる部分を中間データファイルとして抽出する。その後、印刷レイアウト部307は、中間データファイルをレイアウトし、印刷処理部309が印刷処理を実行する。
また、図5に示すようにGUI画面には、領域選択矩形502が示す領域の印刷プレビューを表示するためのプレビューボタン504が表示される。プレビューボタン504が押下されると、領域選択制御部306が領域選択矩形502のWebページにおける座標を取得し、Webページにおいてその矩形領域内に含まれる部分を中間データファイルとして抽出する。その後、印刷レイアウト部307は、中間データファイルをレイアウトし、印刷プレビュー部308が印刷プレビューを表示装置に表示させると、領域選択矩形502が示すWebページ内の領域の画像が、印刷対象として表示される。また、図5に示すように、自動抽出処理を中止するためのキャンセルボタン505も表示され、キャンセルボタン505が押下されると、図4の状態に戻る。
図6は、本実施例における構造化文書の一例を示す図である。図6に示す構造化文書601は、図4に示す第1の構造化文書407に対応する。図6に示すように、構造化文書601は、XHTML形式で記述されている。また、図示されていないが、構造化文書601では、CSSにより要素のレイアウト情報が別ファイルとして記述されている。また、構造化文書601には、<iframe>タグ602のsrc属性により第2の構造化文書が指定されている。第2の構造化文書は、図示されていないが、構造化文書601とは別のファイルに記述されている。
図7は、構造化文書601(第1の構造化文書407)を要素自動抽出部304により解析した結果、一時記憶領域に記憶されるDOMツリーの一例を示す図である。上述したように、DOMツリーは構造化文書に含まれる要素のデータ構造を示している。構造化文書601のDOMツリーは、文書全体をあらわす<document>ノード701をルートノードとして有し、その子ノードとして、<html>ノード702を有する。<html>ノード702は、更に、その子ノードとして、<body>ノード704及び<head>ノード703を有する。
各要素ノードは、親要素ノードへのポインタ、兄弟要素ノードへのポインタ、子要素ノードリストへのポインタ、属性情報、テキスト情報等のデータを保持する。各要素の表示状態やレイアウト情報は、CSSファイルで定義され、それらは、DOMツリーの各要素ノードの情報として一時記憶領域に記憶される。例えば、要素のフォント種別、フォントサイズ、文字色、表示位置等が、そのような各要素ノードの情報として記憶されている。本実施例においては、要素のみをノードとして扱い、属性やテキスト情報を各要素ノードの情報として扱っている。しかしながら、属性やテキスト情報もDOMツリーのノードとして扱っても良い。
図7に示すように、DOMツリーは、IFRAME要素708を含む。通常、IFRAME要素のsrc属性で指定された第2の構造化文書の各要素ノードは、第1の構造化文書のDOMツリーには含まれず、別のDOMツリー709を構成する。図7においては、第1の構造化文書のDOMツリーと第2の構造化文書のDOMツリーを1つのツリーとして示している。
要素自動抽出部304は、第1の構造化文書とIFARME要素で指定される第2の構造化文書との2つのDOMツリーを、1つのDOMツリーとして扱う。本実施例においては、要素自動抽出部304は、第1の構造化文書のDOMツリーの要素の面積やテキスト量、タグサイズを解析する場合には、第2の構造化文書のDOMツリーに含まれる要素の面積やテキスト量、タグサイズを考慮して解析する。以下、図8を参照して、本実施例における要素自動抽出部304の処理の手順について説明する。
図8は、要素自動抽出部304が構造化文書303を解析し、中心要素を抽出するまでの処理の手順を示すフローチャートである。図8に示す処理は、図3に示すソフトウェアの各機能ブロックに対応するプログラムをCPU201が実行することにより実現できる。ブラウザ301の自動抽出ボタン406がユーザにより押下されて自動抽出処理が指示されると、構造化文書印刷モジュール302が起動し、要素自動抽出部304の処理を開始する(S801)。
要素自動抽出部304は、構造化文書303をブラウザ301を介して読み出し、DOMツリーをRAM202の一時記憶領域上に構築する。なお、このとき第1の構造化文書にIFRAME要素が含まれる場合には、IFRAME要素で指定される第2の構造化文書も、第1の構造化文書ととものブラウザから取得される。要素自動抽出部304は、DOMツリー内のbody要素704を抽出して、そのbody要素704を注目要素R1とする(S802)。ここで、注目要素R1とは、注目要素Ri(iは自然数)における初期値i=1としてのR1である。注目要素Riにおけるiは、DOMツリーのbody要素704以下の階層数を表し、iの値が増えるほど、構造化文書におけるより下位の階層を表すものとする。即ち、body要素704自身を1階層目と考え、R1としている。
次に、部分表示要素検出部305は、注目要素Ri(ここでは、R1であり、以下同じ)の子要素群に部分表示要素が含まれるか否かを判定する(S803)。ここでは、部分表示要素をIFRAME要素とする。S803における処理の結果、IFRAME要素が含まれると判定された場合(S804においてYes)にはS807に進み、IFRAME要素が含まれないと判定された場合(S804においてNo)にはS805に進む。
S807において、注目要素Riの直接の子要素それぞれの幅および高さ(単位はピクセルとする)を示す情報を取得する。なお、要素のピクセル数は、HTMLファイルに記載されている情報を解析することで取得することができる。例えば画像や表の要素に対してピクセル数が指定されている場合には、指定されているピクセル数を取得する。また、Webページの大きさに対する比率で要素の大きさが指定されている場合には、Webページ全体のピクセル数と、指定されている比率とから、要素に割り当てられるピクセル数を計算して取得することができる。さらに、テキスト要素の文字のように、要素の大きさを示す複数の段階が設けられ、構造化文書において、複数の段階のいずれかが指定されている場合には、要素をWebページに配置したときの大きさと、Webページ全体のピクセル数から、要素の大きさを取得することができる。
次に、S807において取得された情報が示す要素に割り当てられるピクセル数から、注目要素Riの直接の子要素それぞれの面積を算出する。本実施例においては、直接の子要素のいずれかにIFRAME要素を含む場合には、そのIFRAME要素で指定された第2の構造化文書に含まれる要素の面積も含めて、IFRAME要素の面積とする。この場合、IFRAME要素で指定された第2の構造化文書の非表示領域に割り当てられる要素の面積も考慮されることになる。なお、第2の構造化文書の非表示領域とは、第2の構造化文書に基づき表示可能なWebページのスクロールにより表示できる全領域において、ブラウザ301に表示されている領域以外の領域をいう。
S808において、要素自動抽出部304は、注目要素Riの直接の子要素それぞれに含まれるテキスト量及びXHTMLタグサイズを取得する。本実施例では、その場合、直接の子要素のいずれかにIFRAME要素を含む場合には、そのIFRAME要素で指定された第2の構造化文書に含まれる要素のテキスト量及びXHTMLタグサイズも含めて、IFRAME要素のテキスト量及びXHTMLタグサイズとする。
S808において取得されたテキスト量及びXHTMLタグサイズから、直接の子要素それぞれのテキスト比率を算出する。テキスト比率は、テキスト量をXHTMLタグサイズで除した値である。
一方、IFRAME要素が含まれないと判定された場合に、S805において、S807と同様に、注目要素Riの直接の子要素それぞれの幅および高さ(単位はピクセル)を取得する。次に、それぞれの取得結果から、注目要素Riの直接の子要素それぞれの面積を取得する。さらに、S806において、要素自動抽出部304は、注目要素Riの直接の子要素それぞれに含まれるテキスト量およびXHTMLタグサイズを取得する。次に、注目要素Riの直接の子要素それぞれのテキスト比率を算出する。
S809において、注目要素Riの直接の子要素のうち、テキスト比率が予め定められた閾値以上、かつ、面積が最大の要素を注目要素候補Rcとして特定する。次に、S810において、RcのRiに対する面積比率を求め、予め定められた閾値と比較する。その比率が予め定められた閾値以上の場合に、S811に進み、一方、予め定められた閾値未満である場合に、S815に進む。
RcのRiに対する面積比率が予め定められた閾値以上であるとは、つまり注目要素Riにおいて中心となるRcの、親要素であるRiにおける面積が大きいことを意味する。この場合、出力対象の要素としてより適切な要素が、Riに含まれる可能性があり、そのためRiに含まれる子要素に対して上記のS803〜S808における処理を行って、出力対象の候補としての要素を抽出する。RcとRiとの面積比率が予め定められた閾値以上である場合として、例えば、第1の構造化文書内に埋め込まれた第2の構造化文書に割り当てられた面積が大きく且つ第2の構造化文書に含まれる要素のテキスト量が多い場合に相当する。
S811においては、S809において特定された注目要素候補Rcを注目要素R(i+1)(ここでは、R2であり、以下同じ。)とする。上述の例によると、第1の構造化文書内に埋め込まれた第2の構造化文書を注目要素R2とするということである。
S812において、注目要素Ri+1がIFRAME要素であるか否かを判定する。ここで、IFRAME要素であると判定された場合には、S813に進み、一方、IFRAME要素でないと判定された場合には、S803に戻る。S813において、注目要素Ri+1をIFRAME要素のsrc属性で指定されている第2の構造化文書の<body>要素として、S803に戻る。
図8に示す処理は、例えば、ブラウザ301で表示されている第1の構造化文書407に含まれる要素の内、面積が最大且つテキスト比率が閾値以上の注目要素候補Rcとして、第2の構造化文書408が特定される(S809)。そして、その第2の構造化文書408がIFRAME要素であると判定されると(S812においてYes)、さらに、第2の構造化文書408の中でS803〜S813における処理が繰り返される。もし、第2の構造化文書の中でさらに埋め込まれた第3の構造化文書がある場合、その第3の構造化文書に含まれる要素が考慮されてS809において注目要素Rcが特定される。
また、上述のS810において、RcのRiに対する面積比率が予め定められた閾値未満の場合、S815に進む。そして、そのときのRcの階層数をnとしたときに、Rcを中心要素Rnとし、またR1〜Rnとして設定された要素を、中心要素群とする。
S809において、上記の第3の構造化文書が注目要素Rcとして特定された場合、第3の構造化文書のRiに対する面積比率がS810の条件において予め定められた閾値未満であれば、S815において、その第3の構造化文書を中心要素として特定して抽出する。
つまり、本実施例においては、第1の構造化文書にさらに、他の第2の構造化文書が埋め込まれた場合に、第1の構造化文書に加えて、第2の構造化文書を取得する。そして、第1の構造化文書に含まれる要素だけでなく、第2の構造化文書に含まれる要素を含めて出力候補としての中心要素を抽出することができる。従って、第2の構造化文書に含まれる要素、もしくは第2の構造化文書自身が、Webページの中心であった場合には、出力対象の要素として抽出することができる。
また本実施例によれば、中心要素を抽出するだけでなく、最上位階層から中心要素を抽出するまでに注目要素として特定された要素も合わせて中心要素群として抽出する。例えば、第2の構造化文書の子要素である第3の構造化文書が中心要素として抽出された場合、第1の構造化文書と第2の構造化文書、第3の構造化文書が中心要素群として抽出される。
この中心要素群について説明するために、図5を再び参照する。図8に示す処理が行なわれると、中心要素が抽出されて図5に示されるように、領域選択矩形502で表示される。ここでは、上述の例に従い、領域選択矩形502で表示された中心要素が第3の構造化文書であるとする。ここで、ユーザが「広く」ボタン506を押下すると、中心要素群のうち中心要素の一つ上の階層の要素(第2の構造化文書)が領域選択矩形502で区別可能に表示される。また、その状態でユーザが「狭く」ボタン507を押下すると、中心要素群のうち一つ下の階層の要素(第3の構造化文書)が領域選択矩形502で表示される。
S815において中心要素を抽出すると、S816に進み、S815において抽出された要素を、構造化文書に含まれる他の要素と区別して出力する。この場合、例えば図5に示すように中心要素に効果を加えて、他の要素と両方が区別可能なように出力してもよいし、中心要素や、中心要素群のみを出力してもよい。例えば、S815において中心要素が抽出されたことに応じて、中心要素に対してのみ印刷レイアウト部307による印刷レイアウトを行って、中心要素のみを含む画像をプリンタに印刷させてもよい。また、出力の方法は限定されるものではなく、例えば表示装置に出力して画像を表示させてもよいし、印刷装置に出力して画像を印刷させてもよい。または、PC101の内部、もしくは外部の記録媒体に出力して、記録させてもよいし、LANインタフェース208等を介して外部装置に送信してもよい。S816において要素の出力が行われると、S817において処理を終了する。
以上のように、本実施例においては、要素の面積と、要素がWebページにおいて示す文字数を示す、要素のテキスト量とに基づき、Webページ内の要素から、出力対象の候補としての中心要素を自動的に抽出することができる。図4に示すように、Webページには、メニュー名の表示等の様々な情報が表示され、ユーザによっては出力を希望しない要素も多く存在する。そこで、出力対象の要素をユーザが指定するときに、Webページ内のフレームにデータが埋め込まれている場合には、ユーザは、Webページに対するスクロール作業とは別にスクロール作業を行って出力対象とする領域を確認していかねばならない。本実施例においては、Webページ内のフレームにデータが埋め込まれている場合、そのデータも考慮して、Webページに含まれる出力対象のデータを自動的に選択することができる。そのため、ユーザは簡単な操作で、適切なデータを出力対象とすることができる。さらに、本実施例によれば、中心要素群において出力対象の要素を切り換えることができるので、ユーザは、自動的に抽出された要素に基づき、出力対象の要素を調整することができる。
なお、図8のS810においては、RcとRiとの面積比率を求めているが、注目要素Riとbody要素との面積比率を求めるようにしても良い。また、上述の例では要素の面積や、テキスト量に基づき注目要素候補Rcを特定している。しかしながら、本実施例は要素の内容を示す情報に従って中心要素を抽出できればよく、要素のタグ種別、タグ属性、表示スタイル等を用いて注目要素候補Rcを特定するようにしても良い。また、S809においては、1つの注目要素候補Rcを特定しているが、複数の注目要素候補Rcを特定するようにしても良い。また、図8においては、図7に示すようなDOMツリーの階層構造の上位から下位の方向に従って中心要素を求めているが、予め全要素を解析することによって中心要素を抽出するようにしても良い。
また、以上の実施例では、テキスト要素に含まれるテキストの表示装置に表示される文字数に基づき、テキスト要素を中心要素とするか判断していた。しかしこれに限らず、テキスト要素に含まれるテキストに割り当てられたデータ量に基づき、テキスト要素を中心要素とするか判断してもよい。例えば、テキストに含まれる文字に割り当てられたバイト数に基づき、よりバイト数の大きなテキストを含むテキスト要素を、中心要素として判断してもよい。一般に、1文字に対して2バイトが割り当てられる文字と、1文字に対して1バイトが割り当てられる文字とがある。よって、上記のようにテキストのバイト数に従って判断すれば、同じ文字数であっても、2バイトが割り当てられている文字を多く含むテキストを、Webページにおいてより中心となるテキストとして判断することができる。
また、上記の実施例では、構造化文書のIFRAMEとして他の構造化文書のリンクが記載されており、リンクされているHTMLファイルが挿入される例を示した。しかし、これに限らず、FRAME要素としてHTMLファイルが挿入される場合にも、上記のIFRAME要素の場合と同様に出力対象の要素を選択することができる。
さらに、上記の実施例では、Webページ内のフレームに、構造化文書が挿入される例を示した。しかし、これに限らず、例えば文書アプリケーションで作成された文書ファイルや、表計算アプリケーションで作成された表計算ファイル等へのリンクが構造化文書内に指定され、Webページ内に埋め込まれる場合であってもよい。この場合、Webページから文書ファイルや表計算ファイルを抽出するときには、Webページに埋め込まれている構造化文書から抽出する場合と同様に、中間データファイルとして抽出する。よって、抽出された後に変倍処理を行ったとしても、ベクタデータに対して変倍処理が行われることになるため、ビットマップデータに対して変倍処理を行う場合に比べて、変倍に伴う画像の劣化を抑えることができる。
さらに、本実施例では、Webページを表示させるブラウザと連携するプラグインソフトウェアにより、Webページ内の出力対象の領域を選択していた。しかし、これに限らず、本実施例で説明した機能をブラウザに組み込み、ブラウザ自体がWebページ内の出力対象の領域を選択するようにしてもよい。なお、本実施例では構造化文書として、HTML、XHTMLを例に説明したが、本発明は、XML等の種々の構造化文書に対して適用可能なものである。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。また、複数のプロセッサが協働して本実施例で説明した処理を行うことによっても実現できる。

Claims (11)

  1. 複数の要素を含む構造化文書であって、当該構造化文書に基づくWebページ内のフレームに挿入されるデータが、当該構造化文書において指定されている構造化文書を取得する第1の取得手段と、
    前記第1の取得手段により取得された構造化文書において指定されているデータを取得する第2の取得手段と、
    前記第1の取得手段により取得された構造化文書に含まれる複数の要素と、前記第2の取得手段により取得されたデータとに基づき、当該複数の要素と当該データから、出力対象のデータを選択する選択手段と
    を有することを特徴とする情報処理装置。
  2. 前記選択手段により出力対象として選択されたデータを、前記第1の取得手段が取得した構造化文書に基づくWebページに含まれる他のデータと区別して出力する出力手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記出力手段は、前記選択手段により出力対象として選択されたデータと、前記第1の取得手段が取得した構造化文書に基づくWebページに含まれる他のデータとの両方を、区別して出力することを特徴とする請求項2に記載の情報処理装置。
  4. 前記出力手段は、前記選択手段により出力対象として選択されたデータを出力し、前記第1の取得手段が取得した構造化文書に基づくWebページに含まれる他のデータを出力しないことを特徴とする請求項2に記載の情報処理装置。
  5. ユーザによる指示に応じて、出力対象のデータを、前記選択手段により出力対象として選択されたデータから前記第1の取得手段が取得した構造化文書に基づくWebページにおける他のデータに変更する変更手段をさらに有することを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。
  6. 前記出力手段は、前記選択手段により出力対象として選択されたデータに対応する画像を印刷装置に印刷させることを特徴とする請求項2乃至5のいずれか1項に記載の情報処理装置。
  7. 前記出力手段は、印刷装置に印刷させるための設定を示す印刷設定を取得し、取得した当該印刷設定に基づき前記選択手段により出力対象として選択されたデータのレイアウトを決定して、決定された当該レイアウトに従って当該データが配置された画像を印刷装置に印刷させることを特徴とする請求項6に記載の情報処理装置。
  8. 前記選択手段は、前記第1の取得手段が取得した構造化文書に基づくWebページにおける、当該構造化文書に含まれる要素が示すテキストの内容と当該要素に対応する領域の大きさとの少なくとも一方に基づき当該要素を出力対象とするかを判定することによって、出力対象のデータを選択することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記第2の取得手段は、複数の要素を含む構造化文書を取得し、
    前記選択手段は、前記第1の取得手段により取得された構造化文書に含まれる要素と、前記第2の取得手段により取得された構造化文書に含まれる要素との少なくとも一方から、出力対象の要素を選択することを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 複数の要素を含む構造化文書であって、当該構造化文書に基づくWebページ内のフレームに挿入されるデータが、当該構造化文書において指定されている構造化文書を取得する第1の取得工程と、
    前記第1の取得工程において取得された構造化文書において指定されているデータを取得する第2の取得工程と、
    前記第1の取得工程において取得された構造化文書に含まれる複数の要素と、前記第2の取得工程において取得されたデータとに基づき、当該複数の要素と当該データから、出力対象のデータを選択する選択工程と
    を有することを特徴とする情報処理方法。
  11. 請求項10に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
JP2010232782A 2010-10-15 2010-10-15 情報処理装置、情報処理方法、及びプログラム Expired - Fee Related JP5735778B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010232782A JP5735778B2 (ja) 2010-10-15 2010-10-15 情報処理装置、情報処理方法、及びプログラム
US13/251,428 US20120092730A1 (en) 2010-10-15 2011-10-03 Information processing apparatus, information processing method, and storage medium storing a program thereof
BRPI1107156-7A BRPI1107156A2 (pt) 2010-10-15 2011-10-14 aparelho e mÉtodo de processamento de informaÇço

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010232782A JP5735778B2 (ja) 2010-10-15 2010-10-15 情報処理装置、情報処理方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2012088788A true JP2012088788A (ja) 2012-05-10
JP2012088788A5 JP2012088788A5 (ja) 2013-11-28
JP5735778B2 JP5735778B2 (ja) 2015-06-17

Family

ID=45933952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010232782A Expired - Fee Related JP5735778B2 (ja) 2010-10-15 2010-10-15 情報処理装置、情報処理方法、及びプログラム

Country Status (3)

Country Link
US (1) US20120092730A1 (ja)
JP (1) JP5735778B2 (ja)
BR (1) BRPI1107156A2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10049168B2 (en) * 2012-01-31 2018-08-14 Openwave Mobility, Inc. Systems and methods for modifying webpage data
JP6011023B2 (ja) * 2012-05-24 2016-10-19 セイコーエプソン株式会社 通信端末
US20140082586A1 (en) * 2012-08-09 2014-03-20 FatFractal, Inc. Application development system and method for object models and datagraphs in client-side and server-side applications
CN109634537B (zh) * 2018-11-14 2022-04-12 百富计算机技术(深圳)有限公司 一种分割打印方法和交易终端

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063013A (ja) * 2000-05-25 2002-02-28 Internatl Business Mach Corp <Ibm> ウェブ・ブラウザ内にグラフィカル印刷技法を取り込む方法及びシステム
JP2002334013A (ja) * 2001-05-09 2002-11-22 Sharp Corp 情報表示装置及び情報表示プログラムを記録した記録媒体
JP2004086841A (ja) * 2002-06-27 2004-03-18 Oki Electric Ind Co Ltd 情報処理装置および方法
JP2004086849A (ja) * 2002-06-27 2004-03-18 Oki Electric Ind Co Ltd 情報処理装置および方法
JP2007274522A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd 投影装置
JP2008505395A (ja) * 2004-06-30 2008-02-21 グーグル・インク ユーザ情報及びコンテキストに基づいて自動的に生成されるリンクを用いる効率の高いドキュメント・ブラウジング
JP2008217822A (ja) * 2004-04-30 2008-09-18 Access Co Ltd フレームページの表示方法、フレームページの表示装置およびプログラム
JP2010003294A (ja) * 2008-05-19 2010-01-07 Canon Inc 構造化文書の印刷制御装置、印刷制御方法及びプログラム
JP2010181971A (ja) * 2009-02-03 2010-08-19 Canon Inc 情報処理装置及び印刷制御方法
JP2010191739A (ja) * 2009-02-19 2010-09-02 Fujitsu Ltd 文書表示装置、文書表示方法、及びこの方法を実行するコンピュータプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4868733B2 (ja) * 2004-11-25 2012-02-01 キヤノン株式会社 構造化文書処理装置及び構造化文書処理方法、プログラム
US7430712B2 (en) * 2005-03-16 2008-09-30 Ameriprise Financial, Inc. System and method for dynamically resizing embeded web page content
US8849725B2 (en) * 2009-08-10 2014-09-30 Yahoo! Inc. Automatic classification of segmented portions of web pages

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063013A (ja) * 2000-05-25 2002-02-28 Internatl Business Mach Corp <Ibm> ウェブ・ブラウザ内にグラフィカル印刷技法を取り込む方法及びシステム
JP2002334013A (ja) * 2001-05-09 2002-11-22 Sharp Corp 情報表示装置及び情報表示プログラムを記録した記録媒体
JP2004086841A (ja) * 2002-06-27 2004-03-18 Oki Electric Ind Co Ltd 情報処理装置および方法
JP2004086849A (ja) * 2002-06-27 2004-03-18 Oki Electric Ind Co Ltd 情報処理装置および方法
JP2008217822A (ja) * 2004-04-30 2008-09-18 Access Co Ltd フレームページの表示方法、フレームページの表示装置およびプログラム
JP2008505395A (ja) * 2004-06-30 2008-02-21 グーグル・インク ユーザ情報及びコンテキストに基づいて自動的に生成されるリンクを用いる効率の高いドキュメント・ブラウジング
JP2007274522A (ja) * 2006-03-31 2007-10-18 Brother Ind Ltd 投影装置
JP2010003294A (ja) * 2008-05-19 2010-01-07 Canon Inc 構造化文書の印刷制御装置、印刷制御方法及びプログラム
JP2010181971A (ja) * 2009-02-03 2010-08-19 Canon Inc 情報処理装置及び印刷制御方法
JP2010191739A (ja) * 2009-02-19 2010-09-02 Fujitsu Ltd 文書表示装置、文書表示方法、及びこの方法を実行するコンピュータプログラム

Also Published As

Publication number Publication date
JP5735778B2 (ja) 2015-06-17
US20120092730A1 (en) 2012-04-19
BRPI1107156A2 (pt) 2013-05-21

Similar Documents

Publication Publication Date Title
JP5801545B2 (ja) 情報処理装置、その情報処理方法及びプログラム
EP2441017B1 (en) Image processing apparatus, image processing method, and storage medium
US9659107B2 (en) Image processing apparatus, image processing method, and storage medium
JP5578975B2 (ja) 情報処理装置、その処理方法及びプログラム
JP5692968B2 (ja) 情報処理装置、情報処理方法、およびプログラム
KR101376905B1 (ko) 화상 처리 장치, 화상 처리 방법 및 기억 매체
JP5735778B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP5792942B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
US20100332999A1 (en) Image processing apparatus, image processing method, and storage medium
RU2573271C2 (ru) Устройство обработки информации, способ управления web-браузером и носитель хранения, сохраняющий программу для него
JP5766257B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP5646019B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2009009360A (ja) データ構造、言語ファイル、情報処理装置および印刷装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131015

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131015

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150417

R151 Written notification of patent or utility model registration

Ref document number: 5735778

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees