#1 14. September 2007 Wasserzeichen Hallo, hier mal ein altes Script von mir: PHP: <? php //Watermark by razor90 //einfach mit image.php?img=[bild] aufrufen $watermark = imagecreatefrompng ( 'watermark.png' ); //Wasserzeichen einlesen $watermark_width = imagesx ( $watermark ); //Watermark Breite in Variable sichern $watermark_height = imagesy ( $watermark ); //Watermark HÃ�¶he in Variable sichern //Sicherstellen das die PNG-Transparenz von watermark.png erhalten bleibt imagealphablending ( $watermark , false ); imagesavealpha ( $watermark , true ); $src = $_GET [ 'img' ]; //das Bild das "gewatermarket" werden soll auslesen $file_info = pathinfo ( $src ); //Dateiinfo auslesen $extension = strtolower ( $file_info [ "extension" ]); //Dateiendung auslesen und in kleinbuchstaben umwandeln switch( $extension ) { //Auswahl Dateiendung case( 'gif' ): //wenn gif $im = imagecreatefromgif ( $src ); //Gif-Bild einlesen break; case( 'png' ): //wenn png $im = imagecreatefrompng ( $src ); //Png-Bild einlesen break; default: //wenn anderes (jpg) $im = imagecreatefromjpeg ( $src ); //Jpg-Bild einlesen } $size = getimagesize ( $src ); //GrÃ�¶Ã�Ÿe der zu "watermarkenen" Datei einlesen $dest_x = $size [ 0 ] - $watermark_width - 5 ; //Position des Watermaks auf der X-Achse + 5px Abstand zum Rand berechnen $dest_y = $size [ 1 ] - $watermark_height - 5 ; //Position des Watermarks auf der Y-Achse + 5px Abstand zum Rand berechnen ###Falls es eine Gif ist, das Bild in TrueColor umwandeln### if ( $extension == 'gif' ) { $temp = imagecreatetruecolor ( $size [ 0 ] , $size [ 1 ]); imagecopy ( $temp , $im , 0 , 0 , 0 , 0 , $size [ 0 ], $size [ 1 ]); $im = $temp ; } ###Bilder zusammenkopieren### imagecopy ( $im , $watermark , $dest_x , $dest_y , 0 , 0 , $watermark_width , $watermark_height ); header ( "Content-type: image/jpeg" ); //Browser sagen das es sich um eine JPG handelt imagejpeg ( $im , '' , 90 ); //Bild als jpg an den Browser senden mit 90% QualitÃ�¤t ##Speicher der Bilder wieder freigeben## imagedestroy ( $im ); imagedestroy ( $watermark ); ?> Vorher: {bild-down: http://img128.imageshack.us/img128/3773/ava9vk.jpg} Nachher: {bild-down: http://img128.imageshack.us/img128/7910/image3en.jpg} Die Datei tut ihr dann einfach in den Ordner zu euren Bildern und ruft im Browser dann http://www.domain.tld/pfad/zu/bildern/image.php?img=blubb.jpg auf. Außerdem muss bei dem Script im gleichen Verzeichniss noch eine watermark.png sein, am besten mit transparenz Das Script Funktioniert mit .png, .gif und .jpg Dateien! Zusatz: Falls ihr wollt, das die Leute nicht sehen, das es über ein Script läuft, hilft euch mod_rewrite sehr gut Möchtet ihr z.b. nur http://www.domain.tld/bilder/bild1.jpg aufrufen, statt http://www.domain.tld/bilder/image.php?img=bild1.jpg ist es perfekt dafür! Der User merkt nicht das die Anfrage intern von bild1.jpg auf image.php?img=bild1.jpg umgeleitet wird, denn es steht trotzdem noch .../bild1.jpg in der Adressleiste! Dafür braucht ihr nur Webspace mit mod_rewrite, was aber nur die wenigsten Freehoster haben. 1. Erstellt eine ".htaccess"-Datei in dem Ordner mit den Bildern und der image.php. 2. Inhalt der .htaccess: Code: RewriteEngine On RewriteRule ^(.*).(jpg|png|gif)$ image.php?img=$1.$2 3. bild1.jpg aufrufen und merken das es ein Wasserzeichen hat mfg r90 + Multi-Zitat Zitieren
#2 14. September 2007 AW: Wasserzeichen watermark.php soll eher watermark.png sein oder? + Multi-Zitat Zitieren
#3 14. September 2007 AW: Wasserzeichen du meinst wohl, es muss sich eine "watermark.png" und nicht eine "watermark.php" im ordner befinden ^^ edit: da war wohl einer schneller ^^ edit2: bei mir kommt n fehler: Fatal error: Call to undefined function: imagecreatefrompng() in /home/xxx/public_html/silentbob/image.php on line 6 + Multi-Zitat Zitieren
#4 14. September 2007 AW: Wasserzeichen Du hast die libgd nicht installiert.. Einfach mal Googlen haette es auch getan! Call to undefined function: imagecreatefrompng() - Google-Suche + Multi-Zitat Zitieren