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 );
一切正常,但我有一个奇怪的错误......
货币符号看起来不对。它没有显示£符号,而是显示 A ,顶部有一个插入符号,看起来像是井号的下半部分。
所以我试图删除.UTF-8,并且带有插入符号的 A 消失但它仍然只显示英镑符号的下半部分。
我想要的只是一个£标志。请有人帮忙吗???
答案 0 :(得分:3)
根据documentation,imagestring
仅支持默认字体中的Latin2,它不能编码£
。即使它可以编码£
,你也应该在传递它之前将你的UTF-8转换为Latin2。
使用支持UTF-8的imageTtfText
。您需要将其指向第7个参数中的工作TrueType字体文件。