JP6543692B2 - ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントの最適化されたレンダリング - Google Patents

ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントの最適化されたレンダリング Download PDF

Info

Publication number
JP6543692B2
JP6543692B2 JP2017505209A JP2017505209A JP6543692B2 JP 6543692 B2 JP6543692 B2 JP 6543692B2 JP 2017505209 A JP2017505209 A JP 2017505209A JP 2017505209 A JP2017505209 A JP 2017505209A JP 6543692 B2 JP6543692 B2 JP 6543692B2
Authority
JP
Japan
Prior art keywords
document
sets
image data
raster image
client
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.)
Active
Application number
JP2017505209A
Other languages
English (en)
Other versions
JP2017525050A (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.)
Bluebeam Inc
Original Assignee
Bluebeam Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bluebeam Inc filed Critical Bluebeam Inc
Publication of JP2017525050A publication Critical patent/JP2017525050A/ja
Application granted granted Critical
Publication of JP6543692B2 publication Critical patent/JP6543692B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • 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/114Pagination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、概して、ドキュメントの共有およびコラボレーションに関し、さらに詳細には、ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントのレンダリングを最適化することに関する。
現代のビジネスの中核は情報であり、情報の作成、配信、および管理は基本的な機能となっている。情報またはコンテンツは、ワードプロセッシング・ドキュメント、スプレッドシート、グラフィックス、写真、機械製図、建築設計図などを含む、多種多様な方法で提示され得る。電子形態において、これらはすべて、ドキュメントと一般に称されており、それらに固有のソフトウェア・アプリケーションによって生成され得る。企業における通常のワークフローは、そのようなドキュメントを作成、レビュー、および/または編集するためにコラボレーションするさまざまな人員を伴い、高速データ通信およびコンピューティング能力の進歩により、それらのプロセスは、リモート人員を伴うこともできる。
多種多様なオペレーティング・システム、アプリケーション・プログラム、ならびに処理およびグラフィック表示機能を有する多くのさまざまなコンピューティング・プラットフォームの存在により、そのような交換を容易にするためには、デバイスに依存せず、解像度に依存しないファイル・フォーマットが必要であることが、当業者によって認識された。この必要性に応じて、他の競合するフォーマットの中でも特にポータブル・ドキュメント・フォーマット(PDF:Portable Document Format)が開発された。
PDF規格は、簡易化されたポストスクリプト(PostScript)インタープリタ・サブシステム、フォント埋め込みサブシステム、およびストレージ・サブシステムを含むいくつかの技術の組合せである。当業者が認識するように、ポストスクリプトは、ドキュメントのレイアウトおよびグラフィックスを生成するためのページ記述言語である。さらに、PDFストレージ・サブシステムの要件によれば、本明細書において集合的にグラフィック要素と称される、テキスト、ベクタ・グラフィックス、およびラスタ(ビットマップ)・グラフィックスを含むドキュメントのすべての要素は、単一のファイルにカプセル化される。グラフィック要素は、固有のオペレーティング・システム、ソフトウェア・アプリケーション、またはハードウェアにエンコードされないが、そのようなデータを書き込みまたは読み取るシステムに関連する固有性には関わりなく、同じ方法でレンダリングされるように設計される。PDFのクロスプラットフォーム能力は、その幅広い採用に役立ってきたが、現在では、事実上のドキュメント交換規格になっている。本来はプロプラエタリーであったが、PDFは、国際標準化機構(ISO:International Organization for Standardization)によりISO/IEC3200−1:2008として公開されたオープン規格としてリリースされた。現在、PDFは、主としてテキストからなるもの、ならびに主としてベクタおよびラスタ・グラフィックスからなるものを含む、多種多様なドキュメント・タイプをエンコードするために利用される。PFDフォーマットのファイルは、その多用途性および普遍性を備えているので、固有のアプリケーションのより特定化されたファイル・フォーマットよりも好まれることが多い。そのようなものとして、ドキュメントは、PDFフォーマットに変換される。
ユーザ・インタフェースの観点からは、PDFドキュメントは通常、静的にレンダリン
グされるので、テキスト、ピクチャー、およびその他の要素のような個々の要素は編集可能ではない。しかし、PDFリーダー、ライター、およびスタンダード自体の初期リリース以来行われてきた複数の改良のうちの1つは、基本ドキュメントにアノテーションを加えるためのサポートである。そのようなアノテーションは、基礎となるドキュメントに対しグラフィカルにオーバーレイ、または「配置され」、配置はユーザによって正確に制御される。したがって、機能性は、カーソルを望みの位置にナビゲートし、後続の入力を行って配置を永続的にすることによって、さまざまなオブジェクトがドキュメント・キャンバス上に配置され得る、グラフィック・イラストレーション/デザインおよび画像加工アプリケーションと類似している。カーソルを配置する前に、幾何プリミティブ、テキストボックスなどのような、配置されるべきオブジェクトが選択される。
アノテーション・フィーチャの従来型実施態様は、直線的なワークフローを容易にするために使用され、ここで1人のユーザはドキュメントの初期バージョンを作成し、同ドキュメントをレビュー、コメント、および改訂のために仲間に配信/電子メール送信する。その後、コメントおよび訂正を受信すると、主要作成者は、それらをドキュメントに組み入れて、第2の改訂サイクルで再度ドキュメントを配信する。基本的な電子メールおよびコンピューティング・インフラストラクチャしか必要とされない。この反復的改訂サイクルの改良は、追加の参加者、参加者が複数の並行する改訂ダイアログを続行する多対多へのワークフロー階層の変更などに関連付けられた課題を克服するために開発されてきた。特に、単一の正式なバージョンが中央サーバまたはクラウドベースのストレージによって保持された状態で、散在する位置の複数ユーザがリアルタイムでドキュメントを編集することができるコラボレーション・プラットフォームがある。Bluebeam Studioを含む、PDFに特化したさまざまなコラボレーション・プラットフォームもまた、当技術分野において知られている。
コラボレーション・セッションへの参加者数の増大に伴って、そのような参加者によって利用されるコンピューティング・デバイスの多様性も高まる。多数の競合するデバイスがさまざまな製品カテゴリにおいて使用可能であり、その選択は一般に、特定のユーザのモビリティ要件に左右される。たとえば、最もモバイル性が高く、しかも最小のフットプリント(ひいては、最小の表示および入力デバイス占有面積)のデバイスは、スマートフォンである。わずかに大きいが、より高い処理パワーを備えているのは、Apple iPad(登録商標)、Samsung Galaxyなどのような、スマートフォン・オペレーティング・システム・ベースのタブレットである。さらに大きく、従来型デスクトップおよびモバイル(ラップトップ)・コンピュータのパフォーマンス・レベルにほぼ達するのは、従来型のデスクトップ・オペレーティング・システムを動作させるMicrosoft Surface Proのような中間デバイスである。一部パフォーマンスの低下が生じることもあるが、最も要求の厳しいタスク以外のすべてのタスクは、デスクトップまたはモバイル/ラップトップコンピュータによって完了され得る。コラボレーション環境において、参加者は各々、いずれかのデバイスにより達成し得るさまざまなコンピューティングの必要性を有する場合がある。さらに、モバイル性のある、常に使用可能な作業人員と共に、所与の参加者が利用し得る特定のデバイスは、時間および位置に左右されることが多い。
デスクトップまたはモバイル/ラップトップコンピュータ、さらに中間タブレット・コンピュータ・デバイスにおいてPDFドキュメントをレンダリングすることは通常、ありふれたことである。PDFドキュメントは、PostScriptページ記述言語において説明されているように構成されたテキスト・ストリームおよびベクタおよび/またはラスタ・グラフィックス・データからなる。PDFファイル内のデータは、レンダリングのために解釈される必要があるので、ある程度の処理が要求される。この処理は、従来型のデスクトップ・コンピュータ・システムおよび同様の能力のその他のデバイス上で最小負
荷のコンピューティング・リソースによって完了されてもよい。しかし、タブレットのようなそれほどパワフルではないデバイス上で同様のタスクを遂行するために必要とされる時間は、大幅に延びる可能性があるので、ドキュメントの一部領域は、制限のあるプロセッサがそれらの部分をレンダリングしようと試みて、長期間にわたり空白になってしまうこともあり得る。
したがって、当技術分野において、複数のクライアント・デバイスにわたるドキュメント、特に共有されるドキュメントのレンダリングを最適化する必要性がある。さらに、遅延が最小となるように、比較的低い処理能力で、タブレットおよびその他のデバイス上でのドキュメントの提示を改良する必要性もある。
本開示は、さまざまなコンピュータ・デバイス上でのドキュメントのレンダリングを最適化することに向けられる。デスクトップ・コンピュータ・システム上のユーザが、共有ドキュメントにアノテーションを付けることができ、別のユーザが、タブレット・デバイスから同様にアノテーションを付けることができることが企図される。デスクトップ・コンピュータ・システムはしたがって、最適化されたドキュメントを有することになり、タブレットはしたがって、同様に最適化されたドキュメントを有することになる。
本開示の1つの実施形態は、コラボレーション・サーバ上に格納されているドキュメントを、クライアント・コンピュータ・デバイスに提示するための方法に向けられる。方法は、ドキュメントの要求を、クライアント・コンピュータ・デバイスから受信する工程を含むことができる。加えて、方法は、要求に応じて、ドキュメントをクライアント・コンピュータ・デバイスに送信する工程を含むことができる。ドキュメントは、ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義されてもよい。ドキュメントはまた、1つまたは複数の補足ドキュメント・リソース・オブジェクトを含むことができる。方法はまた、要求と要求に含まれるクライアント・コンピュータ・デバイスの識別の評価とに応じてラスタ画像データの1つまたは複数の第1のセットをクライアント・コンピュータ・デバイスに選択的に送信する工程を含むことができる。ラスタ画像データの1つまたは複数の第1のセットの各々は、ドキュメントの特定のセグメントを表すものであってもよい。
もう1つの実施形態は、複数のクライアント上でのドキュメントの提示を最適化するための方法に向けられ、ここでドキュメントはサーバ上に格納される。方法は、サーバ上でドキュメントの要求を第1のクライアントおよび第2のクライアントから受信する工程を含むことができる。要求は、第1のクライアントおよび第2のクライアントのうちのそれぞれ1つの識別を含むことができ、ドキュメントは、ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義されてもよい。ドキュメントはまた、1つまたは複数の補足ドキュメント・リソース・オブジェクトを含むことができる。
方法は、要求に応じて、ドキュメントをサーバから第1のクライアントに送信する工程をさらに含むことができる。第1のクライアントの識別の評価はまた、ドキュメントを第1のクライアントに送信するための基準としての役割も果たすことができる。要求に応じて、ドキュメントおよびラスタ画像データの1つまたは複数の第1のセットを、第2のクライアントに送信する工程があってもよい。ラスタ画像データの1つまたは複数の第1のセットの各々は、ドキュメントの特定のセグメントを表す。第2のクライアントの識別の評価はまた、この工程を実行するための基準であってもよい。
方法は、ドキュメントを第1のクライアントのディスプレイ上にレンダリングする工程をさらに含むことができる。これは、コンテンツ・データ・オブジェクトの1つまたは複数のセット、および1つまたは複数の補足ドキュメント・リソース・オブジェクトをレンダリングする工程を包含することができる。これらに沿って、第2のクライアントのディスプレイ上にラスタ画像データの1つまたは複数の第1のセットのビューを生成する工程があってもよく、その後に、ラスタ画像データの1つまたは複数の第1のセットのビューに対しドキュメントから抽出された1つまたは複数の補足ドキュメントリソースをオーバーレイする工程が続いてもよい。
もう1つの実施形態において、クライアント・コンピュータ・デバイス上にドキュメントをレンダリングするための方法が企図される。方法は、ドキュメントの要求を、クライアント・コンピュータ・デバイスから、ドキュメントが格納されているリモート・システムに送信する工程を含むことができる。次いで、クライアント・コンピュータ・デバイス上でドキュメントを受信する工程があってもよい。ドキュメントは、ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義されてもよい。加えて、ドキュメントは、各々ドキュメント位置属性を有する、1つまたは複数の補足ドキュメント・リソース・オブジェクトを含むことができる。方法はまた、クライアント・コンピュータ・デバイス上でラスタ画像データの1つまたは複数の第1のセットを受信する工程を含むことができる。ラスタ画像データの1つまたは複数の第1のセットの各々は、ドキュメントの特定のセグメントを表すものであり、第1の事前定義された解像度を有するものであってもよい。1つまたは複数の補足ドキュメント・リソース・オブジェクトをドキュメントから抽出する工程があってもよい。さらに、クライアント・コンピュータ・デバイスのディスプレイ上にラスタ画像データの1つまたは複数の第1のセットのビューを生成して、ラスタ画像データの1つまたは複数の第1のセットのビューに対しドキュメントから抽出された1つまたは複数の補足ドキュメント・リソース・オブジェクトをオーバーレイする工程があってもよい。1つまたは複数の補足データ・リソース・オブジェクトは、その対応するドキュメント位置属性に従って配置されてもよい。
これらの方法は、クライアント・コンピュータ・デバイスおよびリモート・システムによって実行可能であり、非一時的プログラム記憶媒体において有形に具現される命令の1つまたは複数のプログラムとして実施されてもよい。本発明は、添付の図面と併せて以下の詳細な説明を参照することにより、深く理解されよう。
本明細書において開示されるさまざまな実施形態のこれらおよびその他の特徴および利点は、以下の説明および図面に関してさらに深く理解されるであろう。
コラボレーション・プラットフォームおよび1つまたは複数のクライアント・コンピュータ・デバイスを含む例示的な環境を示すブロック図。 クライアント・コンピュータ・デバイスで実施される、クライアント・コンピュータ・デバイス上にドキュメントをレンダリングするための方法の1つの実施形態を示すフローチャート。 コラボレーション・プラットフォーム上で実施される、クライアント・コンピュータ・デバイスにドキュメントを提示するための方法の実施形態を示すフローチャート。 本開示の1つの実施形態によるラスタ画像データのセットへのドキュメントのセグメンテーションを示す図。 本開示の1つの実施形態によるラスタ画像データのセットへのドキュメントのセグメンテーションを示す図。 本開示の1つの実施形態によるラスタ画像データのセットへのドキュメントのセグメンテーションを示す図。 1つの事前定義された解像度においてラスタ化されたドキュメントの例を示す図。 もう1つの事前定義された解像度においてラスタ化されたドキュメントのもう1つの例を示す図。 ラスタ画像データのビューに対しオーバーレイされたドキュメントからの補足ドキュメント・リソース・オブジェクトのレイヤの例を示す図。
同一の要素を指し示すために、図面および発明を実施するための形態全体を通じて共通の参照番号が使用される。
本開示は、さまざまなクライアント・デバイス上での共有ドキュメントの最適化されたレンダリングに向けられる。この目的のために、クライアント・コンピュータ・デバイス上でドキュメントをレンダリングし、コラボレーション・プラットフォーム上に格納されているドキュメントをクライアント・コンピュータ・デバイスに提示し、複数のクライアント・コンピュータ・デバイス上でのドキュメントの提示を最適化するためのさまざまな方法が企図される。これらの方法が、非一時的データ記憶媒体に格納され得る1つまたは複数のコンピュータ実行可能命令として実施されてもよいことを理解されたい。
添付の図面に関連して以下に記載される発明を実施するための形態は、これらの方法の特定の実施形態の説明として意図されており、開発または利用され得る形態のみを提示することを意図されるものではない。説明は、例示される実施形態に関連してさまざまな機能を記載するが、同一または等価の機能が、本開示の範囲内に包含されると意図されるさまざまな実施形態によって達成され得ることを理解されたい。上部および下部、第1および第2などのような関係語の使用が、そのようなエンティティ間の任意の実際のそのような関係または順序を必ずしも要求または暗示することなく、あるエンティティと別のエンティティを区別するためにのみ使用されることをさらに理解されたい。
図1のブロック図は、ドキュメントの最適化されたレンダリングのさまざまな実施形態が実施され得る例示的な環境10を示す。ネットワーク16を介して1つまたは複数のクライアント・コンピュータ・デバイス14a〜14bと通信するコラボレーション・プラットフォーム12がある。ネットワーク16は、リモートに位置するクライアント・コンピュータ・デバイス14と相互接続し、したがってインターネットまたはその他のタイプのワイドエリアネットワークであってもよいことが企図されるが、ローカルエリアの実施態様もまた企図される。したがって、ネットワーク接続16a〜16cは、伝送制御プロトコル(TCP)コンポーネントおよびユーザ・データグラム・プロトコル(UDP)・コンポーネントを備えるインターネット・プロトコル・スイート準拠であってもよい。伴うサービスの必要性に応じて、TCP接続を通じて可能なデータの(たとえ遅くとも)より信頼性の高い順序付けられた配信のほうがより適切であってもよいか、またはUDP接続を通じてデータのより高速であるが信頼性は高くない配信のほうがより適切であってもよい。クライアント・コンピュータ・デバイス14からコラボレーション・プラットフォーム12へ、およびその逆に、データを転送するためにネットワーク・モダリティが利用され得るが、プロトコル選択が特定の必要性に合わせて調整される場合、特定の改良が実現され得ることが理解されよう。これらに沿って、特定のネットワーク・トポロジがほんの一例として提示されるが、任意の他のタイプの構成が置き換えられてもよい。
コラボレーション・プラットフォーム12は、コラボレーション・サーバ18、ドキュメント・リポジトリ20、ラスタ画像処理サブシステム22、およびラスタ画像リポジト
リ24を含む複数のコンポーネントに分離されてもよい。これらの部品の各々の機能性は、以下においてさらに詳細に説明される。1つの実施形態によれば、コラボレーション・プラットフォーム12は、Bluebeam Studio製品であってもよい。コラボレーション・プラットフォーム12のさまざまな部品のすべては、企図される方法の命令を実行することができるプロセッサ、ならびに命令およびその他の関連データを格納するためのメモリを有する従来型サーバ・コンピュータ・システム26上で実施されてもよい。一部の実施形態においてネットワーク16を介してクライアント・コンピュータ・デバイス14と通信するその機能性の一部として、コラボレーション・サーバ18は、市販のアプリケーションを含むWebサーバ、またはワシントン州レドモンドのMicrosoft CorporationのWINDOWS(登録商標) Communication Foundation(WCF)のようなWebサービス・コンポーネントであってもよい。
あるいは、コラボレーション・サーバ18およびラスタ画像処理サブシステム22は、別個のハードウェア・デバイス上で実施されてもよく、データベース/データ・リポジトリ24は、さらにもう1つの別個のハードウェア・デバイス上で実施されてもよい。説明される分割は、ほんの一例として提示されており、限定的なものではなく、任意の適切なハードウェア/機能性の実施が、本開示の範囲を逸脱することなく置き換えられてもよいことが、当業者には理解されるであろう。この点において、コラボレーション・プラットフォーム12とコラボレーション・サーバ18は、同義的に参照されてもよい。
クライアント・コンピュータ・デバイス14aの第1の例示的な実施形態は、概してシステム・ユニット28、表示デバイス30、およびさまざまな入力デバイスからなる従来型デスクトップ・コンピュータ・システム27であってもよい。表示デバイス30は、システム・ユニット28によって実行されるデータ処理操作からの出力をグラフィカルに表示し、システム・ユニット28は、中央演算処理装置、ランダム・アクセスメモリ(RAM)、ハードディスク・ドライブなどを含むものと考えられる。キーボード32およびマウス34のようなデバイスは、データ処理操作に入力を提供するために利用され、周辺インタフェース・ポートを介してシステム・ユニット28に接続される。プリンター、マイクロフォン、スピーカなどを含むその他の入力および出力デバイスは、システム・ユニット28に接続されてもよい。
第1のクライアント・コンピュータ・デバイス14aは、ワシントン州レドモンドのMicrosoft CorporationのWINDOWS(登録商標)、カリフォルニア州クパティーノのApple、Inc.のMAC OS、X−Windowsウィンドウ・システムを備えるUNIX(登録商標)のさまざまなバージョンなどのような、グラフィカル・ユーザ・インタフェース(GUI)を有する任意のオペレーティング・システムを利用することができる。システム・ユニット28は、1つまたは複数のコンピュータ・プログラムを実行し、その結果は表示デバイス30上に表示される。一般に、オペレーティング・システムおよびコンピュータ・プログラムは、たとえば、固定および/または取り外し可能データ記憶デバイスの1つまたは複数のような、コンピュータ可読媒体に有形に具現される。オペレーティング・システムおよびコンピュータ・プログラムは共に、中央演算処理装置による実行のために前述のデータ記憶デバイスからRAMにロードされてもよい。コンピュータ・プログラムは、中央演算処理装置によって読み取られ実行されるとき、中央演算処理装置に、本開示において記載されるさまざまな実施形態の工程または特徴(フィーチャ)を遂行または実行させる命令を備えることができる。
ユーザは、第1のクライアント・コンピュータ・デバイス14aと、具体的には、マウス34を介して、表示デバイス30上に表示されるグラフィックスと対話することができる。表示デバイス30上に生成されるカーソルの動きは、マウス34の動きと結び付けら
れ、さらなる対話はマウスボタンからの入力と共にもたらされる。キーボード32からの入力もまた、クライアント・コンピュータ・デバイス14との対話をもたらす。
ネットワーク接続16bを確立して、ネットワーク16を介して接続される他のシステムと通信するために、第1のクライアント・コンピュータ・デバイス14aは、たとえば前述のネットワーキング規格に準拠するさまざまなデータ通信モダリティを含むものと理解される。さらに詳細には、第1のクライアント・コンピュータ・デバイス14aは、有線接続のためのイーサネット(登録商標)・モジュール、および/または無線接続のためのWLAN(無線LAN)モジュールを含むことができる。
クライアント・コンピュータ・デバイス14bのもう1つの第2の例示的な実施形態は、一体型タッチ入力ディスプレイ38を含むタブレット36であってもよい。デスクトップ・コンピュータ・システム27と同様に、タブレット36は、中央演算処理装置およびメモリ、ならびにモビリティの理由により通常は無線モダリティに制限されるネットワーク接続コンポーネントを含む。タッチ入力ディスプレイ38は、中央プロセッサによって実行される処理操作からの出力をグラフィカルに表示し、データ処理操作において利用される入力を受け入れる。一部のタブレット36は、WINDOWS(登録商標)のようなデスクトップ・オペレーティング・システムを利用することができるが、多くの商用実施態様において、タブレット・フォームファクタに最適化されるAndroid(登録商標)またはiOSのような専用モバイル・オペレーティング・システムのほうがより一般的である。タブレット36は、本開示のさまざまな方法を実施するためにプロセッサによって実行される実行可能命令からなるコンピュータ・プログラム(アプリ(app)と称される)をロードされてもよい。
前述のクライアント・コンピュータ・デバイス14a、14bは、本発明の態様を実施するために適切な例示的な装置を表すに過ぎない。そのようなものとして、クライアント・コンピュータ・デバイス14は、多くのさまざまな構成およびアーキテクチャを有することができ、任意のそのような構成またはアーキテクチャは容易に置き換えられてもよい。
本開示は、複数のクライアント・コンピュータ・デバイス14上での共有ドキュメント40の最適化されたレンダリングを企図する。1つの例示的な実施形態によれば、ドキュメント40は、テキスト・ストリーム、フォント、グラフィックス(ベクタおよびラスタの両方)、およびそのようなテキストおよびグラフィックスの提示を指図するページ記述/レイアウト情報を含むポータブル・ドキュメント・フォーマット(PDF)ファイル形式である。このデータは、クライアント・コンピュータ・デバイス14に視覚的にレンダリングされ、概してコンテンツ・データ・オブジェクト42と称され、特定の位置における、特定のサイズのメモリの連続ブロックに対応する概念的エンティティであると理解される。
ドキュメント40はまた、アノテーション、ブックマーク、ハイパーリンク、サムネイル、および独立したドキュメントの一部ではないのでコンテンツ・データ・オブジェクト42ではないその他の要素のような基礎となるドキュメント40に関連付けられている補足ドキュメント・リソース・オブジェクト44を含むことができる。アノテーションは、レンダリングされる時にその視覚的特性を定義する1つまたは複数のプロパティによって定義されてもよく、点、線、楕円、多角形などのような幾何プリミティブ、およびコールアウト・ボックスのような専用の要素を含むことができる。アノテーションのフィーチャをさらに定義するため、大きさ、色、線幅、位置決め座標、およびそのアノテーション・タイプに固有のその他のものなどさまざまなパラメータ属性が関連付けられてもよい。ブックマークは、ドキュメント内、またはドキュメントもしくは別のドキュメントのページ
内の特定の位置を参照するものと理解される。ハイパーリンクは、他のドキュメントまたはリソースを参照するものと理解され、そのアクティブ化は、参照先のドキュメントがアクセスされるようにすることができる。
ドキュメント40の最適化されたレンダリングの詳細は、PDFドキュメントに関して説明される。しかし、開示される特徴が、ワードプロセッシング・ドキュメント、スプレッドシート、写真、グラフィックス・レイアウト、3次元モデル、ビデオ、医療X線画像などのグラフィカル・コンテンツのようなその他のドキュメントに採用され得ることが理解されよう。
クライアント・コンピュータ・デバイス14からドキュメント40を閲覧して加工することは通常、そこで動作している別個のアプリケーション46を伴う。アプリケーション46は、それが動作しているプラットフォーム/オペレーティング・システムに固有であるので、第1のクライアント・コンピュータ・デバイス14aには第1のアプリケーション46aがあり、第2のクライアント・コンピュータ・デバイス14bには第2のアプリケーション46bがある。デスクトップコンピュータおよびタブレット向けの多種多様なPDF閲覧および編集アプリケーションが市販されており、本開示の特徴は、そこに容易に組み入れられてもよい。しかし、コラボレーション・プラットフォーム12と直接インタフェースを行うことができる固有のアプリケーション46もまた、利用されてもよい。アプリケーション46は、コラボレーション・サーバ18から規定されたドキュメント40にアクセスし、それにより、ドキュメント・リポジトリ20からファイルを取り出すことができる。
上記で示されるように、PDFドキュメント40は、画面サイズおよび解像度に非常に多くの差異があるので、ほとんどの場合、意図されたとおりに表示されるようにあるレベルの処理が要求されるデータからなる。アプリケーション46のレンダリング・エンジンは、コンテンツ・データ・オブジェクト42および補足ドキュメント・リソース・オブジェクト44を解釈して、すべてのクライアント・プラットフォームにわたり整合性のある方法でドキュメント40の表示を生成する。この処理は、クライアント・コンピュータ・デバイス14に応じて、リソース集約的になり得ることが理解されよう。通常のデスクトップ・コンピュータ・システム27は、リアルタイムレンダリングが可能であるように十分な処理パワーを有するが、これはタブレット36の場合にはあてはまらないこともある。それほど多くのコンピューティング・パワーおよびメモリ・リソースを備えていなければ、ドキュメント40、特に多くのベクタ・グラフィックスおよび複雑なレイアウトを含むようなドキュメントをレンダリングすることで、タブレット36および同様の能力を持つ他のデバイスは、理想的なパフォーマンスには至らない場合もある。したがって、本開示は、処理パワーが低減されたクライアント・コンピュータ・デバイス14上でラスタ化表現48またはドキュメント40のビットマップのシームレスな配信およびレンダリングを企図する。当業者によって理解されるように、ドキュメント40のラスタ化表現48のレンダリングは、それほどリソース集約的でなく、より低速な処理装置を持つタブレット36のようなデバイスであっても、リアルタイムで達成され得る。
上記で言及されるように、クライアント・コンピュータ・デバイス14上で実施される1つの実施形態、およびコラボレーション・プラットフォーム12上で実施されるもう1つの実施形態を含む、ドキュメント40のレンダリングを最適化するためのさまざまな方法が企図される。ただし、本開示が、これらの実施形態に限定されることは意図されていないことが理解されよう。クライアント・コンピュータ・デバイス14上で実施される方法は、そこで実行可能であり、それにより可読な非一時的プログラム記憶媒体に格納される命令の1つまたは複数のプログラムとして具現されてもよい。同様に、コラボレーション・プラットフォーム12/コラボレーション・サーバ18上で実施される方法は、そこ
で実行可能であり、それにより可読である非一時的プログラム記憶媒体に格納される命令の1つまたは複数のプログラムとして具現されてもよい。
図2のフローチャートを参照すると、クライアント・コンピュータ・デバイス14上、詳細には第2のクライアント・コンピュータ・デバイス14bまたはタブレット36上でドキュメント40をレンダリングするための方法は、工程200、つまりドキュメント40の要求を、概してリモート・システムと称されるコラボレーション・プラットフォーム12に送信する工程で開始する。要求は、具体的にはコラボレーション・サーバ18に対して行われてもよく、コラボレーション・サーバ18はドキュメント・リポジトリ20に格納されているドキュメント40を管理する。ドキュメント40の要求は、ユーザがコラボレーション・プラットフォーム12に最初にログインした後、ユーザの介入なしで行われてもよい。図3のフローチャートは、ドキュメント40を提示するための方法を例示し、要求をクライアント・コンピュータ・デバイス14から受信する対となる工程300を含むことができる。
要求は、送出元クライアント・コンピュータ・デバイス14の指定を含むことができる。要求が第1のクライアント・コンピュータ・デバイス14aから送出される場合、指定は、過度の負荷を負わせることなく同ドキュメントをレンダリングすることができるので、ドキュメント40のみが必要とされるコラボレーション・サーバ18を示すことができる。要求が、実際に制限されている第2のクライアント・コンピュータ・デバイス14bから送出される場合、これは、コンテンツ・データ・オブジェクト42に対して低減された処理/レンダリング能力を有するものとして指定されてもよい。これは、たとえばラスタ化表現48など、追加のデータもまた要求されていることをコラボレーション・サーバ18に示すものと想定される。結果としてラスタ化表現48が提供される発信元クライアント・コンピュータ・デバイス14の指定から、制限されたデバイス能力が暗示される必要はないことが理解されよう。低減された処理パワーにもかかわらずレンダリング時間を短縮する以外の目的でラスタ化表現48が要求される実施形態は、明示的に企図される。
要求を受信すると、その要求に応じて、工程310において、コラボレーション・サーバ18は、要求されたドキュメント40をクライアント・コンピュータ・デバイス14に送信する。これ以降、図2のフローチャートに戻って参照すると、クライアント・コンピュータ・デバイス14上でドキュメント40を受信する対となる工程210がある。ドキュメント40が補足ドキュメント・リソース・オブジェクト44を含むので、たとえクライアント・コンピュータ・デバイス14がコンテンツ・データ・オブジェクト42を最終的に使用しないかまたは必要としない場合であっても、なお送信される。
ドキュメント40を送信/受信する工程と同時に、工程の後に、または工程の前に、図3のフローチャートに図示されたドキュメント40を提示するための方法は、ラスタ化表現48をクライアント・コンピュータ・システム14に選択的に送信する工程320を含む。したがって、ドキュメント40を送信/受信する工程と、ラスタ化表現48を送信/受信する工程は、相互に独立しているものと理解される。1つの実施形態は、図1に示されるように、ラスタ化表現48が、ドキュメント・リポジトリ20とは別個のラスタ画像リポジトリ24上に格納されていると企図する。この場合、クライアント・コンピュータ・デバイス14は、ドキュメント40を要求し、次いでコラボレーション・サーバ18は、ラスタ化表現48およびドキュメント40が要求されていることを認識して、この要求をラスタ画像処理サブシステム22に中継する。要求されたラスタ化表現48は、ラスタ画像リポジトリ24から取り出され、クライアント・コンピュータ・デバイス14に送信するためにコラボレーション・サーバ18に渡される。これは、ラスタ化表現48がクライアント・コンピュータ・デバイス14に提供され得る唯一の可能な方法である。たとえば、ドキュメント40およびそのラスタ化表現48を共に単一のデータ・ストレージ・シ
ステム上に格納することも可能であってもよい。当業者は、そのような代替的構成を容易に認識するであろうから、したがって本開示の範囲内に含まれるものと見なされる。
図2のフローチャートに示されるドキュメント40をレンダリングするための方法において、ラスタ化表現48を受信する対となる工程220がある。さらに明らかになるように、ラスタ化表現48はまた、ラスタ画像データの1つまたは複数の第1のセットと称されてもよい。ラスタ画像データの第1のセットの各々は、ドキュメント40の特定のセグメントを表すものであり、第1の事前定義された解像度を有するものと理解される。
ビットマップをレンダリングすることに関連する比較的低い処理パワー要件により、タブレット36でのその提示は、遅延が低減され、さらに滑らかな視覚化および対話による大幅なパフォーマンスの改善を達成すると企図される。さらに、デスクトップ・コンピュータ・システム27は、パフォーマンスの低下を生じることなくドキュメント40を十分にレンダリングすることができるので、ラスタ化表現48は不要であると考えられる。ラスタ化表現48を送信するかどうかの決定は、上記で説明されるように、ドキュメント40の要求に含まれる特定のクライアント・コンピュータ・デバイス14の識別に基づいて、コラボレーション・サーバ18によって行われてもよい。言い換えれば、コラボレーション・サーバ18/コラボレーション・プラットフォーム12は、十分なレンダリング能力を持つクライアント・コンピュータ・デバイス14aがいつドキュメント40を要求したか、および十分なレンダリング能力を持たないクライアント・コンピュータ・デバイス14bがいつ同様のことを行ったかを認識する。後者の場合、コラボレーション・サーバ18は、さらなるユーザの介入を伴うことなく自動的に、ラスタ化表現48をラスタ画像リポジトリ24から取り出す。
図4Aは、線、弧などのような、多数のベクタ・グラフィック要素を含むドキュメント40の例を例示する。上記で示されているように、ドキュメント40の1つのページから、ラスタ画像データの複数のセットが生成され、各セットはページの異なるセクションに対応する。図4Bは、1つの実施形態において、ページが、第1のサブセクション50a、第2のサブセクション50b、第3のサブセクション50c、および第4のサブセクション50dを含む4つの別個のサブセクションに分離されることを示す。これらのサブセクションの各々は、ラスタ画像データのセットとして称されているが、タイルと称されてもよい。タイルの1つのセット、つまりドキュメント40のラスタ化表現48は、第1の解像度において生成される。これは、パニングおよびその他の対話が、その解像度またはズームレベルにおいて遅延を生じることなくページの全体にわたり行われるようになっているからである。タイルのもう1つのセットは、ページの全体のより良好な概観をもたらすことができる異なる第2の解像度において生成されてもよい。
タイルの各々は、ページ・ピクセル幅およびページ・ピクセル高さの決定に基づいて生成されてもよい。さらに詳細には、任意の計測単位が利用されてもよいが、たとえば画面にレンダリングされるドキュメントについて72DPIなど、ドキュメントの標準ドット/インチ(DPI)設定で乗算されたインチ単位のページ幅は、ページ・ピクセル幅に対応する。さらに、標準72DPIで乗算されたページ高さは、ページ・ピクセル高さに対応する。たとえば、91.44cm(36インチ)×60.96cm(24インチ)のページでは、ページ・ピクセル幅は2592であり、ページ・ピクセル高さは1728である。ページ・ピクセル幅またはページ・ピクセル高さのより大きいほうの値は、ページ・ピクセル寸法であると理解される。例を続けると、例示のページ・ピクセル幅の2592のほうが大きいので、これはページ・ピクセル寸法として確立される。次に、スケーリング・ファクタは、ページ・ピクセル寸法およびあらかじめ決定されているタイル・ピクセル寸法に基づいて決定される。タイル・ピクセル寸法は、ターゲットの表示デバイスに最適化された任意の値であってもよいが、1つの例示の実施形態において、1024×10
24ピクセルである。スケーリング・ファクタは、ピクセル寸法をページ・ピクセル寸法で除算した値から求められ、例示されている例においては、0.395である。
このページ・ピクセル寸法でページをラスタ化することで、たとえば1024×1024ピクセルの、タイル・ピクセル寸法幅および高さの1つのタイル内に収まる、ドキュメント40のページ全体をもたらす。このスケーリング/ラスタ化の例は、図5に示される。コンテンツ領域の実際の幅は、1024×683ピクセルであると理解される。これは、1×のズームタイル52を表すものと理解される。したがって、第1の事前定義された解像度は、ラスタ画像データの1つまたは複数の第1のセットのうちの1つをスケーリングすることに基づいてもよい。
4×ズーム・ファクタもまた、そこから適切なタイルが生成されるように、設定されてもよい。これは単に、前述のページ・ピクセル寸法の乗算、たとえば0.395×4、を伴い、これは4096×2732ピクセルの単一画像をもたらす。次いで、この画像は、図6に示されるように、個々の1024×1024ピクセル・タイルに分離される。1つの実施形態において、ページは、最大でも16のタイルに分割されるが、これは一例に過ぎず、限定的なものではない。例をさらに続けると、画像の寸法に基づいて、横方向に4つのタイルおよび下方向に3つのタイルで合計12のタイル54があり、その各タイルはラスタ画像データの前述の第1のセットに対応する。ラスタ画像データのこの第2のセットは、第1の事前定義された解像度とは異なる第2の事前定義された解像度に基づいて生成されてもよい。
この特定の解像度またはズームレベルは、後段においてさらに詳細に説明されるように、ドキュメントのページの実際のサイズに基づく。ドキュメント40が、図4Cに示されるように、そのサイズが大きいためさらに分割される必要がある程度まで、サブセクション50a〜dは、第1のサブセクション50a内のサブセクション50a−1、50a−2、50a−3、および50a−4を含む、その追加のサブセクションにさらに分割されてもよい。
1つの例示的な実施形態において、ドキュメント40のラスタ化表現48、つまり、ラスタ画像データまたはタイルのセットは、したがってクライアント・コンピュータ・デバイス14からの要求に先だって生成される。これは、そのようなラスタ化表現48を必要とする第2のクライアント・コンピュータ・デバイス14bによってアクセスされることが知られているドキュメント40の定期的バッチ処理を含むことができる。能力の高くない、第2のクライアント・コンピュータ・デバイス14bが過去にドキュメント40にアクセスしたというフラグを追加することを含む、これを追跡するさまざまなモダリティが企図される。タブレット36からの初期アクセス時に、コラボレーション・サーバ18は、ラスタ化表現48を効果的に準備するラスタ画像処理サブシステム22に要求を生成することができる。
図2のフローチャートに戻ると、第2のクライアント・コンピュータ・デバイス14bがドキュメント40およびラスタ化表現48を受信すると、方法は、ドキュメント40から、たとえばアノテーションなどの補足ドキュメント・リソース・オブジェクト44を抽出する工程230を続行することができる。加えて、工程240によれば、ラスタ画像データの1つまたは複数の第1のセット、つまりドキュメント40のラスタ化表現48は、第2のクライアント・コンピュータ・デバイス14bのタッチ入力ディスプレイ38上に生成される。
コンテンツ・データ・オブジェクト42は、ラスタ化表現48が受信されている場合には、ロードまたはレンダリングされない。第2のクライアント・コンピュータ・デバイス
14b上で動作しているアプリケーション、たとえばタブレット36は、ラスタ化表現48が受信される場合に、そのディスプレイが、パフォーマンスに損失を与えてドキュメント40の・データをレンダリングしようと試みるのではなく、デフォルトで進行することを認識するように構成されてもよい。工程250によれば、ドキュメント40からの1つまたは複数の補足ドキュメント・リソース・オブジェクト44は、ラスタ化表現48のビューに対しオーバーレイされる。図7に示されるように、ビューは、基本ラスタ化表現48を含み、その上に、補足ドキュメント・リソース・オブジェクト44の別のレイヤがある。補足ドキュメント・リソース・オブジェクト44の各々の配置は、座標およびレイヤ指定のような、その対応するドキュメント位置属性に従うものと理解される。
クライアント・コンピュータ・デバイス14上でドキュメント40を提示するさまざまな特徴を考慮してきたが、これ以降、編集および更新機能に関する追加の特徴が説明される。コラボレーション・プラットフォームの実施形態によれば、アノテーションが追加される場合、たとえば補足ドキュメント・リソース・オブジェクト44がクライアント・コンピュータ・デバイス14の1つからドキュメント40に付加される場合、基礎となるドキュメントが何らかの方法で修正される場合、たとえばコンテンツ・データ・オブジェクト42が追加、削除、または改訂される場合、もしくはさらに一般的には、ドキュメント40の任意の態様が変更される場合、その変更は最初にドキュメント40のローカルバージョンに反映され、次いで、コラボレーション・プラットフォームを介してリモート・クライアント・コンピュータ・デバイス14上にあるその他のバージョンに伝搬される。
対応するラスタ化表現48に関して、コラボレーション・サーバ18がレンダリング能力の低減された第2のクライアント・コンピュータ・デバイス14bによるドキュメント40への以前のアクセスを追跡した場合、ラスタ化表現48の更新済みバージョンは、上記で説明される方法と同じ方法で生成されてもよい。一部の実施形態において、ドキュメント40の更新はプッシュされず、クライアント側がプル操作で更新を要求する場合に限り伝搬される。しかし、クライアント・コンピュータ・デバイス14がアクティブなコラボレーション・セッションに参加している一部の例では、更新を、その対応するラスタ化表現48と共にドキュメント40にプッシュすることが可能である。
ドキュメント・レベルの修正がタブレット36、つまりラスタ化表現48を使用するクライアント・コンピュータ・デバイス14上で行われる場合、付随的なパフォーマンスの低下を伴うが、ドキュメント40のレンダリングに切替えることが可能である。これらの修正は、取り出され表示されたラスタ化表現48を古いものにする、ページ回転、ページ挿入、ページ並び替え、ページ削除、レイヤおよびマークアップのフラット化などを含む。加えて、クライアント・コンピュータ・デバイス14が、コラボレーション・プラットフォーム18からラスタ化表現48にアクセスすることができない場合、同様の切替えが行われる。遷移は、シームレスであると理解され、ユーザの介入を必要としない。実際、ユーザは、遷移について通知されることは全くない。いかなる場合でも、ドキュメント40の多くの最新の有効なバージョンの表示は、保証されてもよい。
本明細書において示される事項は、例示的な説明のための一例に過ぎず、本開示に記載されるさまざまな実施形態の原理および概念的態様の最も有用かつ容易に理解された説明であると見られているものを提供するために提示される。この点において、さまざまな実施形態のさまざまな特徴、それらが実際にどのように実施され得るかを当業者に明らかにする図面と共に記述された説明の基本的な理解のために必要である以上の詳細を示すために、いかなる試みも行われてはならない。

