欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

  發(fā)布時(shí)間:2017-07-13 10:18:37   作者:hangge   我要評(píng)論
這篇文章主要介紹了Html5畫布,canvas 元素用于在網(wǎng)頁(yè)上繪制圖形。有興趣的小伙伴可以一起來(lái)了解一下

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è)置線條兩端的形狀(線頭類型):

  1. butt:方頭(默認(rèn)值)
  2. round:圓頭
  3. 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)文章

最新評(píng)論