Bildergalerie mit Wasserzeichen und Resize *aller* Bilder

Gesperrt
CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Bildergalerie mit Wasserzeichen und Resize *aller* Bilder

Beitrag von CyberDan » Do 4. Mär 2004, 15:37

Hallo,

ich habe das Modul der Bildergalerie von Large Green Wood in der überarbeiteten Version von chobbert nochmal erweitert (http://contenido.de/forum/viewtopic.php?t=3027).

Es wird jetzt in die großen Bilder ein Wasserzeichen eingebaut (nicht in die Thumbnails) und diese Bilder werden alle in eine best. Größe kleingerechnet (500 Pixel Breite oder Höhe, je nachdem, ob sie Hoch- oder Querformat sind).
Für das Wasserzeichen muß eine Datei namens "wasserzeichen.png" im Verzeichnis "/images" abgelegt werden.

Input:

Code: Alles auswählen

/*
   Bildergallery
   (c) by LGW, 2002
   License: GPL, http://www.gnu.org/licenses/gpl.html

   Fragen, Anregungen, Hilfegesuche: large@lilymarleen.de

Dokumentation:
1. How it works:
Die Bildergallery stellt alle Bilder in einem (frei wählbaren) Verzeichnis namentlich, oder 
wenn verfügbar als Thumbnails dar. Ein klick auf ein Thumbnail öffnet das Bild wahlweise in der Galleryseite 
statt der Thumbnailtabelle, oder in einer eigenen Inhaltsseite (kann wie interner Link ausgewählt werden).

Ist auf dem Webserver die ImageMagick-Software vorhanden, können die benöntigten Thumbnails
auch automatisch generiert werden; daför ist weiterhin ein Schreibzugriff für den Webserver auf
das Thumbnail-Verzeichnis nötig (alle+lesen/schreiben/wechseln, a+rwx).

2. Installation:
Zunächstmal wie gehabt das Modul anlegen. Der obere Teil in "INPUT", der untere in "OUTPUT".


Im Grunde genügt ein Template; sollen die Bilder "in gross" in einem anderen Template angezeigt werden, 
muss auch in diesem ein Imagelib-Modul eingetragen werden! Dort spielen die Parameter allerdings keine Rolle.

Einstellungen zur Imagelib:

Einzelbild-Seite: 
die Seite, in der die "grossen" Bilder dargestellt werden. 

Image-Directory: 
relative Verzeichnisangabe zu den Bildern (z.B. images_gallery1)

Thumbnail-Directory: 
relative Verzeichnisangabe zu den Thumbnails (z.B. images_gallery1_thbs) - unbedingt ein *anderes* Verzeichnis als das Image-Directory!
Soll Imagemagick benutzt werden, muss der Webserver hier Schreibrechte haben! (so wie z.B. im logs-Verzeichnis)

Image-Dateiendung:
Hier können alle Endungen eingetragen werden, die als Image betrachtet werden sollen. Trenner ist das Semikolon, also
.jpg;.gif;.png

Thumbnailtabelle in Spalten x Zeilen:
Anzahl der Thumbnails in der Übersicht. 

Thumbnail-Grösse:
Gibt zum einen die Grösse der Tabellenzellen an, zum anderen die Grösse auf die Imagemagick die Bilder umrechnet sofern
automatische Thumbnails verwendet werden

Pfad zum ImageMagick (optional):
Hier wird der Pfad zu den ImageMagick-Tools hinterlegt, im Regelfall /usr/bin oder /usr/X11/bin. Wird dies Feld freigelassen,
ist die automatische Generierung der Thumbnails ausgeschaltet!

*/

$selected = "CMS_VALUE[0]";

echo "<table cellspacing=\"0\" cellpadding=\"5\" border=\"0\">
        <tr valign=\"top\">
          <td>Einzelbild-Seite</td>
           <td>
            <select name=\"CMS_VAR[0]\">";


$sql = "SELECT * FROM $cfgTab_cat_tree AS TREE, $cfgTab_cat_side AS CATSIDE, $cfgTab_cat AS CAT, $cfgTab_cat_lang AS CATLANG, $cfgTab_side_lang AS SIDELANG WHERE TREE.idcat=CATSIDE.idcat AND CATSIDE.idcat=CATLANG.idcat AND CATLANG.idlang='$lang' AND CATSIDE.idside=SIDELANG.idside AND SIDELANG.idlang='$lang' AND CAT.idcat=TREE.idcat AND CAT.idclient='$client' ORDER BY TREE.idtree";
		$db->query($sql);

		        if ($selected != 0) {
		        	echo "<option value=0>diese Seite</option>";
		        } else {
		        	echo "<option value=0 selected>diese Seite</option>";
		        }
		        while ($db->next_record()) {
		        	$spaces = "";
		                for ($i=0; $i<$db->f("level"); $i++) {
		                	$spaces = $spaces . "    ";
		                }
		                if ( $db->f("idcatside") != $selected ) {
		                	echo "<option value=\"".$db->f("idcatside")."\">$spaces ".$db->f("name")."---".$db->f("title")."</option>";
		                } else {
		                        echo "<option value=\"".$db->f("idcatside")."\" selected>$spaces ".$db->f("name")."---".$db->f("title")."</option>";
		                }
		        }
		echo "</select>";

echo "      </td>
</tr>
        <tr>
        <td>
        Image-Directory:
       </td>
            <td>
          <input size=20 type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\">
	</td>
  	</tr>

        <tr>
        <td>
        Thumbnail-Directory:
       </td>
            <td>
          <input size=20 type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\">
	</td>
  	</tr>
                
        <tr>
        <td>
        Image-Dateieendung (z.B. .jpg;.gif):
       </td>
            <td>
          <input size=20 type=\"text\" name=\"CMS_VAR[4]\" value=\"CMS_VALUE[4]\">
	</td>
  	</tr>

        <tr>
        <td>
         Thumbnailtabelle in Spalten x Zeilen:
       </td>
            <td>
          <input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[5]\" value=\"CMS_VALUE[5]\">x<input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[6]\" value=\"CMS_VALUE[6]\">
	</td>
  	</tr>
        

        <tr>
        <td>
         Thumbnailgr&ouml;sse in XxY:
       </td>
            <td>
          <input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[7]\" value=\"CMS_VALUE[7]\">x<input size=3 maxlength=2 type=\"text\" name=\"CMS_VAR[8]\" value=\"CMS_VALUE[8]\">
	</td>
  	</tr>

        <tr>
        <td>
        Pfad zum ImageMagick (optional):
       </td>
            <td>
          <input size=20 type=\"text\" name=\"CMS_VAR[9]\" value=\"CMS_VALUE[9]\">
	</td>
  	</tr>
        
      </table>";

// ENDE INPUT
Output:

Code: Alles auswählen

<? 

// Bildergalerie 
// Imageresize der Thumbs über ImageMagick *ODER* GD 
// Wasserzeichen einbauen und große Bilder in gleiche Größen verkleinern
// Version: 04.03.2004 
// 
// Author: Large Green Wood  vgl. http://www.contenido.de/front_dev/upload/1ImageGal.txt 
// Modified by: Robert Strouhal www.clearcreative.de 
// Modified by: Daniel Buhmann www.cyberdan.de




echo "<p>\n"; 

// ANFANG OUTPUT 

$imagedir="CMS_VALUE[2]"; 
$thumbnails="CMS_VALUE[3]"; 
$imagetypes=explode(";","CMS_VALUE[4]"); 
$rows="CMS_VALUE[6]"; 
$cols="CMS_VALUE[5]"; 

$thb_x_size="CMS_VALUE[7]"; 
$thb_y_size="CMS_VALUE[8]"; 

$image_idcat="CMS_VALUE[0]"; 
$image_idside="CMS_VALUE[1]"; 

$im_path="CMS_VALUE[9]"; 

//-- config ende ------------------------------------- 

function is_image($filename,$typearray) { 
  reset($typearray); 
  while($val=each($typearray)) { 
     if (strstr($filename,$val[value])!==false) { 
       return true; 
     } 
  } 
} 


// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat) 
// Seitenverhältnisse werden beibehalten 
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){ 
   $source = ImageCreateFromJpeg($sourceFile); 
   $width  = ImageSx($source); 
   $height = ImageSy($source); 

   if ($width > $height){ // Querformat 
      $newheight = $height*($newwidth/$width); 
   }else{ // Hochformat 
      $newwidth  = $width*($newheight/$height); 
   } 

   $target = ImageCreateTrueColor($newwidth,$newheight); 
   // ÄNDERUNG vgl. Forums-Beitrag imagecopyresized ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
   imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 

   ImageJPEG($target,$targetFile,100); 
} 



