關于HTML5畫布canvas的功能
一、畫布的使用
1、首先創建一個畫布(canvas)
canvas id=”myCanvas” width=”200” height=”100” >script Var c=document.getElementByID(“myCanvas”)//得到畫布 Var ctx=c.getContext(“2d”);//得到畫筆 Cxt.fill >3、Canvas - 路徑
moveTo(x,y) 定義線條開始坐標
lineTo(x,y) 定義線條結束坐標
1,Canvas的定義
canvas id= myCanvas width= 400 height= 200默認 canvas 畫布在頁面上會顯示一塊空白、無邊框的矩形。為了讓其顯示輪廓,通過定義樣式規則給其添加一個虛線邊框:
canvas { border: 1px dashed black;}2,獲取Canvas的上下文對象
要完成繪圖任務,首先我們要拿到 canvas 對象,接著取得其二維繪圖上下文。
下面樣例演示在頁面加載完畢時獲取繪圖上下文:
script window.onload = function() { var canvas = document.getElementById( myCanvas var context = canvas.getContext( 2d //這里寫繪圖代碼 /script3,畫直線
(1)下面繪制一條起點是(50,50),終點是(150,150)的直線線條
context.moveTo(50, 50);context.lineTo(150, 150);context.stroke();
(2)使用lineWidth、strokeStyle屬性分別設置線條的寬度和顏色
//線條寬度context.lineWidth = 10;//線條顏色(支持顏色編碼與rgb()函數)context.strokeStyle = #cd2828 context.strokeStyle = rgb(205,40,40) context.moveTo(50, 50);context.lineTo(150, 150);context.stroke();
(3)使用 lineCap 屬性設置線條兩端的形狀(線頭類型):
butt:方頭(默認值)
round:圓頭
square:加長方頭(效果與butt類似,但會在線條的兩頭各增加一半線寬的長度)
var canvas = document.getElementById( myCanvas var context = canvas.getContext( 2d //線條寬度context.lineWidth = 10;//線條顏色context.strokeStyle = #cd2828 //第一條直線,默認方頭context.moveTo(50, 50);context.lineTo(250, 50);context.stroke();//第二條直線,使用圓頭context.beginPath();context.moveTo(50, 100);context.lineTo(250, 100);context.lineCap = round context.stroke();//第三條直線,使用加長方頭context.beginPath();context.moveTo(50, 150);context.lineTo(250, 150);context.lineCap = square context.stroke();
注:繪圖上下文的beginPath()方法
上面樣例可以看到每次開始新線段的繪制時,都要調用 beginPath() 方法。
如果沒有這一步操作,那么每次調用 stroke() 都會把畫布上原有的線段再重新繪制一邊。特別像上面的例子,繪制新線段時都要修改上下文屬性,如果不調用 beginPath() 方法,那么原有的直線也會使用新的樣式繪制。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答