選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

HTML Canvas 陰影


HTML Canvas 陰影

要在 canvas 中建立陰影,我們使用以下四個屬性

  • shadowColor - 定義陰影的顏色
  • shadowBlur - 定義陰影的模糊量
  • shadowOffsetX - 定義陰影水平偏移的距離
  • shadowOffsetY - 定義陰影垂直偏移的距離

shadowColor 屬性

shadowColor 屬性定義陰影的顏色。

預設值為完全透明的黑色。

示例

這裡我們建立了一個帶有淺藍色陰影的填充藍色矩形,以及一個帶有淺藍色陰影的描邊藍色矩形

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影
ctx.shadowColor = "lightblue";
ctx.shadowOffsetX = 10;
ctx.shadowOffsetY = 10;

// 填充矩形
ctx.fillStyle = "blue";
ctx.fillRect(20, 20, 100, 100);

// 描邊矩形
ctx.lineWidth = 4;
ctx.strokeStyle = "blue";
ctx.strokeRect(170, 20, 100, 100);
</script>
自己動手試一試 »

示例

這裡我們建立了一個帶有淺藍色陰影的填充紫色文字,以及一個帶有淺藍色陰影的描邊紫色文字

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影
ctx.shadowColor = "lightblue";
ctx.shadowOffsetX = 5;
ctx.shadowOffsetY = 5;

ctx.font = "50px Arial";

// 填充文字
ctx.fillStyle = "purple";
ctx.fillText("Hello World",10,60);

// 描邊文字
ctx.strokeStyle = "purple";
ctx.strokeText("Hello World",10,120);
</script>
自己動手試一試 »


shadowBlur 屬性

shadowBlur 屬性定義應用於陰影的模糊量。

預設值為 0(無模糊)。

示例

shadowBlur 屬性設定為 8 的填充和描邊矩形

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影
ctx.shadowColor = "lightblue";
ctx.shadowBlur = 8;
ctx.shadowOffsetX = 10;
ctx.shadowOffsetY = 10;

// 填充矩形
ctx.fillStyle = "blue";
ctx.fillRect(20, 20, 100, 100);

// 描邊矩形
ctx.lineWidth = 4;
ctx.strokeStyle = "blue";
ctx.strokeRect(170, 20, 100, 100);
</script>
自己動手試一試 »

示例

shadowBlur 屬性設定為 4 的填充和描邊文字

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影
ctx.shadowColor = "lightblue";
ctx.shadowBlur = 4;
ctx.shadowOffsetX = 5;
ctx.shadowOffsetY = 5;

ctx.font = "50px Arial";

// 填充文字
ctx.fillStyle = "purple";
ctx.fillText("Hello World",10,60);

// 描邊文字
ctx.strokeStyle = "purple";
ctx.strokeText("Hello World",10,120);
</script>
自己動手試一試 »

shadowOffsetX 屬性

shadowOffsetX 屬性定義陰影與形狀的水平距離。

正值將陰影向右移動,負值將陰影向左移動。

預設值為 0(無水平偏移距離)。

示例

第一個矩形的 shadowOffsetX = 5,第二個矩形的 shadowOffsetX = 15,第三個矩形的 shadowOffsetX = -10

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影顏色
ctx.shadowColor = "lightblue";

ctx.fillStyle = "blue";

// 矩形 1
ctx.shadowOffsetX = 5;
ctx.fillRect(20, 20, 100, 100);

// 矩形 2
ctx.shadowOffsetX = 15;
ctx.fillRect(170, 20, 100, 100);

// 矩形 3
ctx.shadowOffsetX = -10;
ctx.fillRect(320, 20, 100, 100);
</script>
自己動手試一試 »

shadowOffsetY 屬性

shadowOffsetY 屬性定義陰影與形狀的垂直距離。

正值將陰影向下移動,負值將陰影向上移動。

預設值為 0(無垂直偏移距離)。

示例

第一個矩形的 shadowOffsetY = 5,第二個矩形的 shadowOffsetY = 15,第三個矩形的 shadowOffsetY = -10

您的瀏覽器不支援 HTML5 canvas 標籤。
<script>
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 陰影顏色
ctx.shadowColor = "lightblue";

ctx.fillStyle = "blue";

// 矩形 1
ctx.shadowOffsetY = 5;
ctx.fillRect(20, 20, 100, 100);

// 矩形 2
ctx.shadowOffsetY = 15;
ctx.fillRect(170, 20, 100, 100);

// 矩形 3
ctx.shadowOffsetY = -10;
ctx.fillRect(320, 20, 100, 100);
</script>
自己動手試一試 »

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援