JS实现下载图片,JS实现把图片转成Base64

Jan 8, 2020 4:01:19 PM 10626

通过JavaScript脚本可以把远程的图片转换为Base64,通过JavaScript脚本可以把远程的图片下载到本地。

直接上代码:

//将远程图片转化为base64
function getBase64(img){
    function getBase64Image(img,width,height) {
        //width、height调用时传入具体像素值,控制大小 ,不传则默认图像大小
        var canvas = document.createElement("canvas");
        canvas.width = width ? width : img.width;
        canvas.height = height ? height : img.height;

        var ctx = canvas.getContext("2d");
        ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
        var dataURL = canvas.toDataURL();
        return dataURL;
    }
    var image = new Image();
    image.crossOrigin = '';
    image.src = img;
    return new Promise((resolve,reject)=>{
        image.onload =function (){
            resolve(getBase64Image(image));//将base64传给done上传处理
        }
    });
}
//把图片转换成base64
getBase64('http://json.la/vx.jpg').then(base64 => {
    console.log(base64)
}, err => {
    console.log(err)
})



//下载远程图片
function downloadFile(url) { 
    var aLink = document.createElement('a');
    var evt = document.createEvent("MouseEvents");
    evt.initEvent("click", false, false);
    aLink.download = url;
    aLink.href = url;
    aLink.dispatchEvent(evt);
}

downloadFile('http://json.la/vx.jpg')


版权所属:JavaScript加密

原文地址:https://www.jsjiami.com/article/js-download-img.html

转载时必须以链接形式注明原始出处及本声明。


本文标签:
最新文章
Can "Upgrade" only to "WebSocket".是为什么? 9856
JS setTimeout 方法,JavaScript Hook 劫持setTimeout 8932
文件(文本)不乱码,保存后发给对方,对方打开乱码,怎么处理文件乱码? 13183
MacBook安装Nginx最有效方法 3759
模仿支付宝输入支付密码的UI,带JavaScript 密码输入校验功能 26757
Chrome浏览器模拟微信客户端访问网址,方法图文讲解模拟微信 49269
JavaScript在线加密,最牛加密按次加密计费方式讲解。 57888
丁香公开课请求 sign(签名) 分析过程讲解 16268
JavaScript优雅的跳转,作弊跳转方式,JS防检测跳转。 27929
JS代码书写注意事项,JavaScript代码压缩后为什么报错? 16282

      商务合作:1#vfan.cn(把#换成@),或者联系QQ:84034666

      业务咨询:i#itboy.net(把#换成@),或者联系QQ:8446666

再次输入密码