Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported 设置crossOrigin无效

最近在使用图片导出base64 的时候遇到下面的报错

我的代码如下

let myImage = new Image();
myImage.src =imgSrcData;
myImage.crossOrigin = 'Anonymous';

网上查阅资料,都说 给图片设置 crossOrigin 值为 Anonymous 就可以了,我这么设置,但是依然不行,后来才发现,设置这个crossOrigin的时机是有要求的

设置crossOrigin 必须在图片加之前设置, 同样如果是视频的话, 也得在视频加载之前设置,这样就没问题了,代码就调整下顺序

let myImage = new Image();
myImage.crossOrigin = 'Anonymous';
myImage.src =imgSrcData;
posted @ 2023-04-19 10:45  进军的蜗牛  阅读(241)  评论(0编辑  收藏  举报