JavaScript Canvas绘制五角星实现详解

作者:白露时间:2026-10-29 21:02:52浏览:239

本文介绍利用JavaScript结合Canvas API绘制五角星的具体实现方法。通过获取绘图上下文,设置线条与填充颜色,并调用相关绘制函数完成图形渲染,为前端开发提供基础参考。

JavaScript Canvas绘制五角星实现详解

本文详细介绍使用JavaScript结合Canvas元素绘制五角星的具体实现方式,供读者参考学习。

最终运行效果如下图所示:

JavaScript Canvas绘制五角星实现详解

核心实现代码如下:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>canvas绘制五角星 </title>
  <script type="text/javascript" >
    window.onload = function () {
      var canvas = document.getElementById("canvas");
      if (canvas) {
        var context = canvas.getContext("2d");
        drawStar(context, 50, 100, 100);
      } else {
        document.writeln("浏览器不支持canvas组件");
      }
    }
    function drawStar(context, r, x, y) {
      context.lineWidth = 5;
      context.beginPath();
      var dit = Math.PI * 4 / 5;
      var sin = Math.sin(0) * r + y;
      var cos = Math.cos(0) * r + x;
      console.log(0+":"+0);
      context.moveTo(cos, sin);
      for (var i = 0; i < 5; i++) {
        var tempDit = dit * i;
        sin = Math.sin(tempDit) * r + y;
        cos = Math.cos(tempDit) * r + x;
        context.lineTo(cos, sin);
        console.log(sin+":"+sin+":"+tempDit);
      }
      context.closePath();
      context.strokeStyle = "red";
      context.fillStyle = "#DDDDDD";
      context.fill();
    }
  </script>
</head>
<body>
<canvas id="canvas" ></canvas>
</body>
</html>

如需了解更多JavaScript相关知识,建议参阅本站专题《JavaScript动画特效与技巧汇总》《JavaScript运动效果与技巧汇总》以及《JavaScript数据结构与算法技巧总结》。

期望上述内容能对读者的JavaScript编程实践提供有效帮助。

作者最新文章