解决Image在canvas以及audiovideo在AudioContext下跨域问题

Posted ymaster

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决Image在canvas以及audiovideo在AudioContext下跨域问题相关的知识,希望对你有一定的参考价值。

媒体元素嘛,在对应的标签或对象上加上 crossOrigin = ‘anonymous‘ 即可。

例如 Image 在canvas 上绘制时会跨域:

<img crossOrigin="anonymous" src="your Image url"></img>

如果并非页面上的元素而是利用 Image 对象的的话:

const img = new Image();
img.crossOrigin = ‘anonymous‘;
img.src = ‘imageUrl‘;

同理,对于 htmlMediaElement 的标签元素来说也一样:

<audio crossOrigin="anonymous" src="your Image url"></audio>
const audio = new Audio();
audio.crossOrigin = ‘anonymous‘;
audio.src = ‘mediaUrl‘;

如此一来,只要服务器允许了跨域那么就可以跨过去了,这里设置了 crossOrigin 只是一只脚跨过去了呢,需要服务器也设置了允许跨域才能将两只脚都跨过去哦。

以上是关于解决Image在canvas以及audiovideo在AudioContext下跨域问题的主要内容,如果未能解决你的问题,请参考以下文章

html canvas blob image 污染源

safari 和 ios 在做canvas.toDataUrl 时报错怎么处理

html5中canvas画的图形如何打印以及导出pdf

Unity3D---UGUI---UI创建以及Canvas设置

为啥我用js创建的image在canvas里显示不出来?

Js下载图片(解决跨域问题)