首頁  >  文章  >  web前端  >  HTML5 canvas如何繪製圓形? (程式碼實例)

HTML5 canvas如何繪製圓形? (程式碼實例)

不言
不言原創
2018-12-04 10:51:298768瀏覽

canvas可以用來繪製各種圖形,那麼如何使用HTML5 canvas繪製一個圓形呢?這篇文章就來跟大家介紹關於HTML5 canvas繪製圓形的方法,以下我們來看具體的內容。

HTML5 canvas

我們來直接看範例

程式碼如下

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
  <meta charset="utf-8" />

  <script type="text/javascript">
       function draw() {
          var canvas = document.getElementById(&#39;SimpleCanvas&#39;);

          if ( ! canvas || ! canvas.getContext ) {
            return false;
          }

          var cx = 360;
          var cy = 400;
          var radius = 36;

          var context = canvas.getContext(&#39;2d&#39;);
          context.beginPath();
          context.arc(cx, cy, radius, 0, 2 * Math.PI, false);
          context.fillStyle = &#39;#9fd9ef&#39;;
          context.fill();
          context.lineWidth = 1;
          context.strokeStyle = &#39;#00477d&#39;;
          context.stroke();

      }
  </script>
</head>
<body onload="draw()" style="background-color:#D0D0D0;">
  <canvas id="SimpleCanvas" width="640" height="480" style="background-color:#FFFFFF;"></canvas>
  <div>Canvas Demo</div>
</body>
</html>

運行結果

瀏覽器上執行上述HTML文件。將會顯示如下效果

HTML5 canvas

最後說明一點

arc()方法給出的圓的座標是圓的中心座標。

在上面的HTML程式碼中,將繪圖部分設為下面的程式碼。

function draw() {
    var canvas = document.getElementById(&#39;SimpleCanvas&#39;);
    if ( ! canvas || ! canvas.getContext ) {
          return false;
    }
    var cx = 360;    
    var cy = 400;    
    var radius = 36;
    var context = canvas.getContext(&#39;2d&#39;);
    context.beginPath();
    context.arc(cx, cy, radius, 0, 2 * Math.PI, false);
    context.fillStyle = &#39;#9fd9ef&#39;;
    context.fill();
    context.lineWidth = 1;
    context.strokeStyle = &#39;#00477d&#39;;
    context.stroke(); 
    context.beginPath();
    context.moveTo(0, 0);
    context.lineTo(cx, cy);
    context.stroke();
    }

上述程式碼的顯示效果如下,可以看到中心座標是圓的中心。

HTML5 canvas

以上是HTML5 canvas如何繪製圓形? (程式碼實例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn