Rumah >hujung hadapan web >Tutorial H5 >HTML5 canvas基本绘图之绘制阴影效果

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

巴扎黑
巴扎黑asal
2017-05-21 14:42:492314semak imbas

是HTML5中新增的标签,用于绘制图形,这篇文章主要为大家详细介绍了HTML5 canvas基本绘图之绘制阴影方法,感兴趣的小伙伴们可以参考一下

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

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

1.获取元素对应的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();   

效果如下:

Atas ialah kandungan terperinci HTML5 canvas基本绘图之绘制阴影效果. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn