程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP基礎知識 >> gd發現用中文生產圖片的時候亂碼故障解決

gd發現用中文生產圖片的時候亂碼故障解決

編輯:PHP基礎知識
 

搜索了一下,說是由於GD庫編譯時添加了: –enable-gd-jis-conv 的支持( GD: Enable JIS-mapped Japanese font ) , 在phpinfo()裡也可以看到:JIS-mapped Japanese Font Support的支持為enable

取消這個日文支持,亂碼即可消除。

另外不用重新編譯也可以

將字符串轉碼一次也可以

$str = mb_convert_encoding($str, "html-entities","utf-8" );//

<?php
session_start();
$im = imagecreatetruecolor(80,30);
$bg = imagecolorallocate($im,0,0,0);
$te = imagecolorallocate($im,255,255,255);
for($i=0;$i<5;$i++)
{
$te2 = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imageline($im,rand(0,80),0,80,rand(0,30),$te2);
}
for($i=0;$i<200;$i++)
{
imagesetpixel($im,rand()%100,rand()%30,$te2);
}
srand((float) microtime() * 10000000);
$input = array("步","步","高","請","轉","到","圖","像","我","非","常","高","興");
$rand_keys = array_rand($input, 4);
$_SESSION['yzm'] = $t = $input[$rand_keys[0]].$input[$rand_keys[1]].$input[$rand_keys[2]].$input[$rand_keys[3]];
//$t =iconv("GB2312","UTF-8",$t);//
$t = mb_convert_encoding($t, "html-entities","utf-8" );//
imagettftext($im,12,0,10,20,$te,'simhei.ttf',$t);
header("content-type: image/jpeg");
imagejpeg($im);
?>

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved