特許第6586246号(P6586246)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許6586246デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース
<>
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000002
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000003
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000004
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000005
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000006
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000007
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000008
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000009
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000010
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000011
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000012
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000013
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000014
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000015
  • 特許6586246-デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6586246
(24)【登録日】2019年9月13日
(45)【発行日】2019年10月2日
(54)【発明の名称】デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェース
(51)【国際特許分類】
   G06F 3/0484 20130101AFI20190919BHJP
   G06F 13/00 20060101ALI20190919BHJP
【FI】
   G06F3/0484 150
   G06F13/00 550A
【請求項の数】20
【全頁数】24
(21)【出願番号】特願2018-557390(P2018-557390)
(86)(22)【出願日】2016年11月30日
(65)【公表番号】特表2019-515390(P2019-515390A)
(43)【公表日】2019年6月6日
(86)【国際出願番号】US2016064185
(87)【国際公開番号】WO2017192170
(87)【国際公開日】20171109
【審査請求日】2018年11月20日
(31)【優先権主張番号】15/143,757
(32)【優先日】2016年5月2日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ルーカス・アダム・コバール
【審査官】 星野 裕
(56)【参考文献】
【文献】 米国特許出願公開第2016/0048483(US,A1)
【文献】 米国特許出願公開第2015/0106751(US,A1)
【文献】 特開2014−186531(JP,A)
【文献】 特開2002−007269(JP,A)
【文献】 特開2007−004524(JP,A)
【文献】 特表2003−517685(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/048
G06F 13/00
G06F 3/14
(57)【特許請求の範囲】
【請求項1】
システムであって、
デジタルコンテンツアイテムのビューポート空間の表現を含むユーザインターフェースへのブレークポイントのユーザ入力に基づいて、前記ビューポート空間の高さ、幅、またはアスペクト比に基づく前記ビューポート空間の1つまたは複数のブレークポイントを生成する、ブレークポイントマネージャであって、前記ユーザインターフェースに含まれる前記ビューポート空間の表現が、前記1つまたは複数のブレークポイントの各々に割り当てられる前記高さ、幅、またはアスペクト比を視覚的に示す、ブレークポイントマネージャと、
前記1つまたは複数のブレークポイントに基づいて、2つ以上のフォーマッティングルールを生成する、フォーマッティングルールジェネレータであって、前記2つ以上のフォーマッティングルールは各々、適用されるとき、前記デジタルコンテンツアイテムの異なるバージョンを作成し、前記2つ以上のフォーマッティングルールのうちの異なるものが、異なるサイズのビューポート空間に適用される、フォーマッティングルールジェネレータと
を備え、
前記デジタルコンテンツアイテムが、電子文書内に表示するために、所与のクライアントデバイスに配信され、前記配信が、前記所与のクライアントデバイスに、i)前記デジタルコンテンツアイテムのテキストまたは画像コンテンツと、ii)前記2つ以上のフォーマッティングルールとを与えることを含み、前記2つ以上のフォーマッティングルールが、前記2つ以上のフォーマッティングルールと、前記デジタルコンテンツアイテムが提示されるディスプレイエリアのサイズとに基づいて、前記デジタルコンテンツアイテムの適切なバージョンを動的にレンダリングおよび表示することを、クライアント側アプリケーションに行わせる、システム。
【請求項2】
前記ブレークポイントのうちの少なくとも1つが、前記ビューポート空間の前記幅に基づく、請求項1に記載のシステム。
【請求項3】
前記1つまたは複数のブレークポイントが、前記ビューポート空間の前記高さ、前記幅、および前記アスペクト比に基づくそれぞれのブレークポイントを含む、請求項1に記載のシステム。
【請求項4】
前記ブレークポイントマネージャが、前記1つまたは複数のブレークポイントに基づいて、前記ビューポート空間の2つ以上のインターバルをさらに生成し、前記インターバルの各々が互いに重複とは無関係である、請求項1に記載のシステム。
【請求項5】
前記1つまたは複数のブレークポイントの各々が、それぞれの前記ブレークポイントによって確立された境界を含む、請求項1に記載のシステム。
【請求項6】
前記ブレークポイントマネージャが、前記ビューポート空間において新しいブレークポイントを挿入すること、前記ビューポート空間内で以前から存在するブレークポイントを移動させること、または前記ビューポート空間から以前から存在するブレークポイントを削除することによって、前記1つまたは複数のブレークポイントを生成する、請求項1に記載のシステム。
【請求項7】
前記ブレークポイントマネージャが、前記デジタルコンテンツアイテムの向きに基づいて、前記ビューポート空間のアスペクト比ブレークポイントを追加すること、または、前記ビューポート空間の以前から存在するアスペクト比ブレークポイントを除去することによって、前記1つまたは複数のブレークポイントを生成する、請求項1に記載のシステム。
【請求項8】
コンピュータ実装方法であって、
1つまたは複数のサーバによって、デジタルコンテンツアイテムのビューポート空間を含む、ユーザインターフェースを生成するステップと、
前記1つまたは複数のサーバによって、前記ユーザインターフェースを通して、ブレークポイントのユーザ入力を受信するステップと、
前記1つまたは複数のサーバによって、前記ユーザ入力に基づ前記ビューポート空間の高さ、幅、またはアスペクト比に基づいて前記ビューポート空間の1つまたは複数のブレークポイントを生成するステップであって、前記ユーザインターフェースに含まれる前記ビューポート空間の表現が、前記1つまたは複数のブレークポイントの各々に割り当てられる前記高さ、幅、またはアスペクト比を視覚的に示す、ステップと、
前記1つまたは複数のブレークポイントに基づいて、前記1つまたは複数のサーバによって、2つ以上のフォーマッティングルールを生成するステップであって、前記2つ以上のフォーマッティングルールは各々は、適用されるとき、前記デジタルコンテンツアイテムの異なるバージョンを作成し、前記2つ以上のフォーマッティングルールのうちの異なるものが、異なるサイズのビューポート空間に適用される、ステップと、
前記1つまたは複数のサーバによって、所与のクライアントデバイスに、電子文書内に表示するために前記デジタルコンテンツアイテムを配信するステップであって、前記配信するステップが、前記所与のクライアントデバイスに、i)前記デジタルコンテンツアイテムのテキストまたは画像コンテンツと、ii)前記2つ以上のフォーマッティングルールとを与えるステップを含み、前記2つ以上のフォーマッティングルールが、前記2つ以上のフォーマッティングルールと、前記デジタルコンテンツアイテムが提示されるディスプレイエリアのサイズとに基づいて、前記デジタルコンテンツアイテムの適切なバージョンを動的にレンダリングおよび表示することをクライアント側アプリケーションに行わせる、ステップと
を含む、コンピュータ実装方法。
【請求項9】
前記ブレークポイントのうちの少なくとも1つが、前記ビューポート空間の前記幅に基づく、請求項8に記載のコンピュータ実装方法。
【請求項10】
前記1つまたは複数のブレークポイントが、前記ビューポート空間の前記高さ、前記幅、および前記アスペクト比に基づくそれぞれのブレークポイントを含む、請求項8に記載のコンピュータ実装方法。
【請求項11】
前記1つまたは複数のサーバによって、前記1つまたは複数のブレークポイントに基づいて、前記ビューポート空間の2つ以上のインターバルを生成するステップであって、前記インターバルの各々が互いに重複とは無関係である、ステップをさらに含む、請求項8に記載のコンピュータ実装方法。
【請求項12】
前記1つまたは複数のブレークポイントの各々が、それぞれの前記ブレークポイントによって確立された境界を含む、請求項8に記載のコンピュータ実装方法。
【請求項13】
前記1つまたは複数のブレークポイントを生成するステップが、前記ビューポート空間において新しいブレークポイントを挿入するステップ、前記ビューポート空間内で以前から存在するブレークポイントを移動させるステップ、または前記ビューポート空間から以前から存在するブレークポイントを削除するステップを含む、請求項8に記載のコンピュータ実装方法。
【請求項14】
前記1つまたは複数のブレークポイントを生成するステップが、前記デジタルコンテンツアイテムの向きに基づいて、前記ビューポート空間のアスペクト比ブレークポイントを追加するステップ、または、前記ビューポート空間の以前から存在するアスペクト比ブレークポイントを除去するステップを含む、請求項8に記載のコンピュータ実装方法。
【請求項15】
1つまたは複数のコンピュータによって実行可能な命令を備えるソフトウェアを記憶する、コンピュータ可読記録媒体であって、前記命令が、実行時に、前記1つまたは複数のコンピュータに、
1つまたは複数のサーバによって、デジタルコンテンツアイテムのビューポート空間を含む、ユーザインターフェースを生成するステップと、
前記1つまたは複数のサーバによって、前記ユーザインターフェースを通して、ブレークポイントのユーザ入力を受信するステップと、
前記1つまたは複数のサーバによって、前記ユーザ入力に基づ前記ビューポート空間の高さ、幅、またはアスペクト比に基づいて前記ビューポート空間の1つまたは複数のブレークポイントを生成するステップであって、前記ユーザインターフェースに含まれる前記ビューポート空間の表現が、前記1つまたは複数のブレークポイントの各々に割り当てられる前記高さ、幅、またはアスペクト比を視覚的に示す、ステップと、
前記1つまたは複数のブレークポイントに基づいて、前記1つまたは複数のサーバによって、2つ以上のフォーマッティングルールを生成するステップであって、前記2つ以上のフォーマッティングルールは各々は、適用されるとき、前記デジタルコンテンツアイテムの異なるバージョンを作成し、前記2つ以上のフォーマッティングルールのうちの異なるものが、異なるサイズのビューポート空間に適用される、ステップと、
前記1つまたは複数のサーバによって、所与のクライアントデバイスに、電子文書内に表示するために前記デジタルコンテンツアイテムを配信するステップであって、前記配信するステップが、前記所与のクライアントデバイスに、i)前記デジタルコンテンツアイテムのテキストまたは画像コンテンツと、ii)前記2つ以上のフォーマッティングルールとを与えるステップを含み、前記2つ以上のフォーマッティングルールが、前記2つ以上のフォーマッティングルールと、前記デジタルコンテンツアイテムが提示されるディスプレイエリアのサイズとに基づいて、前記デジタルコンテンツアイテムの適切なバージョンを動的にレンダリングおよび表示することをクライアント側アプリケーションに行わせる、ステップと
を含む動作を行わせる、コンピュータ可読記録媒体。
【請求項16】
前記ブレークポイントのうちの少なくとも1つが、前記ビューポート空間の前記幅に基づく、請求項15に記載のコンピュータ可読記録媒体。
【請求項17】
前記1つまたは複数のブレークポイントが、前記ビューポート空間の前記高さ、前記幅、および前記アスペクト比に基づくそれぞれのブレークポイントを含む、請求項15に記載のコンピュータ可読記録媒体。
【請求項18】
前記動作が、前記1つまたは複数のサーバによって、前記1つまたは複数のブレークポイントに基づいて、前記ビューポート空間の2つ以上のインターバルを生成するステップであって、前記インターバルの各々が互いに重複とは無関係である、ステップをさらに含む、請求項15に記載のコンピュータ可読記録媒体。
【請求項19】
前記1つまたは複数のブレークポイントの各々が、それぞれの前記ブレークポイントによって確立された境界を含む、請求項15に記載のコンピュータ可読記録媒体。
【請求項20】
前記1つまたは複数のブレークポイントを生成するステップが、前記ビューポート空間において新しいブレークポイントを挿入するステップ、前記ビューポート空間内で以前から存在するブレークポイントを移動させるステップ、または前記ビューポート空間から以前から存在するブレークポイントを削除するステップを含む、請求項15に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルコンテンツのフォーマッティングの管理を容易にするユーザインターフェースに関する。
【背景技術】
【0002】
本文書は、複数のアスペクト比にわたるフォーマッティングの管理を容易にするユーザインターフェースを開示する。デジタルコンテンツは、多種多様なクライアントデバイスに配信される。たとえば、大量のデジタルコンテンツが、モバイルフォン、タブレットデバイス、および他のポータブルコンピューティングデバイスなど、ポータブルコンピューティングデバイスに配信される。多くの場合、これらのポータブルデバイスに配信されるデジタルコンテンツは、モバイルフォンネットワーク(たとえば、セルラー通信ネットワーク)を含む、ワイヤレス接続を介して送信される。いくつかの既存の技法は、それぞれのコンテンツが、ユーザデバイス上で必要とされるレンダリングオプションごとに別個に処理されることを必要とする。
【発明の概要】
【課題を解決するための手段】
【0003】
したがって、それぞれのコンテンツアイテムの効率的な動的レンダリングを可能にする方法で、そのようなデジタルコンテンツが各ポータブルコンピューティングデバイスに与えられる必要がある。本明細書で説明する主題の革新的態様は、1つまたは複数のサーバによって、デジタルコンテンツアイテムのビューポート空間を含む、ユーザインターフェースを生成するアクションと、1つまたは複数のサーバによって、およびユーザインターフェースを通して、ユーザ入力を受信するアクションと、1つまたは複数のサーバによって、およびユーザ入力に基づいて、ビューポート空間の高さ、幅、またはアスペクト比に基づいてビューポート空間の1つまたは複数のブレークポイントを生成するアクションと、1つまたは複数のブレークポイントに基づいて、1つまたは複数のサーバによって、2つ以上のフォーマッティングルールを生成するアクションであって、2つ以上のフォーマッティングルールは各々、適用されるとき、デジタルコンテンツアイテムの異なるバージョンを作成し、2つ以上のフォーマッティングルールのうちの異なるものが、異なるサイズのビューポート空間に適用される、アクションと、1つまたは複数のサーバによって、および所与のクライアントデバイスに、電子文書内に表示するためにデジタルコンテンツアイテムを配信するアクションであって、所与のクライアントデバイスに、i)デジタルコンテンツアイテムのテキストまたは画像コンテンツと、ii)2つ以上のフォーマッティングルールとを与えることを含み、2つ以上のフォーマッティングルールが、2つ以上のフォーマッティングルールと、デジタルコンテンツアイテムが提示されるディスプレイエリアのサイズとに基づいて、デジタルコンテンツアイテムの適切なバージョンを動的にレンダリングおよび表示することを、クライアント側アプリケーションに行わせる、アクションとを含む、方法において具現化され得る。
【0004】
これらの態様の他の実施形態は、対応するシステム、装置、および、コンピュータ記憶デバイス上に符号化された、方法のアクションを行うように構成された、コンピュータプログラムを含む。
【0005】
これらおよび他の実施形態は、任意選択により、以下の特徴のうちの1つまたは複数を各々含み得る。たとえば、ブレークポイントのうちの少なくとも1つは、ビューポート空間の幅に基づく。1つまたは複数のブレークポイントは、ビューポート空間の高さ、幅、およびアスペクト比に基づくそれぞれのブレークポイントを含む。1つまたは複数のサーバによって、1つまたは複数のブレークポイントに基づいて、ビューポート空間の2つ以上のインターバルを生成することであって、インターバルの各々が互いに重複とは無関係である。1つまたは複数のブレークポイントの各々は、それぞれのブレークポイントによって確立された境界を含む。1つまたは複数のブレークポイントを生成することは、ビューポート空間において新しいブレークポイントを挿入すること、ビューポート空間内で以前から存在するブレークポイントを移動させること、またはビューポート空間から以前から存在するブレークポイントを削除することを含む。1つまたは複数のブレークポイントを生成することは、デジタルコンテンツアイテムの向きに基づいて、ビューポート空間のアスペクト比ブレークポイントを追加すること、または、ビューポート空間の以前から存在するアスペクト比ブレークポイントを除去することを含む。
【0006】
本明細書で説明する主題の特定の実装形態は、以下の利点のうちの1つまたは複数を実現するように実装され得る。たとえば、編集としてのコンテンツアイテムのより簡単な編集が、一度だけ行われる必要があること、コンテンツアイテムのコンテンツおよびスタイリングの同期が、コンテンツアイテムのすべてのバージョンによって共有されること、ならびにコンテンツアイテムをより簡単に供給することである。
【0007】
本明細書で説明する主題の1つまたは複数の実施形態の詳細が、添付の図面および以下の説明において記載される。主題の他の潜在的な特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0008】
図1】デジタルコンテンツのディスプレイをフォーマットするための例示的なシステムを示す図である。
図2】ブレークポイントに関連するユーザ入力を与えるための例示的なユーザインターフェースを示す図である。
図3】ブレークポイントに関連するユーザ入力を与えるための例示的なユーザインターフェースを示す図である。
図4】ブレークポイントに関連するユーザ入力を与えるための例示的なユーザインターフェースを示す図である。
図5】ブレークポイントに関連するユーザ入力を与えるための例示的なユーザインターフェースを示す図である。
図6】ビューポート空間の例示的な2次元表現を示す図である。
図7】ビューポート空間の例示的な2次元表現を示す図である。
図8】ビューポート空間の例示的な2次元表現を示す図である。
図9】ビューポート空間の例示的な2次元表現を示す図である。
図10】ビューポート空間の例示的な2次元表現を示す図である。
図11】ビューポート空間の例示的な2次元表現を示す図である。
図12】ビューポート空間の例示的な2次元表現を示す図である。
図13】ビューポート空間の例示的な2次元表現を示す図である。
図14】デジタルコンテンツのディスプレイをフォーマットするための例示的なプロセスのフローチャートである。
図15】本明細書で説明する技法を実装するために使用され得る、例示的なコンピューティングシステムおよびクライアントコンピューティングデバイスのフローチャートである。
【発明を実施するための形態】
【0009】
本文書は、デジタルコンテンツのディスプレイのフォーマッティングを容易にする方法、システム、およびコンピュータ可読媒体について説明する。たとえば、本明細書で説明するシステムは、デジタルコンテンツアイテムのビューポート空間の視覚化を含む、ユーザインターフェースを生成する。ユーザは、ユーザインターフェースと対話して、1つまたは複数のブレークポイント(たとえば、デジタルコンテンツアイテムのためのフォーマッティングが変化することになるアスペクト比)の所望の位置決めを含む、ユーザ入力を与える。システムは、ユーザ入力に基づいて、ブレークポイントを生成する。ブレークポイントは、ビューポート空間の各区分、またはインターバルがフォーマッティングルールに関連付けられるように、ビューポート空間の所望の区分を示す。ブレークポイントは、ビューポート空間の高さ、幅、および/またはアスペクト比に基づき得る。システムは、フォーマッティングルールが適用されるとき、各フォーマッティングルールがデジタルコンテンツアイテムの異なるバージョンを作成するように、ブレークポイントに基づいてフォーマッティングルールを生成する。システムは、デジタルコンテンツアイテムを、クライアントデバイスによって電子文書内で表示するために、クライアントデバイスに配信する。配信は、クライアントデバイスに、デジタルコンテンツアイテムのテキストまたは画像コンテンツと、フォーマッティングルールとを与えることを含む。フォーマッティングルールは、フォーマッティングルールと、デジタルコンテンツアイテムが提示されるべきディスプレイエリアのサイズとに基づいて、デジタルコンテンツアイテムをレンダリングおよび表示することを、クライアント側アプリケーションに行わせる。
【0010】
図1は、デジタルコンテンツアイテムのディスプレイをフォーマットするための環境100を示す。環境100は、サーバコンピューティングシステム102と、クライアントコンピューティングデバイス104と、デジタルコンテンツアイテムリポジトリ106とを含む。サーバコンピューティングシステム102は、ブレークポイントマネージャ108と、フォーマッティングルールジェネレータ110とをさらに含む。クライアントコンピューティングデバイス104は、1つまたは複数のネットワークを介して、サーバコンピューティングシステム102と通信している。サーバコンピューティングシステム102は、1つまたは複数のネットワークを介して、デジタルコンテンツアイテムリポジトリ106と通信している。
【0011】
いくつかの実装形態では、サーバコンピューティングシステム102は、デジタルコンテンツアイテム116のビューポート空間114を含む、ユーザインターフェース112を生成する。具体的には、ビューポート空間114は、たとえば、サーバコンピューティングシステム102および/またはクライアントコンピューティングデバイス104によって、デジタルコンテンツアイテム116の表現が表示のためにレンダリングされるエリアである。デジタルコンテンツアイテム116は、テキスト、画像、および/またはビデオを含む、任意のタイプのデジタルコンテンツを含み得る。サーバコンピューティングシステム102は、デジタルコンテンツアイテムリポジトリ106から、ビューポート空間114内の表示のために、デジタルコンテンツアイテム116を取得する。
【0012】
いくつかの実装形態では、サーバコンピューティングシステム102は、ユーザインターフェース112を通して、ユーザ入力を受信する。具体的には、ユーザインターフェース112に関連付けられたユーザは、ユーザ入力を与えるために、ユーザインターフェース112と対話(たとえば、キーボード、マウス、タッチスクリーン、またはその他を介して入力)する。特に、図2は、図1のユーザインターフェース112、および具体的には、デジタルコンテンツアイテム116を含むビューポート空間114のグラフィカル表現を示す。図示の例では、デジタルコンテンツアイテム116は、第1のアイテム118aと第2のアイテム118bと(アイテム118と総称される)を含む。そのために、ユーザは、ユーザ入力を与えるために、ビューポート空間114および/またはデジタルコンテンツアイテム116と対話することができる。いくつかの例では、ユーザ入力は、以下でさらに説明する、ビューポート空間114のブレークポイント、および具体的には、ブレークポイントを挿入すること、以前から存在するブレークポイントを移動させること、またはブレークポイントを削除することに関連付けられる。
【0013】
いくつかの実装形態では、ユーザ入力に基づいて、サーバコンピューティングシステム102、および具体的には、ブレークポイントマネージャ108は、ビューポート空間114の1つまたは複数のブレークポイントを自動的に生成する。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、ブレークポイント120aを生成する。ブレークポイント120aは、2つ以上のインターバル(または区分)へのビューポート空間114の区分に関連付けられる。図2の図示の例では、ユーザは、ブレークポイント120aを生成するために、ユーザ入力を与える。具体的には、ビューポート空間114は、ビューポート空間114の第1の幅における、たとえば、620ピクセルにおける、第1のブレークポイント120aを含む。第1のブレークポイント120aは、ビューポート空間114を、620ピクセル未満の第1のインターバル122aと、620ピクセルよりも大きい第2のインターバル122bとに区分する。すなわち、ブレークポイント120aは、ビューポート空間114の幅に基づく。
【0014】
いくつかの実装形態では、ブレークポイントに基づいて、サーバコンピューティングシステム102、および具体的には、フォーマッティングルールジェネレータ110は、それぞれのフォーマッティングルールが適用されるとき、デジタルコンテンツアイテム116の異なるバージョンを各々作成する、フォーマッティングルールを生成する。すなわち、フォーマッティングルールジェネレータ110は、適切な対応するインターバル122a、122bに関連付けられるブレークポイント120aに基づいて、2つのフォーマッティングルールを生成する。図2の図示の例では、第1のフォーマッティングルールは、第1のインターバル122aに関連付けられ、第2の、異なるフォーマッティングルールは、第2のインターバル122bに関連付けられる。そのために、異なるフォーマッティングルールが、異なるサイズのビューポート空間114に適用される。たとえば、ビューポート空間114の幅がブレークポイント120a未満、たとえば、620ピクセル未満であるとき、第1のフォーマッティングルールがビューポート空間114に適用され、ビューポート空間114の幅がブレークポイント120aよりも大きい、たとえば、620ピクセルよりも大きいとき、第2のフォーマッティングルールがビューポート空間114に適用される。図示の例では、ビューポート空間114は、ブレークポイント120a、たとえば、620ピクセルよりも大きい幅を有するように示されており、第2のフォーマッティングルールがビューポート空間114に適用される。この例では、第2のフォーマッティングルールは、ビューポート空間114内のデジタルコンテンツアイテム116の位置決め、配置、および/またはサイズ、ならびにデジタルコンテンツアイテム116内で与えられたコンテンツのフォーマッティングを含む。具体的には、フォーマッティングの態様の中でも、デジタルコンテンツアイテム116に適用された第2のフォーマッティングルールは、第2のアイテム118bと横並びで位置決めされた第1のアイテム118aを含む。
【0015】
図3は、図1のユーザインターフェース112、および具体的には、ブレークポイント120a、たとえば、620ピクセル未満の幅を有するビューポート空間114を示す。すなわち、ビューポート空間114は、第1のフォーマッティングルールの適用とともに示されており、すなわち、ビューポート空間114の幅がブレークポイント120a未満、たとえば、620ピクセル未満であるときである。図示の例では、第1のフォーマッティングルールは、ビューポート空間114内のデジタルコンテンツアイテム116の位置決め、配置、およびサイズ、ならびにデジタルコンテンツアイテム116内で与えられたコンテンツのフォーマッティングを含む。具体的には、フォーマッティングの態様の中でも、第1のフォーマッティングルールは、第2のアイテム118bの上に位置決めされた第1のアイテム118aを含む。
【0016】
図4は、第2のブレークポイント120bを含む、ビューポート空間114を示す。具体的には、ユーザは、ブレークポイントマネージャ108が第2のブレークポイント120bを生成するように、追加のユーザ入力を与えるために、ビューポート空間114と対話する。第2のブレークポイント120bは、追加として、ビューポート空間114を、220ピクセル未満の第1のインターバル124aと、220ピクセルよりも大きい第2のインターバル124bとに区分する。すなわち、第2のブレークポイント120bは、ビューポート空間114の高さに基づく。
【0017】
そのために、フォーマッティングルールジェネレータ110は、適切な対応するインターバル124a、124bに関連付けられる第2のブレークポイント120bに基づいて、2つのフォーマッティングルールを生成する。図4の図示の例では、第3のフォーマッティングルールが第1のインターバル124aに関連付けられ、第4の、異なるフォーマッティングルールが第2のインターバル124bに関連付けられる。すなわち、ビューポート空間114の高さが第2のブレークポイント120b未満、たとえば、220ピクセル未満であるとき、第3のフォーマッティングルールがビューポート空間114に適用され、ビューポート空間114の高さが第2のブレークポイント120bよりも大きい、たとえば、220ピクセルよりも大きいとき、第4のフォーマッティングルールがビューポート空間114に適用される。図示の例では、ビューポート空間114は、第2のブレークポイント120b、たとえば、220ピクセル未満の高さを有するように示されており、第3のフォーマッティングルールがビューポート空間114に適用される。この例では、第3のフォーマッティングルールは、ビューポート空間114内のデジタルコンテンツアイテム116の位置決め、配置、およびサイズ、ならびにデジタルコンテンツアイテム116内で与えられたコンテンツのフォーマッティングを含む。具体的には、フォーマッティングの他の態様の中でも、第3のフォーマッティングルールは、第2のアイテム118bの上に位置決めされた第1のアイテム118aを含み、アイテム118のサイズが調整される。
【0018】
いくつかの例では、ブレークポイントは、ビューポート空間114のアスペクト比に基づく。具体的には、アスペクト比ブレークポイントは、ビューポート空間114のアスペクト比に基づいて、ビューポート空間114をインターバルに区分する。いくつかの例では、アスペクト比は、ビューポート空間114の高さと幅との間の比例関係に関連付けられる。フォーマッティングルールジェネレータ110は、上述のものと同様の、対応するインターバルに関連付けられるアスペクト比ブレークポイントに基づいて、2つ以上のフォーマッティングルールを生成する。たとえば、アスペクト比ブレークポイントは、9/16において確立され得、たとえば、ビューポート空間の高さおよび幅の関係は、9対16である。すなわち、アスペクト比ブレークポイントに対するビューポート空間114のアスペクト比に基づいて、適切なフォーマッティングルールがビューポート空間114に適用される。
【0019】
いくつかの例では、アスペクト比ブレークポイントは、ビューポート空間114の向きに関連付けられる。すなわち、アスペクト比ブレークポイントは、ビューポート空間114を、第1の向き、たとえば、横方向に関連付けられた第1のインターバルと、第2の向き、たとえば、縦方向に関連付けられた第2のインターバルとに区分する。いくつかの例では、アスペクト比ブレークポイントよりも大きいビューポート空間114のアスペクト比では、ビューポート空間114が縦方向の向きに関連付けられ、アスペクト比ブレークポイント未満のビューポート空間114のアスペクト比では、ビューポート空間114が横方向の向きに関連付けられる。いくつかの例では、アスペクト比ブレークポイントは、クライアントコンピューティングデバイス104に基づき、ならびに具体的には、クライアントコンピューティングデバイス104の画面サイズおよび/またはグラフィカルユーザインターフェース(GUI)サイズに基づく。いくつかの例では、ビューポート空間114のブレークポイントは、ビューポート空間の高さ、幅、およびアスペクト比に基づく。
【0020】
図5は、第3のブレークポイント120cと第4のブレークポイント120dとを含む、ビューポート空間114を示す。具体的には、ユーザは、ブレークポイントマネージャ108が第3のブレークポイント120cと第4のブレークポイント120dとを生成するように、追加のユーザ入力を与えるために、ビューポート空間114と対話する。第3のブレークポイント120cは、ビューポート空間114を、220ピクセル未満の第1のインターバル126aと、220ピクセルと620ピクセルとの間の第2のインターバル126bと、620ピクセルよりも大きい第3のインターバル126cとに区分する。第4のブレークポイント120dは、ビューポート空間114を、100ピクセル未満の第1のインターバル128aと、100ピクセルと220ピクセルとの間の第2のインターバル128bと、220ピクセルよりも大きい第3のインターバル128cとに区分する。
【0021】
いくつかの例では、サーバコンピューティングシステム102によって生成されたインターバル、たとえば、インターバル126a、126b、126cの各々は、互いに重複とは無関係である。具体的には、多くとも一度に1つのフォーマッティングルールがビューポート空間114に適用されることを保証するために、これらのインターバルは、互いに重複とは無関係であり、すなわち、独立したインターバルである。たとえば、インターバル126a、126b、126cは、互いに重複とは無関係である。すなわち、各インターバル126a、126b、126cは、互いに別個であり、異なる。
【0022】
フォーマッティングルールジェネレータ110は、適切な対応するインターバル126a、126b、126cに関連付けられる、第1のブレークポイント120aおよび第3のブレークポイント120cに基づいて、3つのフォーマッティングルールを生成する。図5の図示の例では、第3のブレークポイント120c未満、たとえば、220ピクセル未満であるか、第3のブレークポイント120cよりも大きく、たとえば、220ピクセルよりも大きく、かつ第1のブレークポイント120a、たとえば、620ピクセル未満であるか、または、第1のブレークポイント120a、たとえば、620ピクセルよりも大きい、ビューポート空間114の幅に基づいて、それぞれのフォーマッティングルールが、対応するインターバル126a、126b、126cに関連付けられるビューポート空間114に適用される。さらに、フォーマッティングルールジェネレータ110は、適切な対応するインターバル128a、128b、128cに関連付けられる、第2のブレークポイント120bおよび第4のブレークポイント120dに基づいて、3つのフォーマッティングルールを生成する。図5の図示の例では、第4のブレークポイント120d未満、たとえば、100ピクセル未満であるか、第4のブレークポイント120dよりも大きく、たとえば、100ピクセルよりも大きく、かつ第2のブレークポイント120b、たとえば、220ピクセル未満であるか、または、第2のブレークポイント120b、たとえば、220ピクセルよりも大きい、ビューポート空間114の高さに基づいて、それぞれのフォーマッティングルールが、対応するインターバル128a、128b、128cに関連付けられるビューポート空間114に適用される。
【0023】
3つの高さベースのブレークポイント、および3つの幅ベースのブレークポイントに関連付けられる、図5のビューポート空間114に基づいて、9つの異なるインターバルが、ビューポート空間114に関連付けられる。具体的には、図6は、ビューポート空間114の例示的な2次元表現600を示す。具体的には、ビューポート空間114は、それぞれのフォーマッティングルールに関連付けられたインターバルの各々をもつ、4つのブレークポイント120a、120b、120c、120dに基づく、(1、2、...、9と標示された)9つのインターバルを含む。さらに、ビューポート空間114のサイズ(たとえば、高さおよび幅)に基づいて、インターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。
【0024】
いくつかの例では、ブレークポイントは、それぞれのブレークポイントによって確立された境界を含む。具体的には、図示の例では、インターバル126aは、220ピクセルにおける境界を含む。すなわち、ビューポート空間114が220ピクセルにおける幅を含むとき、インターバル126aに関連付けられたフォーマッティングルールが、ビューポート空間114に適用される。さらに、図示の例では、インターバル126bは、221ピクセル〜620ピクセルの幅から確立され、620ピクセルにおける境界を含む。すなわち、ビューポート空間114が620ピクセルにおける幅を含むとき、インターバル126bに関連付けられたフォーマッティングルールが、ビューポート空間114に適用される。
【0025】
図1を参照すると、いくつかの実装形態では、サーバコンピューティングシステム102は、クライアントコンピューティングデバイス104によって電子文書内で表示するために、デジタルコンテンツアイテム116をクライアントコンピューティングデバイス104に配信する。いくつかの例では、サーバコンピューティングシステム102によるデジタルコンテンツアイテム116の配信は、サーバコンピューティングシステム102が、クライアントコンピューティングデバイス104に、デジタルコンテンツアイテム116のテキストまたは画像コンテンツ130と、フォーマッティングルール132、たとえばインターバル126a、126b、126c、128a、128b、128cに関連付けられたフォーマッティングルールとを与えることを含む。いくつかの例では、サーバコンピューティングシステム102によって、クライアントコンピューティングデバイス104にフォーマッティングルール132を与えることによって、フォーマッティングルール132は、デジタルコンテンツアイテム116の適切なバージョンを動的にレンダリングおよび表示することを、(たとえば、クライアントコンピューティングデバイス104上で実行している)クライアント側アプリケーションに行わせる。すなわち、デジタルコンテンツアイテム116の適切なバージョンは、そのためにデジタルコンテンツアイテム116が表示されるべきであるディスプレイエリアと、フォーマッティングルールとに基づく。
【0026】
たとえば、クライアントコンピューティングデバイス104は、デジタルコンテンツアイテム116を、たとえば、電子文書内で提示するためのディスプレイエリアを識別し、フォーマッティングルール132およびディスプレイエリアに基づいて、デジタルコンテンツアイテム116の適切なバージョンを表示するために、デジタルコンテンツアイテム116を動的にレンダリングする。いくつかの例では、クライアント側アプリケーションは、ウェブブラウジングアプリケーションを含み得、電子文書は、ウェブページを含み得る。したがって、ウェブページのディスプレイエリア、および/または、ウェブページ内のデジタルコンテンツアイテム116のディスプレイに関連付けられたディスプレイエリアに基づいて、ウェブブラウジングアプリケーションは、フォーマッティングルール132に基づいて適切に、デジタルコンテンツアイテム116を動的にレンダリングすることができる。いくつかの例では、ウェブページのディスプレイエリア、および/または、ウェブページ内のデジタルコンテンツアイテム116のディスプレイに関連付けられたディスプレイエリアは、たとえば、ウェブページを提示するブラウザのディスプレイエリアの最大化に応答して、動的に変化し得る。結果として、新たなサイズのウェブページ内に表示するために、デジタルコンテンツアイテム116に適用されたフォーマッティングルールは、デジタルコンテンツアイテム116が新たなサイズのウェブページ内に適切に表示されるように、クライアントコンピューティングデバイス104によって、およびフォーマッティングルール132に基づいて、動的に更新され得る。
【0027】
図7は、ビューポート空間114の例示的な2次元表現700を示す。具体的には、ビューポート空間114は、ビューポート空間114の高さ、幅、および/またはアスペクト比に基づくブレークポイントを含み得る。特に、ビューポート空間114は、それぞれのフォーマッティングルールに関連付けられた各インターバルをもつ、5つのブレークポイント702a、702b、702c、702d、702e(ブレークポイント702と総称される)に基づく、(1、2、...、7と標示された)7つのインターバルを含む。そのために、ビューポート空間114のサイズ(たとえば、高さおよび幅)および向きに基づいて、インターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。ブレークポイント702aは、ブレークポイント702aよりも大きいビューポート空間114のアスペクト比が、縦方向の向きに関連付けられること、およびブレークポイント702a未満のビューポート空間114のアスペクト比が、横方向の向きに関連付けられることにおいて、アスペクト比ブレークポイントに関連付けられる。ブレークポイント702bおよび702cは、ビューポート空間114の高さ(たとえば、それぞれ、400ピクセルおよび600ピクセル)に関連付けられ、ブレークポイント702dおよび702eは、ビューポート空間114の幅(たとえば、それぞれ、200ピクセルおよび400ピクセル)に関連付けられる。追加として、インターバルの各々が、それぞれのフォーマッティングルールに関連付けられる。したがって、ビューポート空間114のサイズ(たとえば、高さおよび幅)およびアスペクト比に基づいて、適切なインターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。
【0028】
図示の例では、インターバル1は、ブレークポイント702aよりも大きいビューポート空間114のアスペクト比(たとえば、縦方向の向き)、およびブレークポイント702c未満(たとえば、600ピクセル未満)のビューポート空間114の高さに関連付けられる。インターバル2は、ブレークポイント702aよりも大きいビューポート空間114のアスペクト比(たとえば、縦方向の向き)、およびブレークポイント702cよりも大きい(たとえば、600ピクセルよりも大きい)ビューポート空間114の高さに関連付けられる。インターバル3は、ブレークポイント702a未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)、およびブレークポイント702d未満(たとえば、200ピクセル未満)のビューポート空間114の幅に関連付けられる。インターバル4は、ブレークポイント702a未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)、ブレークポイント702d(たとえば、200ピクセル)よりも大きく、ブレークポイント702e(たとえば、400ピクセル)未満のビューポート空間の幅、およびブレークポイント702b(たとえば、400ピクセル)未満のビューポート空間の高さに関連付けられる。インターバル5は、ブレークポイント702a未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)、ブレークポイント702e(たとえば、400ピクセル)未満のビューポート空間114の幅、およびブレークポイント702b(たとえば、400ピクセル)よりも大きいビューポート空間114の高さに関連付けられる。インターバル6は、ブレークポイント702a未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)、ブレークポイント702e(たとえば、400ピクセル)よりも大きいビューポート空間114の幅、およびブレークポイント702b(たとえば、400ピクセル)未満のビューポート空間114の高さに関連付けられる。インターバル7は、ブレークポイント702a未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)、ブレークポイント702e(たとえば、400ピクセル)よりも大きいビューポート空間114の幅、およびブレークポイント702b(たとえば、400ピクセル)よりも大きいビューポート空間114の高さに関連付けられる。
【0029】
いくつかの例では、ブレークポイントマネージャ108によって、およびユーザ入力に基づいて、ブレークポイントを生成することは、ビューポート空間114において新しいブレークポイントを挿入することを含み得る。図8は、ビューポート空間114における新しいブレークポイントの挿入を含む、ビューポート空間114の例示的な2次元表現800を示す。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、ブレークポイント802を生成し、ブレークポイント802は、インターバル3をインターバル3a、3bに、インターバル5をインターバル5a、5bに、およびインターバル7をインターバル7a、7bに区分する。追加として、インターバル3a、3b、5a、5b、7a、7bの各々が、それぞれのフォーマッティングルールに関連付けられる。いくつかの例では、新たに作成されたインターバルのうちの1つ(たとえば、インターバル3a)は、以前のインターバル(たとえば、インターバル3)のフォーマッティングルールに関連付けられ、他の新たに作成されたインターバル(たとえば、インターバル3b)は、新しいフォーマッティングルールに関連付けられる。したがって、ビューポート空間114のサイズ(たとえば、高さおよび幅)およびアスペクト比に基づいて、適切なインターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。
【0030】
いくつかの例では、ブレークポイントマネージャ108によって、およびユーザ入力に基づいて、ブレークポイントを生成することは、デジタルコンテンツアイテム116の向きに基づいて、ビューポート空間114のアスペクト比分割を追加することを含み得る。図9は、ビューポート空間114における新しいアスペクト比ブレークポイントの挿入を含む、ビューポート空間114の例示的な2次元表現900を示す。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、ブレークポイント902を生成し、ブレークポイント902は、インターバル1をインターバル1a、1bに、インターバル2をインターバル2a、2bに、およびインターバル6をインターバル6a、6bに区分する。追加として、インターバル1a、1b、2a、2b、6a、6bの各々が、それぞれのフォーマッティングルールに関連付けられる。いくつかの例では、新たに作成されたインターバルのうちの1つ(たとえば、インターバル1a)は、以前のインターバル(たとえば、インターバル1)のフォーマッティングルールに関連付けられ、他の新たに作成されたインターバル(たとえば、インターバル1b)は、新しいフォーマッティングルールに関連付けられる。したがって、ビューポート空間114のサイズ(たとえば、高さおよび幅)およびアスペクト比に基づいて、それらのインターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。そのために、インターバル1a、2a、3、および6aは、ブレークポイント902よりも大きいビューポート空間114のアスペクト比(たとえば、縦方向の向き)に関連付けられ、インターバル1b、2b、4、5、および6bは、ブレークポイント902未満のビューポート空間114のアスペクト比(たとえば、横方向の向き)に関連付けられる。いくつかの例では、ブレークポイントマネージャ108によるブレークポイント902の挿入は、インターバル2a、2b、6a、6bのうちの1つが、たとえば、領域904によって示されているように、ピクセル密度未満の、小さい部分を含むことを含み得る。そのために、ブレークポイント902に関連付けられた値は、無視できる値の範囲を含むインターバルのうちの1つのそのような包含を、防止しない場合、最小化するように調整され得る。
【0031】
いくつかの例では、ブレークポイントマネージャ108によって、およびユーザ入力に基づいて、ブレークポイントを生成することは、ビューポート空間114内で以前から存在するブレークポイントを移動させることを含み得る。図10は、ビューポート空間114内で以前から存在するブレークポイントを移動させることを含む、ビューポート空間114の例示的な2次元表現1000を示す。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、以前から存在するブレークポイント1002を移動させる。したがって、1つまたは複数のインターバルに関連付けられた境界、およびしたがって、インターバルに関連付けられた各フォーマッティングルールが調整される。いくつかの例では、ビューポート空間114内で以前から存在するブレークポイントを移動させることは、1つまたは複数のインターバルを除去することを含む。図示の例では、ブレークポイント1002が移動され、すなわち、ブレークポイント1002に関連付けられたアスペクト比が調整される。したがって、インターバル3、4、7、10が、ビューポート空間114から除去される。さらに、インターバル1、2、5、6、9に関連付けられた境界が調整される。いくつかの例では、ビューポート空間114内で以前から存在するブレークポイントを移動させることは、1つまたは複数のインターバルを追加することを含む。具体的には、図11の図示の例では、ブレークポイント1102が移動され、すなわち、ブレークポイント1102に関連付けられたアスペクト比が調整される。したがって、インターバル7がビューポート空間114に追加される。さらに、インターバル1、2、3、4、6に関連付けられた境界が調整される。
【0032】
いくつかの例では、ブレークポイントマネージャ108によって、およびユーザ入力に基づいて、ブレークポイントを生成することは、ビューポート空間114から以前から存在するブレークポイントを削除することを含み得る。図12は、ビューポート空間114から以前から存在するブレークポイントを除去することを含む、ビューポート空間114の例示的な2次元表現1200を示す。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、以前から存在するブレークポイント1202を除去し、インターバル4および6は、4'と標示された単一のインターバルにマージし、インターバル3および5は、3'と標示された単一のインターバルにマージする。そのために、新たにマージされたインターバル(たとえば、インターバル4')は、以前のインターバル(たとえば、インターバル4、6)のうちの1つのフォーマッティングルールを含む。したがって、ビューポート空間114のサイズ(たとえば、高さおよび幅)およびアスペクト比に基づいて、適切なインターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。
【0033】
いくつかの例では、ブレークポイントマネージャ108によって、およびユーザ入力に基づいて、ブレークポイントを生成することは、ビューポート空間114の以前から存在するアスペクト比ブレークポイントを除去することを含み得る。図13は、ビューポート空間114の以前から存在するアスペクト比ブレークポイントを除去することを含む、ビューポート空間114の例示的な2次元表現1300を示す。具体的には、ブレークポイントマネージャ108は、ユーザ入力に基づいて、以前から存在するアスペクト比ブレークポイント1302を除去する。結果として、1つまたは複数のインターバル(または、インターバルの部分)が、1つまたは複数の他のインターバル(または、インターバルの部分)とマージされ、かつ/あるいは、1つまたは複数のインターバルが作成される。図示の例では、インターバル1の部分がインターバル3、4、6とマージされ、インターバル2の部分がインターバル4、6、8、9とマージされる。その上、アスペクト比ブレークポイント1302が除去されるとき、ブレークポイント1302によって定義されるような、ビューポート空間114に関連付けられた向きのうちの1つ(たとえば、横方向または縦方向)が除去され、残りの向き(たとえば、横方向または縦方向)が維持される。さらに、インターバル11および12が作成される。したがって、ビューポート空間114のサイズ(たとえば、高さおよび幅)およびアスペクト比に基づいて、適切なインターバルに関連付けられたフォーマッティングルールのうちの1つが、ビューポート空間114、および具体的には、デジタルコンテンツアイテム116に適用される。
【0034】
図14は、デジタルコンテンツアイテムのディスプレイをフォーマットするための例示的なプロセス1400を示す。プロセス1400は、たとえば、サーバコンピューティングシステム102および/またはクライアントコンピューティングデバイス104、あるいは別のデータ処理装置によって行われ得る。プロセス1400はまた、コンピュータ記憶媒体上に記憶された命令としても実装され得、1つまたは複数のデータ処理装置による命令の実行は、1つまたは複数のデータ処理装置に、プロセス1400の動作のうちの一部または全部を行わせる。
【0035】
デジタルコンテンツアイテムのビューポート空間を含む、ユーザインターフェースが生成される(1402)。たとえば、図1を参照すると、ビューポート空間114は、それにおいてデジタルコンテンツアイテム116が、たとえば、サーバコンピューティングシステム102および/またはクライアントコンピューティングデバイス104によって、表示のためにレンダリングされるエリアである。ユーザ入力が、ユーザインターフェースを通して受信される(1404)。たとえば、図1および図2を参照すると、ユーザインターフェース112に関連付けられたユーザは、ユーザ入力を与えるために、ユーザインターフェース112と対話(たとえば、キーボード、マウス、タッチスクリーン、またはその他を介して入力)し、具体的には、ユーザは、ユーザ入力を与えるために、ビューポート空間114および/またはデジタルコンテンツアイテム116と対話することができる。
【0036】
ユーザ入力に基づいて、ビューポート空間の1つまたは複数のブレークポイントが生成される(1406)。たとえば、図1および図2を参照すると、ブレークポイントマネージャ108は、ユーザ入力に基づいて、ブレークポイント120aを生成する。ブレークポイント120aは、2つ以上のインターバル(または区分)へのビューポート空間114の区分に関連付けられる。いくつかの例では、ブレークポイントは、ビューポート空間の高さ、幅、および/またはアスペクト比に基づく。
【0037】
1つまたは複数のブレークポイントに基づいて、2つ以上のフォーマッティングルールが生成される(1408)。たとえば、図1および図2を参照すると、ブレークポイントに基づいて、フォーマッティングルールジェネレータ110は、フォーマッティングルールが適用されるとき、デジタルコンテンツアイテム116の異なるバージョンを各々作成する、フォーマッティングルールを生成する。いくつかの例では、フォーマッティングルールの各々は、フォーマッティングルールが適用されるとき、デジタルコンテンツアイテム116の異なるバージョンを作成する。いくつかの例では、異なるフォーマッティングルールが、異なるサイズの(different sized)ビューポート空間に適用される。
【0038】
デジタルコンテンツアイテムが、電子文書内に表示するために、クライアントデバイスに配信される(1410)。たとえば、図1を参照すると、サーバコンピューティングシステム102は、クライアントコンピューティングデバイス104によって電子文書内で表示するために、デジタルコンテンツアイテム116をクライアントコンピューティングデバイス104に配信する。いくつかの例では、サーバコンピューティングシステム102によるデジタルコンテンツアイテム116の配信は、サーバコンピューティングシステム102が、クライアントコンピューティングデバイス104に、デジタルコンテンツアイテム116のテキストまたは画像コンテンツと、フォーマッティングルール、たとえばインターバル126a、126b、126c、128a、128b、128cに関連付けられたフォーマッティングルールとを与えることを含む。いくつかの例では、サーバコンピューティングシステム102によって、クライアントコンピューティングデバイス104にフォーマッティングルールを与えることによって、フォーマッティングルールは、デジタルコンテンツアイテム116の適切なバージョンを動的にレンダリングおよび表示することを、(たとえば、クライアントコンピューティングデバイス104上で実行している)クライアント側アプリケーションに行わせる。すなわち、デジタルコンテンツアイテム116の適切なバージョンは、そのためにデジタルコンテンツアイテム116が表示されるべきであるディスプレイエリアと、フォーマッティングルールとに基づく。
【0039】
図15は、本明細書で説明する技法とともに使用され得る、汎用コンピュータデバイス1500および汎用モバイルコンピュータデバイス1550の一例を示す。コンピューティングデバイス1500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、様々な形態のデジタルコンピュータを表すものである。コンピューティングデバイス1550は、携帯情報端末、セルラー電話、スマートフォン、および他の同様のコンピューティングデバイスなど、様々な形態のモバイルデバイスを表すものである。ここで示す構成要素、それらの接続および関係、ならびにそれらの機能は、例示的なものにすぎないように意図され、本文書で説明および/または特許請求する本発明の実装形態を限定するように意図されない。
【0040】
コンピューティングデバイス1500は、プロセッサ1502と、メモリ1504と、記憶デバイス1506と、メモリ1504および高速拡張ポート1510に接続する高速インターフェース1508と、低速バス1514および記憶デバイス1506に接続する低速インターフェース1512とを含む。構成要素1502、1504、1506、1508、1510、および1512の各々は、様々なバスを使用して相互接続され、共通マザーボード上に、または適宜に他の方法で搭載され得る。プロセッサ1502は、高速インターフェース1508に結合されたディスプレイ1516など、外部入出力デバイス上のGUIのためのグラフィカル情報を表示するための、メモリ1504内または記憶デバイス1506上に記憶された命令を含む、コンピューティングデバイス1500内の実行のための命令を処理し得る。他の実装形態では、複数のプロセッサおよび/または複数のバスが、適宜に、複数のメモリおよび複数のタイプのメモリとともに使用され得る。また、複数のコンピューティングデバイス1500が接続され得、各デバイスは、(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の部分を提供する。
【0041】
メモリ1504は、コンピューティングデバイス1500内に情報を記憶する。一実装形態では、メモリ1504は、1つまたは複数の揮発性メモリユニットである。別の実装形態では、メモリ1504は、1つまたは複数の不揮発性メモリユニットである。メモリ1504はまた、磁気または光ディスクなど、別の形態のコンピュータ可読媒体でもあり得る。
【0042】
記憶デバイス1506は、コンピューティングデバイス1500のための大容量記憶装置を提供することが可能である。一実装形態では、記憶デバイス1506は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、または、ストレージエリアネットワークもしくは他の構成におけるデバイスを含む、デバイスのアレイなど、コンピュータ可読媒体であり得るか、またはそれを含み得る。コンピュータプログラム製品は、情報キャリアにおいて有形に具現化され得る。コンピュータプログラム製品はまた、実行されるとき、上記で説明したものなど、1つまたは複数の方法を行う命令を含み得る。情報キャリアは、メモリ1504、記憶デバイス1506、またはプロセッサ1502上のメモリなど、コンピュータまたは機械可読媒体である。
【0043】
高速コントローラ1508は、コンピューティングデバイス1500のための帯域幅集中的な動作を管理するが、低速コントローラ1512は、より低い帯域幅集中的な動作を管理する。そのような機能の割振りは、例示的なものにすぎない。一実装形態では、高速コントローラ1508は、メモリ1504、ディスプレイ1516(たとえば、グラフィックスプロセッサまたはアクセラレータを通して)、および高速拡張ポート1510に結合され、高速拡張ポート1510は、様々な拡張カード(図示せず)を受け入れ得る。この実装形態では、低速コントローラ1512は、記憶デバイス1506および低速拡張ポート1514に結合される。低速拡張ポートには、様々な通信ポート(たとえば、USB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット)が含まれることがあり、キーボード、ポインティングデバイス、スキャナなどの1つもしくは複数の入出力デバイスに、または、たとえば、ネットワークアダプタを通して、スイッチもしくはルータなどのネットワーキングデバイスに結合され得る。
【0044】
コンピューティングデバイス1500は、図に示されているように、いくつかの異なる形態で実装され得る。たとえば、コンピューティングデバイス1500は、標準的なサーバ1520として、またはそのようなサーバのグループにおいて複数回、実装され得る。コンピューティングデバイス1500はまた、ラックサーバシステム1524の一部としても実装され得る。加えて、コンピューティングデバイス1500は、ラップトップコンピュータ1522など、パーソナルコンピュータにおいて実装され得る。代替的に、コンピューティングデバイス1500からの構成要素は、デバイス1550など、モバイルデバイス(図示せず)における他の構成要素と組み合わせられ得る。そのようなデバイスの各々は、コンピューティングデバイス1500、1550のうちの1つまたは複数を含み得、システム全体が、互いに通信する複数のコンピューティングデバイス1500、1550から構成され得る。
【0045】
コンピューティングデバイス1550は、構成要素の中でも、プロセッサ1552と、メモリ1564と、ディスプレイ1554などの入出力デバイスと、通信インターフェース1566と、トランシーバ1568とを含む。デバイス1550はまた、追加のストレージを提供するために、マイクロドライブまたは他のデバイスなど、記憶デバイスを備え得る。構成要素1550、1552、1564、1554、1566、および1568の各々は、様々なバスを使用して相互接続され、構成要素のうちのいくつかは、共通マザーボード上に、または適宜に他の方法で搭載され得る。
【0046】
プロセッサ1552は、メモリ1564において記憶された命令を含む、コンピューティングデバイス1550内の命令を実行し得る。プロセッサは、別個および複数のアナログおよびデジタルプロセッサを含む、チップのチップセットとして実装され得る。プロセッサは、たとえば、ユーザインターフェース、デバイス1550によって実行されたアプリケーション、および、デバイス1550によるワイヤレス通信の制御など、デバイス1550の他の構成要素の協調を提供し得る。
【0047】
プロセッサ1552は、ディスプレイ1554に結合された制御インターフェース1558およびディスプレイインターフェース1556を通して、ユーザと通信し得る。ディスプレイ1554は、たとえば、TFT LCD(薄膜トランジスタ液晶ディスプレイ)もしくはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェース1556は、ディスプレイ1554を駆動して、グラフィカルおよび他の情報をユーザに提示するための、適切な回路を備え得る。制御インターフェース1558は、ユーザからコマンドを受信し、プロセッサ1552へのサブミッションのために、それらのコマンドを変換し得る。加えて、外部インターフェース1562は、デバイス1550の他のデバイスとの近いエリアの通信を可能にするために、プロセッサ1552と通信するように設けられ得る。外部インターフェース1562は、たとえば、いくつかの実装形態ではワイヤード通信、または、他の実装形態ではワイヤレス通信を提供し得、複数のインターフェースもまた使用され得る。
【0048】
メモリ1564は、コンピューティングデバイス1550内で情報を記憶する。メモリ1564は、1つまたは複数のコンピュータ可読媒体、1つまたは複数の揮発性メモリユニット、あるいは1つまたは複数の不揮発性メモリユニットのうちの1つまたは複数として実装され得る。拡張メモリ1554もまた設けられ、たとえば、SIMM(シングルインラインメモリモジュール)カードインターフェースを含み得る、拡張インターフェース1552を通して、デバイス1550に接続され得る。そのような拡張メモリ1554は、デバイス1550のために余分の記憶空間を提供し得、または、デバイス1550のためのアプリケーションもしくは他の情報をも記憶し得る。具体的には、拡張メモリ1554は、上記で説明したプロセスを実行するかまたは補うために命令を含み得、また、セキュアな情報をも含み得る。したがって、たとえば、拡張メモリ1554は、デバイス1550のためのセキュリティモジュールとして設けられ得、デバイス1550のセキュアな使用を可能にする命令とともにプログラムされ得る。加えて、セキュアアプリケーションは、ハッキング不可能な方法でSIMMカード上に識別情報を配置するなど、追加の情報とともに、SIMMカードを介して提供され得る。
【0049】
メモリは、たとえば、以下で説明するように、フラッシュメモリおよび/またはNVRAMメモリを含み得る。一実装形態では、コンピュータプログラム製品は、情報キャリアにおいて有形に具現化される。コンピュータプログラム製品は、実行されるとき、上記で説明したものなど、1つまたは複数の方法を行う命令を含む。情報キャリアは、メモリ1564、拡張メモリ1554、プロセッサ1552上のメモリなどのコンピュータもしくは機械可読媒体、または、たとえば、トランシーバ1568もしくは外部インターフェース1562を介して受信され得る伝搬信号である。
【0050】
デバイス1550は、必要な場合、デジタル信号処理回路を含み得る通信インターフェース1566を通して、ワイヤレス通信し得る。通信インターフェース1566は、とりわけ、GSM(登録商標)音声呼出し、SMSメッセージング、EMSメッセージング、もしくはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなど、様々なモードまたはプロトコルの下で通信を提供し得る。そのような通信は、たとえば、無線周波数トランシーバ1568を通して発生し得る。加えて、短距離通信は、Bluetooth(登録商標)、WiFi、または他のそのようなトランシーバ(図示せず)などを使用して発生し得る。加えて、GPS(全地球測位システム)受信機モジュール1550は、デバイス1550上で実行しているアプリケーションによって適宜に使用され得る、追加のナビゲーションおよびロケーション関連ワイヤレスデータを、デバイス1550に与え得る。
【0051】
デバイス1550はまた、オーディオコーデック1560を使用して、可聴的に通信し得、オーディオコーデック1560は、ユーザから話された情報を受信し、それを使用可能なデジタル情報に変換し得る。オーディオコーデック1560は、同様に、たとえば、デバイス1550のハンドセットにおいて、スピーカーを通してなど、ユーザのための可聴音を生成し得る。そのような音は、音声電話通話からの音を含み得、記録された音(たとえば、音声メッセージ、音楽ファイルなど)を含み得、また、デバイス1550上で動作するアプリケーションによって生成された音をも含み得る。
【0052】
コンピューティングデバイス1550は、図に示されているように、いくつかの異なる形態で実装され得る。たとえば、コンピューティングデバイス1550は、セルラー電話1580として実装され得る。コンピューティングデバイス1550はまた、スマートフォン1582、携帯情報端末、または他の同様のモバイルデバイスの一部としても実装され得る。
【0053】
本明細書で説明するシステムおよび技法の様々な実装形態は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せにおいて実現され得る。これらの様々な実装形態は、少なくとも1つのプログラマブルプロセッサを含む、プログラマブルシステム上で実行可能および/または解釈可能である1つまたは複数のコンピュータプログラムにおける実装形態を含み得、プログラマブルプロセッサは、専用であっても汎用であってもよく、記憶システム、少なくとも1つの入力デバイス、および、少なくとも1つの出力デバイスから、データおよび命令を受信し、それらにデータおよび命令を送信するために結合され得る。
【0054】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高水準の手続き型および/もしくはオブジェクト指向プログラミング言語において、かつ/またはアセンブリ/機械言語において実装され得る。本明細書で使用するとき「機械可読媒体」、「コンピュータ可読媒体」という用語は、機械命令を機械可読信号として受信する機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに与えるために使用される、任意のコンピュータプログラム製品、装置および/またはデバイス(たとえば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに与えるために使用される、任意の信号を指す。
【0055】
ユーザとの対話を提供するために、本明細書で説明するシステムおよび技法は、ユーザに情報を表示するためのディスプレイデバイス(たとえば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、それによってユーザがコンピュータに入力を与え得るキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)とを有する、コンピュータ上で実装され得る。他の種類のデバイスが、ユーザとの対話を与えるために同様に使用され得、たとえば、ユーザに与えられるフィードバックは、任意の形態の感覚フィードバック(たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり得、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む、任意の形態で受信され得る。
【0056】
本明細書で説明するシステムおよび技法は、(たとえば、データサーバとして)バックエンド構成要素を含むか、あるいは、ミドルウェア構成要素(たとえば、アプリケーションサーバ)を含むか、あるいは、フロントエンド構成要素(たとえば、それを通してユーザが、本明細書で説明するシステムおよび技法の実装形態と対話し得る、グラフィカルユーザインターフェースまたはウェブブラウザを有する、クライアントコンピュータ)、または、そのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組合せを含む、コンピューティングシステムにおいて実装され得る。システムの構成要素は、任意の形態または任意の媒体のデジタルデータ通信(たとえば、通信ネットワーク)によって相互接続され得る。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットが含まれる。
【0057】
コンピューティングシステムは、クライアントおよびサーバを含み得る。クライアントおよびサーバは、一般に互いから遠隔であり、典型的には、通信ネットワークを通して対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で実行しており、互いにクライアントサーバ関係を有する、コンピュータプログラムによって生じる。
【0058】
本開示は、いくつかの詳細を含むが、これらは、本開示の範囲における、または特許請求され得るものの限定として解釈されるべきではなく、むしろ、本開示の例示的な実装形態の特徴の説明として解釈されるべきである。別個の実装形態との関連において本開示で説明するいくつかの特徴はまた、単一の実装形態において組み合わせて提供され得る。逆に、単一の実装形態との関連において説明する様々な特徴はまた、複数の実装形態において別個に、または任意の好適な部分組合せにおいても提供され得る。その上、特徴について、いくつかの組合せにおいて作用するとして上記で説明することがあり、したがって、最初に特許請求されることさえあるが、特許請求される組合せからの1つまたは複数の特徴は、場合によっては、その組合せから削除され得、特許請求される組合せは、部分組合せ、または部分組合せの変形形態を対象とし得る。
【0059】
同様に、動作は、図面において特定の順序で図示されるが、これは、そのような動作が、図示された特定の順序で、もしくは連続した順序で行われること、または、望ましい結果を達成するために、すべての図示された動作が行われることを必要とするものとして理解されるべきではない。いくつかの状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記で説明した実装形態における様々なシステム構成要素の分離は、すべての実装形態におけるそのような分離を必要とするものとして理解されるべきではなく、説明したプログラム構成要素およびシステムは、一般に、単一のソフトウェア製品において一緒に統合され得るか、または複数のソフトウェア製品にパッケージ化され得ることを理解されたい。
【0060】
以上、本開示の特定の実装形態について説明した。他の実装形態は、以下の特許請求の範囲内である。たとえば、特許請求の範囲に記載されたアクションは、異なる順序で行われ、なお、望ましい結果を達成することが可能である。いくつかの実装形態について説明した。それにもかかわらず、様々な修正が、本開示の趣旨および範囲を逸脱することなく行われ得ることは理解されよう。たとえば、上記で示された様々な形態のフローが使用され得、ステップが並べ替え、追加、または除去され得る。したがって、他の実装形態は、以下の特許請求の範囲内である。
【符号の説明】
【0061】
100 環境
102 サーバコンピューティングシステム
104 クライアントコンピューティングデバイス
106 デジタルコンテンツアイテムリポジトリ
108 ブレークポイントマネージャ
110 フォーマッティングルールジェネレータ
112 ユーザインターフェース
114 ビューポート空間
116 デジタルコンテンツアイテム
118 アイテム
118a 第1のアイテム
118b 第2のアイテム
120a ブレークポイント、第1のブレークポイント
120b 第2のブレークポイント
120c 第3のブレークポイント
120d 第4のブレークポイント
122a、124a、126a、128a 第1のインターバル、インターバル
122b、124b、126b、128b 第2のインターバル、インターバル
126c、128c 第3のインターバル、インターバル
130 テキストまたは画像コンテンツ
132 フォーマッティングルール
600、700、800、900、1000、1200、1300 2次元表現
702、702a、702b、702c、702d、702e、802、902、1002、1102、1202 ブレークポイント
904 領域
1302 アスペクト比ブレークポイント、ブレークポイント
1500 汎用コンピュータデバイス、コンピューティングデバイス
1502 プロセッサ、構成要素
1504、1564 メモリ、構成要素
1506 記憶デバイス、構成要素
1508 高速インターフェース、構成要素、高速コントローラ
1510 高速拡張ポート、構成要素
1512 低速インターフェース、構成要素、低速コントローラ
1514 低速バス、低速拡張ポート
1516 ディスプレイ
1520 標準的なサーバ
1522 ラップトップコンピュータ
1524 ラックサーバシステム
1550 汎用モバイルコンピュータデバイス、コンピューティングデバイス、デバイス、構成要素
1552 プロセッサ、構成要素、拡張インターフェース
1554 ディスプレイ、構成要素、拡張メモリ
1556 ディスプレイインターフェース
1558 制御インターフェース
1560 オーディオコーデック
1562 外部インターフェース
1566 通信インターフェース、構成要素
1568 トランシーバ、構成要素、無線周波数トランシーバ
1580 セルラー電話
1582 スマートフォン
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15