2017-06-07 12 views
0

通常のキャンバスでは、CSSの幅とクライアントの幅が同じではない可能性があります。Fabricjsでこれを取得する方法は?例として、1280 * 720pxイメージのページ内に640 * 360pxキャンバスが必要です。 私は画像を拡大することができますが、dataUrlは私に小さな画像を与えるでしょうか?ファブリックのキャンバスクライアントのサイズjs

答えて

1

solutionがあります。 CSSサイズでsetDimensionsよりbackstoreOnlyフラグまたはinitを使用してクライアントサイズを初期化し、setDimensionscssOnlyフラグを使用してファブリックを初期化できます。 例1:

var canvas = new fabric.Canvas('c', {width: 640, height: 360}); 
canvas.setDimension({width: 1280, height: 720}, {backstoreOnly: true}); 

例#2:

var canvas = new fabric.Canvas('c', {width: 1280, height: 720}); 
canvas.setDimension({width: '640px', height: '360px'}, {cssOnly: true}); 
0

あなたはキャンバスのsetWidth/setHeight性質http://fabricjs.com/docs/fabric.StaticCanvas.html#setWidth

例えばを使用して、キャンバスのサイズを変更することができます

canvas = new fabric.Canvas('c'); 
canvas.setWidth(640); 
canvas.setHeight(360); 

あなたは何を意味するのかを明確にする必要がありますが、

+0

これはCSSのサイズです。変更すると、ページ上のキャンバスのサイズが変わります。そのフィドルを見てください:https://jsfiddle.net/IceCreamYou/whL8fu71/ – Iworb

+0

私はファブリックについて話しています。だから、デフォルトのキャンバスと何が関係していますか? –

+0

私はfabricjsでこのデフォルトのキャンバス機能について質問しているのでしょうか? – Iworb

関連する問題