//-- functions ende ---------------------------------- 

if (!isset($mmstart)) { 
  $mmstart=0; 
} 

// Anzeige eines Bildes oder Übersicht? 

if ($subfile!="") { 
// Bild anzeigen 
echo "<center><a href=\"javascript:history.back()\">zurück</a>"; 
echo "<br>"; 
echo "<img src=\"$subfile\">"; 
echo "<br>"; 
echo "<a href=\"javascript:history.back()\">zurück</a></center>"; 

} else { 
// Gallery anzeigen 

$handle=opendir($imagedir); 

echo "<table border=\"0\" cellpadding=\"5\" cellspacing=\"0\">"; 
$n=0; 
$filearray=Array(); 
while (false !== ($file = readdir($handle))) { 
        if ($file != "." && $file != ".." && is_image($file,$imagetypes)) { 
             $filearray[]=$file; 
        } 
} 

reset($filearray); 

// skip images... 
for ($n=0;$n<$mmstart;$n++) 
  $ffile=each($filearray); 
$n=0; 
while ($ffile=each($filearray)) { 
             $file=$ffile[value]; 
             // generate thumbnail, if nessesairy. Now THIS is fun :) 
             // natuerlich nur, wenn imagemagick vorhanden ist... 
            if (!file_exists($thumbnails."/thb_".$file) ) { 
               if ($im_path!="") { 
                 $cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file; 

                 exec($cmd); 
                 // nochmal prüfen! 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } else{ 
                 // Thumbnails mit GD verkleinern  
             @ini_set("max_execution_time", 120); 
                 @resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size); 
                 $thumbnail=file_exists($thumbnails."/thb_".$file); 
                } 
                //Wasserzeichen einbauen und Bilder auf 500 Pixel Höhe oder Breite verkleinern
                $size        = getimagesize($imagedir."/".$file);    
                $width_old   = $size[0];    
                $height_old  = $size[1];    
                $old_picture = imagecreatefromjpeg($imagedir."/".$file);    
                if ($width_old > $height_old) {        
                	$width_new  = 500;        
                	$height_new = intval($height_old * $width_new / $width_old);    
                	} 
                	else {        
                	$height_new = 500;        
                	$width_new  = intval($width_old * $height_new / $height_old);    
                	}
                $new_picture = imagecreatetruecolor($width_new, $height_new);
                imagecopyresampled($new_picture, $old_picture, 0, 0, 0, 0, $width_new, $height_new, $width_old, $height_old);    
                $transition          = 40;    
                $watermarkfile       = imagecreatefrompng('images/wasserzeichen.png');    
                $watermarkpic_width  = imagesx($watermarkfile);    
                $watermarkpic_height = imagesy($watermarkfile);    
                $watermarkdest_x     = $width_new / 2 - ($watermarkpic_width / 2);    
                $watermarkdest_y     = $height_new / 2 - ($watermarkpic_height / 2);    
                imagecopymerge($new_picture, $watermarkfile, $watermarkdest_x, $watermarkdest_y, 0, 0, $watermarkpic_width, $watermarkpic_height, $transition);    
                imagejpeg($new_picture, $imagedir."/".$file, 100);
            } else 
              $thumbnail=true; 
            if ($n%$cols==0) 
              echo "<tr>\n"; 
            if ($image_idcat!=0) 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcatside=$image_idcat&subfile=".rawurlencode($imagedir."/".$file)); 
            else 
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file)); 
            echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\">".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n"; 
            $n++; 
            if ($n%$cols==0) 
              echo "</tr>\n"; 


        // nur solange wie's not tut... 
        if ($n>=$rows*$cols) 
          break; 
    } 
