2016-07-05 17 views
1

Ich benutze gd-Text, um einen Text aus der Datenbank zu einem Bild hinzuzufügen.gd-text: kein Text hinzugefügt

Beide (Bild/Text) werden von einer externen Klasse generiert.

Heres den Code:

<?php 

//Includes 
include 'gdtext/Color.php'; 
include 'gdtext/Box.php'; 

include 'class.getSlogan.php'; 
include 'class.getImage.php'; 

use GDText\Box; 
use GDText\Color; 

//Date 
$timestamp = time(); 
$date = date("d.m.Y", $timestamp); 


$slogan_txt = dailySlogan(); 
$img = dailyImage(); 

//Set Imagepath 
$imgPath = '../../images/output/1500_' .$img['imageName']; 


//Create Image 
$im = imagecreatefromjpeg($imgPath); 

//Get X/Y for Box 
$image_width = imagesx($im); 
$image_height = imagesy($im); 
$y = ($image_height/2); 
$max_x = ($image_width/2); 
$start = ($max_x/2); 


//Generate Text 
$box = new Box($im); 
$box->setFontFace('font.TTF'); 
$box->setFontSize(60); 
$box->setFontColor(new Color(255, 255, 255)); 
$box->setTextShadow(new Color(0, 0, 0, 50), 0, -2); 
$box->setBox($start, $y, $max_x, 0); 
$box->setTextAlign('center', 'center'); 
$box->draw($slogan_txt['en']); 

// header("Content-Disposition: attachment; filename=\"motivation_" . $date . ".jpg\";"); 
// header('Content-Type: image/jpeg'); 

//Save 
imagejpeg($im, 'test.jpg'); 

Folgende Zeilen sind zum direkten Download und kommentiert, wie ich versuchen, herauszufinden, warum kein Text hinzugefügt wird.

// header("Content-Disposition: attachment; filename=\"motivation_" . $date . ".jpg\";"); 
// header('Content-Type: image/jpeg'); 

Das Bild wird ohne hinzugefügten Text erstellt. $ slogan_txt ['en'] ist mit dem richtigen Wert gefüllt. Außerdem werden x/y-Koordinaten so berechnet, wie sie sollten.

Es gibt keinen Fehler in PHP oder Apache-Protokoll auf dem Server.

Habe ich etwas übersehen? Ich habe den Code von einem Skript genommen, das ich vor ein paar Monaten gemacht habe und es hat gut funktioniert, als ich mich erinnere.

Jede Hilfe/Hinweis wird geschätzt! Vielen Dank!

+0

Bearbeiten „font.ttf“ -Einstellung: Auf meinem lokalen Rechner funktioniert. Auf Ubuntu Server (14.04) tut es das nicht. Das gleiche Skript. – Sili

Antwort

0

ich nicht ganz sicher, warum, aber 775-777 arbeitete für mich ...