mixiフォトの画像をリネームしてImageMagickでサムネ作る

Twitterに書くには長すぎたんだけどどっかにまともに書くほどでもないチラシの裏だったのでこっちに書く。


概要

自分のバンドのWebサイトに写真を載せることになって、その写真がmixiフォトのアルバムで渡された。
これをダウンロードしてからリネームしてサムネを作ったんだけど、毎回手順を忘れるからメモしようと思った。

使ったもの

画像
########_**********_%%large.jpg みたいな書式(いずれも数字)のファイル名
Perl
ファイル名をsubstrとかで適当に抜き出してsystemするだけ
ImageMagick
画像変換に大活躍

ほしい完成品

メイン画像
(ひづけ)_**********_large.jpg のファイル名規則になってればよい
サムネ画像
(ひづけ)_**********_thumb.jpg のファイル名規則。アスペクト保持して長辺150pxで、短辺側は黒背景

リネームする

フォルダに画像をまとめて、以下のPerlスクリプトを実行。
foreach(@ARGV)
{
my $wk = $_;
my $hoge = substr($wk,index($wk,'_****')+1);
my $hoge2 = 'ひづけ_'.substr($hoge,0,index($hoge,'_')) . '_large.jpg';
system "mv $wk $hoge2";
}
書き出してしまうとなんてことないスクリプトだけど、これでファイル名が要求通りになる。

リサイズする

同じようにしてスクリプトを実行する。
foreach(@ARGV)
{
my $wk = $_;
my $hoge = substr($_,index($_,'ひづけ'));
my $hoge = substr($hoge,0,index($hoge,'_large'));
system 'convert '.$wk.' -resize 150x150 -gravity center -background black -extent 150x150 '.$hoge."_thumb.jpg"."\n";
}
こうすると、同じフォルダに_thumb.jpgが出来る。できてしまえばそれだけのお話w


Back to Top

Sitemaster: じゅりあす