選單
×
   ❮     
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
     ❯   

Canvas transform() 方法

❮ Canvas 參考

示例

繪製一個矩形,然後使用 transform() 新增一個新的變換矩陣,再次繪製矩形,再新增一個新的變換矩陣,然後再次繪製矩形。請注意,每次呼叫 transform() 都會在前一個變換矩陣的基礎上進行疊加。

您的瀏覽器不支援 HTML5 canvas 標籤。

JavaScript

const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

ctx.fillStyle = "yellow";
ctx.fillRect(0, 0, 250, 100)

ctx.transform(1, 0.5, -0.5, 1, 30, 10);
ctx.fillStyle = "red";
ctx.fillRect(0, 0, 250, 100);

ctx.transform(1, 0.5, -0.5, 1, 30, 10);
ctx.fillStyle = "blue";
ctx.fillRect(0, 0, 250, 100);
自己動手試一試 »


描述

transform() 方法可以對畫布上下文進行縮放、旋轉、移動和傾斜。

畫布上的每個物件都有一個變換矩陣。

transform() 方法會替換掉當前的變換矩陣,並將其與由以下引數描述的矩陣相乘:

a c e
b d f
0 0 1

注意

變換會影響 `transform()` 方法呼叫之後進行的繪圖操作。

變換是相對於其他的 rotate()、scale()、translate() 或 transform() 變換而言的。如果您先將圖形放大兩倍,然後再次呼叫 transform() 將其放大兩倍,那麼圖形最終會被放大四倍。

另請參閱

scale() 方法(縮放上下文)

rotate() 方法(旋轉上下文)

translate() 方法(重新對映 0,0 位置)

setTransform() 方法(縮放、旋轉、移動、傾斜上下文)。


語法

context.transform(a, b, c, d, e, f)

引數值

引數 描述 試一試
a 水平縮放圖形 試一試 »
b 水平傾斜圖形 試一試 »
c 垂直傾斜圖形 試一試 »
d 垂直縮放圖形 試一試 »
e 水平移動圖形 試一試 »
f 垂直移動圖形 試一試 »

返回值


瀏覽器支援

<canvas> 元素是 HTML5 標準(2014)。

transform() 在所有現代瀏覽器中都受支援。

Chrome Edge Firefox Safari Opera IE
9-11

❮ Canvas 參考
×

聯絡銷售

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

報告錯誤

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

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

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