Scale transform on the HTML5 canvas

Example of how you can use the scale transform on the HTML5 canvas.
<!DOCTYPE HTML>
<html>
  <head>
    <style>
      body {
        margin: 0px;
        padding: 0px;
      }
    </style>
  </head>
  <body>
    <canvas id="myCanvas" width="600" height="300"></canvas>
    <script>

    var canvas = document.getElementById('myCanvas'); 
    var ctx = canvas.getContext('2d'); 
    
        ctx.translate(canvas.width / 2, canvas.height / 2); // center

        ctx.scale(1, 0.5); // scale decreased by half in the Y axis
        
        ctx.fillStyle = 'red';
        ctx.fillRect(20, 20, 100, 100);
       
   </script>
  </body>
</html>        

Responses

0 Replies