Ik heb een afbeelding waar text op gezet moet worden, maar wel met een ander lettertype. Nu dacht ik dat effe zo te doen:


<?php  

$imgTXT = "hoiii"; 
$imgCreate = imagecreatefrompng("images/image_03.png"); 
$imgFg = ImageColorAllocate($imgCreate, 255, 255, 255) 
ImageString($imgCreate, 2, 30, 40, $imgTXT, $imgFg);  
header('Content-type: image/png'); 
ImagePNG($imgCreate); 
ImageDestroy($imgCreate); 
?>


css:


#middle{
background-image:url(image.php);
width:317px;
height:619px;
position: relative; left: 118px; top: -619px;
}


Maar dat gaat hem niet worden?

Zijn er nog andere manieren om een ander lettertype wel te kunnen gebruiken?
Moet de text in de afbeelding of er overheen?

Want anders kan je het gewoon het beste in je GD functie zetten.
css is voor html, niet voor opmaak van tekst die je in een plaatje aan het coderering bent met php.

Zie verder de php-handleiding hoe je met verschillende fonts kunt werken bij het aanmaken van plaatjes.
@pgfrank

Dat snap ik wel, maar met dit voorbeeld krijg ik totaal geen afbeelding te zien?
Dat komt omdat er een foutje in je php script zit. Je mist een ; aan het eind van regel 5. Daarna zou het gewoon moeten werken.
Jah dat was het!

Warom kreeg ik trouwens geen error dan?

Is dat normaal? :S
robin schreef op 14.11.2007 10:50
Jah dat was het!

Warom kreeg ik trouwens geen error dan?

Is dat normaal? :S
Omdat jij ze waarschijnlijk niet wilt tonen. Staat dit ook bovenaan je script:
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL | E_STRICT);

// rest van je code
?>
Je krijgt geen error omdat je het php bestand indirect uitvoert. Je gebruikt het namelijk in je CSS.

Als zoiets niet werkt, kun je het best altijd even het php bestand direct aanroepen en kijken of je daar het plaatje wel goed te zien krijgt.
Misschien staat in je ini standaard error_reporting op uit..:) Daarom moet je gewoon al je scripts beginnen met:

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL | E_STRICT);
?>

Is dit mogelijk:

Ik heb veel regels text, maar sommige regels moeten een andere lettertype groote hebben. En hoe sla je een regel over? <br/> werkt niet:



<?php
header("content-type: image/png");
$image = imagecreatefrompng("images/image_03.png"); 

$achtergrond = ImageColorAllocate($image, 255, 255, 255);
$grootte = "24";
$tekst = "Home: <br/> stuuur";
$kleur = ImageColorAllocate($image, 127, 19, 17);
$font = 'font.TTF';
ImageTTFText($image, $grootte, 0, 14, 57, $kleur, $font, $tekst);
ImagePng($image);
ImageDestroy($image);
?> 
Waarschijnlijk met '\n'

Reageren