저는 현재 JavaScript로 2D 그래픽 라이브러리를 개발하고 있습니다. 이제는 문제를 변형시키는 배경 텍스처를 고수하고 있습니다.JavaScript 캔버스 fillingStyle에서 이미지 패턴을 변환하는 방법은 무엇입니까?
이미지 (CanvasPattern
)에 캔버스 컨텍스트 (CanvasRenderingContext2D
)의 배경 텍스처 (속성 fillStyle
)를 설정하고 싶습니다. fillStyle
에 이미지를 지정하는 것은 쉽습니다. 하지만 문제는 이미지를 실제로 번역하거나 크기를 조정하거나 왜곡 할 수 없다는 것입니다.
MDN을 찾았습니다. setTransform()
이라는 프로토 타입이 있다고합니다. 이 API를 사용하면 이미지를 SVGMatrix
으로 변형 할 수 있습니다. 약간 짜증이납니다. <svg>
중복 요소를 만들어야 할뿐만 아니라 실험용 API이기도하며 Google 크롬에서는 작동하지 않습니다.
일반적인 방법으로 해결하는 것은 불가능합니다. 이 작업을 수행하는 '해킹'방법이 있습니까?
당신은 먼저 다음 경로가 설정 만든 후 경로를 별도로 변환 생성 사용하여 경로의 채우기 독립을 변형 할 수 있습니다 당신이 패턴 원하는 변환을 한 후 채우기 .. 예 :'ctx.beginPath(); ctx.rect (0, 0, ctx.canvas.width, ctx.canvas.height); ctx, rotate (1); ctx.fillStyle = 패턴; ctx.fill();' – Blindman67