Claims (29)

  1. コラボレーション・サーバ上に格納されたドキュメントを、クライアント・コンピュータ・デバイスに提示するための方法であって、
    前記ドキュメントの要求を、前記クライアント・コンピュータ・デバイスから受信する要求受信工程と、
    前記要求に応じて、前記ドキュメントを前記クライアント・コンピュータ・デバイスに送信する工程であって、前記ドキュメントは、前記ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義され、1つまたは複数の補足ドキュメント・リソース・オブジェクトを含む、工程と、
    前記要求と前記要求に含まれる前記クライアント・コンピュータ・デバイスの識別の評価とに応じてラスタ画像データの1つまたは複数の第1のセットを前記クライアント・コンピュータ・デバイスに選択的に送信する工程であって、ラスタ画像データの前記1つまたは複数の第1のセットの各々は前記ドキュメントのうちの特定のセグメントを表す、工程と、を備える方法。
  2. 前記要求は、前記クライアント・コンピュータ・デバイスを前記コンテンツ・データ・オブジェクトに対して低減されたレンダリング能力を有するものとする指定を含む、請求項1に記載の方法。
  3. ラスタ画像データの前記1つまたは複数の第1のセットは、前記要求受信工程より前に生成される、請求項1に記載の方法。
  4. ラスタ画像データの前記1つまたは複数の第1のセットは、前記コラボレーション・サーバの第1のデータ・リポジトリに格納され、
    前記ドキュメントは、前記第1のデータ・リポジトリとは異なる前記コラボレーション・サーバの第2のデータ・リポジトリから送信される、請求項1に記載の方法。
  5. ラスタ画像データの前記1つまたは複数の第1のセットおよび前記ドキュメントは、前記コラボレーション・サーバ上に格納される、請求項1に記載の方法。
  6. ラスタ画像データの前記1つまたは複数の第1のセットは、ラスタ画像データの前記1つまたは複数の第1のセットのうちの1つを前記クライアント・コンピュータ・デバイス上の表示にスケーリングすることに基づく第1の事前定義された解像度を有する、請求項1に記載の方法。
  7. ラスタ画像データの1つまたは複数の第2のセットを前記クライアント・コンピュータ・デバイスに送信する工程であって、ラスタ画像データの前記1つまたは複数の第2のセットの各々は、前記ドキュメントの特定のセグメントを表し、ラスタ画像データの前記1つまたは複数の第1のセットの前記第1の事前定義された解像度とは異なる第2の事前定義された解像度を有する、工程をさらに備える、請求項6に記載の方法。
  8. 前記第2の事前定義された解像度は、前記ドキュメントの1つのページのラスタ画像データの前記1つまたは複数の第2のセットの各々をクライアント・コンピュータ・デバイス上の前記表示にスケーリングすることに基づく、請求項7に記載の方法。
  9. 前記ドキュメントに対する更新を前記クライアント・コンピュータ・デバイスから受信する工程と、
    前記更新を前記コラボレーション・サーバ上に格納されている前記ドキュメントに適用する工程と、
    前記コラボレーション・サーバ上のラスタ画像データの1つまたは複数の更新済みの第1のセットを生成する工程であり、ラスタ画像データの更新済みの前記1つまたは複数の第1のセットの各々は、適用された前記更新を伴う前記ドキュメントの更新済みバージョンの特定のセグメントを表す、工程と、をさらに備える請求項1に記載の方法。
  10. ラスタ画像データの前記1つまたは複数の更新済みの第1のセットを前記クライアント・コンピュータ・デバイスに送信する工程をさらに備える、請求項9に記載の方法。
  11. ラスタ画像データの前記1つまたは複数の更新済みの第1のセットは、前記クライアント・コンピュータ・デバイスからの要求に応じて前記クライアント・コンピュータ・デバイスに対し送信される請求項10に記載の方法。
  12. 複数のクライアント上でのドキュメントの提示を最適化するための方法であって、前記ドキュメントはサーバ上に格納されており、
    前記サーバ上の前記ドキュメントの要求を第1のクライアントおよび第2のクライアントから受信する工程であって、前記要求は、前記第1のクライアントおよび前記第2のクライアントのそれぞれの識別を含み、前記ドキュメントは、前記ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義され、1つまたは複数の補足ドキュメント・リソース・オブジェクトを含む、工程と、
    前記サーバから前記第1のクライアントに、前記要求に応じて、その前記識別の評価に基づいて、前記ドキュメントを送信する工程と、
    前記サーバから前記第2のクライアントに、前記要求に応じて、その前記識別の評価に基づいて、前記ドキュメントおよびラスタ画像データの1つまたは複数の第1のセットを送信する工程であって、ラスタ画像データの前記1つまたは複数の第1のセットの各々は、前記ドキュメントの特定のセグメントを表す、工程と、
    コンテンツ・データ・オブジェクトの前記1つまたは複数のセットと1つまたは複数の補足ドキュメント・リソース・オブジェクトとを含む前記第1のクライアントの表示上で前記ドキュメントをレンダリングする工程と、
    ラスタ画像データの前記1つまたは複数の第1のセットのビューを前記第2のクライアントの表示上に生成する工程と、
    前記ドキュメントから抽出された前記1つまたは複数の補足ドキュメント・リソース・オブジェクトを、ラスタ画像データの前記1つまたは複数の第1のセットの前記ビューに対しオーバーレイする工程と、を備える方法。
  13. 前記第1のクライアントの前記識別は、前記コンテンツ・データ・オブジェクトの低減されていない能力を指定し、
    前記第2のクライアントの前記識別は、前記コンテンツ・データ・オブジェクトの低減されたレンダリング能力を指定する、請求項12に記載の方法。
  14. 前記ドキュメントに対する更新を前記第1のクライアントから受信する工程と、
    前記更新を前記サーバ上に格納されている前記ドキュメントに適用する工程と、をさらに備える請求項12に記載の方法。
  15. 前記ドキュメントに関連付けて前記第2のクライアントの前記識別を格納する工程と、
    前記ドキュメントに関連付けられている前記第2のクライアントの前記識別の評価に基づいて、前記サーバ上のラスタ画像データの1つまたは複数の更新済みの第1のセットを生成する工程であって、ラスタ画像データの前記1つまたは複数の更新済みの第1のセットの各々は、適用された前記更新を伴う前記ドキュメントの更新済みバージョンの特定のセグメントを表す、工程と、をさらに備える請求項14に記載の方法。
  16. ラスタ画像データの前記1つまたは複数の更新済みの第1のセットを前記第2のクライアントに送信する工程と、
    ラスタ画像データの前記1つまたは複数の更新済みの第1のセットのビューを前記第2のクライアントの表示上に生成する工程と、をさらに備える請求項14に記載の方法。
  17. クライアント・コンピュータ・デバイス上にドキュメントをレンダリングするための方法であって、
    前記ドキュメントの要求を、前記クライアント・コンピュータ・デバイスから、前記ドキュメントが格納されているリモート・システムに送信する工程であって、前記要求は、前記クライアント・コンピュータ・デバイスの識別を含む、工程と、
    前記クライアント・コンピュータ・デバイス上で前記ドキュメントを受信する工程であって、前記ドキュメントは、前記ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義され、ドキュメント位置属性を各々有する1つまたは複数の補足ドキュメント・リソース・オブジェクトを含む、工程と、
    ラスタ画像データの1つまたは複数の第1のセットを前記クライアント・コンピュータ・デバイス上で受信する工程であって、ラスタ画像データの前記1つまたは複数の第1のセットの各々は前記ドキュメントのうちの特定のセグメントを表し、第1の事前定義された解像度を有し、ラスタ画像データの前記1つまたは複数の第1のセットは、前記クライアント・コンピュータ・デバイスの前記識別の評価に少なくとも部分的に基づいて受信される、工程と、
    前記1つまたは複数の補足ドキュメント・リソース・オブジェクトを前記ドキュメントから抽出する工程と、
    ラスタ画像データの前記1つまたは複数の第1のセットのビューを前記クライアント・コンピュータ・デバイスの表示上に生成するビュー生成工程と、
    前記ドキュメントから抽出された前記1つまたは複数の補足ドキュメント・リソース・オブジェクトをラスタ画像データの前記1つまたは複数の第1のセットの前記ビューに対しオーバーレイする工程であって、前記1つまたは複数の補足データ・リソース・オブジェクトは、その対応するドキュメント位置属性にしたがって配置される、工程と、を備える方法。
  18. 前記識別は、前記クライアント・コンピュータ・デバイスを前記コンテンツ・データ・オブジェクトに対して低減されたレンダリング能力を有するものと指定する請求項17に記載の方法。
  19. ラスタ画像データの前記1つまたは複数の第1のセットは、前記リモート・システムの第1のデータ・リポジトリから受信され、
    前記ドキュメントは、前記第1のデータ・リポジトリとは異なる前記リモート・システムの第2のデータ・リポジトリから受信される請求項17に記載の方法。
  20. 前記1つまたは複数の補足ドキュメント・リソース・オブジェクトは、アノテーション、ブックマーク、ハイパーリンク、およびサムネイルからなるグループから選択される、請求項17に記載の方法。
  21. 前記第1の事前定義された解像度は、ラスタ画像データの前記1つまたは複数の第1のセットのうちの1つを前記表示上の生成された前記ビューにスケーリングすることに基づく、請求項17に記載の方法。
  22. ラスタ画像データの1つまたは複数の第2のセットを前記クライアント・コンピュータ・デバイス上で受信する工程であって、ラスタ画像データの前記1つまたは複数の第2のセットの各々は、前記ドキュメントの特定のセグメントを表し、ラスタ画像データの前記1つまたは複数の第1のセットの前記第1の事前定義された解像度とは異なる第2の事前定義された解像度を有する、工程をさらに備える、請求項17に記載の方法。
  23. 前記第2の事前定義された解像度は、前記ドキュメントの1つのページのラスタ画像データの前記1つまたは複数の第2のセットの各々を前記表示上の生成された前記ビューにスケーリングすることに基づく、請求項22に記載の方法。
  24. 前記ビュー生成工程の後、前記ドキュメントの更新済みのバージョンを受信する工程をさらに備える、請求項17に記載の方法。
  25. 前記ドキュメントの前記更新済みバージョンのコンテンツ・データ・オブジェクトの前記1つまたは複数のセットと1つまたは複数の補足ドキュメント・リソース・オブジェクトとを含む前記クライアント・コンピュータ・デバイスの前記表示上で前記ドキュメントの前記更新済みバージョンのビューを生成する工程をさらに備える、請求項24に記載の方法。
  26. 前記ドキュメントの前記更新済みのバージョンは、前記クライアント・コンピュータ・デバイスで入力された前記ドキュメントに対する修正の結果として受信される、請求項25に記載の方法。
  27. 前記ドキュメントに対する前記修正は、ページ回転、ページ挿入、ページ並び替え、ページ削除、ページフラット化、およびマークアップのフラット化からなるグループから選択される、請求項26に記載の方法。
  28. ラスタ画像データの前記1つまたは複数の更新済みの第1のセットを前記クライアント・コンピュータ・デバイス上で受信する工程であって、ラスタ画像データの前記1つまたは複数の更新済みの第1のセットの各々は、前記ドキュメントの前記更新済みバージョンの特定のセグメントを表す、工程と、
    前記1つまたは複数の補足ドキュメント・リソース・オブジェクトを前記更新済みのドキュメントから抽出する工程と、
    ラスタ画像データの前記1つまたは複数の更新済みの第1のセットのビューを前記クライアント・コンピュータ・デバイスの前記表示上に生成する工程と、
    前記更新済みのドキュメントから抽出された前記1つまたは複数の補足ドキュメント・リソース・オブジェクトを、ラスタ画像データの前記1つまたは複数の更新済みの第1のセットの前記ビューに対しオーバーレイする工程と、をさらに備える請求項24に記載の方法。
  29. クライアント・コンピュータ・システムによって可読な非一時的プログラム記憶媒体を備える物品であって、前記媒体は、前記クライアント・コンピュータ・システム上でドキュメントをレンダリングするための方法を実行するために前記クライアント・コンピュータ・システムによって実行可能な命令からなる1つまたは複数のプログラムを有形に具現し、前記方法は、
    前記ドキュメントの要求を、前記クライアント・コンピュータ・システムから、前記ドキュメントが格納されているリモート・システムに送信する工程であって、前記要求は、前記クライアント・コンピュータ・システムの識別を含む、工程と、
    前記クライアント・コンピュータ・システムで前記ドキュメントを受信する工程であって、前記ドキュメントは、前記ドキュメントの外観を少なくとも部分的に定義するコンテンツ・データ・オブジェクトの1つまたは複数のセットによって定義され、ドキュメント位置属性を各々有する1つまたは複数の補足ドキュメント・リソース・オブジェクトを含む、工程と、
    ラスタ画像データの1つまたは複数の第1のセットを前記クライアント・コンピュータ・システム上で受信する工程であって、ラスタ画像データの前記1つまたは複数の第1のセットの各々は前記ドキュメントのうちの特定のセグメントを表し、ラスタ画像データの前記1つまたは複数の第1のセットは、前記クライアント・コンピュータ・システムの前記識別の評価に少なくとも部分的に基づいて受信される、工程と、
    前記1つまたは複数の補足ドキュメント・リソース・オブジェクトを前記ドキュメントから抽出する工程と、
    ラスタ画像データの前記1つまたは複数の第1のセットのビューを前記クライアント・コンピュータ・システムの表示上に生成するビュー生成工程と、
    前記ドキュメントから抽出された前記1つまたは複数の補足ドキュメント・リソース・オブジェクトをラスタ画像データの前記1つまたは複数の第1のセットの前記ビューに対しオーバーレイする工程であって、前記1つまたは複数の補足データ・リソース・オブジェクトは、その対応するドキュメント位置属性にしたがって配置される、工程と、を備える物品。
