生活札記 首頁 生活札記
提供一個可以讓大家無拘無束的討論園地
 
相簿相簿   常見問題常見問題   搜尋搜尋   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 


[好文轉載] 在PHP的圖形函數中顯示中文

 
發表新主題   回覆主題    生活札記 首頁 -> PHP
上一篇主題 :: 下一篇主題  
發表人 內容
luckyhoo



註冊時間: 2006-07-19
文章: 447

發表發表於: 星期五 十二月 22, 2006 3:53 pm    文章主題: [好文轉載] 在PHP的圖形函數中顯示中文 引言回覆

原文出處:
忘了此文章出處。
若原作者看到後不同意請告知,小弟會將文章取下,在此感謝這位作者的好文章。

引言回覆:
如何在PHP圖形函數中顯示漢字,大家已經問了很久了,但一直沒有結果。終於在參考另一篇文章後,我試驗出來了!
方法:

首先,決定要顯示哪些漢字,如"計數器"這三個字。
到Word2000(97不知可不可以)中去,輸入這三個字,另存為,選擇編碼格式,然後再在右邊的編碼類型裏選擇unicode utf-8,記住不要選錯了。存成一個編碼格式的文字檔案,比如說檔案名叫test.txt。

用一個16進制的編輯器打開這個文件,這時你會看到,裏面有一堆16進制字元,一個漢字占三個位元組,所以這裏,你應該找到前面9個位元組的內容,記下來。

再開始編輯.php文件,用如chr(0xE6).chr(0x88)的格式寫下來,再賦給一個變數,再用ImageTTFText()函數輸出。你看到了什麼?

如果你什麼都沒看到,那麼你需要再看一下你的那些16進制代碼是否無誤,當然,顯示漢字所需的字體文件你也要拷到適當的位置哦!我這段程式中用的是windows自帶的楷體。

不過這樣還是很麻煩,畢竟還需要用到另外兩個工具,如果能有一個函數直接將漢字轉換成utf-8編碼就更好了。大家再找找資料吧!

這一串utf-8字串表示的是"我愛你!",嘻嘻,不要說我噁心哦!



代碼:
<?php
$cur_count=chr(0xE6).chr(0x88).chr(0x91).chr(0xE7).chr(0x88).chr(0xB1).chr(0xE4).chr(0xBD).chr(0xA0).chr(0xEF).chr(0xBC).chr(0x81) ;
Header("Content-type: image/gif");
$im = imagecreate(156,116);
$black = ImageColorAllocate($im, 0,0,0);
$blue = ImageColorAllocate($im, 0,0,255);
$white = ImageColorAllocate($im, 255,255,255);
$yellow = ImageColorAllocate($im, 255,255,0);
ImageTTFText($im,20,0,4,40,$yellow,"simkai.ttf",$cur_count);
ImageGif($im);
ImageDestroy($im);
?>


引言回覆:
用gd???片加中文?例

--------------------------------------------------------------------------------

<?php
//定??出??像?型
header("content-type:image/gif");
//新建?象
$pic=imagecreate(240,30);
//定?黑白?色
$black=imagecolorallocate($pic,0,0,0);
$white=imagecolorallocate($pic,255,255,255);
//定?字体
$font="c://WIN2000//fonts//simhei.ttf";
//定??出字体串
$str = chr(0xE8).chr(0xB5).chr(0x9B).chr(0xE8).chr(0xBF).chr(0xAA).chr(0xE7).chr(0xBD).chr(0x91)." www.ccidnet.com";
//? TTF 文字到?中
imagettftext($pic,20,0,10,20,$white,$font,$str);
//建立 GIF ?型
imagegif($pic);
//?束?形,?放?存空?
imagedestroy($pic);
?>
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    生活札記 首頁 -> PHP 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作