Html5畫布_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

1,Canvas的定義
<canvas id="myCanvas" width="400" height="200">
默認(rèn)<canvas>畫布在頁(yè)面上會(huì)顯示一塊空白、無(wú)邊框的矩形。為了讓其顯示輪廓,通過(guò)定義樣式規(guī)則給其添加一個(gè)虛線邊框:
canvas { border: 1px dashed black; }
2,獲取Canvas的上下文對(duì)象
要完成繪圖任務(wù),首先我們要拿到<canvas>對(duì)象,接著取得其二維繪圖上下文。
下面樣例演示在頁(yè)面加載完畢時(shí)獲取繪圖上下文:
<script> window.onload = function() { var canvas = document.getElementById("myCanvas"); var context = canvas.getContext("2d"); //這里寫繪圖代碼 } </script>
3,畫直線
(1)下面繪制一條起點(diǎn)是(50,50),終點(diǎn)是(150,150)的直線線條
context.moveTo(50, 50); context.lineTo(150, 150); context.stroke();
(2)使用lineWidth、strokeStyle屬性分別設(shè)置線條的寬度和顏色
//線條寬度 context.lineWidth = 10; //線條顏色(支持顏色編碼與rgb()函數(shù)) context.strokeStyle = "#cd2828"; context.strokeStyle = "rgb(205,40,40)"; context.moveTo(50, 50); context.lineTo(150, 150); context.stroke();
(3)使用 lineCap 屬性設(shè)置線條兩端的形狀(線頭類型):
- butt:方頭(默認(rèn)值)
- round:圓頭
- square:加長(zhǎng)方頭(效果與butt類似,但會(huì)在線條的兩頭各增加一半線寬的長(zhǎng)度)
var canvas = document.getElementById("myCanvas"); var context = canvas.getContext("2d"); //線條寬度 context.lineWidth = 10; //線條顏色 context.strokeStyle = "#cd2828"; //第一條直線,默認(rèn)方頭 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(); //第三條直線,使用加長(zhǎng)方頭 context.beginPath(); context.moveTo(50, 150); context.lineTo(250, 150); context.lineCap = "square"; context.stroke();
注:繪圖上下文的beginPath()方法
上面樣例可以看到每次開(kāi)始新線段的繪制時(shí),都要調(diào)用 beginPath() 方法。
如果沒(méi)有這一步操作,那么每次調(diào)用 stroke() 都會(huì)把畫布上原有的線段再重新繪制一邊。特別像上面的例子,繪制新線段時(shí)都要修改上下文屬性,如果不調(diào)用 beginPath() 方法,那么原有的直線也會(huì)使用新的樣式繪制。
相關(guān)文章
- 這篇文章主要介紹了HTML5 畫布canvas使用方法,canvas 是一個(gè)矩形區(qū)域,可以控制其每一像素,介紹了canvas的多種功能,感興趣的小伙伴們可以參考一下2016-03-18
- 這篇文章主要介紹了使用分層畫布來(lái)優(yōu)化HTML5渲染的教程,來(lái)自于IBM官方網(wǎng)站開(kāi)發(fā)者技術(shù)文檔,需要的朋友可以參考下2015-05-08
- 本文介紹了JS和html5實(shí)現(xiàn)畫布旋轉(zhuǎn)效果示例,大家參考使用吧2014-01-27
- html5的canvas很強(qiáng)大利用其畫布可輕松繪制貝塞爾曲線,為大家以后使用方便,特于此分享實(shí)現(xiàn)代碼,有此需求的朋友可以參考下2013-08-14
html5的畫布canvas——畫出簡(jiǎn)單的矩形、三角形實(shí)例代碼
有兩種形式,一種是描邊(fill),一種是填充(stroke),具體的實(shí)現(xiàn)代碼如下,感興趣的朋友可以參考下哈,希望對(duì)大家有所幫助2013-06-09html5的畫布canvas——畫出弧線、旋轉(zhuǎn)的圖形實(shí)例代碼+效果圖
在做旋轉(zhuǎn)操作之前一定要理解一句話:旋轉(zhuǎn)的是畫布的坐標(biāo)系而不是圖形本身,首先認(rèn)識(shí)一下畫圓的坐標(biāo):中心、起始角、結(jié)束角;接下來(lái)的就很簡(jiǎn)單了2013-06-09HTML5邊玩邊學(xué)(1)畫布實(shí)現(xiàn)方法
Html5 引入了一個(gè)新的2010-09-21