Fabric.js 基础画笔的用法 BaseBrush


theme: smartblue

本文简介

点赞 + 关注 + 收藏 = 学会了

本文介绍 Fabric.js 的基础笔刷用法。如果你还不知道 Fabric.js 是什么,我墙裂建议你阅读一下 《Fabric.js 从入门到膨胀》

本文使用 Fabric.js 5.2.1 进行讲解。

001.gif

BaseBrush文档

用法

使用 基础笔刷 之前,必须将画板设置成 绘画模式 canvas.isDrawingMode = true

创建项目

  1. 创建一个 html 文件
  2. 在页面上创建一个 canvas 元素
  3. 引入 Fabric.js
  4. 初始化画布
  5. 将画布设置成绘画模式

<!DOCTYPE html> <html lang="en"> <head>  <meta charset="UTF-8">  <meta http-equiv="X-UA-Compatible" content="IE=edge">  <meta name="viewport" content="width=device-width, initial-scale=1.0">  <title>基础笔刷 BaseBrush</title> </head> <body>  <!-- 创建 canvas 元素 -->  <canvas id="c" width="600" height="400" style="border: 1px solid #ccc;"></canvas> ​  <!-- 引入 fabric.js -->  <script src="../../script/fabric.5.2.1.js"></script>  <script>    // 初始化画布    const canvas = new fabric.Canvas('c')    // 将画布设置成绘画模式    canvas.isDrawingMode = true  </script> </body> </html>

此时在页面上就能进行自由绘制了。

002.gif

画笔宽度

003.gif

// 省略部分代码 canvas.freeDrawingBrush.width = 30

可以将一个数值型数据赋给 freeDrawingBrush.width

画笔宽度文档

画笔颜色

004.gif

// 省略部分代码 canvas.freeDrawingBrush.color = 'pink'

在这个例子里,我把笔刷设置成粉红色。

可以将字符串型的颜色值赋给 freeDrawingBrush.color

笔刷颜色文档

虚线

005.gif

js // 省略部分代码 canvas.freeDrawingBrush.strokeDashArray = [20, 50]

可以将数值型数组赋给 freeDrawingBrush.strokeDashArray。建议你尝试传入多个值,看看修改后的变化。

笔刷虚线文档

投影

006.gif

js // 省略部分代码 canvas.freeDrawingBrush.shadow = new fabric.Shadow({  blur: 10,  offsetX: 10,  offsetY: 10,  affectStroke: true,  color: '#30e3ca' })

使用 fabric.Shadow 设置一个投影属性,并把设置完的值赋给 freeDrawingBrush.shadow

笔刷投影文档

设置投影参数文档

禁止画笔超出画板

默认情况下,画笔图画的范围可以超出画板,如下图这样

007.gif

如果你不希望画笔涂抹范围超出当前画布可视范围,可以设置 freeDrawingBrush.limitedToCanvasSizetrue

008.gif

js // 省略部分代码 canvas.freeDrawingBrush.limitedToCanvasSize = true

limitedToCanvasSize文档

除了以上的属性外,基础笔刷还有 strokeLineCapstrokeLineJoinstrokeMiterLimit 等属性。可以参照官方文档的说明去试试看。

代码仓库

本文代码

推荐阅读


版权声明:本文为weixin_39415598原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。