成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - canvas使用toDataUrl()出錯(cuò),img設(shè)置img.crossOrigin = "*"也沒(méi)用。

瀏覽:122日期:2023-03-03 10:27:01

問(wèn)題描述

頁(yè)面要做一個(gè)截圖的功能,本地生成了一張圖片,然后轉(zhuǎn)成canvas,再?gòu)腸anvas變成png,但是canvas.toDataUrl()一直報(bào)錯(cuò):

Uncaught DOMException: Failed to execute ’toDataURL’ on ’HTMLCanvasElement’: Tainted canvases may not be exported.

代碼如下:

var url = DOMURL.createObjectURL(svg);var canvas = document.createElement(’canvas’);var ctx = canvas.getContext(’2d’);canvas.width = window.innerWidth;canvas.height = window.innerHeight*1.25;cacheImg(url,function(){ ctx.drawImage(this , 0 , 0); var image = canvas.toDataURL('image/png').replace('image/png', ’image/octet-stream’); DOMURL.revokeObjectURL(url);});function cacheImg(url , callback){ var img = new Image() img.setAttribute(’crossOrigin’, ’Anonymous’); img.src = url; img.onload = function() {callback.call(img) }}

問(wèn)題解答

回答1:

這有一片文章,里面部分代碼或許有幫助http://fex.baidu.com/blog/201...

標(biāo)簽: JavaScript