openlayers截图之图片跨域问题
报错:
Error in v-on handler: "SecurityError: Failed to execute 'toBlob' on 'HTMLCanvasElement': Tainted canvases may not be exported."
原因:
引用图片资源如果跨域会污染canvas,导致canvas的toBlob、 toDataURL() 、getImageData()方法报错。
解决方法:
let map_img = new TileLayer({ source: new XYZ({ url: "https://t6.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=" + token, //!!!!!设置crossOrigin crossOrigin: 'anonymous', }), });
在服务上添加属性: crossOrigin: 'anonymous'
钻研不易,转载请注明出处。。。。。。
翻译
搜索
复制
<iframe height="240" width="320"></iframe> 标签:截图,跨域,crossOrigin,报错,openlayers,图片 From: https://www.cnblogs.com/s313139232/p/17797789.html