Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: resize w GD poprzez PHP
Forum PHP.pl > Forum > PHP
SIR JEDI
mam taki kod:

[php:1:f29a75eb57]<?php
function image_resize($source, $output, $width, $height){

if(!$quality=@func_get_arg(4)){$quality=100;}

$size=getimagesize("$source");
if($size[2]==1){$image1=ImageCreateFromGif("$source");}
elseif($size[2]==2){$image1=ImageCreateFromJpeg("$source");}
elseif($size[2]==3){$image1=ImageCreateFromPng("$source");}

if(isset($width) && $height==0){
if($width<$size[0]){
$a=$size[0]/$width;
$height=$size[1]/$a;
}else{
$width=$size[0];
$height=$size[1];
}
}

if($width==0 && isset($height)){
if($height<$size[1]){
$a=$size[1]/$height;
$width=$size[0]/$a;
}else{
$width=$size[0];
$height=$size[1];
}
}

$image2=imagecreate($width, $height);

imagecopyresized($image2, $image1, 0, 0, 0, 0, $width, $height, $size[0], $size[1]);

header ("Content-type: image/jpeg");

Imagejpeg($image2, "", $quality);

}

image_resize("obrazek.jpg", "obrazek1.jpg", "120", "", "75");
?>[/php:1:f29a75eb57]

Czy ktoś może mi powiedzieć dlaczego pomniejszona fotka wygląda okropnie? zwłaszcza przy dość sporych pomniejszeniach? np z 800 px na 120 px szerokosci...

może ktoś ma pomysł na jakąs funkcję blur'owania albo co...
proszę o pomoc...
DeyV
[manual:98c463c2dc]imagecreate [/manual:98c463c2dc] => [manual:98c463c2dc]imagecreatetruecolor[/manual:98c463c2dc]
SIR JEDI
próbowałem, ale różnicy nie ma prawie wogóle. Poza tym serwer na którym pracuje nie ma obsługi TrueColor - GD 1.6
kurtz
Hej
Cytat
próbowałem, ale różnicy nie ma prawie wogóle. Poza tym serwer na którym pracuje nie ma obsługi TrueColor - GD 1.6
w starszych GD nie masz co liczyc na pozadny efekt MSZ. Sugeruje namowic administratora na upgrade biblioteki do 2.x

Pozdrawiam
SIR JEDI
Ale na tym samym serwerze zdiała inny skrypt przy pomocy funkcji exec() , który ma całkiem niezłe osiągi w tej dziedzinie. Ja tylko chciał full w kodzie php bez linuxowych komend...
kurtz
Hej
Cytat
Ale na tym samym serwerze zdiała inny skrypt przy pomocy funkcji exec() , który ma całkiem niezłe osiągi w tej dziedzinie. Ja tylko chciał full w kodzie php bez linuxowych komend...
To muisz sie zdecydowac - albo rybki (php i kiepska jakosc) albo akwarium (i uzywasz polecen systemowych).

Pozdrawiam
HaRy
lub namawiasz admina na update winksmiley.jpg
squid
pierwsza uwaga to taka ze raczej nie pwinienes uzywac f-cji imagecopyresized() a juz napewno jesli kiedykolwiek zajmowales sie grafika, stanowczo zalecam f-cje imagecopyresampled tez zmienia rozmiar ale robi to lepiej tak ze jakosc obrazu nie traci.
SIR JEDI
Ok, imagecopyresampled() załatwiło sprawe. Muszę teraz załatwić update GD do wersji 2.0

Dzięki serdeczne!
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.