2013-12-18 97 views
1

我正在使用一个简单的图像上传php代码,但图像质量下降为100x100 50x50。我怎样才能提高图像质量?图像质量下降在php文件图像上传

我想在上传照片时使用高质量的照片。

if($extension=="jpg" || $extension=="jpeg") 
{ 
$uploadedfile = $_FILES['file']['tmp_name']; 
$src = imagecreatefromjpeg($uploadedfile); 

} 
else if($extension=="png") 
{ 
$uploadedfile = $_FILES['file']['tmp_name']; 

$src= imagecreatefrompng($uploadedfile); 
imagealphablending($src, false); 
imagesavealpha($src, true); 
imagealphablending($src, false); 
imagesavealpha($src, true); 
} 
else 
{ 
$src = imagecreatefromgif($uploadedfile); 
} 

echo $scr; 

list($width,$height)=getimagesize($uploadedfile); 

if($width>75) 
{ 

$newwidth=50; 
$newheight=($height/$width)*$newwidth; 
$tmp=imagecreatetruecolor($newwidth,$newheight); 


$newwidth1=100; 
$newheight1=($height/$width)*$newwidth1; 
$tmp1=imagecreatetruecolor($newwidth1,$newheight1); 

imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height); 

imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,$width,$height); 


$ext = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION); 

$mainfilename = $username.".".$ext; 


$filename = "pics/50/". $username.".".$ext; 

$filename1 = "pics/100/". $username.".".$ext; 

imagejpeg($tmp,$filename,50); 

imagejpeg($tmp1,$filename1,100); 

任何人都可以帮助我创建4大小的缩略图照片使用一张大照片,但质量好吗?

回答

0

imagejpeg documentation

bool imagejpeg (resource $image [, string $filename [, int $quality ]]) 

所以让你的图像最高质量的需要设置质量100

//0 = lowest, 100 = highest. ~75 = default 
imagejpeg($tmp1,$filename1,100);