<?php /****************************** 如何在PHP圖形函數中顯示漢字,大家已經問了很久了,但一直沒有結果。終于在參考另一篇文章后,我試驗出來了! 方法: 首先,決定要顯示哪些漢字,如“計數器”這三個字。 到Word2000(97不知可不可以)中去,輸入這三個字,另存為,選擇編碼格式,然后再在右邊的編碼類型里選擇unicode utf-8,記住不要選錯了。存成一個編碼格式的文本文件,比如說文件名叫test.txt。 用一個16進制的編輯器打開這個文件,這時你會看到,里面有一堆16進制字符,一個漢字占三個字節,所以這里,你應該找到前面9個字節的內容,記下來。 再開始編輯.php文件,用如chr(0xE6).chr(0x88)的格式寫下來,再賦給一個變量,再用ImageTTFText()函數輸出。你看到了什么? 如果你什么都沒看到,那么你需要再看一下你的那些16進制代碼是否無誤,當然,顯示漢字所需的字體文件你也要拷到適當的位置哦!我這段程序中用的是windows自帶的楷體。 不過這樣還是很麻煩,畢竟還需要用到另外兩個工具,如果能有一個函數直接將漢字轉換成utf-8編碼就更好了。大家再找找資料吧!
這一串utf-8字串表示的是“我愛你!”,嘻嘻,不要說我惡心哦! ******************************/ $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); ?>
|