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:
<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]