getContext( "2d")で変更できるDIVのキャンバスの背景イメージを作成することはできますか?CSS5背景としてのHTML5キャンバス?
答えて
div内にcanvasを絶対cssの位置に置くことができます。他の要素はキャンバスよりも大きいzインデックスを持つ必要があります。
さて、divの中にキャンバス要素を配置し、その高さと幅を最大化し、その位置をrelativeに、z-indexを負の値に設定することができます。
ただし、実際のCSS background-image:...
を使用する場合は、キャンバス内に画像を作成する必要があります。あなたは、あなたがあなたの元background-image
の値として使用することができ、データのURLを取得するためにtoDataURL
を使用することができます。
var canvas = document.getElementById('canvas');
var data = canvas.toDataURL();
var myElement = document.getElementById('myelement');
myElement.style.backgroundImage = 'url('+data+')';
あなたは新しい背景を作成するが、既存のものを操作し、あなたの元をロードしたくない場合Imageオブジェクトに背景(または参照を取得)し、使用drawImage
は:
var image = new Image();
image.onload = function(){
context.drawImage(this,0,0);
someCallbackToManipulateTheImage();
}
var src = myElement.style.backgroundImage.substr(4);
src.substr(0,src.length - 1);
image.src = src;
これにdiv要素の背景画像を設定します。
"url('" + canvas.toDataURL() + "')";
編集:その時点で、キャンバスを呼び出した瞬間にキャンバスにあった画像データだけがバックグラウンドイメージに格納され続けるため、キャンバスで自由に操作できます。 toDataURL()。その時点でdivの背景に影響を与えないので、自由にキャンバスを破棄または描画してください。
これが期待どおりに動作すると仮定すると、これと選択された回答はどちらも100%正しいです。これは、CSSでの背景画像プロパティの割り当てです。もう1つは、z-indexingに基づいています。 –
これは、OPで探していたものが、動的に描画されたキャンバスの表現をここにURLでエンコードされた静的なイメージに置き換えるためのものであると考えています。 –
- 1. 透明画像の背景HTML5のキャンバス
- 2. HTML5ビデオをウェブページの背景として
- 3. HTML5とキャンバス:プレーヤーの動きで背景を移動する
- 4. キャンバスに「アニメーション」背景
- 5. HTML5キャンバス背景画像を別の画像に戻して戻す
- 6. ImageBrushとSolidColorBrushをマージしますか? (キャンバスの背景として)
- 7. キャンバスのパフォーマンスの背景
- 8. フルスクリーン背景ビデオ(HTML5)
- 9. 私のキャンバスの背景としてのGoogleマップ
- 10. HTML5ビデオの背景フォールバック
- 11. wpfキャンバスの背景イメージを動的に
- 12. キャンバス粒子の背景画像
- 13. html5キャンバスのキャンバス
- 14. HTML5の大きなキャンバス - 背景を含む全体のコンテンツを移動してズームする
- 15. キャンバスでアニメーションされた背景
- 16. HTML5キャンバス要素をオブジェクトとして
- 17. HTML5キャンバスとその逆のキャンバス
- 18. HTML5キャンバスと操作
- 19. html5キャンバスとemberjsビュー
- 20. HTML5キャンバスと光源
- 21. flex actionscriptキャンバスの背景のアルファ値を取得します。
- 22. 背景グラデーションの色と背景イメージDRYly
- 23. HTML5キャンバスの背景の塗りつぶし、線および不透明度を設定する
- 24. onDrawを使用したキャンバスへの背景イメージですか?
- 25. CSS5セレクタを使用してHTML5ビデオを再生/一時停止する
- 26. Coderwallキャンバスで背景がぼやけて表示
- 27. OpencVの背景と前景
- 28. 背景画像としてのJLabel
- 29. html5キャンバスをダブルクリックしたときのオーバーレイフォーム
- 30. (HTML5キャンバス/ Javascriptの)
Hm、面白いです。誰かがこの回答を嫌っていました。 – Zeta
美しく行われた – TaterJuice
キャンバスを複数の背景として使用する方法はありますか?複数のキャンバスを挿入したり、複数のデータを生成したりすることなく、DIVのバックグラウンドイメージは--webkit-canvasと同じですか?可能な場合はメモリを節約します。cssファイルにキャンバスURLを指定できる場合は、同じバックグラウンドを持つすべてのDIVに対してキャンバスを挿入する必要がないため、プログラミングが大幅に簡素化されます。 – sean