écrire un texte sur une image

Résolu/Fermé
Meriem - Modifié le 14 mai 2017 à 12:14
 Meriem - 15 mai 2017 à 15:27
slm
j'ai en train de créer une carte sous forme une image avec une texte changer selon les informations entrer j'ai trouver ce code la qui est écrit sur une image

fichier create_image.php
<?php
header('Content-type: image/jpeg');
$jpg_image = imagecreatefromjpeg('card.jpg');
$white = imagecolorallocate($jpg_image, 255, 255, 255);
$font_path = 'font.TTF';
$text = "This is a sunset!";
imagettftext($jpg_image, 25, 0, 75, 300, $white, $font_path, $text);
imagejpeg($jpg_image);
imagedestroy($jpg_image);
?>

le code html
<img src="create_image.php">

mais un message d'erreur est afficher l'image ne s'affiche pas car elle contient des erreurs
A voir également:

5 réponses

Utilisateur anonyme
14 mai 2017 à 21:51
De rien
1
Utilisateur anonyme
14 mai 2017 à 12:32
Bonjour

Il est probable que l'image ne soit pas bonne parce qu'elle contient elle-même un message d'erreur d'exécution du script create_image.php. C'est ce qui m'est arrivé quand j'ai essayé ton script.

Pour voir ce message d'erreur, essaye de lancer le script create_image.php seul, en mettant en commentaire la ligne
header('Content-type: image/jpeg');
. Recopie le message d'erreur que tu verras.

As-tu bien une image 'card.jpg' dans le même répertoire que ce script ?
As-tu bien un fichier de police de caractères 'font.TTF' dans le même répertoire que ce script ?
0
Merciiiiiiiiiiiiiiiiiiiiiii bcp mon pb est résolu par 2 étapes :
1- le font.ttf doit etre dans le meme repertoire de ce script
2- supprime
header('Content-type: image/jpeg');

merci le père
0
j'ai régler ce pb mais un autre pb est apparaît : le texte qui écrit sur l'mage en arabe est affiché de manière non continu telle que un espace entre les caractères comme ceci "م ر ي م"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
j'ai résolu mon problème ale bibliothèvec 2 étapes:
1- télécharger que de arabic sur ce lien https://github.com/tawfekov/ar-php.
2- j'ai ajouter ce code dans le fichier create_image
<?php
//Set the Content Type
header('Content-type: image/jpeg');

// Create Image From Existing File
require('I18N/Arabic.php');
$Arabic = new I18N_Arabic('Glyphs');

$prenom = $Arabic->utf8Glyphs('مريم');

$jpg_image = imagecreatefrompng('card1.png');

// Allocate A Color For The Text
$white = imagecolorallocate($jpg_image, 255, 255, 255);

// Set Path to Font File
$font_path = 'font.ttf';

// Set Text to Be Printed On Image

// Print Text On Image
imagettftext($jpg_image, 16, 0, 170, 100, $white, $font_path, $text);

// Send Image to Browser
imagepng($jpg_image);

// Clear Memory
imagedestroy($jpg_image);
?>


et déplacer le fichier create_image.php et deuxième fichier de imdraw.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<img src="create_image.php">
</body>
</html>

et l'image card.png et la police font.ttf et dans le dossier télécharger a partir de lien.
merciiiiiiiiiiiiiiiii
0