2011-12-11 9 views
2

html5 canvas取得する方法描画状態のキャンバススタック? 各コンテキストは、描画状態のスタックを保持します。描画状態は、現在のクリッピング領域(必要な領域)とその他の領域から構成されます。 APIは、現在の描画状態を取得してスタックを維持するためにsave()およびrestore()メソッドのみを提供します。 しかし、私はスタックに多くの描画状態を保存していて、それを透過的ではないものに変更したいのであれば。私に何ができる ?どのように配列としてスタックを扱う?html5 canvas取得する方法描画状態のキャンバススタック

+0

あなたは[fabric.js](http://kangax.github.com/fabric.js/)のようなものを考えましたか? – kangax

答えて

0

マウスがキャンバス上に置かれているときに、xとyの位置を格納する配列が異なります。次に、mousedownイベント時にこれらの配列のインデックスを記録することによって、異なる図面を区別することができます。そのような要求のためにHere is a tutorial。この一連のマウスインデックスは図面の取り消しにも使用できます

+0

チュートリアルを読んだ。これは、クリップ機能で作成する、ユーザが描画するためのメインエリアにのみあります。私が描画するためのユーザーのための2つのメインエリアを持っている場合、私はsave()&restore()によってエリアを行うことができます。しかし、私が10のメインエリアを持っていて、スタックの2番目のチップに切り替える必要がある場合、8回のリストア機能を使用する必要があり、チップがスタックからのポップアップであるため返されません。クリップを直接2番目のものに切り替える方法と10に戻す方法は? – MikeJohn

関連する問題