Heim  >  Artikel  >  Backend-Entwicklung  >  So lösen Sie das Problem, dass PHP Bilder ausgibt und chinesische verstümmelte Zeichen anzeigt

So lösen Sie das Problem, dass PHP Bilder ausgibt und chinesische verstümmelte Zeichen anzeigt

藏色散人
藏色散人Original
2021-10-25 09:23:033443Durchsuche

Lösung für die Ausgabe von Bildern durch PHP und die Anzeige verstümmelter chinesischer Zeichen: 1. Fügen Sie ob_clean() vor dem PHP-Code hinzu, um den Puffer zu löschen. 2. Legen Sie die UTF-8-Kodierung fest.

So lösen Sie das Problem, dass PHP Bilder ausgibt und chinesische verstümmelte Zeichen anzeigt

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie kann das Problem gelöst werden, dass PHP Bilder ausgibt und chinesische verstümmelte Zeichen anzeigt?

php verwendet die GD-Bildbibliothek, um Bilder mit verstümmelten Zeichen zu zeichnen und auszugeben und chinesische Zeichen auf den Bildern mit verstümmelten Zeichen auszugeben. Lösung

Quellcode:

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

Ergebnis nach dem Ausführen:

 <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) Lösung: in $im = @imagecreate(500,500) or die("GD-Bildbibliothek ist nicht installiert0c6dc11e160d3b678d68754cc175188a"); Fügen Sie davor ob_clean(); hinzu, um den Puffer zu löschen. Das Bild kann angezeigt werden, aber der Text auf dem Bild kann nur Englisch und Zahlen anzeigen und chinesische Schriftzeichen werden verstümmelt.

(2) Die standardmäßige englische Kodierung von Bildzeichenfolgen unterstützt nur UTF-8, daher werden chinesische Zeichen verstümmelt. Sie sollten

imagettftext($im,10,30,0,100,$texCol,"c:/windows/fonts/simhei.ttf",$motto);

"c:/windows/fonts/simhei.ttf" verwenden, die systemeigene Fettschrift.

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass PHP Bilder ausgibt und chinesische verstümmelte Zeichen anzeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn