General / Allgemeines > Programming

Mit Php Text auf einem Bild schreiben

(1/2) > >>

Sunny C.:
Hallo zusammen,

ich habe eine kleines Problem.
Ich habe mir eine Routine geschrieben, mit der ich auf Bilder ein Text mittels Php schreiben kann.

Funktioniert (Einen text):
<?php
define('ROOT_PATH', '../');
include(ROOT_PATH.'inc/define.php');

$date = date('H-i-s'); 
$rand = rand(0, 99);
$SourceFile = IMAGE_PATH.'blank/10.jpeg';
$DestinationFile = IMAGE_PATH.'finish/'.$date.'_'.$rand.'.jpeg';
$WaterMarkText = $_GET['texto'];
watermarkImage ($SourceFile, $WaterMarkText, $DestinationFile);

function watermarkImage ($SourceFile, $WaterMarkText, $DestinationFile) {
   list($width, $height) = getimagesize($SourceFile);
   $image_p = imagecreatetruecolor($width, $height);
   $image = imagecreatefromjpeg($SourceFile);
   imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height);
   $black = imagecolorallocate($image_p, 76, 73, 105);
   $font = FONT_PATH.'3.ttf';
   $font_size = 20;
   imagettftext($image_p, $font_size, 12, 108, 217, $black, $font, $WaterMarkText);
   if ($DestinationFile<>'') {
   imagejpeg ($image_p, $DestinationFile, 100);
   } else {
   header('Content-Type: image/jpeg');
   imagejpeg($image_p, null, 100);
   };
   imagedestroy($image);
   imagedestroy($image_p);
};
?>
Aber wenn ich zwei Texte schreiben will geht das nicht, hier der Code:
Es wird nun gar kein Text mehr ausgegeben...
<?php
define('ROOT_PATH', '../../');
include(ROOT_PATH.'inc/define.php');

$date = date('H-i-s'); 
$rand = rand(0, 99);
$SourceFile = IMAGE_PATH_PARFUM.'blank/parfum/1.jpg';
$DestinationFile = IMAGE_PATH_PARFUM.'finish/parfum/'.$date.'_'.$rand.'.jpg';
$WaterMarkText = $_GET['texto'];
$WaterMarkTextx = $_GET['textox'];
watermarkImage ($SourceFile, $WaterMarkText, $WaterMarkTextx, $DestinationFile);

function watermarkImage ($SourceFile, $WaterMarkText, $WaterMarkTextx, $DestinationFile) {
   list($width, $height) = getimagesize($SourceFile);
   $image_p = imagecreatetruecolor($width, $height);
   $image = imagecreatefromjpeg($SourceFile);
   imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width, $height);
   $black = imagecolorallocate($image_p, 58, 58, 58);
   $font = FONT_PATH_PARFUM.'4.ttf';
   $font_size = 30;
   imagettftext($image_p, $font_size, -10, 200, 420, $black, $font, $WaterMarkText);
   if ($DestinationFile<>'') {
   imagejpeg ($image_p, $DestinationFile, 100);
   } else {
   header('Content-Type: image/jpeg');
   imagejpeg($image_p, null, 100);
   };
   imagedestroy($image);
   imagedestroy($image_p);
};
?>
Was mache ich da falsch?

Die Weiterleitung sieht so aus:
?texto=Testing&textox=Text+2

Das sollte ja richtig sein.
Aber es kommt einfach kein text auf dem Bild

Hier erfolgt die Texteingabe:


Das Input sieht so aus:

--- Code: ---                    <form method='GET' action='convert/parfum/1.php'>
                    <label><input type="text" name="texto"></label><label><input type="text" name="textox"></label> <input type="submit" value="Submit"></form>[/php]
--- End code ---

Rembrandt:
hast du schon überprüft ob die beiden Inputs über geben werden?

$WaterMarkText = $_GET['texto'];
$WaterMarkTextx = $_GET['textox'];

nein? dann setze das nach den beiden Variablen:
print_r($_GET);
dann siehst du ob und was an PHP übergeben wird.

die form mach mal so:

--- Code: ---                    <form method='GET' action='convert/parfum/1.php'>
                      <label for="texto">Erstes Textfeld:<label>
                      <input type="text" id="texto" name="texto">
                      <label for="textox">Zweites Textfeld:<label>
                      <input type="text" id="textox" name="textox">
                      <input type="submit" value="Submit">
                    </form>

--- End code ---

mfg Andi

Sunny C.:
Kann ich dir mal die FTP Daten zukommen lassen?
Es ist nicht Datenbank gebunden, sondern On-The-Fly.

Rembrandt:
ja

Sunny C.:
Hat sich doch schon erldigt.
Ich habe die falschen Maße benutzt... sorry für die Frage dann hier.
Aber ich habe das einfach nicht gesehen bzw. übersehen.
Irgendwann sieht man einfach nichts mehr.

Navigation

[0] Message Index

[#] Next page

Go to full version