17

私はFabric.jsを使用しており、ファブリックキャンバスオブジェクトを1か所で作成しました。

var x = new fabric.Canvas("mycanvas");

別の場所で、「x」が使用できないこのオブジェクトにアクセスしたいと思います。では、どうすれば同じファブリックキャンバスオブジェクトを取得できますか。

xのスコープを変更したり、xをargとして渡したりしたくありません。

また、ファブリックキャンバスオブジェクトからtoDataURLを取得するにはどうすればよいですか?

4

1 に答える 1

26

これがCanvas要素のIDであるとするとmycanvas、ファブリックオブジェクトへの参照をCanvas要素自体に保存できます。

var x = new fabric.Canvas("mycanvas");
document.getElementById("mycanvas").fabric = x;

その後、次の方法でいつでもそのオブジェクトを取得できます。

var y = document.getElementById("mycanvas").fabric;
var url = y.toDataURL("png", 1);
于 2012-11-02T12:47:33.553 に答える