JP2005505860A - グラフィックデータ及びデジタルドキュメント処理の視覚的表現を生成するシステム及び方法 - Google Patents
グラフィックデータ及びデジタルドキュメント処理の視覚的表現を生成するシステム及び方法 Download PDFInfo
- Publication number
- JP2005505860A JP2005505860A JP2003536932A JP2003536932A JP2005505860A JP 2005505860 A JP2005505860 A JP 2005505860A JP 2003536932 A JP2003536932 A JP 2003536932A JP 2003536932 A JP2003536932 A JP 2003536932A JP 2005505860 A JP2005505860 A JP 2005505860A
- Authority
- JP
- Japan
- Prior art keywords
- content
- mixing
- stack
- static
- objects
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000012545 processing Methods 0.000 title claims abstract description 98
- 230000000007 visual effect Effects 0.000 title claims description 16
- 238000002156 mixing Methods 0.000 claims abstract description 90
- 230000003068 static effect Effects 0.000 claims abstract description 83
- 239000002131 composite material Substances 0.000 claims abstract description 49
- 239000000872 buffer Substances 0.000 claims description 50
- 230000002093 peripheral effect Effects 0.000 claims description 17
- 230000007246 mechanism Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 8
- 239000000203 mixture Substances 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 6
- 230000000295 complement effect Effects 0.000 claims description 6
- 230000002452 interceptive effect Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 4
- OFHCOWSQAMBJIW-AVJTYSNKSA-N alfacalcidol Chemical compound C1(/[C@@H]2CC[C@@H]([C@]2(CCC1)C)[C@H](C)CCCC(C)C)=C\C=C1\C[C@@H](O)C[C@H](O)C1=C OFHCOWSQAMBJIW-AVJTYSNKSA-N 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000013519 translation Methods 0.000 claims description 2
- 230000026676 system process Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 14
- 230000003139 buffering effect Effects 0.000 description 7
- 239000003795 chemical substances by application Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 5
- 238000013467 fragmentation Methods 0.000 description 4
- 238000006062 fragmentation reaction Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- XWVFVITVPYKIMH-UHFFFAOYSA-N ethyl n-[4-[benzyl(2-phenylethyl)amino]-2-(2-fluorophenyl)-1h-imidazo[4,5-c]pyridin-6-yl]carbamate Chemical compound N=1C(NC(=O)OCC)=CC=2NC(C=3C(=CC=CC=3)F)=NC=2C=1N(CC=1C=CC=CC=1)CCC1=CC=CC=C1 XWVFVITVPYKIMH-UHFFFAOYSA-N 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 101100226347 Escherichia phage lambda exo gene Proteins 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
(b) 前記動画オブジェクトの混合パラメータを考慮して、前記動画オブジェクトのコンテンツと前記合成の静的オブジェクトとを混合することからなる。ステップ(a)で形成された合成の静的オブジェクトは、前記動画オブジェクトのコンテンツが変化する場合に再利用されてもよい。好ましい実施形態では、ステップ(a)において前記スタック中の静的オブジェクトの全てのコンテンツが、前記スタック中のオブジェクトの全ての混合パラメータを考慮して、単一の合成の静的オブジェクトに混合される。混合パラメータ値のステンシルは、前記スタック中の各動画オブジェクトに対して、対応する動画オブジェクトと前記スタック中の前記対応する動画オブジェクトの上方のあらゆるオブジェクトとの混合パラメータ値を考慮して作り出される。ステップ(b)は、各動画オブジェクトのコンテンツを、対応するステンシルに基づいて、合成の静的オブジェクトと混合することからなる。
【選択図】図1
Description
【0001】
本発明は、データ処理方法及びシステムに関するものである。より詳しくは、本発明は「グラフィックデータ」及び「デジタルドキュメント」(ここで定義されるようなものである)を処理する方法及びシステム、及び、そのような方法及びシステムを組み込んだデバイスに関するものである。概括的には、本発明は、例えば視覚表示として又はハードコピーとして、ソースデータ及びドキュメントの出力表現を生成することに関するものである。より具体的には、本発明は、合成グラフィック出力を作成するために、1つ又はそれ以上の動画オブジェクトを含む、相互に重ね書きされたグラフィックオブジェクトのスタックを混合することに関するものである。
【0002】
(背景技術)
ここで用いられるように、「グラフィックデータ」、「グラフィックオブジェクト」、及び「デジタルドキュメント」という用語は、典型的には表示され又は視覚的に複製されることにより(例えば視覚表示装置又はプリンタを用いて)、あるいはテキスト音声変換等により、全部又は一部が、人間のユーザーに、最終的に何かの形式で出力されるように意図されたデータ処理システムにより処理される、あらゆる形式のデータのデジタル表現を述べるために用いられる。そのようなデータ、オブジェクトやドキュメントは、表現が可能なあらゆる特徴を含んでよく、次のもの、すなわち、テキスト、グラフィックイメージ、動画のグラフィックイメージ、フルモーションのビデオイメージ、対話型のアイコン、ボタン、メニュー又はハイパーリンクを含むがこれらに限られない。デジタルドキュメントは音声(音)の要素のような非視覚的な要素も含んでいてもよい。デジタルドキュメントは一般に、グラフィックデータ及び/又は少なくとも1つのグラフィックオブジェクトを含むか又はそれらから成る。
【0003】
パーソナルコンピュータシステムのようなデータ処理システムは、典型的には、多数のローカルの又はリモートのソースのいずれか1つから生じることができ、かつ広範囲のデータフォーマット(「ファイルフォーマット」)のいずれか1つに存在できる「デジタルドキュメント」を処理することが要求される。ドキュメントの出力バージョンを生成するためには、視覚表示としてであろうと印刷したコピーとしてであろうと、例えば、コンピュータシステムが元のデータファイルを翻訳し、該当する出力デバイス(例えばモニター、あるいは他の視覚表示デバイス、又はプリンタ)と互換の出力を生成することが必要である。一般には、この処理はデータファイルを翻訳するのに適するアプリケーションプログラムと、コンピュータのオペレーティングシステムと、所望の出力デバイスに固有のソフトウェア「ドライバ」と、場合によっては(特にモニタや他の視覚表示装置に対しては)、拡張カードの形式で追加のハードウェアを必要とする。
【0004】
出力を生成するための従来のこのデジタルドキュメントの処理の方法は、ハードウェアのリソース、ソフトウェアのオーバーヘッド、及び処理時間の点で非効率であり、ワイヤレス通信システムを含む低パワーでポータブルのデータ処理システムや、ネットワーク端末のような低コストのデータ処理システム等には全く不適当である。従来のデジタルドキュメント処理システムでは、複数のシステムコンポーネント(ハードウェアとソフトウェアのコンポーネントの両方を含む)を所望の様式で対話するように構成する必要性と、異なるシステム(例えばフォーマッティング、カラー再生における違い)により同じソースマテリアルを処理する際の不整合とを含めた、その他の問題に直面する。さらに、従来のデジタルドキュメント処理の方法は、ファイルフォーマットの構成要素の共通性及び/又は再利用性を活用することができない。
【0005】
(発明の開示)
本発明の目的は、従来の方法及びシステムの前述した不都合を未然に防ぎ又は軽減する、グラフィックデータ、グラフィックオブジェクト及びデジタルドキュメントを処理する方法及びシステム、及びそのような方法及びシステムを組み込んだデバイスを提供することである。
【0006】
本発明は、その様々な態様において、ここに添付した特許請求の範囲に規定される。本発明の更なる態様と特徴は、以下の記載から明らかとなる。
【0007】
第一の態様において、本発明は、デジタルドキュメント処理システムにおいて複数の互いに重なり合うグラフィックオブジェクトを混合する方法であって、前記複数のグラフィックオブジェクトは、少なくとも1つの静的オブジェクトと少なくとも1つの動画オブジェクトを含む、順序付けられたスタックの中に配列されており、前記オブジェクトの各々はグラフィックのコンテンツからなり且つ前記オブジェクトの少なくとも一部に対して関連する少なくとも1つの混合パラメータを有しており、前記方法は、
(a) 前記静的オブジェクトの各混合パラーメータを考慮して、少なくとも1つの合成の静的オブジェクトを形成するために前記静的オブジェクトのコンテンツを混合し、
(b) 前記動画オブジェクトの混合パラメータを考慮して、前記動画オブジェクトのコンテンツと前記の又は各々の合成の静的オブジェクトとを混合することを特徴とする方法に関するものである。
【0008】
本発明の典型的な実施形態において、前記の少なくとも1つの各オブジェクトの混合パラメータは、前記オブジェクトの少なくとも一部に対して関連するトランスペアレンシを表す少なくとも1つのアルファ値を含むものである。
【0009】
好ましい実施形態において、ステップ(a)は、第一の合成の静的オブジェクトを形成するために、前記スタックの中で動画オブジェクトの下方に位置する静的オブジェクトを混合し、第二の合成の静的オブジェクトを形成するために、前記スタックの中で前記動画オブジェクトの上方に位置する静的オブジェクトを混合することからなり、ステップ(b)は、前記動画オブジェクトを前記第一及び第二の合成の静的オブジェクトと混合することを含むものである。
【0010】
二者択一的な好ましい実施形態において、ステップ(a)は、前記スタックの中の全ての静的及び動画オブジェクトの相対的な混合パラーメータを考慮して、前記スタックの中の全ての静的オブジェクトのコンテンツを単一の合成の静的オブジェクトに混合し、前記スタックの中の前記の又は各々の動画オブジェクトに対して混合パラーメータ値のステンシルを形成し、前記の又は各々のステンシルの混合パラメータ値は、前記対応する動画オブジェクトと前記スタックの中の前記対応する動画オブジェクトの上方のあらゆるオブジェクトとの混合パラメータ値を考慮していることからなり、ステップ(b)は、前記対応する混合パラメータ値のステンシルに基づいて、前記の又は各々の動画オブジェクトのコンテンツを前記合成の静的オブジェクトと混合することからなるものである。
【0011】
本発明の第二の態様に従って、第一の態様の方法を実行するために適用したデジタルドキュメント処理システムが提供される。
【0012】
本発明の第二の態様に従う好ましいシステムは、
複数の所定のデータフォーマットの1つにおいてソースデータを表す入力バイトストリームを受け取るための入力機構と、
前記バイトストリームを翻訳するための翻訳機構と、
前記バイトストリームから翻訳したコンテンツを内部表現データのフォーマットへ変換するための変換機構と、
出力デバイスを駆動するために適した出力表現データを生成するために前記内部表現データを処理するための処理機構とを備えるものである。
【0013】
さらなる態様において、本発明は、データ処理システムのためのグラフィカルユーザーインターフェイスであって、該ユーザーインターフェイスにより用いられる対話形の視覚表示は、本発明の第二の態様に従うデジタルドキュメント処理システムにより生成されるものであることを特徴とするグラフィカルユーザーインターフェイス、及び、そのようなグラフィカルユーザーインターフェイスを組み込んでいるデータ処理システムに関するものである。
【0014】
またさらなる態様において、本発明は、ハードウェアデバイス、データ処理システム及び周辺デバイスを含む、本発明の第二の態様に従うデジタルドキュメント処理システムを組み込んだ様々な形式のデバイスに関するものである。
【0015】
本発明の実施形態は、添付の図面を参照して、単に例示のためにここで述べられる。
【0016】
(発明を実施するための最良の形態)
図面を参照して、図1は本発明の様々な態様の方法が実施されてもよい好ましいデジタルドキュメント処理システム8を説明する。本発明の方法を詳細に記述する前に、システム8が背景知識として最初に記述される。本発明の方法は、ここに記述されるようなシステム8以外の処理システムにおいて実施されてもよいことが理解されるであろう。
【0017】
概括的に言って、システム8は公知のフォーマットのデータファイルからなる1つ又はそれ以上のソースドキュメント10を処理する。システム8への入力は、ソースドキュメントのコンテンツからなるバイトストリームである。入力モジュール11は、ドキュメント内部の明白なファイル形式識別のような様々な基準のいずれか1つに基づいて、ファイル名(特にファイル名の拡張子)から、又は特定のファイル形式のコンテンツの公知の特徴から、ソースドキュメントのファイルフォーマットを識別する。バイトストリームはソースドキュメントのファイルフォーマットに固有の「ドキュメントエージェント12」に入力される。ドキュメントエージェント12は入ってくるバイトストリームを翻訳し、それをシステム8により用いられている標準フォーマットへ変換して、結果としてシステム8による処理に適した「固有」のフォーマットにおけるソースデータの内部表現14になるように適用している。システム8は一般的に複数の異なるドキュメントエージェント12を含み、各々は対応する複数の所定のファイルフォーマットの1つを処理するように適合されている。
【0018】
システム8はデジタルカメラ又はスキャナのような入力デバイスから受け取った入力にも適用されてよい。この場合は、入力バイトストリームは「ソースドキュメント」それ自体からよりむしろ入力デバイスから直接生じてもよい。しかしながら、入力バイトストリームは依然としてこのシステムにより処理するのに適する予測可能なデータフォーマットにあるであろうし、システムの目的にとっては、そのような入力デバイスから受け取る入力は「ソースドキュメント」とみなされてよい。
【0019】
ドキュメントエージェント12は内部表現14を生成するために標準のオブジェクトのライブラリ16を用い、その内部表現14は、ライブラリ16において形式が定義される包括的オブジェクトと、ドキュメントの内部の様々な包括的オブジェクトの特定のインスタンスの性質を定義するパラメータとの収集に関して、ソースドキュメントのコンテンツを記述する。内部表現はシステムに固有のファイルフォーマットで保存/記憶されていてもよいし、システム8に入力され得るソースドキュメント10の範囲はシステムの固有のファイルフォーマットにおけるドキュメントを含んでいてもよいことが理解されるだろう。内部表現14が、適切な変換エージェント(不図示)を用いて、必要に応じて他のファイルフォーマットの範囲のいずれかに変換されることもできる。
【0020】
内部表現14において用いられている包括的オブジェクトは、典型的にはテキスト、ビットマップグラフィックスとベクトルグラフィックス(動画のものであってもなくてもよく、二次元又は三次元のものであってもよい)、ビデオ、音声、そしてボタンやアイコンのような様々な形式の対話型のオブジェクトを含む。包括的オブジェクトの特定のインスタンスを定義するパラメータは、一般的にはオブジェクトの物理的形状、サイズ及び位置を定義する次元の座標と、時間によって性質が変化するオブジェクトを定義するためのあらゆる関連する時間のデータとを含む(システムがダイナミックなドキュメント構造及び/又は表示機能を取り扱うことを可能にする)。テキストオブジェクトに対しては、パラメータは文字列に適用されるフォントとサイズも標準的に含む。オブジェクトパラメータは、トランスペアレンシ(透明度)のような他の性質も定義してもよい。
【0021】
内部表現14のフォーマットは、オブジェクトの形式とそれらのパラメータにより記述されるようなドキュメントの「構造」(または「レイアウト」)を、様々なオブジェクトの「コンテンツ」から分離する。例えば、テキストオブジェクトの文字列(コンテンツ)は、そのオブジェクトの次元パラメータから分離される。グラフィックオブジェクトのイメージデータ(コンテンツ)は、その次元パラメータから分離される。このことは、ドキュメント構造が非常にコンパクトな様式で定義されることを可能とするし、コンテンツデータのオプションが遠隔(リモート)に記憶され、必要な時のみシステムによって取り出されることを提供する。
【0022】
内部表現14は、ドキュメントとその構成オブジェクトを「高レベル」の記述によって記述する。
【0023】
内部表現データ14は、内部表現14によって表現されるドキュメントのコンテキスト(文脈)特定表現20又は「ビュー」を生成するパーシング及びレンダリングモジュール18に入力される。必要なビューは、全ドキュメントのものであってもその一部(サブセット)のものであってもよい。パーサー/レンダラー18は、ビューのコンテキストと生成される特定のドキュメントのビューのあらゆる関連した時間のパラメータとを定義する、ビュー制御入力40を受け取る。例えば、システムが、ドキュメントの部分の拡大縮小したビューを生成し、そのドキュメントの隣接する部分を表示するためにその拡大縮小したビューをパン又はスクロールすることを要求してもよい。ビュー制御入力40は、内部表現のどの部分が特定のビューに対して要求されているか、そしてどのように、いつ、どのくらいの時間そのビューが表示されるべきかを決定するために、パーサー/レンダラー18によって翻訳される。
【0024】
コンテキスト特定表現/ビュー20は、基本形状とパラメータに関して表現される。
【0025】
パーサー/レンダラー18は、ソースドキュメント10の必要なビュー20を生成する時に、内部表現14の関連する部分に関する追加の前処理機能も実行してもよい。ビューの表現20は、表示デバイスやプリンタのような出力デバイス26(または複合出力デバイス)を駆動するために適したフォーマットで最終出力24を生成するために、最終処理のための形状処理モジュール22に入力される。
【0026】
パーサー/レンダラー18の前処理機能は色補正、解像度調整/拡張及びエイリアス除去を含んでいてもよい。解像度拡張は、対象とする出力デバイスにより表示されまたは複製された時にオブジェクトのコンテンツの読みやすさを保つスケーリング機能を備えていてもよい。解像度調整はコンテキストに敏感であってもよい。例えば、特性のオブジェクトの表示の解像度は、表示したドキュメントのビューがパンされ又はスクロールされる間は減少され、ドキュメントのビューが静止しているときは増加されてもよい。
【0027】
レンダラー/パーサー18と内部表現14との間にフィードバック経路42があってもよい。例えば、内部表現によって表現されたドキュメント10がマルチフレームの動画からなる場合におけるように、内部表現14のコンテンツの更新を引き起こす目的でである。
【0028】
パーサー/レンダラー18からの出力表現20は、「基本」オブジェクトに関してドキュメントを表現する。各ドキュメントのオブジェクトに対して、表現20は、好ましくは、少なくとも、物理的な矩形のバウンダリボックスと、バウンダリボックスにより境界をつけたオブジェクトの実際の形状と、オブジェクトのデータコンテンツと、そのトランスペアレンシとに関して、オブジェクトを定義する。
【0029】
形状プロセッサ22は表現20を翻訳し、それを対象とする出力デバイス26に適する出力フレームフォーマット24へ変換する。例えば、プリンターに対するドットマップ、プロッターに対するベクトル命令のセット、あるいは表示デバイスに対するビットマップである。形状プロセッサ22への出力制御入力44は、形状プロセッサ22が特定の出力デバイス26に適する出力24を生成するために必要なパラメーターを定義する。
【0030】
形状プロセッサ22は、好ましくは、「形状」(すなわちオブジェクトの輪郭形状)、「フィル」(オブジェクトのデータコンテンツ)及びアルファ(オブジェクトのトランスペアレンシ)に関してビュー表現20により定義されたオブジェクトを処理し、必要なビュー及び出力に適するスケーリング及びクリッピングを実行し、オブジェクトを出力デバイスに適するように表現する(ほとんどの形式の表示デバイス又はプリンタに対しては、典型的には走査変換等による画素によって)。
【0031】
形状プロセッサ22は、好ましくは、オブジェクトの形状を走査変換した画素によって定義するエッジバッファを含んでおり、好ましくは、輪郭形状にエイリアス除去を適用する。エイリアス除去は、好ましくは、出力デバイス26の特性により決定される様式で(すなわち、制御入力44に基づいて)、オブジェクトの境界を横切るグレイスケールのランプ(傾斜面)を適用することにより実行される。この手法はメモリ効率のよい形状クリッピング及び形状交差処理を可能にする。
【0032】
非線形レンダリング制御(ガンマ補正)を可能にする複数のトーンレスポンスカーブを定義するために参照テーブルが用いられてもよい。
【0033】
形状プロセッサ22により処理された個々のオブジェクトは、合成出力フレーム24において結合される。最終出力の品質は、出力制御入力44を経由してユーザーにより制御されることも可能である。
【0034】
形状プロセッサ22は、多段のパイプラインアーキテクチャを持ち、それは、その形状プロセッサのパイプラインの複数のインスタンスを用いることにより、複数のオブジェクトの、又は複数のドキュメントの、あるいは1つ又はそれ以上のドキュメントの複数のサブセットの並列処理に役立つものである。このパイプラインアーキテクチャはまた、必要に応じて追加の処理機能(例えばフィルタ機能)を含むように容易に修正される。複数の形状プロセッサ22からの出力は、複数の出力フレーム24を生成してもよいし、単一の出力フレーム24に結合されてもよい。
【0035】
このシステムのアーキテクチャは本質的にはモジュール方式である。このことは、たとえば、追加のソースファイルフォーマットを扱うために、必要に応じてそして必要な時に、さらなるドキュメントエージェントが付加されることを可能にする。モジュール方式のアーキテクチャは、ライブラリ16、パーサー/レンダラー18あるいは形状プロセッサ22のような個々のモジュールが、他のモジュールに対して交換を要求することなしに修正又はアップグレードされることも可能にする。
【0036】
このシステムアーキテクチャは全体として、1つ又はそれ以上のドキュメントエージェント12、12aを経由した、1つ又はそれ以上のファイルフォーマットにおける、複数の入力ドキュメント10a、10b等又はドキュメントのサブセットを同時処理するための、全体又は一部の並列処理にも役立つものである。
【0037】
このシステムの統合された、モジュール形式の性質は、システムモジュールの複数のインスタンスが、利用可能な処理及びメモリのリソースによってのみ制限されて、必要に応じて必要なときにデータ処理システム又はデバイスの中に生成されることを可能にする。
【0038】
このシステム全体と特に形状プロセッサ22とにより提供される柔軟な並列処理への可能性は、所定のデバイスのための表示経路が利用可能な帯域とメモリとに対して最適化されるということを可能にする。表示の更新及び動画は改善され、より速く、より少ないメモリを必要とするようできる。使用されるオブジェクト/パラメータドキュメントモデルは、決定論的で、矛盾のないものである。このシステムは十分に拡張が容易であり、複数のCPUを横断するシステムの複数のインスタンスを可能にする。
【0039】
パーサー/レンダラー18と形状プロセッサ22とは、利用可能なメモリと帯域の使用を最適化するような様式で、ビュー制御入力40に応じて動的に対話する。これは特に視覚表示を駆動する時、例えば表示がユーザーによりスクロール又はパンされる時に、再描画機能に適用される。
【0040】
このシステムは、ドキュメントビューの、あるいはビュー内の1つ又はそれ以上のオブジェクトの表示解像度が表示が修正されるべき様式に従って動的に変化するような、拡張可能な遅延再描画モデルを実行してもよい。これは典型的には、画面で動いている間は減少した解像度で表示され、静止している時には最大限の解像度で表示されるようなオブジェクトを含むものであってもよい。このシステムはこの目的のために複数のレベルの表示品質を用いてもよい。典型的には、これは予め作られたドキュメントオブジェクトの低解像度のビットマップ表現及び/又は、補間あり又は補間なしで動的に作られスケーリングされたビッドマップを含む。この手法は、利用可能なメモリ/帯域を最大限に利用する高い応答性の表示を提供する。
【0041】
今まで述べられてきたシステムは、本発明により提供される方法を実施するために適応できる。
【0042】
本発明の第一の態様に従って、複数の重ね書きされた(すなわち少なくとも部分的に重なり合う)オブジェクトであってその少なくとも1つは動画オブジェクトであるものの合成の視覚的表現を生成する、ここではオブジェクトを「混合する」と称する方法が提供される。混合は少なくとも1つの所定の混合機能に基づいて実行される。各オブジェクトは、それと関連付けられ、少なくとも1つの混合機能が適用される、少なくとも1つの混合パラメータ値を有する。この方法が適用できる最も一般的な混合パラメータはトランスペアレンシであり、本発明はここではトランスペアレンシを特に参照して説明される。しかしながら、本発明は他の混合パラメータに等しく適用できるものであることが理解されるだろう。
【0043】
ここで用いられるように、「動画オブジェクト」は、そのコンテンツ(データコンテンツ、及び/又は他の視覚的な性質及び/又は位置及び/又は方向、及び/又は形状及び又はサイズを含む)が時間によって周期的に又は非周期的に、あらゆる様式で且つあらゆる理由で変化するオブジェクトを含み、ビデオオブジェクト、フレーム動画オブジェクト、そして漸次更新されるグラフィックオブジェクトを含むがこれらに限られない。
【0044】
またここで用いられるように、「部分的に透明なオブジェクト」とは、完全には不透明でないオブジェクトを意味し、用語「アルファ値」は、完全な透明性と完全な不透明性との間の、オブジェクト又はその一部の相対的トランスペアレンシを示す数値を意味する。部分的トランスペアレンシはオブジェクトのエイリアス除去した「ソフト」エッジにも言及する。「静的オブジェクト」は、そのコンテンツ(位置、方向、形状、サイズ及び他の関連する性質)が所定の時間の間変化しないオブジェクトを意味する。
【0045】
ここで図2を参照して、図1のようなシステムが、重ね書きされた部分的に透明なグラフィックオブジェクトの順序付けられたスタックの合成の視覚的表現を、各オブジェクトの相対的なトランスペアレンシ(アルファ値)を考慮して、オブジェクトの全てのコンテンツを結合することによって生成するために要求されてもよい。もしスタック中のオブジェクトの1つが動画(上記で定義したようなもの)であれば、その動画オブジェクトのコンテンツが他のオブジェクトに対して変化するたびに、普通は動画オブジェクトの更新したコンテンツを反映する新しい表現を生成するためにオブジェクトの全スタックを処理する必要がある。
【0046】
本発明の一実施形態に従って、オブジェクトのスタックは動画オブジェクト(以下、「動画」と称する)の上方と下方の静的オブジェクトのクラスタに、オブジェクトがレンダリングされる順序で分割される。下位クラスタ150はスタックの中で動画152の下方の1つ又はそれ以上のオブジェクトからなり、上位クラスタ154はスタックの中で動画152の上方の1つ又はそれ以上のオブジェクトからなる。下位クラスタ150は単一の下位ビットマップオブジェクト156を作成するためにレンダリング/混合され、上位クラスタ154は単一の上位ビットマップオブジェクト158を作成するためにレンダリング/混合される。そして動画152は分離したままであり、上位ビットマップと下位ビットマップの間に置かれる。そして、動画152のコンテンツが変化するたびに必要な合成出力を得るためには、この2つのビットマップオブジェクトと動画とを混合することのみが必要である。すなわち、下位クラスタのオブジェクトを一度、そして上位クラスタのオブジェクトを一度混合することのみが必要であり、動画152における繰り返す変化のための処理オーバーヘッドについての大幅な減少を提供する。
【0047】
処理オーバーヘッドを節約する際のこの方法の利益は各クラスタ内のオブジェクトの数が増加するにつれて増大するが、この方法は1つ又はそれ以上のクラスタが単一の静的オブジェクトのみからなる場合でさえも適用できることが理解されるだろう。
【0048】
この方法は動画152がスタックの最上位にある(上位クラスタがない)又はスタックの最下位にある(下位クラスタがない)場合に適用することができることもまた理解されるだろう。
【0049】
動画152は、それに関連するクリップマスク(その形状を定義する)及びアルファマスク(そのトランスペアレンシを定義する)を有していてもよい。同様のマスクがトランスペアレンシ以外の混合パラメータを定義するために用いられてもよい。
【0050】
この方法は、図3に示すように、スタック内に複数の動画がある場合にも適用できる。ここで、クラスタ160は動画152Bに対する下位クラスタからなり、クラスタ162は動画152Bに対する上位クラスタと動画152Aに対する下位クラスタとからなり、そしてクラスタ164は動画152Aに対する上位クラスタからなり、クラスタ160、162及び164はそれぞれ混合され、対応する単一のビットマップオブジェクト166、168及び170になる。この形式の「分割クラスタリング」は、オブジェクトスタック中のいかなる数の動画に対しても、無制限に入れ子にされる/繰り返されることができる。この方法は、スタック内で、スタックの最上位で、あるいはスタックの最下位で、複数の動画がお互いに隣接している場合にも、等しく適用できることがわかる。
【0051】
図4に示されるように、スタック中の動画152のいずれの側のオブジェクトも、お互いに、及び動画と、異なる量だけ重なり合っていてもよい。この場合は、オブジェクトの混合は、静的オブジェクトを動画152との重なりの領域へクリッピングすることを含むものであり(図4の斜線部分)、その結果混合したクラスタオブジェクト158及び156は動画152の領域にクリッピングされる。
【0052】
処理が「オブジェクトベース」であれば、これは不定の量のメモリを要求する。クラスタ化法は、クリッピングしたオブジェクトを最も近い固定のタイルサイズに丸めることにより、同時係属の国際特許出願PCT/GB01/01742号及び米国特許出願09/835483号に記載されるようなタイリング方法と結合することができ、その結果メモリと処理要求が予測可能となり、こうしてメモリと性能の特性を改善し、関連するコードを簡略化できる。これは、以下に記述する本発明の二者択一的な実施形態にも適用できる。
【0053】
本発明の方法において様々なグラフィックオブジェクトの処理に用いられるようなバッファリング処理の効率は、順序付けたリストにインデックスを付したタイルのアレイ136としてバッファコンテンツを定義することにより改善されてもよい。各タイルは固定のサイズのビットマップ(例えば32x32又は64x64)からなり、「ミニバッファ」とみなされてもよい。必要な表示ビューコンテンツが変化したり、クリッピングされたり、バッファ領域の外側に移動する等の場合、必要なことは、もう必要のないタイルを捨て、いかなる新しい表示コンテンツをもカバーする新しいタイルを形成し、タイルリストを更新することだけである。これは従来のバッファリング処理よりも高速で且つ効率的である、なぜならバッファ内でのブロックコピーが不要であり、移動され又はコピーされる物理メモリが不要であるからである。
【0054】
記載されているタイリングのスキームは、全てのドキュメントと画面の再描画操作に対するタイルプールを提供するために全体的に用いられてもよい。タイルは、ドキュメント及び/又はオブジェクトのオフスクリーンをキャッシュに入れ、高速で効率的なビューの再描画を可能にするために用いられる。
【0055】
記述したようなタイルプールの使用は、メモリとプロセッサのリソースのより効率的な用法も考慮に入れる。図10(a)は、任意の予測できないサイズを有するデータブロックを含む従来のオフスクリーンのバッファリング方法が、予測できない隣接ブロックの割当て要求によるメモリの断片化という結果をどのようにして招くかを示すものである。バッファリング操作により要求されるメモリのブロックは、プロセッサのメモリ管理機構(MMU)のブロックとうまく組み合わず、その結果メモリの再割当て非効率となり、大量の物理メモリのコピー操作が必要となり、そしてキャッシュの整合性が損なわれる。固定した所定のサイズのタイルを用いることにより、メモリの要求がはるかに予測可能となり、その結果メモリとプロセッサのリソースははるかに効率的に使われ且つ管理されることができ、断片化は有用性に影響を与えることがなく制限のないものとでき、そしてメモリのコピー操作の必要性は多くの形式のバッファリング操作に対して実質的に除かれることができる(図10(b))。理想的には、タイルサイズはプロセッサのMMUのブロックサイズと一致するように選択される。
【0056】
図10(c)は、タイルプール内のタイルを管理するための好ましいスキームを説明する。タイル番号ゼロは各々の新しいタイルを形成するために常に予約されている。一旦新しいタイルが形成されたら、そのタイルは次の利用可能な空き番号を用いて再番号付けされる(タイルプールが最大nタイルを提供できる場合は、割当てられるタイルのアドレスの数はn−1に制限される)。タイルプールの再番号付け障害の事象においては、タイルプールが一杯でもう空きタイルがない場合は、新しいタイル0が直接画面に書き込まれ、バックグラウンド処理(スレッド)がゴミの収集(例えば「老化した」タイルの特定と除去)及び/又は臨時のタイルアドレスの割当てのために開始される。これによってリソース割り当て障害を取り扱うための適応機構が提供される。
【0057】
記載されているタイリングのスキームは、図11に説明されるように並列処理に役立つ。1つのセットのタイルの処理は複数の並列処理の間で分割される(例えば、図1の形状プロセッサ22の複数のインスタンスの間で)。例えば、タイル1−20のセットは、タイルの画面上の位置に基づいて分割されることができ、その結果タイル1−10の処理はあるプロセッサWASP−Aにより取り扱われ、タイル11−20の処理は第二のプロセッサWASP−Bにより取り扱われる。従って、もし再描画命令が、タイル1−3、7−9及び12−14が再描画されることを要求すれば、タイル2−4と7−9とはWASP−Aにより取り扱われ、タイル12−14はWASP−Bにより取り扱われる。二者択一的には、タイルのセットは、タイルのメモリをWASP−Aにより処理するためのメモリAとWASP−Bにより処理するためのメモリBに分割して、タイルのメモリマップにおけるタイルの位置に基づいて分割されることができる。
【0058】
記載されているタイリングのスキームは、複数のバッファリングとオフスクリーンのキャッシングの使用を容易にする。それはまた、ソフトウェア中での中断可能な再描画機能(例えば、ユーザーの入力に応答して現在の再描画が中断されて新しい再描画が開始されてもよいように)、効率的な色/表示変換とディザリング、表示全体の高速90度(縦長の/横長の)回転も容易にし、個々のオブジェクトに対して要求される再描画メモリも減少させる。タイリングはまた、補間したビットマップのスケーリングをより高速に且つより効率的にもする。図1のようなシステムは、データ処理システムの全てのオペレーティングシステム/GUIとアプリケーション表示機能とに共通のタイルプールを用いてもよいこともまた認められるだろう。
【0059】
本発明のこの態様の二者択一的な実施形態において、スタック中の静的オブジェクトの全ては、単一のビットマップオブジェクトへと結合される(混合される)ことができる。そしてそのとき動画は、静的オブジェクトを混合する処理において生成した「ステンシル」又は「マスク」(以下にさらに記述されるように混合パラメータがトランスペアレンシを表す場合には「アルファマスク」)に基づいて、その単一のビットマップオブジェクトと混合される。これは図5、6、及び7で説明される。
【0060】
この方法は、混合したオブジェクトの合成画素値の一時記憶のための表示バッファ200を用い、またオブジェクトスタック中の混合した静的オブジェクトの全てを表現する表示バッファコンテンツと1つ又はそれ以上の動画とを混合する際に用いるためのステンシルの対応する画素値の一時記憶のための、1つ又はそれ以上のステンシルバッファ202を用いる。
【0061】
本発明のこの態様の一例は、オブジェクトA−F(スタックの最下位から最上位へ向かって)のスタックを参照して記述されるだろう。ここでDは動画でありA、B、C、E及びFは静的オブジェクトである。各オブジェクトは関連するアルファ値を持つ。1つのオブジェクトは単一で一定のアルファ値を持ってもよいし、あるいはアルファ値はオブジェクトの領域を超えて変化してもよい(例えば、オブジェクトは「ソフトエッジ」を持ち、エッジに向かって次第に透明になっていてもよい)。このことはアルファ値以外の混合機能及びパラメータに等しくあてはまる。ここで述べられる例は、各オブジェクトの混合パラメータ値(この例ではアルファ値)が画素から画素へと任意に変化するような最も一般的な場合に関するものである。
【0062】
この処理の第一段階において、静的オブジェクトA、B、C、E及びFは、それぞれの画素値(典型的には、使用する色モデルに依存する様式において、色及び彩度、又はクロミナンス及びルミナンス等を定義するもの)及びアルファ値を考慮して、また動画Dのアルファ値も考慮して、スタックの最下位から最上位へ順番に混合される。動画Dの画素値はこの静的オブジェクトの混合の間は考慮されず、結果として、静的オブジェクトA、B、C、E及びFの全ての画素値とオブジェクトA−Fの全てのアルファ値とから導かれる合成物である単一のビットマップオブジェクトGを含むような表示バッファ200になる。
【0063】
静的オブジェクトが表示バッファ200において混合されているのと同時に、ステンシルHが、動画D自体のアルファ値と、スタック中で動画Dの上方にある静的オブジェクト、この例ではEとFのアルファ値とに基づいて、ステンシルバッファ202において生成される。静的オブジェクトの全てが上記のように混合された後に得られる最終的なステンシルは、スタック中の全てのオブジェクトに相対し且つスタック内の動画Dの位置を考慮する動画Dのトランスペアレンシを反映する、各画素に対する合成したアルファ値からなる。
【0064】
処理の最終段階では、合成ビットマップGの画素値は、動画Dの画素値と、ステンシルHからのアルファ値を用いて混合され、オブジェクトA−Fの全ての合成物である最終ビットマップを作成する。動画Dのコンテンツがいつ変化しても、必要なことは以前に得たステンシルHを用いて新しい動画コンテンツを以前に得たビットマップGと混合することのみである。
【0065】
もし動画のトランスペアレンシが他のオブジェクトに対して変化すれば、そのときはもちろん、新しい合成ビットマップGとステンシルHとを生成する必要がある。下記に述べる本発明のさらなる実施形態は、例えばオブジェクトをフェイドイン又はフェイドアウトするために、オブジェクトのトランスペアレンシ(又は他の混合パラメータ)が時間とともに変更される場合に、新しい合成ビットマップとステンシルとを生成する処理を簡略化できる(トランスペアレンシ又は他の混合パラメータが時間とともに変わるその他の静的オブジェクトは、上記で提供された定義の用語の範囲内で動画オブジェクトであるか又は動画オブジェクトとなる)。
【0066】
この方法は、スタック内の複数の動画に対して、スタック中の各オブジェクトのトランスペアレンシと位置を考慮している、各動画に対する単一の合成ビットマップGとステンシルHとを生成して、適合してもよい。
【0067】
この方法は、図5、6及び7で説明するような特定の簡略化した例を参照することにより、よりよく理解されることができる。
【0068】
図6は、10画素掛ける10画素の表示バッファ200と対応する10x10のステンシルバッファ202とを示す。これらのバッファの各々の下には、各バッファのある列204の各ピクセルのコンテンツが、この方法のステップ[1]−[7]の各々に対して、概略的に図示されている。このバッファのコンテンツの説明図において、垂直方向は各オブジェクトから及びオブジェクトの結合物から導かれたコンテンツの比率を示す。これらの比率の変化は、様々なアルファ値に基づいた様々なオブジェクトと結合物との画素値の「スケーリング」を参照することにより、ここでは述べられる。この方法は図示された列の左側の画素206を特に参照することにより述べられるだろう。
【0069】
図7は、表示とステンシルとのバッファのコンテンツが図6の列の左側の画素に対してどのように計算され変化するかを示す表である。オブジェクトA−Fの各々の該当する列の左側の画素のアルファ値は、下記のようなものであると仮定する。
【0070】
【0071】
予備的なステップ(図示せず)において、表示バッファ200のコンテンツは、例えば黒又は白に初期化され、ステンシルバッファ202は、「100%」に初期化される。便宜のため、この初期の表示バッファ200の状態は初期オブジェクトIと称することにする。
【0072】
各ステップ[1]−[6]において、表示バッファの新しいコンテンツは、現在のバッファの画素値をそれと混合される次の静的オブジェクトNのアルファ値の補数によりスケーリングし、オブジェクトNの画素値をそれ自体のアルファ値によりスケーリングし、そして2つを一緒に加えることによって決定される。すなわち、本例のステップ[1]においては、
合成した画素値=(100−60)%I+60%A
d[1]=40%I+60%A
【0073】
処理が動画Dに到達するとき、現在のバッファコンテンツは動画のアルファ値の補数によりスケーリングされている。しかしバッファには何も加えられない。その後は、現在のバッファの値と次の静的オブジェクトの値がスケーリングされ、以前のように付加がなされる。最後の静的オブジェクトFがスケーリングされてバッファに加えられた後は、バッファのコンテンツは合成の静的ビットマップGからなる(ステップ[6])。
【0074】
ステップ[1]−[6]の間、ステンシルバッファのコンテンツは動画Dに達する(ステップ[4])までは変わらないままである。ステンシルの値はそこで動画のアルファ値によりスケーリングされる。その後のオブジェクト(例えばスタック中で動画の上方のオブジェクト)に対しては、ステンシルの値は各オブジェクトのアルファ値の補数によりスケーリングされる。最後の(最上位の)オブジェクトが処理されたらすぐに、最後のステンシル値Hが得られる(ステップ[6])。
【0075】
最後に、ステップ[7]において、動画Dの画素値はステンシル値Hによってスケーリングされ、合成ビットマップ値Gに加えられ、最終的な、動画コンテンツを含む合成表示を得る。動画コンテンツにおけるその後の変化に対しては、表示を更新するために新しい動画コンテンツを用いてステップ[7]を繰り返すことのみが必要である(合成ビットマップGとステンシルHとを再計算することが必要となるときに、他のオブジェクトに対する動画のトランスペアレンシが変化しない限り)。
【0076】
上で述べたように、この方法は複数の動画を含むオブジェクトのスタックに対して適用できる。合成の静的ビットマップGは各動画の位置(スタック中の)とトランスペアレンシとを考慮して計算されるだろうし、ステンシルHは、個々の動画自体と、スタック中でその動画の上方にある全ての静的及び動画オブジェクトとのトランスペアレンシを考慮して、各動画に対して計算されるだろう。
【0077】
本発明のこの実施形態の目的にとっては、様々なオブジェクトの画素値のスケーリングが正しい順序(スタックの最下位から最上位へ)で実行され、その結果最終的な合成イメージが順序とオブジェクトの相対的なトランスペアレンシとを正確に反映するものであることが重要であるが、様々なオブジェクトのスケーリングした値が一緒に加えられる際の順序は重要ではないことが理解されるであろう。
【0078】
この方法は動画混合処理の2つの段階、スケーリングと付加とを有効に分離し、第二段階である付加が、フレームの更新が実行されるまで延期されることを可能にする。こうして、スケーリングした動画の画素値を単に差し引くだけで、合成イメージから前の動画オブジェクトのフレームを除去することができる。前のフレームが単一のステップで除去できる間に、新しいフレームはスケーリングされ且つ付加されることができ、システムのオーバーヘッドを減少させ、従来の方法でしばしば発生する視覚表示のちらつきも減少させる。このことは図8に説明され、図8は、最初は合成の静的コンテンツGと、第一の動画コンテンツKと、第二の動画コンテンツLとの結合からなる合成表示フレームを示す。第一の動画コンテンツKは、そのスケーリングした画素値を合成表示コンテンツから単に差し引くだけで除去でき、前にコンテンツKに対して用いたものと同じステンシル値を用いてスケーリングした新しい動画コンテンツMを単に加えるだけで置き換えることができる。
【0079】
本発明のこの方法で用いられる合成の静的オブジェクトと動画オブジェクトのコンテンツは、表示コンテンツを生成し、更新を実行するための多くの異なる方法で結合/混合が行なわれてもよいことが理解されるであろう。例えば、混合は現在の表示コンテンツを更新する前に独立して実行されてもよいし、又は混合と更新が、例えば上に述べたように、現在の表示コンテンツから差し引き及びそれに付加することによって「同時に」実行されてもよい。
【0080】
図9は、従来のオブジェクトの混合処理を、図2と3の「分割クラスタ」法及び図5から8の「フリップサイド分割クラスタ」法と、図5と同じオブジェクトのスタックを参照することにより比較するものである。従来の方法においては、動画コンテンツが変化するたびに、正確な新しい合成表示出力を生成するためにスタック中の個々のオブジェクトの全てを処理する必要がある。この処理は、最初の表示フレームを描画する前に前処理が不要なので、初期化するためには「安価」(システムリソースの点で)である、しかしオブジェクトの全てがそのたびに再処理されなければならないので、後に続く再描画に対しては高価である。
【0081】
分割クラスタ法は、隣接する静的オブジェクトの群を単一のオブジェクトT及びBに減らし、その結果、従来法における6つのオブジェクトA−Fと比較して、各再描画は3つのオブジェクトT、D及びBの処理のみを含む。合成の静的オブジェクトT及びBを生成する必要があるので、初期化はより高価である。従来法及び分割クラスタ法の両方において、各再描画はオブジェクトA−F及びT、D、Bのコンテンツとトランスペアレンシ(及び/又は他の混合パラメータ値)との両方を処理することを必要とすることに注意する。
【0082】
フリップサイド分割クラスタ法は、静的オブジェクトの全てを単一の合成の静的オブジェクトGに減らし、また上述したように、動画のアルファステンシル(及び/又は他の混合パラメータステンシル)の生成もまた必要とし、その結果初期化は前述の方法のいずれよりも高価である。しかしながら、各再描画は、新しい動画コンテンツがアルファステンシルの値によりスケーリングされ、単一の合成オブジェクトGに付加されることのみを必要とする。この段階における「混合」は、スケーリングされた動画コンテンツが前に決定された合成オブジェクトGのコンテンツに付加されることのみを含む。オブジェクトGのトランスペアレンシを考慮する必要はない。たとえ動画Dがスタックの最上位又は最下位にある(例えばオブジェクトTとBのうち1つのみがある)場合でも、再描画は従って分割クラスタ法を用いるものよりも安価である。
【0083】
フリップサイド分割クラスタ法は、たとえスタックが単一の静的オブジェクトとその静的オブジェクトの下方に位置する単一の動画とだけからなる場合であっても有利であることは、さらに注意すべきである。動画をスタックの最上位に「フリップする」処理は、再描画のコストをさらに減らす。また、分割クラスタ法とフリップサイドフリップクラスタ法の両方とも、たとえこれらの方法がコストの節約を提供しない場合であっても、なおも単一の静的オブジェクトのみを含むスタック又はクラスタとともに用いられることができる。
【0084】
前述の例は、各オブジェクト(あるいは、最も一般的な場合では、各オブジェクトの各画素)に対して、単一のアルファ値を仮定している。しかしながら、各オブジェクト/画素における各々の色成分がそれ自体のアルファ値を持っていてもよいことが理解されるであろう。例えば、RGBカラースキームが使われれば、オブジェクト中の各画素は3つの色成分、赤、緑、青に対してそれぞれ1つ(通常(R、G、B)と表示される)、を持つであろう。前の例はこれを取り扱うが、それは3成分全てに同じアルファ値を掛けることによってである。しかしながら、3成分の各々に対して異なるアルファ値、すなわちR成分に対してあるアルファ値、G成分に対してもう一つのもの、そしてB成分に対して3つめのものを持つことも可能である。本発明のこの方法は、実質的に前と同じ様式で適用されてもよく、唯一の拡張は、ここでは3つの表示バッファと3つのステンシルとが、R、G、Bの各々に対して1セットあることである。
【0085】
二者択一的には、既存のバッファとステンシルとが深さ3のアレイとしてみなされてもよい。演算は変わらない。例えば、赤のアルファを用いて作業するときは、全ての赤成分に対して補数(1−赤のアルファ)を用いる、等々である。
【0086】
この形式の「色混合」(全ての色チャンネルに均等に適用される「無彩色混合」とは異なるようなもの)は、RGBに基づいた色を参照して記述したが、YUV、YCC等のような色モデルに基づいたあらゆる成分に対して等しく適用できる。異なる混合機能が、異なる色チャンネルに対して同様の様式で独立に適用されることができることも理解されるだろう。
【0087】
上記のように、本発明の「フリップオーダー」混合法は、1つ又はそれ以上の動画(混合パラメータの時間変化を除いて他の点では静的なオブジェクトを含む)をフェードする(トランスペアレンシ又は他の混合パラメータを変化させる)ことに適応ことができる。(前述のように、これも無彩色混合及び色混合の両方に適用できる)。
【0088】
トランスペアレンシとしてアルファを持つ動画Aが中間のどこかにあるオブジェクトのスタックを考えてみる。スタック全ては、トランスペアレンシのアルファ又はあらゆる修正されたトランスペアレンシ値を持つAを含めて、次の方法により表示されることができる。
【0089】
上記のフリップオーダーのアルゴリズムは表示バッファとステンシルとのセットを2つ作成するために用いられてもよい。第一のセット(D0、S0)は動画Aに対するゼロの仮トランスペアレンシ値を用いて作成される。第二のセット(D1、S1)は動画Aに対する1のトランスペアレンシ値を用いて計算される。
【0090】
次に合成した表示バッファ(D、S)は、Aに対するトランスペアレンシのあらゆる選択された値(t)に対して、次のように作り出されることができる。
D=(1−t)D0+tD1
S=(1−t)S0+tS1
そして最終結果は、これまでのように合成したステンシルを動画Aに適用し、表示バッファを加える(=AS+D)ことでもたらされる。t=アルファのときは、これは元々の結果を作成する。しかしながら、単に方程式の中のtの値を変えるだけで、D0、D1、S0あるいはS1を生成する混合ステップのいずれをも繰り返すことなしに、フェードした結果を迅速に作り出すこともできる。
【0091】
より一般的に言って、この方法は、前述したようなフリップオーダー法を用いて、1つ又はそれ以上のステップにおいてグラフィックオブジェクトの順序付けられたスタック中の少なくとも1つの動画オブジェクトの混合パラメータの値を変化させるために適応する。この方法は、第一及び第二の混合パラメータステンシルと第一及び第二の表示バッファとを、第一及び第二の混合パラメータ値又は混合パラメータ値のセットに対応するスタック中の前記の又は各々の動画オブジェクトに対して形成することからなる。前記第一及び第二のステンシルの各々の混合パラメータ値は、対応する動画オブジェクトと、スタック中でその対応する動画オブジェクトの上方にあるあらゆるオブジェクトとの混合パラメータ値を考慮に入れる。混合パラメータの値を変化させる各ステップに対して、合成した混合パラメータステンシル及び合成した表示バッファコンテンツが、第一及び第二のステンシルと第一及び第二の表示バッファと現在のステップに対して要求されたパラメータ混合値とから導かれる。合成したステンシル及び表示バッファは、次に動画オブジェクトと合成の静的オブジェクトのコンテンツを混合する際に使用される。
【0092】
再び図1を参照して、本発明の方法が好ましく実施される好適なシステムは、デバイス非依存の色モデル、好適にはCIE L*a*b* 1976モデルのようなルミナンス/クロミナンスモデルを用いる。これはグラフィックオブジェクトにおける冗長性を減らし、データの圧縮率を改善し、また異なる出力デバイス間での色出力の整合性を改善する。デバイス依存の色補正は、デバイス依存の制御入力44に基づいて、形状プロセッサ22に適用されることができる。
【0093】
本発明の方法で用いられる様々なオブジェクト及び/又はステンシルの解像度は、お互いに及び/又は最終出力表示の解像度と異なっていてもよいということもまた理解されるだろう。異なるオブジェクトはまた異なる色モデルを用いてもよい。この方法が適用されるグラフィックオブジェクトの元々のセットはまた、マスク、ステンシル及びフィルタのようなオブジェクト含んでもよい。
【0094】
図1はソースのバイトストリームが受け取られる入力端と最終出力フレーム24がシステムから出力される出力端とを持つシステムを示す。しかしながら、このシステムは、中間入力又は出力を、例えばデータコンテンツを取出すため又は処理の過程で生成したデータを保存/変換するための他の中間段階に含んでいてもよいということが理解されるだろう。
【0095】
本発明は、ここでは統合された又は少なくともローカルのデータ処理デバイス及びシステムを特に参照して述べられている。一方、本発明はまた、1つ又はそれ以上のコンテンツソースを1つ又はそれ以上の出力ロケーションに連結するあらゆる形式のデータ通信ネットワークを経由する分散システムにおいて実施されてもよい。本発明はこのような状況において有利である、なぜなら、例えば、帯域を節約し、ネットワークのリソースを維持して、混合されたオブジェクト及び/又はステンシルがネットワークを経由して一度だけ送信されることが必要であり、動画コンテンツの最新のもののみがその後送信されることが必要だからである。異なるソースからのコンテンツは、1つ又はそれ以上の最終ユーザーのロケーションへの送信のための1つ又はそれ以上の中間にあるロケーションにおいて混合され、そこで最終的な混合が必要に応じて実行されてもよい。
【0096】
本発明の第二の態様に従うデジタルドキュメント処理システムは、様々な形式のデータ処理システム及びデバイスに、そして周辺デバイスに、多くの異なる方法で組み込まれてもよい。
【0097】
汎用のデータ処理システム(「ホストシステム」)においては、本発明のシステムはホストシステムのオペレーティングシステム及びアプリケーションと並べて組み込まれていてもよいし、ホストのオペレーティングシステムに完全に又は部分的に組み込まれてもよい。
【0098】
例えば、本発明のシステムは、LCD表示装置を持つポータブルデータ処理デバイスにおいて、ブラウザやアプリケーションプログラムの使用を必要とせずに、様々な形式のデータファイルの高速表示を可能にする。この部類のデータ処理デバイスは、携帯性のために小さいサイズ、低パワーのプロセッサを必要とする。典型的には、エレクトロニクスの実装ができるだけ小さく且つ高集積になるように、ASICs(application specific integrated circuits、特定用途向けIC)に設計された高度なRISC型コアプロセッサの使用を必要とする。この形式のデバイスはまた、限られたランダムアクセスメモリを持ち、典型的には不揮発性データ記憶装置(例えばハードディスク)を持たない。標準のデスクトップコンピュータシステム(PCs)において用いられているような従来のオペレーティングシステムのモデルは、デジタルドキュメントを処理して有用な出力を生成するために高いパワーの中央演算装置と大量のメモリとを必要とし、この形式のデータ処理デバイスにとっては完全に不適当である。特に、従来のシステムは統合した様式での複数のファイルフォーマットの処理を提供しない。それに対して、本発明は全てのファイルフォーマットに対して共通の処理とパイプラインとを利用することができ、それによって、消費電力とシステムリソースの利用とに関して極めて効率的な、高度に統合されたドキュメント処理システムを提供する。
【0099】
本発明のシステムは、従来のシステムモデルよりはるかに低いオーバーヘッドを有するドキュメント処理及び出力を可能にするために、ポータブルデータ処理デバイスのBIOSレベルに統合されてもよい。二者択一的に、本発明はトランスポートプロトコルスタックの直上の最下位のシステムレベルで実施されてもよい。例えば、本システムは、ネットワークトラフィックのインライン処理を提供するために、ネットワークデバイス(カード)又はシステムに組み込まれてもよい(例えばTCP/IPシステムにおいてパケットレベルで動作する)。
【0100】
特定のデバイスにおいては、本発明のシステムは、データファイルフォーマットの所定のセットと特定の出力デバイス、例えばデバイスの視覚表示装置及び/又は少なくとも1つの形式のプリンタ、と共に動作するように構成される。
【0101】
本システムを用いることができるポータブルデータ処理デバイスの例は、「パームトップ」コンピュータ、ポータブル・デジタル・アシスタント(PDAs、主要なユーザーインターフェイスが、ユーザーがスタイラスデバイスを用いて直接対話するグラフィック表示からなる、タブレット形式のPDAsを含む)、インターネット接続が可能な携帯電話、そしてその他の通信デバイス等を含む。
【0102】
本システムはまた、高機能電話及び「シン」ネットワーククライアント端末(例えば限られたローカルの処理と記憶装置のリソースとを有するネットワーク端末)のような低コストのデータ処理端末や、双方向の/インターネット接続が可能なケーブルTVシステムにおいて使用するための「セットトップボックス」にも組み込まれてもよい。
【0103】
データ処理システムのオペレーティングシステムに統合された場合は、本発明のシステムはまた、オペレーティングシステム(OS)のための新規のグラフィカルユーザーインターフェイス(GUI)の基礎を形成してもよい。このシステムにより処理され表示されるドキュメントは、メニュー、ボタン、アイコン等のような、オペレーティングシステムの基礎を成す機能にユーザーインターフェイスを提供する対話式の機能を含んでいてもよい。拡大解釈すれば、システムの「ドキュメント」に関しては、完全なOS/GUIが表現され、処理され、表示されてもよい。このOS/GUIは、複数の「章」で単一のドキュメントを構成できる。
【0104】
本発明のシステムはまた、ハードコピーデバイス(プリンタやプロッタ)、表示デバイス(デジタルプロジェクタのようなもの)、ネットワークデバイス、入力デバイス(カメラ、スキャナ等)、そしてまた多機能周辺装置(MFPs)のような周辺デバイスにも組み込まれてもよい。
【0105】
プリンタに組み込まれる場合は、本システムは、ホストシステムにより提供される特定のアプリケーション又はドライバに対する必要性なく、プリンタが未加工のデータファイルをホストデータ処理システムから受け取り、元のデータファイルのコンテンツを正確に複製することを可能にすることができる。これによりコンピュータシステムを特定の形式のプリンタを駆動するように構成する必要性が回避される。本システムは、プリンタによる出力に適するソースドキュメントのドットマップイメージを直接生成してもよい(これは本システムがプリンタ自体に組み込まれようがホストシステムに組み込まれようが正しい)。同様な考慮はプロッタのような他のハードコピーデバイスに適用される。
【0106】
プロジェクタのような表示デバイスに組み込まれる場合は、本システムは、この場合も同様に、ホストシステム上のアプリケーション又はドライバの使用なしに、そしてホストシステム及び/又は表示デバイスの特定の構成の必要性なしに、そのデバイスが元のデータファイルのコンテンツを正確に表示することを可能にすることができる。これらの形式の周辺デバイスは、本システムを備えた場合には、あらゆる形式のデータ通信ネットワークを経由して、あらゆるソースからデータファイルを受け取り、出力することができる。
【0107】
以上のことから、本発明のシステムは、「ハードワイヤードされる」、例えばROMの中で実現される及び/又はASICsや他のシングルチップシステムに集積されるものであってもよく、あるいはファームウェア(一括消去できるePROMのようなプログラマブルROM)として実現されても、あるいはローカルに又はリモートに記憶され、特定のデバイスによる要求に応じて取出され実行されるようなソフトウェアとして実現されてもよいことが理解されるであろう。
【0108】
なお、改善と変更が、本発明の範囲を逸脱すること無しに取り入れられてもよい。
【図面の簡単な説明】
【0109】
【図1】本発明の様々な態様を実施する際に用いることができる好ましいデジタルドキュメント処理システムの実施形態を説明するブロック図である。
【図2】本発明の一態様に従ってグラフィックオブジェクトを混合する方法の第一の実施形態を説明する図である。
【図3】本発明の一態様に従ってグラフィックオブジェクトを混合する方法のさらなる実施形態を説明する図である。
【図4】本発明の一態様に従ってグラフィックオブジェクトを混合する際のタイリング方法の使用を説明する図である。
【図5】本発明の一態様に従ってグラフィックオブジェクトを混合する方法の別の実施形態を説明する図である。
【図6】図5の方法の一例の実施の間にどのように表示及びステンシルのバッファのコンテンツが変化するかを示す概略図である。
【図7】図6の例をさらに説明する表である。
【図8】動画コンテンツを合成グラフィックイメージに加えそしてそこから差し引くための図5乃至7の方法の実施を概略的に説明する図である。
【図9】従来のオブジェクト混合処理を図2と3の方法及び図5−8の方法と比較する図である。
【図10】(a)は従来のバッファリング方法に関連したメモリの割当てと断片化を説明する図であり、(b)は本発明の好ましい実施形態において用いられるタイリング方法に関連したメモリの割当てと断片化を説明する図であり、(c)は本発明の好ましい実施形態において用いられるタイリング方法を実施する好ましい方法を説明する図である。
【図11】図4Bの方法を実施するための複数の並列プロセッサモジュールの使用を説明する図である。
Claims (52)
- デジタルドキュメント処理システムにおいて複数の互いに重なり合うグラフィックオブジェクトを混合する方法であって、前記複数のグラフィックオブジェクトは、少なくとも1つの静的オブジェクトと少なくとも1つの動画オブジェクトを含む、順序付けられたスタックの中に配列されており、前記オブジェクトの各々はグラフィックのコンテンツからなり且つ前記オブジェクトの少なくとも一部に対して関連する少なくとも1つの混合パラメータを有しており、前記方法は、
(a) 前記静的オブジェクトの各混合パラーメータを考慮して、少なくとも1つの合成の静的オブジェクトを形成するために前記静的オブジェクトのコンテンツを混合し、
(b) 前記動画オブジェクトの混合パラメータを考慮して、前記動画オブジェクトのコンテンツと前記の又は各々の合成の静的オブジェクトとを混合することを特徴とする方法。 - 請求項1の方法であって、さらに、
(c) 動画オブジェクトのコンテンツが変化するときは、ステップ(a)で形成された、前に得られた合成の静的オブジェクトを用いて、ステップ(b)を繰り返すことを特徴とする方法。 - 請求項2の方法であって、第一の動画オブジェクトのコンテンツを用いてステップ(b)で形成された現在の表示コンテンツが、第二の動画オブジェクトのコンテンツと前に得られた合成の静的オブジェクトとを混合することにより形成された、新しい表示コンテンツに置き換えられることを特徴とする方法。
- 請求項2の方法であって、第一の動画オブジェクトのコンテンツを用いてステップ(b)で形成された現在の表示コンテンツが、該現在の表示コンテンツから前記第一の動画のコンテンツを差し引き、第二の動画オブジェクトのコンテンツを加えることによって更新されることを特徴とする方法。
- 請求項1乃至4のいずれか1項の方法であって、前記動画オブジェクトは前記スタックの最上位にあり、ステップ(a)は、単一の合成の静的オブジェクトを形成するために、前記スタックの中で動画オブジェクトの下方に位置する静的オブジェクトを混合することからなり、ステップ(b)は、前記動画オブジェクトを前記単一の合成の静的オブジェクトと混合することを含むことを特徴とする方法。
- 請求項1乃至4のいずれか1項の方法であって、前記動画オブジェクトは前記スタックの最下位にあり、ステップ(a)は、単一の合成の静的オブジェクトを形成するために、前記スタックの中で前記動画オブジェクトの上方に位置する静的オブジェクトを混合することからなり、ステップ(b)は、前記動画オブジェクトを前記単一の合成の静的オブジェクトと混合することを含むことを特徴とする方法。
- 請求項1乃至4のいずれか1項の方法であって、ステップ(a)は、第一の合成の静的オブジェクトを形成するために、前記スタックの中で動画オブジェクトの下方に位置する静的オブジェクトを混合し、第二の合成の静的オブジェクトを形成するために、前記スタックの中で前記動画オブジェクトの上方に位置する静的オブジェクトを混合することからなり、ステップ(b)は、前記動画オブジェクトを前記第一及び第二の合成の静的オブジェクトと混合することを含むことを特徴とする方法。
- 請求項7の方法であって、前記スタックは、複数の動画オブジェクトを含み、ステップ(b)は、前記スタックの中で最下位の動画オブジェクトの下方に位置する、又は最上位の動画オブジェクトの上方に位置する、あるいは動画オブジェクトの間に挟まれて位置する静的オブジェクトの群の各々に対して合成の静的オブジェクトを形成することを含むことを特徴とする方法。
- 請求項1乃至4のいずれか1項の方法であって、ステップ(a)は、前記スタックの中の全ての静的及び動画オブジェクトの相対的な混合パラーメータを考慮して、前記スタックの中の全ての静的オブジェクトのコンテンツを単一の合成の静的オブジェクトに混合し、前記スタックの中の前記の又は各々の動画オブジェクトに対して混合パラーメータ値のステンシルを形成し、前記の又は各々のステンシルの混合パラメータ値は、前記対応する動画オブジェクトと前記スタックの中の前記対応する動画オブジェクトの上方のあらゆるオブジェクトとの混合パラメータ値を考慮していることからなり、ステップ(b)は、前記対応する混合パラメータ値のステンシルに基づいて、前記の又は各々の動画オブジェクトのコンテンツを前記合成の静的オブジェクトと混合することからなることを特徴とする方法。
- 請求項9の方法であって、前記オブジェクトは表示バッファにおいて混合されるものであり、かつ、
前記スタックの中の次のオブジェクトの混合パラメータ値の補数により前記表示バッファの現在のコンテンツをスケーリングすることにより、前記オブジェクトを前記スタックの最下位から最上位まで順番に処理し、
前記スタックの中の次のオブジェクトは静的オブジェクトであり、該静的オブジェクトのコンテンツをそれ自体の混合パラメータ値によりスケーリングし、該静的オブジェクトのスケーリングされたコンテンツを、前記表示バッファのスケーリングされたコンテンツに加えることからなることを特徴とする方法。 - 請求項10の方法であって、各々の動画オブジェクトに対する混合パラーメータ値のステンシルはステンシルバッファにおいて形成されるものであり、かつ、
前記スタックの中の次のオブジェクトは前記ステンシルバッファに対応する動画オブジェクトであり、該動画オブジェクトの混合パラーメータ値により前記ステンシルの混合パラーメータ値をスケーリングし、かつ
前記スタックの中の次のオブジェクトは前記ステンシルバッファに対応する動画オブジェクトの上方にあり、該次のオブジェクトの混合パラメータ値の補数により前記ステンシルバッファの現在の混合パラメータ値をスケーリングすることからなることを特徴とする方法。 - 請求項11の方法であって、ステップ(b)は、前記対応するステンシルの混合パラメータ値により前記動画オブジェクトのコンテンツをスケーリングし、該スケーリングした動画オブジェクトのコンテンツを、前記表示バッファの合成しスケーリングした静的オブジェクトのコンテンツに加えることからなることを特徴とする方法。
- 請求項12の方法であって、現在の表示コンテンツは、新しい動画オブジェクトのコンテンツを前に得られた混合パラメータ値のステンシルを用いてスケーリングし、該新しいスケーリングした動画オブジェクトのコンテンツを前記前に得られた合成の静的オブジェクトに加えることにより、更新されることを特徴とする方法。
- 請求項12の方法であって、現在の表示コンテンツは、新しい動画オブジェクトのコンテンツを前に得られた混合パラメータ値のステンシルを用いてスケーリングし、現在のスケーリングした動画オブジェクトのコンテンツを前記現在の表示コンテンツから差し引き、前記新しいスケーリングした動画オブジェクトのコンテンツを加えることにより、更新されることを特徴とする方法。
- 順序付けられたグラフィックオブジェクトのスタックの中の少なくとも1つの動画オブジェクトの混合パラメータの値を1又はそれ以上のステップで変えるために適応した、請求項10乃至14のいずれか1項の方法であって、第一及び第二の混合パラメータ値又は混合パラメータ値のセットに対応した前記スタックの中の前記の又は各々の動画オブジェクトに対して、第一及び第二の混合パラメータのステンシルと第一及び第二の表示バッファを形成し、前記第一及び第二のステンシルの各々の混合パラメータ値は、前記対応する動画オブジェクトと前記スタック中の前記対応する動画オブジェクトの上方のあらゆるオブジェクトとの混合パラメータ値を考慮しており、かつ、前記混合パラメータの値を変える各ステップに対して、前記ステップ(b)での使用のために、合成した混合パラメータステンシル及び合成した表示バッファコンテンツを、前記第一及び第二のステンシルと前記第一及び第二の表示バッファと現在のステップに対して要求されたパラメータ混合値とから導入することを特徴とする方法。
- 請求項15の方法であって、前記第一のステンシルS0及び前記第一の表示バッファD0は、ゼロの混合パラメータ値を用いて作り出され、前記第二のステンシルS0及び前記第二の表示バッファD1は、1の混合パラメータ値を用いて作り出され、かつ、前記合成したステンシルS及び前記合成した表示バッファのコンテンツDは、前記現在のステップの要求されたパラメータ混合値tに対して次のように計算されることを特徴とする方法。
D=(1−t)D0+tD1
S=(1−t)S0+tS1 - 請求項1乃至16のいずれか1項に記載された方法であって、前記の少なくとも1つの各オブジェクトの混合パラメータは、前記オブジェクトの少なくとも一部に対して関連するトランスペアレンシを表す少なくとも1つのアルファ値を含むことを特徴とする方法。
- 前のいずれかの請求項に記載された方法であって、前記の少なくとも1つの混合パラメータは、関連する前記オブジェクトの全ての色チャンネルに適用できる無彩色混合パラメータであることを特徴とする方法。
- 請求項17に記載の方法であって、前記の少なくとも1つの混合パラメータは、複数の色混合パラメータ値からなり、各々の色混合パラメータ値は、関連する前記オブジェクトの少なくとも1つの色チャンネルに適用できることを特徴とする方法。
- 請求項1乃至19のいずれか1項に記載の方法であって、前記グラフィックオブジェクトと合成オブジェクトとを、固定された所定のサイズの複数のビットマップタイルに分割し、該タイルをインデックスを付したアレイに記憶することを含むことを特徴とする方法。
- 請求項20に記載の方法であって、前記オブジェクトの少なくとも1つを、最も近いタイルサイズに丸めることにより、選択的にクリッピングすることを含むことを特徴とする方法。
- 請求項20に記載の方法であって、前記グラフィックオブジェクトの現在のコンテンツは、余剰なタイルを前記選択されたセットから取り除き且つ新しいタイルを前記選択されたセットに加えることにより、更新されることを特徴とする方法。
- 請求項15乃至22のいずれか1項に記載の方法であって、前記タイルのサブセットを並列に処理することを含むことを特徴とする方法。
- 請求項1乃至19のいずれかに記載の方法であって、前記オブジェクトと合成表示のコンテンツは、請求項20乃至23のいずれかに従って、タイルから組み立てられることを特徴とする方法。
- 前のいずれかの請求項に記載された方法であって、前記グラフィックオブジェクトは、データ通信ネットワーク経由での少なくとも1つの出力ロケーションへの送信のための、少なくとも1つのコンテンツソースから生じており、かつ、前記混合のステップ(a)及び(b)は、前記コンテンツソースの少なくとも1つ及び/又は前記出力ロケーションの少なくとも1つ、及び/又は少なくとも1つの中間にあるロケーションにおいて、少なくとも1部が実行されることを特徴とする方法。
- デジタルドキュメント処理システムであって、請求項1乃至26のいずれかの方法を実行するために適応したものであることを特徴とするデジタルドキュメント処理システム。
- 請求項26に記載のシステムであって、
複数の所定のデータフォーマットの1つにおいてソースデータを表す入力バイトストリームを受け取るための入力機構と、
前記バイトストリームを翻訳するための翻訳機構と、
前記バイトストリームから翻訳したコンテンツを内部表現データのフォーマットへ変換するための変換機構と、
出力デバイスを駆動するために適した出力表現データを生成するために前記内部表現データを処理するための処理機構とを備えるものであることを特徴とするシステム。 - 請求項27に記載のシステムであって、前記ソースデータはデジタルドキュメントのコンテンツと構造を定義し、かつ、前記内部表現データは、前記構造を、複数のデータ形式を定義する包括的オブジェクトと包括的オブジェクトの特定のインスタンスの性質を定義するパラメータとに関して、前記コンテンツとは分離して記述することを特徴とするシステム。
- 請求項28に記載のシステムであって、さらに包括的オブジェクトの形式のライブラリを含み、前記内部表現データは、前記ライブラリのコンテンツに基づくものであることを特徴とするシステム。
- 請求項28又は請求項29に記載のシステムであって、オブジェクトとパラメータに基づく前記内部表現データの少なくとも1部の特定のビューの表現を、第一の制御入力に基づいて生成するのに適合したパーシング及びレンダリングモジュールを含むことを特徴とするシステム。
- 請求項30に規定されたシステムであって、さらに、前記特定のビューの前記オブジェクトとパラメータに基づく表現を、前記パーシング及びレンダリングモジュールから受け取るのに適合し、かつ、前記オブジェクトとパラメータに基づく表現を、特定の出力デバイスを駆動するのに適した出力データフォーマットへ変換するのに適合した形状処理モジュールを含むことを特徴とするシステム。
- 請求項31に記載のシステムであって、前記形状処理モジュールは、前記オブジェクトを、オブジェクトの境界を定義するバウンダリボックスと、該バウンダリボックスにより境界をつけた前記オブジェクトの実際の形状を定義する形状と、前記オブジェクトのデータコンテンツと、前記オブジェクトのトランスペアレンシとに基づいて処理することを特徴とするシステム。
- 請求項32に記載のシステムであって、前記形状処理モジュールは、前記オブジェクトのエッジにグレイスケールのエイリアス除去を適用するのに適したものであることを特徴とするシステム。
- 請求項31、請求項32、又は請求項33に記載のシステムであって、前記形状処理モジュールは、パイプラインアーキテクチャを有するものであることを特徴とするシステム。
- 請求項28乃至34のいずれか1項に記載のシステムであって、前記オブジェクトのパラメータは、次元の、物理的な、及び時間のパラメータを含むものであることを特徴とするシステム。
- 請求項27乃至35のいずれかに記載のシステムであって、該システムは、色データを記述するために、クロミナンス/ルミナンスに基づく色モデルを用いることを特徴とするシステム。
- 請求項27乃至36のいずれかに記載のシステムであって、該システムは、1つ又はそれ以上のデータソースからの1つ又はそれ以上のセットのソースデータを処理して1つ又はそれ以上のセットの出力表現データを生成するための、全部又は一部における複数の並列実行に適応したものであることを特徴とするシステム。
- データ処理システムのためのグラフィカルユーザーインターフェイスであって、該ユーザーインターフェイスにより用いられる対話型の視覚表示は、請求項26乃至37のいずれか1項に記載されたデジタルドキュメント処理システムにより生成されるものであることを特徴とするグラフィカルユーザーインターフェイス。
- データ処理デバイスであって、請求項38に記載されたグラフィカルユーザーインターフェイスを組み込んでいるものであることを特徴とするデータ処理デバイス。
- ハードウェアデバイスであって、請求項26乃至37のいずれか1項に記載のデジタルドキュメント処理システムをデータ処理し及び/又はストレージエンコードするためのものであることを特徴とするハードウェアデバイス。
- 請求項40に記載のハードウェアデバイスであって、さらにコアプロセッサシステムを含むことを特徴とするハードウェアデバイス。
- 請求項41に記載のハードウェアデバイスであって、前記コアプロセッサはRISCプロセッサであることを特徴とするハードウェアデバイス。
- データ処理システムであって、請求項26乃至37のいずれか1項に記載のデジタルドキュメント処理システムを含むものであることを特徴とするデータ処理システム。
- 請求項43に記載のデータ処理システムであって、該データ処理システムは、ポータブルデータ処理デバイスを備えるものであることを特徴とするデータ処理システム。
- 請求項44に記載のデータ処理システムであって、前記ポータブルデータ処理デバイスは、ワイヤレス通信デバイスを備えるものであることを特徴とするデータ処理システム。
- 請求項43に記載のデータ処理システムであって、該データ処理システムは、ネットワークのユーザー端末を備えるものであることを特徴とするデータ処理システム。
- データ処理システムと共に用いるための周辺デバイスであって、請求項26乃至37のいずれか1項に記載のデジタルドキュメント処理システムを含むものであることを特徴とする周辺デバイス。
- 請求項47に記載の周辺デバイスであって、該周辺デバイスは視覚表示デバイスであることを特徴とする周辺デバイス。
- 請求項47に記載の周辺デバイスであって、該周辺デバイスはハードコピー出力デバイスであることを特徴とする周辺デバイス。
- 請求項47に記載の周辺デバイスであって、該周辺デバイスは入力デバイスであることを特徴とする周辺デバイス。
- 請求項47に記載の周辺デバイスであって、該周辺デバイスはネットワークデバイスであることを特徴とする周辺デバイス。
- 請求項47に記載の周辺デバイスであって、該周辺デバイスは多機能周辺デバイスであることを特徴とする周辺デバイス。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0124630.5A GB0124630D0 (en) | 2001-10-13 | 2001-10-13 | "Systems and methods for generating visual representations of graphical data and digital document processing" |
PCT/GB2002/004598 WO2003034272A2 (en) | 2001-10-13 | 2002-10-10 | Systems and methods for generating visual representations of graphical data and digital document processing |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005505860A true JP2005505860A (ja) | 2005-02-24 |
JP2005505860A5 JP2005505860A5 (ja) | 2006-01-05 |
JP4309270B2 JP4309270B2 (ja) | 2009-08-05 |
Family
ID=9923788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003536932A Expired - Fee Related JP4309270B2 (ja) | 2001-10-13 | 2002-10-10 | グラフィックデータ及びデジタルドキュメント処理の視覚的表現を生成するシステム及び方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7271814B2 (ja) |
EP (1) | EP1435072A2 (ja) |
JP (1) | JP4309270B2 (ja) |
KR (1) | KR100989010B1 (ja) |
CN (1) | CN1308895C (ja) |
AU (1) | AU2002330634A1 (ja) |
GB (1) | GB0124630D0 (ja) |
WO (1) | WO2003034272A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009150998A1 (en) * | 2008-06-12 | 2009-12-17 | Canon Kabushiki Kaisha | Image processing apparatus and control method thereof |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7458061B2 (en) * | 2002-06-14 | 2008-11-25 | Sun Microsystems, Inc. | Protecting object identity in a language with built-in synchronization objects |
US7327873B2 (en) * | 2003-06-06 | 2008-02-05 | Intel Corporation | Fast software rotation of video for portrait mode displays |
US7042464B1 (en) * | 2003-08-01 | 2006-05-09 | Apple Computer, Inc. | Methods and apparatuses for the automated display of visual effects |
JP4364706B2 (ja) * | 2004-04-05 | 2009-11-18 | 富士通株式会社 | 陰線処理方法 |
US8234577B1 (en) * | 2005-05-23 | 2012-07-31 | Glance Networks, Inc. | Method and apparatus for the transmission of changed host display information |
KR100705188B1 (ko) * | 2005-08-16 | 2007-04-06 | 주식회사 현대오토넷 | 문자 폰트 표시 방법 |
US20090160862A1 (en) * | 2005-10-13 | 2009-06-25 | Tae Hyeon Kim | Method and Apparatus for Encoding/Decoding |
KR100923993B1 (ko) * | 2005-10-13 | 2009-10-28 | 엘지전자 주식회사 | 부호화/복호화 방법 및 장치. |
JP4825875B2 (ja) * | 2005-11-17 | 2011-11-30 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 時間変化する低解像度の画像データと共に高解像度の画像データを表示する方法 |
US7876333B2 (en) * | 2006-03-30 | 2011-01-25 | Smart Technologies Ulc | Method and graphical interface for embedding animated content into a computer application |
US8212805B1 (en) | 2007-01-05 | 2012-07-03 | Kenneth Banschick | System and method for parametric display of modular aesthetic designs |
JP4525692B2 (ja) * | 2007-03-27 | 2010-08-18 | 株式会社日立製作所 | 画像処理装置、画像処理方法、画像表示装置 |
WO2009027788A2 (en) * | 2007-08-31 | 2009-03-05 | Furuno Electric Co., Ltd. | Chart display device and method for displaying chart |
US20090073189A1 (en) * | 2007-09-17 | 2009-03-19 | Picsel (Research) Ltd. | System and method for generating visual representations of graphical data and digital document processing |
EP2037414A1 (en) * | 2007-09-17 | 2009-03-18 | Picsel (Research) Limited | Systems and methods for generating visual representations of graphical data and digital document processing |
EP2037415A1 (en) * | 2007-09-17 | 2009-03-18 | Picsel (Research) Limited | Systems and methods for generating visual representations of graphical data and digital document processing |
US8289320B2 (en) * | 2007-10-22 | 2012-10-16 | Samsung Electronics Co., Ltd. | 3D graphic rendering apparatus and method |
JP4441562B2 (ja) * | 2007-10-31 | 2010-03-31 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
US8446426B2 (en) * | 2008-04-28 | 2013-05-21 | Apple Inc. | Technique for visually compositing a group of graphical objects |
US8717380B2 (en) * | 2008-07-04 | 2014-05-06 | Canon Kabushiki Kaisha | Image processing apparatus and control method thereof |
AU2009225336B2 (en) * | 2009-10-13 | 2011-08-04 | Canon Kabushiki Kaisha | Method of compositing variable alpha fills supporting group opacity |
US8805095B2 (en) | 2010-12-03 | 2014-08-12 | International Business Machines Corporation | Analysing character strings |
RU2631164C2 (ru) * | 2011-12-08 | 2017-09-19 | Общество с ограниченной ответственностью "Базелевс-Инновации" | Способ анимации sms-сообщений |
KR20130112197A (ko) * | 2012-04-03 | 2013-10-14 | 삼성전자주식회사 | 객체의 상태 변화를 수행하기 위한 방법 및 그 전자 장치 |
US20140049534A1 (en) * | 2012-08-14 | 2014-02-20 | Livermore Software Technology Corp | Efficient Method Of Rendering A Computerized Model To Be Displayed On A Computer Monitor |
EP2706531A1 (en) * | 2012-09-11 | 2014-03-12 | Nokia Corporation | An image enhancement apparatus |
KR101435578B1 (ko) * | 2013-03-21 | 2014-08-29 | (주) 사이냅소프트 | 객체 조작 인터페이스를 제공하는 문서 작성 장치 및 객체 조작 인터페이스 제공 방법 |
KR20170099211A (ko) * | 2016-02-23 | 2017-08-31 | 에스프린팅솔루션 주식회사 | 복합 문서에 포함된 이미지 객체의 화질 개선 방법 및 이를 수행하기 위한 장치 |
CN110308844B (zh) * | 2018-03-27 | 2021-02-05 | 北京新唐思创教育科技有限公司 | 图像数据处理方法及计算机存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5500933A (en) * | 1993-04-28 | 1996-03-19 | Canon Information Systems, Inc. | Display system which displays motion video objects combined with other visual objects |
JP3462566B2 (ja) * | 1994-04-08 | 2003-11-05 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成装置 |
US5864342A (en) * | 1995-08-04 | 1999-01-26 | Microsoft Corporation | Method and system for rendering graphical objects to image chunks |
US5880740A (en) * | 1996-07-12 | 1999-03-09 | Network Sound & Light, Inc. | System for manipulating graphical composite image composed of elements selected by user from sequentially displayed members of stored image sets |
US5974198A (en) * | 1996-08-26 | 1999-10-26 | Adobe Systems Incorporated | Adjustment layers for composited image manipulation |
US6266068B1 (en) | 1998-03-13 | 2001-07-24 | Compaq Computer Corporation | Multi-layer image-based rendering for video synthesis |
US6256048B1 (en) * | 1998-03-31 | 2001-07-03 | Adobe Systems Incorporated | Two-dimensional virtual camera |
US7911483B1 (en) * | 1998-11-09 | 2011-03-22 | Broadcom Corporation | Graphics display system with window soft horizontal scrolling mechanism |
US6437780B1 (en) * | 1999-03-17 | 2002-08-20 | Nvidia Us Investment Company | Method for determining tiles in a computer display that are covered by a graphics primitive |
US6924807B2 (en) * | 2000-03-23 | 2005-08-02 | Sony Computer Entertainment Inc. | Image processing apparatus and method |
US7009626B2 (en) * | 2000-04-14 | 2006-03-07 | Picsel Technologies Limited | Systems and methods for generating visual representations of graphical data and digital document processing |
US6781600B2 (en) * | 2000-04-14 | 2004-08-24 | Picsel Technologies Limited | Shape processor |
-
2001
- 2001-10-13 GB GBGB0124630.5A patent/GB0124630D0/en not_active Ceased
-
2002
- 2002-10-10 WO PCT/GB2002/004598 patent/WO2003034272A2/en active Application Filing
- 2002-10-10 EP EP02767706A patent/EP1435072A2/en not_active Withdrawn
- 2002-10-10 AU AU2002330634A patent/AU2002330634A1/en not_active Abandoned
- 2002-10-10 KR KR1020047005431A patent/KR100989010B1/ko not_active IP Right Cessation
- 2002-10-10 JP JP2003536932A patent/JP4309270B2/ja not_active Expired - Fee Related
- 2002-10-10 CN CNB028202791A patent/CN1308895C/zh not_active Expired - Fee Related
- 2002-10-10 US US10/492,472 patent/US7271814B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009150998A1 (en) * | 2008-06-12 | 2009-12-17 | Canon Kabushiki Kaisha | Image processing apparatus and control method thereof |
JP2009301293A (ja) * | 2008-06-12 | 2009-12-24 | Canon Inc | 画像処理装置及びその制御方法 |
US9019304B2 (en) | 2008-06-12 | 2015-04-28 | Canon Kabushiki Kaisha | Image processing apparatus and control method thereof |
Also Published As
Publication number | Publication date |
---|---|
US7271814B2 (en) | 2007-09-18 |
GB0124630D0 (en) | 2001-12-05 |
WO2003034272A3 (en) | 2003-11-06 |
US20050017986A1 (en) | 2005-01-27 |
KR20040062564A (ko) | 2004-07-07 |
JP4309270B2 (ja) | 2009-08-05 |
AU2002330634A1 (en) | 2003-04-28 |
CN1568484A (zh) | 2005-01-19 |
KR100989010B1 (ko) | 2010-10-20 |
CN1308895C (zh) | 2007-04-04 |
WO2003034272A2 (en) | 2003-04-24 |
EP1435072A2 (en) | 2004-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4309270B2 (ja) | グラフィックデータ及びデジタルドキュメント処理の視覚的表現を生成するシステム及び方法 | |
EP1272975B1 (en) | Systems and methods for generating visual representations of graphical data | |
JP5290487B2 (ja) | デジタルドキュメント処理のためのシステム及び方法 | |
US7281213B2 (en) | System and method for network transmission of graphical data through a distributed application | |
CA2425360C (en) | Facilitating interaction between video renderers and graphics device drivers | |
WO2012068242A1 (en) | System and method for on-the-fly key color generation | |
JP2005505860A5 (ja) | ||
US8749566B2 (en) | System and method for an optimized on-the-fly table creation algorithm | |
EP1043891A2 (en) | Method and apparatus for clipping video information before scaling | |
EP1272922B1 (en) | Digital document processing | |
JP2010191026A (ja) | 外部表示装置に応じた画像データを出力する端末、プログラム及び方法 | |
JP4808276B2 (ja) | ビデオ・レンダラーとグラフィックス・デバイス・ドライバの間の相互作用を促進すること | |
US9317891B2 (en) | Systems and methods for hardware-accelerated key color extraction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050804 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050804 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080415 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080714 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090219 |
|
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: 20090407 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090507 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |