So hallo erstmal!
Ich möchte, das ein bild mit einem text erzeugt wird, und das bild mit dem text dann an ein anderes bild unten rauf kopieren.
Leider funktioniert der code unten nicht.
Ich denke es liegt daran, das er später bei
imagejpeg($SrcImg,"TEST3.JPG");
ein neues leeres bild erstellt oder?
Danke für antworten, Greetz TAiS46
<?
/**
* AddWatermark
* platziert einen geg. Textstring in geg. Bilddatei
*/
AddWatermark(avatar.jpg, 'hallo');
function AddWatermark($SrcImgPath,$TxtString) {
/* Allg. Variablen */
$SrcImgPath = "avatar.jpg";
$FontType = imageloadfont('proggyclean.gdf');
$PaddingHeight = 4;
$PaddingWidth = 8;
/* Abmessungen d. Wasserzeichens festlegen */
$StringWidth = imagefontwidth($FontType) * strlen($TxtString)+$PaddingWidth;
$StringHeigth = imagefontheight($FontType)+$PaddingHeight;
/* Text- und Hintergrundfarbe fuer Wasserzeichen */
$StrImg = imagecreate($StringWidth,$StringHeigth);
$BackColor = imagecolorallocate($StrImg,174,171,182);
$TxtColor = imagecolorallocate($StrImg,255,255,255);
/* Handler d. Textbildes mit Text versehen */
imagestring($StrImg,$FontType,$PaddingWidth/2,$PaddingHeight/2,$TxtString,$TxtColor);
/* Handler vom Orginalbild erstellen */
$SrcImg = imagecreatefromjpeg($SrcImgPath);
/* Aus beiden Handlern ein Bild machen (StrImg in SrcImg einkopieren) */
imagecopymerge($SrcImg,$StrImg,0,0,0,0,$StringWidth,$StringHeight,100);
/* Neues Bild (Orginalbild mit Beschriftung) speichern */
imagejpeg($SrcImg,"TEST3.JPG");
} // function AddWatermark
?>