【问题标题】:ImageMagick Montage With Exiftool output as -label使用 Exiftool 输出作为 -label 的 ImageMagick Montage
【发布时间】:2017-11-16 21:48:14
【问题描述】:

我正在使用 Image Magick 的 montage 命令创建联系表。我想包含特定的元数据作为联系表图像的-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 命令提取单个文件的“创建者”并将其通过管道传输到 montage 命令中,以便联系表上的相应图像为$filename_$creator。 (如果您不熟悉,-label %t_$creator 中的 %t 内置于 Image Magick 中,以提供文件名作为 -label

【问题讨论】:

  • 如果您想回答这个问题,您必须发布程序生成的特定输出。这些程序不是 PowerShell,你不能指望有人拥有它们。我假设 $Creator 是一个字符串数组,因此您可能必须执行某种类型的 foreach 循环。
  • 据我所知,没有 Creator 标签。我在sno.phy.queensu.ca/~phil/exiftool/TagNames/EXIF.html 没有看到它,并且ImageMagick 在imagemagick.org/script/escape.php 没有对其EXIF 标签的创建者访问权限。也许您可以使用 exiftool 运行 exif 数据的完整列表并将其显示在此处以显示 Creator 标签存在。也许它是一个自定义标签?
  • 很抱歉没有提供足够的信息,正如@StarGeek 提到的,-Creator 是一个 XMP 元数据字段。我们的文件目前在此字段中有一个用户名。我正在使用 exiftool 来提取该信息。

标签: powershell imagemagick exiftool


【解决方案1】:

鉴于我上面所说,如果你想要一些 ImageMagick 支持的 EXIF 数据,那么你可以这样做:

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

所以一切似乎都表明 EXIF 数据中缺少 Creator 字段。

【讨论】:

  • Creator 是 XMP 元数据字段。 EXIF 等效项为Artist
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多