Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PHP + AnimowaneGIFy
frantic09
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 6
Dołączył: 7.03.2011
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Witam!

Mam na celu uploadowanie na serwer obrazków różnych wielkości w rozszerzeniach JPG,PNG oraz GIF... Właśnie... oraz GIF. Upload, resize i zapis na dysku działa w przypadku JPG i PNG... natomiast nie działa przy ruchomych GIFach...

kod funkcji w skrócie wygląda następująco
  1. private function createthumb($name,$filename,$new_w,$new_h)
  2. {
  3. $system=explode('.',$name);
  4. if (preg_match('/jpg|jpeg|JPG|JPEG/',$system[1])){
  5. $src_img=imagecreatefromjpeg($name);
  6. }
  7. if (preg_match('/png|PNG/',$system[1])){
  8. $src_img=imagecreatefrompng($name);
  9. }
  10. if (preg_match('/gif|GIF/',$system[1])){
  11. $src_img=imagecreatefromgif($name);
  12. }
  13. $old_x=imageSX($src_img);
  14. $old_y=imageSY($src_img);
  15. if ($old_x > $old_y) {
  16. $thumb_w=$new_w;
  17. $thumb_h=$old_y*($new_h/$old_x);
  18. }
  19. if ($old_x < $old_y) {
  20. $thumb_w=$old_x*($new_w/$old_y);
  21. $thumb_h=$new_h;
  22. }
  23. if ($old_x == $old_y) {
  24. $thumb_w=$new_w;
  25. $thumb_h=$new_h;
  26. }
  27. $dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
  28. imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_x,$old_y);
  29.  
  30. if (preg_match("/png|PNG/",$system[1]))
  31. {
  32. imagepng($dst_img,$filename);
  33. }
  34. elseif (preg_match("/gif|GIF/",$system[1]))
  35. {
  36. imagegif($dst_img,$filename);
  37. }
  38. else
  39. {
  40. imagejpeg($dst_img,$filename);
  41. }
  42. imagedestroy($dst_img);
  43. imagedestroy($src_img);
  44. }


Porblem, jak już wspomniałem, jest jedynie przy animowanych GIFach... zapisuje je jako "nieanimowane". Wydaje mi się, że problem może występować podczas zmiany rozmiarów GIFa, ale wolę spytać bardziej doświadczonych specjalistów.

Z góry za wszelkie pomysły, podpowiedzi albo zwykłe "tego się nie da zrobić" z góry bardzo dziękuję (IMG:style_emoticons/default/wink.gif)

PS: wiem, że to mój pierwszy post na tym forum, ale postaram się tu częściej wchodzić! (IMG:style_emoticons/default/php.gif)

Ten post edytował frantic09 7.03.2011, 11:04:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
ciekawskiii
post
Post #2





Grupa: Zarejestrowani
Postów: 467
Pomógł: 39
Dołączył: 7.11.2010
Skąd: Raz tu, raz tam

Ostrzeżenie: (30%)
XX---


Jakies dwa dni temu w przedszkolu byl taki temat i tam widzialem jakies rozwiazanie... Czy to byl tez Twoj temat?(IMG:style_emoticons/default/wink.gif) poszukaj.
p.s.Juz Ci znalazlem
Temat: przeskalowanie animowanego GIFa

Ten post edytował ciekawskiii 7.03.2011, 23:45:44
Go to the top of the page
+Quote Post
frantic09
post
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 6
Dołączył: 7.03.2011
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat(ciekawskiii @ 7.03.2011, 23:25:55 ) *
Jakies dwa dni temu w przedszkolu byl taki temat i tam widzialem jakies rozwiazanie... Czy to byl tez Twoj temat?(IMG:style_emoticons/default/wink.gif) poszukaj.
p.s.Juz Ci znalazlem
Temat: przeskalowanie animowanego GIFa


Hm... to nie był mój temat... dzięki za naprowadzenie, jednakże nie mam aż takiego dostępu do serwera, żeby to zainstalować, dlatego szukam innych sposobów na rozwiązanie tego problemu (IMG:style_emoticons/default/wink.gif)

Ten post edytował frantic09 9.03.2011, 14:40:52
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 10:38