发布网友 发布时间:2022-04-25 06:08
共5个回答
热心网友 时间:2022-04-19 04:22
base64编码里边没有逗号,可以这样:.substring(src.indexOf(",")+1)
<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<title>Document</title>
ctx.drawImage(img, 0, 0, img.width, img.height);
var dataURL = canvas.toDataURL("image/png");
return dataURL
// return dataURL.replace("data:image/png;base64,", "");
}
function main() {
var img = document.createElement('img');
img.src = './images/yeoman.png';
img.onload =function() {
var data = getBase64Image(img);
console.log(data);
}
document.body.appendChild(img);
}
main()
</script>
</body>
</html>
可以在控制台看到base64的数据。
扩展资料:
标准的Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中的“/”和“+”字符变为形如“%XX”的形式,而这些“%”号在存入数据库时还需要再进行转换,因为ANSI SQL中已将“%”号用作通配符。
为解决此问题,可采用一种用于URL的改进Base64编码,它在末尾填充'='号,并将标准Base64中的“+”和“/”分别改成了“-”和“_”,这样就免去了在URL编解码和数据库存储时所要作的转换,避免了编码信息长度在此过程中的增加,并统一了数据库、表单等处对象标识符的格式。
参考资料来源:百度百科-base64
热心网友 时间:2022-04-19 05:40
java 图片转Base64 我想有前缀 怎么做???热心网友 时间:2022-04-19 07:14
base64编码里边没有逗号吧,那么可以这样:
.substring(src.indexOf(",")+1)
热心网友 时间:2022-04-19 09:06
试试
replace(/data:image\/.*;base64,/,'')
热心网友 时间:2022-04-19 11:14
你要去掉的话,浏览器还能识别么?