I
图像处理免费开源更新 2026/10/24
ImageMagick
命令行的图像处理工具,用来批量缩放、裁剪、加水印、转格式和拼联系表。适合不打开设计软件的重复图片处理。
适合什么
- 把几十上百张图片统一缩放到平台要求的尺寸。
- 批量裁剪、补边、转格式、压体积。
- 给图片加统一位置的水印或边框。
- 生成联系表,快速预览一批素材。
不适合什么
- 需要精细排版和设计感的封面,这类工作用模板加代码渲染更可控。
- 复杂的图层合成和视觉特效,图形界面工具更快。
- 在服务器上处理来路不明的文件,需要先做好隔离和资源限制。
常用命令
查看一批图片的尺寸:
magick identify -format "%f %wx%h\n" *.jpg
批量缩放并居中裁剪成固定尺寸:
magick mogrify -path out -resize "1080x1440^" -gravity center -extent 1080x1440 *.jpg
注意 mogrify 会覆盖文件,先用 -path out 输出到新目录,确认结果后再替换原图。
生成联系表:
magick montage -label "%f" *.jpg -tile 4x -geometry 240x320+8+8 contact.jpg
ImageMagick 7 使用 magick 作为主命令;旧版本里常见的 convert 仍然可用,但新脚本建议统一写 magick。
免费替代
- Sharp:Node 项目里做批量图片处理更顺手,适合和现有脚本集成。
- FFmpeg:处理视频抽帧和视频封面时更合适。
- 系统自带预览工具:单张调整够用,不适合批量任务。
注意
- 处理用户上传的图片前,限制内存、磁盘和超时,避免一张超大图拖垮机器。
- 检查
policy.xml配置,禁用不必要的格式解码器,尤其是服务器环境。 - 批量覆盖前先在副本上跑一遍,确认尺寸和方向没有错。
- 手机照片可能带 EXIF 方向信息,批量处理时留意是否需要自动旋转。