我正在使用fabricjs 1.7.17,並且在IE Edge,Chrome和Firefox上看到此問題。fabricjs調用canvas.toDataURL()調整畫布的尺寸
其中canvas的寬度和高度設置爲768px的HTML。
在我的fabricjs帆布初始化我有:
editor.canvas = new fabric.Canvas('editor')
editor.canvas.setDimensions({
width: 1080,
height: 1080,
allowTouchScrolling: false,
backgroundColor: 'rgba(55, 55, 55, .33)',
rotationCursor: 'url(/static/img/rotate.cur) 10 10, crosshair'
}, {backstoreOnly: true})
問題是,當你調用editor.canvas.toDataURL()方法的那張尺寸從768px到1080px
如果你調用瀏覽器的本地canvas.toDataURL()方法沒有跳轉的大小。
任何人碰到這個,並有可能的修復?
這裏有一個簡單的jsfiddle: https://jsfiddle.net/m8dhmbtu/23/
單擊「本地Canvas.toDataURL()」,你會得到的結果CONSOLE.LOG會有在預覽中顯示的畫布上沒有變化窗口。
點擊「Fabricjs canvas.toDataURL()」,你也會得到與console.log相同的結果;你還可以在預覽窗口中獲得大小的跳躍......這就是我想要阻止的。
謝謝@andreabogazzi - 我創建了一張票:https://github.com/kangax/fabric.js/issues/4252 – JoeManFoo