如何使用 FabricJS 鎖定三角形的垂直移動?


在本教程中,我們將學習如何使用 FabricJS 鎖定三角形的垂直移動。就像我們可以指定畫布上三角形物件的位移、顏色、不透明度和尺寸一樣,我們也可以指定是否只希望它在 X 軸上移動。這可以透過使用<em>lockMovementY</em>屬性來實現。

語法

new fabric.Triangle({ lockMovementY: Boolean }: Object)

引數

  • 選項 (可選) − 此引數是一個<em>物件</em>,它為我們的三角形提供了額外的自定義功能。使用此引數,可以更改與物件相關的許多屬性,例如顏色、游標、描邊寬度等等,其中<em>lockMovementY</em>也是一個屬性。

選項鍵

  • lockMovementY 此屬性接受一個布林值。如果我們將其賦值為“true”,則物件將無法在垂直方向移動。

示例 1

畫布中三角形物件的預設行為

讓我們來看一個程式碼示例,瞭解當<em>lockMovementY</em>屬性未賦值為“true”時,如何自由地在 X 軸或 Y 軸上移動三角形物件。

<!DOCTYPE html> <html> <head>    <!-- 新增 Fabric JS 庫 -->    <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body>    <h2>畫布中三角形物件的預設行為</h2>    <p>您可以選擇三角形並將其拖動。注意您可以沿水平和垂直方向移動物件。</p>    <canvas id="canvas"></canvas>    <script>       // 初始化畫布例項       var canvas = new fabric.Canvas("canvas");       canvas.setWidth(document.body.scrollWidth);       canvas.setHeight(250);       // 初始化三角形物件       var triangle = new fabric.Triangle({          left: 105,          top: 70,          width: 90,          height: 80,          fill: "#ffc1cc",          stroke: "#fbaed2",          strokeWidth: 5,       });       // 將其新增到畫布       canvas.add(triangle);    </script> </body> </html>

示例 2

將 lockMovementY 作為鍵並賦值為 'true'

在這個例子中,我們將看到如何鎖定三角形物件的垂直移動。透過將<em>lockMovementY</em>屬性賦值為“true”,我們實際上禁止了垂直方向的移動。

<!DOCTYPE html> <html> <head>    <!-- 新增 Fabric JS 庫 -->    <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body>    <h2>將 lockMovementY 作為鍵並賦值為 'true'</h2>    <p>您可以選擇並拖動三角形,檢視 Y 方向的移動是否不再允許。</p>    <canvas id="canvas"></canvas>    <script>       // 初始化畫布例項       var canvas = new fabric.Canvas("canvas");       canvas.setWidth(document.body.scrollWidth);       canvas.setHeight(250);       // 初始化三角形物件       var triangle = new fabric.Triangle({          left: 105,          top: 70,          width: 90,          height: 80,          fill: "#ffc1cc",          stroke: "#fbaed2",          strokeWidth: 5,          lockMovementY: true,       });       // 將其新增到畫布       canvas.add(triangle);    </script> </body> </html>

更新於:2022年6月27日

78 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.