如何使用 FabricJS 创建一个带有“不允许”光标的画布?


在本文中,我们将学习如何使用 FabricJS 创建一个带有“不允许”光标的画布。“不允许”光标可以用来指示任何已请求的操作将不会执行。“不允许”是可用于 FabricJS 画布的原生光标样式之一。

FabricJS 提供各种类型的光标,例如默认光标、全滚动光标、十字准星光标、列调整大小光标、行调整大小光标等,这些光标都重用了底层的原生光标。每个光标的外观根据操作系统略有不同。

语法

new fabric.Canvas(element: HTMLElement|String, { defaultCursor: String }: Object)

参数

  • element − 此参数是<canvas> 元素本身,可以使用document.getElementById()<canvas> 元素的 ID 获取。FabricJS 画布将在此元素上初始化。

  • options (可选) − 此参数是一个对象,它为我们的画布提供额外的自定义选项。使用此参数可以更改画布相关的许多属性,例如颜色、光标、边框宽度等,其中defaultCursor属性用于设置所需的光标类型。

示例 1

defaultCursor 属性接受一个字符串,该字符串确定要在画布上使用的光标名称。我们将将其设置为“not-allowed”以使用“不允许”光标。让我们来看一个示例,演示如何在 FabricJS 中创建一个带有“不允许”光标的画布。

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>Canvas with not-allowed cursor using FabricJS</h2>
   <p>Bring the cursor inside the canvas to see the changed shape of cursor</p>
   <canvas id="canvas"></canvas>
   <script>
      //Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas", {
         defaultCursor: "not-allowed"
      });
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
   </script>
</body>
</html>

示例 2

在此示例中,我们将向画布添加一个圆形以及“不允许”光标。

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the Fabric JS Library-->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script>
</head>
<body>
   <h2>Canvas with not-allowed cursor using FabricJS</h2>
   <p>Here we have added a circle to the canvas along with the not-allowed cursor</p>
   <canvas id="canvas"></canvas>
   <script>
      //Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas", {
         defaultCursor: "not-allowed"
      });
      // Initiate a Circle instance
      var circle = new fabric.Circle({
         radius: 50,
         fill: "green"
      });
      // Render the circle in canvas
      canvas.add(circle);
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
   </script>
</body>
</html>

更新于:2022年5月20日

浏览量:123

开启您的职业生涯

完成课程,获得认证

开始学习
广告