no full size only normal (intermediate) no full size only normal (intermediate)
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

no full size only normal (intermediate)

Started by diogo86, May 17, 2004, 12:12:41 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

diogo86

hi dudes,

i'd like to disable the full size feature and staying only with the intermediate size which i will setup a maximum width.

has anyone already done something like this?

i wan't it to have something like the actually fotologs. no matter how big you upload you picture it always gets the maximum size (if bigger than it).

example 1:
i have a 2048 x 1600 photo.
the gallery maximum width is 640 then i get a error.
so i must resize the picture myself and send it again.

example 2:
2048 width photo.
intermadiate picutre enabled with 640 maximum width.
i get a thumb, the normal size and the real one.

my desire:
no matter the size of the photo (pixels)
upload it and if it is bigger than 640x480 resizes it proporsionally.
generate the thumb.

got it?

thanks!

diogo86

not tested yet but i guess it has solved my problem:

http://forum.coppermine-gallery.net/index.php?topic=464.0

just a improvement:


if (eregi ("\.jpe?g$", $uploaded_pic)) {
       $imgOld = imagecreatefromjpeg($uploaded_pic);
       $width = imagesx($imgOld);
       $height = imagesy($imgOld);

$wmax = 640; //defined here because i'm not sure where it is
$hmax = 480;
        $quality = 80;

       if ($width > $wmax) {
               $height = ($wmax/$width)*$height;
               $width = $wmax;
       }elseif( $height > $hmax) {
$width = ($hmax/$height)*$width;
$height = $hmax;
}

       $imgNew = ImageCreateTrueColor($width,$height);    //requires GD 2.0
       ImageCopyResampled($imgNew,$imgOld,0,0,0,0,$width,$height,imagesx($imgOld),imagesy($imgOld));    //requires GD 2.0
       ImageJpeg($imgNew,$uploaded_pic,$quality);
       Imagedestroy($imgNew);
}


on line 261 in db_input.php (dont know if it has changed since last update)

diogo86

if someone thinks to use this feature, here is the correct code:

if (eregi ("\.jpe?g$", $uploaded_pic)) {
       $imgOld = imagecreatefromjpeg($uploaded_pic);
       $width = imagesx($imgOld);
       $height = imagesy($imgOld);
$wmax = 640;
$hmax = 480;
$quality = 80;

       if ($width > $wmax or $height > $hmax) {
if( $width > $height ){
               $height = ($wmax/$width)*$height;
               $width = $wmax;
}else{
$width = ($hmax/$height)*$width;
$height = $hmax;
}
}

       $imgNew = ImageCreateTrueColor($width,$height);    //requires GD 2.0
       ImageCopyResampled($imgNew,$imgOld,0,0,0,0,$width,$height,imagesx($imgOld),imagesy($imgOld));    //requires GD 2.0
       ImageJpeg($imgNew,$uploaded_pic,$quality);
       Imagedestroy($imgNew);
}