echo "<tr> <td colspan=\"$cols\" align=\"center\">"; 

if ($mmstart>0) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols)); 
  echo "<a href=\"$url\">vorherige Bilder...</a>"; 
} 

echo "<span style=\"font-size: 9pt;\">| zeige Bilder ".($mmstart+1)." - ".($mmstart+$n)." |</span>"; 

if ($n+$mmstart<count($filearray)) { 
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols)); 
  echo "<a href=\"$url\">weitere Bilder...</a>"; 
} 

echo "</tr>\n"; 
echo "</table>"; 
} // Ende Gallery anzeigen 


echo "</p>"; 
?>
Zuletzt geändert von CyberDan am Do 4. Mär 2004, 17:07, insgesamt 1-mal geändert.

Darth-Vader
Beiträge: 661
Registriert: So 25. Jan 2004, 19:06
Wohnort: Stuttgart-Bad Cannstatt
Kontaktdaten:

Beitrag von Darth-Vader » Do 4. Mär 2004, 15:42

kann man sich das irgendwo mal angucken? :P

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Do 4. Mär 2004, 16:24

Zur Funktionsweise:

Aus dem Rohbild

Bild

wird mit dem Wasserzeichen

Bild

und den Größenangaben von 500 Pixel max. das fertige Bild