JP2017505209A 2014-07-30 2015-07-13 ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントの最適化されたレンダリング Active JP6543692B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/447,502 US10402472B2 (en) 2014-07-30 2014-07-30 Optimized rendering of shared documents on client devices with document raster representations
US14/447,502 2014-07-30
PCT/US2015/040177 WO2016018604A1 (en) 2014-07-30 2015-07-13 Optimized rendering of shared documents on client devices with document raster representations

Publications (2)

Publication Number Publication Date
JP2017525050A JP2017525050A (ja) 2017-08-31
JP6543692B2 true JP6543692B2 (ja) 2019-07-10

Family

ID=55180283

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017505209A Active JP6543692B2 (ja) 2014-07-30 2015-07-13 ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントの最適化されたレンダリング

Country Status (6)

Country Link
US (2) US10402472B2 (ja)
EP (1) EP3175351A4 (ja)
JP (1) JP6543692B2 (ja)
AU (1) AU2015298291B2 (ja)
CA (1) CA2956086C (ja)
WO (1) WO2016018604A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3282351A1 (en) * 2016-08-08 2018-02-14 Premode Oy System and method for facilitating an inspection process
US11126685B2 (en) * 2016-10-28 2021-09-21 Ebay Inc. Preview and optimization of publication for target computing device
JP7327565B2 (ja) * 2017-11-02 2023-08-16 富士フイルムビジネスイノベーション株式会社 文書処理システム、文書処理装置、及び、文書処理プログラム
JP2019086878A (ja) * 2017-11-02 2019-06-06 富士ゼロックス株式会社 文書処理システム、文書処理装置、及び、文書処理プログラム
FR3077662B1 (fr) * 2018-02-02 2021-02-19 Bluepad Procede de traitement d’une vue d’un plan numerique
EP4189648A4 (en) * 2020-07-29 2024-10-23 3M Innovative Properties Company SYSTEMS AND METHODS FOR MANAGING DIGITAL NOTES
CN113343636B (zh) * 2021-06-02 2023-11-03 北京百度网讯科技有限公司 一种设置标注线宽度的方法、装置、电子设备及存储介质

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07105353A (ja) 1993-10-01 1995-04-21 Hitachi Ltd 図面管理装置
EP1145147A2 (en) * 1999-05-07 2001-10-17 Argo Interactive Limited Display text modification for link data items
US6665838B1 (en) * 1999-07-30 2003-12-16 International Business Machines Corporation Web page thumbnails and user configured complementary information provided from a server
US20020010716A1 (en) * 2000-02-24 2002-01-24 Mccartney Alan F. System and method for dynamically publishing XML-compliant documents
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US7065712B2 (en) * 2000-09-01 2006-06-20 Nippon Telegraph And Telephone Corp. Scheme for posting advertisements on comprehensive information viewing device
US20020099739A1 (en) * 2001-01-03 2002-07-25 Herman Fischer Transformation and processing of Web form documents and data for small footprint devices
US7072061B2 (en) * 2001-02-13 2006-07-04 Ariba, Inc. Method and system for extracting information from RFQ documents and compressing RFQ files into a common RFQ file type
US7284069B2 (en) * 2002-01-11 2007-10-16 Xerox Corporation Method for document viewing
JP2004013599A (ja) * 2002-06-07 2004-01-15 Ricoh Co Ltd 管理サーバ、ウェブページ情報管理方法及びプログラム
US7200820B1 (en) * 2002-09-27 2007-04-03 Bellsouth Intellectual Property Corp. System and method for viewing search results
US7574653B2 (en) * 2002-10-11 2009-08-11 Microsoft Corporation Adaptive image formatting control
US7203901B2 (en) * 2002-11-27 2007-04-10 Microsoft Corporation Small form factor web browsing
US20050195221A1 (en) * 2004-03-04 2005-09-08 Adam Berger System and method for facilitating the presentation of content via device displays
US7441207B2 (en) * 2004-03-18 2008-10-21 Microsoft Corporation Method and system for improved viewing and navigation of content
US7721204B2 (en) * 2004-07-29 2010-05-18 Xerox Corporation Client dependent image processing for browser-based image document viewer for handheld client devices
JP2006268488A (ja) 2005-03-24 2006-10-05 Kddi Corp 画像表示システム、端末及びそのプログラム
AU2010201379B2 (en) * 2010-04-07 2012-02-23 Limelight Networks, Inc. System and method for delivery of content objects
US20070133031A1 (en) 2005-12-08 2007-06-14 Canon Kabushiki Kaisha Image processing apparatus and image processing method
CA2649441A1 (en) 2006-04-14 2007-10-25 Advanced Solutions, Inc. Method, system, and computer-readable medium to provide version management of documents in a file management system
JP4518056B2 (ja) * 2006-09-25 2010-08-04 富士ゼロックス株式会社 文書操作認証装置、及びプログラム
US20080222273A1 (en) * 2007-03-07 2008-09-11 Microsoft Corporation Adaptive rendering of web pages on mobile devices using imaging technology
JP4874205B2 (ja) 2007-09-28 2012-02-15 ヤフー株式会社 地図表示方法及び地図表示装置
US9176953B2 (en) * 2008-06-04 2015-11-03 Tianjin Sursen Investment Co., Ltd. Method and system of web-based document service
US8648858B1 (en) * 2009-03-25 2014-02-11 Skyfire Labs, Inc. Hybrid text and image based encoding
US20100259781A1 (en) 2009-04-09 2010-10-14 Nguyen Nhat Q System and method for remote rendering of electronic documents on the go
JP2011209983A (ja) 2010-03-30 2011-10-20 Hitachi Solutions Ltd インフラストラクチャー管理システム
JP5183675B2 (ja) 2010-05-31 2013-04-17 株式会社ゼンリンデータコム 地図画像提供システム、地図画像提供装置、地図画像更新判別方法およびプログラム
US8384726B1 (en) * 2011-08-31 2013-02-26 Google Inc. Selective rendering of off-screen content
US8738826B2 (en) 2012-06-08 2014-05-27 Apple Inc. System and method for display mirroring
JP6188285B2 (ja) 2012-07-13 2017-08-30 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、プログラム
US9721036B2 (en) * 2012-08-14 2017-08-01 Microsoft Technology Licensing, Llc Cooperative web browsing using multiple devices
US20140304658A1 (en) * 2013-04-04 2014-10-09 Yandex Europe Ag Method of and system for presenting image information to a user of a client device
US20150012817A1 (en) * 2013-07-03 2015-01-08 Karl Redenbach Browser-Based Designer Tool For A User Interface And The Administration Of Tiles
US9785332B1 (en) * 2014-12-05 2017-10-10 Amazon Technologies, Inc. Conserving processing resources by controlling updates to damaged tiles of a content page

