2013-03-09 6 views
15

私はさまざまなタイプ(png、jpg、jpeg、bmp、pdf)の画像がたくさんあるフォルダを持っています。 imagemagickを使って(例えば)pngに変換します。与えられたフォルダのすべてのファイルを異なるファイルタイプに変換する方法

これを実行できるコマンドは1つありますか?そうでない場合は、代わりに何をすべきですか?

ありがとうございました。

+0

かを、あなたはこれにPythonの外観を使用している場合:http://stackoverflow.com/questions/2900035/changing-file-extension-in-python –

答えて

22

mogrifyコマンド試してみてください。

mogrify -format png *.* 

をしかし、注意してください。 -formatオプションがない場合、mogrifyは元のイメージを上書きします。 documentationを必ず読んでください。

+0

ありがとうございます。 mogrify.exe:モジュールファイル 'C:¥Program Files(x86)¥ImageMagick-6.8を開けません。次のエラーメッセージが表示されます: C:\ Users \ Tal \ s> mogrify -format png *。* 3-Q16 \ modules \ coders \ IM_MOD_RL_INI_.dll ':このようなファイルまたはディレクトリはありません@警告/ mo dule.c/GetMagickModulePath/683。 mogrify.exe:この画像フォーマット 'desktop.ini 'のデコードデデデートはありません@ error/cons titute.c/ReadImage/550。 (これは簡単に解決できますか?) –

+3

これは、 'mogrify'が画像ファイルではないファイル' desktop.ini'を変換しようとするからです。イメージファイルは 'mogrify'に渡すだけです。 'desktop.ini'を削除するか、' *。* 'をあなたのディレクトリ内の画像ファイルと一致するワイルドカードに変更してください。 'mogrify -format png * .jpg'、' mogrify -format png * .bmp'などのファイルフォーマットごとに数回コマンドを実行することもできます。 – nwellnhof

+0

素晴らしい - ありがとうございました! –

14

mogrifyが仕事をしているようですが、これはImageMagickのconvertで複数のコマンドでどのように行うことができるかをお見せしたいと思います。

私は、ファイルの種類の数は、おそらく非常に小さく、あなたがより良いあなたのニーズに合わせて調整することができますので、複数のコマンドは、優れていると思います

このコマンド:

for file in *.xbm; do convert $file "`basename $file .xbm`.png"; done 

はすべて.xbmファイルを変換します.pngに、xbmファイルには触れないでください。

その後、あなたはすべてを移動することができ、ファイルを "変換":

mkdir converted 
for file in *.xbm; do mv $file converted/; done 
1

あなたは、例えば、ImageMagickのパッケージからconvertコマンドを使用することができます

find . -maxdepth 1 \(-iname \*.png -o -iname \*.jpg -o -iname \*.jpeg -o -iname \*.bmp -o -iname \*.pdf \) -exec convert -verbose "{}" "DEST_DIR/{}.png" \;

それとも、同じディレクトリ内のすべてのファイルを持っている場合は、以下の簡単な方法試してください。

convert '*.*' converted_%04d.png 

類似:How can I scale all images in a folder to the same width?

関連する問題