Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]biblioteka GD i jakość skalowanych zdjęć
Forum PHP.pl > Forum > Przedszkole
dastp
korzystam z funkcji znalezionej w internecie do skalowania zdjęć za pomocą funkcji GD w php.

mój skrypt wygląda tak:
  1. function cropImage($nw, $nh, $source, $stype, $dest) {
  2. $size = getimagesize($source);
  3. $w = $size[0];
  4. $h = $size[1];
  5. switch($stype) {
  6. case 'gif':
  7. case 'GIF':
  8. $simg = imagecreatefromgif($source);
  9. break;
  10. case 'JPG':
  11. case 'jpg':
  12. $simg = imagecreatefromjpeg($source);
  13. break;
  14. case 'JPEG':
  15. case 'jpeg':
  16. $simg = imagecreatefromjpeg($source);
  17. break;
  18. case 'png':
  19. case 'PNG':
  20. $simg = imagecreatefrompng($source);
  21. break;
  22. }
  23. $dimg = imagecreatetruecolor($nw, $nh);
  24. $wm = $w/$nw;
  25. $hm = $h/$nh;
  26. $h_height = $nh/2;
  27. $w_height = $nw/2;
  28. if($w> $h) {
  29. $adjusted_width = $w / $hm;
  30. $half_width = $adjusted_width / 2;
  31. $int_width = $half_width - $w_height;
  32. imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
  33. } elseif(($w <$h) || ($w == $h)) {
  34. $adjusted_height = $h / $wm;
  35. $half_height = $adjusted_height / 2;
  36. $int_height = $half_height - $h_height;
  37. imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
  38. } else {
  39. imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
  40. }
  41. imagejpeg($dimg,$dest,100);
  42. }

używam tego skryptu do skalowania zdjęć do rozmiarów 330 x 500x. Przeważnie zdjęcia mają wymiary 1200 x 1500. Skalowane zdjęcia są marnej jakości. Jak można poprawić ich jakość?
Gość
w internecie nic nie moge znaleźć na ten temat ;/
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.