如何使用 FabricJS 為圓形新增陰影?
在本教程中,我們將學習如何使用 FabricJS 為圓形新增陰影。圓形是 FabricJS 提供的各種形狀之一。為了建立圓形,我們將建立fabric.Circle類的例項並將其新增到畫布上。我們的圓形物件可以透過多種方式進行自定義,例如更改其尺寸、新增背景顏色,甚至為其新增陰影。我們可以使用shadow屬性為圓形新增陰影。
語法
new fabric.Circle({ shadow : fabric.Shadow }: Object)引數
- options (可選) − 此引數是一個物件,它為我們的圓形提供了額外的自定義選項。使用此引數,可以更改與物件相關的屬性,例如顏色、游標、描邊寬度以及許多其他屬性,其中陰影是一個屬性。
選項鍵
- shadow − 此屬性接受一個fabric.Shadow物件,該物件允許我們為三角形物件新增陰影。例如,為了為我們的圓形物件新增陰影,我們需要建立一個新的fabric.Shadow例項,然後將該例項分配給shadow屬性。
示例 1
將陰影物件傳遞給shadow屬性
讓我們看一個例子來了解如何分配shadow屬性值,透過該值將陰影新增到我們的圓形物件。首先,我們需要建立一個新的fabric.Shadow例項,然後將其分配給我們的shadow屬性。
<!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>Adding shadow to a circle using FabricJS</h2>
<p>Notice the shadow around the circle object. Here we have applied the <b>shadow</b> property. </p>
<canvas id="canvas"></canvas>
<script>
// Initiate a canvas instance
var canvas = new fabric.Canvas("canvas");
// Initiate a shadow instance
var shadow = new fabric.Shadow({
color: "black",
blur: 20
});
var circle = new fabric.Circle({
left: 115,
top: 50,
radius: 50,
fill: "#85bb65",
shadow: shadow
});
canvas.add(circle);
canvas.setWidth(document.body.scrollWidth);
canvas.setHeight(250);
</script>
</body>
</html>示例 2
將'rgba'值傳遞給陰影物件
我們還可以調整陰影並使其呈現模糊的外觀,方法是為其分配一個'rgba'值,它代表紅色、藍色、綠色和alpha。Alpha確定顏色的不透明度。
<!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>Adding shadow to a circle using FabricJS</h2>
<p>Notice the shadow around the circle object. Here we have passed an 'rgba' value to assign the color.</p>
<canvas id="canvas"></canvas>
<script>
// Initiate a canvas instance
var canvas = new fabric.Canvas("canvas");
// Initiate a shadow instance
var shadow = new fabric.Shadow({
color: "rgba(0,128,0,0.8)",
blur: 20
});
var circle = new fabric.Circle({
left: 115,
top: 50,
radius: 50,
fill: "#85bb65",
shadow: shadow
});
canvas.add(circle);
canvas.setWidth(document.body.scrollWidth);
canvas.setHeight(250);
</script>
</body>
</html>
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP