web-dev-qa-db-ja.com

Webワーカーとキャンバス

Webワーカーはキャンバスオブジェクトにアクセスできますか?

40
l.thee.a

質問は半年以上前のものであるため、小さな更新:

Chrome/Chromium 6では、キャンバスのImageDataオブジェクトをWebワーカーに送信し、Webワーカーにオブジェクトに変更を加えてから、putImageData(..)を使用してキャンバスに書き戻すことができるようになりました。

Googleの Chromabrush このようにしています。ソースコードは次の場所にあります。

更新:

Opera(10.70)およびFirefox(4.0b1)の最新の開発スナップショットも、ImageDataオブジェクトのWebワーカーへの受け渡しをサポートしています。

2017年の更新:

Githubからの実際のリンク(Chromabrushから必要なファイルを簡単に見つけることができます):

62
tsauerwein

番号。

PostMessageの仕様は、ImageDataオブジェクトを投稿できるように数か月前に更新されましたが、まだ誰もその動作を実装していません(私たちは皆そこに到達しています)。キャンバス自体の問題は、それがDOM要素であるため、ワーカーでは機能しないことです(DOMはありません)。

これは最近whatwgまたはweb-appsメーリングリストで提起されたので、ワーカーでCanvasRenderingContext2DのようなAPIを提供できるかどうかを検討し始めると思います。

4
olliej