我有一个相当复杂的crop-rotate-splice命令,这里简化为裁剪:
magick "$INPUT" -crop "$WIDTH"x"$HEIGHT" "$DESTINATION"
我想剪掉同一个
$INPUT
图像的许多部分,然后最后使用 convert -composite
将它们全部放在一起。
如何在不使用临时文件的情况下执行此操作?
我想我应该可以
convert \( "$INPUT" -crop ... \) \( "$INPUT" -crop ... \) \( "$INPUT" -crop ... \) \( "$INPUT" -crop ... \) -composite "$DESTINATION"
但是有没有一种方法可以避免每次裁剪都重复输入图像路径?
如果您想在 ImageMagick 命令中多次使用特定图像,您可以将其读入命令一次,在命令期间将其存储在 IM 内存寄存器“mpr:something”中,并在需要时调用它。
magick "$input" -write mpr:img1 +delete \( mpr:img1 ... \) \( mpr:img1 ... \) ...
将其命名为“mpr:anyname”。您可以根据需要写入和读取任意数量的内存存储图像。它们一直存在直到命令结束。