В разделе Alpha Remove в Руководстве по использованию ImageMagick предлагается использовать параметр -alpha remove
, например ::
.
convert in.png -background white -alpha remove out.png
... используя -background
цвет по вашему выбору.
Руководство гласит:
Эта операция проста и быстра и выполняет работу без необходимости использования дополнительной памяти или других побочных эффектов, которые могут быть связаны с альтернативными методами удаления прозрачности. Таким образом, это предпочтительный способ удаления прозрачности изображения.
Дополнительно добавляет примечание:
Обратите внимание, что пока прозрачность «удалена», альфа-канал останется включенным, но теперь он будет полностью непрозрачным. Если вам больше не нужен альфа-канал, вы можете отключить его с помощью Alpha Off.
Таким образом, если вам не нужен альфа-канал, вы можете уменьшить размер выходного изображения, добавив параметр -alpha off
, например:
convert in.png -background white -alpha remove -alpha off out.png
Дополнительные сведения о других, часто используемых методах удаления прозрачности описаны в разделе Удаление прозрачности из изображений .
В этот раздел включено упоминание важного предостережения относительно использования -flatten
в качестве метода удаления прозрачности:
Однако это не будет работать с «mogrify» или с последовательностью из нескольких изображений, в основном потому, что оператор «-flatten» действительно предназначен для объединения нескольких изображений в одно изображение.
Итак, если вы конвертируете несколько изображений одновременно, например, генерируя миниатюры из файла PDF, -flatten
не будет делать то, что вы хотите (он сведет все изображения для всех страниц в одно изображение). С другой стороны, при использовании техники -alpha remove
все равно будет получено несколько изображений, каждое из которых будет удалено с прозрачностью.