2011-12-03 10 views
5

キャンバスHTML5について知りたい。 私のベースキャンバス要素で私は背景画像を設定したい、その上で私はペイントのようないくつかの機能を実行したいと思います。取り消し、元に戻す、クリアし、その効果の画像を保存します(すべての効果を元に戻してクリアを適用した後)。 キャンバスHTML5に背景画像を設定することは可能ですか?取り消し、消去、消去などのいくつかのペイント機能を実行できますか、その背景画像を保存しますか?

+0

[HTML5 Canvasの背景領域を保存/復元する](http://stackoverflow.com/questions/4858187/save-restore-background-area-of-html5-canvas)や[Canvas RectをクリアするBackgrond](http://stackoverflow.com/questions/5596434/clear-canvas-rect-but-keep-background)を参照してください。 – Phrogz

答えて

1

最も簡単で最高のパフォーマンスは、その背景をキャンバスの背後に置くことです。

+0

しかし、どうすれば実践的に教えてくれるの? –

4

drawImage()を使用して、背景をキャンバスに描画することができます。さらにすべての操作は画像の上に描かれます。

作業を終えたら、Canvasstateをイメージにエクスポートできます。

しかし、キャンバスは直接修正されるため、すべてのタスクの履歴を保持する必要があります。

保存と復元の方法が役立つ場合があります。

最初にキャンバスにイメージを描画することが重要です。他のすべてのエフェクトがイメージに影響します。

+0

元に戻す、クリアする、描画する(鉛筆の色で)、その画像を保存すると、その画像が表示されません。保存された画像のデフォルトの白い背景と、キャンバスに描画された画像があります。キャンバスに 'backgroundImage'を設定します: 'url(./ tmp/Koala.jpg)' ..iこれを保存した画像として、すべての効果を元に戻します(取り消し、描画、クリア)。 –

0

history APIは、取り消しとやり直しに使用できます。

CanvasオブジェクトのtoDataURLメソッドを使用してイメージを保存できます。

関連する問題