Maison > développement back-end > Problème PHP > Comment résoudre le problème de la sortie d'images par PHP et de l'affichage de caractères chinois tronqués

Comment résoudre le problème de la sortie d'images par PHP et de l'affichage de caractères chinois tronqués

藏色散人
Libérer: 2023-03-13 13:12:01
original
3596 Les gens l'ont consulté

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.

Comment résoudre le problème de la sortie d'images par PHP et de l'affichage de caractères chinois tronqués

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>
Copier après la connexion

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>
Copier après la connexion

(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);
Copier après la connexion

"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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal