Ich versuche, eine Image-URL in ein Base64-Bild zu konvertieren. Ich habe this gefunden, die ich versuche zu verwenden.Javascript Konvertieren einer URL zu einem Base64 Image
Ich habe den folgenden Code:
var imgUrl = 'https://www.google.de/images/srpr/logo11w.png';
let base64image = this.getBase64Image(imgUrl);
console.log(base64image);
und
public getBase64Image(imgUrl) {
var img = new Image();
img.src = imgUrl;
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");
}
Aber es gibt die folgenden:
data:,
Ich erhalte die folgende Fehlermeldung in der Konsole:
EXCEPTION: Uncaught (in promise): SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported. Error: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.
Mein Code muss ich incorrect. Kann jemand bitte beraten, wie man die URL in ein base64 Bild umwandelt?
Dank
UPDATE
ich die folgende Zeile in der Funktion aded:
img.crossOrigin = "Anonymous";
Das von dem Fehler losgeworden, nun aber, bekomme ich folgendes:
data:,
Schauen Sie sich die Fehlermeldungen auf der Konsole - * Fehler. Fehlgeschlagen ‚toDataURL‘ auf ‚HTMLCanvasElement‘ auszuführen: Tainted Leinwänden nicht exportiert werden kann * – Quentin
Added die Fehlermeldung. Vielen Dank, dass Sie darauf hingewiesen haben. – Richard
Sie haben dies als ein Duplikat gekennzeichnet, welche Frage dupliziert es? – Richard