2017-11-13 7 views
0

特定のディレクトリからjpgを再帰的に引き出し、Image Magick montageで実行するPowerShellスクリプトをビルドして、ファイル名をラベルとして使用したコンタクトシートを作成しようとしています。 。今のところ私の$filenameコードは最後のファイルの名前だけを提供し、すべての画像に同じファイル名を付けるので、コードは壊れています。PowerShellで画像とファイルの所有者をImage Magick 'Montage'にプル

現在、私が持っている:このコードで

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 
} 

すべての画像が引っ張られると、コンタクトシートは、すべての画像を除いて、正しく見える同じようにラベル付けされている - 非常に最後の画像の名前。

いつもどんな助けもありがとうございます。

ありがとうございます!

+0

を参照してくださいあなたは間違ったファイル名を取得または上で間違ったラベルを入れ、 '$のimage'と' $ dailyImage'を混合しているようです。 – TessellatingHeckler

+0

@TessellatingHeckler私はあなたが正しいかもしれないと思う、ありがとう! – Garrett

答えて

1

ImageMagickでは、%fを使用して、ファイル名に接尾辞(モンタージュ)または%tを付けてファイル名(接尾辞なし)を表示します。 ImageMagickはパスを削除する必要があります。したがって、パスの有無にかかわらず、異なるnames.suffixを持つファイルのリストを含む変数$ filenamesを作成します。

montage -label "%f" /Users/fred/desktop/logo.png montage1.png 

enter image description here

または接尾辞なしでファイル名だけを取得する

montage -label "%t" /Users/fred/desktop/logo.png montage2.png 

convert logo: /Users/fred/desktop/logo.png 

がfilename.suffxを取得するには:たとえば

あなたのモンタージュのためにそう

あなたは接尾辞を持つファイル名を表示したい場合は、次の操作を行います。

montage -verbose -label "%f" -pointsize 20 -background '#FFFFFF' -tile '5x40' -fill 'black' -define jpeg:size=600x780 -geometry 600x780+40+150 -quality 90 -auto-orient $dailyImage D:\Contact_Sheet\Sheet.jpg 


または接尾辞なしでファイル名をしたい場合は、次の操作を行います。

montage -verbose -label "%t" -pointsize 20 -background '#FFFFFF' -tile '5x40' -fill 'black' -define jpeg:size=600x780 -geometry 600x780+40+150 -quality 90 -auto-orient $dailyImage D:\Contact_Sheet\Sheet.jpg 


私はPowerShellを知らない。だから私はあなたのディレクトリからファイル名のリストを取得する方法を伝えることはできません。

http://www.imagemagick.org/script/escape.php http://www.imagemagick.org/Usage/montage/#label

+0

この明白な解決策をありがとう。なぜ私はこの単純な機能から逸脱したのか分かりません。 ありがとう! – Garrett

関連する問題