图片压缩:使用ImageMagick和FFmpeg

70次阅读
一条评论

 

在数字时代,我们经常需要处理大量的图片文件,尤其是在需要优化存储空间或加快网页加载速度时。Linux 和 Mac 的命令行提供了强大的工具来压缩图片,而无需牺牲太多质量。本文将介绍两种常用的方法:使用 ImageMagick 和使用 FFmpeg。

方法一:使用 ImageMagick

在 Linux 上安装 ImageMagick

首先,你需要安装 ImageMagick。在终端输入以下命令:

bash
sudoapt-getinstall imagemagick

然后输入密码确认安装。

在 Mac 上安装 ImageMagick

对于 Mac 用户,可以使用 Homebrew 来安装 ImageMagick。如果你还没有安装 Homebrew,可以在终端输入以下命令来安装:

bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

然后,使用 Homebrew 安装 ImageMagick:

bash
brew install imagemagick

压缩单张图片

使用 ImageMagick 压缩图片非常简单。在终端输入以下命令:

bash
convert input.jpg -quality 80 output.jpg

这里,input.jpg是要压缩的原始图片的文件名,output.jpg是压缩后的图片的文件名,-quality 80表示压缩质量为 80%。你可以根据需要调整压缩质量。

压缩多张图片

如果要压缩多张图片,可以使用循环处理。在终端输入以下命令:

bash
forfilein *.jpg;do convert $file -quality 80 compressed_$file;done

这会将当前目录下所有的.jpg 格式图片进行压缩,并在文件名前添加 compressed_ 前缀。

方法二:使用 FFmpeg

在 Linux 上安装 FFmpeg

首先,你需要安装 FFmpeg。在终端输入以下命令:

bash
sudoapt-getinstall ffmpeg

然后输入密码确认安装。

在 Mac 上安装 FFmpeg

对于 Mac 用户,也可以使用 Homebrew 来安装 FFmpeg:

bash
brew install ffmpeg

压缩单张图片

使用 FFmpeg 压缩图片也很简单。在终端输入以下命令:

bash
ffmpeg -i input.jpg -q:v 2 output.jpg

这里,input.jpg是要压缩的原始图片的文件名,output.jpg是压缩后的图片的文件名,-q:v 2表示压缩质量为 2。你可以根据需要调整压缩质量。

压缩多张图片

如果要压缩多张图片,可以使用循环处理。在终端输入以下命令:

bash
forfilein *.jpg;do ffmpeg -i $file -q:v 2 compressed_$file;done

这会将当前目录下所有的.jpg 格式图片进行压缩,并在文件名前添加 compressed_ 前缀。

结语

通过使用 ImageMagick 和 FFmpeg,你可以在 Linux 和 Mac 的命令行下轻松地压缩图片,无论是单张图片还是批量处理。这两种方法都提供了灵活的压缩选项,让你可以根据具体需求调整压缩质量。无论你是开发者、设计师还是普通用户,掌握这些技能都将大大提高你的工作效率。

tips:如果总是遇到下载 fail 443 等错误,首先排查 git 代理问题。如果代理等正常,还有下载 443 的,可能是 dns 被污染,直接修改 host 文件,加入:
199.232.68.133 raw.githubusercontent.com
199.232.68.133 user-images.githubusercontent.com
199.232.68.133 avatars2.githubusercontent.com
199.232.68.133 avatars1.githubusercontent.com
然后再试!
正文完
 0
zhongli
版权声明:本站原创文章,由 zhongli 于2024-11-28发表,共计1603字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(一条评论)
2024-11-28 08:59:42 回复

使用ImageMagick 压缩 png 没有明显提升,可能需要去除颜色什么的,这个大家自己尝试吧,还有,最新版本的ImageMagick 命令行使用已经由 convert 改为 magick

 Macintosh  Chrome  未知