bastiii: Bild verkleinern und abspeichern. Schlechte Quali.

Beitrag lesen

Hey.

Ich habe ein Formular zum bilder hochladen.
Ein Skript soll es verkleinern und abspeichern.
Es klappt, aber es sieht beschissen aus.. völlig verpixelt und ungenau.

Was mache ich falsch?

if(ob_get_level()===0){ob_start();}  
		$PicPathOut="./userpics/".$_SESSION['auth_userid']."/profil/";  
		$bild=md5(uniqid(rand(),true));  
		// Bilddaten feststellen  
		$size=getimagesize($_FILES["newpic"]['tmp_name']);  
		$breite=$size[0];  
		$hoehe=$size[1];  
		$neueHoehe=intval($hoehe*170/$breite);  
		if($size[2]==2) {  
			// JPG  
			$altesBild=ImageCreateFromJPEG($_FILES["newpic"]['tmp_name']);  
			$neuesBild=ImageCreate(170,$neueHoehe);  
			ImageCopyResized($neuesBild,$altesBild,0,0,0,0,170,$neueHoehe,$breite,$hoehe);  
			ImageJPEG($neuesBild,$PicPathOut.md5(uniqid(rand(),true)).".jpg");  
		}else{  
			if($size[2]==1) {  
			// GIF  
			$altesBild=ImageCreateFromGIF($_FILES["newpic"]['tmp_name']);  
			$neuesBild=ImageCreate(170,$neueHoehe);  
			ImageCopyResized($neuesBild,$altesBild,0,0,0,0,170,$neueHoehe,$breite,$hoehe);  
			ImageGIF($neuesBild,$PicPathOut.md5(uniqid(rand(),true)).".gif");  
			}  
			if($size[2]==3) {  
			// PNG  
			$altesBild=ImageCreateFromPNG($_FILES["newpic"]['tmp_name']);  
			$neuesBild=ImageCreate(170,$neueHoehe);  
			ImageCopyResized($neuesBild,$altesBild,0,0,0,0,170,$neueHoehe,$breite,$hoehe);  
			ImagePNG($neuesBild,$PicPathOut.md5(uniqid(rand(),true)).".png");  
			}  
		}

mfg

basti