【发布时间】:2017-11-08 20:30:19
【问题描述】:
在canvas.toDataURL() 行后,我收到一个错误
无法在“HTMLCanvasElement”上执行“toDataURL”:受污染的画布 不能导出
我尝试自己搜索解决方案,具有交叉来源,但这对我没有帮助。有没有可能下载在画布上创建的图像?我看到了toDataURL() 的例子,但不幸的是这些对我不起作用。我会考虑其他解决方案。
_handleSaveButton(){
var canvas = document.getElementById('memesCanvas');
console.log(canvas);
var canvasimage=document.createElement("img");
canvasimage.setAttribute('crossOrigin','anonymous');
canvasimage = canvas.toDataURL('image/png');
canvasimage.replace(/^data:image\/[^;]/, 'data:application/octet-stream');
alert(canvasimage);
}
<ReactButton onClick={() => this._handleSaveButton()} styleName={'generate-meme'} name='generate meme'/>
【问题讨论】:
-
canvasimage.crossOrigin = '*';也无济于事
-
您是否尝试过接受的答案here中提到的其他解决方案?
-
您是否在任何地方使用
drawImage()?您如何加载您提供给drawImage()的图像?是否通过file://协议?图片是否在不同的域中?
标签: javascript html reactjs canvas