HLJ 发布于
2018-08-20 12:36:36

HTML5 Canvas transform函数剪切变换

要剪切HTML5画布,我们可以使用transform()方法和下面的转换矩阵。 sx定义水平剪切,sy定义垂直剪切。
html代码:
<!DOCTYPE HTML>
<html>
  <head>
    <style>
      body {
        margin: 0px;
        padding: 0px;
      }
    </style>
  </head>
  <body>
    <canvas id="myCanvas" width="578" height="200"></canvas>
    <script>
      var canvas = document.getElementById('myCanvas');
      var context = canvas.getContext('2d');
      var rectWidth = 150;
      var rectHeight = 75;

      // shear matrix:
      //  1  sx  0
      //  sy  1  0
      //  0  0  1

      var sx = 0.75;
      // .75 horizontal shear
      var sy = 0;
      // no vertical shear

      // translate context to center of canvas
      context.translate(canvas.width / 2, canvas.height / 2);

      // apply custom transform
      context.transform(1, sy, sx, 1, 0, 0);

      context.fillStyle = 'blue';
      context.fillRect(-rectWidth / 2, rectHeight / -2, rectWidth, rectHeight);
    </script>
  </body>
</html>
当前文章内容为原创转载请注明出处:http://www.good1230.com/detail/2018-08-20/163.html
最后生成于 2023-06-18 18:38:03
此内容有帮助 ?
0