vue网络图片url转Base64「建议收藏」

vue网络图片url转Base64「建议收藏」单张图片转Base64<script>methods:{ //异步执行 imageUrlToBase64(){ //一定要设置为let,不然图片不显示 letimage=newImage(); //解决跨域问题 image.setAttribute(‘crossOrigin’,’anonymous’); let…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

单张图片转Base64

<script>
    methods: { 
   
		//异步执行
		imageUrlToBase64() { 
   
			//一定要设置为let,不然图片不显示
			let image = new Image();
	
			//解决跨域问题
			image.setAttribute('crossOrigin', 'anonymous');
			
			let imageUrl = "http://bigf.cqugeo.cn/landslip/res/defaultImages/default.png";
			image.src = imageUrl
			
			//image.onload为异步加载
			image.onload = () => { 
   
				var canvas = document.createElement("canvas");
				canvas.width = image.width;
				canvas.height = image.height;
				var context = canvas.getContext('2d');
				context.drawImage(image, 0, 0, image.width, image.height);
				
				var quality = 0.8;
				//这里的dataurl就是base64类型
				var dataURL = canvas.toDataURL("image/jpeg", quality);//使用toDataUrl将图片转换成jpeg的格式,不要把图片压缩成png,因为压缩成png后base64的字符串可能比不转换前的长!
			
			}
		},
	}
</script>

使用toDataUrl将图片转换成jpeg的格式,不要把图片压缩成png,因为压缩成png后base64的字符串可能比不转换前的长!

多张图片转Base64

<script>
  data() { 
   
    return { 
   
   	 base64Datas: [],
    }
	methods: { 
   
		imageUrlToBase64(){ 
   
			let data = [
				"http://bigf.cqugeo.cn/landslip/res/defaultImages/default.png",
				"http://bigf.cqugeo.cn/landslip/res/defaultImages/default.png",
				"http://bigf.cqugeo.cn/landslip/res/defaultImages/default.png"
			]
			this.onloadImg(data, 1, data.length);
		},
	
		//采用递归同步执行
		onloadImg(data, i, len) { 
   
	
			//一定要设置为let,不然图片不显示
			let image = new Image();
	
			//解决跨域问题
			image.setAttribute('crossOrigin', 'anonymous');
			
			let imageUrl = "http://bigf.cqugeo.cn/landslip/res/defaultImages/default.png";
			image.src = imageUrl
	
			let that = this;
			//image.onload为异步加载
			image.onload = () => { 
   
				var canvas = document.createElement("canvas");
				canvas.width = image.width;
				canvas.height = image.height;
				var context = canvas.getContext('2d');
				context.drawImage(image, 0, 0, image.width, image.height);
				
				var quality = 0.8;
				//这里的dataurl就是base64类型
				var dataURL = canvas.toDataURL("image/jpeg", quality);//使用toDataUrl将图片转换成jpeg的格式,不要把图片压缩成png,因为压缩成png后base64的字符串可能比不转换前的长!
				
				//数组存放图片base64
				that.base64Datas.push(dataURL);
				
				//递归执行图片url转base64
				i = i + 1;
				if (i <= len) { 
   
					that.onloadImg(data1, i, len)
				}
			
			}
		},
	}
</script>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192845.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 对比学习、自监督学习的理解「建议收藏」

    对比学习、自监督学习的理解「建议收藏」自监督学习定义:自监督学习主要是利用辅助任务从大规模的无监督数据中挖掘自身的监督信息来提高学习表征的质量,通过这种构造监督信息对网络进行训练,从而可以学习到对下游任务具有价值的表征。辅助任务(pretext):可以认为是一种为达到特定训练任务而设计的间接任务。pretext任务的好处是为了简化原任务的求解,在深度学习中就是避免人工标记样本,实现无监督的语义提取。Pretext任务可以进一步理解为:对目标任务有帮助的辅助任务。主要pretexttask包括:图像旋转、图像着色、图像修复。下游任务:图

    2025年11月16日
    6
  • mysql的字符串拼接函数怎么用_拼接字段的函数是什么

    mysql的字符串拼接函数怎么用_拼接字段的函数是什么MySQL的字符串拼接有三个函数CONCAT(str1,str2,…)CONCAT_WS(separator,str1,str2,…)GROUP_CONCAT(expr)这三个函数都各有作用,现在测试看看是什么样子的效果准备数据表CREATETABLE`user_info`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)DEFAULTNULL,`age`int(3)DEFAULTNULL,

    2025年7月13日
    2
  • RePlugin集成AndroidAutoSize

    RePlugin集成AndroidAutoSize一、屏幕适配你可能会问“都2021年了还折腾屏幕适配?直接用dp单位适配不好吗?”,确实,如果公司的UI设计师、产品经理以及老板,能明白为什么一套UI在不同设备上显现出来的一些差异并不是bug时,开发者直接用dp单位配合一些布局技巧来进行适配是可以的,但是,实现多数情况下并不是如此美好,他们更希望看到的是UI在不同屏幕上,仅仅只是缩放的区别,为了满足这种要求,应用第三方屏幕适配方案就非常有必要了。根据在网上查到的比较好的原生屏幕适配方案有两种:smallestWidth

    2022年6月6日
    34
  • 千百撸[通俗易懂]

    千百撸[通俗易懂]千百撸(黄网)

    2022年7月2日
    25
  • .Net 的动态对象(二)动态解析Json(JObject)

    .Net 的动态对象(二)动态解析Json(JObject)

    2021年6月29日
    134
  • IDEA这些既好用又好玩的三十多个宝贝插件你还不知道吗?「建议收藏」

    小编整理的一些好用的有趣的插件如果有什么问题,欢迎大家评论,群文件也有这些IDEA插件QQ交流群:99979568IDEA下载插件教程如果无法在线下载插件,文末有我下载好的安装包,以及安装包安装的教程强烈推荐的插件PresentationAssistant快捷键展示Codota代码智能提示AlibabaJavaCodeGuidelines—阿里巴巴Java代码规范Translation-必备的翻译插件SequenceDiagra.

    2022年4月8日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号