Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] getimagesize
Forum PHP.pl > Forum > Przedszkole
Taifun
witam, mam następującą klasę i nie wiem jak zastosować funkcję imagecopyresized . Cel modyfikacji poniższego kodu: zmniejszanie zdjęcia wejściowego i dopiero potem naklejanie watermarków itp. W skrócie: zmiana rozmiaru przed operacjami na tym pliku.
Zastosowałem w kilku miejscach funkcję do zmniejszania obrazków ale nie działa :/.
Proszę o pomoc.

  1. <?php
  2. $znaczek = "http://tvspace.pl/img/miniaturka.jpg";
  3. $pozycja = "tl"; // lewy górny róg
  4. $pozycja = "tr"; // prawy górny róg
  5. $pozycja = "bl"; // lewy dolny róg
  6. $pozycja = "br"; // prawy dolny róg
  7.  
  8. function miniaturka($plik,$pozycja,$nazwa,$link="")
  9. {
  10. global $znaczek;
  11. $newwidth = "100";
  12. $newheight = "100";
  13. $thumb = imagecreatetruecolor($newwidth, $newheight);
  14.  
  15. $image1 = imagecreatefrompng( $znaczek ); // importujemy plik gif ze znakiem
  16. $image2 = imagecreatefromjpeg( $plik ); // otwieramy plik jpg, na którym ma być naklejony znaczek
  17. $plik_w = imagesx( $image2 ); // szerokość pliku
  18. $plik_h = imagesy( $image2 ); // wysokość pliku
  19. $znaczek_w = imagesx( $image1 ); // szerokość znaczka
  20. $znaczek_h = imagesy( $image1 ); // wysokość znaczka
  21.  
  22. if( $pozycja == "tl" )
  23. {
  24. $od_x = 0;
  25. $od_y = 0;
  26. }
  27. if( $pozycja == "tr" )
  28. {
  29. $od_x = $plik_w - $znaczek_w;
  30. $od_y = 0;
  31. }
  32. if( $pozycja == "bl" )
  33. {
  34. $od_x = 0;
  35. $od_y = $plik_h - $znaczek_h;
  36. }
  37. if( $pozycja == "br" )
  38. {
  39. $od_x = $plik_w - $znaczek_w;
  40. $od_y = $plik_h - $znaczek_h;
  41. }
  42. // Resize
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49. imagecopy( $image2, $image1, $od_x, $od_y, 0, 0, $znaczek_w, $znaczek_h );
  50. imagecopyresized($thumb, $image1, 0, 0, 0, 0, $newwidth, $newheight, $plik_w, $plik_h);
  51. imagejpeg($image2,$link.'img/thumbs/'.$nazwa.'.jpg');
  52. imagedestroy( $image1 );
  53. imagedestroy( $image2 );
  54. }
  55.  
  56. ?>


wywołanie:
  1. <?php
  2. miniaturka($img,"br",$nazwaimg, "../");
  3. ?>
erix
Cytat
Zastosowałem w kilku miejscach funkcję do zmniejszania obrazków ale nie działa :/.

Nie działa, to znaczy?

Jeśli masz taką możliwość, operacje na obrazkach wykonuj przez ImageMagick.
Taifun
linia 51
DREEMus
Jak dobrze widzę "image1" to znaczek, a nie zdjęcie ...
  1. <?php
  2. imagecopyresized ( $thumb, $image1, 0, 0, 0, 0, $newwidth, $newheight, $plik_w, $plik_h );
  3. ?>

zamień na "image2"
  1. <?php
  2. imagecopyresized ( $thumb, $image2, 0, 0, 0, 0, $newwidth, $newheight, $plik_w, $plik_h );
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.