I have a problem using fabric.js in canvas. After resize with scale factor at 5x, clicking in ZoomIn 2 times, the elements on the canvas disappear. Please look: http://jsfiddle.net/ptCoder/Q3TMA/90/
Canvas size (just for example):
<canvas id="c" width="400" height="400"></canvas>
Zoom Scale Factor:
var SCALE_FACTOR = 5;
Is there any solution?
Thank You.
The problem is that you are also resizing the canvas, so after zooming 2 times, its size is 10000px * 10000px, meaning 100 megapixels, and several hundred megabytes of memory required.
If you keep the canvas size constant (like this), or limit it to a value small enough, zooming works as expected.
To keep the size constant you just have to remove these two lines:
canvas.setHeight(canvas.getHeight() * SCALE_FACTOR);
canvas.setWidth(canvas.getWidth() * SCALE_FACTOR);