2012-12-07 73 views
2
setlocale(LC_MONETARY, 'en_GB.UTF-8'); 
imagestring($my_img, 4, $colC, $row1, money_format('%(#5n', $rates[0][0]), $text_colour); 

... 
... 
... 

header("Content-type: image/png"); 
imagepng($my_img); 
imagecolordeallocate($line_colour); 
imagecolordeallocate($text_colour); 
imagecolordeallocate($background); 
imagedestroy($my_img); 

一切工作正常,但我有一個奇怪的錯誤...PHP輸出文本

貨幣符號看起來是錯誤的。而不是顯示一個£標誌,它顯示一個A頂部有一個插入符號,看起來像英鎊符號的下半部分。

所以我試圖刪除.UTF-8和A隨着脫字符號消失,但它仍然只顯示英鎊符號的下半部分。

我想要的,簡直就是一個£標誌。任何人都可以幫忙嗎?

PHP Error

回答

3

按照documentationimagestring僅支持拉丁文2中的默認字體,其不能編碼£。即使它可能編碼爲£,在傳遞它之前,您應該已將您的UTF-8轉換爲Latin2。

使用支持UTF-8的imageTtfText。您需要將它指向第7個參數中正在運行的TrueType字體文件。