寻找批量转换图片大小的方法--要求是按原图的百分比 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wuxiaomo
V2EX    问与答

寻找批量转换图片大小的方法--要求是按原图的百分比

  •  
  •   wuxiaomo 2015-12-03 12:15:32 +08:00 4672 次点击
    这是一个创建于 3602 天前的主题,其中的信息可能已经有所发展或是发生改变。
    试了好多软件,只有 acdsee 有这功能,但是 acdsee 会把 png 图片的 alpha 通道变成黑色。。。真是很费解。
    不知道各位 有没有好办法?
    第 1 条附言    2015-12-03 16:45:50 +08:00
    多谢各位的回答~~~
    靠大家的福,我用 xnview 和 faststone 联合起来解决了 这个问题。
    我知道为什么倒出来是黑色背景的原因了, png 是 8 位, 所以倒出来就变成黑色背景了,
    所以我先用 faststone 批量导成 32 位 png ,然后再用 xnview 批量单边百分比导出。

    各位回帖中,我最纳闷的是 ps 有按百分比导出吗?我是 cs6 ,如果能的话,望告知~~
    38 条回复    2015-12-04 08:08:32 +08:00
    jamesxu
        1
    jamesxu  
       2015-12-03 12:26:57 +08:00 via iPhone
    imagemagick
    SpicyCat
        2
    SpicyCat  
       2015-12-03 12:28:45 +08:00
    Imagemagic

    缩放单个文件: convert -resize 50% in.jpg out.jpg

    批量缩放,利用 find: $ find . -iname "*.jpg" -exec convert -resize 50% {} ../resize/{} \;
    需要建一个叫 resize 的目录,和当前目录平级,不能是当前目录的子目录,否则会失败

    如果不是 jpg ,是别的类型,自行修改扩展名

    在 Linux 上测试过, Win 上估计 Cygwin 可行?
    geeglo
        3
    geeglo  
       2015-12-03 12:29:09 +08:00
    FastStone Image Viewer 这个软件有批量转换功能。大部分参数都能自己定义,你可以试试。
    WIN 系统的。
    learnshare
        4
    learnshare  
       2015-12-03 12:29:27 +08:00
    IrfanView
    walkingway
        5
    walkingway  
       2015-12-03 12:34:12 +08:00
    OSX 系统的话,自带的 preview 就可以
    bycheng
        6
    bycheng  
       2015-12-03 12:49:31 +08:00
    PS 就可以啊,录一个动作,批量执行
    wuxiaomo
        7
    wuxiaomo  
    OP
       2015-12-03 12:55:56 +08:00
    @SpicyCat
    @jamesxu
    谢谢,我有个需求
    怎么 按照 某一边 resize ,比如我就想让 宽度 resize 20% ,而不是整个图片 ?
    wuxiaomo
        8
    wuxiaomo  
    OP
       2015-12-03 12:56:26 +08:00
    @bycheng PS 没有 百分比 放大缩小的吧? 我没找到
    wuxiaomo
        9
    wuxiaomo  
    OP
       2015-12-03 12:57:19 +08:00
    @geeglo 单个图片可以 按照某一边来缩放,但 批量 只能整个图片缩放 ,是这样吧?
    wuxiaomo
        10
    wuxiaomo  
    OP
       2015-12-03 12:57:56 +08:00
    @walkingway 呃。。。 能按百分比吗? 我的 mac 好像没看到啊
    66beta
        11
    66beta  
       2015-12-03 12:58:04 +08:00
    photoshop 录制动作,批处理
    wuxiaomo
        12
    wuxiaomo  
    OP
       2015-12-03 12:58:17 +08:00
    @learnshare 有批量功能吗? 下了一个好像不行
    Devin
        13
    Devin  
       2015-12-03 13:07:46 +08:00 via iPhone
    XnView 有批量转换图片大小功能
    oOpaopaoOo
        14
    oOpaopaoOo  
       2015-12-03 13:11:14 +08:00
    PS 或者 C1 ,批处理
    wuxiaomo
        15
    wuxiaomo  
    OP
       2015-12-03 13:16:29 +08:00
    @oOpaopaoOo PS 有按百分比吗? 好像只有大小吧 望赐教
    oOpaopaoOo
        16
    oOpaopaoOo  
       2015-12-03 13:22:14 +08:00
    @wuxiaomo 可以的,在图像大小里面,锁定宽高,按百分比缩放
    jacy
        17
    jacy  
       2015-12-03 13:24:34 +08:00
    EasyImageModifier.exe
    sennes
        18
    sennes  
       2015-12-03 13:25:59 +08:00 via iPhone
    我说美图秀秀批量会有人打我吗
    duteng612
        19
    duteng612  
       2015-12-03 13:36:13 +08:00
    imagemagick

    在这里可以看看简单用法: http://www.zhihu.com/question/36546814/answer/70687843
    wuxiaomo
        20
    wuxiaomo  
    OP
       2015-12-03 13:37:14 +08:00
    @Devin 多谢
    xnview 可以的,我转 png 图片 ,用默认的 lanczos 采样方法,发现倒出来是黑色背景,以为又要走 acdsee 的老路了,改成临近像素 就有 alpha 通道了~~~
    多谢~~
    duteng612
        21
    duteng612  
       2015-12-03 13:37:46 +08:00
    @SpicyCat win 上也有 imagemagick, 可以直接在 cmd 上运行
    wuxiaomo
        22
    wuxiaomo  
    OP
       2015-12-03 13:38:00 +08:00
    @sennes 这个没有 百分比 功能,我试过了
    wuxiaomo
        23
    wuxiaomo  
    OP
       2015-12-03 13:38:22 +08:00
    @jacy 没有单边百分比缩放功能
    wuxiaomo
        24
    wuxiaomo  
    OP
       2015-12-03 13:38:56 +08:00
    @duteng612 没找到单边百分比缩放功能
    ayukun
        25
    ayukun  
       2015-12-03 13:40:38 +08:00
    ps 一个批处理就搞定了
    wuxiaomo
        26
    wuxiaomo  
    OP
       2015-12-03 13:42:16 +08:00
    @ayukun 有百分比吗? PS 找了半圈 没找到 只能是 固定大小吧
    ayukun
        27
    ayukun  
       2015-12-03 13:49:25 +08:00
    @wuxiaomo 当然有了 图像大小里调整,默认是锁定宽高比的
    geeglo
        28
    geeglo  
       2015-12-03 13:51:25 +08:00


    这样满足你的需要么。
    @wuxiaomo
    SpicyCat
        29
    SpicyCat  
       2015-12-03 13:53:32 +08:00
    @wuxiaomo 那就要写脚本了, -resize 接收两种参数,百分比和固定长宽,你的这种要求,就需要先得到当前图片的长宽,然后把宽度乘以 20%,再 resize 。相对麻烦点。
    duteng612
        30
    duteng612  
       2015-12-03 13:55:29 +08:00
    @wuxiaomo 有,单边按照百分比缩放

    高度缩放 50%: convert baidu.png -resize x50% small.png

    请参考 geometry 格式: http://www.imagemagick.org/script/command-line-processing.php#geometry
    learnshare
        31
    learnshare  
       2015-12-03 13:56:12 +08:00
    @wuxiaomo 文件--批量转换 /重命名,使用高级选项
    duteng612
        32
    duteng612  
       2015-12-03 14:02:03 +08:00
    @wuxiaomo 我在知乎上插了一张图,你可以看下,实现你要的单边百分比缩放。
    http://www.zhihu.com/question/36546814/answer/70687843
    davidyin
        33
    davidyin  
       2015-12-03 14:49:35 +08:00
    Picasa 也可以啊。
    aec4d
        34
    aec4d  
       2015-12-03 16:39:16 +08:00
    https://github.com/Ficapy/single/blob/master/image_resize.py
    用 python 调用 imagemagick 写过一段脚本
    aec4d
        35
    aec4d  
       2015-12-03 16:45:09 +08:00
    哦 看错了 要求是修改图片尺寸大小不是文件大小 改一下就好了 我写的是使用二分法将图片文件大小转换到某一个靠近的数值
    wuxiaomo
        36
    wuxiaomo  
    OP
       2015-12-03 16:46:17 +08:00
    @geeglo 其实不行~~~
    bycheng
        37
    bycheng  
       2015-12-03 21:41:44 +08:00 via Android
    PS 可以等比例缩小图片的,在“图像”中打开“图像大小”,“像素”那栏下拉选择百分比,然后前面就可以输入比值了。批量操作可以参考这个→http://jingyan.baidu.com/article/14bd256e129a20bb6d2612a5.html?st=2&from=&ssid=&net_type=&bd_page_type=1&os=0&rst=
    wuxiaomo
        38
    wuxiaomo  
    OP
       2015-12-04 08:08:32 +08:00
    @bycheng 啊呀 多谢,原来躲在像素那里 真是走了好多弯路
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2975 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 37ms UTC 13:49 PVG 21:49 LAX 06:49 JFK 09:49
    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