欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

HTML5 canvas基本绘图之绘制阴影效果

程序员文章站 2023-12-01 12:06:10
是HTML5中新增的标签,用于绘制图形,这篇文章主要为大家详细介绍了HTML5 canvas基本绘图之绘制阴影方法,感兴趣的小伙伴们可以参考一下... 16-06-27...

<canvas></canvas>是html5中新增的标签,用于绘制图形,实际上,这个标签和其他的标签一样,其特殊之处在于该标签可以获取一个canvasrenderingcontext2d对象,我们可以通过javascript脚本来控制该对象进行绘图。

<canvas></canvas>只是一个绘制图形的容器,除了id、class、style等属性外,还有height和width属性。在<canvas>>元素上绘图主要有三步:

1.获取<canvas>元素对应的dom对象,这是一个canvas对象;
2.调用canvas对象的getcontext()方法,得到一个canvasrenderingcontext2d对象;
3.调用canvasrenderingcontext2d对象进行绘图。

阴影绘制

  • shadowcolor 设置或返回用于阴影的颜色。
  • shadowblur 设置或返回用于阴影的模糊级别(数值越大越模糊)。
  • shadowoffsetx 设置或返回阴影与形状的水平距离。
  • shadowoffsety 设置或返回阴影与形状的垂直距离。

我们为之前绘制的五角星添加一下阴影

javascript code复制内容到剪贴板
  1. var canvas = document.getelementbyid("canvas");   
  2.    var context = canvas.getcontext("2d");   
  3.    context.beginpath();   
  4.    //设置是个顶点的坐标,根据顶点制定路径   
  5.    for (var i = 0; i < 5; i++) {   
  6.        context.lineto(math.cos((18+i*72)/180*math.pi)*200+200,   
  7.                        -math.sin((18+i*72)/180*math.pi)*200+200);   
  8.        context.lineto(math.cos((54+i*72)/180*math.pi)*80+200,   
  9.                        -math.sin((54+i*72)/180*math.pi)*80+200);   
  10.    }   
  11.    context.closepath();   
  12.    //设置边框样式以及填充颜色   
  13.    context.linewidth="3";   
  14.    context.fillstyle = "#f6f152";   
  15.    context.strokestyle = "#f5270b";   
  16.    context.shadowcolor = "#f7f2b4";   
  17.    context.shadowoffsetx = 30;   
  18.    context.shadowoffsety = 30;   
  19.    context.shadowblur = 2;   
  20.    context.fill();   
  21.    context.stroke();   

效果如下:

HTML5 canvas基本绘图之绘制阴影效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。