vue 네트워크 그림 url 회전 Base 64

12422 단어 vue
한 장의 그림 을 Base 64 로 돌리다.
<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 로 압축 한 후 base 64 의 문자열 이 이전 보다 길 수 있 기 때 문 입 니 다!
여러 장의 그림 을 Base 64 로 변환
<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>

좋은 웹페이지 즐겨찾기