图片进行base64压缩

$(function() {
    $('#upLoad').on('change', function() {
        var filePath = $(this).val(), //获取到input的value,里面是文件的路径
            fileFormat = filePath.substring(filePath.lastIndexOf(".")).toLowerCase(),
            imgBase64 = '', //存储图片的imgBase64
            fileObj = document.getElementById('upLoad').files[0]; //上传文件的对象,要这样写才行,用jquery写法获取不到对象

        console.log(filePath);
        console.log(fileFormat);
        console.log(fileObj);
        // 检查是否是图片
        if (!fileFormat.match(/.png|.jpg|.jpeg/)) {
            alert('上传错误,文件格式必须为:png/jpg/jpeg');
            return;
        }

        directTurnIntoBase64(fileObj, function(i) {
            imgBase64 = i
        })
        console.log("---", imgBase64);
    });


    // 不对图片进行压缩,直接转成base64
    function directTurnIntoBase64(fileObj, callback) {
        var r = new FileReader();
        // 转成base64
        r.onload = function() {
            //变成字符串
            imgBase64 = r.result;
            console.log(imgBase64);
            callback(imgBase64);
        }
        r.readAsDataURL(fileObj); //转成Base64格式
    }
});

 

你可能感兴趣的:(前端)