如何使用 FabricJS 创建具有背景颜色的画布?


在本文中,我们将学习如何使用 FabricJS 创建具有指定背景颜色的画布。FabricJS API 提供的默认背景颜色是白色,可以使用第二个参数进行自定义。

语法

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

参数

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

  • Options − 此参数是一个对象,它为我们的画布提供了额外的可定制性,而 backgroundColor 就是其中之一,它将帮助我们自定义背景颜色。

示例 1

让我们看看如何使用 FabricJS 创建具有背景颜色的画布。由于 FabricJS 基于 Canvas API,我们将使用 <canvas> 标签创建一个 HTML 元素并为其指定一个 id

接下来,我们将把该 id 传递给 FabricJS API,以便它可以在 <canvas> 标签上初始化 FabricJS 画布实例。在第二个参数中,我们将传递一个对象,其中包含键 backgroundColor 和我们想要设定的颜色值。

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the FabricJS library -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js">
   </script>
</head>
<body>
   <h2>How to create a canvas with a background color using FabricJS</h2>
   <p>Here we have used 'cyan' as the background color.</p>
   <canvas id="canvas"> </canvas>
   <script>
      // Initiate a Canvas instance and add backgroundColor
      var canvas = new fabric.Canvas('canvas', {
         backgroundColor: 'cyan'
      });
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
   </script>
</body>
</html>

示例 2

让我们来看另一个例子。在这里,我们将创建一个具有背景颜色和画布上圆形对象的画布。

<!DOCTYPE html>
<html>
<head>
   <!-- Adding the FabricJS library -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js">
   </script>
</head>
<body>
   <h2>How to create a canvas with a background color using FabricJS</h2>
   <p>Here we have created a canvas with a background color and a circle object on the canvas</p>
   <canvas id="canvas"> </canvas>
   <script>
      // Initiate a Canvas instance and add backgroundColor
      var canvas = new fabric.Canvas('canvas', {
         backgroundColor: 'cyan'
      });
      // Initiate a Circle instance
      var circle = new fabric.Circle({
         radius: 50,
         fill: "red",
         hoverCursor: 'not-allowed',
      });
      // Render the circle in canvas
      canvas.add(circle);
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
   </script>
</body>
</html>

更新于:2022年5月19日

826 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告