本地图片转base64编码


通常获取图片的base64编码都是通过input的上传file属性获取转化,但是有时候需要的是本地图片不经过上传操作,直接拿本地图片转成base64编码就不行了,input上传操作需要人为操作一下,没有认为操作拿到的只是图片路径,现在可以通过canvas的toDataURL属性来将本地图片直接转换成base64编码形式,如下方法直接可以用:

changeBase64(url) {   var imgSrc = url; // 图片本地路劲   var image = new Image()   image.src = imgSrc   image.onload = () => {     var canvas = document.createElement("canvas")     canvas.width = image.width     canvas.height = image.height     var ctx = canvas.getContext("2d")     ctx.drawImage(image, 0, 0, image.width, image.height)     var ext = image.src.substring(image.src.lastIndexOf(".") + 1).toLowerCase()     var dataUrl = canvas.toDataURL("image/" + ext)     var base64 = JSON.parse(JSON.stringify(dataUrl)) // 这里就是转化成的编码   } }