解决GD中文乱码问题

原文链接:http://www.jb51.net/article/7006.htm

今天仔细研究了下GD的一些相关技术,顺手也研究下GD中文乱码的问题。

使用GD库输出中文字符串,调用imagestring是没有用的。需要使用imagettftext()函数。imagettftext函数的具体使用就参考手册啦。

下面给个使用实例:

 

$pic=imagecreate(250,30); 
$black=imagecolorallocate($pic,0,0,0); 
$white=imagecolorallocate($pic,255,255,255); 
$font="C://WINDOWS//Fonts//simhei.ttf"; //这里的路进需要注意下,必须是字符的路径 
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net"; 
imagettftext($pic,10,0,10,20,$white,$font,$str); 

 

前面我给出一个简单的GD水印实例,只举例说明了使用图片如何水印的,这里给出一个文字水印的简单代码。

 

<?php 
$pic=imagecreate(250,30); 
$black=imagecolorallocate($pic,0,0,0); 
$white=imagecolorallocate($pic,255,255,255); 
$font="C://WINDOWS//Fonts//simhei.ttf"; 
$str ='php'.iconv('gb2312','utf-8','面对对象')." www.phpobject.net"; 
imagettftext($pic,10,0,10,20,$white,$font,$str); 

header("Content-type: image/jpeg"); 
$filename='../src/images/photo.jpg'; 
$im=imagecreatefromjpeg($filename); 
imagecopymerge($im,$pic,0,0,0,0,250,30,50); 
imagejpeg($im); 
?> 

 

posted @ 2013-05-02 13:05  回首郑板桥  阅读(392)  评论(0编辑  收藏  举报