Context繪制直線和折線

繪制簡(jiǎn)單的直線
js代碼

function draw() {
            var ctx = document.getElementById('myCanvas').getContext('2d');/*獲取畫(huà)布*/
            for (var i = 0 ; i < 12 ; i++) {
                ctx.strokeStyle = "red"; /*設(shè)置繪制的樣式*/
                ctx.lineWidth = 1 + i;/*設(shè)置繪制線寬*/
                ctx.beginPath();/*開(kāi)始繪制*/
                ctx.moveTo(5, 5 + i * 14);/*繪制的起始點(diǎn)坐標(biāo)*/
                ctx.lineTo(140, 5 + i * 14);/*繪制的終點(diǎn)坐標(biāo)*/
                ctx.stroke();/*開(kāi)始繪制*/
            }
        }
        window.onload = function () {
            draw();
        }       

html代碼

<canvas id="myCanvas" width="300" height="200"></canvas>

效果圖:


line.png

給直線設(shè)置不同的截?cái)鄻邮?br> js代碼

function draw1() {
            var ctx = document.getElementById('myCanvas1').getContext('2d');
            var lineCap = ['butt', 'round', 'square'];
            // 繪制參考線
            ctx.strokeStyle = 'red';
            ctx.beginPath();
            ctx.moveTo(10, 10);
            ctx.lineTo(10, 150);
            ctx.moveTo(150, 10);
            ctx.lineTo(150, 150);
            ctx.stroke();
            // 繪制直線段
            ctx.strokeStyle = 'green';
            for(var i = 0 ; i < lineCap.length ;i++){
                ctx.lineWidth = 20;
                ctx.lineCap = lineCap[i];/*設(shè)置截?cái)嗟臉邮?/
                ctx.beginPath();
                ctx.moveTo(10, 30 + i * 50);
                ctx.lineTo(150, 30 + i * 50);
                ctx.stroke();
            }

        }
        window.onload = function () {
            draw1();
        }       

html代碼

<canvas id="myCanvas1" width="300" height="200"></canvas>

效果圖


cap.png

繪制具有不同轉(zhuǎn)角樣式(連接樣式)的折線
js 代碼

function draw2() {
            var ctx = document.getElementById('myCanvas2').getContext('2d');
            var lineJoin = ['round', 'bevel', 'miter']/*圓角 斜直角 尖角*/
            ctx.strokeStyle = 'blue';
            ctx.lineWidth = 15;
            for (var i = 0 ; i < lineJoin.length ;i++){
                ctx.lineJoin = lineJoin[i];/*設(shè)置連接點(diǎn)轉(zhuǎn)角樣式*/
                ctx.beginPath();
                ctx.moveTo(10+i*150,30);
                ctx.lineTo(100+i*150,30);
                ctx.lineTo(100+i*150,100);
                ctx.stroke();
            }          
       }
window.onload = function () {
            draw2();
        }  

html 代碼

<canvas id="myCanvas2" width="420" height="200"></canvas>
join.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,136評(píng)論 25 708
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,223評(píng)論 4 61
  • 聽(tīng)途道說(shuō)巨與矮,差距萬(wàn)分思三分。 思想巨人行動(dòng)矮,三思過(guò)后低三分。 他日豪言氣萬(wàn)丈,今日一看少三分 德行主修輔為路...
    幻城彡小孩無(wú)愛(ài)閱讀 263評(píng)論 0 0
  • 去年在豆瓣寫(xiě)過(guò)一篇談戀愛(ài)。時(shí)隔一年,再談戀愛(ài)。 那時(shí)候解讀的戀愛(ài): 談戀愛(ài),字面理解,談是交流,戀是愛(ài)慕,愛(ài)是關(guān)愛(ài)...
    胡說(shuō)十三道閱讀 527評(píng)論 1 1
  • 匆匆預(yù)約的來(lái)訪者 今天又有一位來(lái)訪者臨時(shí)要約我,我沒(méi)有給他安排咨詢(xún)。雖然沒(méi)做這個(gè)咨詢(xún),這類(lèi)情況還是再一次讓我深深的...
    石勤快閱讀 369評(píng)論 0 1