想把所有大于 100K 的图片压缩到 100K 以内,有什么好的办法吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
coolair
V2EX    问与答

想把所有大于 100K 的图片压缩到 100K 以内,有什么好的办法吗?

  •  
  •   coolair 2019-01-24 10:40:49 +08:00 4089 次点击
    这是一个创建于 2454 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Pillow 有办法 resize 图片时指定图片文件的大小(空间占用,比如:100K )而不是长宽大小吗?
    27 条回复    2019-01-24 21:24:01 +08:00
    Sanko
        1
    Sanko  
       2019-01-24 10:57:35 +08:00 via Android
    杠一下
    一张十几个 g 的图片你也要压倒 100k 一下?
    abbatuu
        2
    abbatuu  
       2019-01-24 10:59:37 +08:00
    ps 做一个批量处理
    lincanbin
        3
    lincanbin  
       2019-01-24 11:00:25 +08:00
    你可以用 bmp 格式来存,这样知道目标分辨率,对应的文件大小也就知道了。
    但是这样没有必要。

    其他压缩图片格式,压缩率都不是固定的(具体看信息论),只有实际压一压才知道。

    你可以设置一个终止条件,不满足条件,长宽 * 一个系数(比如 0.7 )继续压,压到满足条件为止。
    coolair
        4
    coolair  
    OP
       2019-01-24 11:01:26 +08:00
    @Sanko 是手机传的照片,没有那么大的,最大也就 20M 左右吧。
    lookas2001
        5
    lookas2001  
       2019-01-24 11:05:15 +08:00 via Android
    二分答案一下,然后实际压缩压缩啥的。。。
    前提是文件大小随长宽增大单调递增。
    shenbo
        6
    shenbo  
       2019-01-24 11:09:21 +08:00
    试试这个

    http://www.rw-designer.com/picture-resize

    > PhotoResizeK20.exe - resize to approximate maximum size of 20kB.
    zackwu
        7
    zackwu  
       2019-01-24 11:09:44 +08:00
    @lincanbin 说的挺对的
    个人感觉用 bmp 存不太好,还是建议用他说的第二种方法,简单粗暴
    fnh
        8
    fnh  
       2019-01-24 11:13:39 +08:00
    可以啊,你把图片强制 320*320 像素
    16t
        9
    16t  
       2019-01-24 11:14:46 +08:00
    1M 是大于 100K,1GB 也是大于 100K,你这问题提问的没办法回答。
    tankb52
        10
    tankb52  
       2019-01-24 11:15:40 +08:00
    irfanview 可以直接转换为指定大小的文件。
    grewer
        11
    grewer  
       2019-01-24 11:19:17 +08:00
    可以压缩 但是图片质量会下降 最好的就是 能达到一个 大小和质量的一个最优值
    Vegetable
        12
    Vegetable  
       2019-01-24 11:20:31 +08:00 via iPhone
    参考缩略图的实现
    nutting
        13
    nutting  
       2019-01-24 11:35:15 +08:00
    lightroom 导出时候有这个大小选项
    zxq2233
        14
    zxq2233  
       2019-01-24 11:46:21 +08:00   3
    可以通过 qq 发给朋友。然后让朋友再发给你,这样腾讯会帮你压缩
    occam88
        15
    occam88  
       2019-01-24 13:39:13 +08:00
    @zxq2233 你真是个人才
    allenhu
        16
    allenhu  
       2019-01-24 13:44:18 +08:00 via Android
    这个不是普通意义上的 resize,再说,压成马赛克,有用吗?
    如果非有这个需求,可以先 resize 到 1x1,再 scale 到原始尺寸,应该不会超过你要的大小
    beinguser
        17
    beinguser  
       2019-01-24 13:45:54 +08:00
    photoshop,存储为网络格式,想压缩成 10k 都行
    mzlzero
        18
    mzlzero  
       2019-01-24 13:46:43 +08:00 via iPhone   4
    @zxq2233 只需要两个 qq 号,就能让腾讯帮我打工
    GeruzoniAnsasu
        19
    GeruzoniAnsasu  
       2019-01-24 14:25:05 +08:00
    > 允许 resize 吗
    > 大小范围有区间吗

    都 yes 的话我觉得写个脚本粗暴缩放就好了。。
    先转 比如 png,然后开始二分:比 100k 大就按文件大小比例调整长宽后从原图缩放出新图,重复这个过程直至逼近 100k 的最大长宽
    Sanko
        20
    Sanko  
       2019-01-24 14:25:23 +08:00 via Android
    @mzlzero 只需要一个贴吧账号,百度会给你压的更狠
    herozhang
        21
    herozhang  
       2019-01-24 14:48:54 +08:00   1
    用 imagemagick 的以下命令,可以指定文件输出大小
    convert original.jpeg -define jpeg:extent=300kb output.jpg
    elespec
        22
    elespec  
       2019-01-24 16:19:39 +08:00
    搜搜,大小排序,批量选择,导入光影魔术手,输出,限制文件大小为 100k;
    lewis04
        23
    lewis04  
       2019-01-24 16:27:18 +08:00
    用 lightroom 就可以批量处理 导出时可选择固定分辨率 或者文件大小
    wysnylc
        24
    wysnylc  
       2019-01-24 16:54:16 +08:00
    你是单个文件不能超过 100K 吧,把图片分割成 100K 的小文件,取的时候合并
    wolfie
        25
    wolfie  
       2019-01-24 17:02:02 +08:00
    kalboat
        26
    kalboat  
       2019-01-24 17:07:00 +08:00
    google webp 格式 了解下
    xfriday
       
    xfriday  
       2019-01-24 21:24:01 +08:00
    楼主又没说无损压缩
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2909 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 14:07 PVG 22:07 LAX 07:07 JFK 10:07
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86