(57)【要約】  本願の実施形態では、HTML5プロトコルベースのウェブページ表示方法が開示され、前記方法は、HTML5プロトコルベースのウェブページのリソースを取得するステップと、DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースを解析するステップと、DOMオブジェクトをレンダリングしてウェブページの表示を実行するステップとを有する。本発明の実施形態ではまた、HTML5プロトコルベースのウェブページ表示装置が開示される。本発明の実施形態は、外部プラグインを使用することなくHTML5プロトコルのサポートを実現し、従って、プラグインのインストールや機能更新等の処理を回避し、HTML5プロトコルベースのウェブページの表示効率を改善する。
2016505911.tif 000002
【特許請求の範囲】
【請求項１】
HTML5プロトコルベースのウェブページ表示方法であって、
HTML5プロトコルベースのウェブページのリソースを取得するステップと、
DOMオブジェクトノードを生成するために、Javascript言語を使用することによって前記ウェブページのリソースを解析するステップと、
前記DOMオブジェクトをレンダリングしてウェブページの表示を実行するステップと
を有する方法。
【請求項２】
DOMオブジェクトノードを生成するために、Javascript言語を使用することによって前記ウェブページのリソースを解析する前記ステップの処理は、
HTMLタグを取得するために、Javascript言語を使用することによって前記ウェブページのリソースに対して字句解析を実行するステップと、
前記HTMLタグに従って前記DOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出すステップと
を有する、請求項１に記載の方法。
【請求項３】
HTMLタグを取得するために、Javascript言語を使用することによって前記ウェブページのリソースに対して字句解析を実行する前記ステップの処理のあと、前記DOMオブジェクトノードを作成するために、前記HTMLタグに対応するおよび前記DOMオブジェクト作成関数を呼び出すためのJavascriptコードが生成されるとともに、前記HTMLタグに従って前記DOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出す前記ステップの処理は、
前記HTMLタグに従って、前記DOMオブジェクトノードを作成するために前記HTMLタグに対応する前記Javascriptコードを呼び出すステップ
を有する、請求項２に記載の方法。
【請求項４】
Javascript言語を使用することによって前記DOMオブジェクトの制御を達成するステップをさらに有し、Javascript言語を使用することによって前記DOMオブジェクトの制御を達成する前記ステップの処理は、
Javascript言語を使用することによって、前記DOMオブジェクトと、前記DOMオブジェクトの基本クラスと、視覚要素インタフェースとを取得するステップ、
前記HTMLタグに従って前記DOMオブジェクトにDOMオブジェクトノードを追加する、および／または前記DOMオブジェクトからDOMオブジェクトノードを削除するステップ、および／または
前記HTMLタグの属性に従って前記DOMオブジェクトノードの属性を設定するステップ
を有する、請求項１乃至３のいずれか１項に記載の方法。
【請求項５】
少なくとも１つのDOMオブジェクトノードのスタイルを制御するステップをさらに有し、少なくとも１つのDOMオブジェクトノードのスタイルを制御する前記ステップの処理は、
前記DOMオブジェクトノードのスタイルリソースをJavascriptコードにコンパイルして、関数にコンパイルすることによって取得された前記Javascriptコードをパッケージ化するステップと、
対応するDOMオブジェクトノードに対してスタイル制御を行うために、前記関数を呼び出すステップと
を有する、請求項１に記載の方法。
【請求項６】
変更されたDOMオブジェクトがある場合、前記変更されたDOMオブジェクトをタイプセットするステップであって、前記変更は、前記DOMオブジェクトノードの追加、削除および／またはスタイル変更を含む、ステップをさらに有し、変更されたDOMオブジェクトをタイプセットする前記ステップの処理は、Javascript言語を使用することによって、
タイプセットコレクションを形成するために、前記変更されたDOMオブジェクトノードと前記変更されたDOMオブジェクトノードのサブノードとを収集するステップと、
前記タイプセットコレクション内の前記DOMオブジェクトノードの属性情報を計算するステップと、
前記変更後の前記DOMオブジェクトノードの前記属性情報を使用することによって、前記変更前の前記DOMオブジェクトノードの前記属性情報を修正するステップと
を有する、請求項５に記載の方法。
【請求項７】
前記DOMオブジェクトをレンダリングする前記ステップの処理は、文字を描くステップを有し、文字を描く前記ステップの処理は、
予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、前記予め設定された画像セット内を検索するステップ（retrieving）と
前記予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像がある場合、描かれるべき文字が前記画像内に含まれているかどうかを判定し、描かれるべき文字が前記画像内に含まれている場合、前記画像内の前記文字の位置情報に基づいて前記文字を描き、または描かれるべき文字が前記画像内に含まれていない場合、前記画像内に描かれるべき前記文字を描くとともに前記画像内の前記文字の位置情報に従って前記文字を描くステップか、または
前記予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像がない場合、前記文字のサイズと一致するサイズを有する画像を作成し、前記画像内に描かれるべき前記文字を描き、前記画像内の前記文字の位置情報に従って前記文字を描くステップ
を有する、請求項１に記載の方法。
【請求項８】
前記DOMオブジェクトをレンダリングする前記ステップの処理は、素材を結合するステップを有し、素材を結合する前記ステップの処理は、
空白のテクスチャを作成するステップと、
描かれるべき前記オブジェクトを前記テクスチャ内に配置して、前記テクスチャ内の描かれるべき前記オブジェクトの位置情報を記録するステップと
描画トリガを受信したときに、前記テクスチャ内の描かれるべき前記オブジェクトの前記位置情報に従って、描かれるべき前記オブジェクトを一度に画面上に描くステップと
を有する、請求項１に記載の方法。
【請求項９】
取得ユニットと、解析ユニットと、レンダリングユニットとを有するHTML5プロトコルベースのウェブページ表示装置であって、
前記取得ユニットは、HTML5プロトコルベースのウェブページのリソースを取得するように構成され、
前記解析ユニットは、DOMオブジェクトノードを生成するために、Javascript言語を使用することによって前記ウェブページのリソースを解析するように構成され、
前記レンダリングユニットは、前記DOMオブジェクトをレンダリングしてウェブページの表示を実行するように構成される、
装置。
【請求項１０】
前記解析ユニットは字句解析サブユニットとDOMオブジェクトノード生成サブユニットとを有し、
前記字句解析サブユニットは、HTMLタグを取得するために、Javascript言語を使用することによって前記ウェブページのリソースに対して字句解析を実行するように構成され、
前記DOMオブジェクトノード生成サブユニットは、前記HTMLタグに従って前記DOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出すように構成される
請求項９に記載の装置。
【請求項１１】
前記解析ユニットは、コード生成サブユニットをさらに有し、前記コード生成サブユニットは、前記HTMLタグを取得するために、Javascript言語を使用することによって前記ウェブページのリソースに対して前記字句解析が実行されたあと、前記DOMオブジェクトノードを作成するために、前記HTMLタグに対応するおよび前記DOMオブジェクト作成関数を呼び出すためのJavascriptコードを生成するように構成されるとともに、前記DOMオブジェクトノード生成サブユニットは、DOMオブジェクトノードを作成するために前記HTMLタグに対応する前記Javascriptコードを呼び出すように構成される、請求項１０に記載の装置。
【請求項１２】
Javascript言語を使用することによって前記DOMオブジェクトの制御を達成するように構成されるDOMオブジェクト制御ユニットをさらに有し、前記DOMオブジェクト制御ユニットは、
Javascript言語を使用することによって、前記DOMオブジェクトと、前記DOMオブジェクトの基本クラスと、視覚要素インタフェースとを取得し、
前記HTMLタグに従って前記DOMオブジェクトにDOMオブジェクトノードを追加し、および／または前記DOMオブジェクトからDOMオブジェクトノードを削除し、および／または
前記HTMLタグの属性に従って前記DOMオブジェクトノードの属性を設定する
ように構成される、請求項９乃至１１のいずれか１項に記載の装置。
【請求項１３】
少なくとも１つのDOMオブジェクトノードのスタイルを制御するように構成されるスタイル制御ユニットをさらに有し、前記スタイル制御ユニットは、
前記DOMオブジェクトノードのスタイルリソースをJavascriptコードにコンパイルして、関数にコンパイルすることによって取得された前記Javascriptコードをパッケージ化し、
対応するDOMオブジェクトノードに対してスタイル制御を行うために、前記関数を呼び出す
ように構成される、請求項９に記載の装置。
【請求項１４】
変更されたDOMオブジェクトがある場合、前記変更されたDOMオブジェクトをタイプセットするように構成されるタイプセットユニットをさらに有し、前記変更は、前記DOMオブジェクトノードの追加、削除および／またはスタイル変更を含み、変更されたDOMオブジェクトをタイプセットする処理は、Javascript言語を使用することによって、
タイプセットコレクションを形成するために、前記変更されたDOMオブジェクトノードと前記変更されたDOMオブジェクトノードのサブノードとを収集することと、
前記タイプセットコレクション内の前記DOMオブジェクトノードの属性情報を計算することと、
前記変更後の前記DOMオブジェクトノードの前記属性情報を使用することによって、前記変更前の前記DOMオブジェクトノードの前記属性情報を修正することと
を有する、請求項１３に記載の装置。
【請求項１５】
前記DOMオブジェクトをレンダリングする処理は、文字を描くことを有し、前記レンダリングユニットは文字描画ユニットを有し、前記文字描画ユニットは、検索サブユニットと、判定サブユニットと、作成サブユニットと、第１描画サブユニットと、第２描画サブユニットとを有し、
前記検索サブユニットは、予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、前記予め設定された画像セット内を検索し、前記予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像がある場合、前記判定サブユニットをトリガし、または、前記予め設定された画像セット内に前記文字のサイズと一致するサイズを有する画像がない場合、前記作成サブユニットをトリガするように構成され、
前記判定サブユニットは、描かれるべき文字が前記画像内に含まれているかどうかを判定し、描かれるべき前記文字が前記画像内に含まれている場合、前記画像内の前記文字の位置情報に従って前記文字を描くように前記第１描画サブユニットをトリガし、または、描かれるべき文字が前記画像内に含まれていない場合、前記画像内に描かれるべき前記文字を描くように前記第２描画サブユニットをトリガするとともに前記画像内の前記文字の位置情報に従って前記文字を描くように前記第１描画サブユニットをトリガするように構成され、
前記作成サブユニットは、前記文字のサイズと一致するサイズを有する画像を作成し、前記画像内に描かれるべき前記文字を描くように前記第２描画サブユニットをトリガし、前記画像内の前記文字の位置情報に従って前記文字を描くように前記第１描画サブユニットをトリガするように構成される
請求項９に記載の装置。
【請求項１６】
前記DOMオブジェクトをレンダリングする処理は、素材を結合することを有し、前記レンダリングユニットは、素材結合ユニットを有し、前記素材結合ユニットは、テクスチャ作成サブユニットと、位置情報記録サブユニットと、第３描画サブユニットとを有し、
前記テクスチャ作成サブユニットは、空白のテクスチャを作成するように構成され、
前記位置情報記録サブユニットは、描かれるべき前記オブジェクトを前記テクスチャ内に配置して、前記テクスチャ内の描かれるべき前記オブジェクトの位置情報を記録するように構成され、
前記第３描画サブユニットは、描画トリガを受信したときに、前記テクスチャ内の描かれるべき前記オブジェクトの前記位置情報に従って、描かれるべき全ての前記オブジェクトを一度に画面上に描くように構成される
請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、2012年11月6日に中国国家知識産権局に出願された、「HTML5-PROTOCOL-BASED WEBPAGE PRESENTATION METHOD AND DEVICE」と題する、中国特許出願第201210438976.8に優先権を主張し、その全体が参照によって本明細書に組み込まれる。
【０００２】
本願は、情報表示の技術分野に関するとともに、特に、HTML5プロトコルベースのウェブページ表示方法および対応する装置に関する。
【背景技術】
【０００３】
HTML5（Hypertext Markup Language 5rd：ハイパーテキスト・マークアップ・ランゲージ標準の第５版、HTMLの標準バージョンとも呼ばれる）は、1999年に開発されたHTML 4.01およびXHTML1.0に取って代わるために提供された、新しいHTMLプロトコル標準である。HTML5プロトコルは以前のバージョンと比較して２つの優れた特徴を有する。１つ目は、Webウェブページの表示性能が向上することである。２つ目は、プラグインベースのリッチ・インターネット・アプリケーション（RIA：rich internet application；Adobe Flash、Microsoft SilverlightおよびOracle Java（登録商標）FX等）に対するブラウザの要件を低減することによってインターネットアプリケーションを効果的に強化する、より多くの標準的なセットを提供するために、ローカルデータベースのようなウェブアプリケーション機能が追加されることである。
【０００４】
しかしながら、HTML5プロトコルでは、プラグインに対する要件における低減によって、既存のブラウザ（IE6.0からIE8.0、Sogou、FirefoxおよびChrome等）は外部プラグインプログラムまたは必要な機能更新なしにHTML5プロトコルベースのウェブページ表示を達成することはできなくなる。
【発明の概要】
【課題を解決するための手段】
【０００５】
上述の技術的問題を解決するために、本願の態様ではHTML5プロトコルベースのウェブページ表示方法および対応する装置が提供され、外部プラグインプログラムまたは機能更新なしにHTML5プロトコルベースのウェブページ表示を達成する。
【０００６】
本願の態様では、HTML5プロトコルベースのウェブページ表示方法が提供され、前記方法は、
HTML5プロトコルベースのウェブページのリソースを取得するステップと、
DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースを解析するステップと、
DOMオブジェクトをレンダリングしてウェブページの表示を実行するステップと
を含む。
【０００７】
好ましくは、DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースを解析するステップの処理は、
HTMLタグを取得するために、Javascript言語を使用することによってウェブページのリソースに対して字句解析を実行するステップと、
HTMLタグに基づいてDOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出すステップと
を含んでもよい。
【０００８】
さらに、好ましくは、HTMLタグを取得するために、Javascript言語を使用することによってウェブページのリソースに対して字句解析を実行するステップの処理のあと、DOMオブジェクトノードを作成するために、HTMLタグに対応するおよびDOMオブジェクト作成関数を呼び出すためのJavascriptコードが生成されるとともに、HTMLタグに従ってDOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出すステップの処理は、
HTMLタグに従って、DOMオブジェクトノードを作成するためにHTMLタグに対応するJavascriptコードを呼び出すステップ
を含んでもよい。
【０００９】
好ましくは、前記方法は、Javascript言語を使用することによってDOMオブジェクトの制御を達成するステップをさらに含んでもよく、Javascript言語を使用することによってDOMオブジェクトの制御を達成するステップの処理は、
Javascript言語を使用することによって、DOMオブジェクトと、DOMオブジェクトの基本クラスと、視覚要素インタフェースとを取得するステップ、
HTMLタグに従ってDOMオブジェクトにDOMオブジェクトノードを追加する、および／またはDOMオブジェクトからDOMオブジェクトノードを削除するステップ、および／または
HTMLタグの属性に従ってDOMオブジェクトノードの属性を設定するステップ
を含んでもよい。
【００１０】
好ましくは、前記方法は、少なくとも１つのDOMオブジェクトノードのスタイルを制御するステップをさらに含んでもよく、少なくとも１つのDOMオブジェクトノードのスタイルを制御するステップの処理は、
DOMオブジェクトノードのスタイルリソースをJavascriptコードにコンパイルして、関数にコンパイルすることによって取得されたJavascriptコードをパッケージ化するステップと、
対応するDOMオブジェクトノードに対してスタイル制御を行うために、関数を呼び出すステップと
を含んでもよい。
【００１１】
さらに、好ましくは、前記方法は、変更されたDOMオブジェクトがある場合、変更されたDOMオブジェクトをタイプセット（typeset）するステップであって、変更は、DOMオブジェクトノードの追加、削除および／またはスタイル変更を含んでもよい、ステップをさらに含んでもよく、変更されたDOMオブジェクトをタイプセットするステップの処理は、Javascript言語を使用することによって、
タイプセットコレクションを形成するために、変更されたDOMオブジェクトノードと変更されたDOMオブジェクトノードのサブノードとを収集するステップと、
タイプセットコレクション内のDOMオブジェクトノードの属性情報を計算するステップと、
変更後のDOMオブジェクトノードの属性情報を使用することによって、変更前のDOMオブジェクトノードの属性情報を修正するステップと
を含んでもよい。
【００１２】
好ましくは、DOMオブジェクトをレンダリングするステップの処理は、文字を描くステップを含んでもよく、文字を描くステップの処理は、
予め設定された画像セット内に文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、予め設定された画像セット内を検索するステップ（retrieving）と
予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がある場合、描かれるべき文字が画像内に含まれているかどうかを判断し、描かれるべき文字が画像内に含まれている場合、画像内の文字の位置情報に基づいて文字を描き、または描かれるべき文字が画像内に含まれていない場合、画像内に描かれるべき文字を描くとともに画像内の文字の位置情報に従って文字を描くステップか、または
予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がない場合、文字のサイズと一致するサイズを有する画像を作成し、画像内に描かれるべき文字を描き、画像内の文字の位置情報に従って文字を描くステップ
を含んでもよい。
【００１３】
好ましくは、DOMオブジェクトをレンダリングするステップの処理は、素材を結合するステップを含んでもよく、素材を結合するステップの処理は、
空白のテクスチャを作成するステップと、
描かれるべきオブジェクトをテクスチャ内に配置して、テクスチャ内の描かれるべきオブジェクトの位置情報を記録するステップと
描画トリガを受信したときに、テクスチャ内の描かれるべきオブジェクトの位置情報に従って、描かれるべきオブジェクトを一度に画面上に描くステップと
を含んでもよい。
【００１４】
本願では、HTML5プロトコルベースのウェブページ表示装置がさらに提供され、前記装置は、取得ユニットと、解析ユニットと、レンダリングユニットとを含み、
取得ユニットは、HTML5プロトコルベースのウェブページのリソースを取得するように構成され、
解析ユニットは、DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースを解析するように構成され、
レンダリングユニットは、DOMオブジェクトをレンダリングしてウェブページの表示を実行するように構成される。
【００１５】
好ましくは、解析ユニットは字句解析サブユニットとDOMオブジェクトノード生成サブユニットとを含んでもよく、
字句解析サブユニットは、HTMLタグを取得するために、Javascript言語を使用することによってウェブページのリソースに対して字句解析を実行するように構成されてもよく、
DOMオブジェクトノード生成サブユニットは、HTMLタグに従ってDOMオブジェクトノードを作成するために、DOMオブジェクト作成関数を呼び出すように構成されてもよい。
【００１６】
さらに、好ましくは、解析ユニットは、コード生成サブユニットをさらに含んでもよく、コード生成サブユニットは、HTMLタグを取得するために、Javascript言語を使用することによってウェブページのリソースに対して字句解析が実行されたあと、DOMオブジェクトノードを作成するために、HTMLタグに対応するおよびDOMオブジェクト作成関数を呼び出すためのJavascriptコードを生成するように構成されるとともに、DOMオブジェクトノード生成サブユニットは、DOMオブジェクトノードを作成するためにHTMLタグに対応するJavascriptコードを呼び出すように構成されてもよい。
【００１７】
好ましくは、前記装置は、Javascript言語を使用することによってDOMオブジェクトの制御を達成するように構成されるDOMオブジェクト制御ユニットをさらに含んでもよく、DOMオブジェクト制御ユニットは、
Javascript言語を使用することによって、DOMオブジェクトと、DOMオブジェクトの基本クラスと、視覚要素インタフェースとを取得し、
HTMLタグに従ってDOMオブジェクトにDOMオブジェクトノードを追加する、および／またはDOMオブジェクトからDOMオブジェクトノードを削除し、および／または
HTMLタグの属性に基づいてDOMオブジェクトノードの属性を設定する
ように構成されてもよい。
【００１８】
好ましくは、前記装置は、少なくとも１つのDOMオブジェクトノードのスタイルを制御するように構成されるスタイル制御ユニットをさらに含んでもよく、スタイル制御ユニットは、
DOMオブジェクトノードのスタイルリソースをJavascriptコードにコンパイルして、関数にコンパイルすることによって取得されたJavascriptコードをパッケージ化し、
対応するDOMオブジェクトノードに対してスタイル制御を行うために、関数を呼び出す
ように構成されてもよい。
【００１９】
好ましくは、前記装置は、変更されたDOMオブジェクトがある場合、変更されたDOMオブジェクトをタイプセットするように構成されるタイプセットユニットをさらに含んでもよく、変更は、DOMオブジェクトノードの追加、削除および／またはスタイル変更を含んでもよく、変更されたDOMオブジェクトをタイプセットする処理は、Javascript言語を使用することによって、
タイプセットコレクションを形成するために、変更されたDOMオブジェクトノードと変更されたDOMオブジェクトノードのサブノードとを収集することと、
タイプセットコレクション内のDOMオブジェクトノードの属性情報を計算することと、
変更後のDOMオブジェクトノードの属性情報を使用することによって、変更前のDOMオブジェクトノードの属性情報を修正することと
を含んでもよい。
【００２０】
好ましくは、DOMオブジェクトをレンダリングする処理は、文字を描くことを含んでもよく、レンダリングユニットは文字描画ユニットを含んでもよく、文字描画ユニットは、検索サブユニットと、判定サブユニットと、作成サブユニットと、第１描画サブユニットと、第２描画サブユニットとを含んでもよく、
検索サブユニットは、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、予め設定された画像セット内を検索し、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がある場合、判定サブユニットをトリガし、または、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がない場合、作成サブユニットをトリガするように構成されてもよく、
判定サブユニットは、描かれるべき文字が画像内に含まれているかどうかを判定し、描かれるべき文字が画像内に含まれている場合、画像内の文字の位置情報に従って文字を描くように第１描画サブユニットをトリガし、または、描かれるべき文字が画像内に含まれていない場合、画像内に描かれるべき文字を描くように第２描画サブユニットをトリガするとともに画像内の文字の位置情報に従って文字を描くように第１描画サブユニットをトリガするように構成されてもよく、
作成サブユニットは、文字のサイズと一致するサイズを有する画像を作成し、画像内に描かれるべき文字を描くように第２描画サブユニットをトリガし、画像内の文字の位置情報に基づいて文字を描くように第１描画サブユニットをトリガするように構成されてもよい。
【００２１】
好ましくは、DOMオブジェクトをレンダリングする処理は、素材を結合することを含んでもよく、レンダリングユニットは、素材結合ユニットを含んでもよく、素材結合ユニットは、テクスチャ作成サブユニットと、位置情報記録サブユニットと、第３描画サブユニットとを含んでもよく、
テクスチャ作成サブユニットは、空白のテクスチャを作成するように構成されてもよく、
位置情報記録サブユニットは、描かれるべきオブジェクトをテクスチャ内に配置して、テクスチャ内の描かれるべきオブジェクトの位置情報を記録するように構成されてもよく、
第３描画サブユニットは、描画トリガを受信したときに、テクスチャ内の描かれるべきオブジェクトの位置情報に従って、描かれるべきオブジェクトを一度に画面上に描くように構成されてもよい。
【００２２】
本願の態様では、HTML5プロトコルベースのウェブページのリソースが取得され、次いで、DOMオブジェクトノードを生成するために、Javascript言語を使用することによって、ウェブページのリソースが解析され、次いで、ウェブページ表示のためにDOMオブジェクトがレンダリングされる。従来技術と比較して、本願の態様ではHTML5プロトコルベースのウェブページのリソースを解析するための言語としてJavascript言語が採用されている。Javascript言語は様々なウェブページのブラウザにおいて広く使用されるため、本願の態様では、HTML5プロトコルのサポートは外部プラグインプログラムなしに達成される。従って、プラグインをインストールすることまたは機能をアップデートすることのような操作を回避し、且つHTML5プロトコルベースのウェブページの表示効率を改善する。さらに、本願の態様において、HTML5プロトコルのサポートはJavascript言語にのみ依存して達成されるため、本願の技術的解決手段は、これらのプラットフォームのウェブページ表示性能を向上または改善するために、且つ全てのプラットフォームの開発モードを提供するために、Javascript言語をサポートする様々なプラットフォームに広く適用されることができる。
【図面の簡単な説明】
【００２３】
本願の実施形態における技術的解決手段または従来技術における技術的解決手段をより明確に説明するために、従来技術または本願の実施形態の説明において使用される図面が以下に簡潔に説明される。明らかに、以下に説明される図面は単に本願のいくつかの実施形態であるとともに、当業者は創造的労力なしに、これらの図面に基づいて他の図面を得ることができる。
【００２４】
【図１】図１は、本願の第１の実施形態に係るHTML5プロトコルベースのウェブページ表示方法のフローチャートである。
【図２】図２は、本願の第２の実施形態に係るHTML5プロトコルベースのウェブページ表示方法のフローチャートである。
【図３】図３は、本願の第３の実施形態に係る文字を描くための方法のフローチャートである。
【図４】図４は、本願の第３の実施形態に係る素材を結合するための方法のフローチャートである。
【図５ａ】図５aは、本願の第３の実施形態に係る素材を結合する処理の概略図である。
【図５ｂ】図５bは、本願の第３の実施形態に係る素材を結合する処理の概略図である。
【図５ｃ】図５cは、本願の第３の実施形態に係る素材を結合する処理の概略図である。
【図５ｄ】図５dは、本願の第３の実施形態に係る素材を結合する処理の概略図である。
【図５ｅ】図５eは、本願の第３の実施形態に係る素材を結合する処理の概略図である。
【図６】図６は、本願の第４の実施形態に係るHTML5プロトコルベースのウェブページ表示装置の構成のブロック図である。
【発明を実施するための形態】
【００２５】
当業者が本願における技術的解決手段をよりよく理解するために、以下では、本願の実施形態における技術的解決手段が本願の実施形態における図面と併せて明確に且つ十分に説明される。明らかに、説明される実施形態は単に、本願の実施形態の一部であり、実施形態の全てではない。創造的労力なく当業者によって得られた本願の実施形態に基づく他の実施形態の全ては、本願の保護範囲に包含される。
【００２６】
第１実施形態
【００２７】
ウェブページ表示処理は、ウェブページのリソースのダウンロード、ウェブページのリソースの解析およびレンダリングのような、一連の連続した処理を含む。異なるプロトコル標準に基づくウェブページのリソースの解析処理は異なる。この違いによって、多くのブラウザは、例えば、HTML5プロトコルベースのウェブリソースをサポートすることはできない。従来技術では、この問題を解決するために、外部プラグインプログラムまたは特殊な更新ソフトウェアパッケージによる更新が更新のために採用される。しかしながら、これらの解決手段は、HTML5においてプラグインの使用を低減する目的と矛盾している。本願では、ブラウザに内蔵されたJavascript言語を使用することによって解析処理が実行され、それによって、上述の問題をよりよく解決する。
【００２８】
本願の実施形態に係るHTML5プロトコルベースのウェブページ表示方法のフローチャートを示す、図１を参照する。HTML5プロトコルベースのウェブページ表示方法は、以下のように、ステップ１０１からステップ１０３を含む。
【００２９】
ステップ１０１では、HTML5プロトコルベースのウェブページのリソースが取得される。
【００３０】
ウェブページのリソースを取得することは、ウェブページ表示のための基礎である。ウェブページのリソースは、一般的に、サーバからダウンロードされたウェブページのリソース（プライマリウェブページリソース（primary webpage resource）と呼ばれる）と、サーバからダウンロードされたリソースに基づいて動的に生成されたウェブページリソース（セカンダリウェブページリソース（secondary webpage resource）と呼ばれる）を含む。サーバからのウェブページのリソースは、ブラウザを介してユーザによってサーバに送信される、ページアドレスを含むアクセス要求に応答して、サーバによってブラウザに提供されるウェブページのリソースである。サーバからダウンロードされたウェブページのリソースは、ブラウザに直ちに提供されてもよい。あるいは、実際には所望のように、ダウンロードされたウェブページのリソースはまずキャッシュされ、ウェブページのリソースを取得する処理がトリガされたときにブラウザに提供されてもよい。それに応じて、本実施形態では、HTML5プロトコルベースのウェブページのリソースは、直ちに取得することの即時要求の方法、またはウェブページのリソースを取得する処理がトリガされるときにウェブページのリソースがキャッシュから抽出される方法のような、多くの方法で取得されてもよい。生成されたウェブページのリソースは、スクリプトプログラムを実行することによって生成されるウェブページのコードのような、ローカルシステムの関数を処理および計算することによって、ロードされたウェブページのリソースにおけるいくつかのプログラムセグメントを実行することによって生成されるとともに、トリガされたいくつかの制御によって生成されたウェブページのリソースである。本願において必要なウェブページのリソースは、サーバからのウェブページのリソースおよび上述のようなローカルに生成されたウェブページのリソースの両方を含み、それらは特に区別されていないことは留意されるべきである。さらに、取得されたHTML5プロトコルベースのウェブページのリソースの具体的なタイプは本実施形態では限定されず、例えば、テキスト、画像、音声、ビデオまたはそれらの任意の組合せであってもよい。
【００３１】
ステップ１０２では、DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースが解析される。
【００３２】
Javascript言語はブラウザによってサポートされているウェブページのスクリプト言語であり、従来、ウェブページ情報のインタラクション（interaction）およびウェブページの論理制御に使用され、ウェブページおよびブラウザに依存する。本実施形態では、Javascript言語は操作言語とされ、DOMオブジェクトノードを生成するためにウェブページのリソースを解析するために採用される。DOM（Document Object Model，ドキュメント・オブジェクト・モデル）オブジェクトは、階層内のページ要素を編成するノードまたは情報セグメントのセットであり、ブラウザ、プラットフォームまたは言語から独立した標準アセンブリである。
【００３３】
ステップ１０３では、DOMオブジェクトは、レンダリングされてウェブページ内に表示される。
【００３４】
DOMオブジェクトは、ウェブページ内の様々なページ要素の関係や位置等の情報を反映する。ページ要素は、DOMオブジェクトのノードとして表現される。位置等のような、DOMオブジェクトノードの情報は、DOMオブジェクトノードの属性である。複数のDOMオブジェクトノードを含む複合的なDOMオブジェクトをレンダリングすることによって、ページの表示が達成される。レンダリング中、ブラウザによってサポートされている任意のレンダー（render）がDOMオブジェクトをレンダリングするために選択されてもよく、且つ選択操作は、システムの初期化中に決定されてもよい。複数のレンダーの場合、例えば、WebGL、Flash11およびHTML5のキャンバスのようなレンダーがシステムによってサポートされている場合、任意のレンダーのランダム選択以外に、複数のレンダーのそれぞれのために優先順位が与えられるとともに、レンダーの優先順位に基づいて選択が行われてもよい。
【００３５】
本実施形態では、HTML5プロトコルベースのウェブページのリソースが取得され、次いで、DOMツリー表示構造を生成するために、Javascript言語を使用することによって、ウェブページのリソースが解析され、次いで、DOMツリー表示構造がレンダリングされて表示される。従来技術と比較して、本実施形態ではHTML5プロトコルベースのウェブページのリソースを解析するための言語としてJavascript言語が採用されている。Javascript言語は様々なウェブページのブラウザにおいて広く使用されるため、本願の実施形態では、プラグインをインストールすることまたは機能をアップデートすることのような操作を回避するために、且つHTML5プロトコルベースのウェブページの表示効率を改善するために、HTML5プロトコルのサポートは外部プラグインプログラムなしに達成される。さらに、本願の実施形態において、HTML5プロトコルのサポートはJavascript言語にのみ依存して達成されるため、本願の技術的解決手段は、これらのプラットフォームのウェブページ表示性能を向上または改善するために、且つ全てのプラットフォームの開発モードを提供するために、Javascript言語をサポートする様々なプラットフォームに広く適用されることができる。
【００３６】
第２実施形態
【００３７】
上述の実施形態では、HTML5プロトコルベースのウェブページのサポートは、解析言語としてJavascript言語を使用することによって達成される。実際には、解析言語としてJavascript言語を使用することによってウェブページのリソースを解析する処理は、多くの方法で実施されることができる。好ましくは、解析処理は、本願における以下の実施形態で説明されるような方法で達成される。本願の第２の実施形態に係るHTML5プロトコルベースのウェブページ表示方法のフローチャートを示す、図２を参照すると、HTML5プロトコルベースのウェブページ表示方法は、以下のようにステップ２０１からステップ２０４を含む。
【００３８】
ステップ２０１では、HTML5プロトコルベースのウェブページのリソースが取得される。
【００３９】
ステップ２０２では、HTMLタグを取得するために、Javascript言語を使用することによってウェブページのリソースに対して字句解析が実行される。
【００４０】
取得されたウェブページのリソースは一般に、HTMLコードファイルの形である。ウェブページを表示するためには、タグに基づいてDOMツリーのノードオブジェクトを作成するために、HTMLコードファイルからHTML5のタグを認識する必要がある。異なるHTMLプロトコルバージョンによってサポートされているタグの数およびタイプは異なる。例えば、HTML5プロトコルによってサポートされているタグは、HTML、HEAD、STYLE、SCRIPT、LINK、BODY、DIV、IMG、A、FONT、CANVAS、BR、SVGおよびwebGLを含む。分析してHTMLタグを取得するために、本実施形態では、Javascript言語を使用することによって、ウェブページのリソースに対して字句解析が実行される。字句解析は、一文字ずつHTMLコードファイルの内容を読み取ること、およびHTMLタグとして“<”に続く文字を識別することを含んでもよい。例えば、コードセグメント“<img width=‘100’src=‘1.gif’>”に対しては、一文字ずつコードセグメントが読み取られた後、HTMLタグとして“<”に続く“img”が識別される。
【００４１】
ステップ２０３では、HTMLタグに従ってDOMオブジェクトノードを作成するために、DOMオブジェクト作成関数が呼び出される。
【００４２】
HTMLタグが識別された後、HTMLタグに従ってDOMオブジェクトノードを作成するために、DOMオブジェクト作成関数が呼び出されてもよい。この処理は、タグが解析された後直ちに実行されてもよく、または、HTMLコードファイルにおける全てのHTMLタグが解析された後に実行されてもよい。例えば、HTMLタグが解析された後、DOMオブジェクトノードが直ちに生成される方法では、HTMLタグに対応するDOMオブジェクトノードを生成するために、解析されたHTMLタグに従って、DOMオブジェクト作成関数、すなわち、laya.document.createElement (tag name)が呼び出される。そしてその後、このステップでは次のタグが解析される。タグが属性値を有する場合、DOMオブジェクトノードの属性を生成するためにDOMオブジェクトのセット関数が呼び出されてもよいことは留意されるべきである。
【００４３】
ステップ２０４では、DOMオブジェクトはレンダリングされてウェブページ内で表示される。
【００４４】
前の実施形態の技術的効果は、本実施形態でもまた達成されることができる。さらに、本実施形態に基づいて、本実施形態における技術的解決手段は、特別な要件を満たすために必要に応じて修正されてもよい。
【００４５】
例えば、実際は、解析をスピードアップするために、本実施形態における解析ステップは、以下のように修正されてもよい。HTMLタグを取得するためにJavascript言語を使用することによってウェブページのリソースに対して字句解析が実行される前に、HTMLコードファイルは、Javascriptコードにコンパイルされる。そのような前処理の後、次回同じコードセグメントを解析するときに構文解析は必要とされず、それによって、解析の効率を向上させる。さらに一例として上述のコードセグメントを取って、コードセグメント“<img width=‘100’ src=‘1.gif’”がコードファイル内に複数回現れると仮定すると、このコードセグメントは、初めて字句解析が実行されるときに以下のようなJavascriptコード（擬似コード）に翻訳される：
function htmlCache_1(…)
{
var obj=document.createElement(“img”):
obj.set(“width”,100);
obj.set(“src”,”1.gif”);
obj.onCreated();
}
【００４６】
コードセグメント“<img width=‘100’ src=‘1.gif’”が２回目に解析されるとき、コードセグメントのタグや属性のような情報を解析する処理は必要とされない。代わりに、htmlCache_1( )のみが呼び出される必要がある。
【００４７】
さらに、例えば、本実施形態に基づいて、以下のような様々な制御管理操作が、Javascript言語を使用することによって、DOMオブジェクトに対して実行されてもよい。タグがDOMオブジェクトに追加されてもよく（例えば、[element].appendChild(element)）、タグがDOMオブジェクトから削除されてもよく（例えば、[element].removeChild(element)）、またはDOMツリーにおけるノードの属性が修正されてもよい（例えば、[element].setAttribute(nodeName,nodeValue)）。そのような管理を実現するための基本原理は、Javascript言語を使用することによって、ドキュメント（ウェブページのドキュメント管理オブジェクト）、ノード（ツリー管理および属性操作へのインタフェースを提供するためのDOMオブジェクトの基本クラス等）およびHTML要素（視覚要素への基本的なインタフェースを提供するため）を取得することである。上述したように、従来は、ドキュメント、ノードおよびHTML要素は一般に、HTML5と互換性がないC++およびJAVA（登録商標）のような他の言語を使用することによって取得され、問題は一般に、これらの言語を使用することによって解決されることは強調されるべきである。本願の実施形態では、Javascript言語を使用することによって実施が実行され、得られる効果は、従来技術における効果と同じまたはさらに良いものであり、それによって、従来技術における技術的偏見を克服し、良好な結果を得る。
【００４８】
新しいDOMタグは、上述の管理操作を実行することによってサポートされてもよい。laya.docHTML[tag namge] ElementのためのJavascriptオブジェクトコードのみが取得されるとともに、指定されたDOMオブジェクトが、e document.createElementを呼び出すことによって生成されることができる場合、divおよびimgタグ関数が取得される。従って、本実施形態に基づくと、新しいタグおよび関数の拡張および更新は、ブラウザを更新することなく、システムおよび開発者によって取得されることができる。例えば、以下のようである：
laya.doc.HTMLDivElement=function(nodeName)
{
…code
}
laya.doc.HTMLImgElement=function(nodeName)
{
…code
}
【００４９】
従来のブラウザは、Cを使用することによって取得されるローカルインタフェースを呼び出すjavascriptインタフェースを介してDOMにアクセスする。Javascriptによってローカルインタフェースを呼び出すことの低効率性のために、ブラウザのDOMの利点は、大規模オンラインゲームを開発することにおいて使用されることはできない。本実施形態では、DOMの全てのコードはjavascriptで書かれ、javascriptインタフェース間の呼び出しのためのオーバヘッドはjavascriptインタフェースとローカルインタフェース間の呼び出しのためのオーバヘッドよりもはるかに少なく、従って、DOMの処理効率は改善され、DOMのコアゲーム（coregame）または大規模プロジェクトの開発が可能になる。
【００５０】
第３実施形態
【００５１】
本願のページのリソースを解析する処理は、上述の実施形態において詳細に説明される。しかしながら、生成されたDOMツリー表示構造をレンダリングするための方法、またはレンダリング処理の前にレンダリング効率および表示効率を改善するために実行される前処理は、本願の実施形態では限定されず、本願の目的の達成に影響を与えない。しかしながら、実際には、レンダリングおよび表示における個別化と効率性を改善するために、本願では、Javascript言語を使用することによって、対応する処理が実行されてもよい。これらの処理は、スタイル制御、タイプセット、テキスト描画等を含み、Javascript言語を使用することによってこれらの処理を実行するための手順は、順次説明される。
【００５２】
スタイル制御に関しては、スタイル制御は、ウェブページの視覚要素の表示スタイルを定義するために使用される。実際には、スタイル制御は、デフォルトで実行されてもよく（追加の処理なし）、または指定されたスタイル制御が所望に応じて実行されてもよい。スタイル制御においては、スタイル定義のソースを決定する必要がある。一般に、スタイル定義のソースは、ブラウザのデフォルト、外部スタイルシート、内部スタイルシートおよびインラインスタイルを含み、それらは集合的にスタイルリソースと呼ばれる。スタイルリソースは、静的にメモリ内に格納されてもよいし、または必要に応じて一時的に生成されてもよい。本実施形態では、DOMオブジェクト内に少なくとも１つのDOMオブジェクトノードのためのデフォルトでないスタイル制御がある場合、DOMツリーノードのスタイルリソースはJavascriptコードにコンパイルされるとともに、Javascriptコードは関数にパッケージ化される。関数は、対応するDOMオブジェクトノードに対してスタイル制御を実行するために呼び出される。以下のコードセグメントが例として挙げられる：
tmpstyle{left:10px;top:20px;color:red}
まず、スタイル制御コードセグメントは、Javascriptコードにコンパイルされる：
laya.document.styleCache[“tmpstyle”]
{
this.setLeft(10);
this.setTop(20);
this.setColor(“red”);
}
【００５３】
次いで、コンパイルによって生成されたJavascriptコードは、関数：laya.document.styleCache[“tmpstyle”]=function()にパッケージ化される。従って、{left:10px;top:20px;color:red}の記述を解析することなく、レンダリングのスタイル制御中にのみlaya.document.styleCache[“tmpstyle”].call(this)が実行されることができる。C++またはJava（登録商標）による従来のスタイル制御と比較して、本実施形態におけるスタイル制御では、制御コードセグメントが、Javascriptコードセグメントにコンパイルされ、ユーザはブラウザを更新する必要がなく、スタイルスパーリング（style sparing）が高速化する。
【００５４】
タイプセットに関しては、スタイル制御はウェブページの表示に含まれ、スタイル制御に基づいてタイプセットが必要とされてもよく、タイプセット処理はまた、属性の追加、削除または修正のように、DOMオブジェクトノードを修正するためにトリガされる。CまたはJAVA（登録商標）コードにおける従来のタイプセット処理とは異なり、本実施形態では、タイプセット処理は以下のようにJavascript言語を使用することによって実行されてもよい：タイプセットコレクションを形成するために、変更されたDOMオブジェクトノードと変更されたDOMオブジェクトノードのサブノードとを収集する；タイプセットコレクション内のDOMオブジェクトノードの新しい属性情報を計算し、属性情報は、ラップ(wrap)、位置および幅を含む；新しい属性情報を使用して、DOMオブジェクトノードの元の属性情報を修正する；新しい属性情報に基づいてDOMオブジェクトノードをタイプセットする。
【００５５】
テキスト描画に関しては、ページ表示のレンダリングにおいて大量のテキストが描かれる場合、テキストは、従来は、低効率でベクトル図に描かれる。本実施形態では、テキスト描画は画像を描くように実施され、従って、テキスト描画のレンダリング効率を改善する。本実施形態におけるテキスト描画を実施するための処理を示す、図３を参照すると、処理は、以下のように、ステップ３０１からステップ３０５を含む。
【００５６】
ステップ３０１では、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、予め設定された画像セット内で検索される。画像がある場合、処理はステップ３０２に進み、あるいはそうでない場合、処理はステップ３０５に進む。
【００５７】
ステップ３０２では、描かれるべき文字が画像内に含まれるかどうか判定される。文字がある場合、処理はステップ３０３に進み、あるいはそうでない場合、処理はステップ３０４に進む。
【００５８】
ステップ３０３では、画像内の文字の位置情報がリターンされるとともに、位置情報に従って文字が描かれる。処理は終了する。
【００５９】
ステップ３０４では、描かれるべき文字が画像内に描かれ、画像内の文字の位置情報に従って、文字が描かれる。処理は終了する。
【００６０】
ステップ３０５では、文字のサイズと一致するサイズを有する画像が作成され、描かれるべき文字が画像内に描かれ、画像内の文字の位置情報に基づいて、文字が描かれる。
【００６１】
素材の結合に関しては、3Dまたは2Dのオンラインゲームの環境のような、ページ表示の実際のレンダリング処理の間は、描かれるべき大量の文字、アイコンまたはアニメーション表現がある。従来、要素は毎回描かれ、画面上の描画は一般に全てで200回を超え得る。レンダリングの効果に影響を与える要因は一般に、グラフィックスカードの描画回数および画面充填率を含み、レンダリングの効率性は、描画回数が200を超える場合に、顕著に低下し得る。この問題を解決するために、素材結合方法が提供される。この方法では、文字、画像またはアニメーション表現のような描かれるべきコンテンツは、前もって作成された空白のテクスチャ上で結合され、次いで、空白のテクスチャを充填し終わった後に一度に描かれて提示され、それによって、グラフィックスカードの図面の数を低減するとともに効率性が向上する。本実施形態における素材結合方法の手順を示す、図４を参照すると、手順は、以下のように、ステップ４０１からステップ４０３を含む。
【００６２】
ステップ４０１では、空白のテクスチャが作成される。
【００６３】
空白のテクスチャは駆動層(DirectX, OpenGL)によって作成されてもよい。空白のテクスチャのサイズは本実施形態では限定されず、画像内の描かれるべき文字およびアイコンの量に基づいて決定されてもよい。
【００６４】
ステップ４０２では、描かれるべきオブジェクトがテクスチャ内に配置され、テクスチャ内の描かれるべきオブジェクトの位置情報が記録される。
【００６５】
本実施形態では、描かれるべきオブジェクトは画面上に直接描かれない。代わりに、描かれるべきオブジェクトは空白のテクスチャ内で結合されるとともに、描かれるべきオブジェクトの各々の位置情報が記録される。ここで、描かれるべきオブジェクトは、文字、画像、アニメーション表現等を含む。
【００６６】
ステップ４０３では、描画トリガが受信されたときに、テクスチャ内の描かれるべきオブジェクトの位置情報に基づいて、描かれるべきオブジェクトが一度に画面上に描かれる。
【００６７】
上述のステップ４０２は、多くの方法で実施されてもよい。例えば、グリッドアルゴリズムが採用されてもよく、グリッドアルゴリズムでは、空白のテクスチャはまず複数のグリッドに分割され（例えば、16×16）、占有されるべきグリッドの数が、幅や高さのような、描かれるべきオブジェクトの情報に基づいて計算され、次いで、占有されるべきグリッドは、グリッドの情報を取得することによって、空白のテクスチャ内の描かれるべきオブジェクトの位置を決定するために、行ごとにトラバース（traverse）される。この方法では、描かれるべき複数のオブジェクトが空白のテクスチャ内で結合されるが、繰り返されるトラバースのあまりに多くの回数が、効率性に深刻に影響を与える。改善された方法では、各グリッドは、底部の連続グリッドの数および右側の連続グリッドの数を記憶し、各トラバースにおいて周辺グリッドの状態はもはや考慮されず、描かれるべきオブジェクトが配置され得る位置が直接決定され、次いで、結合処理が実行され、上部または左側のグリッドの情報が調整される。図５aから図５eを参照すると、図５aは、空白のテクスチャの初期状態を示し、初期状態では、空白のテクスチャは8×8グリッドに分割される；図５ｂは、描かれるべきオブジェクトが充填されているテクスチャを示し、描かれるべきオブジェクトは2×2グリッドを占有する；図５ｃは、描かれるべき第２のオブジェクト（1×1）が充填されるテクスチャを示す；図５ｄは、描かれるべき第３のオブジェクト（7×2）が充填されるテクスチャを示し、描かれるべきオブジェクトは、第１行または第２行には配置されることはできないため、テクスチャの第３行に配置される；図５ｅは、描かれるべき第４のオブジェクト（1×1）が充填されるテクスチャを示す。他の改善された方法では、各行における空白のグリッドの数が記憶され、トラバースの前に描かれるべきオブジェクトの幅がこの行における空白のグリッドの数を超過するかどうかが判断され、超過する場合は次の行に進む、等である。
【００６８】
第４実施形態
【００６９】
上記は、本願における方法の実施形態の説明であり、HTML5プロトコルベースのウェブページ表示装置の実施形態がさらに提供される。HTML5プロトコルベースのウェブページ表示装置の構成図を示す、図６を参照すると、装置は、取得ユニット６０１と、解析ユニット６０２と、レンダリングユニット６０３とを含む。
【００７０】
取得ユニット６０１は、HTML5プロトコルベースのウェブページのリソースを取得するように構成される。
【００７１】
解析ユニット６０２は、DOMオブジェクトノードを生成するために、Javascript言語を使用することによってウェブページのリソースを解析するように構成される。
【００７２】
レンダリングユニット６０３は、DOMオブジェクトをレンダリングしてウェブページを表示するように構成される。
【００７３】
本実施形態における装置の処理プロセスは以下のようになる。まず、取得ユニット６０１は、HTML5プロトコルベースのウェブページのリソースを取得する。次いで、解析ユニット６０２は、DOMオブジェクトノードを生成するために、Javascript言語を使用することによって、ウェブページのリソースを解析する。最後に、レンダリングユニット６０３は、DOMオブジェクトをレンダリングしてウェブページを表示する。
【００７４】
装置の本実施形態では、HTML5プロトコルベースのウェブページのリソースが取得され、次いで、DOMツリー表示構造を生成するために、Javascript言語を使用することによって、ウェブページのリソースが解析され、次いで、DOMツリー表示構造がレンダリングされて表示される。従来技術と比較して、本願における装置の実施形態ではHTML5プロトコルベースのウェブページのリソースを解析するための言語としてJavascript言語が採用されている。Javascript言語は様々なウェブブラウザにおいて広く使用されるため、本願の実施形態では、HTML5プロトコルのサポートは外部プラグインプログラムなしに達成される。従って、プラグインをインストールすることまたは機能をアップデートすることのような処理を回避し、且つHTML5プロトコルベースのウェブページの表示効率を改善する。さらに、本願における装置の実施形態では、HTML5プロトコルのサポートはJavascript言語にのみ依存して達成されるため、本願の技術的解決手段は、これらのプラットフォームのウェブページ表示性能を向上または改善するために、且つ全てのプラットフォームの開発モードを提供するために、Javascript言語をサポートする様々なプラットフォームに広く適用されることができる。
【００７５】
装置の上記実施形態では、解析ユニットは、異なる解析方法に依存する異なる構造を有してもよい。例えば、解析ユニット６０２は、字句解析サブユニット６０２１およびDOMオブジェクトノード生成サブユニット６０２２を含んでもよい。字句解析サブユニット６０２１は、HTMLタグを取得するためにJavascript言語を使用することによって、ウェブページのリソースに対して字句解析を実行するように構成される。DOMオブジェクトノード生成サブユニット６０２２は、HTMLタグに基づいて、DOMオブジェクトノードを作成するためにDOMオブジェクト作成関数を呼び出すように構成される。解析ユニットはさらに、コード生成サブユニットを含んでもよく、コード生成サブユニットは、HTMLタグを取得するためにJavascript言語を使用することによってウェブページのリソースに対して字句解析が実行されたあと、DOMオブジェクトノードを作成するために、HTMLタグに対応するおよびDOMオブジェクト作成関数を呼び出すためのJavascriptコードを生成するように構成されるとともに、DOMオブジェクトノード生成サブユニットは、HTMLタグに従って、DOMオブジェクトノードを作成するためにHTMLタグに対応するJavascriptコードを呼び出すように構成される。
【００７６】
装置の上記実施形態では、レンダリングユニットは、レンダリング処理が実行される方法に依存する異なる構造ユニットを含んでもよく、従って、異なる内部構造を有してもよい。さらに、レンダリングユニットの前に、特定のオブジェクトを達成するために、必要に応じていくつかのユニットが追加されてもよい。
【００７７】
例えば、上述の装置はDOMオブジェクト制御ユニットをさらに含んでもよく、DOMオブジェクト制御ユニットは、Javascript言語を使用することによってDOMオブジェクトの制御を達成するように構成され、DOMオブジェクト制御ユニットは、Javascript言語を使用することによって、DOMオブジェクトと、DOMオブジェクトの基本クラスと、視覚要素インタフェースとを取得し；HTMLタグに従ってDOMオブジェクトにDOMオブジェクトノードを追加し、および／またはDOMオブジェクトからDOMオブジェクトノードを削除し；および／または、HTMLタグの属性に従ってDOMオブジェクトノードの属性を設定するように構成される。
【００７８】
他の実施例として、上述の装置は、少なくとも１つのDOMオブジェクトノードのスタイルを制御するように構成されるスタイル制御ユニット６０４をさらに含んでもよく、スタイル制御ユニットは、DOMオブジェクトノードのスタイルリソースをJavascriptコードにコンパイルして、関数にコンパイルすることによって取得されたJavascriptコードをパッケージ化し；対応するDOMオブジェクトノードに対してスタイル制御を行うために、関数を呼び出すように構成される。スタイル制御処理がレンダリングのタイプセット処理をトリガした場合、もしくはDOMオブジェクトノードの追加、削除または属性変更のような変化が生じた場合、上述の装置の実施形態は、タイプセットユニット６０５をさらに含んでもよく、タイプセットユニット６０５は、変更されたDOMオブジェクトがある場合、変更されたDOMオブジェクトをタイプセットするように構成され、変更は、DOMオブジェクトノードの追加、削除および／またはスタイル変更を含み、変更されたDOMオブジェクトをタイプセットする処理は、Javascript言語を使用することによって、タイプセットコレクションを形成するために、変更されたDOMオブジェクトノードと変更されたDOMオブジェクトノードのサブノードとを収集することと；変更後のDOMオブジェクトノードの属性情報としてタイプセットコレクション内のDOMオブジェクトノードの属性情報を計算することと；変更後のDOMオブジェクトノードの属性情報を使用することによって、変更前のDOMオブジェクトノードの属性情報を修正することとを有する。
【００７９】
他の実施例として、DOMオブジェクトをレンダリングする処理が、文字を描くことを有する場合、レンダリングユニット６０３は文字描画ユニット６０３１を含んでもよく、文字描画ユニット６０３１は、検索サブユニットと、判定サブユニットと、作成サブユニットと、第１描画サブユニットと、第２描画サブユニットとを含む。検索サブユニットは、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像があるかどうかを判断するために、予め設定された画像セット内を検索し、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がある場合、判定サブユニットをトリガし、または、予め設定された画像セット内に文字のサイズと一致するサイズを有する画像がない場合、作成サブユニットをトリガするように構成される。判定サブユニットは、描かれるべき文字が画像内に含まれているかどうかを判定し、描かれるべき文字が画像内に含まれている場合、画像内の文字の位置情報に従って文字を描くように第１描画サブユニットをトリガし、または、描かれるべき文字が画像内に含まれていない場合、画像内に描かれるべき文字を描くように第２描画サブユニットをトリガするとともに画像内の文字の位置情報に基づいて文字を描くように第１描画サブユニットをトリガするように構成される。作成サブユニットは、文字のサイズと一致するサイズを有する画像を作成し、画像内に描かれるべき文字を描くように第２描画サブユニットをトリガし、画像内の文字の位置情報に基づいて文字を描くように第１描画サブユニットをトリガするように構成される。
【００８０】
他の実施例として、DOMオブジェクトをレンダリングする処理が、素材を結合することを含む場合、レンダリングユニット６０３は、素材結合ユニット６０３２を含み、素材結合ユニット６０３２は、テクスチャ作成サブユニットと、位置情報記録サブユニットと、第３描画サブユニットとを含む。テクスチャ作成サブユニットは、空白のテクスチャを作成するように構成される。位置情報記録サブユニットは、描かれるべきオブジェクトをテクスチャ内に配置して、テクスチャ内の描かれるべきオブジェクトの位置情報を記録するように構成される。第３描画サブユニットは、描画トリガを受信したときに、テクスチャ内の描かれるべきオブジェクトの位置情報に従って、描かれるべきオブジェクトを一度に画面上に描くように構成される。
【００８１】
説明の便宜上、上述の装置は、機能に対応する様々なユニットにおいて説明される。実際は、様々なユニットの機能は、１または２以上のソフトウェアおよび／またはハードウェアで実施されてもよい。例えば、ウェブページ表示を達成するための上述の装置は、HTML5をサポートすることができる１つのブラウザを形成するためにブラウザの他の機能と結合されてもよい。
【００８２】
上述の実施形態の説明から当業者によって明確に理解されるように、本願は、必要な汎用ハードウェアプラットフォームと連携してソフトウェアによって実施されてもよい。その理解に基づいて、本願の技術的解決手段または従来技術に貢献する部分は、ソフトウェア製品で実装されてもよい。コンピュータソフトウェア製品は、ROM／RM、磁気ディスクまたは光ディスクのような記憶媒体内に格納されてもよい。コンピュータソフトウェア製品は、コンピュータ装置（パーソナルコンピュータ、サーバ、ネットワークデバイス等であってもよい）に、本願の実施形態における方法または本願の実施形態のいくつかの部分を実施させる命令を含む。
【００８３】
本明細書において、実施形態は漸次説明され、各実施形態は、他の実施形態と異なる側面を強調し、実施形態間のこれらの同様の部分に対して参照が行われることができる。システムの実施形態は方法の実施形態と同様であり簡潔に説明されるため、関連する点に関して、方法の説明に対して参照が行われてもよい。上述されたシステムの実施形態は、単なる例示である。分離した構成要素として説明されたユニットは、物理的に分離されていてもいなくてもよい。ユニットとしての構成要素は、物理的なユニットであってもなくてもよく、すなわち、１つの位置に配置されてもよいし、複数のネットワークユニット上に分散されてもよい。モジュールの一部またはすべては、実施形態の解決手段の目的を達成するために必要に応じて選択されてもよく、そのことは、創造的労力なしに当業者によって理解され実施されることができる。
【００８４】
本願は、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはポータブルデバイス、タブレットデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、トップボックス、プログラム可能な家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータまたは上述のシステムまたはデバイスのいずれかを含む分散コンピューティング環境のような、様々な汎用または専用のコンピューティングシステム環境または構成に適用可能である。
【００８５】
本願は、プログラムモジュールのような、コンピュータによって実行されるコンピュータ実行可能命令の一般的な文脈で説明されてもよい。一般に、プログラムモジュールは、特定のタスクを実行するためのまたは特定の抽象データ型を実現するためのルーチン、プログラム、オブジェクト、アセンブリ、データ構造等を含む。本願はまた、分散コンピューティング環境で実施されてもよい。これらの分散コンピューティング環境では、タスクは、通信ネットワークを介して接続されるリモート処理装置によって実行される。分散コンピューティング環境では、プログラムモジュールは、ストレージ装置を含むローカルまたはリモートコンピュータ記憶媒体内に配置されてもよい。
【００８６】
上述は、単に本願の実施形態である。本願の原理から逸脱することなく当業者によって修正および変形が行われてもよく、修正および変形はまた、本願の保護範囲に包含されるべきであることは留意されるべきである。
【符号の説明】
【００８７】
601  取得ユニット
602  解析ユニット
6021  字句解析サブユニット
6022  DOMオブジェクトノード生成サブユニット
6023  コード生成サブユニット
603  レンダリングユニット
6031  文字描画ユニット
6032  素材結合ユニット
604  スタイル制御ユニット
605  タイプセットユニット
【図１】
2016505911.tif 000003
【図２】
2016505911.tif 000004
【図３】
2016505911.tif 000005
【図４】
2016505911.tif 000006
【図５（ａ）】
2016505911.tif 000007
【図５（ｂ）】
2016505911.tif 000008
【図５（ｃ）】
2016505911.tif 000009
【図５（ｄ）】
2016505911.tif 000010
【図５（ｅ）】
2016505911.tif 000011
【図６】
2016505911.tif 000012
【国際調査報告】
2016505911.tif 000013
2016505911.tif 000014
2016505911.tif 000015
2016505911.tif 000016