如何使用 FabricJS 設定矩形選擇區域的背景顏色?
在本教程中,我們將學習如何使用 FabricJS 設定矩形選擇區域的背景顏色。矩形是 FabricJS 提供的各種形狀之一。為了建立矩形,我們需要建立一個 fabric.Rect 類的例項並將其新增到畫布上。
當物件被選中時,我們可以更改其尺寸、旋轉或操作它。我們可以透過使用 selectionBackgroundColor 屬性來更改矩形選擇區域的背景顏色。
語法
new fabric.Rect({ selectionBackgroundColor : String }: Object)
引數
選項(可選) - 此引數是一個 物件,它為我們的矩形提供了額外的自定義選項。使用此引數,可以更改與物件的 selectionBackgroundColor 屬性相關的屬性,例如顏色、游標、筆觸寬度等等。
選項鍵
selectionBackgroundColor - 此屬性接受一個 字串 值。分配的值將決定選擇區域的背景顏色。
示例 1
未使用 selectionBackgroundColor 屬性時的預設顏色
讓我們來看一個程式碼示例,瞭解當不使用 selectionBackgroundColor 屬性時選擇區域是如何顯示的。從這個例子中我們可以看到,選擇區域或物件背後的區域沒有顏色。
<!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 colour when selectionBackgroundColor property is not used</h2> <p>You can click on the rectangle to see that the selection area has no colour</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 rectangle object var rect = new fabric.Rect({ left: 155, top: 70, width: 170, height: 70, fill: "#00b7eb", stroke: "#ffa089", strokeWidth: 5, padding: 50, }); // Add it to the canvas canvas.add(rect); </script> </body> </html>
示例 2
將 selectionBackgroundColor 屬性作為鍵傳遞
在這個例子中,我們為 selectionBackgroundColor 屬性分配了一個值。在這種情況下,我們傳遞了十六進位制值“#e0ffff”,這是一種淺青色,因此選擇區域顯示為這種顏色。
<!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 selectionBackgroundColor property as key</h2> <p>You can click on the rectangle to see that the selection area now has a light cyan colour</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 rectangle object var rect = new fabric.Rect({ left: 155, top: 70, width: 170, height: 70, fill: "#00b7eb", stroke: "#ffa089", strokeWidth: 5, padding: 50, selectionBackgroundColor: "#e0ffff", }); // Add it to the canvas canvas.add(rect); </script> </body> </html>
廣告