| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

29-10-2010, 06:07
|
|
Hendrik33
Registrierter Benutzer
|
|
Registriert seit: Aug 2010
Beiträge: 70
|
|
Bild hochladen und Text am Rand
Ich habe ein Problem. Habe ein Bilderupload Schnipsel der mir ein Bild auf den Server lädt... Wie kann man einen Text am Bild beim uploaden einfügen so wie hier:
http://www.bigcitybeats.de/data/pict.../36/325762.jpg
Code:
PHP-Code:
// Upload $path="$serverpfad/images/"; $config_width="600"; $config_height="600"; $resizequality="80"; $_upload=$path; $_time=time(); $datstamp=date("dmy"); if($_FILES['file']['name']){ $_rand=@rand(0,99); if ($_FILES['file']['name']){ $getimagesize[$i]=@getimagesize($_FILES['file']['tmp_name']); if($getimagesize[$i]['mime']=="image/jpeg" || $getimagesize[$i]['mime']=="image/png"){ $nfname="$datstamp-" . $_time*$_rand; $art=substr($_FILES['file']['name'],-3); if($art=="peg"||$art=="PEG"){ $art="jpeg"; } $pic_filename=$nfname.".".$art; $newimage=$_upload.$pic_filename; if(@move_uploaded_file($_FILES["file"]["tmp_name"], $newimage)){} else { @copy($_FILES["file"]["tmp_name"], $newimage); } if($art=="jpg"||$art=="JPG"||$art=="jpeg"||$art=="JPEG"){ $im = imagecreatefromjpeg( $newimage ); } elseif($art=="png"||$art=="PNG"){ $im = imagecreatefrompng( $newimage ); }elseif ($art=="gif"||$art=="GIF"){ $im = imagecreatefromgif($newimage); } $mw = $config_width; // max width $mh = $config_height; // max height $ow = imagesx( $im ); $oh = imagesy( $im ); if( $ow > $mw || $oh > $mh ){ if( $ow > $oh ){ $tnw = $mw; $tnh = $tnw * $oh / $ow; } else { $tnh = $mh; $tnw = $tnh * $ow / $oh; } } else { $tnw = $ow; $tnh = $oh; } $imtn = imagecreatetruecolor( $tnw, $tnh ); $originaltransparentcolor = imagecolortransparent( $im ); if( $originaltransparentcolor >= 0 // -1 for opaque image && $originaltransparentcolor < imagecolorstotal( $im ) ) { $transparentcolor = imagecolorsforindex( $im, $originaltransparentcolor ); $newtransparentcolor = imagecolorallocate( $imtn, $transparentcolor['red'], $transparentcolor['green'], $transparentcolor['blue'] ); imagefill( $imtn, 0, 0, $newtransparentcolor ); imagecolortransparent( $imtn, $newtransparentcolor ); } imagecopyresized( $imtn, $im, 0, 0, 0, 0, $tnw, $tnh, $ow, $oh ); if($art=="jpg"||$art=="JPG"||$art=="jpeg"||$art=="JPEG") { imagejpeg( $imtn, $newimage ); } elseif($art="png"||$art=="PNG") { imagepng( $imtn, $newimage ); }elseif ($art=="gif"||$art=="GIF"){ imagegif($imtn,$newimage); } imagedestroy( $im ); imagedestroy( $imtn ); }}}
|

29-10-2010, 06:41
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

29-10-2010, 13:54
|
|
Hendrik33
Registrierter Benutzer
|
|
Registriert seit: Aug 2010
Beiträge: 70
|
|
Soweit bin ich jetzt. Bild aus vorhandenem öffnen und ein text an den rand bringen aber wie speicher ich das bild als datei ab? das klappt so irgendwie nicht
PHP-Code:
<?
$image=imagecreatefromjpeg("haus1.jpg");
$font_c=imagecolorallocate($image,255,255,255);
imagettftext($image,10,90,20,150,$font_c,"$serverpfad/images/fonts/ariali.ttf","Beispieltext");
imagejpeg($image, "simpletext.jpg");
imagedestroy($image);
?>
|

29-10-2010, 15:52
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Liegt bei dir keine simpletext.jpg im Arbeitsverzeichnis? Wie sieht dein Error-Reporting aus?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

29-10-2010, 15:58
|
|
eagle275
Registrierter Benutzer
|
|
Registriert seit: Jun 2010
Beiträge: 371
|
|
bitte wähle einen Pfad zum Schreiben des Bildes, wo dein www-user auch Schreibrechte hat - das muss nicht notwendigerweise der Arbeitspfad sein - zur Not musst du dir erst ein Verzeichnis entsprechend einrichten, dass dort Schreibrechte vorhanden sind ...
__________________
Wer LESEN kann, ist klar im Vorteil!
|

29-10-2010, 16:00
|
|
Hendrik33
Registrierter Benutzer
|
|
Registriert seit: Aug 2010
Beiträge: 70
|
|
So habs hinbekommen jetzt speichert ers schoonaml schreibberechtigung war nicht 777 ...
Hast du einen Tipp für mich wo ich das im original code einbauen muss?
|

29-10-2010, 16:04
|
|
eagle275
Registrierter Benutzer
|
|
Registriert seit: Jun 2010
Beiträge: 371
|
|
ich würds "da unten" einbauen im letzten drittel deines Codes , direkt bevor du
mit imagejpeg( $imtn, $newimage );
bzw imagepng ... (Im if / Else)
die Bilder speicherst
__________________
Wer LESEN kann, ist klar im Vorteil!
|

01-11-2010, 13:09
|
|
Hendrik33
Registrierter Benutzer
|
|
Registriert seit: Aug 2010
Beiträge: 70
|
|
Werde ich probieren vorher brauch ich noch HIlfe bei folgendem:
Ich möchte das der Text immer wie hier:
http://www.bigcitybeats.de/data/pict.../47/325773.jpg
immer unten links beginnt mit vllt 5px abstand von unten und links ...
Bei mir sieht es mit diesem Code so aus: Wie müsste der Code lauten für den imagettftext befehl?
So soll es aussehen (habs in Photoshop bearbeitet damit ihr es euch vorstellen könnt)
PHP-Code:
// Bild generieren mit Text $image=imagecreatefromjpeg("haus1.jpg"); $font_c=imagecolorallocate($image,255,255,255); imagettftext($image,10,90,20,150,$font_c,"$serverpfad/images/fonts/ariali.ttf","Text...."); // Das Bild als 'simpletext.jpg' speichern imagejpeg($image, "./images/simpletext.jpg"); // Den Speicher freigeben imagedestroy($image);
Geändert von Hendrik33 (01-11-2010 um 13:16 Uhr)
|

01-11-2010, 13:52
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Dann musst du die y-Koordinate ausgehend von imagesy() berechnen
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|