canvas d'html5: Conversion de fichier de l'Image DataURL jette Uncaught TypeError

Je vais essayer d'obtenir le Base64/Données de l'URL d'un fichier d'image en Javascript. L'utilisateur fondamentalement sélectionne une image via le Fichier de contrôle d'Entrée et les Données de l'URL est générée. Cependant, j'ai cette erreur:

Uncaught TypeError: Échec de l'exécution de 'drawImage' sur
'CanvasRenderingContext2D': La valeur fournie n'est pas de type
'(HTMLImageElement ou HTMLVideoElement ou HTMLCanvasElement ou
ImageBitmap)'

HTML:

<body>
    <form id="form1">
    <div>
        <input type="file" id="imageinput" onchange="testit(event)" />
        <canvas width="300" height="300" id="mycanvas" style="display: none;"></canvas>
    </div>
    </form>
</body>

Javascript:

function testit(event) {

            var myImage = URL.createObjectURL(event.target.files[0]);

            var myCanvas = document.getElementById('mycanvas');

            var ctx = myCanvas.getContext('2d');

            ctx.drawImage(myImage, 0, 0);

            var mydataURL = myCanvas.toDataURL('image/jpg');

            alert(mydataURL);

        }

Pourquoi n'est-ce pas le code de travail, les gars?

  • vous avez besoin de mettre l'url sur une balise img src puis passer l'img à la toile pour attirer, une fois chargé.
InformationsquelleAutor Dinuka | 2015-10-08