ImageMagick 是一个功能非常丰富且强大的图像处理工具,本文积攒一些平时用到的命令。
安装 ImageMagick
brew install imagemagick
将 HEIC 图片转为 JPG 格式
苹果手机拍照获得的图片是 HEIC 格式的,当传输到电脑里,当想在博客、文章中使用时,必须先转化为 jpg 或 png 格式。 将 HEIC 格式图片转化为其他格式,如 jpg 。
magick input.heic -quality 100% output.jpg
批量转化 HEIC 格式图片,将 HEIC 格式图片都转化为 jpg 格式。
magick mogrify -format jpg *.HEIC
裁剪图片中多余的内容
magick
命令可以操作图片,添加参数 -chop
可以裁剪图片,参数 -gravity
指定方向。
从图片左侧开始裁剪掉 500 像素/行。(每一张图片都有以像素为单位的长度和宽度)
magick input.png -gravity West -chop 500x0 output.png
-gravity South
从图片下面开始裁剪掉 500 像素/行
magick input.jpg -gravity South -chop 500x0 output.jpg
类似地,从右侧、上面分别裁剪
magick input.jpg -gravity East -chop 500x0 output.jpg
magick input.jpg -gravity North -chop x500 output.jpg
我的博客主页挂出的图片就是这样裁剪出来的。

原图

裁剪后的图
缩放图片以适应尺寸要求
将图片的长宽按照相同的比例缩小或放大。 比如原图的长为 200 像素,宽为 100 像素,那么执行如下命令后, 图片的长缩小为 100 像素,宽缩小为 50 像素。
magick input.jpg -resize 50% output.jpg

缩小后的图
转 PDF 文档为 GIF 动图
将 LaTeX 制作的幻灯片转化为 GIF 格式动图
magick -delay 250 -density 300x300 -geometry 960x720 beamer.pdf beamer.gif
- 参数
-delay
幻灯片每一页切换时的延时 - 参数
-density
幻灯片的清晰程度 - 参数
-geometry
幻灯片的长和宽
我在文章《R Markdown 制作 beamer 幻灯片(2022 版)》中大量使用了这招, 为的是让读者快速看到编译 LaTeX 代码后的文档效果。
转 PDF 图片为 PNG 图片
如果是一张 PDF 格式的矢量图形,将其转化为其它格式,如 PNG 格式,命令如下
magick -density 300x300 -geometry 960x720 input.pdf output.png
与转动态 GIF 图类似,仅仅去掉参数 -delay
。