Я пытаюсь составить два изображения с гравитацией, а затем поместить их в более крупное изображение в геометрии.
Когда я пытаюсь
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
Идея, что это параметр, а не другие свойства, была недостающим звеном! Кроме того, хотя
-extantработает лучше в этом мысленном представлении, я не думаю, что это работает в моем живом случае, когда я использую изображения, которые должны оставаться пропорциональными при их масштабировании.