PHP-Code:
<?PHP
header("Content-type: image/png"); // Festlegung des Bildformats (hier *.png) für das Codebild
session_start(); // Startet die Session
$grafik = ImageCreate (90, 30); // Erzeugt ein 80x25 px großes Bild
$hintergrundfarbe = ImageColorAllocate($grafik, 240, 240, 240); // Definiert die Farben in RGB
$schriftfarbe = ImageColorAllocate($grafik, 176, 177, 178); // in RGB-Farben
ImageTTFText ($grafik, 20, 5, 10, 25, $schriftfarbe, "/bau.ttf", $_SESSION['code']); // Sessioncode in Grafik schreiben
ImagePNG($grafik); // Grafik erzeugen
imagedestroy($grafik); // Zwischenspeicher löschen
?>
das script funktioniert auch fehlerfrei auf 3 verschiedenen serveroberflächen. aber auf dem server wo es ankommt (Linux) eben nicht.
grund für das problem ist die funktion ImageTTFText().
klammer ich diese aus. funktioniert das script, jedoch wird mir nur die blanko-grafik angezeigt, ohne schrift!
die phpinfo sagt mir hierzu folgendes:
gd
GD Support => enabled
GD Version => 2.0 or higher
FreeType Support => enabled
FreeType Linkage with freetype T1Lib Support => enabled
GIF Read Support => enabled
GIF Create Support => enabled
JPG Support => enabled
PNG Support => enabled
WBMP Support => enabled
Soweit ist auch alles ok, funktionieren tut es aber trozdem nicht. mir wird nicht einmal eine fehlermeldung ausgegeben. lediglich dieses kleine quadratische bild mit dem X wenn die grafik fehlt oder nicht zu laden ist aus irgendwelchen gründen.
hat jemand eine idee woran das liegen könnte?! ich hab den code in der $_SESSION['CODE'] schon gegen einen normalen string ("TEST") ausgetauscht, aber geholfen hat das auch nicht. das font-file "bau.ttf" ist auch an der richtigen adresse verfügbar.
Kommentar