Bild


Reicht das als Erklärung? Die komplette Seite ist noch nicht Spruchreif, wird aber nachgereicht :wink:

Darth-Vader
Beiträge: 661
Registriert: So 25. Jan 2004, 19:06
Wohnort: Stuttgart-Bad Cannstatt
Kontaktdaten:

Beitrag von Darth-Vader » Do 4. Mär 2004, 17:03

hey, das is super, sowas werde ich später auch mal brauchen, wenn ich ne bildergalerie auf die asta-site knallen will! ;)


thx, bei gelegenheit (=Zeit haben) komm ich mal auf dein modul zurück und teste es :)



so long,

Darth. :twisted:

OAA
Beiträge: 134
Registriert: Sa 15. Nov 2003, 15:54
Wohnort: Regensburg
Kontaktdaten:

Beitrag von OAA » Fr 5. Mär 2004, 20:01

Hallo,

bin leider kein php-profi.

Aber kann man das Wasserzeichen evtl. auch rechts unten in klein reinmachen??

mfg

OAA

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Fr 5. Mär 2004, 21:39

kein Problem:
in diesen beiden Zeilen wird die Position des Wasserzeichen im Bild berechnet:

Code: Alles auswählen

$watermarkdest_x     = $width_new / 2 - ($watermarkpic_width / 2);    
                $watermarkdest_y     = $height_new / 2 - ($watermarkpic_height / 2); 
watermarkdest_x und watermarkdest_y sind die x- und y-Position des Wasserzeichens.
width_new und height_new sind die größe des Bildes.
watermarkpic_width und watermarkpic_height die breite und höhe des wasserzeichens.

Du kannst dir daraus ja jetzt jede osition bauen.
z.B.

Code: Alles auswählen

$watermarkdest_x     = $width_new - $watermarkpic_width;
$watermarkdest_y     = $height_new - $watermarkpic_height;
dürfte unten rechts sein, wenn ich mich nicht irre ;-)

kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

Bildergallery+Wasserzeichen

Beitrag von kuchi » Mo 8. Mär 2004, 14:54

Hi CyberDan!

Danke erstmal für diese Modifikation.
Bei mir taucht folgendes Problem auf;

Alle thumbs werden angezeigt;alle dazugehörigen Bilder werden angezeigt aber ohne Wasserzeichen und das Wasserzeichen kommt in der gesamten Bildanzahl hinterher als winzigkleine thumbs...


Was könnte das Problem sein?

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Mo 8. Mär 2004, 15:05

poste mal deinen output, so kann ich das schlecht sagen...

kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

Galerie mit Wasserzeichen

Beitrag von kuchi » Mo 8. Mär 2004, 18:10

Hallo CyberDan,

der Output ist glaube ich identisch mit Deinem:

Code: Alles auswählen

<?

// Bildergalerie
// Imageresize der Thumbs über ImageMagick *ODER* GD
// Wasserzeichen einbauen und große Bilder in gleiche Größen verkleinern
// Version: 04.03.2004
//
// Author: Large Green Wood  vgl. http://www.contenido.de/front_dev/upload/1ImageGal.txt
// Modified by: Robert Strouhal www.clearcreative.de
// Modified by: Daniel Buhmann www.cyberdan.de




echo "<p>\n";

// ANFANG OUTPUT

$imagedir="CMS_VALUE[2]";
$thumbnails="CMS_VALUE[3]";
$imagetypes=explode(";","CMS_VALUE[4]");
$rows="CMS_VALUE[6]";
$cols="CMS_VALUE[5]";

$thb_x_size="CMS_VALUE[7]";
$thb_y_size="CMS_VALUE[8]";

$image_idcat="CMS_VALUE[0]";
$image_idside="CMS_VALUE[1]";

$im_path="CMS_VALUE[9]";

//-- config ende -------------------------------------

function is_image($filename,$typearray) {
  reset($typearray);
  while($val=each($typearray)) {
     if (strstr($filename,$val[value])!==false) {
       return true;
     }
  }
}


