Mailinglisten-Archive |
Hi Sven, > Teste das mal bei dir. Bei mir wird der Text in das Bild geschrieben. > Wenn das klappt, müsste das Problem irgendwas mit dem Font oder den > Berechnungen dort zu tun haben. Tja, ich würde sagen: Volltreffer ! Es lag tatsächlich daran !! Ich bin alles Zeile für Zeile durchgegangen, und hab alles bzgl. der Schrift ersetzt, allena Variablen feste Werte gegeben... und siehe da - es klappt !! so siehts jetzt mal aus ;-) : /** * AddTextWatermark * platziert einen geg. (einzeiligen) Textstring in geg. (JPG)Bilddatei */ function AddTextWatermark($SrcImgPath,$TxtString) { /* Allg. Variablen */ $FontType = 'proggyclean.gdf'; $PaddingHeight = 4; $PaddingWidth = 8; $transparency = 80; $RGBValuesBG = array(174,171,182); $RGBValuesFont = array(255,255,255); /* Pruefen, ob Font vorhanden und Laden */ if(file_exists($FontType)) { $FontType = imageloadfont($FontType); } else { return FALSE; } /* Abmessungen d. Wasserzeichens festlegen */ $StringWidth = imagefontwidth($FontType) * strlen($TxtString)+$PaddingWidth; $StringHeigth = imagefontheight($FontType) + $PaddingHeight; /* Text- und Hintergrundfarbe,Handler fuer Wasserzeichen */ $StrImg = imagecreate($StringWidth,$StringHeigth); $BackColor = imagecolorallocate($StrImg,RGBValuesBG[0],RGBValuesBG[1],RGBValuesBG[2]); $TxtColor = imagecolorallocate($StrImg,$RGBValuesFont[0],$RGBValuesFont[1],$RGBValuesFont[2]); /* 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,$StringHeigth,$transparency); /* Neues Bild (Orginalbild mit Beschriftung) ueberschreiben */ imagejpeg($SrcImg,$SrcImgPath); } // function AddTextWatermark Vielen herzlichen Dank für Deine Hilfe !! Grüße, Daniel
php::bar PHP Wiki - Listenarchive