사용자가 이미지를 자르고 해당 이미지의 테두리를 선택할 수있는 앱을 개발 중입니다. 경계 스타일이있는 이미지를 Javascript를 통해 base64로 변환 할 수 있다면 알고 싶습니다.이미지를 Base64로 변환 테두리 이미지 스타일 포함
var img = new Image();
img.src = 'https://mdn.mozillademos.org/files/222/Canvas_createpattern.png';
var pat = canvasContext.createPattern(img,"repeat");
canvasContext.strokeStyle = pat;
canvasContext.lineWidth = 5;
canvasContext.strokeRect(-(this.rotatedOffset.x * exportZoom), -(this.rotatedOffset.y * exportZoom), canvas.width, canvas.height);
위의 코드는 검은 색 테두리를 캔버스에 추가합니다.
이제 이미지/패턴을 캔버스 테두리로 추가하고 싶습니다.
업데이트 : @ K3N의 답변에 따라 자른 이미지로 새 캔버스를 만들고 패턴 테두리를 추가했습니다. 내 필요를 위해 일했습니다.
확실히 가능합니다. 테두리와 이미지를 캔버스에 그릴 수 있습니다 (테두리 크기를 고려한 캔버스 컨텍스트를 만들어야 할 수도 있음). 그런 다음 Cropit에 유사한 방법을 사용하여 내보낼 수 있습니다. 답장을 보내 주셔서 감사합니다. – Dan
내 주요 문제는 자르고 이미지에 CSS 테두리 이미지를 추가하고 모두를 base64로 내보내려는 것입니다. 캔버스에 간단한 테두리를 추가 할 수 있지만 복잡한 이미지 패턴을 테두리로 추가하고 싶습니다. 어떻게 그걸 성취 할 수 있니? 나는 나의 질문을 업데이트했다. – Ricky
CSS에서이 작업을 수행 할 필요가 없습니다. CSS 스타일을 에뮬레이션해야합니다 (DOM 요소 나 스타일에서 비트 맵을 직접 저장할 수 없으므로 포함 된 모든 문제가있는) 캔버스로 전송하므로 CSS를 사용하지 않고 직접 테두리를 캔버스에 추가하는 것이 더 간단합니다. CSS를 사용하여 큰 원을 그리십시오. – K3N