canvas教程

玩转html5canvas画图(2)

字号+ 作者:H5之家 来源:H5之家 2015-09-07 13:15 我要评论( )

View Code 1 function draw0(id) { 2 var canvas = document.getElementById(id); 3 if (canvas == null ) { ; 5 } 6 var context = canvas.getContext('2d' ); 7 context.beginPath(); 8 context.arc(200, 150, 10

View Code

1 function draw0(id) { 2 var canvas = document.getElementById(id); 3 if (canvas == null) { ; 5 } 6 var context = canvas.getContext('2d'); 7 context.beginPath(); 8 context.arc(200, 150, 100, 0, Math.PI * 2, true); context.closePath(); 11 context.fillStyle = 'rgba(0,255,0,0.25)'; 12 context.fill(); 13 }

一不小心画了小日本的国旗...赶紧调下颜色和大小,绿色倒是挺合适的~

 

路径  context.beginPath()    context.closePath()

    细心的朋友会发现上面的画圆并不单单是直接用arc还用到了context的 beginPath   和closePath方法,参考书不愧是参考书,例子给得太简单了,实话说一开始我凌乱了,耐心下来做了几个实验才舒缓蛋疼的心情

    实验代码如下,通过分别注释closePath 和beginPath看fill stoke 和fill stroke结合下画出来的两个1/4弧线达到实验效果

View Code

1 function draw23(id) { 2 var canvas = document.getElementById(id); 3 if (canvas == null) { ; 5 } 6 var context = canvas.getContext('2d'); 7 var n = 0; context.beginPath(); 11 context.arc(100, 150, 50, 0, Math.PI/2 , false); 12 context.fillStyle = 'rgba(255,0,0,0.25)'; 13 context.fill(); 14 context.strokeStyle = 'rgba(255,0,0,0.25)' 15 context.closePath(); 16 context.stroke(); context.beginPath(); 20 context.arc(300, 150, 50, 0, Math.PI/2 , false); 21 context.fillStyle = 'rgba(255,0,0,0.25)'; 22 context.fill(); 23 context.strokeStyle = 'rgba(255,0,0,0.25)'; 24 context.closePath(); 25 context.stroke(); 26 }

    实验结果如下:

 

 得出的结论有:*号为重点

    1、系统默认在绘制第一个路径的开始点为beginPath

    *2、如果画完前面的路径没有重新指定beginPath,那么画第其他路径的时候会将前面最近指定的beginPath后的全部路径重新绘制

    3、每次调用context.fill()的时候会自动把当次绘制的路径的开始点和结束点相连,接着填充封闭的部分

    ps:书本的结论是   如果没有closePath那么前面的路劲会保留,实验证明正确的结论是 如果没有重新beginPath那么前面的路劲会保留

    ps1:如果你真心凌乱了,那么记住每次画路径都在前后加context.beginPath()   和context.closePath()就行

 

 绘制线段 context.moveTo(x,y)  context.lineTo(x,y)

    x:x坐标

    y:y坐标

    每次画线都从moveTo的点到lineTo的点,

    如果没有moveTo那么第一次lineTo的效果和moveTo一样,

    每次lineTo后如果没有moveTo,那么下次lineTo的开始点为前一次lineTo的结束点

View Code

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • html5canvas核心技术图形、动画与游戏开发源码

    html5canvas核心技术图形、动画与游戏开发源码

    2017-05-02 17:42

  • HTML5 canvas 作画板画图 可以做电子白板

    HTML5 canvas 作画板画图 可以做电子白板

    2017-04-27 12:02

  • Android画图学习免费下载

    Android画图学习免费下载

    2017-04-27 11:01

  • CAD迷你画图 V2017R4 官方版下载

    CAD迷你画图 V2017R4 官方版下载

    2017-04-27 10:03

网友点评
e