91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue如何實現將圖像文件轉換為base64

發布時間:2022-02-09 11:30:28 來源:億速云 閱讀:1854 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關vue如何實現將圖像文件轉換為base64的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

將圖像文件轉換為base64

直入主題,上代碼(其實用的還是FileReader)

1、image轉Base64

imageToBase64 (file) {
      var reader = new FileReader()
      reader.readAsDataURL(file)
      reader.onload = () => {
        console.log('file 轉 base64結果:' + reader.result)
        this.iconBase64 = reader.result
      }
      reader.onerror = function (error) {
        console.log('Error: ', error)
      }
}

2、Base64圖像直接顯示在標簽

<el-form-item prop="iconBase64">
   <img :src="iconBase64" v-show="isShow" />
</el-form-item>

vue網絡圖片轉base64

單張圖片轉Base64

<script>
    methods: {
		//異步執行
		imageUrlToBase64() {
			//一定要設置為let,不然圖片不顯示
			let image = new Image();
			//解決跨域問題
			image.setAttribute('crossOrigin', 'anonymous');
			let imageUrl = "http://img1.imgtn.bdimg.com/it/u=4012470373,3540768040&fm=26&gp=0.jpg";
			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的字符串可能比不轉換前的長!			
			}
		},
	}
</script>

多張圖片轉Base64

<script>
  data() {
    return {
   	 base64Datas: [],
    }
	methods: {
		imageUrlToBase64(){
			let data = [
				"https://cache.yisu.com/upload/information/20220209/112/953450.png",
				"https://cache.yisu.com/upload/information/20220209/112/953450.png",
				"https://cache.yisu.com/upload/information/20220209/112/953450.png"
			]
			this.imageUrlToBase64(data, 1, data.length);
		},
		//采用遞歸同步執行
		onloadImg(data, i, len) {
			//一定要設置為let,不然圖片不顯示
			let image = new Image();
			//解決跨域問題
			image.setAttribute('crossOrigin', 'anonymous');
			let imageUrl = "https://cache.yisu.com/upload/information/20220209/112/953450.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>

感謝各位的閱讀!關于“vue如何實現將圖像文件轉換為base64”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泸州市| 遂溪县| 石景山区| 康定县| 武强县| 安丘市| 洮南市| 茶陵县| 枝江市| 林州市| 阿鲁科尔沁旗| 大连市| 汶川县| 班戈县| 尉氏县| 木里| 威信县| 突泉县| 开江县| 咸丰县| 皋兰县| 福安市| 宝兴县| 台中县| 南通市| 团风县| 泰安市| 越西县| 宜川县| 宽城| 庆阳市| 拜泉县| 保康县| 盐池县| 中西区| 岑溪市| 阿瓦提县| 托克逊县| 荆门市| 涟源市| 绍兴市|