跳到主内容
文章阅读

使用ImageMagick来操作图像

2025/12/16513 次阅读6 分钟

ImageMagick 命令行工具中文说明

基本信息

  • 版本: ImageMagick 7.1.1-47 Q16-HDRI x86_64
  • 官网: https://imagemagick.org
  • 版权: (C) 1999 ImageMagick Studio LLC

它能干什么?

ImageMagick 是一个强大的图像处理工具,可以通过命令行执行各种图像操作,主要功能包括:

核心功能

  1. 图像格式转换 - 支持200+种图像格式互转(JPEG, PNG, GIF, TIFF, WebP等)
  2. 图像编辑 - 调整大小、裁剪、旋转、翻转、变形
  3. 图像增强 - 调整亮度/对比度/色彩、锐化、模糊、降噪
  4. 特效处理 - 添加边框、阴影、油画效果、素描效果、老照片效果
  5. 图像合成 - 多图拼接、添加水印、图层混合
  6. 批量处理 - 一次处理多个图像文件
  7. 动画制作 - 创建和编辑GIF动画
  8. 文字标注 - 在图像上添加文字、标签、注释

命令用法


magick [选项 | 图像...] 输出图像
magick tool [选项 | 图像...] 输出图像
magick [选项 | 图像...] -script 脚本文件 [脚本参数...]

主要参数分类

📐 图像设置参数

参数说明
-quality 值JPEG/PNG压缩质量(0-100)
-resize 尺寸调整图像大小
-density 几何设置图像分辨率(DPI)
-depth 值图像色深
-format "字符串"输出格式化的图像特征
-colorspace 类型更改颜色空间
-background 颜色背景颜色
-fill 颜色填充颜色
-font 名称使用指定字体渲染文字
-pointsize 值字体大小

🎨 图像操作符

基础操作

  • -resize 尺寸 - 调整大小
  • -crop 几何 - 裁剪矩形区域
  • -rotate 角度 - 旋转图像
  • -flip - 垂直翻转
  • -flop - 水平翻转
  • -trim - 自动裁剪边缘

色彩调整

  • -brightness-contrast 几何 - 调整亮度/对比度
  • -level 值 - 调整对比度级别
  • -normalize - 归一化颜色范围
  • -auto-level - 自动调整色阶
  • -colorize 值 - 着色
  • -grayscale 方法 - 转换为灰度

模糊与锐化

  • -blur 几何 - 模糊
  • -gaussian-blur 几何 - 高斯模糊
  • -sharpen 几何 - 锐化
  • -unsharp 几何 - 反锐化蒙版

特效滤镜

  • -charcoal 半径 - 炭笔画效果
  • -sketch 几何 - 素描效果
  • -paint 半径 - 油画效果
  • -sepia-tone 阈值 - 老照片效果
  • -polaroid 角度 - 宝丽来照片效果
  • -vignette 几何 - 暗角效果
  • -emboss 半径 - 浮雕效果
  • -edge 半径 - 边缘检测

变形效果

  • -swirl 角度 - 漩涡效果
  • -wave 几何 - 波浪效果
  • -implode 数量 - 内爆效果
  • -distort 方法 参数 - 各种变形

降噪与增强

  • -despeckle - 去斑点
  • -enhance - 增强
  • -median 几何 - 中值滤波
  • -noise 几何 - 添加/减少噪点

🖼️ 图像序列操作

  • -append - 垂直拼接图像
  • +append - 水平拼接图像
  • -composite - 图像合成
  • -mosaic - 创建马赛克
  • -layers 方法 - 图层操作
  • -coalesce - 合并图像序列
  • -flatten - 展平图像层

📝 文字与标注

  • -annotate 几何 文字 - 添加文字标注
  • -draw 字符串 - 绘制图形元素
  • -caption 字符串 - 添加标题
  • -label 字符串 - 添加标签

实用示例

1. 格式转换


# PNG转JPEG
magick input.png output.jpg

# 批量转换
magick *.png -set filename:name '%t' '%[filename:name].jpg'

2. 调整大小


# 按像素调整
magick input.jpg -resize 800x600 output.jpg

# 按百分比调整
magick input.jpg -resize 50% output.jpg

# 保持宽高比,最大宽度800
magick input.jpg -resize 800x output.jpg

3. 压缩图像


# 设置JPEG质量为80
magick input.jpg -quality 80 output.jpg

4. 裁剪与旋转


# 裁剪400x300区域,从(100,100)开始
magick input.jpg -crop 400x300+100+100 output.jpg

# 旋转90度
magick input.jpg -rotate 90 output.jpg

5. 添加水印


magick input.jpg -gravity southeast -pointsize 30 \
  -fill white -annotate +10+10 '©2025' output.jpg

6. 批量处理


# 批量调整大小并添加边框
magick *.jpg -resize 800x600 -border 5x5 -bordercolor black \
  -set filename:name '%t' 'processed/%[filename:name].jpg'

7. 创建缩略图


magick input.jpg -thumbnail 200x200 thumbnail.jpg

8. 图像拼接


# 水平拼接
magick image1.jpg image2.jpg +append output.jpg

# 垂直拼接
magick image1.jpg image2.jpg -append output.jpg

9. 添加特效


# 老照片效果
magick input.jpg -sepia-tone 80% output.jpg

# 油画效果
magick input.jpg -paint 5 output.jpg

# 素描效果
magick input.jpg -sketch 0x20+120 output.jpg

10. 自动优化


# 自动调整方向和色阶
magick input.jpg -auto-orient -auto-level output.jpg

适用场景

自动化图像处理 - 批量处理大量图片
网站图片优化 - 压缩、调整尺寸、生成缩略图
图像格式转换 - 在各种格式间转换
添加水印或标注 - 批量添加版权信息
创建GIF动画 - 从多张图片生成动画
图像特效处理 - 应用各种艺术效果
脚本和自动化工作流 - 集成到自动化脚本中


支持的格式

支持200+种图像格式,包括:

  • 常见格式: JPEG, PNG, GIF, TIFF, BMP, WebP
  • RAW格式: CR2, NEF, ARW等相机RAW格式
  • 矢量格式: SVG, PDF, EPS, PS
  • 专业格式: PSD, HEIC, JXL, OpenEXR

ImageMagick 是图像处理领域的“瑞士军刀“,特别适合需要批量处理、自动化或命令行操作的场景!

返回顶部