Преобразовать все изображения в jpg

Мне нужно преобразовать все изображения в папке и подпапках в jpg. Мне нужно объединить этот процесс с командным файлом. Мне нужны инструменты с графическим интерфейсом. Мне нужен скрипт.

Я попытался использовать mogrify.exe из ImageMagick, есть также функция convert.exe, но, кстати, оба они могут конвертировать изображения.

Я написал следующий скрипт:

$rootdir = "E:\Apps\скрипты\temp1\graphics"
$files = dir -r -i *.png $rootdir
foreach ($file in $files) {.\mogrify.exe -format png *jpg $file}

Но это не работает, когда я пытаюсь запустить его, у меня возникают ошибки:

mogrify.exe: unable to open file `*jpg' @ error/png.c/ReadPNGImage/3633.
mogrify.exe: Improper image header `E:\Apps\скрипты\temp1\graphics\telluric\day\
Athens\2011-07-03-17.png' @ error/png.c/ReadPNGImage/3641.
mogrify.exe: unable to open image `*jpg': Invalid argument @ error/blob.c/OpenBl
ob/2588.

Также я нашел следующий код:

[Reflection.Assembly]::LoadWithPartialName('System.Drawing')

$img=[Drawing.Image]::FromFile("$(cd)\Max.jpg")
$img.Save("$(cd)\max.gif", 'Gif')
$img.Dispose()

Как я могу заставить его работать с деревом каталогов и конвертировать png и tiff в jpg ?

6
задан Keith Thompson 10 January 2012 в 20:43
поделиться