搞定pChart中文显示问题
时间:2010-05-11 来源:xhq6632
最近在玩PHP,想弄个统计图来玩玩。
看中了pChart(http://pchart.sourceforge.net/index.php),根据其提供的demo玩玩,发现中文却是显示了乱码,不知道为什么。
大概是用这个东东的人少,网上没搜到有人遇到类似的问题并得到解决。(后来才发现,这是因为这个问题太低级了)。
使用PHP生成图片是需要安装GD库来支持的,pChart作为一个php实现的工具自然最终也是通过调用GD库函数来实现的。
查看pChart的实例代码会发现其有一个setFontProperties方法用于设定字体属性:void setFontProperties($FontName,$FontSize) 。注意这里的传入参数$FontName是一个字体文件,此值最终会被GD库中的imagettftext函数使用:array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text ),这里的$fontfile 就是setFontProperties设定的字体文件。
一切奥秘皆在其中。
所有需要在图片显示的文字必须为指定的字体文件定义的字体所支持,否则,不被支持的字体就是乱码。
所以,为了正常显示中文,我们必须给它指定一个支持中文的字体文件。
对于使用GD生成图片的人来说,这应该算是一个常识,所以,难怪我在网上没找到这样的低级问题的答案。