【发布时间】:2018-07-14 11:13:34
【问题描述】:
我正在尝试构建一个 PowerShell 脚本,它将递归地从特定目录中提取 jpg,并通过 ImageMagick montage 运行它们以创建一个以文件名作为标签的联系表。截至目前,我的$filename 代码已损坏,因为它只为所有具有相同文件名的图像提供最后一个文件的名称和标签。
目前我有:
foreach ($dailyPhotoBay in $dailyServerPath)
{
$dailyImage = Get-ChildItem -Path $dailyPhotoBay -Include *.jpg -Recurse | Where-Object {$_.PSParentPath -like "*Output*"}
foreach ($image in $dailyImage)
{
$fileName = [System.IO.Path]::GetFileNameWithoutExtension($dailyImage)
}
echo $fileName
montage -verbose -label $fileName -pointsize 20 -background '#FFFFFF' -tile '5x40' -fill 'black' -define jpeg:size=600x780 -geometry 600x780+40+150 -quality 90 -auto-orient $dailyImage.FullName D:\Contact_Sheet\Sheet.jpg
}
使用此代码提取所有图像并且联系表看起来正确,除了所有图像都标记为相同 - 最后一个图像的名称。
一如既往,感谢您的帮助。
谢谢!
【问题讨论】:
-
您似乎混淆了
$image和$dailyImage,获取了错误的文件名或放置了错误的标签。 -
@TessellatingHeckler 我想你可能是对的,谢谢!
标签: powershell imagemagick imagemagick-montage