如何使用 FabricJS 停用三角形的可選擇性?
在本教程中,我們將學習如何使用 FabricJS 停用三角形的可選擇性。三角形是 FabricJS 提供的各種形狀之一。為了建立一個三角形,我們必須建立一個 `fabric.Triangle` 類的例項並將其新增到畫布。
為了修改物件,我們必須在 FabricJS 中選擇它。但是,我們可以使用 `selectable` 屬性停用此行為。
語法
new fabric.Triangle{ selectable: Boolean }: Object)
引數
**選項 (可選)** - 此引數是一個 `Object`,它為我們的三角形提供了額外的自定義選項。使用此引數,可以更改與物件的許多屬性相關的屬性,例如顏色、游標、描邊寬度以及其他許多屬性,其中 `selectable` 是一個屬性。
選項鍵
**selectable** - 此屬性接受一個 **布林值**。當為其分配 `false` 值時,無法選擇該物件進行修改。其預設值為 `true`。
示例 1
預設行為或當 selectable 屬性設定為 'true' 時
讓我們來看一個程式碼示例,瞭解當預設情況下 `selectable` 屬性設定為 `true` 時物件的行為。當 `selectable` 屬性設定為 `true` 時,我們可以選擇物件,將其移動到畫布周圍,並對其進行修改。
<!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 behaviour or when selectable property is set to 'true'</h2> <p>You can try moving the triangle around the canvas or scaling it to prove that it's selectable</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 triangle object var triangle = new fabric.Triangle({ left: 105, top: 70, width: 90, height: 80, fill: "#746cc0", stroke: "#967bb6", strokeWidth: 5, }); // Add it to the canvas canvas.add(triangle); </script> </body> </html>
示例 2
將 selectable 屬性作為鍵傳遞
在這個例子中,我們將 `false` 值賦給 `selectable` 屬性。這意味著我們不能再選擇三角形物件進行修改。
<!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>Passing selectable property as key</h2> <p>You can see that the triangle is no longer selectable</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 triangle object var triangle = new fabric.Triangle({ left: 105, top: 70, width: 90, height: 80, fill: "#746cc0", stroke: "#967bb6", strokeWidth: 5, selectable: false, }); // Add it to the canvas canvas.add(triangle); </script> </body> </html>
廣告