javascript - 如何将图像插入 Canvas 弧?

标签 javascript jquery canvas

这是我的脚本,我试图将图像插入到弧形 Canvas 中以仅替换黑色部分,但没有解决方案:/这是我第一次在 Stack 上发帖,希望你能帮助我。 也可以查看脚本的 fiddle :http://jsfiddle.net/a1u6jmfj/

<!DOCTYPE HTML>
<html>
  <head>
    <style>
      body {
        margin: 0px;
        padding: 0px;
      }
    </style>
  </head>
  <body>
    <canvas id="myCanvas" width="578" height="250"></canvas>
    <script>
      var canvas = document.getElementById('myCanvas');
      var context = canvas.getContext('2d');
      var x = canvas.width / 2;
      var y = canvas.height / 2;
      var radius = 50;
      var startAngle = 1.1 * Math.PI;
      var endAngle = 1 * Math.PI;
      var counterClockwise = false;

      context.beginPath();
      context.arc(x, y, radius, startAngle, endAngle, counterClockwise);
      context.lineWidth = 100;

      // line color
      context.strokeStyle = 'black';
      context.stroke();
    </script>
  </body>
</html>  

最佳答案

您可以使用Compositing

var image = new Image();
image.src = /*image url*/;
image.onload = function() {
    context.save();
    context.globalCompositeOperation = 'source-in';
    context.drawImage(image, 0, 0);
    context.restore();
};

Example

关于javascript - 如何将图像插入 Canvas 弧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25416080/

相关文章:

javascript - 通过使用javascript从excel文件中读取excel数据来绘制折线图

javascript - promise 中的地理定位

Jquery .attr() 不会更改我的输出名称

javascript - HTML/Javascript : Selecting uncles/aunts

javascript - 在javascript中逆时针排序点

javascript - 在 ng-repeat 元素上添加事件

javascript - request.args.get()返回None类型值(None)

javascript - 动态改变js文件的src

javascript - 如何以位置绝对值打印到 Canvas

JavaScript原型(prototype)继承与html canvas