javascript - Canvas utilise l'erreur toDataUrl(), img définit img.crossOrigin = "*" en vain.
过去多啦不再A梦
过去多啦不再A梦 2017-07-05 10:57:31
0
1
814

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)
            }
        }
过去多啦不再A梦
过去多啦不再A梦

répondre à tous(1)
世界只因有你

Voici un article, certains des codes qu'il contient peuvent être utiles http://fex.baidu.com/blog/201...

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!