Как изменить размер .tif, сохранив свойства канала (прозрачность) - PullRequest
0 голосов
/ 30 января 2019

В настоящее время я запускаю эту команду на сервере CentOs Unix с ImageMagick версии 6.7.2-7.

convert Test.tif -channel All -separate -resize 50% -background none -alpha copy -combine Test10.tif

Она делает все, что мне нужно, но добавляет белый фон каждомуканалов, как показано здесь: тестовый файл до и после команды, как показано в Photoshop CS4

Я перепробовал множество различных настроек для альфа-фона и т. д., но не могу сохранить егопрозрачность на каналах RGB. Это тестовый файл, если вы хотите проверить его

Я не знаю, нужно ли мне, чтобы я выполнил эту команду и указал профиль - он настолько близок к правде - онможет быть что-то очень простое, но я не могу найти никого, кто упомянул бы эту конкретную проблему с .tif?

Заранее спасибо.

ОБНОВЛЕНО

Результат После первогопредложение от fmw42 - запустить на Windows 7 Professional Версия: ImageMagick 7.0.8-25 Q16 x64

1 Ответ

0 голосов
/ 30 января 2019

Мне кажется, это работает в Imagemagick 6.9.10.25 Q16 Mac OSX

convert -quiet \( test.tif[0] -channel alpha -negate +channel \) test.tif[1] -background none -layers merge -resize 50% test_result.tif


http://www.fmwconcepts.com/misc_tests/tif_proc/test_resize.tif

Проблема в том, что Imagemagick не поддерживает прозрачность фона в TIFфайлы настолько чисто, насколько это возможно.В Photoshop у вас есть один слой с прозрачностью фона.Но Imagemagick видит два слоя.Первый имеет прозрачность (но имеет неправильную полярность и должен быть инвертирован).Это полный размер.Но второй слой также содержит прозрачность и не является полным размером первого слоя.Таким образом, нужно отрицать первый слой, использовать -layers merge, чтобы объединить второй поверх первого с правильным смещением, а затем изменить его размер.Imagemagick ссылается на слои, начинающиеся с индекса 0, как в [0].

Синтаксис Windows немного отличается (удалите \ s):

convert -quiet ( test.tif[0] -channel alpha -negate +channel ) test.tif[1] -background none -layers merge -resize 50% test_result.tif


Если в файле .bat,вам нужно удвоить% до %%.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...