This is to follow up topic:
http://forum.coppermine-gallery.net/index.php?topic=9057.0That is now closed as related to 1.3.x, but still valid for 1.4.x
I propose the following function to be compatible with Linux and Windows:
// auto rotate using JHead
function auto_rotate_image($path_to_image) {
$real_path_to_image = realpath($path_to_image);
// Form the command to rotate the image.
if (eregi("win",$_ENV['OS'])) {
$cmd = "jhead.exe -autorot \"$real_path_to_image\"";
} else {
$cmd = "jhead -autorot ".$real_path_to_image;
}
exec ($cmd);
}
Then I do not like the idea to modify the original picture, so I propose to modify only the thumb and normal picture.
Fore that replace the
if (!file_exists($thumb)) {
if (!resize_image($image, $thumb, $CONFIG['thumb_width'], $CONFIG['thumb_method'], $CONFIG['thumb_use']))
return false;
}
if (max($imagesize[0], $imagesize[1]) > $CONFIG['picture_width'] && $CONFIG['make_intermediate'] && !file_exists($normal)) {
if (!resize_image($image, $normal, $CONFIG['picture_width'], $CONFIG['thumb_method'], $CONFIG['thumb_use']))
return false;
}
by
if (!file_exists($thumb)) {
if (!resize_image($image, $thumb, $CONFIG['thumb_width'], $CONFIG['thumb_method'], $CONFIG['thumb_use']))
return false;
auto_rotate_image($thumb);
}
if (max($imagesize[0], $imagesize[1]) > $CONFIG['picture_width'] && $CONFIG['make_intermediate'] && !file_exists($normal)) {
if (!resize_image($image, $normal, $CONFIG['picture_width'], $CONFIG['thumb_method'], $CONFIG['thumb_use']))
return false;
auto_rotate_image($normal);
}
Don't hesitate to give me your opinion.