JP2012518836A - ウェブ上の文書を閲覧するためのフォントの取扱い - Google Patents

ウェブ上の文書を閲覧するためのフォントの取扱い Download PDF

Info

Publication number
JP2012518836A
JP2012518836A JP2011551088A JP2011551088A JP2012518836A JP 2012518836 A JP2012518836 A JP 2012518836A JP 2011551088 A JP2011551088 A JP 2011551088A JP 2011551088 A JP2011551088 A JP 2011551088A JP 2012518836 A JP2012518836 A JP 2012518836A
Authority
JP
Japan
Prior art keywords
document
font
rendered
subset
computer
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
JP2011551088A
Other languages
English (en)
Other versions
JP2012518836A5 (ja
JP5911304B2 (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 JP2012518836A publication Critical patent/JP2012518836A/ja
Publication of JP2012518836A5 publication Critical patent/JP2012518836A5/ja
Application granted granted Critical
Publication of JP5911304B2 publication Critical patent/JP5911304B2/ja
Active 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/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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
    • 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
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

文書に対応するレンダリング済み文書を求める要求が受信される。文書は記憶デバイスから検索される。文書は、レンダリング済み文書に変換される。レンダリング済み文書に関連する1またはそれより多くのサーバフォントファイルが生成される。レンダリング済み文書およびサーバフォントファイルが格納される。

Description

本発明は、ウェブ上の文書を閲覧するためのフォントの取扱いに関する。
ワードプロセシングおよび他のオーサリングソフトウェアアプリケーションには、文書をオーサリング可能な充実したフォントのライブラリを含むことができる。所与の文書には、1またはそれより多くの異なるフォントにおいて書式設定されるテキストを含むことができる。これらのフォントを、グリフ、文字、記号、およびいくつかの方法でテキストを表示するための様々な他の情報を含有するファイルに格納することができる。文書のテキストを正しく表示するために、文書閲覧のアプリケーションは、適切なフォントファイルへのアクセスを必要とすることがある。
ウェブブラウザは、ワールドワイドウェブ(「web」)全体で共有される文書を閲覧するための一般的なツールである。従来のウェブブラウザでは、HTML(HyperText Markup Language)でオーサリングされた文書を表示する。しかし、HTMLでは、従来のオーサリングアプリケーションに比べて、限定された文書の書式設定の能力のみが提供されるため、ネイティブの書式からHTMLに変換された文書では、一般的にレイアウトおよび他の視覚的情報が失われる。従って、ウェブブラウザ上に表示されるHTMLに変換された文書は、オーサリングソフトウェアアプリケーション上に表示される元々の文書とは著しく異なるものに見えることがある。ウェブブラウザはまた、ADOBE(登録商標)社のFRASH(登録商標)および本件出願人の販売するSILVERLIGHT(商標)等の追加の文書形式を表示する能力がある。
ウェブブラウザには典型的には、フォントファイルが含まれない。従って、ウェブブラウザでは、所与の文書を表示する前に1またはそれより多くのフォントファイルを取得することが必要とされる可能性がある。しかし、これらのフォントファイルは、ラテン系の言語のものなどは大きく、及び、東アジア系の言語のものは極めて大きなものになってしまう。大きなフォントをダウンロードすることは、ウェブブラウザが、文書を表示する前に必要なフォントファイルがダウンロードされるまで待たされることになるため、文書のロード時間に悪影響を与えることになりかねない。ダウンロード時間の増加は、文書のオンデマンド閲覧を所望するユーザに対して多大なフラストレーションを与えることになる。
これらの考察およびその他に対して、本明細書においてなされる開示が提示される。
ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための技術が、本明細書において説明される。文書を表示するために、大きなフォントファイルがウェブブラウザまたは他の適切な文書ビューアに転送される従来の手法とは異なり、本明細書に説明される実施形態では、サーバが文書ビューアに転送するフォントデータの量を減少する。フォントデータの量を、ローカルフォントファイル、共通のフォントサブセット、および文書ごとのフォントサブセット、を介して減少できる。
ローカルフォントファイルは、文書ビューアを実行するコンピュータにおいて既に存在するフォントファイルである。文書ビューアが、ローカルフォントファイルのみで文書により表示できる場合、サーバが追加のフォントデータをウェブブラウザに転送する必要はない。共通のフォントサブセットは、最も共通して使用されるフォントおよび文字を含有するフォントファイルである。共通のフォントサブセットは、複数のファイルで利用可能なサイズが縮小されたファイルである。共通のフォントサブセットはまた、文書ビューアのキャッシュに格納させることができる。このようにして、共通のフォントサブセットを利用して、サーバが共通のフォントサブセットを再転送することを必要とせずに、複数の文書を表示することができる。文書ごとのフォントサブセットは、共通のフォントサブセットに含まれないフォントを文書が含有する時に、生成されて文書ビューアに提供される、文書に特有のフォントファイルである。共通のフォントサブセットに含まれないフォントを、文書ごとのフォントサブセットに含むことができる。
一実施形態に従うと、本明細書において、クライアントコンピュータ上で動作する文書ビューアにフォントファイルを提供するための方法が提供される。文書に対応するレンダリング済み文書を求める要求が受信される。文書は記憶デバイスから検索される。文書は、レンダリング済み文書に変換される。レンダリング済み文書に関連する1またはそれより多くのサーバフォントファイルが生成される。レンダリング済み文書およびサーバフォントファイルが格納される。
上述の主題を、コンピュータ制御の装置、コンピュータ処理、コンピュータシステムとして、または、コンピュータ可読記憶媒体等の製造品としても、実装することができることは理解すべきである。これらおよび種々の他の特徴は、以下の発明を実施するための形態を読むことにより、および、関連する図面をレビューすることにより明らかにされるであろう。
この要約は、以下の「発明を実施するための形態」でさらに述べる概念を選択して簡略化した形式で紹介するために提供される。この要約は、特許請求の範囲の主題の重要な特徴または主要な特徴を確認することを意図しておらず、この要約を使用して、請求される主題の範囲を制限することを意図してもいない。さらに、特許請求の範囲の主題は、本開示の任意の部分に示される、任意または全ての不利を解決するための実装に制限されない。
実施形態に従って、ウェブを介して文書をレンダリングおよび表示するよう動作する、例示のシステムアーキテクチャを示すブロック図である。 実施形態に従って、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための例示の処理を示すフロー図である。 実施形態に従って、図1のレンダリングモジュールの例示される動作を示すフロー図である。 実施形態に従って、図1のレンダリングモジュールの例示される動作を示すフロー図である。 実施形態に従って、図1のレンダリングモジュールの例示される動作を示すフロー図である。 実施形態に従って、図1のウェブブラウザの例示の動作を示すフロー図である。 本明細書に提示される実施形態を実装する能力があるコンピュータシステムのための例示のコンピュータハードウェアアーキテクチャを示す、コンピュータアーキテクチャの図である。
以下の発明を実施するための形態は、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための技術に向けられる。本明細書に提示される技術および概念の利用を通じて、従来のウェブ文書閲覧のシナリオの場合のような、フォントファイルおよびパッケージの全体をダウンロードする必要を排除することにより、文書のロード時間を減少させることができる。特に、本明細書に記載される実施形態では、ローカルフォントファイル、共通のフォントサブセット、および文書ごとのフォントサブセットの使用を通じて、文書のロード時間を減少させることができる。
本明細書に記載される実施形態は主に、ウェブブラウザに対して文書のロード時間を向上させることに言及するが、そのように限定されるわけではない。しかし、本明細書に説明される実施形態を、ネットワーク上を転送される文書をロードおよび表示する能力がある任意の適切な文書ビューアに適用することができることは理解すべきである。そのような文書ビューアの別の例には、PDF(Portable Document Format)リーダがある。
本明細書に記載される主題が、コンピュータシステム上におけるオペレーティングシステムおよびアプリケーションプログラムの実行に連動して実行されるプログラムモジュールの一般的なコンテキストで提示される一方、当業者は、他のタイプのプログラムモジュールと組み合わせて他の実装を実行することができることを、認識するであろう。一般に、プログラムモジュールには、ルーチン、プログラム、コンポーネント、データ構造、および、特定のタスクを実行するまたは特定の抽象データ型を実装する他のタイプの構造、が含まれる。さらに、当業者は、本明細書に説明される主題を、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ、などを含む他のコンピュータシステム構成と共に実現することができることは理解するであろう。
以下の発明を実施するための形態において、この一部を形成する添付の図面に対する参照がなされ、図面は例示、特定の実施形態、または例として示される。ここで図面を参照すると、いくつかの図面を通して同様の数字で同様の要素が表わされ、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための概念および技術が説明される。特に、図1は、ウェブを介して文書をレンダリングおよび表示するよう動作するシステムアーキテクチャ100を示すブロック図である。アーキテクチャ100には、フロントエンドサーバ102、バックエンドサーバ104、記憶デバイス106、および、クライアントコンピュータ108を含む。フロントエンドサーバ102は、インターネット等のネットワーク110を介してクライアントコンピュータ108と通信することができる。
実施形態に従うと、フロントエンドサーバ102には、文書マネージャ112を含み、文書マネージャ112はウェブブラウザ114から文書要求を受信するよう動作する。例えば、文書マネージャ112は、文書116Aまたは文書116Aの一部を求める要求を受信することができる。文書116Aは、ワープロ文書、スプレッドシート、プレゼンテーション、または他のタイプの文書とすることができる。文書要求は、HTTP(HyperText Transfer Protocol)メッセージとすることができる。
ウェブブラウザ114から文書要求を受信することにおいて、文書マネージャ112は、レンダリングモジュール118から、要求された文書116Aのレンダリングされた表現を要求することができる。図1に例示するように、文書116Aのレンダリングされた表現は、レンダリング済み文書116Bであり、これは、対応する文書116Aの完全に忠実な表現である。完全に忠実な表現は、元々の表現においてみられる同一の特徴(例えば、レイアウト、解像度、コンテンツ等)を含有する。従って、ユーザは、生産性アプリケーションプログラムを介して閲覧しようと、または、ウェブブラウザ114等のウェブブラウザを介して閲覧しようと、所与の文書について、同一の閲覧経験を期待することができる。完全に忠実な表現は、例えば、レイアウトが変更されている、または、解像度およびコンテンツが減少しているなど、低い忠実性の表現に対して対比させることができる。
文書116Aのレンダリングされた表現を求める要求を受信することにおいて、レンダリングモジュール118は、記憶デバイス106から文書116Aを取り出す。次に、レンダリングモジュール118は、文書116Aを、テキスト、画像、および他のマルチメディアを含むレンダリング済み文書116Bにレンダリングする。そして、レンダリングモジュール118は、レンダリング済み文書116Bを文書マネージャ112に転送し、レンダリング済み文書116Bを記憶デバイス106に格納することができる。このように、文書マネージャ112は、レンダリングモジュール118にアクセスするのではなく、記憶デバイス106からレンダリング済み文書116Bを取り出すことにより、文書116Aのレンダリングされた表現に対して続く要求を行うことができる。
実施形態に従うと、レンダリングモジュール118はまた、必要に応じて、文書ごとのフォントサブセット122等のサーバ生成のフォントファイルを生成することができる。レンダリングモジュール118は、文書ごとのフォントサブセット122を記憶デバイス106に格納することができる。サーバ生成のフォントファイルに加えて、バックエンドサーバ104が、共通のフォントサブセット120等の予め生成されるフォントファイルを含むことができる。実施形態に従うと、共通のフォントサブセット120は、文書ごとのフォントサブセット122のようにランタイムの代わりにビルドタイムに生成しても良い。サーバ生成のフォントファイルおよび予め生成されるフォントファイルは、まとめて、本明細書においてはサーバフォントファイルと呼ぶことができる。図1の例において例示されるように、バックエンドサーバ104はまた、ローカルフォントリスト124を保持することができる。共通のフォントサブセット120、文書ごとのフォントサブセット122、およびローカルフォントリスト124の作成、内容、および適用については、以下において図2から4との関係において下でより詳細に説明する。
レンダリング済み文書116Bおよびサーバ生成のフォントファイルが生成され記憶デバイス106に格納された後、文書マネージャ112は、レンダリング済み文書116Bをウェブブラウザ114に提供することができ、ウェブブラウザ114は、レンダリング済み文書116Bを表示するよう動作する。文書116Aを求める最初の要求が受信されると、文書マネージャ112は、レンダリング済み文書116Bを、レンダリングモジュール118により生成されるのと同様に、ウェブブラウザ114に転送することができる。レンダリング済み文書116Bはまた、記憶デバイス106に格納される。従って、文書116Aのレンダリングされた表現を求めて続く要求が受信されると、文書マネージャ112は、バックエンドサーバ104上のレンダリングモジュール118にアクセスする必要がなく、レンダリング済み文書116Bを記憶デバイス106から検取り出すことができる。
ウェブブラウザ114がレンダリング済み文書116Bにおいて利用されるフォントを表示するために、文書マネージャ112は、ウェブブラウザ114にサーバフォントファイルをさらに提供することができる。加えて、ウェブブラウザ114は、必要に応じて、文書マネージャ112からサーバフォントファイルを要求することができる。いくつかの実施形態において、ウェブブラウザ114は、文書マネージャ112により提供されるサーバフォントファイルを利用して、レンダリング済み文書116Bを表示することができる。他の実施形態において、ウェブブラウザ114は、ローカルフォントファイル126等のローカルフォントファイルを利用して、レンダリング済み文書116Bを表示することができる。ローカルフォントファイル126の作成、内容、および適用については、以下において図2から4との関係においてより詳細に説明する。
ここで図2から4を参照すると、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための本明細書に提示される実施形態に関して、追加の詳細が提供される。特に、図2は、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための例示の処理を示すフロー図である。図3は、レンダリングモジュール118の例示される動作を示すフロー図である。図4は、ウェブブラウザ114の例示の動作を示すフロー図である。
本明細書に記載される論理演算が、(1)コンピュータシステム上で実行するコンピュータ実装の動作またはプログラムモジュールのシーケンスとして、および/または、(2)コンピュータシステム内の相互に接続されるマシンの論理回路または回路モジュールとして実装される、ことは理解すべきである。実装は、コンピュータシステムの性能および他の要件に依存して選択される事項である。従って、本明細書に記載される論理演算は、種々に、状態動作、構造的デバイス、行動、またはモジュールと称される。これらの動作、構造的デバイス、行動およびモジュールを、ソフトウェア、ファームウェア、専用のデジタル論理、および、それらの任意の組み合わせにおいて実装することができる。図面で示されるものおよび本明細書に記載されるものより、多くのまたは少ない動作を実行することができることは理解すべきである。これらの動作も、本明細書に記載されるものとは異なる順番で実行することができる。
ここで図2を参照すると、ルーチン200が動作202にて開始され、文書マネージャ112が、ウェブブラウザ114から、文書116A等の文書を求める要求を受信する。ルーチン200は次に、動作204に進み、文書マネージャ112が、要求された文書116Aに対応するレンダリング済み文書を求める要求を転送する。この場合、レンダリング済み文書116Bは文書116Aに対応する。文書マネージャ112が、レンダリング済み文書116Bを求める要求をレンダリングモジュール118に転送すると、ルーチン200は動作206に進む。
動作206にて、レンダリングモジュール118は、文書マネージャ112から、レンダリング済み文書116Bを求める要求を受信する。ルーチン200は次に、動作208および210に進み、レンダリング済み文書116Bを求める要求を受け取ると、レンダリングモジュール118が、記憶デバイス106から文書116Aを取り出し、文書116Aをレンダリング済み文書116Bにレンダリング(すなわち、コンバート、変換)する。文書116Aをレンダリング済み文書116Bにレンダリングすることにより、レンダリングモジュール118は、テキスト、画像、および文書116A内に含有される他のマルチメディアを、第1の形式から文書116Aの完全に忠実な表現である第2の形式にコンバートすることができる。いくつかの実施形態において、テキスト、画像、および/または他のマルチメディアを、単一の文書の一部であるが、別個のファイルに格納することができる。
例示の例において、第1の形式は、ワードプロセシングアプリケーション、プレゼンテーションアプリケーション、スプレッドシートアプリケーションなどのオーサリングソフトウェアアプリケーションと互換性を有することができる。第2の形式は、ウェブブラウザ114と互換性を有することができる。ウェブブラウザ114と互換性を有する例の形式には、画像形式(例えば、PNG(Portable Network Graphics)、JPEG(Joint Photographic Experts Group)等)、本件出願人のSILVERLIGHT(商標)、ADOBE(登録商標)社のFLASH(登録商標)、などを含む。いくつかの実施形態に従って、レンダリング済み文書116Bに含有されるテキストを、XAML(Extensible Application Markup Language)コードで書式設定することができる。XAMLコードはまた、以下においてより詳細に説明するように、ローカルフォント情報を含むことができる。レンダリングモジュール118が文書116Aをレンダリング済み文書116Bにレンダリングすると、ルーチン200は動作212に進む。
動作212にて、レンダリングモジュール118は、必要に応じて、文書ごとのフォントサブセット122等のサーバ生成のフォントファイルを生成する。文書ごとのフォントサブセット122は、少なくとも、共通のフォントサブセット120には無いフォントおよび文字を含む文書特定のフォントファイルである。共通のフォントサブセット120は、最も一般的に使用されるフォントおよび文字を含有するフォントファイルである。共通のフォントサブセット120は、文書とは独立しており、また、複数の文書に亘って利用され得る。実施形態に従うと、共通のフォントサブセット120は、ビルドタイム時に事前に生成され、一方、文書ごとのフォントサブセット122は、ランタイム時にレンダリング済み文書116B全体を分析することにより、生成される。
共通のフォントサブセット120および文書ごとのフォントサブセット122において、任意のフォントレイアウト情報を削除することができ、それにより、共通のフォントサブセット120および文書ごとのフォントサブセット122のサイズをさらに減少することができる。特に、従来のフォントファイルには、文字の位置、各文字の大きさ、文字間の間隔などを示すレイアウト情報が含まれる。アーキテクチャ100において、レンダリング済み文書116Bに含有されるテキストは、レンダリングの処理の性質により絶対的に位置決めされたテキストである。テキストがレンダリング済み文書116B内で絶対的に位置決めされるため、従来のフォントファイル内のレイアウト情報が不必要となる。レンダリングモジュール118が、必要に応じて、サーバ生成のフォントファイルを生成すると、ルーチン200は動作214に進む。
動作214にて、レンダリングモジュール118は、レンダリング済み文書116Bを文書マネージャ112に転送する。次にルーチン200は、動作216および218に進む。動作216にて、レンダリングモジュール118は、レンダリング済み文書116Bおよび任意のサーバ生成のフォントファイルを記憶デバイス106に格納する。このように、文書マネージャ112は、レンダリングモジュール118にアクセスするのではなく、対応するレンダリング済み文書116Bを記憶デバイス106から検索することにより、文書116Aを求める追加の要求を行うことができる。動作218にて、文書マネージャ112は、少なくともレンダリング済み文書116Bをウェブブラウザ114に転送する。次にウェブブラウザ114は、レンダリング済み文書116Bを表示することができる。
いくつかの実施形態において、文書マネージャ112はまた、共通のフォントサブセット120および文書ごとのフォントサブセット122等の1またはそれより多くのサーバフォントファイルを、レンダリング済み文書116Bと共にウェブブラウザ114に転送する。他の実施形態において、文書マネージャ112は、ウェブブラウザ114からの要求に応じて1またはそれより多くのサーバフォントファイルをウェブブラウザ114に転送することができる。
ここで図3を参照すると、レンダリングモジュール118の動作に関して追加の詳細が実施形態に従って説明されるであろう。特に、ルーチン300は、レンダリングモジュール118が、文書116Aを徐々にレンダリングする(すなわち、個々のページまたはスライドごとにレンダリングする)、レンダリングモジュール118の例示の動作を示す。図3に例示されるように、ルーチン300が動作302にて開始され、レンダリングモジュール118は、文書116A内の次のページまたはスライドをレンダリング済み文書116B内の対応するページまたはスライドにレンダリングする。レンダリング済み文書116B内のこの対応するページまたはスライドは、本明細書においてはレンダリング済みのページまたはスライドと呼ぶことができる。レンダリングモジュール118は、文書116A内の第1のページまたはスライド上のレンダリング処理を開始する。しかし、レンダリングモジュール118はまた、ページおよびスライドを他の適切な順番で横断することができる。レンダリングモジュール118が文書116A内のページまたはスライドをレンダリング済みのページまたはスライドにレンダリングすると、ルーチン300は動作304に進む。
動作304にて、レンダリングモジュール118は、レンダリング済みのページまたはスライドにおいて利用されるフォントがローカルフォントリスト124上に含有されるかどうかを判定する。実施形態に従うと、ローカルフォントリスト124は、クライアントコンピュータ108上にあると予測されるまたはあり得るローカルフォントのリストを含有する。例えば、ローカルフォントリスト124は、少なくもTimes New RomanおよびArialのフォントに加えて、文字AからZ、および数字0から9、を含むことができる。ローカルフォントリスト124は、同一のフォントの異なるバージョンに適合するために文字範囲をさらに含むことができる(例えば、あるオペレーティングシステムにおけるArialフォントは、別のオペレーティングシステムにおけるArialフォントとは異なることがある)。これらのローカルフォントは、クライアントコンピュータ108上にインストールされる、ワードプロセシングアプリケーション、スプレッドシートアプリケーション、プレゼンテーションアプリケーションなどのオーサリングソフトウェアアプリケーション内に含有させることができる。クライアントコンピュータ108上にインストールされるソフトウェアアプリケーションを識別することにより、および、典型的には識別されたソフトウェアアプリケーション内に含まれるフォントにローカルフォントリスト124を投入することにより、ローカルフォントリスト124を判定することができる。ウェブブラウザおよび他のソフトウェアアプリケーションにより文書が要求されるランタイムより前に、ローカルフォントリスト124が予め生成されることを理解すべきである。
レンダリングモジュール118が、レンダリング済みのページまたはスライドにおいて利用されるフォントがローカルフォントリスト124上に含有される、と判定する場合は、ルーチン300は動作305に進み、レンダリングモジュール118が、ローカルフォントリスト124上に含有される情報等のローカルフォント情報を、レンダリング済みのページまたはスライドに挿入する。例えば、ローカルフォント情報を、XAMLコード内に挿入させることができる。ルーチンは次に動作306に進む。レンダリングモジュール118が、レンダリング済みのページまたはスライドにおいて利用されるフォントがローカルフォントリスト124に含有されない、と判定する場合は、ルーチン300はまた、動作306に進む。
動作306にて、レンダリングモジュール118が、レンダリング済みのページまたはスライドにおいて利用されるフォントが共通のフォントサブセット120内に含有されるかどうか、を判定する。上記で説明したように、共通のフォントサブセット120は、最も一般的に使用されるフォントおよび文字を含有するフォントファイルである。これらの一般的に使用されるフォントおよび文字は、どのフォントおよび文字が複数の文書に亘って最も高い頻度で現れるかを判定するために、既存の文書を分析することにより判定され得る。例えば、共通のフォントサブセット120は、少なくともTimes New RomanおよびArialのフォントに加えて、文字AからZ、および数字0から9、を含むことができる。共通のフォントサブセット120は、同一のフォントの異なるバージョンに適合するために文字範囲をさらに含むことができる。一般的に使用されるフォントおよび文字を判定するための他の適切な技術を、同様に利用することができる。
レンダリングモジュール118が、レンダリング済みのページまたはスライドにおいて利用されるフォントが共通のフォントサブセット120に含有されない(すなわち、そこから失われている)、と判定する場合、ルーチン300は動作307に進み、レンダリングモジュール118が文書ごとのフォント情報を収集し、文書ごとのフォント情報は後でレンダリングモジュール118により利用されて文書ごとのフォントサブセット122が生成される。例えば、レンダリングモジュール118は、レンダリング済み文書116B全体(すなわち、レンダリング済み文書116Bの全てのページまたはスライド)を分析して、ウェブブラウザ114がレンダリング済み文書116Bを表示するのにどのフォントが必要であるかを判定することができる。これらのフォントは、文書ごとのフォント情報内に含むことができる。レンダリングモジュール118が文書ごとのフォント情報を収集すると、ルーチン300は動作312に進む。さらに、レンダリングモジュール118が、レンダリング済みのページまたはスライドにおいて利用されるフォントが共通のフォントサブセット120に含有される、と判定する場合、ルーチン300はまた、動作312に進む。
動作312にて、レンダリングモジュール118はレンダリング済みのページまたはスライドを生成し、レンダリング済みのページまたはスライドは後で文書マネージャ112に転送することができる。次に文書マネージャ112は、レンダリング済みのページまたはスライドを表示するためにウェブブラウザ114に提供することが可能である。この時点で、文書マネージャ112はまた、共通のフォントサブセット120を、レンダリング済みのページまたはスライドと共にウェブブラウザ114に提供することもできる。代替えとして、文書マネージャ112は、ウェブブラウザ114から要求を受信したことに応答して、共通のフォントサブセット120をウェブブラウザ114に転送することができる。例えば、ウェブブラウザ114は、共通のフォントサブセット120がウェブブラウザのキャッシュに転送されていない場合に、共通のフォントサブセット120を求める要求を文書マネージャ112転送することができる。
レンダリングモジュール118がレンダリング済みのページまたはスライドを生成すると、ルーチン300は動作314に進み、レンダリングモジュール118が、レンダリング済み文書116Bの対応するページまたはスライドにレンダリングすべき、任意の追加のページまたはスライドが文書116A内にあるかどうかを判定する。レンダリングモジュール118が、レンダリングすべき追加のページまたはスライドが文書116A内にあると判定する場合、ルーチン300は動作302に進み、レンダリングモジュール118は文書116A内の次のページまたはスライドをレンダリングする。そして、ルーチン300は、上記で説明したように継続される。レンダリングモジュール118が、レンダリングすべき追加のページまたはスライドが文書116A内に無いと判定する場合、ルーチン300は動作316に進む。
動作316にて、レンダリングモジュール118は、動作307にて収集された文書ごとのフォント情報に基づき文書ごとのフォントサブセット122を生成する。特に、文書ごとのフォントサブセット122には、少なくともウェブブラウザ114がレンダリング済み文書116Bを表示するのに必要なフォントを含むことができる。従って、文書ごとのフォントサブセット122には、レンダリング済み文書116Bに特有のフォントを含むことができる。文書ごとのフォントサブセット122は、共通のフォントサブセット120およびローカルフォントファイル126に含まれるフォントを含んでも含まなくても良い。文書ごとのフォントサブセット122を、ルーチン300内の種々の他の時点において生成することができることは理解すべきである。レンダリングモジュール118が文書ごとのフォントサブセット122を生成すると、ルーチン300は動作318に進む。
動作318にて、レンダリングモジュール118は、レンダリング済みのページまたはスライドを文書マネージャ112に転送する。文書マネージャ112は次に、レンダリング済み文書116Bを表示するためにウェブブラウザ114に提供することが可能である。この場合、ウェブブラウザ114は、ローカルフォントファイル126等のローカルフォントファイルを利用して、レンダリング済み文書116Bを表示することを試みることができる。例えば、ウェブブラウザ114は、レンダリング済みのページまたはスライドに挿入されたローカルフォント情報により特定されるようなローカルフォントファイルを利用することを試みることができる。ウェブブラウザ114が、ローカルフォントファイルを利用してレンダリング済み文書116Bを表示することができない場合、ルーチン300は動作320に進み、文書マネージャ112は、ウェブブラウザ114から、文書ごとのフォントサブセット122を求める要求を受信することができる。文書ごとのフォントサブセット122を求める要求を受信したことに応答して、ルーチン300は動作322に進み、文書マネージャ112が、レンダリング済み文書116Bを表示するために、文書ごとのフォントサブセット122をウェブブラウザ114に転送する。
実施形態に従うと、ローカルフォントファイル126等のローカルフォントファイルが利用可能でない場合は、文書ごとのフォントサブセット122または共通のフォントサブセット120を、ウェブブラウザ114に転送することができる。例えば、クライアントコンピュータ108は、ローカルフォントファイル126を利用するとレンダリング済み文書116Bを表示することが可能であるかどうか、を判定するよう動作するクライアント側の処理(図示せず)を実行することができる。クライアント側の処理が、ローカルフォントファイル126を利用するとレンダリング済み文書116Bを表示することは可能ではない、と判定する場合、ウェブブラウザ114は、文書ごとのフォントサブセット122または共通のフォントサブセット120を求める追加の要求を文書マネージャ112に転送することができる。文書ごとのフォントサブセット122または共通のフォントサブセット120を求める、又はウェブブラウザ114から要求を受信したことに応答して、文書マネージャ112は、文書ごとのフォントサブセット122または共通のフォントサブセット120をウェブブラウザ114に転送することができる。この場合、ウェブブラウザ114は、文書ごとのフォントサブセット122または共通のフォントサブセット120を利用して、レンダリング済み文書116Bを表示することができる。
ここで図4を参照すると、ウェブブラウザ114の動作に関して、追加の詳細が実施形態に従って説明される。特に、ルーチン400は、少なくともレンダリング済み文書116Bの一部を受信する時のウェブブラウザ114の例示の動作を示す。図4に例示するように、ルーチン400は動作402にて開始され、ウェブブラウザ114が、少なくともレンダリング済み文書116Bの一部を文書マネージャ112から受信する。特に、ウェブブラウザ114は、レンダリング済み文書116B全体、または、特定のページまたはスライドをレンダリング済み文書116Bから受信することができる。レンダリング済み文書116Bがレンダリング済み文書116Bを受信すると、ルーチン400は動作404に進む。
動作404にて、ウェブブラウザ114は、ローカルフォントファイル126等のローカルフォントファイルが、レンダリング済み文書116Bを完全に忠実に表示するために必要なフォントを含有するかどうか、を判定する。ローカルフォントファイル126に加えて共通のフォントサブセット120および文書ごとのフォントサブセット122を検索して利用するようウェブブラウザ114を導く命令は、レンダリング済み文書116B内のXAMLコードに含有される。ローカルフォントファイル126は、クライアントコンピュータ108上にインストールされるオーサリングソフトウェアアプリケーションの一部とすることができる。ローカルフォントファイル126がレンダリング済み文書116Bを完全に忠実に表示するために必要なフォントを含有すると、ウェブブラウザが、判定する場合、ルーチン400は動作412に進み、ウェブブラウザ114がローカルフォントファイル126を利用してレンダリング済み文書116Bを表示する。
ローカルフォントファイル126が、レンダリング済み文書116Bを完全に忠実に表示するために必要なフォントを含有しないと、ウェブブラウザ114が、判定する場合、ルーチン400は動作406に進み、ウェブブラウザ114が、共通のフォントサブセット120および文書ごとのフォントサブセット122等の1またはそれより多くの適切なサーバフォントファイルを求める要求を文書マネージャ112に転送する。文書マネージャ112は次に、適切なサーバフォントファイルを検索し、サーバフォントファイルをウェブブラウザ114に転送することができる。ウェブブラウザ114が、適切なサーバフォントファイルを求める要求を文書マネージャ112に転送すると、ルーチン400は動作408に進む。動作408にて、ウェブブラウザ114は、適切なサーバフォントファイルを文書マネージャ112から受信する。そして、ルーチン400は動作410に進み、ウェブブラウザ114が、サーバフォントファイルを利用してレンダリング済み文書116Bを表示する。
ここで図5を参照すると、コンピュータ500を示す例示のコンピュータアーキテクチャの図が例示される。コンピュータ500には、プロセスユニット502(「CPU」)、システムメモリ504、およびメモリ504をCPU502に連結させるシステムバス506が含まれる。コンピュータ500には、レンダリングモジュール118等の1またはそれより多くのプログラムモジュール514を格納するための大容量記憶デバイス512と、記憶デバイス106等の1またはそれより多くのデータベース516と、がさらに含まれる。他のプログラムモジュール514には、ウェブブラウザ114および文書マネージャ112を含むことができる。大容量記憶デバイス512は、バス506に接続される大容量コントローラ(図示せず)を通してCPU502に接続される。大容量記憶デバイス512およびその関連するコンピュータ可読媒体は、コンピュータ500のための不揮発性記憶装置を提供する。本明細書において包含されるコンピュータ可読媒体についての記載は、ハードディスクまたはCD−ROMドライブ等の大容量記憶デバイスを参照するが、コンピュータ可読媒体をコンピュータ500によるアクセスが可能な任意の利用可能なコンピュータ記憶媒体とすることができることは、当業者により理解されるべきである。
限定ではなく例として、コンピュータ可読媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータ等の情報を格納するための任意の方法または技術で実装される、揮発性および不揮発性、着脱可能および着脱不可能な媒体を含むことができる。例えば、コンピュータ可読媒体には、RAM、ROM、EPROM、EEPROM、フラッシュメモリもしくは他の固体メモリ技術、CD−ROM、DVD(digital versatile disk)、HD−DVD、BLU−RAYもしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、所望の情報を格納するために使用することが可能な、及び、コンピュータ500によりアクセス可能な、任意の他の媒体、が含まれるがこれに限定されない。
種々の実施形態に従って、コンピュータ500は、ネットワーク110等のネットワークを通してリモートコンピュータへの論理接続を使用するネットワーク環境において動作することができる。コンピュータ500は、バス506に対して接続されるネットワークインターフェースユニット510を介してネットワーク110に接続することができる。ネットワークインターフェースユニット510を利用して、他のタイプのネットワークおよびリモートコンピュータシステムに対して接続することもできることは理解すべきである。コンピュータ500にはまた、キーボード、マウス、マイク、およびゲームコントローラを含む多数の入力デバイス(図示せず)からの入力を受信および処理するための入力/出力コントローラ508を含むことができる。同様に、入力/出力コントローラ508は、ディスプレイまたは他のタイプの出力デバイス(図示せず)に出力を提供することができる。
上記に基づき、ウェブ上の文書を閲覧するための向上したフォントの取扱いを提供するための技術が本明細書において提示されることを理解すべきである。本明細書に提示される主題が、コンピュータ構造的特徴、方法論的動作およびコンピュータ可読媒体に特有の言語で記載されたが、添付の特許請求の範囲に定義される発明が、必ずしも本明細書に記載される特有の特徴、動作、または媒体に限定されないことは理解すべきである。むしろ、特有の特徴、動作、および媒体は、特許請求の範囲を実装する例示の形式として開示される。
上記に記載される主題は、例示のみの目的で提供されるのであり、制限するものとして解釈されるべきではない。例示され記載される例示の実施形態および用途に追随することなく、かつ、以下の請求項に記載される、本発明の真の趣旨および範囲から逸脱することなく、種々の修正および変更が、本明細書に記載される主題に対してなされ得る。

Claims (15)

  1. フォントファイルをクライアントコンピュータ(108)において動作する文書ビューア(114)に提供するための、コンピュータに実装される方法であって、
    文書(116A)に対応するレンダリング済み文書(116B)を求める要求を受信し、
    前記文書(116A)を記憶デバイス(106)から検索し、
    前記文書(116A)を前記レンダリング済み文書(116B)に変換し、
    前記レンダリング済み文書(116B)を表示するための1またはそれより多くのサーバフォントファイル(120、122)を生成し、
    前記レンダリング済み文書(116B)および前記サーバフォントファイル(120、122)を格納する
    のための動作を含むことを特徴とする方法。
  2. 前記レンダリング済み文書および前記サーバフォントファイルを前記文書ビューアに転送するためのコンピュータに実装される動作あって、前記文書ビューアは前記サーバフォントファイルを利用して前記レンダリング済み文書を表示する動作をさらに含むことを特徴とする請求項1に記載のコンピュータに実装される方法。
  3. 前記レンダリング済み文書が前記文書の完全に忠実な表現を含むことを特徴とする請求項1に記載のコンピュータに実装される方法。
  4. 文書を前記レンダリング済み文書に変換することは、
    文書のページまたはスライドを前記レンダリング済み文書のページまたはスライドに変換することと、
    前記レンダリング済み文書のページまたはスライドを表示のために前記文書ビューアに提供することと、
    前記レンダリング済み文書のページまたはスライドを表示のために前記文書ビューアに提供することにおいて、文書の次のページまたはスライドを前記レンダリング済み文書の次のページまたはスライドに変換することと
    を含むことを特徴とする請求項1に記載のコンピュータに実装される方法。
  5. 前記レンダリング済み文書を表示するための1またはそれより多くのサーバフォントファイルを生成することは、共通のフォントサブセットを生成することを含み、前記共通のフォントサブセットは複数の文書に亘って最も一般的に使用されるフォントおよび文字を含有するフォントファイルを含むことを特徴とする請求項1に記載のコンピュータに実装される方法。
  6. 前記レンダリング済み文書を表示するための1またはそれより多くのサーバフォントファイルを生成することは、文書ごとのフォントサブセットを生成することを含み、前記文書ごとのフォントサブセットは、共通のフォントサブセットから失われたフォントを含有するフォントファイルを含むことを特徴とする請求項5に記載のコンピュータに実装される方法。
  7. 前記レンダリング済み文書を表示するための1またはそれより多くのサーバフォントファイルを生成することは、
    前記レンダリング済み文書において利用されるフォントがローカルフォントリストに含有されるかどうかを判定することであって、前記ローカルフォントリストはクライアントコンピュータ上に格納されることが予測されるフォントファイルのリストを含有することと、
    前記レンダリング済み文書において利用される前記フォントがローカルフォントリストに含有されると判定されたことに応答して、ローカルフォントリスト上に含有されるローカルフォント情報を前記レンダリング済み文書に挿入することと
    を含むことを特徴とする請求項1に記載のコンピュータに実装される方法。
  8. 前記レンダリング済み文書を表示するための1またはそれより多くのサーバフォントファイルを生成することは、
    前記レンダリング済み文書において利用される前記フォントが共通のフォントサブセットに含有されるかどうかを判定することであって、前記共通のフォントサブセットは複数の文書に亘って最も一般的に使用されるフォントおよび文字を含有するフォントファイルを含むことと、
    前記レンダリング済み文書において利用される前記フォントが前記共通のフォントサブセットに含有されると判定されたことに応答して、前記レンダリング済み文書および前記共通のフォントサブセットを前記文書ビューアに転送することと
    をさらに含むことを特徴とする請求項7に記載のコンピュータに実装される方法。
  9. 前記レンダリング済み文書を表示するための1またはそれより多くのサーバフォントファイルを生成することは、
    前記レンダリング済み文書において利用される前記フォントが前記共通のフォントサブセットに含有されないと判定されたことに応答して、文書ごとのフォントサブセットを生成することであって、前記文書ごとのフォントサブセットは、前記共通のフォントサブセットから失われたフォントを含有するフォントファイルを含むこと
    をさらに含むことを特徴とする請求項8に記載のコンピュータに実装される方法。
  10. 前記サーバフォントファイルからフォントレイアウト情報が削除されることを特徴とする請求項1に記載のコンピュータに実装される方法。
  11. コンピュータ実行可能命令を格納するコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、コンピュータにより実行される時に、請求項1に記載のコンピュータに実装される方法を前記コンピュータに実行させる、ことを特徴とするコンピュータ可読媒体。
  12. コンピュータシステム(500)であって、
    プロセッサ(502)と、
    前記プロセッサ(502)に動作可能に結合されるメモリ(504)と、
    プログラムモジュール(514)と
    を含み、
    前記プログラムモジュール(514)は、(i)前記プロセッサ(502)において前記メモリ(504)から実行され、(ii)前記プロセッサ(502)により実行される時に、
    文書ビューア(114)から、文書(116A)に対応するレンダリング済み文書(116B)を求める要求を受信することと、
    前記文書(116A)を記憶デバイス(106)から検索することと、
    前記文書(116A)を前記レンダリング済み文書(116B)に変換することであって、前記レンダリング済み文書(116B)は前記文書(116A)の完全に忠実な表現を前記文書ビューア(114)を通して提供するよう適合されることと、
    前記レンダリング済み文書(116B)を前記記憶デバイス(106)に格納することと、
    前記レンダリング済み文書(116B)において利用されるフォントがローカルフォントリスト(124)に含有されるかどうかを判定することと、
    前記レンダリング済み文書(116B)において利用される前記フォントが前記ローカルフォントリスト(124)に含有されると判定されたことに応答して、前記ローカルフォントリスト(124)上に含有されるローカルフォント情報を前記レンダリング済み文書(116B)に挿入することと、
    前記ローカルフォントリスト(124)に含有される前記ローカルフォント情報を前記レンダリング済み文書(116B)に挿入することにおいて、前記レンダリング済み文書(116B)を前記文書ビューア(114)に転送することであって、前記文書ビューア(114)は、クライアントコンピュータ(108)上の1またはそれより多くのローカルフォントファイル(126)を利用して、前記レンダリング済み文書(116B)を表示するよう動作することと
    を行うことにより、前記コンピュータシステム(500)に、クライアントコンピュータ(108)上で動作する前記文書ビューア(114)にフォントファイルを提供させる
    ことを特徴とするコンピュータシステム。
  13. 前記プログラムモジュールは、前記プロセッサにより実行される時に、
    前記レンダリング済み文書において利用される前記フォントが共通のフォントサブセットに含有されるかどうかを判定することであって、前記共通のフォントサブセットは複数の文書に亘って最も一般的に使用されるフォントおよび文字を含有するフォントファイルを含むことと、
    前記レンダリング済み文書において利用される前記フォントが前記共通のフォントサブセットに含有されると判定されたことに応答して、前記クライアントコンピュータが共通のフォントサブセットを含有するかどうかを判定することと
    を行うことにより、前記コンピュータシステムに、前記クライアントコンピュータ上で動作する前記文書ビューアに対してフォントファイルをさらに提供させる
    ことを特徴とする請求項12に記載のコンピュータシステム。
  14. 前記プログラムモジュールは、前記プロセッサにより実行される時に、
    前記クライアントコンピュータが前記共通のフォントサブセットを含有すると判定されたことに応答して、前記レンダリング済み文書を前記文書ビューアに転送することであって、前記文書ビューアは、前記クライアントコンピュータ上に格納される共通のフォントサブセットを利用して前記レンダリング済み文書を表示するよう動作することと、
    前記クライアントコンピュータが前記共通のフォントサブセットを含有しないと判定されたことに応答して、前記レンダリング済み文書および前記共通のフォントサブセットを前記文書ビューアに転送することであって、前記文書ビューアは、共通のフォントサブセットを利用して前記レンダリング済み文書を表示するよう動作することと
    を行うことにより、前記コンピュータシステムに、前記クライアントコンピュータ上で動作する前記文書ビューアに対してフォントファイルをさらに提供させる
    ことを特徴とする請求項13に記載のコンピュータシステム。
  15. 前記プログラムモジュールは、前記プロセッサにより実行される時に、
    前記レンダリング済み文書において利用される前記フォントが前記共通のフォントサブセットに含有されないと判定されたことに応答して、文書ごとのフォントサブセットを生成することであって、前記文書ごとのフォントサブセットは、前記ローカルフォントファイルから失われた前記フォントと前記共通のフォントサブセットを含有するフォントファイルを含むスことと、
    前記レンダリング済み文書を前記文書ビューアに転送することと、
    前記文書ビューアから、前記文書ごとのフォントを求める前記要求を受信することと、
    前記文書ごとのフォントを求める要求を受信したことに応答して、前記文書ごとのフォントサブセットを前記文書ビューアに転送することであって、前記文書ビューアは、前記文書ごとのフォントサブセットを利用して前記レンダリング済み文書を表示するよう動作することと
    を行うことにより、さらに前記コンピュータシステムに、前記クライアントコンピュータ上で動作する前記文書ビューアに対してフォントファイルを提供させる
    ことを特徴とする請求項14に記載のコンピュータシステム。
JP2011551088A 2009-02-20 2010-01-22 ウェブ上の文書を閲覧するためのフォントの取扱い Active JP5911304B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/389,389 US8856647B2 (en) 2009-02-20 2009-02-20 Font handling for viewing documents on the web
US12/389,389 2009-02-20
PCT/US2010/021890 WO2010096237A2 (en) 2009-02-20 2010-01-22 Font handling for viewing documents on the web

Publications (3)

Publication Number Publication Date
JP2012518836A true JP2012518836A (ja) 2012-08-16
JP2012518836A5 JP2012518836A5 (ja) 2013-03-07
JP5911304B2 JP5911304B2 (ja) 2016-04-27

Family

ID=42631981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011551088A Active JP5911304B2 (ja) 2009-02-20 2010-01-22 ウェブ上の文書を閲覧するためのフォントの取扱い

Country Status (17)

Country Link
US (1) US8856647B2 (ja)
EP (1) EP2399234B1 (ja)
JP (1) JP5911304B2 (ja)
KR (1) KR101608112B1 (ja)
CN (1) CN102326179B (ja)
AU (1) AU2010216343B2 (ja)
BR (1) BRPI1007169A2 (ja)
CA (1) CA2749296A1 (ja)
CL (1) CL2011002019A1 (ja)
IL (1) IL213813A0 (ja)
IN (1) IN2011CN05355A (ja)
MX (1) MX2011008445A (ja)
RU (1) RU2011134909A (ja)
SG (2) SG172838A1 (ja)
TW (1) TWI477985B (ja)
WO (1) WO2010096237A2 (ja)
ZA (1) ZA201104787B (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8522127B2 (en) 2001-07-16 2013-08-27 Robert G. Adamson, III Allowing operating system access to non-standard fonts in a network document
US10810355B1 (en) 2001-07-16 2020-10-20 Clantech, Inc. Allowing operating system access to non-standard fonts in a network document
US8856647B2 (en) 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web
US8769050B2 (en) * 2009-10-16 2014-07-01 Celartern, Inc. Serving font files in varying formats based on user agent type
US8438648B2 (en) * 2010-02-16 2013-05-07 Celartem, Inc. Preventing unauthorized font linking
US20110258535A1 (en) * 2010-04-20 2011-10-20 Scribd, Inc. Integrated document viewer with automatic sharing of reading-related activities across external social networks
US8615709B2 (en) 2010-04-29 2013-12-24 Monotype Imaging Inc. Initiating font subsets
US9164968B2 (en) * 2011-07-26 2015-10-20 Google Inc. Techniques for server-side determination of font subsets
US20130215126A1 (en) * 2012-02-17 2013-08-22 Monotype Imaging Inc. Managing Font Distribution
KR101456231B1 (ko) * 2012-05-31 2014-10-31 (주)한양정보통신 폰트 표시 장치 및 방법, 그리고 폰트 표시 장치를 포함하는 웹 폰트 시스템
US9817615B2 (en) 2012-12-03 2017-11-14 Monotype Imaging Inc. Network based font management for imaging devices
WO2014100582A2 (en) 2012-12-21 2014-06-26 Monotype Imaging Inc. Supporting color fonts
CN103077238B (zh) * 2013-01-09 2017-04-05 百度在线网络技术(北京)有限公司 电子文档的提供方法、系统、母书服务器及子书客户端
EP2943894A2 (en) 2013-01-09 2015-11-18 Monotype Imaging Inc. Advanced text editor
KR101400213B1 (ko) * 2013-01-21 2014-05-28 (주)한양정보통신 서브셋 폰트를 제공하는 웹 폰트 서버 및 이를 포함하는 웹 폰트 시스템
US9619439B1 (en) * 2013-02-26 2017-04-11 Google Inc. Incremental web font loading
EP2784771A1 (en) * 2013-03-25 2014-10-01 Samsung Electronics Co., Ltd. Display apparatus and method of outputting text thereof
JP6157210B2 (ja) * 2013-05-15 2017-07-05 キヤノン株式会社 文書変換装置、文書変換方法、及びプログラム
CN103425631A (zh) * 2013-07-19 2013-12-04 百度在线网络技术(北京)有限公司 用于获取文档文件中目标文字的字体文件的方法及装置
US9317777B2 (en) 2013-10-04 2016-04-19 Monotype Imaging Inc. Analyzing font similarity for presentation
JP5974024B2 (ja) * 2014-01-18 2016-08-23 株式会社モリサワ フォント配信システム、及びフォント配信方法
US10055386B2 (en) * 2014-04-18 2018-08-21 Emc Corporation Using server side font preparation to achieve WYSIWYG and cross platform fidelity on web based word processor
US9691169B2 (en) 2014-05-29 2017-06-27 Monotype Imaging Inc. Compact font hinting
TW201608384A (zh) 2014-08-29 2016-03-01 萬國商業機器公司 遠端提供電子文件字型的電腦實施方法
US20160182606A1 (en) * 2014-12-17 2016-06-23 Monotype Imaging Inc. Network Based Static Font Subset Management
US10115215B2 (en) 2015-04-17 2018-10-30 Monotype Imaging Inc. Pairing fonts for presentation
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
CN106547804B (zh) * 2015-09-23 2019-10-25 北京国双科技有限公司 silverlight地图的中文名称显示方法及装置
US10095529B2 (en) 2016-06-07 2018-10-09 Microsoft Technology Licensing, Llc Font download on application boot
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
US11657602B2 (en) 2017-10-30 2023-05-23 Monotype Imaging Inc. Font identification from imagery
US11113450B2 (en) 2018-10-26 2021-09-07 International Business Machines Corporation Cognitive font enrichment management for adding system fonts
KR102218355B1 (ko) * 2019-01-11 2021-02-22 주식회사 윤디자인그룹 입력되는 글자에 따른 폰트 관리 수행 방법
KR102218356B1 (ko) * 2019-01-11 2021-02-22 주식회사 윤디자인그룹 입력되는 글자에 따른 폰트 관리 수행 방법
JP7490472B2 (ja) * 2020-07-06 2024-05-27 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH096566A (ja) * 1995-06-20 1997-01-10 Nippon Joho Kagaku Kk フォント使用方法、およびフォントデータ付きドキュメントの作成方法、並びにフォントデータ付きドキュメント
JP2002207723A (ja) * 2001-01-10 2002-07-26 Dainippon Printing Co Ltd 拡張文字の処理方法
JP2004501442A (ja) * 2000-05-23 2004-01-15 オープンティーヴィー コーポレイション ダイナミックフォントサブセッティングのための方法及びシステム
JP2004252005A (ja) * 2003-02-18 2004-09-09 Morisawa:Kk データ提供装置、データ提供方法及びコンピュータプログラム
JP2005217816A (ja) * 2004-01-30 2005-08-11 Hitachi Ltd 映像再生装置および記録媒体
US20050193336A1 (en) * 2004-02-27 2005-09-01 Vadim Fux Font data processing system and method
US20050251735A1 (en) * 2004-04-30 2005-11-10 Microsoft Corporation Method and apparatus for document processing
JP2005327150A (ja) * 2004-05-17 2005-11-24 Dainippon Printing Co Ltd 情報配信システムおよび情報配信方法
US20070174291A1 (en) * 2006-01-24 2007-07-26 Microsoft Corporation Dynamic optimization of available display space

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5528742A (en) 1993-04-09 1996-06-18 Microsoft Corporation Method and system for processing documents with embedded fonts
US5533174A (en) * 1993-10-26 1996-07-02 Digital Equipment Corporation Network font server
US5781714A (en) 1994-05-27 1998-07-14 Bitstream Inc. Apparatus and methods for creating and using portable fonts
EP0870246B1 (en) * 1995-09-25 2007-06-06 Adobe Systems Incorporated Optimum access to electronic documents
US6320587B1 (en) * 1996-08-26 2001-11-20 Fujitsu Limited Font processing apparatus in network environment and method thereof
US6857102B1 (en) 1998-04-07 2005-02-15 Fuji Xerox Co., Ltd. Document re-authoring systems and methods for providing device-independent access to the world wide web
JP2001117844A (ja) 1999-10-20 2001-04-27 Nec Corp 無線通信システム及びそれに用いる無線クライアントの表示言語切替方法
CA2323569A1 (en) 2000-10-18 2002-04-18 Advanced Numerical Methods Ltd. Elastic presentation space
US6889202B2 (en) 2001-03-23 2005-05-03 Hewlett-Packard Development Company, L.P. Internet print device font distribution method and web site
WO2002088908A2 (en) 2001-05-02 2002-11-07 Bitstream Inc. Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing
US7219309B2 (en) 2001-05-02 2007-05-15 Bitstream Inc. Innovations for the display of web pages
US7228501B2 (en) 2002-11-01 2007-06-05 Microsoft Corporation Method for selecting a font
US7379733B2 (en) * 2003-06-25 2008-05-27 Oracle International Corporation Mobile meeting and collaboration
US7609398B2 (en) * 2003-09-30 2009-10-27 Toshiba Corporation System and method for rendering fonts for tabbed paper stock on a network
US7549118B2 (en) 2004-04-30 2009-06-16 Microsoft Corporation Methods and systems for defining documents with selectable and/or sequenceable parts
JP2005332088A (ja) * 2004-05-18 2005-12-02 Canon Inc 文書生成装置およびファイル変換システム
US7710422B2 (en) 2004-07-26 2010-05-04 Microsoft Corporation Font representations
US7478325B2 (en) * 2005-04-22 2009-01-13 Microsoft Corporation Methods for providing an accurate visual rendition of a text element formatted with an unavailable font
JP2007011733A (ja) 2005-06-30 2007-01-18 Dynacomware Taiwan Inc アジアウェブフォント文書の作成方法、装置及びシステム
US8040533B2 (en) 2006-01-06 2011-10-18 Microsoft Corporation Techniques for granular font subsetting for efficient document consumption
US8201088B2 (en) 2006-07-25 2012-06-12 Monotype Imaging Inc. Method and apparatus for associating with an electronic document a font subset containing select character forms which are different depending on location
US7995576B2 (en) * 2006-07-31 2011-08-09 Cisco Technology, Inc. Method and system for reducing latency in a multi-channel multicast streaming environment in content-delivery networks
JP5140997B2 (ja) * 2006-11-15 2013-02-13 富士通株式会社 プログラム、文字入力編集方法及び装置
US8856647B2 (en) 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH096566A (ja) * 1995-06-20 1997-01-10 Nippon Joho Kagaku Kk フォント使用方法、およびフォントデータ付きドキュメントの作成方法、並びにフォントデータ付きドキュメント
JP2004501442A (ja) * 2000-05-23 2004-01-15 オープンティーヴィー コーポレイション ダイナミックフォントサブセッティングのための方法及びシステム
JP2002207723A (ja) * 2001-01-10 2002-07-26 Dainippon Printing Co Ltd 拡張文字の処理方法
JP2004252005A (ja) * 2003-02-18 2004-09-09 Morisawa:Kk データ提供装置、データ提供方法及びコンピュータプログラム
JP2005217816A (ja) * 2004-01-30 2005-08-11 Hitachi Ltd 映像再生装置および記録媒体
US20050193336A1 (en) * 2004-02-27 2005-09-01 Vadim Fux Font data processing system and method
US20050251735A1 (en) * 2004-04-30 2005-11-10 Microsoft Corporation Method and apparatus for document processing
JP2005327150A (ja) * 2004-05-17 2005-11-24 Dainippon Printing Co Ltd 情報配信システムおよび情報配信方法
US20070174291A1 (en) * 2006-01-24 2007-07-26 Microsoft Corporation Dynamic optimization of available display space

Also Published As

Publication number Publication date
TWI477985B (zh) 2015-03-21
ZA201104787B (en) 2012-09-26
MX2011008445A (es) 2011-09-06
IL213813A0 (en) 2011-07-31
EP2399234B1 (en) 2018-10-24
EP2399234A2 (en) 2011-12-28
AU2010216343A1 (en) 2011-07-21
CN102326179B (zh) 2016-01-27
KR101608112B1 (ko) 2016-03-31
CN102326179A (zh) 2012-01-18
KR20110132332A (ko) 2011-12-07
TW201033824A (en) 2010-09-16
WO2010096237A3 (en) 2010-10-28
RU2011134909A (ru) 2013-03-10
AU2010216343B2 (en) 2014-06-19
BRPI1007169A2 (pt) 2016-02-23
SG172838A1 (en) 2011-08-29
EP2399234A4 (en) 2018-01-10
CL2011002019A1 (es) 2012-01-20
US20100218086A1 (en) 2010-08-26
JP5911304B2 (ja) 2016-04-27
US8856647B2 (en) 2014-10-07
WO2010096237A2 (en) 2010-08-26
CA2749296A1 (en) 2010-08-26
SG10201400110YA (en) 2014-05-29
IN2011CN05355A (ja) 2015-08-21

Similar Documents

Publication Publication Date Title
JP5911304B2 (ja) ウェブ上の文書を閲覧するためのフォントの取扱い
US9317622B1 (en) Methods and systems for fragmenting and recombining content structured language data content to reduce latency of processing and rendering operations
US8347208B2 (en) Content rendering on a computer
US8756489B2 (en) Method and system for dynamic assembly of form fragments
US8134553B2 (en) Rendering three-dimensional objects on a server computer
JP5042693B2 (ja) マークアップ言語ファイルの格納及び送信の最適化
US10198523B2 (en) Utilizing server pre-processing to deploy renditions of electronic documents in a computer network
US20190073342A1 (en) Presentation of electronic information
JP2006114012A (ja) 電子文書への最適アクセス
US20100325539A1 (en) Web based spell check
US20090276696A1 (en) High-fidelity rendering of documents in viewer clients
KR102574306B1 (ko) 동적 조판
US10366051B2 (en) Method and system for file conversion
US9547629B2 (en) Efficient creation of web fonts
US8156428B1 (en) Method and apparatus for merging digital content
CN112818274B (zh) Pdf文件转换为分页html文件的方法及计算机设备
JP2021043519A (ja) 情報処理システム及びプログラム
CN112818273A (zh) Pdf文件转换为html内嵌图片的方法及计算机设备
KR20110133950A (ko) 웹 어플리케이션 실행 장치, 이의 웹 어플리케이션 실행 방법 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130115

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130719

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130903

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140702

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150514

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160329

R150 Certificate of patent or registration of utility model

Ref document number: 5911304

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250