webForumDet fria alternativet

GD2 + animerade gif-bilder?

PHP

0 svar · 335 visningar · startad av Guldstrand

Medlem sedan juli 20041 271 inlägg
Frågan#1

Klarar inte gd2 av att hantera animerade gif-bilder?

Jag använder följande kod för att skapa miniatyrer av jpg, gif och png-bilder, men animerade gif-bilder sparas endast som statiska (ej rörliga) bilder. :(

function thumb_pic($src, $dst, $maxW = 100, $maxH = 100) {
   $imagesize = getimagesize($src);
   $quality = 90;
   $srcX = 0;
   $srcY = 0;
   $orgW = $imagesize[0];
   $orgH = $imagesize[1];
 
   switch ($imagesize[2]) {
    case 1: // gif
      $src_im = imagecreatefromgif($src);
      break;
      
    case 2: // jpg
      $src_im = imagecreatefromjpeg($src);
      break;
      
    case 3: // png
      $src_im = imagecreatefrompng($src);
      break;
      
    default:
       trigger_error("Okänd bild-typ", E_USER_ERROR);
      break;
   }
   
   if ($orgW > $maxW) {
      $dstW = $maxW;
      $dstH = round($orgH * $dstW / $orgW);
   } else {
      $dstW = $orgW;
      $dstH = $orgH;
   }
   
   if ($dstH > $maxH) {
      $dstH = $maxH;
      $dstW = round($orgW * $dstH / $orgH);
   }
   
   $dst_im = imagecreatetruecolor($dstW, $dstH);
   imagecopyresampled($dst_im, $src_im, 0, 0, 0, 0, $dstW, $dstH, $orgW, $orgH);
   imagejpeg($dst_im, $dst, $quality);
   imagedestroy($dst_im);
   imagedestroy($src_im);
}

Finns det någon "fullösning" tillsvidare?

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)