Canvas类库-Fabric.js
2025-02-15 17:28:27 阿炯

Fabric.js 是一个在服务器端运行的 Node.js 扩展模块,用于在 Web 上绘制各种图形的 JavaScript 绘图库,采用MIT协议授权。


Fabric.js 是一款简单而强大的 JavaScript Canvas 库,在 HTML5 Canvas 元素之上提供了互动的对象模型,同时还包含 Canvas-to-SVG 解析器。使用它可以创建和填充画布上的对象,从简单的几何图形到成百上千路径组成的复杂图形。可以通过鼠标轻松的移动、缩放和旋转这些对象,修改它们的属性(颜色、透明度,层叠顺序)等等。


示例代码:

var fabric = require('fabric').fabric,
    canvas = fabric.createCanvasForNode(200, 200);

canvas.add(new fabric.Rect({
  top: 100,
  left: 100,
  width: 100,
  height: 50,
  angle: 30,
  fill: 'rgba(255,0,0,0.5)'
}));

var out = require('fs').createWriteStream(__dirname + '/rectangle.png'),
    stream = canvas.createPNGStream();

stream.on('data', function(chunk) {
  out.write(chunk);
});

最新版本:6.6
2025年2月发布的本版本更新内容如下:
Typo:修复 Id -> If BorderProps.ts Types description
chore(test):为 color.test.ts 添加测试
feat:添加 method toBlob
允许 PencilBrush 子类访问字段
fix(image.ts):在 setElement 函数中使访问 HtmlImage 的 classList 成为可选的,以防止在使用 node canvas 图像时出现错误
feat():将 webp 添加到 ImageFormat

项目主页:https://fabric5.fabricjs.com/