HTML5 Canvas - Pattern and Shadow

There is following method required to create a pattern on the canvas −
createPattern(image, repetition)
This method will use image to create the pattern. The second argument could be a string with one of the following values: repeat, repeat-x, repeaty, andno-repeat. If the empty string or null is specified, repeat will. be assumed
Following is a simple example which makes use of above mentioned method to create a nice pattern.
<!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 new image object to use as pattern
               var img = new Image();
               
               img.src = 'images/pattern.jpg';
               img.onload = function() {
                  
                  // create pattern
                  var ptrn = ctx.createPattern(img,'repeat');
                  ctx.fillStyle = ptrn;
                  ctx.fillRect(0,0,150,150);
               }
            } 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>
Assuming we have following pattern images/pattern.jpg.
The above example would draw following result −
HTML5 canvas provides capabilities to create nice shadows around the drawings. All drawing operations are affected by the four global shadow attributes.
shadowColor [ = value ]
This property returns the current shadow color and can be set, to change the shadow color.
shadowOffsetX [ = value ]
This property returns the current shadow offset X and can be set, to change the shadow offset X.
shadowOffsetY [ = value ]
This property returns the current shadow offset Y and can be set, change the shadow offset Y.
shadowBlur [ = value ]
This property returns the current level of blur applied to shadows and can be set, to change the blur level.
Following is a simple example which makes use of above mentioned attributes to draw a shadow.
<!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');
               
               ctx.shadowOffsetX = 2;   
               ctx.shadowOffsetY = 2;   
               
               ctx.shadowBlur = 2;   
               ctx.shadowColor = "rgba(0, 0, 0, 0.5)";
               
               ctx.font = "20px Times New Roman";
               ctx.fillStyle = "Black";
               
               ctx.fillText("This is shadow test", 5, 30);
            } 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>
The above example would  produce following result −

    19 Lectures 
     2 hours 

 Anadi Sharma

    16 Lectures 
     1.5 hours 

 Anadi Sharma

    18 Lectures 
     1.5 hours 

 Frahaan Hussain

    57 Lectures 
     5.5 hours 

 DigiFisk (Programming Is Fun)

    54 Lectures 
     6 hours 

 DigiFisk (Programming Is Fun)

    45 Lectures 
     5.5 hours 

 DigiFisk (Programming Is Fun)
 Print
 Add Notes
 Bookmark this page