Selbstgemachte Imagefunktion

maga147

Erfahrenes Mitglied
Hi,

ich hab mir mal vor einiger Zeit in mühe vollerarbeit eine Function gebastelt, die mir aus großen Bildern, kleinere, mit Wasserzeichen versehene Bildchen macht.....

Jetzt wollt ich euch mal bitten, das Script mal durchzulesen und evtl. auf Schwachstellen, bzw. Perfomancefresser mich hinzuweisen.

Die Function funktioniert... Ich wollte eben nur noch mal "Korrekturlesen" lassen :-)

Danke!

PHP:
function pic($imgo,$size,$water,$path,$fotograph,$date){
$sql = "SELECT * FROM gallery_fotograph WHERE id = ".$fotograph."";
$fotographer = mysql_fetch_array(mysql_query($sql));
	$watermark = imagecreatefromGIF('watermark1.gif');
	$watermark_width = imagesx($watermark);
	$watermark_height = imagesy($watermark);
	$imgs = getimagesize($imgo);
	$image = imagecreatetruecolor($watermark_width, $watermark_height);
	$image = imagecreatefromjpeg($imgo);
	$white = imagecolorallocate($image,255,255,255);
	$font = 2;
	$text = "copyright 2006 || Fotograf: ".$fotographer['name']." || ".date("d.m.Y", strtotime($date))."";
	$width = imagefontwidth($font) * strlen($text);

		$div_width = imagesx($image) / $size;
		$div_height = imagesy($image) / $size;
		if ($div_width >= $div_height) {
			$new_width = $size;
			$new_height = round(imagesy($image) / $div_width);
		} else {
			$new_height = $size;
			$new_width = round(imagesx($image) / $div_height);
		}
					
		$picture = imagecreatetruecolor($new_width,$new_height); 
		imagecopyresized($picture,$image,0,0,0,0,$new_width,$new_height,imagesx($image),imagesy($image));
		
		if($water == "1")
		{
			## Wasserzeichen ##
			#imagecopymerge($picture, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);
			imagedestroy($watermark);
			## Ende Wasserzeichen ## 
			
			## Autorenzeile ##
			$image_width = imagesx($picture);
			$image_height = imagesy($picture);
			ImageFilledRectangle($picture,0,$image_height-15 ,$image_width ,$image_height,'000000000'); 
			## Autorenzeile Text ##
			$ypos = $image_height - 15;
			$xpos = 0;
			imagestring($picture, $font, $xpos, $ypos, $text, $white);
			## Ende Autorenzeile ##
		}
		
imagejpeg($picture,$path,85);
imagedestroy($picture);
}
 
Zurück