imagemagick 嵌套重力居中

imagemagick nested gravity centering

我正在尝试用重力合成两个图像,然后将它们放置在一个更大的图像中的几何图形中。

当我尝试时

magick  -size 1045x837 xc:blue   \( -size 345x437 xc:red \( -size 275x417 xc:white -resize 345x437 -gravity center \) -composite \) -geometry +26+53 -composite test-y.png

我明白了

当我这样做时

magick  -size 1045x837 xc:blue   \( -size 345x437 xc:red \( -size 275x417 xc:white -resize 345x437  \) -composite  \) -geometry +26+53 -composite test-x.png

我明白了

我认为这涉及 clone 和相关的 ,但我找不到组合。

我需要做什么,才能让白色居中在红色中,并在几何上位于左上角?

不清楚您想要什么,但我认为您违反了 -gravity 是一个 “设置” 的事实。因此,它保持设置直到更改,所以你可能想要这个,我在最终合成之前将重力重置为 NorthWest

magick  -size 1045x837 xc:blue   \( -size 345x437 xc:red \( -size 275x417 xc:white -resize 345x437 -gravity center \) -composite \) -gravity northwest -geometry +26+53 -composite  result.png 

您可能会发现-extent一种使用红色背景将白色填充到给定尺寸的更简单方法:

magick  -size 1045x837 xc:blue \( -size 275x417 xc:white -resize 345x437 -background red -gravity center -extent 345x437 \) -gravity northwest -geometry +26+53 -composite  result.png