Also Published As

Publication number Publication date
US20160034601A1 (en) 2016-02-04
CA2956086C (en) 2024-06-25
CA2956086A1 (en) 2016-02-04
EP3175351A4 (en) 2018-04-11
AU2015298291A1 (en) 2017-02-02
WO2016018604A1 (en) 2016-02-04
US10402472B2 (en) 2019-09-03
EP3175351A1 (en) 2017-06-07
US20190354573A1 (en) 2019-11-21
JP2017525050A (ja) 2017-08-31
AU2015298291B2 (en) 2021-03-11
US11120197B2 (en) 2021-09-14

Similar Documents

Publication Publication Date Title
JP6543692B2 (ja) ドキュメント・ラスタ表現によるクライアント・デバイス上での共有ドキュメントの最適化されたレンダリング
JP6092184B2 (ja) 情報の電子的集合のための技法
US9086837B1 (en) Collaboration sessions
US20170329502A1 (en) Method and device for processing image
KR101985558B1 (ko) 그리드 상에서 프레젠테이션 타일의 동적 레이아웃을 위한 기법
KR20130143614A (ko) 정보의 전자 집성을 위한 방법
US9467495B2 (en) Transferring assets via a server-based clipboard
CN109298806B (zh) 一种基于对象识别的远程快速界面交互方法及装置
US11206294B2 (en) Method for separating local and remote content in a camera-projector based collaborative system
US10403040B2 (en) Vector graphics rendering techniques
KR20160113135A (ko) 웹 기반 애플리케이션에서 편집하기 위한 문서의 인쇄 뷰를 제공하는 기법
CN109388457B (zh) 一种多场景的远程快速界面交互方法及装置
US12001778B2 (en) Systems and methods for synchronizing graphical displays across thin client devices
US10455056B2 (en) Cloud-based storage and interchange mechanism for design elements
JP2017027319A (ja) 帳票文書データの表示・編集・保存方法、装置、処理プログラム
CN109726382B (zh) 排版方法和装置
US10496241B2 (en) Cloud-based inter-application interchange of style information
US11799927B1 (en) Systems and methods for distributed vector drawing pipeline for collaboration systems
US20240241621A1 (en) Information processing system, non-transitory computer readable medium storing program, and information processing method
US20230254351A1 (en) Binding a physical whiteboard to a digital whiteboard canvas and repeatedly updating the digital whiteboard canvas based on manipulations to the physical whiteboard
EP3502922A1 (en) Method for previewing a document during editing, and a computer program product and apparatus therefor
JP2017126229A (ja) 帳票文書データの表示・編集・保存方法、装置、処理プログラム
JP2015135643A (ja) 情報処理装置、情報処理装置のデータ処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190522

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190617

R150 Certificate of patent or registration of utility model

Ref document number: 6543692

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S631 Written request for registration of reclamation of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313631

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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