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

Jan 8, 2020 4:01:19 PM 10068

通过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".是为什么? 5557
JS setTimeout 方法,JavaScript Hook 劫持setTimeout 7809
文件(文本)不乱码,保存后发给对方,对方打开乱码,怎么处理文件乱码? 11877
MacBook安装Nginx最有效方法 3347
模仿支付宝输入支付密码的UI,带JavaScript 密码输入校验功能 25275
Chrome浏览器模拟微信客户端访问网址,方法图文讲解模拟微信 47352
JavaScript在线加密,最牛加密按次加密计费方式讲解。 53260
丁香公开课请求 sign(签名) 分析过程讲解 15486
JavaScript优雅的跳转,作弊跳转方式,JS防检测跳转。 26151
JS代码书写注意事项,JavaScript代码压缩后为什么报错? 15094

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

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

再次输入密码