V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
wanderingFaker
V2EX  ›  问与答

前端实现 压缩图片(可降低分辨率)后提交后台

  •  
  •   wanderingFaker · 2017-10-26 17:22:47 +08:00 · 2566 次点击
    这是一个创建于 2375 天前的主题,其中的信息可能已经有所发展或是发生改变。

    网上看到有通过画布来实现的,有谁做过吗

    3 条回复    2017-10-26 18:40:15 +08:00
    coderluan
        1
    coderluan  
       2017-10-26 17:29:10 +08:00
    noe132
        2
    noe132  
       2017-10-26 18:22:18 +08:00 via Android
    很简单,new 一个 canvas,然后将 img 元素调整合适的大小画到 canvas 上,然后再导出成 jpg 或 png 的 dataurl。直接提交 dataurl 给后台。如果是 form data 的 filetype,把 dataurl 转成 blob 就可以了。通过设置 canvas 的大小和 jpg 的压缩比例就能控制图片质量。
    foru17
        3
    foru17  
       2017-10-26 18:40:15 +08:00
    转 dataurl 后,由于编码问题,除非减少图片尺寸,要不然很难降低实际图片文件大小。这个需要一个平衡。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2684 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:06 · PVG 19:06 · LAX 04:06 · JFK 07:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.