2011-01-12 15 views
3

Flashと同じようにビットマップオンビットマップの評価ができるJavaScript(HTML5対応ブラウザ用)に、既存の同等のメソッドがあるかどうかを知りたいと思います。HTML5 JavaScriptのFlashのBitmapData.hitTest()に相当する

また、「ぼかしフィルタ」はどのように達成できますか? 既存のDIV/SPANタグを(FlashのBitmapData.draw()メソッドのように)ビットマップオブジェクトに "描画"できるので、キャンバス上で "hitTest"目的に使用できますか?

私はHTML5専門用語がここで間違っていると思いますが、これはやや意味があります。

ピクセルレベルの評価で、ビットマップが互いに接触するかどうかを確認する組み込みメソッドはありますか?

ありがとうございます!

+0

BitmapData.hitTestを実行するサーバー上でSWFを実行するなど、サーバー側の回答も開かれますが、そのようなことはありますか?サーバ用の軽量Flash Playerランタイムのようなもの? – bigp

+0

HTML Canvasが浮動小数点変換を使用すると仮定すると、0.25回転だけオフセットされ、非常に幅広くなるように非一様にスケーリングされた、異なる回転ビットマップに対して回転、縮小されたビットマップがテストされたときに、 ? – Phrogz

+0

あなたのコメント(質問)がこの文脈にどのように適合しているか分かりません。修辞的な質問?申し訳ありませんが、それは私の頭の上にちょうどあなたがそれを表現する方法です。 – bigp

答えて

1
  1. いいえ、HTML CanvasまたはContextには、2つの領域が重なっているかどうかを判断する方法はありません。不透明なピクセルが重なっていない非正方形領域のテストは行われず、変形されたバウンディングボックスが重なってテストされず、軸に沿ったバウンディングボックスが重なってもテストされません。このようなヒットテストは、あなたまたは個々のビットマップを追跡するより高いレベルのAPIによって行われる必要があります。 Canvas/Contextは、の非保有低レベルピクセルの描画および描画APIです。

  2. いいえ、画像やキャンバスのコピーにdrawImage()を使用する以外は、HTML要素のレンダリングをキャンバス画像にシリアル化することはできません。これには、透明/半透明キャンバスの下に描画されたコンテンツをキャプチャしようとすることが含まれます。これが許可されているとセキュリティ上の問題があり、そうではありません。

    • しかし、あなたはすでに、生のピクセルを取得するためにgetImageData()を使用して、ピクセル値を操作し、再びキャンバスに変更された画素をプッシュするputImageData()を使用してキャンバスにを描かれた「ぼかしのコンテンツすることができます。
関連する問題