V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bestmos
V2EX  ›  PHP

PHP 有什么较好的质量压缩图片吗

  •  
  •   bestmos · 2021 年 8 月 15 日 · 4156 次点击
    这是一个创建于 1610 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前找到的一般都是 imagecopyresampled,但是尺寸留为 100%的话,压缩效果较一般,处理过的图片使用安卓的 ImageCompress 库,比率设置为 40 都可以再缩小一半。 PHP 有什么类似的质量压缩类的方法吗

    21 条回复    2021-08-31 14:12:47 +08:00
    X-Force
        1
    X-Force  
       2021 年 8 月 15 日
    转成 webp 啊
    ijrou
        2
    ijrou  
       2021 年 8 月 15 日
    前端压缩就行了。。。
    akira
        3
    akira  
       2021 年 8 月 15 日
    我一般是另外处理,例如调用 tinypng 之类的
    cloverzrg2
        4
    cloverzrg2  
       2021 年 8 月 15 日
    交给 cdn
    cloverzrg2
        5
    cloverzrg2  
       2021 年 8 月 15 日
    用 php,你是打算每个请求压缩一遍图片吗
    hefish
        6
    hefish  
       2021 年 8 月 15 日
    搁置这种想法吧。 一般 php 也是调用 gd 或者 imagick 来完成的,这个都嫌不行,那还不如让前端压好了传过来。
    bestmos
        7
    bestmos  
    OP
       2021 年 8 月 15 日
    @cloverzrg2 图片小加载的快嘛,用户传的图动辄 2.3M ,存储成本高了
    bestmos
        8
    bestmos  
    OP
       2021 年 8 月 15 日
    @X-Force 我试一下,目前是 png 转 jpg,不太理想
    yin1999
        9
    yin1999  
       2021 年 8 月 15 日
    楼上的 webp 挺合适啊,用对象存储+serverless 来做图像的存储和转码(转 webp ),然后再套个 CDN
    Xusually
        10
    Xusually  
       2021 年 8 月 15 日
    ImageMagick + imagick,使用 webp
    bestmos
        11
    bestmos  
    OP
       2021 年 8 月 15 日
    @yin1999 但是 IE 浏览器不兼容,目前想法是对不兼容的浏览器调用原图,兼容的使用 webp 。
    yin1999
        12
    yin1999  
       2021 年 8 月 15 日
    @bestmos 那针对 IE 增加 webp 独立的支持如何 https://stackoverflow.com/a/56021203/12349560
    liuxu
        13
    liuxu  
       2021 年 8 月 15 日
    你可以试一下 imaginary,基于 libvips,https://imaginary.linux.plus/
    duola
        14
    duola  
       2021 年 8 月 16 日
    @liuxu 刚才看了一下,没发现有压缩图片的 API 。
    GG668v26Fd55CP5W
        15
    GG668v26Fd55CP5W  
       2021 年 8 月 16 日 via iPhone
    搞一个异步任务队列,转 tinypng
    liuxu
        16
    liuxu  
       2021 年 8 月 16 日
    @duola /fip 可以,其他也行,width 和 height 填原图长宽就行,png 有 compression 压缩率,jpg 有 quality

    原图:



    compression 为 6,stripmeta 为 1
    duola
        17
    duola  
       2021 年 8 月 16 日
    @liuxu 试了一下,可以用,谢谢!
    abccccabc
        18
    abccccabc  
       2021 年 8 月 26 日
    @liuxu imaginary 这个库是 golang 的,有 php 的库吗?
    liuxu
        19
    liuxu  
       2021 年 8 月 31 日
    liuxu
        20
    liuxu  
       2021 年 8 月 31 日
    @abccccabc 你直接 pecl 装 vips 就行 https://pecl.php.net/package/vips
    abccccabc
        21
    abccccabc  
       2021 年 8 月 31 日
    @liuxu 谢谢,我去看看
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5447 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 03:42 · PVG 11:42 · LAX 19:42 · JFK 22:42
    ♥ Do have faith in what you're doing.