• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Bildausgabe auf Monitor aus GD imagejpeg

cb1982

Mitglied
Hallo zusammen,

ich habe mal ein wenig rum gespielt und mir eine Klasse zur Bildbearbeitung erstellt. Primär ist das ein kleines Spielprojekt.

Es läuft auch soweit rund. Allerdings habe ich jetzt versucht, dass die Funktion resizeImage() das geänderte Bild direkt ausgibt, statt es zu speichern. Dafür habe ich der GD-Funktion imagejpeg() einfach laut Doku die Überflüssigen Parameter weg genommen. Die Bildschirmausgabe zeigt aber nur wirre Zeichen statt des Bildes. Was mag da wohl los sein?

Anhängt findet ihr einmal den Code der Klasse und darunter der Aufruf

Code:
<?php
class thumb {
	public function resizeImage($orgPath,$resizePercent,$newPath) {
		$resizeFactor = 100/$resizePercent;
		$destSize['width']=round($this->getSize($orgPath)[0]/$resizeFactor,0);
		$destSize['height']=round($this->getSize($orgPath)[1]/$resizeFactor,0);
		$orgSize['width']=$this->getSize($orgPath)[0];
		$orgSize['height']=$this->getSize($orgPath)[1];


		$orgImage = imagecreatefromjpeg($orgPath);
		$newImage = imagecreatetruecolor($destSize['width'],$destSize['height']);
		imagecopyresized($newImage,$orgImage,0,0,0,0,$destSize['width'],$destSize['height'],$orgSize['width'],$orgSize['height']);
		imagejpeg($newImage);		
	}	


	private function getSize($path) {
		$sizes = getimagesize($path);
		return($sizes);
	}
}
?>

Code:
<head>
<title>Testseite für Bildklasse</title>
</head>
<body>
<h1>Spielerei Bild in PHP</h1>


<?php
include('inc_class/class_pictures.php');


$bild1 = new thumb();
$bild1->resizeImage('001_001.jpg','50','');




?>
</body>
 
Code:
<head>
<title>Testseite für Bildklasse</title>
</head>
<body>
<h1>Spielerei Bild in PHP</h1>
<img src="image.php">
</body>
image.php
PHP:
<?php
header('Content-Type: image/jpeg');
include('inc_class/class_pictures.php');
$bild1 = new thumb();
$bild1->resizeImage('001_001.jpg','50','');
?>
 
Hi,

ok. Das funktioniert. Danke!
Kannst du mir vielleicht noch kurz erklären warum? :)

Das würde ja bedeuten, dass wenn ich die Klasse an vielen Stellen und überall benutzen will, ich die erforderlichen Parameter per $_GET an die image.php mitgebe?
Bei der Pfadangabe muss ich dann wahrscheinlich aufpassen den Pfad relativ zur image.php und nicht zur html Datei anzugeben, richtig?
 
Zurück
Oben