if(defined($cgi->param('zip'))) {
my $zip = $cgi->param('zip');
binmode $zip;
open(FILE, ">", $img_dir."imgs.zip") or die $!;
binmode FILE;
my $data;
while(read $zip, $data, 1024) {
print FILE $data;
}
close FILE;
my $cmd = "unzip ".$img_dir."imgs.zip -d ".$img_dir;
###### 0 ######
qx($cmd);
###### 1 ######
unlink $img_dir."imgs.zip";
###### 2 ######
foreach my $img (glob($img_dir."*")) {
next if $img =~ /^.{1,2}$/;
print $img."
";
&doShrinking($img);
}
}
sub getBaseName {
my $file = shift;
if($file =~ /^(.+)\/([^\/]+)\.(.{3})$/) {
return ($1,$2,$3);
}
}
sub doShrinking {
my $file = shift;
my ($dir, $base, $mime) = getBaseName($file);
my $thumbfile = $dir.$base."_thumb".$mime;
print $thumbfile."
";
my $src = new Image::Magick;
$src->Read($file);
my ($thumb,$x,$y) = Image::Magick::Thumbnail::create($src,450);
$thumb->Write($file);
($thumb,$x,$y) = Image::Magick::Thumbnail::create($src,50);
$thumb->Write($thumbfile);
}