V3xX: Ausschnitt eines Bildes anzeigen

Beitrag lesen

Hallo Felix,

Sorry, natürlich verrate ich wie.

Ich habe zuerst die Sache mit dem span versucht, dies hat dann aber nicht so funktioniert wie ich das wollte, da die Ausschnitte sehr klein sind und die Bilder ca die Hälfte eines 19" Monitors bedecken.

Die anderen Sachen mit den Thumbnails habe ich irgendwie nicht auf die Reihe gebracht, also habe ich das Problem folgendermassen gelöst:

Die Maximale Breite, die die Bilder einnehmen dürfen ist 641px.
Also habe ich eine Funktion erstellt, die immer ein Random-Bild aus der gallery auswählt und anschliessend überprüft ob von den 641px noch Platz ist.
Wenn ja, wird die Breite wiederum dazugezählt und es wird das nächste Bild ausgesucht.
Hat ein Bild nicht mehr genug Platz, endet die Funktion.

Hier die Funktion:

  
function getPic($anz){  
        //Globale Variablen  
	global $pics;          //schlussendlich die Bilder welche klein dargestellt werden  
	global $all_files;     //alle Bilder im Array  
	global $actualpix;     //Die bereits eingenommene Breite  
	$ran = rand(0, $anz);  //Zahl ziehen  
	$maxpix = 641;  
	  
	if (count($pics) != 0){  
		if (in_array($ran, $pics)){  
			getPic($anz);  //Damit gleiches Bild nicht zweimal kommt  
		} else {  
			$tmp = getimagesize($main.$all_files[$ran]);  
			$h = 100/$tmp[1]*130; //Höhe in Prozent ausrechnen (neue Höhe 130px)  
			if ($actualpix + $tmp[0]/100*$h+5 <= $maxpix){  
				$pics[] = $ran;  
				$actualpix += $tmp[0]/100*$h+5; //Fünf wegen padding dazurechnen  
				getPic($anz);  
			}  
		}  
	} else {  
		$tmp = getimagesize($main.$all_files[$ran]);  
		$h = 100/$tmp[1]*130;  
		$actualpix = $tmp[0]/100*$h+5;  
		$pics[] = $ran;  
		getPic($anz);  
	}  
}