Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: funkcja graficzna ? "crop"
Forum PHP.pl > Forum > Przedszkole
umatik
chcialem zrobic miniaurke foty ale tak zeby jej nie znieksztalcic

zmnniejszyc wysokosc do zadanej wiekosci miniaturki, a potem wykadrowac do srodka, tak zeby finalny jpg byl kwadratem ...

w zasadzie to nie wiem jak zrobic to wykadrowanie....
mike
  1. <?php
  2.  
  3. error_reporting( E_ALL );
  4. ini_set( 'display_errors', 1 );
  5.  
  6. function resizeImage( $strImageFile, $intMaxSize )
  7. {
  8.  
  9. $resBaseImage = imagecreatefromjpeg( $strImageFile );
  10.  
  11. $intWidth = imagesx( $resBaseImage );
  12. $intHeight = imagesy( $resBaseImage );
  13.  
  14. $floRatio = $intWidth / $intHeight;
  15.  
  16. if ( $floRatio > 1 )
  17. {
  18. $intNewWidth = $intMaxSize;
  19. $intNewHeight = ( $intMaxSize / $floRatio );
  20.  
  21. $intMaxSquareSize = $intNewHeight;
  22. }
  23. else
  24. {
  25. $intNewWidth = ( $intMaxSize * $floRatio );
  26. $intNewHeight = $intMaxSize;
  27.  
  28. $intMaxSquareSize = $intNewWidth;
  29. }
  30.  
  31. $resTempImage = imagecreatetruecolor( $intNewWidth, $intNewHeight );
  32.  
  33. imagecopyresampled( $resTempImage, $resBaseImage, 0, 0, 0, 0, $intNewWidth, $intNewHeight, $intWidth, $intHeight );
  34.  
  35. $resFinalImage = imagecreatetruecolor( $intMaxSize, $intMaxSize );
  36.  
  37. imagecopyresampled( $resFinalImage, $resTempImage, 0, 0, 0, 0, $intMaxSize, $intMaxSize, $intMaxSquareSize, $intMaxSquareSize );
  38.  
  39. imagejpeg( $resFinalImage, '_' . $strImageFile );
  40.  
  41. imagedestroy( $resBaseImage );
  42. imagedestroy( $resTempImage );
  43. imagedestroy( $resFinalImage );
  44.  
  45. }
  46.  
  47. resizeImage( 'test.jpg', 200 );
  48.  
  49. ?>
umatik
spoko dziala tylko nie kadruje do srodka tylko od lewego rogu.... nie wiem za bardzo gdzie mam to zmienic...
pLnEOn
<div align="center"> </div> ?
umatik
co?
aleksander
http://forum.php.pl/index.php?showtopic=24837

szukac się nie chciało??smile.gif
umatik
ok dzieki
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.