官术网_书友最值得收藏!

Adding shadows to objects

Here, we will be using our first recipe. Just a few properties are set and we get a different output as shown:

Adding shadows to objects

Notice the difference between this and the output of the first recipe. Here you will notice a shadow for each line.

How to do it...

We use a few shadow-related properties to build this recipe:

<html>
<head>
  <title>Line Shadow</title>
    <script type="text/javascript">
      var can;
      var ctx;
      function init() {
        can = document.getElementById("MyCanvasArea");
        ctx = can.getContext("2d");
        drawLine(30,30,300,30,20,"orange","butt");  //default cap style
        drawLine(30,80,300,80,20,"crimson","round");
        drawLine(30,130,300,130,20,"teal","square");
      }
      function drawLine(xstart,ystart,xend,yend,width,color,cap)
      {
        ctx.beginPath();
        ctx.strokeStyle=color;
        ctx.lineWidth=width;

        //adding shadow
        ctx.shadowOffsetX = 4;
        ctx.shadowOffsetY = 4;
        ctx.shadowBlur    = 7;
        ctx.shadowColor   = "gray";
        //shadow properties set above
        
        ctx.lineCap=cap;
        ctx.moveTo(xstart,ystart);  
        ctx.lineTo(xend,yend);
        ctx.stroke();
        ctx.closePath();
      }
    </script>
</head>
<body onload="init()">
  <br/><br/>
  <center>
  <canvas id="MyCanvasArea" width="320" height="200"  style="border:3px solid brown;">
  </canvas>
  </center>
</body>
</html>

How it works...

The properties related to the shadow mentioned in the previous recipe are used here. Here the shadow is applied to the line rather than the text. Thus, shadows can be applied to objects.

There's more...

Try the following:

  • Change the shadow color
  • Change the blur value for the shadow
  • Change the shadowOffsetX and shadowOffsetY value
主站蜘蛛池模板: 东阿县| 遵义市| 平阴县| 方正县| 定州市| 湛江市| 双鸭山市| 板桥市| 阿合奇县| 长治市| 连江县| 华蓥市| 大关县| 宜兰市| 南充市| 女性| 岳西县| 河源市| 合山市| 永川市| 那坡县| 华容县| 临夏市| 家居| 河间市| 溧水县| 遂平县| 涟水县| 永德县| 宿松县| 沧州市| 潼关县| 盐亭县| 武陟县| 四子王旗| 视频| 孟州市| 墨玉县| 武汉市| 精河县| 二连浩特市|