Witam,
napisałem funkcję, która skaluje mi obraz. Wgrywam na serwer zdjęcie o wys. 768 px i odpalam funkcję i skaluję ją do 600px wys. - jakość jest gorsza. Jakieś pomysły, widzicie jakieś bugi w tym skrypcie?
zakomentowana ImageCopyResized() = jest jeszcze gorzej
function resizeImg( $plik, $extension, $height )
{
$szerokosc = $rozmiar[0];
$wysokosc = $rozmiar[1];
$nowa_wysokosc = $height;
$nowa_szerokosc = $szerokosc * ( $nowa_wysokosc / $wysokosc );
switch( $extension )
{
case 'jpg':
$oryginal = imageCreateFromJpeg( $plik );
break;
case 'JPG':
$oryginal = imageCreateFromJpeg( $plik );
break;
case 'jpeg':
$oryginal = imageCreateFromJpeg( $plik );
break;
case 'JPEG':
$oryginal = imageCreateFromJpeg( $plik );
break;
case 'gif':
$oryginal = imageCreateFromGif( $plik );
break;
case 'GIF':
$oryginal = imageCreateFromGif( $plik );
break;
case 'png':
$oryginal = imageCreateFromPng( $plik );
break;
case 'PNG':
$oryginal = imageCreateFromPng( $plik );
break;
}
$obrazek = ImageCreateTrueColor( $nowa_szerokosc, $nowa_wysokosc );
//ImageCopyResized( $obrazek, $oryginal, 0, 0, 0, 0, $nowa_szerokosc, $nowa_wysokosc, $szerokosc, $wysokosc );
$image = imagecreatefromjpeg($plik);
imagecopyresampled( $obrazek, $image, 0, 0, 0, 0, $nowa_szerokosc, $nowa_wysokosc, $szerokosc, $wysokosc );
ImageJPEG( $obrazek, $plik );
}
Ten post edytował john_doe 28.05.2010, 15:14:37