JP5813102B2 - ユーザーインターフェース内での互換性のないコンテンツのレンダリング - Google Patents

ユーザーインターフェース内での互換性のないコンテンツのレンダリング Download PDF

Info

Publication number
JP5813102B2
JP5813102B2 JP2013514199A JP2013514199A JP5813102B2 JP 5813102 B2 JP5813102 B2 JP 5813102B2 JP 2013514199 A JP2013514199 A JP 2013514199A JP 2013514199 A JP2013514199 A JP 2013514199A JP 5813102 B2 JP5813102 B2 JP 5813102B2
Authority
JP
Japan
Prior art keywords
web content
user interface
rendered
rendered web
format
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.)
Expired - Fee Related
Application number
JP2013514199A
Other languages
English (en)
Other versions
JP2013535052A (ja
JP2013535052A5 (ja
Inventor
ジャンバルボ,ダニエル・ジェイ
コックス,アンドリュー・ディー
マーガリント,ラドゥ・シー
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2013535052A publication Critical patent/JP2013535052A/ja
Publication of JP2013535052A5 publication Critical patent/JP2013535052A5/ja
Application granted granted Critical
Publication of JP5813102B2 publication Critical patent/JP5813102B2/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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/972Access to data in other repository systems, e.g. legacy data or dynamic Web page generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/49Data-driven translation using very large corpora, e.g. the web

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)

Description

本発明は、ユーザーインターフェース内での互換性のないコンテンツのレンダリングに関する。
[0001]ウェブブラウザーのレンダリングを対象とした形で存在するウェブ上のコンテンツの量が増大している。例えば、ハイパーリンク、3Dインタラクティブオブジェクト、広告、ウェブアプリケーション、及び/又は様々な他のコンテンツが、HTMLなどのウェブベースのフォーマットでユーザーに提供される。ウェブベースのコンテンツの作成者は、一般に、ウェブプラットフォーム内でそのようなコンテンツを開発する。残念ながら、ウェブデザインには、アプリケーション機能のロバスト性、高度なコンテンツを設計する上での難しさ、帯域幅の考慮、コンテンツの双方向性のレベルなどの様々な制限がある。しかし、デスクトップアプリケーションなどのウェブベースでないユーザーインターフェースは、改善されたエクスペリエンスをユーザーに提供する。例えば、スタンドアローンのクライアントビデオゲームは、高度なグラフィックス、入力、及び/又はプログラム可能な機能を提供することができる。対照的に、ウェブベースのビデオゲームは、限られたグラフィック機能及び/又は他のプログラミング設計上の制限によって制限されることがある。
したがって、ウェブベースでないユーザーインターフェース内でウェブコンテンツを提供する場合には制限がある。
[0002]この概要は、詳細な説明において以下にさらに説明される概念の選択を簡略化した形で紹介するために設けられる。この概要は、特許請求された主題の重要な特徴や不可欠な特徴を特定することを意図しておらず、特許請求された主題の範囲を限定するために用いられることも意図していない。
[0003]とりわけ、ユーザーインターフェース内でウェブコンテンツをレンダリングする1つ又は複数のシステム及び/又は技術が本明細書に開示される。ユーザーインターフェースは、汎用オペレーティングシステム上で実行するように構成されるリッチクライアントアプリケーションなどの、ウェブベースでないアプリケーションを含んでもよいと理解することができる。本明細書中で使用されるとき、ウェブコンテンツは、「ウェブ」という語を用いるが、ウェブベースのコンテンツに限定されず、ユーザーインターフェースと互換性のないコンテンツとして解釈されるものであることもまた理解される。例えば、本明細書中で使用されるとき、ウェブベースのHTML要素、ユーザーインターフェースに関して互換性のないプログラミング言語でプログラムされたウェブベースでないプログラミングオブジェクト、DirectX(登録商標)オブジェクトなどは、ウェブコンテンツが含むと意図されるものの例をいくつか示すにすぎない。いくつかの例では、ウェブコンテンツは、ユーザーインターフェースとネイティブに互換性がないかもしれない、というのは、ユーザーインターフェースが異なるプログラミング言語及び/又はパラダイムを使用して異なる(例えば、デスクトップ)プラットフォーム内で作成され得る一方、ウェブコンテンツは異なるプラットフォーム(例えば、ウェブプラットフォーム、異なるプログラミング言語を使用するAPIなど)内で作成され得るからである。すなわち、本明細書で使用されるとき、ウェブコンテンツは、ウェブベースかどうかにかかわらず、互換性のないコンテンツと置き換え可能である。また、レンダリングされたウェブコンテンツは、「ウェブ」という語を使用するが、ウェブベースのレンダラーによってレンダリングされるウェブベースのコンテンツに限定されるものではなく、ユーザーインターフェースと互換性のないコンテンツとして解釈されるべきである。つまり、レンダリングされたウェブコンテンツは、ウェブベースかどうかにかかわらず、互換性のないコンテンツで置き換え可能である。
[0004]したがって、合成コンポーネント(composition component)、入力コンポーネント、及び/又は1つもしくは複数のレンダリングコンポーネントを含むシステムが、本明細書において提供される。合成コンポーネントは、1つ又は複数のレンダリングコンポーネント(例えば、第1のレンダリングコンポーネント)にサーフェス(surface)を送るように構成することができる。例えば、サーフェスは、ウェブコンテンツ(ウェブベースのコンテンツに限定されない、互換性のないコンテンツ)をレンダリングコンポーネントによって共通のフォーマットでイメージとしてレンダリングすることのできるコンテナオブジェクト(例えば、イメージバッファー)とすることができる。第1のレンダリングコンポーネントは、ウェブコンテンツをレンダリングするための命令とともにサーフェスを受け取ることができる。第1のレンダリングコンポーネントはサーフェス内に第1のレンダリングされたウェブコンテンツを生成することができる。第1のレンダリングコンポーネントは、第1のレンダリングされたウェブコンテンツを含むサーフェスを合成コンポーネントに送り返してもよい。合成コンポーネントは、さらなるレンダリングされたウェブコンテンツ(例えば、第2のレンダリングされたウェブコンテンツ)がサーフェス内で生成されるように、第1のレンダリングされたウェブコンテンツ及び/又は他のレンダリングされたウェブコンテンツをもつサーフェスを他のレンダリングコンポーネント(例えば、第2のレンダリングコンポーネント)に送ることができると理解される。このように、サーフェスは、1つ又は複数のレンダリングされたウェブコンテンツ(例えば、互換性のないウェブベースのコンテンツと互換性のないウェブベースでないコンテンツの混合物、互換性のないウェブベースでないコンテンツと異なるレンダリング技術を使用する他の互換性のないウェブベースでないコンテンツの混合物、及び/又は互換性のないウェブベースのコンテンツと異なるレンダリング技術を使用する他の互換性のないウェブベースのコンテンツの混合物)を含んでもよい。
[0005]合成コンポーネントは、第1のレンダリングされたウェブコンテンツをユーザーインターフェースへ提供するように構成することができる。1つの例において、サーフェスが第1及び第2のレンダリングされたウェブコンテンツを含み、ユーザーインターフェースが両方のレンダリングされたウェブコンテンツを要求する場合、合成コンポーネントは、第1及び第2のレンダリングされたウェブコンテンツの両方を、合成のレンダリングされたウェブコンテンツ(combined rendered web content)として、ユーザーインターフェースに送ることができる。別の例において、サーフェスが第1及び第2のレンダリングされたウェブコンテンツを含み、ユーザーインターフェースが第1のレンダリングされたウェブコンテンツを要求する場合、合成コンポーネントは、第1のレンダリングされたウェブコンテンツを選択的に送り、第2のレンダリングされたウェブコンテンツを送らなくてもよい。別の例において、ユーザーインターフェースが第1のレンダリングされたウェブコンテンツの一部を要求する場合、合成コンポーネントは要求された部分を送ってもよい。このように、合成コンポーネントは、ユーザーインターフェースによって要求されるウェブコンテンツを管理し(例えば、サーフェス内でレンダリングされたウェブコンテンツを分割(分解、ブレークアップ)したり組み合わせたりする)及び/又は提供する(例えば、キューブなどの、ユーザーインターフェースのオブジェクト内で塗ることができる「ブラシ」を提供する)ように構成することができる。したがって、ユーザーインターフェースは、使用されるレンダリングコンポーネントの種類に関係なく、ユーザーインターフェース内でレンダリングされたウェブコンテンツを使い及び/又は表示することができる。つまり、レンダリングされたウェブコンテンツは、HTMLであろうと、DirectX(登録商標)であろうと、又は他のレンダラーが生成するレンダリングされたコンテンツであろうと関係なく、共通のフォーマットとされてもよく、したがって、ユーザーインターフェースと互換性があってもよい。一例では、HTMLレンダラーがサーフェス内のある位置で第1のレンダリングされたウェブコンテンツとしてテキストボックスをレンダリングしてもよい。合成コンポーネントは、第1のレンダリングされたウェブコンテンツをユーザーインターフェースに提供することができる。ユーザーインターフェースはテキストボックスを表示してもよい。
[0006]合成コンポーネントは、サーフェス内のレンダリングされたウェブコンテンツ(例えば、車と人のイメージ)を部分(自動車の部分や人の部分)へと「分割(break-up)」するように構成することができると理解することができる。このように、部分は互いに対する初期の向きに対して、同じ又は異なる場所で部分を表示することができるユーザーインターフェースに提供することができる。
[0007]入力コンポーネントは、インタラクションがユーザーインターフェース内で第1のレンダリングされたウェブコンテンツと発生した(例えば、マウスクリックやタイムアウトなどのイベントが発生する)かどうかを決定するように構成することができる。例えば、入力コンポーネントは、ユーザーがテキストボックスをクリックしたかどうかを判断するためにユーザーインターフェース内のテキストボックスを監視することができる。テキストボックスのクリック特性(プロパティ)は、テキストフィールド内にカーソルを表示するテキストボックスに対応してもよく、したがって、テキストボックスの第1のレンダリングされたウェブコンテンツは、テキストフィールド内にカーソルを表示するように更新(再レンダリング)することができると理解することができる。インタラクションを検出すると、入力コンポーネントは、第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために第1のレンダリングコンポーネントを呼び出すように構成することができる。例えば、入力コンポーネントは、テキストボックスがクリックされたことを第1のレンダリングコンポーネントに通知することができる。当該通知は、クリックイベント、マウスの位置、及び/又はユーザーインターフェース内のテキストボックスの位置を含んでもよい。第1のレンダリングコンポーネントは、第1のレンダリングされたウェブコンテンツの更新されたバージョン(例えば、テキストフィールド内にカーソルのあるテキストボックスのイメージ)を生成することができ、これはサーフェスを介して合成コンポーネントに送ることができる。このように、合成コンポーネントは、更新されたバージョンをユーザーインターフェースに提供することができ、それにより、ユーザーインターフェースは、テキストフィールド内にカーソルのあるテキストボックスの更新されたイメージを表示することができる。第1のレンダリングコンポーネントは、要求がなくてもさらなるレンダリングされたウェブコンテンツを「プッシュ」してもよい(例えば、動画は、第1のレンダリングコンポーネントが連続してレンダリングすることができる一連のレンダリングされたイメージを必要とし得る)。
上記の及び関連する目的を達成するために、以下の詳細な説明及び添付の図面は、いくつかの例示的な態様及び実施例を説明する。これらは1つ又は複数の態様を使用することができる様々な方法のうちのほんのいくつかのみを示す。本開示の他の態様、利点、及び新規な特徴は、添付の図面と併せて考慮して以下の詳細な説明から明らかになろう。
[0008]ユーザーインターフェース内でウェブコンテンツをレンダリングする方法の例を示すフローチャートである。 [0009]ユーザーインターフェース内でウェブコンテンツをレンダリングする方法の例を示すフローチャートである。 [0010]ユーザーインターフェース内でウェブコンテンツをレンダリングする例示的なシステムを示すコンポーネントのブロック図である。 [0011]サーフェス内にレンダリングされたウェブコンテンツを生成するために複数のレンダリングコンポーネントを呼び出す合成コンポーネントの例を示す図である。 [0012]合成のレンダリングされたウェブコンテンツをユーザーインターフェースに提供する例を示す図である。 [0013]合成のレンダリングされたウェブコンテンツをユーザーインターフェースに提供する例を示す図である。 [0014]第1のレンダリングされたウェブコンテンツをユーザーインターフェースに提供する例を示す図である。 [0015]第1のレンダリングされたウェブコンテンツの第1及び第2の部分をユーザーインターフェースに提供する例を示す図である。 [0016]サーフェス内で第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために第1のレンダリングコンポーネントを呼び出す入力コンポーネントの例を示す図である。 [0017]本明細書で説明する条件(provisions)のうちの1つ又は複数を具体化するように構成されるプロセッサーが実行可能な命令を含み得る、例示的なコンピューター読み取り可能な媒体の図である。 [0018]本明細書で説明する条件のうちの1つ又は複数を実施することができる例示的なコンピューティング環境を示す。
[0019]特許請求される主題は、ここでは図面を参照して説明され、全体を通じて同様の要素を参照するために同様の参照数字が使用される。以下の説明では、説明の目的のために、特許請求された主題の完全な理解を提供するために多くの具体的な詳細が記載される。しかし、特許請求された主題がこれらの具体的な詳細がなくても実施できることは明らかであろう。他の例では、特許請求された主題の説明を容易にするために、構造及び装置がブロック図の形で示されている。
[0020]パーソナルコンピューター、PDA、タブレットPC、スマートフォン、様々な他の技術は、リッチウェブコンテンツへのアクセスをユーザーに提供する。例えば、ユーザーは、タブレットPCを使ってソーシャルネットワーキングウェブサイトを通じてビデオゲームをプレイすることができる。別の例では、ユーザーは、スマートフォン上で運転ルートをマッピングすることができる。コンテンツを検索、探索、使用、共有するための手段として、ウェブの需要が高まっているため、開発者は多くの場合、新しいコンテンツを開発するためにウェブベースのオーサリングプラットフォームを選択する。例えば、百科事典アプリケーションは、一般的に、リッチクライアントアプリケーション(例えば、ウィンドウベースのアプリケーション)を介して実行するように開発され、複数のCD又はDVD(例えば、10枚組CDのセット)を含むソフトウェアバンドルを介して配布された。しかし、今日では、デスクトップアプリケーションを購入し、デスクトップアプリケーションをインストールし、デスクトップアプリケーション内でコンテンツを使うのではなく、膨大な数のユーザーが簡単にウェブコンテンツを見つけて使うことができるので、百科事典コンテンツは、一般的に、インタラクティブなウェブページやウェブアプリケーションなどのウェブベースのコンテンツである。
[0021]膨大な量の新たなコンテンツがウェブコンテンツとして開発され、ウェブインターフェースよりもロバストでインタラクティブなエクスペリエンスを提供する能力をユーザーインターフェース内で提供することができるので、ユーザーインターフェース内でウェブコンテンツを提供することが有利な場合がある。ユーザーインターフェースは、ウェブベースでないアプリケーションとして解釈されてもよく、リッチクライアントアプリケーション、ユーザーインターフェース、ウェブベースでないアプリケーション、及び/又は、デスクトップアプリケーションと呼ばれてもよく、専用のウェブインターフェースとは異なることが理解されよう。1つの現在の技術は、ユーザーインターフェースがユーザーインターフェースのサーフェス上でウェブページの部分をペイントすることができる「ブラシ」をユーザーインターフェースに提供することにより、ユーザーインターフェース内でウェブコンテンツを提供することを試みている。残念ながら、ペイントされるサーフェスはインタラクティブではない(例えば、ユーザーがハイパーリンクを選択するとき、選択が生じたことを示す新しい色でハイパーリンクを更新する機能がない)。別の現在の技術は、制限されたインタラクティブなHTMLレンダリングされたサーフェスを提供する。しかし、レンダリングされたサーフェスはHTMLウィンドウの内部に制約される。
[0022]したがって、ユーザーインターフェース内でウェブコンテンツをレンダリングする1つ又は複数のシステム及び/又は技術が、本明細書において提供される。具体的には、1つ又は複数のレンダリングコンポーネントは、対応するフォーマットでウェブコンテンツをレンダリングするように構成することができる。例えば、第1のレンダリングコンポーネントはHTMLウェブコンテンツを生成するように構成することができ、第2のレンダリングコンポーネントはDirectX(登録商標)のレンダリングされたコンテンツを生成するように構成するなどすることができる。レンダリングコンポーネントはサーフェス内に共通の形式でウェブコンテンツをレンダリングするように構成することができる。合成コンポーネントは、サーフェス内でレンダリングされたウェブコンテンツを「収集(collect)」するレンダリングコンポーネント間でサーフェスを渡してもよい。合成コンポーネントは、サーフェス内のレンダリングされたコンテンツをユーザーインターフェースに提供するように構成することができる。1つの例では、第1のレンダリングされたコンテンツ又はその一部は、ユーザーインターフェースに提供することができる。別の例では、第1のレンダリングコンポーネントによってレンダリングされた第1のレンダリングされたウェブコンテンツと第2のレンダリングコンポーネントによってレンダリングされた第2のレンダリングされたウェブコンテンツの組み合わせをユーザーインターフェースに提供することができる。入力コンポーネントは、ユーザーインターフェース内のレンダリングされたウェブコンテンツとのユーザーのインタラクションに基づいて、レンダリングされたウェブコンテンツの更新されたバージョンを提供するために、レンダリングコンポーネントを呼び出すように構成することができる。
[0023]ユーザーインターフェース内でウェブコンテンツをレンダリングする1つの実施例が図1の例示的な方法100によって示される。102においてこの方法が開始される。104において、第1のレンダリングコンポーネントが、サーフェス内で第1のレンダリングされたウェブコンテンツを生成するために呼び出されてもよい。例えば、ウェブページの隠しインスタンス(hidden instance)などのHTMLレンダラーが、サーフェス内のある位置において共通の形式でハイパーリンクのイメージをレンダリングしてもよい。106において、サーフェス内からの第1のレンダリングされたウェブコンテンツを、ユーザーインターフェース(例えば、ウェブベースでないアプリケーション)に提供することができる。例えば、青色のハイパーリンクのレンダリングされたイメージを、青色のハイパーリンクのレンダリングされたイメージを(例えば、キューブオブジェクト(cube object)内で)表示することができるマルチメディアデスクトップアプリケーションに提供することができる。マルチメディアデスクトップアプリケーションは、マルチメディアデスクトップアプリケーションの右下隅にあるキューブオブジェクト内にハイパーリンクを表示することができる。
[0024]108において、ユーザーインターフェース内での第1のレンダリングされたウェブコンテンツとのインタラクションが受け取られてもよい。例えば、ユーザーはカーソルを使用してキューブオブジェクト内でハイパーリンクをクリック(起動)してもよい。この例では、インタラクションは、クリックイベント、マルチメディアデスクトップアプリケーション内のハイパーリンクの位置、マウスの位置、及び/又は他の情報を含んでもよい。110において、第1のレンダリングコンポーネントが、インタラクション及び/又はなんらの他の種類の通知に基づいて、サーフェス内で第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために呼び出されてもよい。例えば、インタラクションデータ(例えば、クリックイベント、ハイパーリンクの位置など)がHTMLレンダラーに提供されてもよい。HTMLレンダラーは、ハイパーリンクのイメージの更新されたバージョンを生成することができる(例えば、更新されたイメージは、ハイパーリンクがユーザーによって呼び出されたことを示すために、紫などの別の色で表示されたハイパーリンクを含んでもよい)。第1のレンダリングコンポーネントが、例えばいくつかの所定の基準、ユーザー設定などに基づいて、第1のレンダリングされたウェブコンテンツの更新されたバージョンを生成しないと決定することができると理解されよう。
[0025]112において、サーフェス内の更新された第1のレンダリングされたウェブコンテンツをユーザーインターフェースに提供することができる。例えば、更新された紫色のハイパーリンクのレンダリングされたイメージを、更新された紫色のハイパーリンクの更新されたレンダリングされたイメージを表示することができるマルチメディアデスクトップアプリケーションに提供することができる。ハイパーリンクがユーザーによって起動されたことを示すために、キューブオブジェクト内で、青色のハイパーリンクのイメージの代わりに、マルチメディアデスクトップアプリケーションは、更新された紫色のハイパーリンクを表示してもよい。
[0026]複数のレンダリングコンポーネントを、サーフェス内で共通のフォーマットでレンダリングされたウェブコンテンツを生成するために使用され得ることが理解されよう。一例では、第2のレンダリングコンポーネント(例えば、DirectX(登録商標)のレンダリングコンポーネント)が、サーフェス内で第2のレンダリングされたウェブコンテンツを生成するために呼び出されてもよい。例えば、第2のレンダリングコンポーネントは、ハイパーリンクを含むサーフェス内でウェブベースのテキストを生成することができる。一例では、ハイパーリンクやテキストボックスをユーザーインターフェースに提供することができる。別の例では、ハイパーリンクとテキストボックスはユーザーインターフェースに提供することができる合成のレンダリングされたウェブコンテンツ(combined rendered web content)へと組み合わされてもよい。このように、1つ又は複数のレンダリング技術によってレンダリングされたインタラクティブなウェブコンテンツは、互換性のある形式でユーザーインターフェースに提供することができる。114においてこの方法は終了する。
[0027]ユーザーインターフェース内でウェブコンテンツをレンダリングする1つの実施例が図2の例示的な方法200によって示される。202において方法が開始される。204において、第1のレンダリングコンポーネントが、サーフェス内に第1のレンダリングされたウェブコンテンツを生成するために呼び出されてもよい。第1のレンダリングされたウェブコンテンツはウェブコンテンツのイメージを含んでもよい。例えば、HTMLレンダラーが、ある特定の位置においてサーフェス内にウェブベースのテーブルのイメージを生成することができる。206において、サーフェス内からの第1のレンダリングされたウェブコンテンツの一部はユーザーインターフェースに提供することができる。例えば、ウェブベースのテーブルのイメージは15個の行を含んでもよい。しかし、例えばウェブベースのテーブルの最初の10行など、イメージの一部をユーザーインターフェースに提供することができる。
[0028]208において、ユーザーインターフェース内での第1のレンダリングされたウェブコンテンツの一部とのインタラクションが受け取られてもよい。インタラクションは、マウスの位置、キーボード入力、タッチ検出など、及び/又はユーザーインターフェース内の第1のレンダリングされたウェブコンテンツの一部の位置を含んでもよい。例えば、ユーザーは、ユーザーインターフェース内に表示されるウェブベースのテーブルのセル(例えば、セル2、3)内でクリックすることができる。マウスクリックイベント、マウスの位置(例えば、クリックされたセルを示すマウスのxy座標)及び/又はユーザーインターフェース内に表示されるようなイメージの一部(例えば、ウェブベースのテーブルの最初の10行)の位置を受け取ることができる。
[0029]210において、第1のレンダリングコンポーネントが、インタラクションに基づいてサーフェス内に第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために呼び出されてもよい。第1のレンダリングされたウェブコンテンツの更新バージョンは、ウェブコンテンツの更新されたイメージを含んでもよい。例えば、HTMLレンダラーは、クリックされたセル内にカーソルが描かれるように、ウェブベースのテーブルの更新バージョンを生成することができる。212において、サーフェス内の第1の更新されたレンダリングされたウェブコンテンツの少なくとも一部は、ユーザーインターフェースに提供することができる。一例では、更新されたイメージの一部は、更新されたセルを含むことができる更新されたウェブベースのテーブルの最初の10行を含んでもよい。別の例では、更新されたセルのみのイメージをユーザーインターフェースに提供することができる。このように、ユーザーインターフェースは、クリックしたセルにカーソルが描かれるように、更新されたウェブベースのテーブルの最初の10行を提示することができる。214においてこの方法は終了する。
[0030]図3は、ユーザーインターフェース314内にウェブコンテンツをレンダリングするように構成されたシステム300の一例を示す。システム300は、第1のレンダリングコンポーネント304、第2のレンダリングコンポーネント306、及び/又は他のレンダリングコンポーネント(例えば、N番目のレンダリングコンポーネント308)を含んでもよい。システム300が第1のレンダリングコンポーネント304などの単一のレンダリングコンポーネントを含んでもよいことができることが理解されよう。システム300は合成コンポーネント(composition component)302及び/又は入力コンポーネント318を含んでもよい。ユーザーインターフェース314はデスクトップの車リサーチアプリケーションなどのウェブベースでないアプリケーションであってもよい。
[0031]合成コンポーネント302は、第1のレンダリングコンポーネント304などのレンダリングコンポーネント(例えば、ウェブページの隠しインスタンスを含むHTMLレンダラー)にサーフェス310を送るように構成することができる。第1のレンダリングコンポーネント304は、合成コンポーネント302からサーフェス310を受け取るように構成することができる。第1のレンダリングコンポーネント304は、サーフェス310内で第1のレンダリングされたウェブコンテンツを生成するように構成することができる。例えば、第1のレンダリングコンポーネント302は、車及び人のイメージを共通のフォーマットでレンダリングすることができる。第1のレンダリングコンポーネント302は合成コンポーネント302にサーフェス310を送ってもよく、合成コンポーネントは、第1のレンダリングコンポーネント304から第1のレンダリングされたウェブコンテンツ(例えば、車や人のレンダリングされたイメージ)を含むサーフェス310を受け取るように構成することができる。合成コンポーネント302は、ユーザーインターフェース314へ、第1のレンダリングされたウェブコンテンツなどのレンダリングされたウェブコンテンツ312を提供するように構成することができる。
[0032]合成コンポーネント302が、サーフェス310内にレンダリングされたウェブコンテンツを生成するために複数のレンダリングコンポーネントを呼び出すように構成することができることが理解されよう。レンダリングコンポーネントによって生成されるレンダリングされたウェブコンテンツを管理する際に、1つ又は複数のサーフェスが利用され得ることが理解されよう。一例では、第2のレンダリングコンポーネント306(例えば、DirectX(登録商標)レンダラー)は、サーフェス310内に第2のレンダリングされたウェブコンテンツをレンダリングするように構成することができる。例えば、第2のレンダリングコンポーネント306は、サーフェス310内の破線のボックスのレンダリングされたイメージを生成することができる。このように、合成コンポーネント302は、1つ又は複数のサーフェスを使用して、ユーザーインターフェース314に、様々なレンダリングコンポーネントからレンダリングされたウェブコンテンツ312を提供することができる。例えば、合成コンポーネント302は、ユーザーインターフェース314に第1又は第2のレンダリングされたウェブコンテンツを選択的に提供することができる。別の例では、合成コンポーネント302は、第1及び第2のレンダリングされたウェブコンテンツを合成のレンダリングされたウェブコンテンツへと組み合わせることができ、合成のレンダリングされたウェブコンテンツをユーザーインターフェース314に提供することができる。ユーザーインターフェース314、入力コンポーネント318、及び/又は合成コンポーネント302が、サーフェス310上にレンダリングされたウェブコンテンツを生成するようレンダリングコンポーネントに要求するように構成することができることが理解されよう。
[0033]入力コンポーネント318は、ユーザーインターフェース内のレンダリングされたウェブコンテンツとのインタラクション316に基づいてサーフェス310内にレンダリングされたウェブコンテンツの更新バージョンを生成するために、第1のレンダリングコンポーネント304などのレンダリングコンポーネント320を起動するように構成することができる。例えば、ユーザーインターフェース314は、車や人のイメージを含む第1のレンダリングされたウェブコンテンツを表示してもよい。ユーザーは、車や人のイメージにマウスオーバーすることができ、それはインタラクション316として入力コンポーネント318によって検出されてもよい。入力コンポーネント318は、マウスオーバーイベント、マウスの位置、及び/又はユーザーインターフェース314内の第1のレンダリングされたウェブコンテンツの位置を、第1のレンダリングコンポーネント304に提供することができる。第1のレンダリングコンポーネントは、サーフェス310内に第1のレンダリングされたウェブコンテンツの更新バージョン(例えば、黄色で強調表示された車や人を表すイメージ)を生成することができ、それは合成コンポーネント302によってユーザーインターフェース314に提供することができる。このように、レンダリングされたウェブコンテンツは更新することができ、ユーザーのインタラクションに基づいて、ユーザーインターフェース314に提供することができ、したがって、ユーザーインターフェース314内のインタラクティブなウェブコンテンツを可能にする。
[0034]合成コンポーネント302がサーフェス内のレンダリングされたウェブコンテンツを部分へと「分割(ブレークアップ)」するように構成することができることが理解されよう。例えば、第1のレンダリングコンポーネントはサーフェス内に車や人を含むウェブコンテンツをレンダリングすることができる。合成コンポーネント302は車と人を別個の部分に分割するように構成することができる。このようにして、車は、ユーザーインターフェースが第1の位置で車を表示できるように、ユーザーインターフェースに提供することができる。人は、ユーザーインターフェースが第2の位置においてその人を表示できるように、ユーザーインターフェースに提供することができ、ここで第1及び第2の位置は、分割される前のこれらの要素のそれぞれの位置とは異なる。
[0035]図4は、サーフェス404内にレンダリングされたウェブコンテンツを生成するために複数のレンダリングコンポーネントを呼び出す合成コンポーネント402の例400の図である。合成コンポーネント402は、第1のレンダリングコンポーネント406にサーフェス404を送ってもよい。第1のレンダリングコンポーネントは、サーフェス408内に車と人の第1のレンダリングされたウェブコンテンツを生成することができる。合成コンポーネント402は、第1のレンダリングされたウェブコンテンツをもつサーフェス408を受け取ってもよい。
[0036]合成コンポーネント402は、第2のレンダリングコンポーネント412に、第1のレンダリングされたウェブコンテンツを含むサーフェス410を送ってもよい。第2のレンダリングコンポーネント412は、サーフェス414内で破線のボックスの第2のレンダリングされたウェブコンテンツを生成することができる。合成コンポーネント402は、第1のレンダリングされたウェブコンテンツ及び第2のレンダリングされたウェブコンテンツをもつサーフェス414を受け取ることができる。
[0037]合成コンポーネント402は、第1のレンダリングされたウェブコンテンツ及び第2のレンダリングされたウェブコンテンツをもつサーフェス416をN番目のレンダリングコンポーネント418に送ってもよい。N番目のレンダリングコンポーネント418はサーフェス420内で車のハイパーリンクのN番目のレンダリングされたウェブコンテンツを生成することができる。合成コンポーネント402は、第1のレンダリングされたウェブコンテンツ、第2のレンダリングされたウェブコンテンツ、N番目のレンダリングされたウェブコンテンツをもつサーフェス420を受け取ってもよい。例400で参照される様々なサーフェス(404、408、410、414、416、及び/又は420)が、同一の又は異なるサーフェスであってもよいことが理解されよう。このように、合成コンポーネント402は、様々なレンダリングコンポーネントから1つ又は複数のサーフェス上にレンダリングされたウェブコンテンツを収集することができる。
[0038]図5は、組み合わされたレンダリングされたウェブコンテンツ512をユーザーインターフェース514に提供する例500の図である。合成コンポーネント502はサーフェス504内でウェブコンテンツ(例えば、イメージ)を収集していてもよい。例えば、サーフェス504は、車と人の第1のレンダリングされたウェブコンテンツ506、破線のボックスの第2のレンダリングされたウェブコンテンツ508、及び/又は車のハイパーリンクの第3のレンダリングされたウェブコンテンツ510を含むことができる。合成コンポーネント502は、第1、第2、第3のウェブコンテンツを、車、人、破線のボックス、車のハイパーリンクのイメージを含む合成のレンダリングされたウェブコンテンツ512へと組み合わせることができる。合成コンポーネント502は、ユーザーインターフェース514に合成のレンダリングされたウェブコンテンツ512を提供することができる。ユーザー・インターフェース514は、表示されるユーザーインターフェース514内で、合成のレンダリングされたウェブコンテンツ512内にイメージを表示することができる。例えば、車や人のイメージ516を破線のボックスのイメージ518内に表示することができる一方、車のハイパーリンクのイメージ520をユーザーインターフェース514内の下に表示することができる。
[0039]図6は、組み合わせたレンダリングされたウェブコンテンツ612をユーザーインターフェース614に提供する例600の図である。合成コンポーネント602はサーフェス604内にウェブコンテンツ(例えば、イメージ)を収集していてもよい。例えば、サーフェス604は、車と人の第1のレンダリングされたウェブコンテンツ606、破線のボックスの第2のレンダリングされたウェブコンテンツ608、及び/又は車のハイパーリンクの第3のレンダリングされたウェブコンテンツ610を含んでもよい。合成コンポーネント602は、第1のウェブコンテンツ及び(第2のウェブコンテンツではなく)第3のウェブコンテンツを、車、人、破線のボックスのイメージを含む合成のレンダリングされたウェブコンテンツ612へと組み合わせることができる。合成コンポーネント602は、ユーザーインターフェース614に合成のレンダリングされたウェブコンテンツ612を提供することができる。ユーザーインターフェース614は、表示されるユーザーインターフェース614内で、合成のレンダリングされたウェブコンテンツ612内にイメージを表示してもよい。例えば、車や人のイメージ616は、ユーザーインターフェース614内で車のハイパーリンクのイメージ620の上に表示されてもよい。
[0040]図7は、第1のレンダリングされたウェブコンテンツ712をユーザーインターフェース714に提供する例700の図である。合成コンポーネント702はサーフェス704内でウェブコンテンツ(例えば、イメージ)を収集していてもよい。例えば、サーフェス704は、車と人の第1のレンダリングされたウェブコンテンツ706、破線のボックスの第2のレンダリングされたウェブコンテンツ708、及び/又は車のハイパーリンクの第3のレンダリングされたウェブコンテンツ710を含むことができる。合成コンポーネント702は、車と人のイメージを含む第1のレンダリングされたウェブコンテンツ712をユーザーインターフェース714に提供することができる。ユーザーインターフェース714は、表示されるユーザーインターフェース714内で第1のレンダリングされたウェブコンテンツ712内に車と人のイメージ716を表示してもよい。
[0041]図8は、第1のレンダリングされたウェブコンテンツの第1及び第2の部分をユーザーインターフェース812に提供する例800の図である。合成コンポーネント802はサーフェス804内でウェブコンテンツ(例えば、イメージ)を収集していてもよい。例えば、サーフェス804は、他のレンダリングされたウェブコンテンツとともに、車808と人806の第1のレンダリングされたウェブコンテンツを含むことができる。合成コンポーネント802は、第1のレンダリングされたウェブコンテンツの人806の部分ではなく、車808の部分のイメージを含む第1のレンダリングされたウェブコンテンツ810の第1の部分を、ユーザーインターフェース812に提供してもよい。ユーザーインターフェース812は、第1の位置において表示されるユーザーインターフェース812内で第1のレンダリングされたウェブコンテンツ810の第1の部分内に車のイメージ814を表示してもよい。また、合成コンポーネント802は、第1のレンダリングされたウェブコンテンツの車808の部分ではなく、人806の部分のイメージを含む第1のレンダリングされたウェブコンテンツ816の第2の部分を、ユーザーインターフェース812に提供することができる。ユーザーインターフェースは、第2の位置において(例えば、最初に示されるように車の横/後ろではなく車の上に)第1のレンダリングされたウェブコンテンツ810の第2の部分内に人のイメージ818を表示してもよい。
[0042]例えば、ハイパーリンクなどの他のイメージがまた、他のコンテンツの一部のみがユーザーインターフェースに表示されるユーザーインターフェース812に表示されてもよいことが理解されよう。例えば、ハイパーリンクのイメージは、人806の部分が表示されない場合に車808の部分とともに表示することができる。
[0043]図9は、サーフェス内に第1のレンダリングされたウェブコンテンツの更新バージョン916を生成するために第1のレンダリングコンポーネント914を呼び出す入力コンポーネント910の例900を示す図である。ユーザーインターフェース902は、車のイメージを含む第1のレンダリングされたウェブコンテンツ904を表示することができる。第1のレンダリングされたウェブコンテンツ904上でのマウスクリックは車を選択するカーソル906によって起動されてもよい。入力コンポーネント910は、位置データ(例えば、マウスの位置、キーボード入力、触覚検出(tactile detection)、及び/又はユーザーインターフェース902内の第1のレンダリングされたウェブコンテンツ904の位置)とともに、第1のレンダリングされたウェブコンテンツ904とのインタラクション908を検出してもよい。入力コンポーネント910は、サーフェス内に第1のレンダリングされたウェブコンテンツの更新バージョン916を生成するために第1のレンダリングコンポーネント914を呼び出すことができる(912)。例えば、第1のレンダリングコンポーネント914は、異なる向きの(例えば、車が丘を登っているかのように車が傾いた上向きの位置に描かれてもよい)及び/又はサーフェス内の異なる位置の(例えば、車が丘の右上へ向かうかのようにさらに右の位置において車の更新されたイメージがレンダリングされてもよい)車のイメージを含む更新されたバージョン916を生成してもよい。
[0044]合成コンポーネント918は、第1のレンダリングされたウェブコンテンツの更新バージョン920をユーザーインターフェース902に提供するように構成することができる。ユーザーインターフェース902は更新された車のイメージ922を表示することができる。このように、インタラクション(例えば、ユーザーのインタラクション、タイマーの終了、及び/又は他のイベント)を、レンダリングされたウェブコンテンツを更新するために使用することができる。例えば、車のイメージ922は、その後、ユーザーインターフェース902内で車の動きを表現するために1回又は複数回更新されることがある。
[0045]さらに別の実施例は、本明細書に示される技術の1つ又は複数を実施するように構成されるプロセッサーが実行可能な命令を含むコンピューター読み取り可能な媒体を含む。これらの方法で考えられる例示的なコンピューター読み取り可能な媒体が図10に示され、ここで実施例1000はコンピューター読み取り可能なデータ1014がエンコードされたコンピューター読み取り可能な媒体1016(例えば、CD−R、DVD−R、又はハード・ディスクドライブのプラッター)を含む。このコンピューター読み取り可能なデータ1014は本明細書に記載された原理の1つ又は複数に従って動作するように構成されたコンピューター命令1012のセットを含む。1つのこのような実施例1000において、プロセッサーが実行可能なコンピューター命令1012は、例えば図1の例示的な方法100及び/又は図2の例示的な方法200などの方法1010を実行するように構成することができる。別のこのような実施例において、プロセッサーが実行可能命令1012は、例えば図3の例示的なシステム300などのシステムを実施するように構成することができる。当業者であれば、本明細書に示される技術に従って動作するように構成される多くのこのようなコンピューター読み取り可能な媒体が考えられるであろう。
[0046]本発明は構造の特徴及び/又は方法の動作に特有の言葉で記載されたが、添付の特許請求の範囲に規定される主題は必ずしも上述の特定の特徴又は動作に限定されるものではないことを理解すべきである。そのようなものではなく、上述の特定の特徴及び動作は特許請求の範囲を実施する形態の例として開示されるものである。
[0047]本願において使用される場合、「コンポーネント」、「モジュール」、「システム」、「インターフェース」などの用語は、一般に、コンピューター関連のエンティティ、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアを指すように意図される。例えば、「コンポーネント」は、プロセッサー上で実行されるプロセス、プロセッサー、オブジェクト、実行ファイル、実行のスレッド、プログラム、及び/又はコンピューターとすることができるが、これらに限定されない。例として、コントローラー上で実行されるアプリケーションとコントローラーの両方がコンポーネントであってもよい。1つ又は複数のコンポーネントはプロセス及び/又は実行のスレッド内にあってもよいし、コンポーネントは1つのコンピューター上に局在し及び/又は2つ以上のコンピューター間に分散してもよい。
[0048]さらに、特許請求される主題は、開示される主題を実施するようにコンピューターを制御するためのソフトウェア、ファームウェア、ハードウェア又はこれらの任意の組み合わせを生成するための標準的なプログラミング及び/又はエンジニアリング技術を使用して、方法、装置、又は製品として実施することができる。本明細書で使用される場合、「製品」という用語は、任意のコンピューター読み取り可能なデバイス、キャリアー、又は媒体からアクセス可能なコンピュータープログラムを含むように意図される。もちろん、当業者であれば、特許請求された主題の範囲又は趣旨から逸脱することなくこの構成に対して多くの変更をなすことができると認識するであろう。
[0049]図11及び以下の説明は、本明細書に記載されたものの1つ又は複数についての実施例を実施するための適切なコンピューティング環境の簡潔で概略的な説明を提供するものである。図11の動作環境は、適切な動作環境の一例に過ぎず、動作環境の使用又は機能の範囲について何ら限定を示唆するものではない。例示的なコンピューティングデバイスは、パーソナルコンピューター、サーバーコンピューター、ハンドヘルド又はラップトップデバイス、モバイルデバイス(携帯電話、携帯情報端末(PDA)、メディアプレーヤーなど)、マルチプロセッサーシステム、家庭用電化製品、ミニコンピューター、メインフレームコンピューター、上記のシステム又はデバイスのいずれかを含む分散コンピューティング環境などを含んでもよいが、これらに限定されない。
[0050]必須ではないが、実施例は、1つ又は複数のコンピューティングデバイスによって実行される「コンピューター読み取り可能な命令」の一般的なコンテキストで説明される。コンピューター読み取り可能な命令は、コンピューター読み取り可能な媒体を介して分散させることができる(後述)。コンピューター読み取り可能な命令は、特定のタスクを実行したり、又は特定の抽象データ型を実施したりする、関数、オブジェクト、アプリケーションプログラミングインターフェース(API)、データ構造などのプログラムモジュールとして実施することができる。一般的に、コンピューター読み取り可能な命令の機能は様々な環境において必要に応じて組み合わせたり分散させたりすることができる。
[0051]図11は、本明細書に示される1つ又は複数の実施例を実施するように構成されたコンピューティングデバイス1112を含むシステム1110の一例を示す。1つの構成では、コンピューティングデバイス1112は少なくとも1つの処理ユニット1116とメモリー1118を含む。コンピューティングデバイスの正確な構成と種類に応じて、メモリー1118は、(例えばRAMなどのように)揮発性であってもよいし、(例えばROM、フラッシュメモリーなどのように)不揮発性であってもよいし、又はこれらの組み合わせであってもよい。この構成は、破線1114で図11に示される。
[0052]他の実施例ではデバイス1112はさらなる特徴及び/又は機能を含んでもよい。例えば、デバイス1112はまた、磁気記憶装置、光学記憶装置などを含むがこれらに限定されないさらなる記憶装置(例えば、取り外し可能及び/又は取り外し不能)を含むことができる。このようなさらなる記憶装置が記憶装置1120として図11に示される。1つの実施例において、本明細書で提供される1つ又は複数の実施例を実施するためのコンピューター読み取り可能な命令は記憶装置1120にあってもよい。記憶装置1120はまた、オペレーティングシステム、アプリケーションプログラムなどを実行するための他のコンピューター読み取り可能な命令を格納することができる。コンピューター読み取り可能な命令は、例えば、処理ユニット1116によって実行のためにメモリー1118にロードすることができる。
[0053]本明細書で使用する場合、「コンピューター読み取り可能な媒体」という用語はコンピューター記憶媒体を含む。コンピューター記憶媒体は、コンピューター読み取り可能な命令又は他のデータなどの情報を格納するための任意の方法又は技術で実施される揮発性及び不揮発性の、取り外し可能及び取り外し不能の媒体を含む。メモリー1118及び記憶装置1120はコンピューター記憶媒体の例である。コンピューター記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリー又は他のメモリー技術、CD−ROM、デジタルバーサタイルディスク(DVD)又は他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶装置、又は所望の情報を格納するために使用できデバイス1112によってアクセスできる任意の他の媒体を含むが、これらに限定されない。このような任意のコンピューター記憶媒体はデバイス1112の一部であってもよい。
[0054]デバイス1112はまた、デバイス1112が他のデバイスと通信することを可能にする通信接続1126を含むことができる。通信接続1126は、モデム、ネットワークインターフェースカード(NIC)、統合されたネットワークインターフェース、無線周波数送信機/受信機、赤外線ポート、USB接続、又は他のコンピューティングデバイスにコンピューティングデバイス1112を接続する他のインターフェースを含むが、これらに限定されない。通信接続1126は有線接続又は無線接続を含むことができる。通信接続1126は通信媒体を送信及び/又は受信することができる。
[0055]「コンピューター読み取り可能な媒体」という用語は通信媒体を含むことができる。通信媒体は、通常、搬送波又は他の移送機構などの「変調データ信号」でコンピューター読み取り可能な命令や他のデータを具現化し、任意の情報配信媒体を含む。「変調データ信号」という用語は、信号に情報を符号化するように設定又は変更される1つ又は複数の特性を有する信号を含むことができる。
[0056]デバイス1112は、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、赤外線カメラ、ビデオ入力デバイス、及び/又は他の任意の入力デバイスなどの入力デバイス1124を含むことができる。1つ又は複数のディスプレイ、スピーカー、プリンター、及び/又は任意の他の出力デバイスなどの出力デバイス1122もまた、デバイス1112に含まれてもよい。入力デバイス1124及び出力デバイス1122は、有線接続、無線接続、又はそれらの任意の組み合わせを介してデバイス1112に接続することができる。1つの実施例では、別のコンピューティングデバイスからの入力デバイス又は出力デバイスを、コンピューティングデバイス1112の入力デバイス1124又は出力デバイス1122として使用することもできる。
[0057]コンピューティングデバイス1112のコンポーネントはバスなどの様々な相互接続によって接続することができる。このような相互接続は、PCI Expressなどの周辺コンポーネント相互接続(PCI)、ユニバーサルシリアルバス(USB)、ファイヤーワイヤー(商標)(FireWire)(IEEE13114)、光バス構造などを含んでもよい。別の実施例では、コンピューティングデバイス1112のコンポーネントはネットワークによって相互接続することができる。例えば、メモリー1118は、ネットワークによって相互接続された物理的に異なる位置に配置された複数の物理メモリーユニットから構成されてもよい。
[0058]当業者であれば、コンピューター読み取り可能な命令を格納するために利用される記憶装置がネットワーク上に分散することができることを理解するであろう。例えば、ネットワーク1128を介してアクセス可能なコンピューティングデバイス1130は、本明細書で提供される1つ又は複数の実施例を実施するためのコンピューター読み取り可能な命令を記憶することができる。コンピューティングデバイス1112は、コンピューティングデバイス1130にアクセスして、実行のためのコンピューター読み取り可能な命令の一部又はすべてをダウンロードすることができる。代わりに、コンピューティングデバイス1112は、必要に応じて、コンピューター読み取り可能な命令の一部をダウンロードすることができ、また、ある命令はコンピューティングデバイス1112において実行されてもよいしある命令はコンピューティングデバイス1130において実行されてもよい。
[0059]実施例の様々な動作が本明細書で提供される。1つの実施例では、説明される動作の1つ又は複数は、コンピューティングデバイスによって実行される場合にコンピューティングデバイスに説明された動作を実行させる、1つ又は複数のコンピューター読み取り可能な媒体上に記憶されたコンピューター読み取り可能な命令を構成してもよい。動作の一部又はすべてが説明される順序は、これらの動作が必ず順序に依存することを意味すると解釈されるべきではない。当業者であれば本明細書の利益を有する他の順序を理解するであろう。さらに、必ずしもすべての動作が本明細書にて提供された各実施例にあるわけではないことが理解されよう。
[0060]さらに、「例示的」という語は、例、事例、又は実例として役立つように使用される。「例示的」であるとして本明細書に記載される任意の態様又は設計は、必ずしも、他の態様又は設計よりも有利であると解釈されるべきではない。そのようなものではなく、例示的という語の使用は概念を具体的に示すことを意図している。本出願で使用される場合、「又は」という語は、排他的な「又は」ではなく、包括的な「又は」を意味することが意図される。すなわち、特に断らない限り又は文脈から明らかでない限り、「XはA又はBを使用する」とは普通の包括的な置換のうちのいずれかを意味することを意図している。すなわち、XがAを使用し、XがBを使用し、又はXがA及びBの両方を使用する場合、「XはA又はBを使用する」ということがこのような例の任意のものの下に成立する。また、本願及び添付の特許請求の範囲において使用されるとき、冠詞「1つの」は、単数形を示すように特に断らない限り又は文脈から明らかでない限り、一般に、「1つ又は複数」を意味するように解釈されてもよい。
[0061]また、本開示は1つ又は複数の実施例に関して示され、説明されてきたが、当業者であれば、本明細書及び添付の図面を読んで理解することで、等価な変更や修正を考慮するであろう。本開示は、このようなすべての修正及び変更を含んでおり、以下の特許請求の範囲によってのみ限定される。特に上記のコンポーネント(例えば、要素、リソースなど)によって実行される様々な機能に関しては、このようなコンポーネントを記述するために使用される用語は、特に明記しない限り、本明細書で説明された本開示の例示的な実施例の機能を実行する開示された構造と構造的に等価でなくとも、記載されたコンポーネントの特定された機能を実行する(例えば、機能的に等価な)任意のコンポーネントに対応するように意図される。また、本開示の特定の特徴はいくつかの実施例の1つのみに関して開示されたが、そのような機能は、任意の所与の又は特定の用途にとって望ましい利点を有するように、他の実施例の1つ又は複数の他の機能と組み合わせることができる。さらに、「含む」、「有している」、「有する」、「とともに」という語、又はその変形が詳細な説明又は特許請求の範囲で使用される限りにおいて、このような語は「備える」という語と同様に包括的であるよう意図される。

Claims (20)

  1. ユーザーインターフェース内で前記ユーザーインターフェースと互換性のないウェブコンテンツをレンダリングするシステムであって、
    サーフェス内で、ユーザーインターフェースと互換性のない第1のフォーマットのウェブコンテンツから、第1のレンダリングされたウェブコンテンツを生成する、第1のレンダリングコンポーネントを呼び出し、
    前記サーフェス内で、前記ユーザーインターフェースと互換性のない前記第1のフォーマットとは異なる第2のフォーマットの第2のウェブコンテンツから、第2のレンダリングされたウェブコンテンツを生成する、第2のレンダリングコンポーネントを呼び出し、
    前記第1のレンダリングコンポーネントからの前記第1のレンダリングされたウェブコンテンツ及び前記第2のレンダリングコンポーネントからの前記第2のレンダリングされたウェブコンテンツを含む前記サーフェスを受け取り、
    前記第1のフォーマットの前記ウェブコンテンツから生成された前記第1のレンダリングされたウェブコンテンツ及び前記第2のフォーマットの前記第2のウェブコンテンツから生成された前記第2のレンダリングされたウェブコンテンツを、第3のフォーマットで前記ユーザーインターフェースへ同時に提供し、前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツ及び前記第2のレンダリングされたウェブコンテンツは前記ユーザーインターフェースと互換性があり、
    前記ユーザーインターフェース内での前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツとのインタラクションの指示を受け取り、
    前記インタラクションに基づいて、前記第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために、前記第1のレンダリングコンポーネントを呼び出し、
    前記第1のレンダリングされたウェブコンテンツの前記更新バージョンを前記第3のフォーマットで前記ユーザーインターフェースに提供する
    ように構成された、少なくとも部分的に処理ユニットを介して実施される、合成コンポーネント
    を備えるシステム。
  2. 前記第1のレンダリングコンポーネントはHTMLレンダラーを含む請求項1に記載のシステム。
  3. 前記HTMLレンダラーはウェブページの隠しインスタンスを含む請求項2に記載のシステム。
  4. 前記合成コンポーネントは、
    前記サーフェス内で、前記ユーザーインターフェースと互換性のない第3のウェブコンテンツから、第3のレンダリングされたウェブコンテンツを生成する、第3のレンダリングコンポーネントを呼び出し、
    前記第3のレンダリングコンポーネントから、前記ユーザーインターフェースと互換性のある前記第3のレンダリングされたウェブコンテンツを含む前記サーフェスを受け取る
    ように構成される請求項1に記載のシステム。
  5. 前記第3のレンダリングコンポーネントは、前記第1のフォーマット、前記第2のフォーマット及び前記第3のフォーマットとは異なる第4のフォーマットに従ってコンテンツをレンダリングするように構成される請求項4に記載のシステム。
  6. 前記合成コンポーネントは、
    前記第3のレンダリングされたウェブコンテンツを前記ユーザーインターフェースに提供する
    ように構成される請求項4に記載のシステム。
  7. 前記合成コンポーネントは、
    前記第1のレンダリングされたウェブコンテンツ、前記第2のレンダリングされたウェブコンテンツ及び前記第3のレンダリングされたウェブコンテンツを合成のレンダリングされたウェブコンテンツへと組み合わせ、
    前記合成のレンダリングされたウェブコンテンツを前記ユーザーインターフェースに提供する
    ように構成される請求項4に記載のシステム。
  8. 前記合成コンポーネントは、前記第1のレンダリングされたウェブコンテンツの前記更新バージョンを含む前記サーフェスを受け取るように構成される請求項1に記載のシステム。
  9. 前記ユーザーインターフェースはウェブベースでないアプリケーションを含む請求項1に記載のシステム。
  10. 前記第1のレンダリングされたウェブコンテンツは、インタラクティブなユーザーインターフェース又はビデオのうちの少なくとも1つに関連する請求項1に記載のシステム。
  11. 前記入力コンポーネントは、マウスの位置、キーボード入力、タッチ検出、前記ユーザーインターフェース内の前記第1のレンダリングされたウェブコンテンツの位置のうちの少なくとも1つを前記第1のレンダリングコンポーネントへ送るように構成される請求項に記載のシステム。
  12. 前記合成コンポーネントは、
    前記ユーザーインターフェース内の第1の位置における表示のために前記第1のレンダリングされたウェブコンテンツの第1の部分を前記ユーザーインターフェースに提供し、
    前記ユーザーインターフェース内の第2の位置における表示のために前記第1のレンダリングされたウェブコンテンツの第2の部分を前記ユーザーインターフェースに提供する
    ように構成される請求項1に記載のシステム。
  13. 前記第1のレンダリングコンポーネントは前記サーフェス内の位置において前記第1のレンダリングされたウェブコンテンツをレンダリングするように構成される請求項1に記載のシステム。
  14. ユーザーインターフェース内で前記ユーザーインターフェースと互換性のないウェブコンテンツをレンダリングする方法であって、
    サーフェス内で、ユーザーインターフェースと互換性のない第1のフォーマットのウェブコンテンツから、第1のレンダリングされたウェブコンテンツを生成する、第1のレンダリングコンポーネントを呼び出すステップと、
    前記サーフェス内で、前記ユーザーインターフェースと互換性のない前記第1のフォーマットとは異なる第2のフォーマットの第2のウェブコンテンツから、第2のレンダリングされたウェブコンテンツを生成する、第2のレンダリングコンポーネントを呼び出すステップと、
    前記第1のフォーマットの前記ウェブコンテンツから生成された前記第1のレンダリングされたウェブコンテンツ及び前記第2のフォーマットの前記第2のウェブコンテンツから生成された前記第2のレンダリングされたウェブコンテンツを、前記サーフェス内から前記ユーザーインターフェースへ第3のフォーマットで提供するステップであって、前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツ及び前記第2のレンダリングされたウェブコンテンツは前記ユーザーインターフェースと互換性がある、ステップと
    前記ユーザーインターフェース内での前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツとのインタラクションの指示を受け取るステップと、
    前記インタラクションに基づいて、前記第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために、前記第1のレンダリングコンポーネントを呼び出すステップと、
    前記第1のレンダリングされたウェブコンテンツの前記更新バージョンを前記第3のフォーマットで前記ユーザーインターフェースに提供するステップと
    を含む方法。
  15. 前記サーフェス内で、前記ユーザーインターフェースと互換性のない第3のウェブコンテンツから、第3のレンダリングされたウェブコンテンツを生成する、第3のレンダリングコンポーネントを呼び出すステップであって、前記第3のレンダリングされたウェブコンテンツは前記ユーザーインターフェースと互換性がある、ステップ
    を含む請求項14に記載の方法。
  16. 前記第3のレンダリングコンポーネントは、前記第1のフォーマット、前記第2のフォーマット及び前記第3のフォーマットとは異なる第4のフォーマットに従って、コンテンツをレンダリングするように構成される請求項15に記載の方法。
  17. 前記第1のレンダリングされたウェブコンテンツ、前記第2のレンダリングされたウェブコンテンツ及び前記第3のレンダリングされたウェブコンテンツを合成のレンダリングされたウェブコンテンツへ組み合わせるステップと、
    前記合成のレンダリングされたウェブコンテンツを前記ユーザーインターフェースに提供するステップと
    を含む請求項15に記載の方法。
  18. 前記第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために前記第1のレンダリングコンポーネントを呼び出すステップは、
    マウスの位置、キーボード入力、タッチ検出、前記ユーザーインターフェース内の前記第1のレンダリングされたウェブコンテンツの位置のうちの少なくとも1つを前記第1のレンダリングコンポーネントに提供するステップ
    を含む請求項14に記載の方法。
  19. 前記第1のレンダリングされたウェブコンテンツを提供するステップは、
    前記ユーザーインターフェース内の第1の位置における表示のために前記第1のレンダリングされたウェブコンテンツの第1の部分を前記ユーザーインターフェースに提供するステップと、
    前記ユーザーインターフェース内の第2の位置における表示のために前記第1のレンダリングされたウェブコンテンツの第2の部分を前記ユーザーインターフェースに提供するステップと
    を含む請求項14に記載の方法。
  20. 実行されると、ユーザーインターフェース内で前記ユーザーインターフェースと互換性のないウェブコンテンツをレンダリングする方法を実行する命令を含むコンピューター読み取り可能なメモリーであって、前記方法は、
    サーフェス内で、ユーザーインターフェースと互換性のない第1のフォーマットのウェブコンテンツから、第1のレンダリングされたウェブコンテンツを生成する、第1のレンダリングコンポーネントを呼び出すステップと、
    前記サーフェス内で、前記ユーザーインターフェースと互換性のない前記第1のフォーマットとは異なる第2のフォーマットの第2のウェブコンテンツから、第2のレンダリングされたウェブコンテンツを生成する、第2のレンダリングコンポーネントを呼び出すステップと、
    前記第1のフォーマットの前記ウェブコンテンツから生成された前記第1のレンダリングされたウェブコンテンツの一部及び前記第2のフォーマットの前記第2のウェブコンテンツから生成された前記第2のレンダリングされたウェブコンテンツの一部を、前記サーフェス内から前記ユーザーインターフェースへ第3のフォーマットで提供するステップであって、前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツ及び前記第2のレンダリングされたウェブコンテンツは前記ユーザーインターフェースと互換性がある、ステップと
    前記ユーザーインターフェース内での前記第3のフォーマットの前記第1のレンダリングされたウェブコンテンツとのインタラクションの指示を受け取るステップと、
    前記インタラクションに基づいて、前記第1のレンダリングされたウェブコンテンツの更新バージョンを生成するために、前記第1のレンダリングコンポーネントを呼び出すステップと、
    前記第1のレンダリングされたウェブコンテンツの前記更新バージョンを前記第3のフォーマットで前記ユーザーインターフェースに提供するステップと
    を含むコンピューター読み取り可能なメモリー。
JP2013514199A 2010-06-10 2011-05-25 ユーザーインターフェース内での互換性のないコンテンツのレンダリング Expired - Fee Related JP5813102B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/797,869 2010-06-10
US12/797,869 US20110307808A1 (en) 2010-06-10 2010-06-10 Rendering incompatible content within a user interface
PCT/US2011/037989 WO2011156137A2 (en) 2010-06-10 2011-05-25 Rendering incompatible content within a user interface

Publications (3)

Publication Number Publication Date
JP2013535052A JP2013535052A (ja) 2013-09-09
JP2013535052A5 JP2013535052A5 (ja) 2014-05-29
JP5813102B2 true JP5813102B2 (ja) 2015-11-17

Family

ID=45097270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013514199A Expired - Fee Related JP5813102B2 (ja) 2010-06-10 2011-05-25 ユーザーインターフェース内での互換性のないコンテンツのレンダリング

Country Status (8)

Country Link
US (1) US20110307808A1 (ja)
EP (1) EP2580654A4 (ja)
JP (1) JP5813102B2 (ja)
KR (1) KR20130120371A (ja)
CN (1) CN102918491B (ja)
AU (1) AU2011264508B2 (ja)
RU (1) RU2600546C2 (ja)
WO (1) WO2011156137A2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8312365B2 (en) * 2010-06-11 2012-11-13 Microsoft Corporation Rendering web content with a brush
CN102830971B (zh) * 2012-08-06 2015-08-26 优视科技有限公司 利用外部应用程序改写浏览器弹出框的方法和装置
US10152552B2 (en) 2013-01-29 2018-12-11 Entit Software Llc Analyzing a structure of a web application to produce actionable tokens
US9910992B2 (en) 2013-02-25 2018-03-06 Entit Software Llc Presentation of user interface elements based on rules
US20140372935A1 (en) * 2013-06-14 2014-12-18 Microsoft Corporation Input Processing based on Input Context
US9621611B2 (en) * 2014-06-30 2017-04-11 Apple Inc. Providing content in a platform-specific format
US9225625B1 (en) * 2015-03-26 2015-12-29 Linkedin Corporation Detecting and alerting performance degradation during features ramp-up
US10613713B2 (en) 2015-10-07 2020-04-07 Google Llc Integration of content in non-browser applications
CN105653278B (zh) * 2015-12-30 2019-01-25 东软集团股份有限公司 多个WebApp的运行系统及方法
CN105975271A (zh) * 2016-05-03 2016-09-28 广东欧珀移动通信有限公司 一种桌面插件合并方法及移动终端
US10949222B2 (en) * 2017-05-30 2021-03-16 Citrix Systems, Inc. System and method for displaying customized user guides in a virtual client application
CN110020329B (zh) * 2017-07-13 2021-07-30 北京京东尚科信息技术有限公司 用于生成网页的方法、装置和系统
CN113467827A (zh) * 2021-07-19 2021-10-01 上海哔哩哔哩科技有限公司 广告页面的版本控制方法及装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278448B1 (en) * 1998-02-17 2001-08-21 Microsoft Corporation Composite Web page built from any web content
US6864904B1 (en) * 1999-12-06 2005-03-08 Girafa.Com Inc. Framework for providing visual context to www hyperlinks
US7051282B2 (en) * 2003-06-13 2006-05-23 Microsoft Corporation Multi-layer graphical user interface
US7458019B2 (en) * 2004-01-20 2008-11-25 International Business Machines Corporation System and method for creating and rendering client-side user interfaces via custom tags
US7581175B1 (en) * 2005-05-10 2009-08-25 Adobe Systems, Incorporated File format conversion of an interactive element in a graphical user interface
US20070204220A1 (en) * 2006-02-27 2007-08-30 Microsoft Corporation Re-layout of network content
CN101055577A (zh) * 2006-04-12 2007-10-17 龙搜(北京)科技有限公司 可扩展标记语言集中器
US20070276865A1 (en) * 2006-05-24 2007-11-29 Bodin William K Administering incompatible content for rendering on a display screen of a portable media player
US8612847B2 (en) * 2006-10-03 2013-12-17 Adobe Systems Incorporated Embedding rendering interface
US7614003B2 (en) * 2006-10-23 2009-11-03 Adobe Systems Incorporated Rendering hypertext markup language content
US8381093B2 (en) * 2006-12-06 2013-02-19 Microsoft Corporation Editing web pages via a web browser
US8117541B2 (en) * 2007-03-06 2012-02-14 Wildtangent, Inc. Rendering of two-dimensional markup messages
US20090094522A1 (en) * 2007-10-04 2009-04-09 Tinbu, Llc Interactive presentation and distribution of web content
KR100996682B1 (ko) * 2007-11-30 2010-11-25 주식회사 모션클라우드 리치 콘텐트 제작 시스템 및 그 방법과 그 방법에 대한컴퓨터 프로그램을 저장한 기록매체
US8863013B2 (en) * 2008-04-01 2014-10-14 International Business Machines Corporation Generating a user defined page having representations of content in other pages
US8284197B2 (en) * 2008-07-11 2012-10-09 Advanced Micro Devices, Inc. Method and apparatus for rendering instance geometry

Also Published As

Publication number Publication date
WO2011156137A2 (en) 2011-12-15
CN102918491B (zh) 2015-07-22
RU2012153168A (ru) 2014-06-20
AU2011264508B2 (en) 2014-04-17
JP2013535052A (ja) 2013-09-09
EP2580654A2 (en) 2013-04-17
CN102918491A (zh) 2013-02-06
EP2580654A4 (en) 2016-08-10
RU2600546C2 (ru) 2016-10-20
US20110307808A1 (en) 2011-12-15
WO2011156137A3 (en) 2012-02-16
KR20130120371A (ko) 2013-11-04
AU2011264508A1 (en) 2012-12-13

Similar Documents

Publication Publication Date Title
JP5813102B2 (ja) ユーザーインターフェース内での互換性のないコンテンツのレンダリング
US9942358B2 (en) Recommending applications
US9832253B2 (en) Content pre-render and pre-fetch techniques
KR102298602B1 (ko) 확장가능한 애플리케이션 표시
US8713210B2 (en) Event handling in an integrated execution environment
JP6151242B2 (ja) イマーシブアプリケーションとしてのデスクトップ
JP6678773B2 (ja) 自動再生コンテンツのクリックトゥプレイコンテンツへのサーバに基づく変換
US9460416B2 (en) Reading mode for interactive slide presentations with accompanying notes
US20120144290A1 (en) Integrated Native HTML Rendering
US20130263029A1 (en) Instantiable Gesture Objects
US10152554B2 (en) Detecting digital content visibility
US8572603B2 (en) Initializing an application on an electronic device
JP6151248B2 (ja) イマーシブシェルとデスクトップシェルの表示
KR20160140932A (ko) 확장 가능한 애플리케이션 표시 및 콘텐트 전송
US20140013256A1 (en) Method and system for dynamic modification of desktop layout and computer storage medium thereof
US20100177122A1 (en) Video-Associated Objects
JP6588577B2 (ja) 命令リストを生成することによるflashコンテンツのhtmlコンテンツへの変換
US9898451B2 (en) Content adaptation based on selected reviewer comment
JP2018520543A (ja) 埋め込み動画を見るための方法およびシステム
US20130139061A1 (en) Desktop sound source discovery
US9766952B2 (en) Reverse launch protocol
CN110704740A (zh) 用于呈现信息的方法和设备
KR102225476B1 (ko) 임베디드 웹 콘텐츠 실행의 애플리케이션 제어
KR20160144445A (ko) 확장가능한 애플리케이션 표시, 마일스톤, 및 스토리라인
Godwin-Jones New developments in web browsing and authoring

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140414

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140414

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150410

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150709

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: 20150817

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150915

R150 Certificate of patent or registration of utility model

Ref document number: 5813102

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees