Как переместить многослойное изображение с помощью ImageMagick?

Это вопрос ImageMagick. Я пытаюсь переместить все пиксели изображения, используя:

convert -page +X+Y old.png -background none new.png

only old.png содержит несколько слоев непрозрачной, прозрачной и полупрозрачной информации, и поэтому (здесь мое "следовательно" эмпирическое, я не очень понимаю феномен) ничего не движется. Если я все расправлю и попробую:

convert -page +X+Y old.png -background none -flatten new.png

затем непрозрачная часть перемещается, но прозрачная и полупрозрачная информация получает много. Я могу видеть это, применяя

convert new.png -alpha off new_alpha_off.png

и наблюдая только за непрозрачными пикселями в new_alpha_off.png.

Итак, вот мой вопрос: как переместить изображение со всеми его слоями, не теряя прозрачных или хотя бы полупрозрачных пикселей?

1 ответ

Выполнение этой команды

convert                      \
   img-with-transparency.png \
  -page +30+60               \
  -background none           \
  -flatten                   \
   output.png

работает отлично, как видно из этого примера:

IMG-с-transparency.png=>output.png

(Оба изображения по-прежнему имеют прозрачный фон).

Моя версия ImageMagick такая:

convert -version
   Version: ImageMagick 6.7.9-0 2012-09-09 Q16 http://www.imagemagick.org
   Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
   Features:  OpenCL HDRI  

Какая версия твоя?

Другие вопросы по тегам