ImageMagick Montage с выводом Exiftool как -label

Я работаю над созданием контактных листов с помощью команды монтажа Image Magick. Я хотел бы включить определенные метаданные в качестве -label для изображений контрольного листа. Я извлекаю данные с помощью exiftool:

$creator = C:\exiftool.exe "-Creator" $image

и создав такой монтаж:

montage -verbose -label %t_$creator -pointsize 20 -background '#FFFFFF' -tile '5x40' -fill 'black' -define jpeg:size=600x780 -geometry 600x780+40+150 -quality 90  -auto-orient $dailyImages.FullName E:\Contact_Sheet.jpg

Однако я столкнулся с проблемой -label, содержащей создателя для ВСЕХ файлов в каталоге $dailyImages, а не создателя для каждого соответствующего файла.

Может ли кто-нибудь использовать команду exiftool, чтобы вытащить «создателя» одного файла и передать его в команду монтажа, чтобы соответствующее изображение на контактном листе было $filename_$creator. (Если вы не знакомы, %t в -label %t_$creator встроен в Image Magick, чтобы указать имя файла как -label)


person Garrett    schedule 16.11.2017    source источник
comment
Если вы хотите получить ответ на этот вопрос, вам нужно будет опубликовать определенный вывод, сгенерированный программами. Эти программы не являются PowerShell, и нельзя ожидать, что они у кого-то есть. Я предполагаю, что $ Creator - это массив строк, поэтому вам, вероятно, придется выполнить какой-то цикл foreach.   -  person Shawn Esterman    schedule 17.11.2017
comment
Насколько я знаю, тега Creator нет. Я не вижу его на sno.phy.queensu.ca/~ phil / exiftool / TagNames / EXIF.html и ImageMagick не имеет доступа к создателям для своих тегов EXIF ​​в imagemagick.org/script/escape.php. Возможно, вы сможете запустить полный список данных exif с помощью exiftool и представить его здесь, чтобы показать, что тег Creator существует. Может, это кастомный тег?   -  person fmw42    schedule 17.11.2017
comment
Извините за недостаточную информацию, -Creator, как упоминал @StarGeek, является полем метаданных XMP. В настоящее время в наших файлах есть имя пользователя в этом поле. Я использую exiftool для извлечения этой информации.   -  person Garrett    schedule 17.11.2017


Ответы (1)


Учитывая то, что я сказал выше, если вам нужны некоторые данные EXIF, которые поддерживает ImageMagick, вы можете сделать, например:

montage -label "%t %[EXIF:make]" input.jpg output.jpg

Я протестировал это, и он работает с моим изображением.

Это также работает для меня на ImageMagick 6.9.9.23 Q16 Mac OSX.

make=`convert input.jpg -format "%[EXIF:make]" info:`
montage -label "%t $make" input.jpg output.jpg

Это также работает для меня:

make=`exiftool -make input.jpg | sed 's/ *//g' | cut -d: -f2`
montage -label "%t $make" input.jpg output.jpg

Так что, похоже, все указывает на отсутствие поля Creator в данных EXIF.

person fmw42    schedule 17.11.2017
comment
Creator - это поле метаданных XMP. Эквивалент EXIF ​​будет Artist. - person StarGeek; 17.11.2017