Вот простой пример преобразования первого изображения, выбранного с помощью кнопки просмотра файла. Чтение файла происходит на стороне клиента после выбора изображения. Чтение файла асинхронное , поэтому я пообещал функцию чтения файла:
"use strict";
const fileDataURL = file => new Promise((resolve,reject) => {
let fr = new FileReader();
fr.onload = () => resolve( fr.result);
fr.onerror = reject;
fr.readAsDataURL( file)
});
function showResult(file) {
fileDataURL( file)
.then( data => (document.getElementById("result").textContent = data))
.catch(err => console.log(err));
}
#result {
width: 80%;
font-family: monospace;
overflow-wrap: break-word;
}
<p>
<input type="file" onchange="showResult( this.files[0]);" accept="image/*">
<div>Data URL:</div>
<div id="result"></div>