求图片压缩的命令行工具推荐

PNG

  • optipng

sudo apt-get install optipng

#无损压缩

optipng desktop.png

将要压缩的图片放置在 workspace_in 文件夹下,然后执行


./batch_script.sh

无损压缩后的文件将会在 workspace_out 输出。

JPG


#指定压缩质量50%

find . -iname '*.jpg' -print0 | xargs -0 jpegoptim --strip-all --preserve --totals --all-progressive --max=50

有损压缩

  • convert

#缩小到原始大小的50%

find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +50k -exec convert -resize 50%x50% {} {} \;

#缩小到原始质量的50%

find ./ -regex '.*\(jpg\|JPG\|png\|jpeg\)' -size +500k -exec convert -quality 50 {} {} \;

原来的图片是什么格式的,有没有什么特殊的地方,要压缩成什么样,原格式还是其他格式,有损还是无损,高压缩率和低计算量要哪个。

别人我不知道…
如果不进一步明确,这个问题我肯定没法回答,只能先把这样的东西丢这:

NConvert是命令行版本的;
XnConvert是GUI版本的;

两个版本的工具都使用过,就对 支持的图片格式 这点来看,还是很实用的。

而且我还记得NConvert是可以添加到图片的右键菜单中,可以一键转换。

Download APNG from SourceForge.net
这是专门用来压缩 APNG 的工具

1 个赞

这里推荐一个 AdvPNG,也是命令行压缩 PNG 的工具,下载 AdvanceCOMP 以后从压缩包里面提取 advpng.exe 这个工具即可食用。


顺道一提 RIOT 在选择压缩 PNG 时会出现一个 External Optimizers 选项,可以选择调用 AdvPNG、PNGOUT、OptiPNG 这三个工具当中的任意一个,使用时须要把工具存放在 C:\Program Files\Riot\plugins 文件夹里面。完事之后,点击播放按钮就可以运行。


2

據我印象,convert好像就是imagemagick。

竟然没人提 pngquant ?

1 个赞

综合的话,肯定达不到最优。根据我的经验,最好是针对图片特点选择压缩方法和工具。比如png,如果是有限色彩,从24位转换为调色板,可以减少为四分之一,如果是超大真色彩图像,bpg能够在视觉差异很小的情况下转为原先的十分之一。当然,这个是极端情况。

这个针对性很强,但楼主说综合。。。