# 案例3:繪制復雜圓形
先看圖:

相關代碼如下:‘
~~~
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>canvas</title>
</head>
<body onload="draw('canvas')">
<canvas id="canvas" width="300" height="400">
您的瀏覽器不支持 HTML5 canvas 標簽。
</canvas>
<script>
function draw(id) {
var canvas = document.getElementById(id); //step1:獲取canvas元素
var context = canvas.getContext("2d"); //step2:內建的HTML5對象
context.fillStyle = "#eeeeef"; //step3-1:填充紅色
context.fillRect(0, 0, 300, 400); //step3-2:繪制矩形
context.beginPath(); //step4-1:開始繪圖
context.fillStyle = "rgb(100, 255, 100)"; //step4-2:設置繪圖科區域顏色
context.strokeStyle = "rgb(0, 0, 100)"; //step4-3:設置線條顏色
//step4-4:繪制貝塞爾曲線
var dx = 150;
var dy = 150;
var s = 100;
var x = Math.sin(0); //初始值為0
var y = Math.cos(0); //初始值為1
var dig = Math.PI / 15 * 11;
for (var i = 0; i < 30; i++) { //不斷地旋轉繪制線條
x = Math.sin(i * dig);
y = Math.cos(i * dig);
context.lineTo(dx + x * s, dy + y * s);
}
context.closePath(); //step4-5:結束繪圖
context.fill(); //step4-6:填充顏色
context.stroke(); //step4-7:繪制線條
}
</script>
</body>
</html>
~~~
- Canvas基本功能
- 繪制方法
- (一)Canvas標簽
- 定義Canvas標簽
- 理解Canvas坐標系
- 獲取Canvas環境上下文
- (二)Canvas圖形
- 繪制Canvas路徑
- 1、繪制線條
- 案例1:繪制直線
- 案例2:繪制圓形的結束線帽
- 案例3:繪制復雜圓形
- 2、繪制矩形
- 案例1:rect()與stroke()繪制矩形
- 案例2:fillRect()繪制矩形
- 3、繪制圓形
- 案例1
- 案例2
- 4、繪制貝塞爾曲線
- 案例1:貝塞爾曲線方式1
- 案例2:貝塞爾曲線方式2
- 案例3:復雜的貝塞爾曲線
- 繪制Canvas變形圖形
- 處理Canvas圖形
- (三)Canvas文本
- 繪制文字
- 設置文字格式
- 設置文字對齊方式
- (四)Canvas圖片
- 繪制drawImage圖片
- 使用getImageData()和putImageData()繪制圖片
- 使用createImageData新建像素
- 參考文章
- API官網
- 示例