Hallo, ich komme gerade nicht weiter...
Ich habe ein script, welches jpg aus einem ordner ausliest, alphabetisch sortiert und in einer Tabelle ausgibt.
Ich wollte mir nicht die Arbeit machen, jedes Mal beim Aendern der Bilddateien neue Thumbnails per Grafikprogramm zu erstellen und habe deshalb die Funktion cropimage eingefuegt.
Mein Problem ist jetzt, dass ich keinen anderen Pfad zum Abspeichern der Thumbs hinbekomme...Im Moment werden die Bilder einfach ersetzt, leider brauch ich die jpg-originale aber noch fuer die Lightbox...
Die betreffene Zeile ist: cropImage(225, 165, $wert, 'jpg', $wert);
$wert gibt den kompletten Pfad des einzelnen gerade bearbeiteten jpg an...theoretisch hab ich mit $bilder auch nur den namen ohne pfad, aber egal was ich probiere, ich schaffe es einfach nicht einen anderen Pfad als Ziel anzugeben...
Ich habe ein script, welches jpg aus einem ordner ausliest, alphabetisch sortiert und in einer Tabelle ausgibt.
Ich wollte mir nicht die Arbeit machen, jedes Mal beim Aendern der Bilddateien neue Thumbnails per Grafikprogramm zu erstellen und habe deshalb die Funktion cropimage eingefuegt.
Mein Problem ist jetzt, dass ich keinen anderen Pfad zum Abspeichern der Thumbs hinbekomme...Im Moment werden die Bilder einfach ersetzt, leider brauch ich die jpg-originale aber noch fuer die Lightbox...
Die betreffene Zeile ist: cropImage(225, 165, $wert, 'jpg', $wert);
$wert gibt den kompletten Pfad des einzelnen gerade bearbeiteten jpg an...theoretisch hab ich mit $bilder auch nur den namen ohne pfad, aber egal was ich probiere, ich schaffe es einfach nicht einen anderen Pfad als Ziel anzugeben...
PHP:
<?php
function cropImage($nw, $nh, $source, $stype, $dest) {
$size = getimagesize($source);
$w = $size[0];
$h = $size[1];
switch($stype) {
case 'gif':
$simg = imagecreatefromgif($source);
break;
case 'jpg':
$simg = imagecreatefromjpeg($source);
break;
case 'png':
$simg = imagecreatefrompng($source);
break;
}
$dimg = imagecreatetruecolor($nw, $nh);
$wm = $w/$nw;
$hm = $h/$nh;
$h_height = $nh/2;
$w_height = $nw/2;
if($w> $h) {
$adjusted_width = $w / $hm;
$half_width = $adjusted_width / 2;
$int_width = $half_width - $w_height;
imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
} elseif(($w <$h) || ($w == $h)) {
$adjusted_height = $h / $wm;
$half_height = $adjusted_height / 2;
$int_height = $half_height - $h_height;
imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
} else {
imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
}
imagejpeg($dimg,$dest,100);
}
echo '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
$verzeichnis = "../images/content/fantasy/"; // Pfad zum Verzeichnis
$handle = openDir($verzeichnis); // Verzeichnis öffnen
$j = 0;
while ($datei = readDir($handle)) { // Verzeichnis auslesen
if ($datei != "." && $datei != ".." && !is_dir($datei)) { // Verzeichnisse filtern
if (strstr($datei, ".gif") || strstr($datei, ".png") || strstr($datei, ".jpg")) { // Bilder filtern
$verzeichnis_datei[$j] = $verzeichnis . $datei; // Pfad zur aktuellen Datei
$j++;
}
}
}
asort($verzeichnis_datei);
reset($verzeichnis_datei);
foreach($verzeichnis_datei as $wert) {
// Bild anzeigen
$info = getImageSize($wert);
$bilder = basename($wert, ".jpg");
echo '<tr valign="top">';
echo '<td width="160" height="130">';
echo '<a href="../images/content/fantasy';
echo '/'.$bilder.'.jpg" rel="lightbox">';
cropImage(225, 165, $wert, 'jpg', $wert);
echo "<img src=\"$wert\" width=\"$info[0]\" height=\"$info[1]\"> \n";
echo '</a>';
echo '</td>';
echo '<td>';
echo '<h3>';
echo "$bilder";
echo '</h3>';
echo '</td>';
echo '</tr>';
}
echo '</table>';
closeDir($handle); // Verzeichnis schließen
?>