// verkleinert ein Bild auf die angegebene Breite (bei Querformat) oder Höhe (bei Hochformat)
// Seitenverhältnisse werden beibehalten
function resizeImageGD($sourceFile, $targetFile, $newwidth=50, $newheight=50){
   $source = ImageCreateFromJpeg($sourceFile);
   $width  = ImageSx($source);
   $height = ImageSy($source);

   if ($width > $height){ // Querformat
      $newheight = $height*($newwidth/$width);
   }else{ // Hochformat
      $newwidth  = $width*($newheight/$height);
   }

   $target = ImageCreateTrueColor($newwidth,$newheight);
   // ÄNDERUNG vgl. Forums-Beitrag imagecopyresized ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
   imagecopyresampled ($target, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

   ImageJPEG($target,$targetFile,100);
}



//-- functions ende ----------------------------------

if (!isset($mmstart)) {
  $mmstart=0;
}

// Anzeige eines Bildes oder Übersicht?

if ($subfile!="") {
// Bild anzeigen
echo "<center><a href=\"javascript:history.back()\">zurück</a>";
echo "<br>";
echo "<img src=\"$subfile\">";
echo "<br>";
echo "<a href=\"javascript:history.back()\">zurück</a></center>";

} else {
// Gallery anzeigen

$handle=opendir($imagedir);

echo "<table border=\"0\" cellpadding=\"5\" cellspacing=\"0\">";
$n=0;
$filearray=Array();
while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != ".." && is_image($file,$imagetypes)) {
             $filearray[]=$file;
        }
}

reset($filearray);

// skip images...
for ($n=0;$n<$mmstart;$n++)
  $ffile=each($filearray);
$n=0;
while ($ffile=each($filearray)) {
             $file=$ffile[value];
             // generate thumbnail, if nessesairy. Now THIS is fun :)
             // natuerlich nur, wenn imagemagick vorhanden ist...
            if (!file_exists($thumbnails."/thb_".$file) ) {
               if ($im_path!="") {
                 $cmd=$im_path."/convert -scale ".$thb_x_size."x".$thb_y_size." ".$imagedir."/".$file." ".$thumbnails."/thb_".$file;

                 exec($cmd);
                 // nochmal prüfen!
                 $thumbnail=file_exists($thumbnails."/thb_".$file);
                } else{
                 // Thumbnails mit GD verkleinern
             @ini_set("max_execution_time", 120);
                 @resizeImageGD($imagedir."/".$file, $thumbnails."/thb_".$file, $thb_x_size,$thb_y_size);
                 $thumbnail=file_exists($thumbnails."/thb_".$file);
                }
                //Wasserzeichen einbauen und Bilder auf 500 Pixel Höhe oder Breite verkleinern
                $size        = getimagesize($imagedir."/".$file);
                $width_old   = $size[0];
                $height_old  = $size[1];
                $old_picture = imagecreatefromjpeg($imagedir."/".$file);
                if ($width_old > $height_old) {
                   $width_new  = 500;
                   $height_new = intval($height_old * $width_new / $width_old);
                   }
                   else {
                   $height_new = 500;
                   $width_new  = intval($width_old * $height_new / $height_old);
                   }
                $new_picture = imagecreatetruecolor($width_new, $height_new);
                imagecopyresampled($new_picture, $old_picture, 0, 0, 0, 0, $width_new, $height_new, $width_old, $height_old);
                $transition          = 40;
                $watermarkfile       = imagecreatefrompng('images/wasserzeichen.png');
                $watermarkpic_width  = imagesx($watermarkfile);
                $watermarkpic_height = imagesy($watermarkfile);
                $watermarkdest_x     = $width_new / 2 - ($watermarkpic_width / 2);
                $watermarkdest_y     = $height_new / 2 - ($watermarkpic_height / 2);
                imagecopymerge($new_picture, $watermarkfile, $watermarkdest_x, $watermarkdest_y, 0, 0, $watermarkpic_width, $watermarkpic_height, $transition);
                imagejpeg($new_picture, $imagedir."/".$file, 100);
            } else
              $thumbnail=true;
            if ($n%$cols==0)
              echo "<tr>\n";
            if ($image_idcat!=0)
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcatside=$image_idcat&subfile=".rawurlencode($imagedir."/".$file));
            else
              $url=$sess->url("front_content.php?client=$client&lang=$lang&subid=$subid&idcat=$idcat&idart=$idart&idside=$idside&subfile=".rawurlencode($imagedir."/".$file));
            echo "<td valign=\"middle\" align=\"center\" width=\"$thb_x_size\" height=\"$thb_y_size\"><a href=\"$url\">".($thumbnail ? "<img src=\"$thumbnails/thb_$file\" border=\"0\">":"$file")."</a></td>\n";
            $n++;
            if ($n%$cols==0)
              echo "</tr>\n";


        // nur solange wie's not tut...
        if ($n>=$rows*$cols)
          break;
    }
