首頁 > web前端 > H5教程 > HTML5 canvas基本繪圖之繪製線條

HTML5 canvas基本繪圖之繪製線條

黄舟
發布: 2017-02-23 14:04:08
原創
2393 人瀏覽過

是HTML5中新增的標籤,用於繪製圖形,實際上,這個標籤和其他的標籤一樣,其特殊之處在於該標籤可以取得一個CanvasRenderingContext2D對象,我們可以透過JavaScript腳本來控制該物件進行繪圖。

只是一個繪製圖形的容器,除了id、class、style等屬性外,還有height和width屬性。在>元素上繪圖主要有三步:

1. 取得元素對應的DOM對象,這是一個Canvas物件;
2.呼叫Canvas物件的getContext( )方法,得到一個CanvasRenderingContext2D物件;
3.呼叫CanvasRenderingContext2D物件進行繪圖。

線條屬性

除了上面所使用的lineWidth屬性,線條還有以下幾個屬性:

•lineCap屬性設定或傳回線條末端線帽的樣式,可以取以下幾個值:
“butt” 在線條的每個末端加上平直的邊緣(預設);
“round” 為線條的每個末端加上圓形線帽;
“square” 在線條的每個末端加上正方形線帽。

•lineJoin 屬性當兩條線交會時設定或傳回所建立邊角的類型,可以取以下幾個值:
「miter」 建立尖角(預設) ;
“bevel” 建立斜角;
“round” 建立圓角。

•miterLimit 屬性設定或傳回最大斜接長度(預設為10)。斜接長度指的是兩條線交會處內角和外角之間的距離。只有當 lineJoin 屬性為 “miter” 時,miterLimit 才會有效。

JavaScript Code複製內容到剪貼簿

var canvas = document.getElementById("canvas");   

        var context = canvas.getContext("2d");   

        //测试lineCap属性   

        //设置基准线便于观察   

        context.moveTo(10,10);   

        context.lineTo(10,200);   

        context.moveTo(200,10);   

        context.lineTo(200,200);   

        context.lineWidth="1";   

        context.stroke();   

        //butt   

        context.beginPath();   

        context.moveTo(10,50);   

        context.lineTo(200,50);   

        context.lineCap="butt";   

        context.lineWidth="10";   

        context.stroke();   

        //round   

        context.beginPath();   

        context.moveTo(10,100);   

        context.lineTo(200,100);   

        context.lineCap="round";   

        context.lineWidth="10";   

        context.stroke();   

        //square   

        context.beginPath();   

        context.moveTo(10,150);   

        context.lineTo(200,150);   

        context.lineCap="square";   

        context.lineWidth="10";   

        context.stroke();   

      

        //测试linJoin属性   

        //miter   

        context.beginPath();   

        context.moveTo(300,50);   

        context.lineTo(450,100);   

        context.lineTo(300,150);   

        context.lineJoin="miter";   

        context.lineWidth="10";   

        context.stroke();   

        //round   

        context.beginPath();   

        context.moveTo(400,50);   

        context.lineTo(550,100);   

        context.lineTo(400,150);   

        context.lineJoin="round";   

        context.lineWidth="10";   

        context.stroke();   

        //square   

        context.beginPath();   

        context.moveTo(500,50);   

        context.lineTo(650,100);   

        context.lineTo(500,150);   

        context.lineJoin="bevel";   

        context.lineWidth="10";   

        context.stroke();   

      

        //测试miterLimit属性   

        context.beginPath();   

        context.moveTo(700,50);   

        context.lineTo(850,100);   

        context.lineTo(700,150);   

        context.lineJoin="miter";   

        context.miterLimit="2";   

        context.lineWidth="10";   

        context.strokeStyle="#2913EC";   

        context.stroke();
登入後複製



#各屬性的不同取值的效果如下:

HTML5 canvas基本繪圖之繪製線條

 以上是HTML5 canvas基本繪圖之繪製線條 的內容,更多相關內容請關注PHP中文網(m.sbmmt.com)! 

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板