abo*_*ght 4 html javascript canvas fabricjs
我正在开发一个需要创建多个画布元素(单独的条形,每个条形代表一个不同的渐变)的项目。我想用fabric.js动态地做到这一点,例如:
function add_gradient(color_stops){
// Add a new rectangular canvas with fill representing specified gradient
var grad_box = document.getElementById("divWithCanvases");
var newCanvas = document.createElement("canvas");
grad_box.appendChild(newCanvas);
var gradCanvas = fabric.Canvas(newCanvas, {width: 500, height:50});
var ctx = gradCanvas.getContext('2d');
// Do stuff to canvas...
}
Run Code Online (Sandbox Code Playgroud)
但是,调用fabric.Canvas失败并显示错误“this.initialize 未定义”。(fabric.js 第 1627 行,版本 1.4.13)
我怎样才能:
appendChild)根据fabric.js 文档,fabric.Canvas构造函数接受 HTMLElement 或字符串元素 id。我只能让它与字符串一起工作。
函数fabric.Canvas是一个构造函数,你必须用new 操作符调用它:
var gradCanvas = new fabric.Canvas(newCanvas, {width: 500, height:50});
Run Code Online (Sandbox Code Playgroud)