Meine Thumbs überschreiben die Quelldatei

Gesperrt
TripleM
Beiträge: 42
Registriert: Sa 5. Mär 2005, 12:13
Kontaktdaten:

Meine Thumbs überschreiben die Quelldatei

Beitrag von TripleM »

Hallöchen,
habe im Forum nach Suchen ein schönes Modul für Wasserzeichen in Bildern gefunden.
http://www.contenido.org/forum/viewtopi ... ++lgw+2002

Davon habe ich jetzt einen Teil des Codes übernommen, um die große Ansicht eines Bildes mit Wasserzeichen zu versehen. Habe leider den Code aus Gründen der Änderung an anderer Stelle einbinden müssen und denke, daß daraus jetzt mein Problem resultiert.

Mein Problem: Wenn einmal die große Ansicht aufgerufen wurde ist auf einmal die Ursprungsdatei auf die angezeigte Größe reduziert und das Wasserzeichen hat sich darin eingebrannt - je öfter ich die große Ansicht des Bildes aufrufe, umso mehr Wasserzeichen überlagern sich.

Habe folgendes gemacht:

Code: Alles auswählen

//Wasserzeichen-Bild anlegen
 
$size = getimagesize($subfile);   
                $width_old   = $size[0];   
                $height_old  = $size[1];   
                $old_picture = imagecreatefromjpeg($subfile);   
                $width_new  = 300;       
                $height_new = intval($height_old * $width_new / $width_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('upload/bilder/mg.png');   
                $watermarkpic_width  = imagesx($watermarkfile);   
                $watermarkpic_height = imagesy($watermarkfile);   
                $watermarkdest_x     = $width_new / 2 - ($watermarkpic_width / 2);   
                $watermarkdest_y     = $height_new - $watermarkpic_height;   
                imagecopymerge($new_picture, $watermarkfile, 0, $watermarkdest_y, 0, 0, $watermarkpic_width, $watermarkpic_height, $transition);   
              imagejpeg($new_picture, $subfile, 100); 
//Ende Wasserzeichen

 echo "<img class=\"bigPic\" src=\"" . $subfile . "\">
Die letzte Zeile ist wohl das Problem, oder? Bin nicht ganz so fit in PHP, aber wenn ich das verstanden habe schreibt er damit "imagejpeg($new_picture, $subfile, 100);" das neu erzeugte Bild mit Wasserzeichen in die Ursprungsdatei die ich ja zum Bearbeiten weiter oben ausgewählt hatte.

Das ist ja aber nicht meine Absicht: die Ursprungsdatei soll ja unangetastet bleiben, erstens damit in der Thumbnail-Übersicht keine Wasserzeichen angezeigt werden und überhaupt.

Was muß ich ändern, damit sozusagen dieses "neue Bild mit Wasserzeichen" nur beim Aufruf temporär angezeigt wird, aber nichts in die Quelldatei geschrieben wird?

Bitte helft mir weiter, DANKE!

PS.: Ich möchte allerdings auch nicht, daß die neuen Bilder überhaupt wo abgelegt werden, also nicht einfach in einen anderen Ordner schreiben oder so. Nur temporär!
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Meine Thumbs überschreiben die Quelldatei

Beitrag von emergence »

TripleM hat geschrieben:Ich möchte allerdings auch nicht, daß die neuen Bilder überhaupt wo abgelegt werden, also nicht einfach in einen anderen Ordner schreiben oder so. Nur temporär!
also so wie der code geschrieben ist wird es nicht gehen...
das file muss ja vom browser runtergeladen werden -> ergo muss es irgendwo gespeichert werden...

die andere variante...
du rufst im img src ein php file auf das den output direkt an den browser schickt... damit ließe sich das erzeugen eines files umgehen...

zumindestens ist das der ansatz den ich dir raten würde...
*** make your own tools (wishlist :: thx)
TripleM
Beiträge: 42
Registriert: Sa 5. Mär 2005, 12:13
Kontaktdaten:

Dankeschön!

Beitrag von TripleM »

Hallo, danke für den Tipp, habe mich daraufhin etwas reingearbeitet und jetzt funkt das Ganze einwandfrei!

Cheers! :D
Gesperrt