Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2
  1. #1
    New to the CF scene
    Join Date
    Feb 2012
    Posts
    1
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Exclamation Gifs not workin after Upload

    After uploading gifs to my site, they no longer function. The gif plays the animation when I go to it from cpannel but not the website. I asume it has to do with images being resized by the code below. I have tried several thing to remove it from working on Gifs but it crashes site.

    Can someone point me in the right direction? I don't need you to write new code, just tell me were I should start. I was messin with the image this area.
    PHP Code:
    if(($info[2] == IMAGETYPE_GIF) || ($info[2] == IMAGETYPE_PNG)) 

    PHP Code:
    function do_resize_image($file$width 0$height 0$proportional false$output 'file')
    {
        if(
    $height <= && $width <= 0)
        {
          return 
    false;
        }
        
        
    $info getimagesize($file);
        
    $image '';

        
    $final_width 0;
        
    $final_height 0;
        list(
    $width_old$height_old) = $info;

        if(
    $proportional
        {
          if (
    $width == 0$factor $height/$height_old;
          elseif (
    $height == 0$factor $width/$width_old;
          else 
    $factor min $width $width_old$height $height_old);   
          
          
    $final_width round ($width_old $factor);
          
    $final_height round ($height_old $factor);
              
          if(
    $final_width $width_old && $final_height $height_old)
          {
                
    $final_width $width_old;
              
    $final_height $height_old;

          }
        }
        else 
        {
          
    $final_width = ( $width <= ) ? $width_old $width;
          
    $final_height = ( $height <= ) ? $height_old $height;
        }
        
        switch(
    $info[2]) 
        {
          case 
    IMAGETYPE_GIF:
            
    $image imagecreatefromgif($file);
          break;
          case 
    IMAGETYPE_JPEG:
            
    $image imagecreatefromjpeg($file);
          break;
          case 
    IMAGETYPE_PNG:
            
    $image imagecreatefrompng($file);
          break;
          default:
            return 
    false;
        }

        
    $image_resized imagecreatetruecolor$final_width$final_height );

        if((
    $info[2] == IMAGETYPE_GIF) || ($info[2] == IMAGETYPE_PNG))
        {
          
    $trnprt_indx imagecolortransparent($image);
        
          if(
    $trnprt_indx >= 0)
          {
            
    $trnprt_color    imagecolorsforindex($image$trnprt_indx);
            
    $trnprt_indx    imagecolorallocate($image_resized$trnprt_color['red'], $trnprt_color['green'], $trnprt_color['blue']);
            
    imagefill($image_resized00$trnprt_indx);
            
    imagecolortransparent($image_resized$trnprt_indx);    
          } 
          

          elseif(
    $info[2] == IMAGETYPE_PNG
          {
            
    imagealphablending($image_resizedfalse);
            
    $color imagecolorallocatealpha($image_resized000127);
            
    imagefill($image_resized00$color);
            
    imagesavealpha($image_resizedtrue);
          }
        }
        
    imagecopyresampled($image_resized$image0000$final_width$final_height$width_old$height_old);

        switch( 
    strtolower($output))
        {
          case 
    'browser':
            
    $mime image_type_to_mime_type($info[2]);
            
    header("Content-type: $mime");
            
    $output NULL;
          break;
          case 
    'file':
            
    $output $file;
          break;
          case 
    'return':
            return 
    $image_resized;
          break;
          default:
          break;
        }
        
        if(
    file_exists($output))
        {
            @
    unlink($output);
        }

        switch(
    $info[2])
        {
          case 
    IMAGETYPE_GIF:
            
    imagegif($image_resized$output);
          break;
          case 
    IMAGETYPE_JPEG:
            
    imagejpeg($image_resized$output100);
          break;
          case 
    IMAGETYPE_PNG:
            
    imagepng($image_resized$output);
          break;
          default:
            return 
    false;
        }
        return 
    true;


  • #2
    Master Coder
    Join Date
    Jun 2003
    Location
    Cottage Grove, Minnesota
    Posts
    9,468
    Thanks
    8
    Thanked 1,085 Times in 1,076 Posts
    Once you use GD, you've lost the animation. GD does not support animated gif's.

    I stand corrected ... there might be a method:
    http://www.phpclasses.org/package/31...IF-images.html

    I'm just not familiar with it.
    Last edited by mlseim; 02-27-2012 at 12:33 AM.


  •  

    Tags for this Thread

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •