Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pb avec imagepng() dans un tableau

1 réponse
Avatar
dagor
Bonjour,

Je voudrais écrire du texte dans une image png existante.
Comme faire un menu mais en plusieurs langues.

Lorsque je crée une page avec uniquement le code ci-dessous, ça marche bien
. Le texte s'inscrit bien dans chacun des 4 boutons que je rends ensuite
réactifs.

Par contre lorsque je mets ce code dans une cellule d'un tableau, c'est le
dump de l'image qui monte.

Quelqu'un pourrait-il m'aider.
Merci beaucoup par avance.

Voic le code :

<?
header("Content-type: image/png");
$im = imagecreatefrompng("images/4boutons.png");
$color = imagecolorallocate($im, 0, 0, 153);
$string="Situation";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,16,$string,$color);

$string="Piano Globale";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,61,$string,$color);

$string="Contattarli";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,103,$string,$color);

$string="Teletrasmissone";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,147,$string,$color);
imagepng($im);
imagedestroy($im);
?>

1 réponse

Avatar
Redy
La production de l'image (ie. ton script ci-dessous) ne doit pas être
mis dans la même page qui produit du HTML (ie. entre autres ton tableau).

N'oublies pas que HTML c'est du TEXTE alors que l'image c'est du BINAIRE.

Conclusion :
1- Enregistres ton code dans un fichier "IMAGE_PNG.PHP"
2- Dans ton tableau, tu mets :
...
<TR>
<TD><IMG SRC="IMAGE_PNG.PHP" /></TD>
....

Bien évidemment, s'il faut passer des paramètres alors :
...
<TR>
<TD><IMG SRC="IMAGE_PNG.PHP?PARAM1=XXX&PARAM2=YYY" /></TD>
....

Ciao.

Bonjour,

Je voudrais écrire du texte dans une image png existante.
Comme faire un menu mais en plusieurs langues.

Lorsque je crée une page avec uniquement le code ci-dessous, ça marche bien
. Le texte s'inscrit bien dans chacun des 4 boutons que je rends ensuite
réactifs.

Par contre lorsque je mets ce code dans une cellule d'un tableau, c'est le
dump de l'image qui monte.

Quelqu'un pourrait-il m'aider.
Merci beaucoup par avance.

Voic le code :

<?
header("Content-type: image/png");
$im = imagecreatefrompng("images/4boutons.png");
$color = imagecolorallocate($im, 0, 0, 153);
$string="Situation";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,16,$string,$color);

$string="Piano Globale";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,61,$string,$color);

$string="Contattarli";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,103,$string,$color);

$string="Teletrasmissone";
$px = (imagesx($im)-7.5*strlen($string))/2;
imagestring($im,3,$px,147,$string,$color);
imagepng($im);
imagedestroy($im);
?>