有没有办法使用 ImageMagick 在图像周围绘制边框?

Is there a way to draw an border around an image using ImageMagick?

我在 windows 并且需要一种方法来批处理图像以在距图像 25 像素的图像周围添加边框并跟随边缘。请问有什么办法吗?我附上了一个例子来说明我的意思。

以下是在 ImageMagick 6 中的操作方法。

填充背景以使其透明。提取 alpha 通道。然后扩大它,然后提取边界。然后将其反转并将其与原始输入相乘。保存结果。

输入:

Unix 语法:

convert dragon.png \
\( -clone 0 -fill none -draw "matte 0,0 floodfill" \
-alpha extract -morphology dilate disk:10 \
-morphology edgein diamond:2 -negate \) \
-compose multiply -composite \
dragon_contour.png

Windows 语法:

convert dragon.png ^
( -clone 0 -fill none -draw "matte 0,0 floodfill" ^
-alpha extract -morphology dilate disk:10 ^
-morphology edgein diamond:2 -negate ) ^
-compose multiply -composite ^
dragon_contour.png

如果使用 ImageMagick 7,请将 convert 更改为 magick,将 matte 更改为 alpha