Я пытаюсь получить URL-адрес Base64/Data выбранного файла изображения в Javascript. Пользователь в основном выбирает изображение через элемент управления «Вход в файл» и генерирует URL-адрес данных. Тем не менее, я получаю эту ошибку:html5-canvas: Преобразование файла изображения в DataURL throws Uncaught TypeError
Uncaught TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or 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);
}
Почему не этот код работает, ребята?
вам нужно поместить этот URL на СРК давал IMG тега, а затем передать IMG на холсте рисовать, после загрузки. – dandavis