Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

183
Visualizações
Unable to convert png image to base64encoded string

This piece of code below is supposed to convert the raw image to base64 string.

let base1="";
let base2="";
let base3="";
let base64String="";
var img=new Image();
var img1=new Image();
var img2=new Image();

img.src='Screenshot (1).png';
img1.src='Screenshot (2).png';
img2.src='Screenshot (3).png';

var reader = new FileReader();
reader.onload = function () {
    base64String = reader.result.replace("data:", "")
        .replace(/^.+,/, "");
}

reader.readAsDataURL(img);
base1=base64String;
reader.readAsDataURL(img1);
base2=base64String;
reader.readAsDataURL(img2);
base3=base64String;

But when I execute the code, I get the following error:

Uncaught TypeError: Failed to execute 'readAsDataURL' on 'FileReader': parameter 1 is not of type 'Blob'.

Why is that? Please help me fix this.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Because readAsDataURL expects the parameter as Blob. Best method will be to convert to base64 data url using canvas

let base1="";
let base2="";
let base3="";
let base64String="";
var img=new Image();
var img1=new Image();
var img2=new Image();
img.onload = function() {
    var canvas = document.createElement("canvas");
    canvas.width = img.width;
    canvas.height = img.height;
    ctx = canvas.getContext('2d');
    ctx.drawImage(img, 0, 0);
    base1 = canvas.toDataURL();
}
img.src='Screenshot (1).png';
img1.onload = function() {
    var canvas = document.createElement("canvas");
    canvas.width = img1.width;
    canvas.height = img1.height;
    ctx = canvas.getContext('2d');
    ctx.drawImage(img1, 0, 0);
    base2 = canvas.toDataURL();
}
img1.src='Screenshot (2).png';
img2.onload = function() {
    var canvas = document.createElement("canvas");
    canvas.width = img2.width;
    canvas.height = img2.height;
    ctx = canvas.getContext('2d');
    ctx.drawImage(img2, 0, 0);
    base2 = canvas.toDataURL();
}
img2.src='Screenshot (3).png';

The canvas.toDataURL() without param will generate a data url of type png if if the img src is a jpg

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda