首頁  >  文章  >  web前端  >  FabricJS – 如何設定 Line 物件相對於原點的位置?

FabricJS – 如何設定 Line 物件相對於原點的位置?

王林
王林轉載
2023-08-25 12:13:081405瀏覽

FabricJS – 如何设置 Line 对象相对于原点的位置?

在本教學中,我們將學習如何使用 FabricJS 設定 Line 物件相對於原點的位置。 Line 元素是 FabricJS 中提供的基本元素之一。它用於創建直線。由於線元素在幾何上是一維的並且不包含內部,因此它們永遠不會被填充。我們可以透過建立 fabric.Line 的實例來建立線條對象,指定線條的 x 和 y 座標並將其新增至畫布。為了設定 Line 物件相對於原點的位置,我們使用 setPositionByOrigin 方法。

文法

setPositionByOrigin(pos: fabric.Point, originX: String, originY: String): void

參數

  • pos - 此屬性接受 fabric.Point 值,該值允許我們設定物件的新位置。

  • originX - 這個屬性接受一個String值,它允許我們設定水平原點。可能的值為“左”、“中心”或“右”。

  • originY - 這個屬性接受一個String值,它允許我們設定垂直原點。可能的值為“頂部”、“中心”或“底部”。

不使用setPositionByOrigin方法的預設位置

範例

讓我們看一個程式碼範例,在不使用 setPositionByOrigin 方法的情況下查看 Line 物件的預設位置。

<!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>Default position without using the setPositionByOrigin method </h2>
   <p>You can see the default position of the line object</p>
   <canvas id="canvas"></canvas>
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);

      // Initiate a Line object
      var line = new fabric.Line([200, 100, 100, 40], {
         stroke: "blue",
         strokeWidth: 20,
      });

      // Add it to the canvas
      canvas.add(line);
   </script>
</body>
</html>

使用setPositionByOrigin方法

#範例

讓我們來看一個程式碼範例,看看使用 setPositionByOrigin 方法時 Line 物件的樣子。在本例中,我們透過初始化一個 Point 物件來指定物件的新位置,該物件的 x 和 y 座標分別為 500 和 100。我們將設定線條物件的新位置,同時將其水平原點視為“中心”,將垂直原點視為“頂部”。

<!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>Using the setPositionByOrigin method</h2>
   <p>You can see the new position of the line object</p>
   <canvas id="canvas"></canvas>
   <script>
      // Initiate a canvas instance
      var canvas = new fabric.Canvas("canvas");
      canvas.setWidth(document.body.scrollWidth);
      canvas.setHeight(250);

      // Initiate a Line object
      var line = new fabric.Line([200, 100, 100, 40], {
         stroke: "blue",
         strokeWidth: 20,
      });

      // Initiate a Point object
      var pos = new fabric.Point(500, 100);

      // Using setPositionByOrigin method
      line.setPositionByOrigin(pos, "center", "top");

      // Add it to the canvas
      canvas.add(line);
   </script>
</body>
</html>

以上是FabricJS – 如何設定 Line 物件相對於原點的位置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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