한 캔버스의 모든 내용을 복사하여 클라이언트 측에서 다른 캔버스로 모두 전송하고 싶습니다. 나는 이것을 구현 하기 위해 canvas.toDataURL()
and context.drawImage()
메소드를 사용할 것이라고 생각 하지만 몇 가지 문제가 있습니다.
내 해결책은 Canvas.toDataURL()
이것을 Javascript의 Image 객체에 가져 와서 저장 한 다음 context.drawImage()
메서드를 사용하여 다시 배치하는 것입니다.
그러나 toDataURL
메서드가 "data:image/png;base64,"
앞에 붙은 64 비트 인코딩 태그를 반환 한다고 생각 합니다. 이것은 유효한 태그가 아닌 것 같습니다 (항상 RegEx를 사용하여 이것을 제거 할 수 있음). 그러나 64 비트 인코딩 문자열이 "data:image/png;base64,"
하위 문자열 뒤에 유효한 이미지입니까? 이라고 말하고 image.src=iVBORw...ASASDAS
캔버스에 다시 그릴 수 있습니까 ?
몇 가지 관련 문제를 살펴 보았습니다. base64를 사용하여 한 캔버스에서 다른 캔버스로 캔버스 이미지 표시
그러나 해결책은 옳지 않은 것 같습니다.
HTMLCanvasElement
) 는 그릴 수 있지만 컨텍스트 (CanvasRenderingContext2D
) 는 그릴 수 없습니다 .myContext.canvas
대신 사용하십시오 .