簡體   English   中英

在JS中的base64中編碼Web URL圖像

[英]encode web url image in base64 in JS

我正在嘗試將html文件中的zip文件加載到pc hdd中,但現在失敗了,要在其中保存圖像,應該在base64中對其進行編碼,如果這是一個Web url圖像,怎么可能會想到。

 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> </script> <img id = "myImage" src="http://files.smashingmagazine.com/wallpapers/feb-18/love-work/cal/feb-18-love-work-cal-320x480.png"> <input type = 'button' onclick="func()" value = "press me"> <script > 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,/,"") } function func() { var image = document.querySelector("#myImage"); var base64 = getBase64Image(image); alert(base64); } </script> </body> </html> 

我認為您可以使用httprequest對象來加載文件。

var req = new XMLHttpRequest();
req.withCredentials = true;
req.open("GET", sFileUrl, false); // 'false': synchronous.
req.send(null);
//return req.response;

如果需要base64,可以將字節數組轉換為base64。

var u8 = new Uint8Array(req.response);
var b64encoded = btoa(String.fromCharCode.apply(null, u8));
return b64encoded;

確保您可以訪問URL圖像。 希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM