基于图片的cdn最终得到blob对象

基于图片的cdn最终得到blob对象

  1. 实现并不是直接下载cdn图片,所以最终blob数据大小和cdn原图有偏差
  2. 通过cdn判断资源是否是图片
  3. 通过cdn链接拿到图片资源,绘制在画布上
  4. canvas上下文的方法,转为base64格式
  5. base64转化为blob对象
  6. 有多张cdn图片需要处理为blob的情况下,请妥善使用Promise处理异步事件
  7. 此方法适合对按cdn图片格式最终转化成的图片格式对应的需求,但大小方面需要自己判断后压缩
  8. 如果对最终转化图片无格式要求,convertUrlToBase64函数中的变量ext可以直接写成’jpeg’,利用canvas上下文,可以更加精准的压缩
 			// 判断文件是否为图片类型
            function isImage(ext) {
   
                if (ext == 'png' || ext == 'jpg' || ext == 'jpeg' || ext == 'gif' || ext == 'bmp') {
   
                    return true;
                }
            }

			 // 将图片地址转换为 base64 格式
            function convertUrlToBase64(url) {
   
                return new Promise(function (resolve, reject) {
   
                    let img = new Image();
                    img.crossOrigin = 'Anonymous'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值