评论

chooseImage上传图片压缩情况分析

chooseImage

wx.chooseImage({
  count: 1,
  sizeType: ['original', 'compressed'],
  sourceType: ['album', 'camera'],
  success (res) {
    // tempFilePath可以作为img标签的src属性显示图片
    const tempFilePaths = res.tempFilePaths
  }
})

总结下就是在苹果手机下,即使选择了原图,在上传的时候还是会被压缩的。

以上分析建立在网络环境为4G的情况,wifi情况下未验证。

本文是公众号api,小程序api未做实验验证。

最后一次编辑于  2020-02-15  
点赞 5
收藏
评论

10 个评论

  • fan
    fan
    2020-05-09

    安卓和ios即使选择原图都是会被压缩的

    2020-05-09
    赞同 5
    回复
  • JUCK
    JUCK
    2020-04-11

    android也会被压缩

    2020-04-11
    赞同 4
    回复
  • 小肥羊🍊
    小肥羊🍊
    2020-05-13
    1. 本来和大多数人的想法一样,用getLocalImgData取localData(base64)转化为Blob上传;首先我们写了方法兼容base64作为测试, 结果如下

    2. 5MB -> 原图图片
    3. iOS: 1.9MB(不影响质量)
    4. Android: 370KB (严重影响质量)(而且还需要自己加上data:image/jpeg;base64,)
    5. getLocalImgData这个方法不用注册也可以使用(其他:使用config配置appid这些是可以理解,不是很明白为什么很多方法要注册后使用,因为调用方法也是通过事件的机制通知到Native)
    6. 测试手机(微信版本7.0.5)
    7. iPhone 7p -> 12.4系统
    8. HUAWEI NOVA -> 7.0
    9. 系统这个问题有一年多了吧,始终没有解决。临时解决就是使用uploadImage,传到微信服务器,再拿过来!!!!感觉很没有必要


    这上面有个知识点,就是getLocalImgData为什么不需要注册就可以使用,记录下

    2020-05-13
    赞同 1
    回复 2
    • 杨洋
      杨洋
      2020-05-15
      补充说明一下,目前测试7.0.10微信安卓 没有问题。 那么该问题应该是今年2月以后的版本导致的。 等修复吧!
      2020-05-15
      2
      回复
    • 小肥羊🍊
      小肥羊🍊
      2020-05-15回复杨洋
      收到,谢谢反馈
      2020-05-15
      回复
  • 哄哄
    哄哄
    2023-08-10

    如果用户选择拍照直接完成选择的这张图是被压缩过了么

    发表

    2023-08-10
    赞同
    回复
  • 上官麦兜🍉 🍉 🍉
    上官麦兜🍉 🍉 🍉
    2020-07-15

    令人头秃,只能从微信服务器下载了,难以理解这种操作

    2020-07-15
    赞同
    回复
  • 小肥羊🍊
    小肥羊🍊
    2020-05-13

    如果真的想选择原图,先把图片上传到微信服务器,然后使用获取临时素材的接口

    https://developers.weixin.qq.com/community/develop/article/doc/0000e0d45f88a812855a0d22a5b813

    2020-05-13
    赞同
    回复 1
    • Gavin黄炯鹏
      Gavin黄炯鹏
      2020-11-19
      大佬,我的是小程序,怎么上传微信服务器呢
      2020-11-19
      回复
  • 小肥羊🍊
    小肥羊🍊
    2020-05-13

    你好,请参考一下帖子:

    原图上传,图片也会被压缩
    https://developers.weixin.qq.com/community/develop/doc/00088493fb47182c6e27b681b54c00
    


    2020-05-13
    赞同
    回复
  • 小肥羊🍊
    小肥羊🍊
    2020-05-13

    关于如何上传图片不被压缩的方案,我重新整理了下,需要的话,可以参考

    https://developers.weixin.qq.com/community/develop/article/doc/0000e0d45f88a812855a0d22a5b813

    2020-05-13
    赞同
    回复 2
    •  Little W
       Little W
      2020-07-31
      还是一样的,根源问题在图片选择那里,那里就已经压缩了好像,之后无论是获取base64还是传到服务器上后端再下载下来,图片质量都是一样的,该模糊还是继续模糊。应该是和机型有关
      2020-07-31
      回复
    • _圈圈天生自来卷
      _圈圈天生自来卷
      2020-08-02回复 Little W
      我现在上传到服务器在下下来,安卓不会压缩,ios会,感觉和机型有关系呢
      2020-08-02
      回复
  • Admin ²º²⁴
    Admin ²º²⁴
    2020-02-15

    ios下,选择原图也会被压缩?不应该吧?

    2020-02-15
    赞同
    回复 4
  • 喵喵侠
    喵喵侠
    2019-10-29

    图片的EXIF信息不会丢失吧

    2019-10-29
    赞同
    回复 3
    • 小肥羊🍊
      小肥羊🍊
      2019-10-29
      这个我本人没有验证,因为本身对这个信息不做提取。
      2019-10-29
      回复
    • 喵喵侠
      喵喵侠
      2019-10-29回复小肥羊🍊
      百度新出的相册APP也会做一个压缩处理,可能是要给图片加什么信息,实际大小跟原来的差不多。
      2019-10-29
      回复
    • 劲松_楚鸟
      劲松_楚鸟
      2021-06-03
      肯定丢失吧。
      2021-06-03
      回复
登录 后发表内容