首頁  >  文章  >  web前端  >  FabricJS 中的多邊形與折線有何不同?

FabricJS 中的多邊形與折線有何不同?

王林
王林轉載
2023-08-27 08:21:171165瀏覽

FabricJS 中的多边形与折线有何不同?

我們可以透過建立fabric.Polyline的實例來建立Polyline對象,而fabric.Polygon可用來建立Polygon實例。折線物件可以透過一組連接的直線段來表徵。由於它是 FabricJS 的基本元素之一,因此我們也可以透過應用角度、不透明度等屬性輕鬆自訂它。

多邊形總是將第一個點連接到最後一個點以形成一個封閉區域,而折線則不然。這可以透過下面給出的例子來證明。

文法

new fabric.Polyline(points: Array, options: Object)

參數

  • points - 此參數接受一個Array,它表示組成折線物件的點數組。

  • 選項(可選) - 此參數是一個對象,它為我們的對象提供額外的自訂。使用此參數可以變更與 Polyline 物件相關的原點、筆畫寬度和許多其他屬性。

範例 1

建立 Fabric.Polyline() 實例並將其新增至畫布

讓我們來看一個程式碼範例,了解如何將折線物件新增到畫布中。唯一必要的參數是 points 數組,而第二個參數是可選的 options 物件。此外,我們還將在 Polygon 中使用相同的 points 陣列來證明差異。

<!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>Creating an instance of fabric.Polyline() and adding it to our canvas</h2>
   <p>You can see that the polyline object doesn’t connects start to end</p>
   <canvas id="canvas"></canvas>
   <script>
      
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
      
      // Initiating a points array
      var points = [
         { x: 200, y: 150 },
         { x: 0, y: 100 },
         { x: 100, y: 0 },
         { x: 200, y: 100 },
      ];
      
      // Initiating a polyline object
      var polyline = new fabric.Polyline(points, {
         left: 100,
         top: 40,
         fill: "white",
         strokeWidth: 4,
         stroke: "green",
      });
      
      // Adding it to the canvas
      canvas.add(polyline);
   </script>
</body>
</html> 

範例 2

建立fabric.Polygon()的實例並將其新增至我們的畫布

讓我們看一個程式碼範例,了解如何將多邊形物件新增到畫布中。唯一必要的參數是 points 數組,而第二個參數是可選的選項對象,我們將提供與折線範例中相同的選項對象。

<!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>Creating an instance of fabric.Polygon() and adding it to our canva</h2>
   <p>You can see that the polygon object connects start to end to make a closed area</p>
   <canvas id="canvas"></canvas>
   <script>
      
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);
      
      // Initiating a points array
      var points = [
         { x: 200, y: 150 },
         { x: 0, y: 100 },
         { x: 100, y: 0 },
         { x: 200, y: 100 },
      ];
      
      // Initiating a polyline object
      var polygon = new fabric.Polygon(points, {
         left: 100,
         top: 40,
         fill: "white",
         strokeWidth: 4,
         stroke: "green",
      });
      
      // Adding it to the canvas
      canvas.add(polygon);
   </script>
</body>
</html> 

以上是FabricJS 中的多邊形與折線有何不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除