echo "<tr> <td colspan=\"$cols\" align=\"center\">";

if ($mmstart>0) {
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart-$rows*$cols));
  echo "<a href=\"$url\">vorherige Bilder...</a>";
}

echo "<span style=\"font-size: 9pt;\">| zeige Bilder ".($mmstart+1)." - ".($mmstart+$n)." |</span>";

if ($n+$mmstart<count($filearray)) {
  $url=$sess->url("front_content.php?client=$client&lang=$lang&idcat=$idcat&idart=$idart&subid=$subid&idside=$idside&mmstart=".($mmstart+$rows*$cols));
  echo "<a href=\"$url\">weitere Bilder...</a>";
}

echo "</tr>\n";
echo "</table>";
} // Ende Gallery anzeigen


echo "</p>";
?>


Gruß kuchi

kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

Galerie mit Wasserzeichen

Beitrag von kuchi » Mo 8. Mär 2004, 18:18

Hi CyberDan,

schau ma live unter

http://www.lidahilfe.de/cms/front_conte ... 1&client=1

da kannst Du Dir dat mal ansehen.

Gruß kuchi

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Mo 8. Mär 2004, 18:18

ich sehe es gerade..
was steht im backend unter system bei der GD-Library?

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Mo 8. Mär 2004, 18:21

mach mal in der kofiguration der galerie den slash am schluss weg:
bei dir steht z.B.:
http://www.lidahilfe.de/cms/upload/bilder/galerie//PHOTO25_gal.jpg oder
http://www.lidahilfe.de/cms/upload/bild ... e/thumbs[b]//[/b]thb_PHOTO23_gal.jpg
vielleicht hilft das :wink:
Dann lösch den Inhalt im Ordner thumbs und geh nochmal auf die seite...

Wolfgang
Beiträge: 25
Registriert: Mi 3. Mär 2004, 23:24
Wohnort: Mannheim
Kontaktdaten:

Bildmodul

Beitrag von Wolfgang » Mo 8. Mär 2004, 19:18

Hi Leute,
hi Cyberdan,

ich sehe, dass Ihr Euch gerade mit der Anzeige von Bildern beschäftigt. Ich habe im "Text(HTML)"-Modul auf verschiedenen Seiten fertige Thumbnails eingefügt und in der Dateiverwaltung die größeren Anzeigebilder hinterlegt. Sämtlichen Thumbs habe ich einen Link auf das große Bild verpasst, mit der Funktion "in neuem Fenster anzeigen".

Nun wird aber ein großes Browserfenster geöffnet. Besser würde es aussehen, wenn das geöffnete Fenster nur die Bildergröße hätte.

Kennt Ihr hierfür eine Möglichkeit (bitte bedenkt, dass die Bilder unterschiedliche Größen haben).

In Hoffnung auf eine pos. Antwort.
Gruß Wolfgang

CyberDan
Beiträge: 204
Registriert: Mo 15. Dez 2003, 13:01
Wohnort: Saarland
Kontaktdaten:

Beitrag von CyberDan » Mo 8. Mär 2004, 23:04

Hallo Wolfgang. Es gibt die Möglichkeit, über Javascript ein Fenster zu öffnen, das genau die Größe des Bildes hat und auch nicht die Adresszeile und Symbolleisten des Browsers. Hierzu müßte man die Größe des Bildes auslesen (was ja auch hier im Modul kein Problem ist) und dann mit folgedem Befehl die Thumbnails verlinken:

Code: Alles auswählen

<a class="link" onclick="window.open(this.href,'PopUp-Name','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=auto,resizable=no,copyhistory=no,width=385,height=375');return false;" href="http://www.domain.tld/index.html" target=_blank>PopUp-Link</a>
Hierbei wäre das Bild dann 385x375 Pixel groß...

Es gibt hier im Forum auch eine Bildergalerie mit einen Popup, die könntest du ja nehmen und dann entsprechend anpassen:
http://www.contenido.de/forum/viewtopic.php?t=2168

kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

Bildergalerie mit Wasserzeichen

Beitrag von kuchi » Di 9. Mär 2004, 12:25

Hallo CyberDan!

Ich habe mein Verzeichnis gelöscht und alles wieder reingetan ; die slashes weggenommen - abér vergebens.

Vielleicht hast Du ja noch eine Idee!

Gruß kuchi

Gesperrt