Seit November ist igal2 jetzt der offizielle Name des igal-Forks. Was ja auch kein Wunder ist, wenn man bedenkt, dass das Orginal vom eigentlichen Entwickler schon seit 2003 nicht mehr gewartet wird.
Igal ist trotz aller hippen Picture-Sharing Seite, wie Flickr und Co. trotzdem noch mein favorisiertes Programm zum Erstellen von Bildergalerien. Und mit ein bisschen Perl, ImageMagick und dem Exiftool kann man die Bilder auch gleich richtig drehen bevor man eine Galerie erstellt.
#!/usr/bin/perl -w
# needed programms; igal, imagemagick, exiftool
# max length and hight
$geometry = "640x640";
$imagesuffix = "*.jpg";
system("mkdir igal");
foreach my $filename (glob($imagesuffix)){
print $filename;
# get rotation from EXIF
$rot = qx(exiftool $filename | grep Rotation);
$orient = qx(exiftool $filename | grep Orientation);
if( $rot =~ /: 0/ ) {
&rotate($filename, 0);
} elsif( $rot =~ /: 90/ ) {
&rotate($filename, 90);
} elsif( $rot =~ /: 180/ ) {
&rotate($filename, 180);
} elsif( $rot =~ /: 270/ ) {
&rotate($filename, 270);
}
elsif( $orient =~/: Horizontal \(normal\)/) {
&rotate($filename, 0);
} elsif( $orient =~/: Rotate 90 CW/) {
&rotate($filename, 90);
} elsif( $orient =~/: Rotate 180 CW/) {
&rotate($filename, 180);
} elsif( $orient =~/: Rotate 270 CW/) {
&rotate($filename, 270);
}
else {
print(" WARNING - there are unprocessed photos!\n");
}
}
print("Creating gallery in ./igal\n\n");
system("igal -r -d ./igal");
print("\nGallery is ready in ./igal\n");
sub rotate {
$file = $_[0];
print(" is rotated by $_[1] degree\n");
print(" -> resizing to $geometry, rotating $_[1]\n");
print(" -> copy to ./igal/$file\n");
system("convert -resize $geometry -rotate $_[1] $file ./igal/$file");
print(" -> done!\n");
}