
im_chethi
Mit einer Bilddatei erhalte ich die URL eines Bildes, das an einen Webservice gesendet werden muss. Von dort muss das Bild lokal auf meinem System gespeichert werden.
Der Code, den ich verwende:
var imagepath = $("#imageid").val();// from this getting the path of the selected image
that var st = imagepath.replace(data:image/png or jpg; base64"https://stackoverflow.com/"");
Wie konvertiere ich die Bild-URL in BASE64?

ˈvɔlə
HTML
<img id="imageid" src="https://www.google.de/images/srpr/logo11w.png">
JavaScript
function getBase64Image(img) {
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,/, "");
}
var base64 = getBase64Image(document.getElementById("imageid"));
Diese Methode erfordert das Canvas-Element, das ist perfekt unterstützt.
Das ist in Ordnung, danke!
const getBase64FromUrl = async (url) => {
const data = await fetch(url);
const blob = await data.blob();
return new Promise((resolve) => {
const reader = new FileReader();
reader.readAsDataURL(blob);
reader.onloadend = function() {
const base64data = reader.result;
resolve(base64data);
}
});
}
getBase64FromUrl('https://lh3.googleusercontent.com/i7cTyGnCwLIJhT1t2YpLW-zHt8ZKalgQiqfrYnZQl975-ygD_0mOXaYZMzekfKW_ydHRutDbNzeqpWoLkFR4Yx2Z2bgNj2XskKJrfw8').then(console.log)

ˈvɔlə
let baseImage = new Image;
baseImage.setAttribute('crossOrigin', 'anonymous');
baseImage.src = your image url
var canvas = document.createElement("canvas");
canvas.width = baseImage.width;
canvas.height = baseImage.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(baseImage, 0, 0);
var dataURL = canvas.toDataURL("image/png");
Zusätzliche Informationen zu „CORS-fähigen Bildern“: MDN-Dokumentation

Mandeep Singh
Dies ist Ihr HTML-
<img id="imageid" src="">
<canvas id="imgCanvas" />
Javascript sollte sein-
var can = document.getElementById("imgCanvas");
var img = document.getElementById("imageid");
var ctx = can.getContext("2d");
ctx.drawImage(img, 10, 10);
var encodedBase = can.toDataURL();
‘encodedBase’ Enthält die Base64-Codierung des Bildes.
10105000cookie-checkKonvertieren Sie das Bild von der URL in Base64yes
mögliches Duplikat von Wie können Sie eine Zeichenfolge in JavaScript in Base64 codieren?
– SC
4. März 2014 um 13:10 Uhr
Wenn Sie nur versuchen, die URL und nicht die Bilddaten zu codieren, finden Sie Ihre Antwort möglicherweise hier: stackoverflow.com/questions/246801/…
– SC
4. März 2014 um 13:11 Uhr