Html5-canvas-styles-and-colors

提供:Dev Guides
移動先:案内検索

HTML5 Canvas-スタイルと色

HTML5キャンバスは、色を図形に適用するために次の2つの重要なプロパティを提供します-

Sr.No. Method and Description
1

fillStyle

この属性は、図形内で使用する色またはスタイルを表します。

2

strokeStyle

この属性は、図形の周りの線に使用する色またはスタイルを表します。

デフォルトでは、ストロークと塗りつぶしの色は黒に設定されており、CSSカラー値#000000です。

fillStyleの例

以下は、上記のfillStyle属性を利用して素敵なパターンを作成する簡単な例です。

<!DOCTYPE HTML>

<html>
   <head>

      <style>
         #test {
            width: 100px;
            height:100px;
            margin: 0px auto;
         }
      </style>

      <script type = "text/javascript">
         function drawShape() {

           //get the canvas element using the DOM
            var canvas = document.getElementById('mycanvas');

           //Make sure we don't execute when canvas isn't supported
            if (canvas.getContext) {

              //use getContext to use the canvas for drawing
               var ctx = canvas.getContext('2d');

              //Create a pattern
               for (var i = 0;i<7;i++) {

                  for (var j = 0;j<7;j++) {
                     ctx.fillStyle = 'rgb(' + Math.floor(255-20.5*i)+ ','+
                     Math.floor(255 - 42.5*j) + ',255)';
                     ctx.fillRect( j*25, i* 25, 55, 55 );
                  }
               }
            } else {
               alert('You need Safari or Firefox 1.5+ to see this demo.');
            }
         }
      </script>
   </head>

   <body id = "test" onload = "drawShape();">
      <canvas id = "mycanvas"></canvas>
   </body>

</html>

上記の例では、次の結果が生成されます-

strokeStyleの例

以下は、上記のfillStyle属性を使用して別の素敵なパターンを作成する簡単な例です。

<!DOCTYPE HTML>

<html>
   <head>

      <style>
         #test {
            width: 100px;
            height:100px;
            margin: 0px auto;
         }
      </style>
      <script type = "text/javascript">
         function drawShape() {

           //get the canvas element using the DOM
            var canvas = document.getElementById('mycanvas');

           //Make sure we don't execute when canvas isn't supported
            if (canvas.getContext) {

              //use getContext to use the canvas for drawing
               var ctx = canvas.getContext('2d');

              //Create a pattern
               for (var i = 0;i<10;i++) {

                  for (var j = 0;j<10;j++) {
                     ctx.strokeStyle = 'rgb(255,'+ Math.floor(50-2.5*i)+','+
                     Math.floor(155 - 22.5 * j ) + ')';
                     ctx.beginPath();
                     ctx.arc(1.5+j*25, 1.5 + i*25,10,10,Math.PI*5.5, true);
                     ctx.stroke();
                  }
               }
            } else {
               alert('You need Safari or Firefox 1.5+ to see this demo.');
            }
         }
      </script>
   </head>

   <body id = "test" onload = "drawShape();">
      <canvas id = "mycanvas"></canvas>
   </body>

</html>

上記の例では、次の結果が生成されます-