53

HTML:

  <div class="canvas-wrapper">
    <canvas id="myCanvas"></canvas>
  </div>

CSS

.canvas-wrapper {
    width: 900px;
    min-height: 600px;
 }

 #myCanvas{
     border:1px solid red;
     position: absolute;
     top:22px;
     left:0px;
     height: 100%;
     width: 99%;
 }

JS

var myCanvas = new fabric.Canvas('myCanvas');

初期化後にキャンバスのサイズが 300x150 に変更されるのはなぜですか?

4

3 に答える 3

79

最新バージョンでは、次のようにする必要があります。

var canvas = new fabric.Canvas('myCanvas');
canvas.setHeight(500);
canvas.setWidth(800);

.... あなたのコード ....

canvas.renderAll();

私にとってはうまくいきます..

サイズを動的に変更する場合、これも機能します

于 2013-01-09T10:51:43.627 に答える
26

キャンバスを初期化するとき、ファブリックはキャンバス要素の幅/高さ属性を読み取るか、オプションで渡された幅/高さを取ります。

var myCanvas = new fabric.Canvas('myCanvas', { width: 900, height: 600 });

また:

<canvas width="900" height="600"></canvas>
...
var myCanvas = new fabric.Canvas('myCanvas');
于 2012-05-15T10:38:51.750 に答える