Solution pour PHP produisant des images et affichant des caractères chinois tronqués : 1. Ajoutez ob_clean() avant le code PHP pour effacer le tampon ; 2. Définissez l'encodage UTF-8.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Comment résoudre le problème de la sortie php d'images et de l'affichage de caractères chinois tronqués ?
php utilise la bibliothèque d'images GD pour dessiner et générer des images avec des caractères tronqués et afficher des caractères chinois sur les images avec des caractères tronqués Solution
Code source :
<html> <head> <title>PHP 图像测试</title> </head> <body> <?php #创建背景图像 $im = @imagecreate(500,500) or die("没有安装GD图像库<br>"); #设置背景颜色 $bgCol=imagecolorallocate($im,255,0,0); #设置字体颜色 $texCol=imagecolorallocate($im,255,255,0); $motto = "I love my baby! 我家宝贝聪明可爱漂亮"; $motto = iconv("gb2312", "utf-8", $motto); #在背景图像上输入文字 imagestring($im,3,5,5,$motto,$texCol); #输出图像 header("Content-Type: image/png"); imagepng($im); #清除所有资源 imagedestroy($im); ?> </body> </html>
Résultat après l'exécution :
<html> <head> <title>PHP ͼ������</title> </head> <body> �PNG IHDR���M�PLTE���lۜ�IDATx���1 �0�ᔀ]*��W�:/�ر��C����ɥ��1N���?^������M��c��N���>t1�+�w�1 �Z۷�+��<��7���y�ݏ�.�}�T�ݧ_��?�/o�m��IEND�B`�</body> </html>
(1) Solution : dans. $im = @imagecreate(500,500) or die("La bibliothèque d'images GD n'est pas installée
"); Ajoutez ob_clean(); L'image peut être affichée, mais le texte sur l'image ne peut afficher que l'anglais et les chiffres, et les caractères chinois seront tronqués.
(2) L'encodage anglais par défaut de la chaîne d'images ne prend en charge que UTF-8, donc les caractères chinois seront tronqués. Vous devez utiliser
imagettftext($im,10,30,0,100,$texCol,"c:/windows/fonts/simhei.ttf",$motto);
"c:/windows/fonts/simhei.ttf", le caractère gras du système.
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!