캔버스로 만드는 원형 펀칭 레이어

이런 원형의 컷아웃 레이어를 canvas로 부담없이 그린다.


HTML
<canvas id="image" style="height: 300px; width: 300px;" height="300" width="300"></canvas>

자바스크립트
var image = new Image()

image.onload = function() {
  canvas = document.getElementById("image");
  context = canvas.getContext("2d");

  context.fillStyle = "rgba(0, 0, 0, 0.5)";
  context.fillRect(0, 0, 300, 300);

  context.fillStyle = "rgb(255, 255, 255)";
  context.globalCompositeOperation = "destination-out";
  context.arc(150, 150, 150, 0, Math.PI * 2);
  context.fill();

  context.globalCompositeOperation = "destination-over";
  context.drawImage(image, 0, 0, 300, 300)
}

image.src = "https://frenchmoments.eu/wp-content/gallery/nancy-place-stanislas/copyright-french-moments-place-stanislas-nancy-8.jpg"

좋은 웹페이지 즐겨찾기