使用fileread将img转化为base64

作为一个小白,最近看到了关于使用将图片转化为base64的文章,学了下,觉得不错,就记下来了


首先,我们可以使用万能的canvas,但是由于我不怎么喜欢canvas(性能消耗过大),所以我选择使用filerader来将我们的图片转化为base64格式并且显示出来



首先得首先,我们需要介绍下兼容性,由于filereader是h5的,所以ie有些还是接受不了。所以到时候做下处理,接着,移动端对h5支持的很好,所以做移动端的就不要想那么多了,

为什么要使用base64?因为我们可以少发送请求,比如上传图片,我们转化为base64,实际上就是转化为字符串,这就不用去多请求一次

当然,base64 也是缺点的,就是浏览器不会缓存,所以使用时候选择好方法吧

代码比较简单:

效果如下:

代码的话在下面,大家使用的时候做下“错误”判断

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>

	<body id="mybody">
		<input type="file" id="file" />
		<img style="width: 100px;height: 100px;" />
		<button οnclick="clickme()">click me</button>
		<script>
			function clickme() {
				var file = document.getElementById('file').files[0];
				console.log(file.type);
				//判断type的类别。是否是img并且判断浏览器是否支持filereader
				//if (file.type="") {
				console.log(file.type)
				var raeader = new FileReader();
				raeader.readAsDataURL(file);
				raeader.onload = function(e) {
					console.log(this.result);
					document.querySelector("img").src = this.result;
				}
			}
			//}
		</script>
	</body>

</html>

对于将图片保存方面,我学习的是java语言,我就不多说了


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值