La page doit avoir une fonction de capture d'écran. Je génère une image localement, puis je la convertis en toile, puis de toile en png, mais canvas.toDataUrl() continue de signaler une erreur :
Uncaught DOMException: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.
Le code est le suivant :
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)
}
}
Voici un article, certains des codes qu'il contient peuvent être utiles http://fex.baidu.com/blog/201...